Impulse invariance

From Wikipedia, the free encyclopedia

Impulse Invariance is a technique for designing discrete-time Infinite Impulse Response (IIR) filters from continuous-time filters in which the impulse response of the continuous-time system is sampled to produce the impulse response of the discrete-time system. If the continuous-time system is appropriately band-limited, the frequency response of the discrete-time system will be defined as the continuous-time system's frequency response with linearly-scaled frequency.

Contents

[edit] Discussion

The continuous-time system's impulse response, hc(t), is sampled with sampling period T to produce the discrete-time system's impulse response, h[n].

h[n]=Th_c(nT)\,

Thus, the frequency responses of the two systems are related by

H(e^{j\omega}) = \sum_{k=-\infty}^\infty{H_c\left(j\frac{\omega}{T} + j\frac{2{\pi}}{T}k\right)}\,

If the continuous time filter is appropriately band-limited (ie. Hc(jΩ) = 0 when |\Omega| \ge \pi/T), then frequency response of the discrete-time system will be defined as the continuous-time system's frequency response with linearly-scaled frequency.

H(e^{j\omega}) = H_c(j\omega/T)\, for |\omega| \le \pi\,

[edit] Comparison to the Bilinear Transform

Note that if H_c(j\Omega)\, is not band-limited, aliasing will occur. The Bilinear Transform is an alternative to Impulse Invariance that uses a direct unique mapping from the continuous-time frequency axis to the discrete-time frequency axis. Impulse Invariance, however, uses a linear scale between the frequency axes for the continuous-time and discrete-time systems, \Omega = \omega/T\,, which is not true for the Bilinear Transform.

[edit] Effect on Poles in System Function

If the continuous-time filter has poles at s = sk, the system function can be written in partial fraction expansion as

H_c(s) = \sum_{k=1}^N{\frac{A_k}{s-s_k}}\,

Thus, using the inverse Laplace transform, the impulse response is

h_c(t) = \begin{cases} 
  \sum_{k=1}^N{A_ke^{s_kt}},  & t \ge 0 \\
  0, & \mbox{otherwise} 
\end{cases}

The corresponding discrete-time system's impulse response is then defined as the following

h[n] = Th_c(nT)\,

h[n] = \sum_{k=1}^N{TA_ke^{s_knT}u[n]}\,

Performing a z-transform on the discrete-time impulse response produces the following discrete-time system function

H(z) = \sum_{k=1}^N{\frac{TA_k}{1-e^{s_kT}z^{-1}}}\,

Thus the poles from the continuous-time system function are translated to poles at z = eskT

[edit] Stability and Causality

Since poles in the continuous-time system at s = s_k\, transform to poles in the discrete-time system at z = eskT, if the continuous-time filter is causal and stable, then the discrete-time filter will be causal and stable as well.

[edit] See also

Infinite Impulse Response (IIR)

Bilinear Transform

Continuous Time Filters: Chebyshev Filter, Butterworth Filter, Elliptic Filter

[edit] Sources

Oppenheim, Alan V. and Schafer, Ronald W. with Buck, John R. Discrete-Time Signal Processing. Second Edition. Upper Saddle River, New Jersey: Prentice-Hall, 1999.

Sahai, Anant. Course Lecture. Electrical Engineering 123: Digital Signal Processing. University of California, Berkeley. 05 April 2007.