dsp.LevinsonSolver System object

Package: dsp

Solve linear system of equations using Levinson-Durbin recursion


The LevinsonSolver object solves linear systems of equations using Levinson-Durbin recursion.

To solve linear systems of equations using Levinson-Durbin recursion:

  1. Define and set up your System object™. See Construction.

  2. Call step to solve the system of equations according to the properties of dsp.LevinsonSolver. The behavior of step is specific to each object in the toolbox.


H = dsp.LevinsonSolver returns a System object, H, that solves a Hermitian Toeplitz system of equations using the Levinson-Durbin recursion.

H = dsp.LevinsonSolver('PropertyName',PropertyValue,...) returns a Levinson-Durbin object, H, with each specified property set to the specified value.



Enable polynomial coefficients output

Set this property to true to output the polynomial coefficients A. Both AOutputPort and KOutputPort properties cannot be false at the same time. For scalar inputs, set the AOutputPort property to true. The default is false.


Enable reflection coefficients output

Set this property to true to output the reflection coefficients K. You cannot set both the AOutputPort and KOutputPort properties to false at the same time. For scalar inputs, you must set the KOutputPort property to false. The default is true.


Enable prediction error output

Set this property to true to output the prediction error. The default is false.


Action when value of lag zero is zero

Specify the output for an input with the first coefficient as zero. Select Ignore or Use zeros. The default is Use zeros.

 Fixed-Point Properties


cloneCreate Levinson solver object with same property values
getNumInputsNumber of expected inputs to step method
getNumOutputsNumber of outputs of step method
isLockedLocked status for input attributes and nontunable properties
releaseAllow property value and input characteristics changes
stepReflection coefficients corresponding to columns of input


Use the Levinson solver to compute polynomial coefficients from autocorrelation coefficients:

 hlevinson = dsp.LevinsonSolver;
 hlevinson.AOutputPort = true;
 hlevinson.KOutputPort = false;
 x = (1:100)';
 hac = dsp.Autocorrelator(...
 'MaximumLagSource', 'Property', ...
 'MaximumLag', 10);
 a = step(hac, x);
 c = step(hlevinson, a); % Compute polynomial coefficients


This object implements the algorithm, inputs, and outputs described on the Levinson-Durbin block reference page. The object properties correspond to the block parameters, except:

Output(s) block parameter corresponds to the AOutputPort and the KOutputPort object properties.

Was this topic helpful?