Cholesky matrix decomposition
Performs Cholesky decomposition of matrix \(A = L*L^T\) and solves matrix equation \(A*X=B\).
Parameters:
src1 | pointer to input matrix \(A\) stored in row major order. After finish of work src1 contains lower triangular matrix \(L\). |
src1_step | number of bytes between two consequent rows of matrix \(A\). |
m | size of square matrix \(A\). |
src2 | pointer to \(M\times N\) matrix \(B\) which is the right-hand side of system \(A*X=B\). B stored in row major order. If src2 is null pointer only Cholesky decomposition will be performed. After finish of work src2 contains solution \(X\) of system \(A*X=B\). |
src2_step | number of bytes between two consequent rows of matrix \(B\). |
n | number of right-hand vectors in \(M\times N\) matrix \(B\). |
info | indicates success of decomposition. If *info is false decomposition failed. |
// global functions int hal_ni_Cholesky32f( float* src1, size_t src1_step, int m, float* src2, size_t src2_step, int n, bool* info ); int hal_ni_Cholesky64f( double* src1, size_t src1_step, int m, double* src2, size_t src2_step, int n, bool* info );