Main MRPT website > C++ reference
MRPT logo
Public Types | Public Member Functions | Protected Types | Protected Attributes
Eigen::SparseLDLT< _MatrixType, Cholmod > Class Template Reference

Detailed Description

template<typename _MatrixType>
class Eigen::SparseLDLT< _MatrixType, Cholmod >

Definition at line 326 of file CholmodSupport.

Inheritance diagram for Eigen::SparseLDLT< _MatrixType, Cholmod >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef _MatrixType MatrixType
typedef MatrixType::Index Index
typedef SparseMatrix< ScalarCholMatrixType

Public Member Functions

 SparseLDLT (int flags=0)
 Creates a dummy LDLT factorization object with flags flags.
 SparseLDLT (const _MatrixType &matrix, int flags=0)
 Creates a LDLT object and compute the respective factorization of matrix using flags flags.
 ~SparseLDLT ()
const Base::CholMatrixTypematrixL (void) const
template<typename Derived >
void solveInPlace (MatrixBase< Derived > &b) const
template<typename Rhs >
const internal::solve_retval
< SparseLDLT< MatrixType,
Cholmod >, Rhs > 
solve (const MatrixBase< Rhs > &b) const
void compute (const _MatrixType &matrix)
 Computes/re-computes the LDLT factorization.
Index cols () const
Index rows () const
const cholmod_factor * cholmodFactor () const
cholmod_common * cholmodCommon () const
bool succeeded () const
void setPrecision (RealScalar v)
 Sets the relative threshold value used to prune zero coefficients during the decomposition.
RealScalar precision () const
void settags (int f)
 Sets the flags.
int flags () const
void _symbolic (const MatrixType &matrix)
 Perform a symbolic factorization.
bool _numeric (const MatrixType &matrix)
 Perform the actual factorization using the previously computed symbolic factorization.
VectorType vectorD (void) const
const VectorTypediag () const

Protected Types

typedef SparseLDLT< _MatrixType > Base
typedef Base::Scalar Scalar
typedef Base::RealScalar RealScalar
enum  
typedef Matrix< Scalar,
_MatrixType::ColsAtCompileTime, 1 > 
VectorType

Protected Attributes

cholmod_common m_cholmod
cholmod_factor * m_cholmodFactor
CholMatrixType m_matrix
VectorType m_diag
VectorXi m_parent
VectorXi m_nonZerosPerCol
PermutationMatrix< Dynamicm_P
PermutationMatrix< Dynamicm_Pinv
RealScalar m_precision
int m_flags
int m_status
bool m_succeeded

Member Typedef Documentation

template<typename _MatrixType >
typedef SparseLDLT<_MatrixType> Eigen::SparseLDLT< _MatrixType, Cholmod >::Base [protected]

Definition at line 329 of file CholmodSupport.

typedef SparseMatrix<Scalar> Eigen::SparseLDLT< _MatrixType, DefaultBackend >::CholMatrixType [inherited]

Definition at line 94 of file SparseExtra.

template<typename _MatrixType >
typedef MatrixType::Index Eigen::SparseLDLT< _MatrixType, Cholmod >::Index

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 340 of file CholmodSupport.

template<typename _MatrixType >
typedef _MatrixType Eigen::SparseLDLT< _MatrixType, Cholmod >::MatrixType

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 339 of file CholmodSupport.

template<typename _MatrixType >
typedef Base::RealScalar Eigen::SparseLDLT< _MatrixType, Cholmod >::RealScalar [protected]

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 331 of file CholmodSupport.

template<typename _MatrixType >
typedef Base::Scalar Eigen::SparseLDLT< _MatrixType, Cholmod >::Scalar [protected]

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 330 of file CholmodSupport.

typedef Matrix<Scalar,_MatrixType::ColsAtCompileTime,1> Eigen::SparseLDLT< _MatrixType, DefaultBackend >::VectorType [protected, inherited]

Definition at line 86 of file SparseExtra.


Member Enumeration Documentation

anonymous enum [protected, inherited]

Definition at line 88 of file SparseExtra.


Constructor & Destructor Documentation

template<typename _MatrixType >
Eigen::SparseLDLT< _MatrixType, Cholmod >::SparseLDLT ( int  flags = 0) [inline]

Creates a dummy LDLT factorization object with flags flags.

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 342 of file CholmodSupport.

template<typename _MatrixType >
Eigen::SparseLDLT< _MatrixType, Cholmod >::SparseLDLT ( const _MatrixType &  matrix,
int  flags = 0 
) [inline]

Creates a LDLT object and compute the respective factorization of matrix using flags flags.

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 348 of file CholmodSupport.

template<typename _MatrixType >
Eigen::SparseLDLT< _MatrixType, Cholmod >::~SparseLDLT ( ) [inline]

Definition at line 355 of file CholmodSupport.


Member Function Documentation

bool Eigen::SparseLDLT< _MatrixType, DefaultBackend >::_numeric ( const MatrixType matrix) [inherited]

Perform the actual factorization using the previously computed symbolic factorization.

void Eigen::SparseLDLT< _MatrixType, DefaultBackend >::_symbolic ( const MatrixType matrix) [inherited]

Perform a symbolic factorization.

template<typename _MatrixType >
cholmod_common* Eigen::SparseLDLT< _MatrixType, Cholmod >::cholmodCommon ( ) const [inline]

Definition at line 383 of file CholmodSupport.

template<typename _MatrixType >
const cholmod_factor* Eigen::SparseLDLT< _MatrixType, Cholmod >::cholmodFactor ( ) const [inline]

Definition at line 380 of file CholmodSupport.

template<typename _MatrixType >
Index Eigen::SparseLDLT< _MatrixType, Cholmod >::cols ( void  ) const [inline]

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 377 of file CholmodSupport.

template<typename _MatrixType >
void Eigen::SparseLDLT< _MatrixType, Cholmod >::compute ( const _MatrixType &  matrix)

Computes/re-computes the LDLT factorization.

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 431 of file CholmodSupport.

const VectorType& Eigen::SparseLDLT< _MatrixType, DefaultBackend >::diag ( ) const [inline, inherited]

Definition at line 180 of file SparseExtra.

int Eigen::SparseLDLT< _MatrixType, DefaultBackend >::flags ( ) const [inline, inherited]
Returns:
the current flags

Definition at line 149 of file SparseExtra.

template<typename _MatrixType >
const SparseLDLT< _MatrixType >::CholMatrixType & Eigen::SparseLDLT< _MatrixType, Cholmod >::matrixL ( void  ) const [inline]
Returns:
the lower triangular matrix L

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 474 of file CholmodSupport.

RealScalar Eigen::SparseLDLT< _MatrixType, DefaultBackend >::precision ( ) const [inline, inherited]
Returns:
the current precision.
See also:
setPrecision()

Definition at line 135 of file SparseExtra.

template<typename _MatrixType >
Index Eigen::SparseLDLT< _MatrixType, Cholmod >::rows ( void  ) const [inline]

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 378 of file CholmodSupport.

void Eigen::SparseLDLT< _MatrixType, DefaultBackend >::setPrecision ( RealScalar  v) [inline, inherited]

Sets the relative threshold value used to prune zero coefficients during the decomposition.

Setting a value greater than zero speeds up computation, and yields to an imcomplete factorization with fewer non zero coefficients. Such approximate factors are especially useful to initialize an iterative solver.

Warning:
if precision is greater that zero, the LDLT factorization is not guaranteed to succeed even if the matrix is positive definite.

Note that the exact meaning of this parameter might depends on the actual backend. Moreover, not all backends support this feature.

See also:
precision()

Definition at line 130 of file SparseExtra.

void Eigen::SparseLDLT< _MatrixType, DefaultBackend >::settags ( int  f) [inline, inherited]

Sets the flags.

Possible values are:

  • CompleteFactorization
  • IncompleteFactorization
  • MemoryEfficient (hint to use the memory most efficient method offered by the backend)
  • SupernodalMultifrontal (implies a complete factorization if supported by the backend, overloads the MemoryEfficient flags)
  • SupernodalLeftLooking (implies a complete factorization if supported by the backend, overloads the MemoryEfficient flags)
See also:
Flags

Definition at line 147 of file SparseExtra.

template<typename _MatrixType >
template<typename Rhs >
const internal::solve_retval<SparseLDLT<MatrixType, Cholmod>, Rhs> Eigen::SparseLDLT< _MatrixType, Cholmod >::solve ( const MatrixBase< Rhs > &  b) const [inline]

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 369 of file CholmodSupport.

template<typename _MatrixType >
template<typename Derived >
void Eigen::SparseLDLT< _MatrixType, Cholmod >::solveInPlace ( MatrixBase< Derived > &  b) const

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 496 of file CholmodSupport.

template<typename _MatrixType >
bool Eigen::SparseLDLT< _MatrixType, Cholmod >::succeeded ( void  ) const
Returns:
true if the factorization succeeded

Reimplemented from Eigen::SparseLDLT< _MatrixType >.

Definition at line 468 of file CholmodSupport.

VectorType Eigen::SparseLDLT< _MatrixType, DefaultBackend >::vectorD ( void  ) const [inline, inherited]
Returns:
the coefficients of the diagonal matrix D

Definition at line 164 of file SparseExtra.


Member Data Documentation

template<typename _MatrixType >
cholmod_common Eigen::SparseLDLT< _MatrixType, Cholmod >::m_cholmod [mutable, protected]

Definition at line 389 of file CholmodSupport.

template<typename _MatrixType >
cholmod_factor* Eigen::SparseLDLT< _MatrixType, Cholmod >::m_cholmodFactor [protected]

Definition at line 390 of file CholmodSupport.

VectorType Eigen::SparseLDLT< _MatrixType, DefaultBackend >::m_diag [protected, inherited]

Definition at line 187 of file SparseExtra.

int Eigen::SparseLDLT< _MatrixType, DefaultBackend >::m_flags [protected, inherited]

Definition at line 194 of file SparseExtra.

CholMatrixType Eigen::SparseLDLT< _MatrixType, DefaultBackend >::m_matrix [protected, inherited]

Definition at line 186 of file SparseExtra.

VectorXi Eigen::SparseLDLT< _MatrixType, DefaultBackend >::m_nonZerosPerCol [protected, inherited]

Definition at line 189 of file SparseExtra.

PermutationMatrix<Dynamic> Eigen::SparseLDLT< _MatrixType, DefaultBackend >::m_P [protected, inherited]

Definition at line 191 of file SparseExtra.

VectorXi Eigen::SparseLDLT< _MatrixType, DefaultBackend >::m_parent [protected, inherited]

Definition at line 188 of file SparseExtra.

PermutationMatrix<Dynamic> Eigen::SparseLDLT< _MatrixType, DefaultBackend >::m_Pinv [protected, inherited]

Definition at line 192 of file SparseExtra.

RealScalar Eigen::SparseLDLT< _MatrixType, DefaultBackend >::m_precision [protected, inherited]

Definition at line 193 of file SparseExtra.

int Eigen::SparseLDLT< _MatrixType, DefaultBackend >::m_status [mutable, protected, inherited]

Definition at line 195 of file SparseExtra.

bool Eigen::SparseLDLT< _MatrixType, DefaultBackend >::m_succeeded [protected, inherited]

Definition at line 196 of file SparseExtra.




Page generated by Doxygen 1.7.4 for MRPT 0.9.5 SVN:2717 at Sun Oct 16 16:08:03 PDT 2011 Hosted on:
SourceForge.net Logo