int vsip_chold_f(vsip_chol_f *chold, const vsip_mview_f *a); int vsip_cchold_f(vsip_cchol_f *chold, const vsip_cmview_f *a);
This function performs the Cholesky decomposition of a symmetric positive definite matrix
using the provided
Cholesky decomposition object. The decomposition expresses
as the product of a triangular matrix and its
transpose:
When uplo = VSIP_MAT_LOW:


When uplo = VSIP_MAT_UPP:


Where
is a lower triangular matrix and
is an upper triangular matrix.
vsip_dchol_p* chold: Pointer to the Cholesky decomposition object created with vsip_dchold_create_p .
const vsip_dmview_p* a: Pointer to the input matrix to be decomposed. The matrix must be symmetric positive definite and have dimensions matching those specified when the Cholesky object was created.
Returns 0 on success.
Returns a non-zero value on error (e.g., if the matrix is not positive definite or dimensions don’t match).
The input matrix
must be symmetric and positive definite. The function will fail if the matrix is not positive
definite.
The matrix dimensions must match those specified when the Cholesky object was created.
The decomposition overwrites the contents of the Cholesky object with the new decomposition.
The Cholesky object can be reused for multiple decompositions by calling this function multiple times with different input matrices (as long as they have the same dimensions).