Products & Services Industries Academia Support User Community Company

Learn more about Signal Processing Toolbox   

levinson - Levinson-Durbin recursion

Syntax

a = levinson(r,n)
[a,e] levinson(r,n)
[a,e,k] levinson(r,n)

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 = levinson(r,n) finds the coefficients of an nth-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] levinson(r,n) returns the prediction error, e, of order n.

[a,e,k] levinson(r,n) returns the reflection coefficients k as a column vector of length n.

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 input r is typically a vector of autocorrelation coefficients where lag 0 is the first element r(1). 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.

References

[1] Ljung, L., System Identification: Theory for the User, Prentice-Hall, 1987, pp.278-280.

See Also

lpc, prony, rlevinson, schurrc, stmcb

  


Recommended Products

Includes the most popular MATLAB recorded presentations with Q&A sessions led by MATLAB experts.

 © 1984-2009- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS