Scythe-1.0.3
template<matrix_order RO, matrix_style RS, typename T , matrix_order PO1, matrix_style PS1, matrix_order PO2, matrix_style PS2, matrix_order PO3, matrix_style PS3>
Matrix<T,RO,RS> scythe::chol_solve ( const Matrix< T, PO1, PS1 > &  A,
const Matrix< T, PO2, PS2 > &  b,
const Matrix< T, PO3, PS3 > &  M 
)

Solve $Ax=b$ for x via backward substitution, given a lower triangular matrix resulting from Cholesky decomposition.

This function solves the system of equations $Ax = b$ via backward substitution. L is the lower triangular matrix generated by Cholesky decomposition such that $A = LL'$.

This function is intended for repeatedly solving systems of equations based on A. That is A stays constant while b varies.

Parameters:
AA symmetric positive definite Matrix.
bA column vector with as many rows as A.
MThe lower triangular matrix from the Cholesky decomposition of A.
See also:
chol_solve(const Matrix<T,PO1,PS1>&, const Matrix<T,PO2,PS2>&)
cholesky(const Matrix<T, PO, PS>&)
lu_solve (const Matrix<T,PO1,PS1>&, const Matrix<T,PO2,PS2>&, const Matrix<T,PO3,PS3>&, const Matrix<T,PO4,PS4>&, const Matrix<unsigned int, PO5, PS5>&)
lu_solve (Matrix<T,PO1,PS1>, const Matrix<T,PO2,PS2>&)
Exceptions:
scythe_alloc_error(Level 1)
scythe_null_error(Level 1)
scythe_dimension_error(Level 1)
scythe_conformation_error(Level 1)

References scythe::Matrix_base< ORDER, STYLE >::isColVector(), scythe::Matrix_base< ORDER, STYLE >::isNull(), scythe::Matrix_base< ORDER, STYLE >::isSquare(), scythe::Matrix_base< ORDER, STYLE >::rows(), and SCYTHE_CHECK_10.