How can I approximate the actual HPLC gradient?

In High Performance Liquid Chromatography (HPLC), the actual gradient is a bit different from the true gradient programmed because of dwell volume and other effects. For example, in the figure added, we can see the programmed gradient in red and the actual gradient in blue.


I'm wondering if there are formulas I can use to approximate/estimate the actual gradient from my programmed gradient or gradient steps (given dwell volume, flow-rate, etc...)?


Approximations are ok, I don't expect this to be computable exactly. Any suggestions are welcome.


[![Programmed gradient (red) vs actual gradient (blue)](https://i.stack.imgur.com/7U6ck.png)](https://i.stack.imgur.com/7U6ck.png)


Figure just to illustrate the real gradient being different. [source](https://blog.sepscience.com/liquidchromatography/hplc-solutions-87-gradient-distortion)




Based on the comments of @AChem and @Poutnik the "exponential response with transport delay" seems to be ok for my use use-case.


The Paper
[“Measure Your Gradient”: A New Way to Measure Gradients in High Performance Liquid Chromatography by Mass Spectrometric or Absorbance Detection](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4254567/), cited by @AChem. Summarizes it nicely:



> 
> The gradient produced by an HPLC is never the same as the one it is
> programmed to produce. Gradient non-idealities are usually categorized
> into three types:
> 
> 
> * Gradient delay time (dwell time)
> 	+ Delay from the time the gradient is programmed to be produced to when it actually reaches the point where the sample is injected.
> * Gradient dispersion
> 	+ Gradient dispersion is the rounding out of the gradient, resulting in more gradual changes in slope as if a low-pass filter
> 	were applied to the gradient profile.
> * Solvent misproportioning
> 	+ Any other gradient non-ideality that is not described by the former two categories
> 
> 
> [![Gradient delay and dispersion](https://i.stack.imgur.com/d5UC1m.png)](https://i.stack.imgur.com/d5UC1m.png)
> 
> 
> 


So I ended up modelling:


* **Gradient dispersion** with [exponential smoothing](https://en.wikipedia.org/wiki/Exponential_smoothing) ("exponential response" mentioned by @Poutnik, "RC filter" mentioned by @AChem)
* **Gradient delay** by adding a linear lag to my time domain ("transport delay" mentioned by @Poutnik)


 4