Signal Processing Toolbox |
Syntax
Description
The Levinson-Durbin recursion is an algorithm for finding an all-pole IIR filter with a prescribed deterministic autocorrelation sequence. It has applications in filter design, coding, and spectral estimation. The filter that levinson
produces is minimum phase.
a
finds the coefficients of an =
levinson(r,n)
n
th-order autoregressive linear process which has r
as its autocorrelation sequence. r
is a real or complex deterministic autocorrelation sequence. If r
is a matrix, levinson
finds the coefficients for each column of r
and returns them in the rows of a
. n
is the order of denominator polynomial A(z); that is, a = [1 a(2) ... a(n+1)]
. The filter coefficients are ordered in descending powers of z.
[a,e]
returns the prediction error, e, of order n. =
levinson(r,n)
[a,e.k]
returns the reflection coefficients =
levinson(r,n)
k
as a column vector of length n
.
Note
k is computed internally while computing the a coefficients, so returning k simultaneously is more efficient than converting a to k with tf2latc .
|
Algorithm
levinson
solves the symmetric Toeplitz system of linear equations
where r = [
r(1) ... r(n+1)]
is the input autocorrelation vector, and r(i)* denotes the complex conjugate of r(i). The algorithm requires O(n2) flops and is thus much more efficient than the MATLAB \
command for large n
. However, the levinson
function uses \
for low orders to provide the fastest possible execution.
See Also
lpc
, prony
, rlevinson
, schurrc
, stmcb
References
[1] Ljung, L., System Identification: Theory for the User, Prentice-Hall, 1987, pp. 278-280.
latcfilt | lp2bp |
© 1994-2005 The MathWorks, Inc.