1
$\begingroup$

We have implemented a way of approximating a data set with the following lines of code based on the dx/dt of wikipedia of leaky integrator.

dy = -A * y_previous + C   
y_current = y_previous + dy*delta_t 

However, I am uncertain if we are allowed to call the following truly a leaky integrator. I was a bit confused how to get the general solution with Laplace transforms from the wikipage with this because of the delta_t in our implementation. I have to add that I am slightly familiar with Laplace, but not with z-transformations and I was told I needed this since it's discrete.

With delta_t being the difference in time between t_current and t_previous, which is a constant value. I think we may have created a leaky integrator due to delta_t being a constant, if I would for instance call delta_t alpha (alpha), C to x_t, and rewrite it a bit, it seems more similar to sources I found online (1, 2, 3):

formula

So then with the z-transform I have determined the transfer function:

another

My questions are:

  1. Is in this case indeed the delta_t kind of alpha similar to the cited sites?
  2. So is this indeed a leaky integrator?
  3. What can I say about the values A and alpha can be for stability of the leaky integrator? Should indeed hold:

A

$\endgroup$

1 Answer 1

1
$\begingroup$

Yes this is indeed what is referred to as a “leaky integrator”, as the discrete time approximation of such a device. The key element that makes it “Leaky” is having the positive real pole at $z < 1$ which is the equivalent of a continuous time real pole along the negative real axis.

With the pole at $z=1$, (and a zero at $z=0$) we get the discrete time approximation of a pure integrator, this is an accumulator with the transfer function given as:

$$H(z) = \frac{z}{z-1}$$

Any other constants added are gain scaling, but this represents an “integrator” equivalent as the impulse invariant mapping of $H(s) = 1/s$.

As we move the pole off of $z=1$ As given by:

$$H(z) = \frac{z}{z-\alpha}$$

With $\alpha$ as an arbitrary real constant between 0 and 1 (not using OP’s $\alpha$ but generally), it becomes a “leaky integrator” with $\alpha$ as the damping factor: the closer $\alpha$ is to 1, the less the “leak”. Any other constant as before is just a scaling factor.

As noted, this is the discrete time equivalent to moving the pole on the s-plane from $s=0$ that we get with $H(s) = 1/s$ into the left half plane to be:

$$H(s) = \frac{1}{s+ 1/\tau}$$

Where $\tau$ is the time constant indicating a decay given by $e^{-t/\tau}$ which comes directly from the inverse Laplace Transform of $H(s)$.

$\endgroup$
2
  • $\begingroup$ Thank you so much for your elaborate response! If I may ask another question, would it still be a leaky integrator if the delta_t was varying over t_1 to t_N, in other words not a constant? $\endgroup$ Commented May 18, 2023 at 12:08
  • $\begingroup$ Is your delta_t varying such that you don't have a consistent sample rate, or is it more that the sampling rate varies over the longer term duration? In either case changing delta_t simply changes $\alpha$ and similarly the time constant $\tau$, which just means the bandwidth or leak rate is modified accordingly-- but it is still a leaky integrator as long as the $\alpha$ you end up with has a value between 0 and 1 not including either. $\endgroup$ Commented May 18, 2023 at 12:23

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.