A base class for direct sparse Cholesky factorizations. More...
Classes | |
struct | keep_diag |
Public Types | |
enum | { UpLo } |
enum | { ColsAtCompileTime , 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 | |
Index | cols () const |
Derived & | derived () |
Derived & | derived () |
const Derived & | derived () const |
const Derived & | derived () const |
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 > | |
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 (SparseSolverBase &&other) | |
~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 |
Private Attributes | |
bool | m_isInitialized |
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 57 of file SimplicialCholesky.h.
|
private |
Definition at line 59 of file SimplicialCholesky.h.
typedef SparseMatrix<Scalar,ColMajor,StorageIndex> Eigen::SimplicialCholeskyBase< Derived >::CholMatrixType |
Definition at line 69 of file SimplicialCholesky.h.
typedef CholMatrixType const* Eigen::SimplicialCholeskyBase< Derived >::ConstCholMatrixPtr |
Definition at line 70 of file SimplicialCholesky.h.
typedef internal::traits<Derived>::MatrixType Eigen::SimplicialCholeskyBase< Derived >::MatrixType |
Definition at line 63 of file SimplicialCholesky.h.
typedef internal::traits<Derived>::OrderingType Eigen::SimplicialCholeskyBase< Derived >::OrderingType |
Definition at line 64 of file SimplicialCholesky.h.
typedef MatrixType::RealScalar Eigen::SimplicialCholeskyBase< Derived >::RealScalar |
Definition at line 67 of file SimplicialCholesky.h.
typedef MatrixType::Scalar Eigen::SimplicialCholeskyBase< Derived >::Scalar |
Definition at line 66 of file SimplicialCholesky.h.
typedef MatrixType::StorageIndex Eigen::SimplicialCholeskyBase< Derived >::StorageIndex |
Definition at line 68 of file SimplicialCholesky.h.
typedef Matrix<StorageIndex,Dynamic,1> Eigen::SimplicialCholeskyBase< Derived >::VectorI |
Definition at line 72 of file SimplicialCholesky.h.
typedef Matrix<Scalar,Dynamic,1> Eigen::SimplicialCholeskyBase< Derived >::VectorType |
Definition at line 71 of file SimplicialCholesky.h.
anonymous enum |
anonymous enum |
Enumerator | |
---|---|
ColsAtCompileTime | |
MaxColsAtCompileTime |
Definition at line 74 of file SimplicialCholesky.h.
|
inline |
Default constructor
Definition at line 84 of file SimplicialCholesky.h.
|
inlineexplicit |
Definition at line 92 of file SimplicialCholesky.h.
|
inline |
Definition at line 102 of file SimplicialCholesky.h.
|
inlineprotected |
Definition at line 240 of file SimplicialCholesky.h.
|
protected |
Definition at line 28 of file SimplicialCholesky_impl.h.
|
inline |
Definition at line 109 of file SimplicialCholesky.h.
|
inlineprotected |
Computes the sparse Cholesky decomposition of matrix
Definition at line 204 of file SimplicialCholesky.h.
|
inline |
Definition at line 83 of file SparseSolverBase.h.
|
inline |
Definition at line 106 of file SimplicialCholesky.h.
|
inline |
Definition at line 84 of file SparseSolverBase.h.
|
inline |
Definition at line 107 of file SimplicialCholesky.h.
|
inlineprotected |
Definition at line 216 of file SimplicialCholesky.h.
|
protected |
Definition at line 78 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 117 of file SimplicialCholesky.h.
|
protected |
Definition at line 660 of file SimplicialCholesky.h.
|
inline |
Definition at line 125 of file SimplicialCholesky.h.
|
inline |
Definition at line 130 of file SimplicialCholesky.h.
|
inline |
Definition at line 110 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 142 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 262 of file SimplicialCholesky.h.
|
mutableprotected |
Definition at line 261 of file SimplicialCholesky.h.
|
mutableprivate |
Definition at line 123 of file SparseSolverBase.h.
|
protected |
Definition at line 265 of file SimplicialCholesky.h.
|
protected |
Definition at line 268 of file SimplicialCholesky.h.
|
protected |
Definition at line 269 of file SimplicialCholesky.h.
|
protected |
Definition at line 267 of file SimplicialCholesky.h.
|
protected |
Definition at line 270 of file SimplicialCholesky.h.
|
protected |
Definition at line 272 of file SimplicialCholesky.h.
|
protected |
Definition at line 273 of file SimplicialCholesky.h.