Class ComplexCholesky
java.lang.Object
org.flag4j.linalg.decompositions.chol.Cholesky<CMatrix>
org.flag4j.linalg.decompositions.chol.ComplexCholesky
- All Implemented Interfaces:
Decomposition<CMatrix>
This abstract class specifies methods for computing the Cholesky decomposition of a hermitian positive-definite matrix.
Given a hermitian positive-definite matrix A
, the Cholesky decomposition will decompose it into
A=LL<sup>*</sup>
where L
is a lower triangular matrix and L<sup>*</sup>
is the conjugate
transpose of L
.
-
Field Summary
Fields inherited from class org.flag4j.linalg.decompositions.chol.Cholesky
DEFAULT_POS_DEF_TOLERANCE, enforceHermitian, L
-
Constructor Summary
ConstructorDescriptionConstructs a Cholesky decomposer.ComplexCholesky
(boolean checkPosDef) Constructs a Cholesky decomposer. -
Method Summary
Modifier and TypeMethodDescriptionDecompose a matrix intoA=LL
H whereL
is a lower triangular matrix andL
H is the conjugate transpose ofL
.
-
Constructor Details
-
ComplexCholesky
public ComplexCholesky()Constructs a Cholesky decomposer.
If you would like to enforce a check for hermitian symmetry at the time of decomposition, see
ComplexCholesky(boolean)
. -
ComplexCholesky
public ComplexCholesky(boolean checkPosDef) Constructs a Cholesky decomposer.- Parameters:
checkPosDef
- flag indicating if the matrix to be decomposed should be explicitly checked to be hermitian (true). If false, no check will be made and the matrix will be treated as if it were hermitian and only the lower half of the matrix will be accessed
-
-
Method Details
-
decompose
Decompose a matrix intoA=LL
H whereL
is a lower triangular matrix andL
H is the conjugate transpose ofL
.- Parameters:
src
- The source matrix to decompose. Must be hermitian positive-definite.- Returns:
- A reference to this decomposer.
- Throws:
IllegalArgumentException
- Ifsrc
is not symmetric andenforceSymmetric
was set to true when this decomposer was instantiated.LinearAlgebraException
- Ifsrc
is not positive-definite.
-