dsp.LDLFactor System object

Package: dsp

Factor square Hermitian positive definite matrices into components


The LDLFactor object factors square Hermitian positive definite matrices into lower, upper, and diagonal components. The object uses only the lower triangle of S.

To factor these matrices into lower, upper, and diagonal components:

  1. Define and set up your LDL factor object. See Construction.

  2. Call step to factor the matrices according to the properties of dsp.LDLFactor. The behavior of step is specific to each object in the toolbox.


H = dsp.LDLFactor returns an LDL factor System object™, H, that computes unit lower triangular L and diagonal D such that S = LDL for square, symmetric/Hermitian, positive definite input matrix S.

H = dsp.LDLFactor('PropertyName',PropertyValue,...) returns an LDL factor System object, H, with each specified property set to the specified value.


 Fixed-Point Properties


cloneCreate an LDL Factor object with same property values
getNumInputsNumber of expected inputs to step method
getNumOutputsNumber of outputs for step method
isLockedLocked status for input attributes and nontunable properties
releaseAllow property value and input characteristics changes
stepDecompose matrix into components


Decompose a square Hermitian positive definite matrix using LDL factor:

    A = gallery('randcorr',5);
    hldl = dsp.LDLFactor;
    y = step(hldl, A);


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

No object property that corresponds to the Non-positive definite input block parameter. The object does not issue any alerts for nonpositive definite inputs. The output is not a valid factorization. A partial factorization is in the upper left corner of the output.

See Also

Introduced in R2012a

Was this topic helpful?