Public Types | Public Member Functions | List of all members
Eigen::SimplicialLDLT< _MatrixType, _UpLo > Class Template Reference

A direct sparse LDLT Cholesky factorizations without square root. More...

#include <SimplicialCholesky.h>

Inheritance diagram for Eigen::SimplicialLDLT< _MatrixType, _UpLo >:
Inheritance graph
[legend]

Public Types

enum  { UpLo = _UpLo }
 
typedef SimplicialCholeskyBase< SimplicialLDLTBase
 
typedef SparseMatrix< Scalar, ColMajor, IndexCholMatrixType
 
typedef MatrixType::Index Index
 
typedef Traits::MatrixL MatrixL
 
typedef _MatrixType MatrixType
 
typedef Traits::MatrixU MatrixU
 
typedef MatrixType::RealScalar RealScalar
 
typedef MatrixType::Scalar Scalar
 
typedef internal::traits< SimplicialLDLTTraits
 
typedef Matrix< Scalar, Dynamic, 1 > VectorType
 
- Public Types inherited from Eigen::SimplicialCholeskyBase< SimplicialLDLT< _MatrixType, _UpLo > >
enum  
 
typedef SparseMatrix< Scalar, ColMajor, IndexCholMatrixType
 
typedef MatrixType::Index Index
 
typedef internal::traits< SimplicialLDLT< _MatrixType, _UpLo > >::MatrixType MatrixType
 
typedef MatrixType::RealScalar RealScalar
 
typedef MatrixType::Scalar Scalar
 
typedef Matrix< Scalar, Dynamic, 1 > VectorType
 

Public Member Functions

void analyzePattern (const MatrixType &a)
 
SimplicialLDLTcompute (const MatrixType &matrix)
 
Scalar determinant () const
 
void factorize (const MatrixType &a)
 
const MatrixL matrixL () const
 
const MatrixU matrixU () const
 
 SimplicialLDLT ()
 
 SimplicialLDLT (const MatrixType &matrix)
 
const VectorType vectorD () const
 
- Public Member Functions inherited from Eigen::SimplicialCholeskyBase< SimplicialLDLT< _MatrixType, _UpLo > >
void _solve (const MatrixBase< Rhs > &b, MatrixBase< Dest > &dest) const
 
Index cols () const
 
SimplicialLDLT< _MatrixType, _UpLo > & derived ()
 
const SimplicialLDLT< _MatrixType, _UpLo > & derived () const
 
void dumpMemory (Stream &s)
 
ComputationInfo info () const
 Reports whether previous computation was successful. More...
 
const PermutationMatrix< Dynamic, Dynamic, Index > & permutationP () const
 
const PermutationMatrix< Dynamic, Dynamic, Index > & permutationPinv () const
 
Index rows () const
 
SimplicialLDLT< _MatrixType, _UpLo > & setShift (const RealScalar &offset, const RealScalar &scale=1)
 
 SimplicialCholeskyBase ()
 
 SimplicialCholeskyBase (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
 
 ~SimplicialCholeskyBase ()
 

Additional Inherited Members

- Protected Member Functions inherited from Eigen::SimplicialCholeskyBase< SimplicialLDLT< _MatrixType, _UpLo > >
void analyzePattern (const MatrixType &a, bool doLDLT)
 
void analyzePattern_preordered (const CholMatrixType &a, bool doLDLT)
 
void compute (const MatrixType &matrix)
 
void factorize (const MatrixType &a)
 
void factorize_preordered (const CholMatrixType &a)
 
void ordering (const MatrixType &a, CholMatrixType &ap)
 
- Protected Attributes inherited from Eigen::SimplicialCholeskyBase< SimplicialLDLT< _MatrixType, _UpLo > >
bool m_analysisIsOk
 
VectorType m_diag
 
bool m_factorizationIsOk
 
ComputationInfo m_info
 
bool m_isInitialized
 
CholMatrixType m_matrix
 
VectorXi m_nonZerosPerCol
 
PermutationMatrix< Dynamic, Dynamic, Indexm_P
 
VectorXi m_parent
 
PermutationMatrix< Dynamic, Dynamic, Indexm_Pinv
 
RealScalar m_shiftOffset
 
RealScalar m_shiftScale
 

Detailed Description

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

A direct sparse LDLT Cholesky factorizations without square root.

This class provides a LDL^T Cholesky factorizations without square root 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.
See also
class SimplicialLLT

Definition at line 244 of file SimplicialCholesky.h.

Member Typedef Documentation

template<typename _MatrixType , int _UpLo>
typedef SimplicialCholeskyBase<SimplicialLDLT> Eigen::SimplicialLDLT< _MatrixType, _UpLo >::Base

Definition at line 394 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
typedef SparseMatrix<Scalar,ColMajor,Index> Eigen::SimplicialLDLT< _MatrixType, _UpLo >::CholMatrixType

Definition at line 398 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
typedef MatrixType::Index Eigen::SimplicialLDLT< _MatrixType, _UpLo >::Index

Definition at line 397 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
typedef Traits::MatrixL Eigen::SimplicialLDLT< _MatrixType, _UpLo >::MatrixL

Definition at line 401 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
typedef _MatrixType Eigen::SimplicialLDLT< _MatrixType, _UpLo >::MatrixType

Definition at line 392 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
typedef Traits::MatrixU Eigen::SimplicialLDLT< _MatrixType, _UpLo >::MatrixU

Definition at line 402 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
typedef MatrixType::RealScalar Eigen::SimplicialLDLT< _MatrixType, _UpLo >::RealScalar

Definition at line 396 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
typedef MatrixType::Scalar Eigen::SimplicialLDLT< _MatrixType, _UpLo >::Scalar

Definition at line 395 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
typedef internal::traits<SimplicialLDLT> Eigen::SimplicialLDLT< _MatrixType, _UpLo >::Traits

Definition at line 400 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
typedef Matrix<Scalar,Dynamic,1> Eigen::SimplicialLDLT< _MatrixType, _UpLo >::VectorType

Definition at line 399 of file SimplicialCholesky.h.

Member Enumeration Documentation

template<typename _MatrixType , int _UpLo>
anonymous enum
Enumerator
UpLo 

Definition at line 393 of file SimplicialCholesky.h.

Constructor & Destructor Documentation

template<typename _MatrixType , int _UpLo>
Eigen::SimplicialLDLT< _MatrixType, _UpLo >::SimplicialLDLT ( )
inline

Default constructor

Definition at line 405 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
Eigen::SimplicialLDLT< _MatrixType, _UpLo >::SimplicialLDLT ( const MatrixType matrix)
inline

Constructs and performs the LLT factorization of matrix

Definition at line 408 of file SimplicialCholesky.h.

Member Function Documentation

template<typename _MatrixType , int _UpLo>
void Eigen::SimplicialLDLT< _MatrixType, _UpLo >::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()

Definition at line 441 of file SimplicialCholesky.h.

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

Computes the sparse Cholesky decomposition of matrix

Definition at line 429 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
Scalar Eigen::SimplicialLDLT< _MatrixType, _UpLo >::determinant ( ) const
inline
Returns
the determinant of the underlying matrix from the current factorization

Definition at line 458 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
void Eigen::SimplicialLDLT< _MatrixType, _UpLo >::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()

Definition at line 452 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
const MatrixL Eigen::SimplicialLDLT< _MatrixType, _UpLo >::matrixL ( ) const
inline
Returns
an expression of the factor L

Definition at line 417 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
const MatrixU Eigen::SimplicialLDLT< _MatrixType, _UpLo >::matrixU ( ) const
inline
Returns
an expression of the factor U (= L^*)

Definition at line 423 of file SimplicialCholesky.h.

template<typename _MatrixType , int _UpLo>
const VectorType Eigen::SimplicialLDLT< _MatrixType, _UpLo >::vectorD ( ) const
inline
Returns
a vector expression of the diagonal D

Definition at line 412 of file SimplicialCholesky.h.


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


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Mon Jun 10 2019 12:35:39