Classes | Public Member Functions | Protected Member Functions
SimplicialCholeskyBase< Derived > Class Template Reference

A direct sparse Cholesky factorizations. More...

#include <SimplicialCholesky.h>

Inherits noncopyable.

List of all members.

Classes

struct  keep_diag

Public Member Functions

ComputationInfo info () const
 Reports whether previous computation was successful.
const PermutationMatrix
< Dynamic, Dynamic, Index > & 
permutationP () const
const PermutationMatrix
< Dynamic, Dynamic, Index > & 
permutationPinv () const
Derived & setShift (const RealScalar &offset, const RealScalar &scale=1)
 SimplicialCholeskyBase ()
template<typename Rhs >
const internal::solve_retval
< SimplicialCholeskyBase, Rhs > 
solve (const MatrixBase< Rhs > &b) const
template<typename Rhs >
const
internal::sparse_solve_retval
< SimplicialCholeskyBase, Rhs > 
solve (const SparseMatrixBase< Rhs > &b) const

Protected Member Functions

template<bool DoLDLT>
void compute (const MatrixType &matrix)

Detailed Description

template<typename Derived>
class Eigen::SimplicialCholeskyBase< Derived >

A direct sparse Cholesky factorizations.

These classes provide LL^T and LDL^T Cholesky factorizations of sparse matrices that are selfadjoint and positive definite. The factorization allows 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.

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

Constructor & Destructor Documentation

SimplicialCholeskyBase ( ) [inline]

Default constructor


Member Function Documentation

void compute ( const MatrixType &  matrix) [inline, protected]

Computes the sparse Cholesky decomposition of matrix

Reimplemented in SimplicialCholesky< _MatrixType, _UpLo >, SimplicialLDLT< _MatrixType, _UpLo >, and SimplicialLLT< _MatrixType, _UpLo >.

ComputationInfo info ( ) const [inline]

Reports whether previous computation was successful.

Returns:
Success if computation was succesful, NumericalIssue if the matrix.appears to be negative.
const PermutationMatrix<Dynamic,Dynamic,Index>& permutationP ( ) const [inline]
Returns:
the permutation P
See also:
permutationPinv()
const PermutationMatrix<Dynamic,Dynamic,Index>& permutationPinv ( ) const [inline]
Returns:
the inverse P^-1 of the permutation P
See also:
permutationP()
Derived& setShift ( const RealScalar &  offset,
const RealScalar &  scale = 1 
) [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.

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