Interface LDL<N extends Comparable<N>>

All Superinterfaces:
DeterminantTask<N>, InverterTask<N>, InvertibleFactor<N>, LDU<N>, MatrixDecomposition<N>, MatrixDecomposition.Determinant<N>, MatrixDecomposition.Hermitian<N>, MatrixDecomposition.Ordered<N>, MatrixDecomposition.Pivoting<N>, MatrixDecomposition.RankRevealing<N>, MatrixDecomposition.Solver<N>, MatrixTask<N>, Provider2D, Provider2D.Determinant<N>, Provider2D.Inverse<Optional<MatrixStore<N>>>, Provider2D.Rank, Provider2D.Solution<Optional<MatrixStore<N>>>, SolverTask<N>, Structure1D, Structure2D
All Known Implementing Classes:
LDLDecomposition, LDLDecomposition.C128, LDLDecomposition.H256, LDLDecomposition.Q128, LDLDecomposition.R064, LDLDecomposition.R128

public interface LDL<N extends Comparable<N>> extends LDU<N>, MatrixDecomposition.Hermitian<N>, MatrixDecomposition.Pivoting<N>

LDL: [A] = [L][D][L]H (or [R]H[D][R])

[A]H = [A] = [L][D][L]H

If [A] is symmetric (but not necessarily positive definite) then it can be decomposed into [L][D][L] T (or [R]H[D][R]).

  • [L] is a unit lower (left) triangular matrix. It has the same dimensions as [this], and ones on the diagonal.
  • [D] is a diagonal matrix. It has the same dimensions as [this].
  • [this] = [L][D][L]H