Class CholeskyDecomposition

java.lang.Object
weka.core.matrix.CholeskyDecomposition
All Implemented Interfaces:
Serializable, RevisionHandler

public class CholeskyDecomposition extends Object implements Serializable, RevisionHandler
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.

Adapted from the JAMA package.

Version:
$Revision: 5953 $
Author:
The Mathworks and NIST, Fracpete (fracpete at waikato dot ac dot nz)
See Also:
  • Constructor Details

    • CholeskyDecomposition

      public CholeskyDecomposition(Matrix Arg)
      Cholesky algorithm for symmetric and positive definite matrix.
      Parameters:
      Arg - Square, symmetric matrix.
  • Method Details

    • 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.
    • getRevision

      public String getRevision()
      Returns the revision string.
      Specified by:
      getRevision in interface RevisionHandler
      Returns:
      the revision