The base class for the direct Cholesky factorization of Cholmod. More...
#include <CholmodSupport.h>
Public Types | |
enum | { UpLo = _UpLo } |
typedef MatrixType | CholMatrixType |
typedef MatrixType::Index | Index |
typedef _MatrixType | MatrixType |
typedef MatrixType::RealScalar | RealScalar |
typedef MatrixType::Scalar | Scalar |
Public Member Functions | |
template<typename Rhs , typename Dest > | |
void | _solve (const MatrixBase< Rhs > &b, MatrixBase< Dest > &dest) const |
template<typename RhsScalar , int RhsOptions, typename RhsIndex , typename DestScalar , int DestOptions, typename DestIndex > | |
void | _solve (const SparseMatrix< RhsScalar, RhsOptions, RhsIndex > &b, SparseMatrix< DestScalar, DestOptions, DestIndex > &dest) const |
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 &) |
void | factorize (const MatrixType &matrix) |
ComputationInfo | info () const |
Reports whether previous computation was successful. | |
Index | rows () const |
Derived & | setShift (const RealScalar &offset) |
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 |
RealScalar | m_shiftOffset [2] |
The base class for the direct Cholesky factorization of Cholmod.
Definition at line 158 of file CholmodSupport.h.
typedef MatrixType Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::CholMatrixType |
Definition at line 165 of file CholmodSupport.h.
typedef MatrixType::Index Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::Index |
Definition at line 166 of file CholmodSupport.h.
typedef _MatrixType Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::MatrixType |
Reimplemented in Eigen::CholmodDecomposition< _MatrixType, _UpLo >, Eigen::CholmodSupernodalLLT< _MatrixType, _UpLo >, Eigen::CholmodSimplicialLDLT< _MatrixType, _UpLo >, and Eigen::CholmodSimplicialLLT< _MatrixType, _UpLo >.
Definition at line 161 of file CholmodSupport.h.
typedef MatrixType::RealScalar Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::RealScalar |
Definition at line 164 of file CholmodSupport.h.
typedef MatrixType::Scalar Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::Scalar |
Definition at line 163 of file CholmodSupport.h.
anonymous enum |
Definition at line 162 of file CholmodSupport.h.
Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::CholmodBase | ( | ) | [inline] |
Definition at line 170 of file CholmodSupport.h.
Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::CholmodBase | ( | const MatrixType & | matrix | ) | [inline] |
Definition at line 176 of file CholmodSupport.h.
Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::~CholmodBase | ( | ) | [inline] |
Definition at line 184 of file CholmodSupport.h.
void Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::_solve | ( | const MatrixBase< Rhs > & | b, |
MatrixBase< Dest > & | dest | ||
) | const [inline] |
Definition at line 290 of file CholmodSupport.h.
void Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::_solve | ( | const SparseMatrix< RhsScalar, RhsOptions, RhsIndex > & | b, |
SparseMatrix< DestScalar, DestOptions, DestIndex > & | dest | ||
) | const [inline] |
Definition at line 312 of file CholmodSupport.h.
void Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::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.
Definition at line 250 of file CholmodSupport.h.
cholmod_common& Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::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.
Definition at line 285 of file CholmodSupport.h.
Index Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::cols | ( | ) | const [inline] |
Definition at line 191 of file CholmodSupport.h.
Derived& Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::compute | ( | const MatrixType & | matrix | ) | [inline] |
Computes the sparse Cholesky decomposition of matrix
Definition at line 209 of file CholmodSupport.h.
Derived& Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::derived | ( | ) | [inline] |
Definition at line 194 of file CholmodSupport.h.
const Derived& Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::derived | ( | ) | const [inline] |
Definition at line 195 of file CholmodSupport.h.
void Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::dumpMemory | ( | Stream & | ) | [inline] |
Definition at line 349 of file CholmodSupport.h.
void Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::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.
Definition at line 272 of file CholmodSupport.h.
ComputationInfo Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::info | ( | ) | const [inline] |
Reports whether previous computation was successful.
Success
if computation was succesful, NumericalIssue
if the matrix.appears to be negative. Definition at line 202 of file CholmodSupport.h.
Index Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::rows | ( | ) | const [inline] |
Definition at line 192 of file CholmodSupport.h.
Derived& Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::setShift | ( | const RealScalar & | offset | ) | [inline] |
Sets the shift parameter that will be used to adjust the diagonal coefficients during the numerical factorization.
During the numerical factorization, an offset term is added to the diagonal coefficients:
d_ii
= offset + d_ii
The default is offset=0.
*this
. Definition at line 342 of file CholmodSupport.h.
const internal::solve_retval<CholmodBase, Rhs> Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::solve | ( | const MatrixBase< Rhs > & | b | ) | const [inline] |
Definition at line 222 of file CholmodSupport.h.
const internal::sparse_solve_retval<CholmodBase, Rhs> Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::solve | ( | const SparseMatrixBase< Rhs > & | b | ) | const [inline] |
Definition at line 236 of file CholmodSupport.h.
int Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_analysisIsOk [protected] |
Definition at line 359 of file CholmodSupport.h.
cholmod_common Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_cholmod [mutable, protected] |
Definition at line 353 of file CholmodSupport.h.
cholmod_factor* Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_cholmodFactor [protected] |
Definition at line 354 of file CholmodSupport.h.
int Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_factorizationIsOk [protected] |
Definition at line 358 of file CholmodSupport.h.
ComputationInfo Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_info [mutable, protected] |
Definition at line 356 of file CholmodSupport.h.
bool Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_isInitialized [protected] |
Definition at line 357 of file CholmodSupport.h.
RealScalar Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_shiftOffset[2] [protected] |
Definition at line 355 of file CholmodSupport.h.