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 90 of file SimplicialCholesky.h.
|
inline |
Definition at line 100 of file SimplicialCholesky.h.
|
inline |
Definition at line 164 of file SimplicialCholesky.h.
|
inline |
Definition at line 191 of file SimplicialCholesky.h.
|
inlineprotected |
Definition at line 238 of file SimplicialCholesky.h.
|
protected |
Definition at line 26 of file SimplicialCholesky_impl.h.
|
inline |
Definition at line 107 of file SimplicialCholesky.h.
|
inlineprotected |
Computes the sparse Cholesky decomposition of matrix
Definition at line 202 of file SimplicialCholesky.h.
|
inline |
Definition at line 104 of file SimplicialCholesky.h.
|
inline |
Definition at line 105 of file SimplicialCholesky.h.
|
inline |
Definition at line 150 of file SimplicialCholesky.h.
|
inlineprotected |
Definition at line 214 of file SimplicialCholesky.h.
|
protected |
Definition at line 76 of file SimplicialCholesky_impl.h.
|
inline |
Reports whether previous computation was successful.
Success
if computation was successful, NumericalIssue
if the matrix.appears to be negative. Definition at line 115 of file SimplicialCholesky.h.
|
protected |
Definition at line 658 of file SimplicialCholesky.h.
|
inline |
Definition at line 123 of file SimplicialCholesky.h.
|
inline |
Definition at line 128 of file SimplicialCholesky.h.
|
inline |
Definition at line 108 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 140 of file SimplicialCholesky.h.
|
protected |
Definition at line 261 of file SimplicialCholesky.h.
|
protected |
Definition at line 264 of file SimplicialCholesky.h.
|
protected |
Definition at line 260 of file SimplicialCholesky.h.
|
mutableprotected |
Definition at line 259 of file SimplicialCholesky.h.
|
protected |
Definition at line 263 of file SimplicialCholesky.h.
|
protected |
Definition at line 266 of file SimplicialCholesky.h.
|
protected |
Definition at line 267 of file SimplicialCholesky.h.
|
protected |
Definition at line 265 of file SimplicialCholesky.h.
|
protected |
Definition at line 268 of file SimplicialCholesky.h.
|
protected |
Definition at line 270 of file SimplicialCholesky.h.
|
protected |
Definition at line 271 of file SimplicialCholesky.h.