The base class for the direct Cholesky factorization of Cholmod. More...
#include <CholmodSupport.h>
Inherits noncopyable.
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 () |
CholmodBase () | |
CholmodBase (const MatrixType &matrix) | |
Index | cols () const |
Derived & | compute (const MatrixType &matrix) |
Derived & | derived () |
const Derived & | derived () const |
template<typename Stream > | |
void | dumpMemory (Stream &s) |
void | factorize (const MatrixType &matrix) |
ComputationInfo | info () const |
Reports whether previous computation was successful. | |
Index | rows () const |
template<typename Rhs > | |
const internal::solve_retval < CholmodBase, Rhs > | solve (const MatrixBase< Rhs > &b) const |
template<typename Rhs > | |
const internal::sparse_solve_retval < CholmodBase, Rhs > | solve (const SparseMatrixBase< Rhs > &b) const |
~CholmodBase () | |
Protected Attributes | |
int | m_analysisIsOk |
cholmod_common | m_cholmod |
cholmod_factor * | m_cholmodFactor |
int | m_factorizationIsOk |
ComputationInfo | m_info |
bool | m_isInitialized |
The base class for the direct Cholesky factorization of Cholmod.
typedef MatrixType CholMatrixType |
typedef MatrixType::Index Index |
typedef _MatrixType MatrixType |
typedef MatrixType::RealScalar RealScalar |
typedef MatrixType::Scalar Scalar |
CholmodBase | ( | ) | [inline] |
CholmodBase | ( | const MatrixType & | matrix | ) | [inline] |
~CholmodBase | ( | ) | [inline] |
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.
Referenced by CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::compute().
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.
Derived& compute | ( | const MatrixType & | matrix | ) | [inline] |
Computes the sparse Cholesky decomposition of matrix
Referenced by CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::CholmodBase().
Derived& derived | ( | ) | [inline] |
const Derived& derived | ( | ) | const [inline] |
void dumpMemory | ( | Stream & | s | ) | [inline] |
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.
Referenced by CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::compute().
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<CholmodBase, Rhs> solve | ( | const MatrixBase< Rhs > & | b | ) | const [inline] |
const internal::sparse_solve_retval<CholmodBase, Rhs> solve | ( | const SparseMatrixBase< Rhs > & | b | ) | const [inline] |
int m_analysisIsOk [protected] |
cholmod_common m_cholmod [mutable, protected] |
Referenced by CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::analyzePattern(), CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::cholmod(), CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::CholmodBase(), CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::factorize(), and CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::~CholmodBase().
cholmod_factor* m_cholmodFactor [protected] |
Referenced by CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::analyzePattern(), CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::cols(), CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::factorize(), CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::rows(), and CholmodBase< _MatrixType, _UpLo, CholmodSimplicialLLT< _MatrixType, _UpLo > >::~CholmodBase().
int m_factorizationIsOk [protected] |
ComputationInfo m_info [mutable, protected] |
bool m_isInitialized [protected] |