CholeskyDecomposition Class 
Namespace: Accord.Math.Decompositions
[SerializableAttribute] public sealed class CholeskyDecomposition : ICloneable, ISolverMatrixDecomposition<double>
The CholeskyDecomposition type exposes the following members.
Name  Description  

CholeskyDecomposition 
Constructs a new Cholesky Decomposition.

Name  Description  

Determinant 
Gets the determinant of the decomposed matrix.
 
Diagonal 
Gets the onedimensional array of diagonal elements in a LDLt decomposition.
 
DiagonalMatrix 
Gets the block diagonal matrix of diagonal elements in a LDLt decomposition.
 
IsPositiveDefinite 
Gets whether the decomposed matrix was positive definite.
 
IsUndefined 
Gets a value indicating whether the LDLt factorization
has been computed successfully or if it is undefined.
 
LeftTriangularFactor 
Gets the left (lower) triangular factor
L so that A = L * D * L'.
 
LogDeterminant 
If the matrix is positivedefinite, gets the
logdeterminant of the decomposed matrix.
 
Nonsingular 
Gets a value indicating whether the decomposed
matrix is nonsingular (i.e. invertible).

Name  Description  

Clone 
Creates a new object that is a copy of the current instance.
 
Equals  Determines whether the specified object is equal to the current object. (Inherited from Object.)  
FromLeftTriangularMatrix 
Creates a new Cholesky decomposition directly from
an already computed left triangular matrix L.
 
GetHashCode  Serves as the default hash function. (Inherited from Object.)  
GetInformationMatrix 
Computes (Xt * X)^1 (the inverse of the covariance matrix). This
matrix can be used to determine standard errors for the coefficients when
solving a linear set of equations through any of the Solve(Double)
methods.
 
GetType  Gets the Type of the current instance. (Inherited from Object.)  
Inverse 
Solves a set of equation systems of type A * X = I.
 
InverseDiagonal(Boolean) 
Computes the diagonal of the inverse of the decomposed matrix.
 
InverseDiagonal(Double, Boolean) 
Computes the diagonal of the inverse of the decomposed matrix.
 
InverseTrace 
Computes the trace of the inverse of the decomposed matrix.
 
Reverse 
Reverses the decomposition, reconstructing the original matrix X.
 
Solve(Double) 
Solves a set of equation systems of type A * X = B.
 
Solve(Double) 
Solves a set of equation systems of type A * x = b.
 
Solve(Double, Boolean) 
Solves a set of equation systems of type A * X = B.
 
Solve(Double, Boolean) 
Solves a set of equation systems of type A * x = b.
 
ToString  Returns a string that represents the current object. (Inherited from Object.) 
Name  Description  

HasMethod 
Checks whether an object implements a method with the given name.
(Defined by ExtensionMethods.)  
IsEqual 
Compares two objects for equality, performing an elementwise
comparison if the elements are vectors or matrices.
(Defined by Matrix.)  
To(Type)  Overloaded.
Converts an object into another type, irrespective of whether
the conversion can be done at compile time or not. This can be
used to convert generic types to numeric types during runtime.
(Defined by ExtensionMethods.)  
ToT  Overloaded.
Converts an object into another type, irrespective of whether
the conversion can be done at compile time or not. This can be
used to convert generic types to numeric types during runtime.
(Defined by ExtensionMethods.) 
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 positive definite, the constructor returns a partial decomposition and sets two internal variables that can be queried using the IsUndefined and IsPositiveDefinite properties.
Any square matrix A with nonzero pivots can be written as the product of a lower triangular matrix L and an upper triangular matrix U; this is called the LU decomposition. However, if A is symmetric and positive definite, we can choose the factors such that U is the transpose of L, and this is called the Cholesky decomposition. Both the LU and the Cholesky decomposition are used to solve systems of linear equations.
When it is applicable, the Cholesky decomposition is twice as efficient as the LU decomposition.