Signal Processing Toolbox | Help Desk |
prony
Prony's method for time domain IIR filter design.
[b,a] = prony(h,nb,na)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] = prony(h,nb,na)
finds a filter with numerator order 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:[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
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.