Go to the documentation of this file.
21 static const int clap_kCholeskySuccess = 0;
28 static const int clap_kCholeskyFail = -1;
int clap_MatrixScale(Matrix *A, double alpha)
Scale a matrix by a constant.
Definition: linalg_custom.c:13
int clap_MatrixTransposeMultiply(Matrix *A, Matrix *B, Matrix *C)
A shortcut to perform transposed matrix multiplication.
Matrix type and basic operations.
int clap_SymmetricMatrixMultiply(Matrix *Asym, Matrix *B, Matrix *C, double alpha, double beta)
Matrix multiplication with a symmetric matrix A.
Definition: linalg_custom.c:45
int clap_CholeskyFactorize(Matrix *A)
Perform a Cholesky decomposition.
Definition: linalg_custom.c:88
int clap_MatrixMultiply(Matrix *A, Matrix *B, Matrix *C, bool tA, bool tB, double alpha, double beta)
Matrix multiplication.
Definition: linalg_custom.c:20
Represents a matrix of double-precision data.
Definition: matrix.h:71
int clap_LowerTriBackSub(Matrix *L, Matrix *b, bool istransposed)
Solve a linear system of equation for a lower triangular matrix.
Definition: linalg_custom.c:113
int clap_AddDiagonal(Matrix *A, double alpha)
Add a constant value to the diagonal of a matrix.
Definition: linalg_custom.c:79
int clap_CholeskySolve(Matrix *A, Matrix *b)
Solve a linear system of equation with a precomputed Cholesky decomposition.
Definition: linalg_custom.c:134
int clap_MatrixAddition(Matrix *A, Matrix *B, double alpha)
Add two matrices of the same size, storing the result in B.
Definition: linalg_custom.c:6