A symmetric, positive definite square matrix @math{A} has a Cholesky decomposition into a product of a lower triangular matrix @math{L} and its transpose @math{L^T},

This is sometimes referred to as taking the square-root of a matrix. The Cholesky decomposition can only be carried out when all the eigenvalues of the matrix are positive. This decomposition can be used to convert the linear system @math{A x = b} into a pair of triangular systems (@math{L y = b}, @math{L^T x = y}), which can be solved by forward and back-substitution.

__Function:__int**gsl_linalg_cholesky_decomp***(gsl_matrix **`A`)-
This function factorizes the positive-definite square matrix
`A`into the Cholesky decomposition @math{A = L L^T}. On output the diagonal and lower triangular part of the input matrix`A`contain the matrix @math{L}. The upper triangular part of the input matrix contains @math{L^T}, the diagonal terms being identical for both @math{L} and @math{L^T}. If the matrix is not positive-definite then the decomposition will fail, returning the error code`GSL_EDOM`

.

__Function:__int**gsl_linalg_cholesky_solve***(const gsl_matrix **`cholesky`, const gsl_vector *`b`, gsl_vector *`x`)-
This function solves the system @math{A x = b} using the Cholesky
decomposition of @math{A} into the matrix
`cholesky`given by`gsl_linalg_cholesky_decomp`

.

__Function:__int**gsl_linalg_cholesky_svx***(const gsl_matrix **`cholesky`, gsl_vector *`x`)-
This function solves the system @math{A x = b} in-place using the
Cholesky decomposition of @math{A} into the matrix
`cholesky`given by`gsl_linalg_cholesky_decomp`

. On input`x`should contain the right-hand side @math{b}, which is replaced by the solution on output.

Go to the first, previous, next, last section, table of contents.