template<typename _MatrixType, int _UpLo, typename Derived>
Eigen::CholmodBase class

The base class for the direct Cholesky factorization of Cholmod.

Contents

Base classes

template<typename Derived>
class SparseSolverBase
A base class for sparse solvers.

Public functions

void analyzePattern(const MatrixType& matrix)
auto cholmod() -> cholmod_common&
auto compute(const MatrixType& matrix) -> Derived&
auto determinant() const -> Scalar
void factorize(const MatrixType& matrix)
auto info() const -> ComputationInfo
Reports whether previous computation was successful.
auto logDeterminant() const -> Scalar
auto setShift(const RealScalar& offset) -> Derived&

Function documentation

template<typename _MatrixType, int _UpLo, typename Derived>
void Eigen::CholmodBase<_MatrixType, _UpLo, Derived>::analyzePattern(const MatrixType& matrix)

Performs a symbolic decomposition on the sparsity pattern of matrix.

This function is particularly useful when solving for several problems having the same structure.

template<typename _MatrixType, int _UpLo, typename Derived>
cholmod_common& Eigen::CholmodBase<_MatrixType, _UpLo, Derived>::cholmod()

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.

template<typename _MatrixType, int _UpLo, typename Derived>
Derived& Eigen::CholmodBase<_MatrixType, _UpLo, Derived>::compute(const MatrixType& matrix)

Computes the sparse Cholesky decomposition of matrix

template<typename _MatrixType, int _UpLo, typename Derived>
Scalar Eigen::CholmodBase<_MatrixType, _UpLo, Derived>::determinant() const

Returns the determinant of the underlying matrix from the current factorization

template<typename _MatrixType, int _UpLo, typename Derived>
void Eigen::CholmodBase<_MatrixType, _UpLo, Derived>::factorize(const MatrixType& matrix)

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.

template<typename _MatrixType, int _UpLo, typename Derived>
ComputationInfo Eigen::CholmodBase<_MatrixType, _UpLo, 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 _MatrixType, int _UpLo, typename Derived>
Scalar Eigen::CholmodBase<_MatrixType, _UpLo, Derived>::logDeterminant() const

Returns the log determinant of the underlying matrix from the current factorization

template<typename _MatrixType, int _UpLo, typename Derived>
Derived& Eigen::CholmodBase<_MatrixType, _UpLo, Derived>::setShift(const RealScalar& offset)

Returns a reference to *this.

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.