Signal Processing Toolbox | ![]() ![]() |
Prony's method for time domain IIR filter design.
Syntax
[b,a] =
prony(h,nb,na)
Description
Prony's method is an algorithm for finding an IIR filter with a prescribed time domain impulse response. It has applications in filter design, exponential signal modeling, and system identification (parametric modeling).
[b,a]
finds a filter with numerator order =
prony(h,nb,na)
nb
, denominator order na
, and the time domain impulse response in h
. prony
returns the filter coefficients in row vectors b
and a
, of length nb
+ 1
and na
+ 1
, respectively. The filter coefficients are in descending powers of z.
Examples
Recover the coefficients of a Butterworth filter from its impulse response.
[b,a]=
butter(4,0.2) b=
0.0048 0.0193 0.0289 0.0193 0.0048 a = 1.0000 -2.3695 2.3140 -1.0547 0.1874 h=
filter(b,a,[1 zeros(1,25)]); [bb,aa]=
prony(h,4,4) bb=
0.0048 0.0193 0.0289 0.0193 0.0048 ab = 1.0000 -2.3695 2.3140 -1.0547 0.1874
Algorithm
prony
implements the method described in reference [1]. This method uses a variation of the covariance method of AR modeling to find the denominator coefficients a
and then finds the numerator coefficients b
for which the impulse response of the output filter matches exactly the first nb
+ 1
samples of x
. The filter is not necessarily stable, but potentially can recover the coefficients exactly if the data sequence is truly an autoregressive moving average (ARMA) process of the correct order.
See Also
|
Butterworth analog and digital filter design. |
|
Chebyshev type I filter design (passband ripple). |
|
Chebyshev type II filter design (stopband ripple). |
|
Elliptic (Cauer) filter design. |
|
Identify discrete-time filter parameters from frequency response data. |
|
Compute the Levinson-Durbin recursion. |
|
Compute linear prediction filter coefficients. |
|
Compute a linear model using Steiglitz-McBride iteration. |
References
[1] Parks, T.W., and C.S. Burrus, Digital Filter Design, John Wiley & Sons, 1987, pp. 226-228.
![]() | polystab | psdplot | ![]() |