template<typename Derived>
SimplicialCholeskyBase class
A base class for direct sparse Cholesky factorizations.
Template parameters | |
---|---|
Derived | the type of the derived class, that is the actual factorization type. |
Contents
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.
Base classes
-
template<typename Derived>class SparseSolverBase
- A base class for sparse solvers.
Constructors, destructors, conversion operators
Public functions
- auto info() const -> ComputationInfo
- Reports whether previous computation was successful.
- auto permutationP() const -> const PermutationMatrix<Dynamic, Dynamic, StorageIndex>&
- auto permutationPinv() const -> const PermutationMatrix<Dynamic, Dynamic, StorageIndex>&
- auto setShift(const RealScalar& offset, const RealScalar& scale = 1) -> Derived&
Protected types
- struct keep_diag
Protected functions
-
template<bool DoLDLT>void compute(const MatrixType& matrix)
Function documentation
template<typename Derived>
Eigen:: SimplicialCholeskyBase<Derived>:: SimplicialCholeskyBase()
Default constructor
template<typename Derived>
ComputationInfo Eigen:: SimplicialCholeskyBase<Derived>:: info() const
Reports whether previous computation was successful.
Returns | Success if computation was successful, NumericalIssue if the matrix.appears to be negative. |
---|
template<typename Derived>
const PermutationMatrix<Dynamic, Dynamic, StorageIndex>& Eigen:: SimplicialCholeskyBase<Derived>:: permutationP() const
Returns | the permutation P |
---|
template<typename Derived>
const PermutationMatrix<Dynamic, Dynamic, StorageIndex>& Eigen:: SimplicialCholeskyBase<Derived>:: permutationPinv() const
Returns | the inverse P^-1 of the permutation P |
---|
template<typename Derived>
Derived& Eigen:: SimplicialCholeskyBase<Derived>:: setShift(const RealScalar& offset,
const RealScalar& scale = 1)
Returns | a reference to *this . |
---|
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.
template<typename Derived>
template<bool DoLDLT>
void Eigen:: SimplicialCholeskyBase<Derived>:: compute(const MatrixType& matrix) protected
Computes the sparse Cholesky decomposition of matrix