jhplot.math
Class CholeskyDecomposition

java.lang.Object
  extended by jhplot.math.CholeskyDecomposition

public class CholeskyDecomposition
extends java.lang.Object

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.


Constructor Summary
CholeskyDecomposition(double[][] Arg)
          Cholesky algorithm for symmetric and positive definite matrix.
 
Method Summary
 double[][] getL()
          Return triangular factor.
 boolean isSPD()
          Is the matrix symmetric and positive definite?
 double[][] solve(double[][] B)
          Solve A*X = B
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CholeskyDecomposition

public CholeskyDecomposition(double[][] 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 double[][] getL()
Return triangular factor.

Returns:
L

solve

public double[][] solve(double[][] 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:
java.lang.IllegalArgumentException - Matrix row dimensions must agree.
java.lang.RuntimeException - Matrix is not symmetric positive definite.


jHepWork 1.7 (C) Chekanov