Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SimplicialCholesky< _MatrixType, _UpLo > Class Template Reference

#include <SimplicialCholesky.h>

+ Inheritance diagram for SimplicialCholesky< _MatrixType, _UpLo >:

Public Types

enum  
enum  { UpLo }
typedef SimplicialCholeskyBase
< SimplicialCholesky
Base
typedef SparseMatrix< Scalar,
ColMajor, Index
CholMatrixType
typedef MatrixType::Index Index
typedef internal::traits
< SimplicialLDLT< MatrixType,
UpLo > > 
LDLTTraits
typedef internal::traits
< SimplicialLLT< MatrixType,
UpLo > > 
LLTTraits
typedef _MatrixType MatrixType
typedef MatrixType::RealScalar RealScalar
typedef MatrixType::Scalar Scalar
typedef internal::traits
< SimplicialCholesky
Traits
typedef Matrix< Scalar,
Dynamic, 1 > 
VectorType

Public Member Functions

template<typename Rhs , typename Dest >
void _solve (const MatrixBase< Rhs > &b, MatrixBase< Dest > &dest) const
void analyzePattern (const MatrixType &a)
Index cols () const
SimplicialCholeskycompute (const MatrixType &matrix)
SimplicialCholesky
< _MatrixType, _UpLo > & 
derived ()
const SimplicialCholesky
< _MatrixType, _UpLo > & 
derived () const
Scalar determinant () const
void factorize (const MatrixType &a)
ComputationInfo info () const
 Reports whether previous computation was successful.
const PermutationMatrix
< Dynamic, Dynamic, Index > & 
permutationP () const
const PermutationMatrix
< Dynamic, Dynamic, Index > & 
permutationPinv () const
const CholMatrixType rawMatrix () const
Index rows () const
SimplicialCholeskysetMode (SimplicialCholeskyMode mode)
SimplicialCholesky
< _MatrixType, _UpLo > & 
setShift (const RealScalar &offset, const RealScalar &scale=1)
 SimplicialCholesky ()
 SimplicialCholesky (const MatrixType &matrix)
const internal::solve_retval
< SimplicialCholeskyBase, Rhs > 
solve (const MatrixBase< Rhs > &b) const
const
internal::sparse_solve_retval
< SimplicialCholeskyBase, Rhs > 
solve (const SparseMatrixBase< Rhs > &b) const
const VectorType vectorD () const

Protected Member Functions

void analyzePattern (const MatrixType &a, bool doLDLT)
void analyzePattern_preordered (const CholMatrixType &a, bool doLDLT)
void factorize_preordered (const CholMatrixType &a)
void ordering (const MatrixType &a, CholMatrixType &ap)

Protected Attributes

bool m_analysisIsOk
VectorType m_diag
bool m_factorizationIsOk
ComputationInfo m_info
bool m_isInitialized
bool m_LDLT
CholMatrixType m_matrix
VectorXi m_nonZerosPerCol
PermutationMatrix< Dynamic,
Dynamic, Index
m_P
VectorXi m_parent
PermutationMatrix< Dynamic,
Dynamic, Index
m_Pinv
RealScalar m_shiftOffset
RealScalar m_shiftScale

Detailed Description

template<typename _MatrixType, int _UpLo>
class Eigen::SimplicialCholesky< _MatrixType, _UpLo >

See Also
class SimplicialLDLT, class SimplicialLLT

Member Typedef Documentation

typedef MatrixType::Index Index
typedef internal::traits<SimplicialLDLT<MatrixType,UpLo> > LDLTTraits
typedef internal::traits<SimplicialLLT<MatrixType,UpLo> > LLTTraits
typedef _MatrixType MatrixType
typedef MatrixType::RealScalar RealScalar
typedef MatrixType::Scalar Scalar
typedef internal::traits<SimplicialCholesky> Traits

Member Enumeration Documentation

anonymous enum
inherited
anonymous enum
Enumerator:
UpLo 

Constructor & Destructor Documentation

SimplicialCholesky ( )
inline
SimplicialCholesky ( const MatrixType matrix)
inline

Member Function Documentation

void _solve ( const MatrixBase< Rhs > &  b,
MatrixBase< Dest > &  dest 
) const
inline
void analyzePattern ( const MatrixType a,
bool  doLDLT 
)
inlineprotectedinherited
void analyzePattern ( const MatrixType a)
inline

Performs a symbolic decomposition on the sparcity of matrix.

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

See Also
factorize()

References SimplicialCholeskyBase< Derived >::analyzePattern(), and SimplicialCholesky< _MatrixType, _UpLo >::m_LDLT.

void analyzePattern_preordered ( const CholMatrixType a,
bool  doLDLT 
)
protectedinherited
Index cols ( void  ) const
inlineinherited
SimplicialCholesky& compute ( const MatrixType matrix)
inline
SimplicialCholesky< _MatrixType, _UpLo > & derived ( )
inlineinherited
const SimplicialCholesky< _MatrixType, _UpLo > & derived ( ) const
inlineinherited
Scalar determinant ( ) const
inline
void factorize ( const MatrixType a)
inline

Performs a numeric decomposition of matrix

The given matrix must has the same sparcity than the matrix on which the symbolic decomposition has been performed.

See Also
analyzePattern()

Reimplemented from SimplicialCholeskyBase< SimplicialCholesky< _MatrixType, _UpLo > >.

References SimplicialCholesky< _MatrixType, _UpLo >::m_LDLT.

void factorize_preordered ( const CholMatrixType a)
protectedinherited
ComputationInfo info ( ) const
inlineinherited

Reports whether previous computation was successful.

Returns
Success if computation was succesful, NumericalIssue if the matrix.appears to be negative.
void ordering ( const MatrixType a,
CholMatrixType ap 
)
protectedinherited
const PermutationMatrix<Dynamic,Dynamic,Index>& permutationP ( ) const
inlineinherited
Returns
the permutation P
See Also
permutationPinv()
const PermutationMatrix<Dynamic,Dynamic,Index>& permutationPinv ( ) const
inlineinherited
Returns
the inverse P^-1 of the permutation P
See Also
permutationP()
const CholMatrixType rawMatrix ( ) const
inline
Index rows ( void  ) const
inlineinherited
SimplicialCholesky& setMode ( SimplicialCholeskyMode  mode)
inline
SimplicialCholesky< _MatrixType, _UpLo > & setShift ( const RealScalar offset,
const RealScalar scale = 1 
)
inlineinherited

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
inlineinherited
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
inlineinherited
Returns
the solution x of $ A x = b $ using the current decomposition of A.
See Also
compute()
const VectorType vectorD ( ) const
inline

Member Data Documentation

bool m_analysisIsOk
protectedinherited
VectorType m_diag
protectedinherited
bool m_factorizationIsOk
protectedinherited
ComputationInfo m_info
mutableprotectedinherited
bool m_isInitialized
protectedinherited
bool m_LDLT
protected
CholMatrixType m_matrix
protectedinherited
VectorXi m_nonZerosPerCol
protectedinherited
PermutationMatrix<Dynamic,Dynamic,Index> m_P
protectedinherited
VectorXi m_parent
protectedinherited
PermutationMatrix<Dynamic,Dynamic,Index> m_Pinv
protectedinherited
RealScalar m_shiftOffset
protectedinherited
RealScalar m_shiftScale
protectedinherited

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