cern.colt.matrix.linalg

## Class CholeskyDecomposition

• All Implemented Interfaces:
Serializable

```public class CholeskyDecomposition
extends Object
implements Serializable```
For a symmetric, positive definite matrix A, the Cholesky decomposition is a lower triangular matrix L so that A = L*L'; If the matrix is not symmetric or positive definite, the constructor returns a partial decomposition and sets an internal flag that may be queried by the isSymmetricPositiveDefinite() method.
Serialized Form
• ### Constructor Summary

Constructors
Constructor and Description
`CholeskyDecomposition(DoubleMatrix2D A)`
Constructs and returns a new Cholesky decomposition object for a symmetric and positive definite matrix; The decomposed matrices can be retrieved via instance methods of the returned decomposition object.
• ### Method Summary

Methods
Modifier and Type Method and Description
`DoubleMatrix2D` `getL()`
Returns the triangular factor, L.
`boolean` `isSymmetricPositiveDefinite()`
Returns whether the matrix A is symmetric and positive definite.
`DoubleMatrix2D` `solve(DoubleMatrix2D B)`
Solves A*X = B; returns X.
`String` `toString()`
Returns a String with (propertyName, propertyValue) pairs.
• ### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`
• ### Constructor Detail

• #### CholeskyDecomposition

`public CholeskyDecomposition(DoubleMatrix2D A)`
Constructs and returns a new Cholesky decomposition object for a symmetric and positive definite matrix; The decomposed matrices can be retrieved via instance methods of the returned decomposition object.
Parameters:
`A` - Square, symmetric matrix.
Throws:
`IllegalArgumentException` - if A is not square.
• ### Method Detail

• #### getL

`public DoubleMatrix2D getL()`
Returns the triangular factor, L.
Returns:
L
• #### isSymmetricPositiveDefinite

`public boolean isSymmetricPositiveDefinite()`
Returns whether the matrix A is symmetric and positive definite.
Returns:
true if A is symmetric and positive definite; false otherwise
• #### solve

`public DoubleMatrix2D solve(DoubleMatrix2D B)`
Solves A*X = B; returns X.
Parameters:
`B` - A Matrix with as many rows as A and any number of columns.
Returns:
X so that L*L'*X = B.
Throws:
`IllegalArgumentException` - if B.rows() != A.rows().
`IllegalArgumentException` - if !isSymmetricPositiveDefinite().
• #### toString

`public String toString()`
Returns a String with (propertyName, propertyValue) pairs. Useful for debugging or to quickly get the rough picture. For example,
```rank          : 3
trace         : 0
```
Overrides:
`toString` in class `Object`