| Signal Processing Toolbox | Search  Help Desk |
| impinvar | Examples See Also |
Impulse invariance method of analog-to-digital filter conversion.
Syntax
[bz,az] = impinvar(b,a,Fs) [bz,az] = impinvar(b,a) [bz,az] = impinvar(b,a,Fs,tol)
Description
[bz,az] = impinvar(b,a,Fs)
creates a digital filter with numerator and denominator coefficients bz and az, respectively, whose impulse response is equal to the impulse response of the analog filter with coefficients b and a, scaled by 1/Fs.
[bz,az] = impinvar(b,a)
uses the default value of 1 Hz for Fs.
[bz,az] = impinvar(b,a,Fs,tol)
uses the tolerance specified by tol to determine whether poles are repeated. A larger tolerance increases the likelihood that impinvar will consider nearby poles to be repeated. The default is 0.001, or 0.1% of a pole's magnitude. Note that the accuracy of the pole values is still limited to the accuracy obtainable by the roots function.
Example
Convert an analog lowpass filter to a digital filter usingimpinvar with a sampling frequency of 10 Hz:
[b,a] = butter(4,0.3,'s');
[bz,az] = impinvar(b,a,10)
bz =
1.0e-006 *
-0.0000 0.1324 0.5192 0.1273 0
az =
1.0000 -3.9216 5.7679 -3.7709 0.9246
Algorithm
impinvar performs the impulse-invariant method of analog-to-digital transfer function conversion discussed in reference [1]:
.b and a.
.p by the poles exp(p/Fs).
.See Also
bilinear |
Bilinear transformation method of analog-to-digital filter conversion. |
lp2bp |
Lowpass to bandpass analog filter transformation. |
lp2bs |
Lowpass to bandstop analog filter transformation. |
lp2hp |
Lowpass to highpass analog filter transformation. |
lp2lp |
Lowpass to lowpass analog filter transformation. |
References
[1] Parks, T.W., and C.S. Burrus. Digital Filter Design. New York: John Wiley & Sons, 1987. Pgs. 206-209.