A Cholesky factorization and solver based on Cholmod. More...
Public Types | |
| enum | { UpLo } |
| typedef MatrixType | CholMatrixType |
| typedef MatrixType::Index | Index |
| typedef _MatrixType | MatrixType |
| typedef MatrixType::RealScalar | RealScalar |
| typedef MatrixType::Scalar | Scalar |
Public Member Functions | |
| void | analyzePattern (const MatrixType &matrix) |
| cholmod_common & | cholmod () |
| CholmodDecomposition (const MatrixType &matrix) | |
| Index | cols () const |
| void | compute (const MatrixType &matrix) |
| template<typename Stream > | |
| void | dumpMemory (Stream &s) |
| void | factorize (const MatrixType &matrix) |
| ComputationInfo | info () const |
| Reports whether previous computation was successful. | |
| Index | rows () const |
| void | setMode (CholmodMode mode) |
| template<typename Rhs > | |
| const internal::solve_retval < CholmodDecomposition, Rhs > | solve (const MatrixBase< Rhs > &b) const |
| template<typename Rhs > | |
| const internal::sparse_solve_retval < CholmodDecomposition, Rhs > | solve (const SparseMatrixBase< Rhs > &b) const |
Protected Attributes | |
| int | m_analysisIsOk |
| cholmod_common | m_cholmod |
| cholmod_factor * | m_cholmodFactor |
| int | m_factorizationIsOk |
| ComputationInfo | m_info |
| bool | m_isInitialized |
A Cholesky factorization and solver based on Cholmod.
This class allows to solve for A.X = B sparse linear problems via a LL^T or LDL^T Cholesky factorization using the Cholmod library. The sparse matrix A must be selfajoint and positive definite. The vectors or matrices X and B can be either dense or sparse.
| _MatrixType | the type of the sparse matrix A, it must be a SparseMatrix<> |
| _UpLo | the triangular part that will be used for the computations. It can be Lower or Upper. Default is Lower. |
| void analyzePattern | ( | const MatrixType & | matrix | ) | [inline] |
Performs a symbolic decomposition on the sparcity of matrix.
This function is particularly useful when solving for several problems having the same structure.
| cholmod_common& cholmod | ( | ) | [inline] |
Returns a reference to the Cholmod's configuration structure to get a full control over the performed operations. See the Cholmod user guide for details.
| void compute | ( | const MatrixType & | matrix | ) | [inline] |
Computes the sparse Cholesky decomposition of matrix
| void factorize | ( | const MatrixType & | matrix | ) | [inline] |
Performs a numeric decomposition of matrix
The given matrix must has the same sparcity than the matrix on which the symbolic decomposition has been performed.
| ComputationInfo info | ( | ) | const [inline] |
Reports whether previous computation was successful.
Success if computation was succesful, NumericalIssue if the matrix.appears to be negative. | const internal::solve_retval<CholmodDecomposition, Rhs> solve | ( | const MatrixBase< Rhs > & | b | ) | const [inline] |
using the current decomposition of A.| const internal::sparse_solve_retval<CholmodDecomposition, Rhs> solve | ( | const SparseMatrixBase< Rhs > & | b | ) | const [inline] |
using the current decomposition of A.
1.7.6.1