$treeview $search $mathjax
Eigen  3.2.5
$projectbrief
$projectbrief
$searchbox

CholmodDecomposition< _MatrixType, _UpLo > Class Template Reference
[CholmodSupport module]

A general Cholesky factorization and solver based on Cholmod. More...

Inheritance diagram for CholmodDecomposition< _MatrixType, _UpLo >:

List of all members.

Public Member Functions

void analyzePattern (const MatrixType &matrix)
cholmod_common & cholmod ()
CholmodDecomposition
< _MatrixType, _UpLo > & 
compute (const MatrixType &matrix)
void factorize (const MatrixType &matrix)
ComputationInfo info () const
 Reports whether previous computation was successful.
CholmodDecomposition
< _MatrixType, _UpLo > & 
setShift (const RealScalar &offset)
const
internal::sparse_solve_retval
< CholmodBase, Rhs > 
solve (const SparseMatrixBase< Rhs > &b) const
const internal::solve_retval
< CholmodBase, Rhs > 
solve (const MatrixBase< Rhs > &b) const

Detailed Description

template<typename _MatrixType, int _UpLo = Lower>
class Eigen::CholmodDecomposition< _MatrixType, _UpLo >

A general Cholesky factorization and solver based on Cholmod.

This class allows to solve for A.X = B sparse linear problems via a LL^T or LDL^T Cholesky factorization using the Cholmod library. The sparse matrix A must be selfadjoint and positive definite. The vectors or matrices X and B can be either dense or sparse.

This variant permits to change the underlying Cholesky method at runtime. On the other hand, it does not provide access to the result of the factorization. The default is to let Cholmod automatically choose between a simplicial and supernodal factorization.

Template Parameters:
_MatrixType the type of the sparse matrix A, it must be a SparseMatrix<>
_UpLo the triangular part that will be used for the computations. It can be Lower or Upper. Default is Lower.

This class supports all kind of SparseMatrix<>: row or column major; upper, lower, or both; compressed or non compressed.

See also:
Sparse solvers

Member Function Documentation

void analyzePattern ( const MatrixType &  matrix  )  [inline, inherited]

Performs a symbolic decomposition on the sparsity pattern of matrix.

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

See also:
factorize()
cholmod_common& cholmod (  )  [inline, inherited]

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.

CholmodDecomposition< _MatrixType, _UpLo > & compute ( const MatrixType &  matrix  )  [inline, inherited]

Computes the sparse Cholesky decomposition of matrix

void factorize ( const MatrixType &  matrix  )  [inline, inherited]

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.

See also:
analyzePattern()
ComputationInfo info (  )  const [inline, inherited]

Reports whether previous computation was successful.

Returns:
Success if computation was succesful, NumericalIssue if the matrix.appears to be negative.
CholmodDecomposition< _MatrixType, _UpLo > & setShift ( const RealScalar &  offset  )  [inline, inherited]

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.

Returns:
a reference to *this.
const internal::sparse_solve_retval<CholmodBase, Rhs> solve ( const SparseMatrixBase< Rhs > &  b  )  const [inline, inherited]
Returns:
the solution x of $ A x = b $ using the current decomposition of A.
See also:
compute()
const internal::solve_retval<CholmodBase, Rhs> solve ( const MatrixBase< Rhs > &  b  )  const [inline, inherited]
Returns:
the solution x of $ A x = b $ using the current decomposition of A.
See also:
compute()

The documentation for this class was generated from the following file: