A base class for direct sparse Cholesky factorizations. More...
#include <SimplicialCholesky.h>
Classes | |
struct | keep_diag |
Public Types | |
enum | { UpLo = internal::traits<Derived>::UpLo } |
enum | { ColsAtCompileTime = MatrixType::ColsAtCompileTime, MaxColsAtCompileTime = MatrixType::MaxColsAtCompileTime } |
typedef SparseMatrix< Scalar, ColMajor, StorageIndex > | CholMatrixType |
typedef CholMatrixType const * | ConstCholMatrixPtr |
typedef internal::traits< Derived >::MatrixType | MatrixType |
typedef internal::traits< Derived >::OrderingType | OrderingType |
typedef MatrixType::RealScalar | RealScalar |
typedef MatrixType::Scalar | Scalar |
typedef MatrixType::StorageIndex | StorageIndex |
typedef Matrix< StorageIndex, Dynamic, 1 > | VectorI |
typedef Matrix< Scalar, Dynamic, 1 > | VectorType |
Public Member Functions | |
template<typename Rhs , typename Dest > | |
void | _solve_impl (const MatrixBase< Rhs > &b, MatrixBase< Dest > &dest) const |
template<typename Rhs , typename Dest > | |
void | _solve_impl (const SparseMatrixBase< Rhs > &b, SparseMatrixBase< Dest > &dest) const |
Index | cols () const |
Derived & | derived () |
const Derived & | derived () const |
template<typename Stream > | |
void | dumpMemory (Stream &s) |
ComputationInfo | info () const |
Reports whether previous computation was successful. More... | |
const PermutationMatrix< Dynamic, Dynamic, StorageIndex > & | permutationP () const |
const PermutationMatrix< Dynamic, Dynamic, StorageIndex > & | permutationPinv () const |
Index | rows () const |
Derived & | setShift (const RealScalar &offset, const RealScalar &scale=1) |
SimplicialCholeskyBase () | |
SimplicialCholeskyBase (const MatrixType &matrix) | |
~SimplicialCholeskyBase () | |
Public Member Functions inherited from Eigen::SparseSolverBase< Derived > | |
template<typename Rhs , typename Dest > | |
void | _solve_impl (const SparseMatrixBase< Rhs > &b, SparseMatrixBase< Dest > &dest) const |
Derived & | derived () |
const Derived & | derived () const |
template<typename Rhs > | |
const Solve< Derived, Rhs > | solve (const MatrixBase< Rhs > &b) const |
template<typename Rhs > | |
const Solve< Derived, Rhs > | solve (const SparseMatrixBase< Rhs > &b) const |
SparseSolverBase () | |
~SparseSolverBase () | |
Protected Member Functions | |
void | analyzePattern (const MatrixType &a, bool doLDLT) |
void | analyzePattern_preordered (const CholMatrixType &a, bool doLDLT) |
template<bool DoLDLT> | |
void | compute (const MatrixType &matrix) |
template<bool DoLDLT> | |
void | factorize (const MatrixType &a) |
template<bool DoLDLT> | |
void | factorize_preordered (const CholMatrixType &a) |
void | ordering (const MatrixType &a, ConstCholMatrixPtr &pmat, CholMatrixType &ap) |
Protected Attributes | |
bool | m_analysisIsOk |
VectorType | m_diag |
bool | m_factorizationIsOk |
ComputationInfo | m_info |
CholMatrixType | m_matrix |
VectorI | m_nonZerosPerCol |
PermutationMatrix< Dynamic, Dynamic, StorageIndex > | m_P |
VectorI | m_parent |
PermutationMatrix< Dynamic, Dynamic, StorageIndex > | m_Pinv |
RealScalar | m_shiftOffset |
RealScalar | m_shiftScale |
Protected Attributes inherited from Eigen::SparseSolverBase< Derived > | |
bool | m_isInitialized |
Private Types | |
typedef SparseSolverBase< Derived > | Base |
A base class for direct sparse Cholesky factorizations.
This is a base class for LL^T and LDL^T Cholesky factorizations of sparse matrices that are selfadjoint and positive definite. These factorizations allow for solving A.X = B where X and B can be either dense or sparse.
In order to reduce the fill-in, a symmetric permutation P is applied prior to the factorization such that the factorized matrix is P A P^-1.
Derived | the type of the derived class, that is the actual factorization type. |
Definition at line 55 of file SimplicialCholesky.h.
|
private |
Definition at line 57 of file SimplicialCholesky.h.
typedef SparseMatrix<Scalar,ColMajor,StorageIndex> Eigen::SimplicialCholeskyBase< Derived >::CholMatrixType |
Definition at line 67 of file SimplicialCholesky.h.
typedef CholMatrixType const* Eigen::SimplicialCholeskyBase< Derived >::ConstCholMatrixPtr |
Definition at line 68 of file SimplicialCholesky.h.
typedef internal::traits<Derived>::MatrixType Eigen::SimplicialCholeskyBase< Derived >::MatrixType |
Definition at line 61 of file SimplicialCholesky.h.
typedef internal::traits<Derived>::OrderingType Eigen::SimplicialCholeskyBase< Derived >::OrderingType |
Definition at line 62 of file SimplicialCholesky.h.
typedef MatrixType::RealScalar Eigen::SimplicialCholeskyBase< Derived >::RealScalar |
Definition at line 65 of file SimplicialCholesky.h.
typedef MatrixType::Scalar Eigen::SimplicialCholeskyBase< Derived >::Scalar |
Definition at line 64 of file SimplicialCholesky.h.
typedef MatrixType::StorageIndex Eigen::SimplicialCholeskyBase< Derived >::StorageIndex |
Definition at line 66 of file SimplicialCholesky.h.
typedef Matrix<StorageIndex,Dynamic,1> Eigen::SimplicialCholeskyBase< Derived >::VectorI |
Definition at line 70 of file SimplicialCholesky.h.
typedef Matrix<Scalar,Dynamic,1> Eigen::SimplicialCholeskyBase< Derived >::VectorType |
Definition at line 69 of file SimplicialCholesky.h.
anonymous enum |
Enumerator | |
---|---|
UpLo |
Definition at line 63 of file SimplicialCholesky.h.
anonymous enum |
Enumerator | |
---|---|
ColsAtCompileTime | |
MaxColsAtCompileTime |
Definition at line 72 of file SimplicialCholesky.h.
|
inline |
Default constructor
Definition at line 82 of file SimplicialCholesky.h.
|
inlineexplicit |
Definition at line 86 of file SimplicialCholesky.h.
|
inline |
Definition at line 92 of file SimplicialCholesky.h.
|
inline |
Definition at line 156 of file SimplicialCholesky.h.
|
inline |
Definition at line 183 of file SimplicialCholesky.h.
|
inlineprotected |
Definition at line 230 of file SimplicialCholesky.h.
|
protected |
Definition at line 51 of file SimplicialCholesky_impl.h.
|
inline |
Definition at line 99 of file SimplicialCholesky.h.
|
inlineprotected |
Computes the sparse Cholesky decomposition of matrix
Definition at line 194 of file SimplicialCholesky.h.
|
inline |
Definition at line 96 of file SimplicialCholesky.h.
|
inline |
Definition at line 97 of file SimplicialCholesky.h.
|
inline |
Definition at line 142 of file SimplicialCholesky.h.
|
inlineprotected |
Definition at line 206 of file SimplicialCholesky.h.
|
protected |
Definition at line 101 of file SimplicialCholesky_impl.h.
|
inline |
Reports whether previous computation was successful.
Success
if computation was succesful, NumericalIssue
if the matrix.appears to be negative. Definition at line 107 of file SimplicialCholesky.h.
|
protected |
Definition at line 650 of file SimplicialCholesky.h.
|
inline |
Definition at line 115 of file SimplicialCholesky.h.
|
inline |
Definition at line 120 of file SimplicialCholesky.h.
|
inline |
Definition at line 100 of file SimplicialCholesky.h.
|
inline |
Sets the shift parameters that will be used to adjust the diagonal coefficients during the numerical factorization.
During the numerical factorization, the diagonal coefficients are transformed by the following linear model:
d_ii
= offset + scale * d_ii
The default is the identity transformation with offset=0, and scale=1.
*this
. Definition at line 132 of file SimplicialCholesky.h.
|
protected |
Definition at line 253 of file SimplicialCholesky.h.
|
protected |
Definition at line 256 of file SimplicialCholesky.h.
|
protected |
Definition at line 252 of file SimplicialCholesky.h.
|
mutableprotected |
Definition at line 251 of file SimplicialCholesky.h.
|
protected |
Definition at line 255 of file SimplicialCholesky.h.
|
protected |
Definition at line 258 of file SimplicialCholesky.h.
|
protected |
Definition at line 259 of file SimplicialCholesky.h.
|
protected |
Definition at line 257 of file SimplicialCholesky.h.
|
protected |
Definition at line 260 of file SimplicialCholesky.h.
|
protected |
Definition at line 262 of file SimplicialCholesky.h.
|
protected |
Definition at line 263 of file SimplicialCholesky.h.