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 160 of file CholmodSupport.h.
typedef MatrixType Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::CholMatrixType |
Definition at line 167 of file CholmodSupport.h.
typedef MatrixType::Index Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::Index |
Definition at line 168 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 163 of file CholmodSupport.h.
typedef MatrixType::RealScalar Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::RealScalar |
Definition at line 166 of file CholmodSupport.h.
typedef MatrixType::Scalar Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::Scalar |
Definition at line 165 of file CholmodSupport.h.
anonymous enum |
Definition at line 164 of file CholmodSupport.h.
Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::CholmodBase | ( | ) | [inline] |
Definition at line 172 of file CholmodSupport.h.
Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::CholmodBase | ( | const MatrixType & | matrix | ) | [inline] |
Definition at line 179 of file CholmodSupport.h.
Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::~CholmodBase | ( | ) | [inline] |
Definition at line 187 of file CholmodSupport.h.
void Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::_solve | ( | const MatrixBase< Rhs > & | b, |
MatrixBase< Dest > & | dest | ||
) | const [inline] |
Definition at line 293 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 315 of file CholmodSupport.h.
void Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::analyzePattern | ( | const MatrixType & | matrix | ) | [inline] |
Performs a symbolic decomposition on the sparsity pattern of matrix.
This function is particularly useful when solving for several problems having the same structure.
Definition at line 253 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 288 of file CholmodSupport.h.
Index Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::cols | ( | ) | const [inline] |
Definition at line 194 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 212 of file CholmodSupport.h.
Derived& Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::derived | ( | ) | [inline] |
Definition at line 197 of file CholmodSupport.h.
const Derived& Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::derived | ( | ) | const [inline] |
Definition at line 198 of file CholmodSupport.h.
void Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::dumpMemory | ( | Stream & | ) | [inline] |
Definition at line 352 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 have the same sparsity pattern as the matrix on which the symbolic decomposition has been performed.
Definition at line 275 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 205 of file CholmodSupport.h.
Index Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::rows | ( | ) | const [inline] |
Definition at line 195 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 345 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 225 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 239 of file CholmodSupport.h.
int Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_analysisIsOk [protected] |
Definition at line 362 of file CholmodSupport.h.
cholmod_common Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_cholmod [mutable, protected] |
Definition at line 356 of file CholmodSupport.h.
cholmod_factor* Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_cholmodFactor [protected] |
Definition at line 357 of file CholmodSupport.h.
int Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_factorizationIsOk [protected] |
Definition at line 361 of file CholmodSupport.h.
ComputationInfo Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_info [mutable, protected] |
Definition at line 359 of file CholmodSupport.h.
bool Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_isInitialized [protected] |
Definition at line 360 of file CholmodSupport.h.
RealScalar Eigen::CholmodBase< _MatrixType, _UpLo, Derived >::m_shiftOffset[2] [protected] |
Definition at line 358 of file CholmodSupport.h.