## org.biojava.bio.structure.jama
Class CholeskyDecomposition

    java.lang.Object
      org.biojava.bio.structure.jama.CholeskyDecomposition

All Implemented Interfaces:
  Serializable

    public class CholeskyDecomposition

extends Object
implements Serializable

Cholesky Decomposition.

For a symmetric, positive definite matrix A, the Cholesky decomposition is an 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 isSPD() method.

See Also:
  Serialized Form

Constructor Summary
`CholeskyDecomposition(Matrix Arg)` Cholesky algorithm for symmetric and positive definite matrix.

Method Summary
`Matrix` `getL()` Return triangular factor.
`boolean` `isSPD()` Is the matrix symmetric and positive definite?
`Matrix` `solve(Matrix B)` Solve A*X = B

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### CholeskyDecomposition

    public CholeskyDecomposition(Matrix Arg)

  Cholesky algorithm for symmetric and positive definite matrix.

  Parameters:
    `Arg` - Square, symmetric matrix.

Method Detail

### isSPD

    public boolean isSPD()

  Is the matrix symmetric and positive definite?

  Returns:
    true if A is symmetric and positive definite.

### getL

    public Matrix getL()

  Return triangular factor.

  Returns:
    L

### solve

    public Matrix solve(Matrix B)

  Solve A*X = B

  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` - Matrix row dimensions must agree.
    `RuntimeException` - Matrix is not symmetric positive definite.