Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Eigen::SimplicialCholeskyBase< Derived > Class Template Reference

A direct sparse Cholesky factorizations. More...

#include <SimplicialCholesky.h>

Inheritance diagram for Eigen::SimplicialCholeskyBase< Derived >:
Inheritance graph
[legend]

Classes

struct  keep_diag
 

Public Types

enum  { UpLo = internal::traits<Derived>::UpLo }
 
typedef SparseMatrix< Scalar, ColMajor, IndexCholMatrixType
 
typedef MatrixType::Index Index
 
typedef internal::traits< Derived >::MatrixType MatrixType
 
typedef MatrixType::RealScalar RealScalar
 
typedef MatrixType::Scalar Scalar
 
typedef Matrix< Scalar, Dynamic, 1 > VectorType
 

Public Member Functions

template<typename Rhs , typename Dest >
void _solve (const MatrixBase< Rhs > &b, MatrixBase< Dest > &dest) const
 
Index cols () const
 
Derived & derived ()
 
const Derived & derived () const
 
template<typename Stream >
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
 
Derived & setShift (const RealScalar &offset, const RealScalar &scale=1)
 
 SimplicialCholeskyBase ()
 
 SimplicialCholeskyBase (const MatrixType &matrix)
 
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
 
 ~SimplicialCholeskyBase ()
 

Protected Member Functions

void analyzePattern (const MatrixType &a, bool doLDLT)
 
void analyzePattern_preordered (const CholMatrixType &a, bool doLDLT)
 
template<bool DoLDLT>
void compute (const MatrixType &matrix)
 
template<bool DoLDLT>
void factorize (const MatrixType &a)
 
template<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
 
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
 

Additional Inherited Members

- Private Member Functions inherited from Eigen::internal::noncopyable
 noncopyable ()
 
 ~noncopyable ()
 

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.

Definition at line 36 of file SimplicialCholesky.h.

Member Typedef Documentation

template<typename Derived>
typedef SparseMatrix<Scalar,ColMajor,Index> Eigen::SimplicialCholeskyBase< Derived >::CholMatrixType

Definition at line 44 of file SimplicialCholesky.h.

template<typename Derived>
typedef MatrixType::Index Eigen::SimplicialCholeskyBase< Derived >::Index

Definition at line 43 of file SimplicialCholesky.h.

template<typename Derived>
typedef internal::traits<Derived>::MatrixType Eigen::SimplicialCholeskyBase< Derived >::MatrixType

Definition at line 39 of file SimplicialCholesky.h.

template<typename Derived>
typedef MatrixType::RealScalar Eigen::SimplicialCholeskyBase< Derived >::RealScalar

Definition at line 42 of file SimplicialCholesky.h.

template<typename Derived>
typedef MatrixType::Scalar Eigen::SimplicialCholeskyBase< Derived >::Scalar

Definition at line 41 of file SimplicialCholesky.h.

template<typename Derived>
typedef Matrix<Scalar,Dynamic,1> Eigen::SimplicialCholeskyBase< Derived >::VectorType

Definition at line 45 of file SimplicialCholesky.h.

Member Enumeration Documentation

template<typename Derived>
anonymous enum
Enumerator
UpLo 

Definition at line 40 of file SimplicialCholesky.h.

Constructor & Destructor Documentation

template<typename Derived>
Eigen::SimplicialCholeskyBase< Derived >::SimplicialCholeskyBase ( )
inline

Default constructor

Definition at line 50 of file SimplicialCholesky.h.

template<typename Derived>
Eigen::SimplicialCholeskyBase< Derived >::SimplicialCholeskyBase ( const MatrixType matrix)
inline

Definition at line 54 of file SimplicialCholesky.h.

template<typename Derived>
Eigen::SimplicialCholeskyBase< Derived >::~SimplicialCholeskyBase ( )
inline

Definition at line 60 of file SimplicialCholesky.h.

Member Function Documentation

template<typename Derived>
template<typename Rhs , typename Dest >
void Eigen::SimplicialCholeskyBase< Derived >::_solve ( const MatrixBase< Rhs > &  b,
MatrixBase< Dest > &  dest 
) const
inline

Definition at line 152 of file SimplicialCholesky.h.

template<typename Derived>
void Eigen::SimplicialCholeskyBase< Derived >::analyzePattern ( const MatrixType a,
bool  doLDLT 
)
inlineprotected

Definition at line 207 of file SimplicialCholesky.h.

template<typename Derived >
void Eigen::SimplicialCholeskyBase< Derived >::analyzePattern_preordered ( const CholMatrixType a,
bool  doLDLT 
)
protected

Definition at line 51 of file SimplicialCholesky_impl.h.

template<typename Derived>
Index Eigen::SimplicialCholeskyBase< Derived >::cols ( void  ) const
inline

Definition at line 67 of file SimplicialCholesky.h.

template<typename Derived>
template<bool DoLDLT>
void Eigen::SimplicialCholeskyBase< Derived >::compute ( const MatrixType matrix)
inlineprotected

Computes the sparse Cholesky decomposition of matrix

Definition at line 184 of file SimplicialCholesky.h.

template<typename Derived>
Derived& Eigen::SimplicialCholeskyBase< Derived >::derived ( )
inline

Definition at line 64 of file SimplicialCholesky.h.

template<typename Derived>
const Derived& Eigen::SimplicialCholeskyBase< Derived >::derived ( ) const
inline

Definition at line 65 of file SimplicialCholesky.h.

template<typename Derived>
template<typename Stream >
void Eigen::SimplicialCholeskyBase< Derived >::dumpMemory ( Stream &  s)
inline

Definition at line 138 of file SimplicialCholesky.h.

template<typename Derived>
template<bool DoLDLT>
void Eigen::SimplicialCholeskyBase< Derived >::factorize ( const MatrixType a)
inlineprotected

Definition at line 195 of file SimplicialCholesky.h.

template<typename Derived >
template<bool DoLDLT>
void Eigen::SimplicialCholeskyBase< Derived >::factorize_preordered ( const CholMatrixType a)
protected

Definition at line 101 of file SimplicialCholesky_impl.h.

template<typename Derived>
ComputationInfo Eigen::SimplicialCholeskyBase< Derived >::info ( ) const
inline

Reports whether previous computation was successful.

Returns
Success if computation was succesful, NumericalIssue if the matrix.appears to be negative.

Definition at line 75 of file SimplicialCholesky.h.

template<typename Derived >
void Eigen::SimplicialCholeskyBase< Derived >::ordering ( const MatrixType a,
CholMatrixType ap 
)
protected

Definition at line 611 of file SimplicialCholesky.h.

template<typename Derived>
const PermutationMatrix<Dynamic,Dynamic,Index>& Eigen::SimplicialCholeskyBase< Derived >::permutationP ( ) const
inline
Returns
the permutation P
See also
permutationPinv()

Definition at line 111 of file SimplicialCholesky.h.

template<typename Derived>
const PermutationMatrix<Dynamic,Dynamic,Index>& Eigen::SimplicialCholeskyBase< Derived >::permutationPinv ( ) const
inline
Returns
the inverse P^-1 of the permutation P
See also
permutationP()

Definition at line 116 of file SimplicialCholesky.h.

template<typename Derived>
Index Eigen::SimplicialCholeskyBase< Derived >::rows ( void  ) const
inline

Definition at line 68 of file SimplicialCholesky.h.

template<typename Derived>
Derived& Eigen::SimplicialCholeskyBase< 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.

Definition at line 128 of file SimplicialCholesky.h.

template<typename Derived>
template<typename Rhs >
const internal::solve_retval<SimplicialCholeskyBase, Rhs> Eigen::SimplicialCholeskyBase< Derived >::solve ( const MatrixBase< Rhs > &  b) const
inline
Returns
the solution x of $ A x = b $ using the current decomposition of A.
See also
compute()

Definition at line 87 of file SimplicialCholesky.h.

template<typename Derived>
template<typename Rhs >
const internal::sparse_solve_retval<SimplicialCholeskyBase, Rhs> Eigen::SimplicialCholeskyBase< Derived >::solve ( const SparseMatrixBase< Rhs > &  b) const
inline
Returns
the solution x of $ A x = b $ using the current decomposition of A.
See also
compute()

Definition at line 101 of file SimplicialCholesky.h.

Member Data Documentation

template<typename Derived>
bool Eigen::SimplicialCholeskyBase< Derived >::m_analysisIsOk
protected

Definition at line 230 of file SimplicialCholesky.h.

template<typename Derived>
VectorType Eigen::SimplicialCholeskyBase< Derived >::m_diag
protected

Definition at line 233 of file SimplicialCholesky.h.

template<typename Derived>
bool Eigen::SimplicialCholeskyBase< Derived >::m_factorizationIsOk
protected

Definition at line 229 of file SimplicialCholesky.h.

template<typename Derived>
ComputationInfo Eigen::SimplicialCholeskyBase< Derived >::m_info
mutableprotected

Definition at line 227 of file SimplicialCholesky.h.

template<typename Derived>
bool Eigen::SimplicialCholeskyBase< Derived >::m_isInitialized
protected

Definition at line 228 of file SimplicialCholesky.h.

template<typename Derived>
CholMatrixType Eigen::SimplicialCholeskyBase< Derived >::m_matrix
protected

Definition at line 232 of file SimplicialCholesky.h.

template<typename Derived>
VectorXi Eigen::SimplicialCholeskyBase< Derived >::m_nonZerosPerCol
protected

Definition at line 235 of file SimplicialCholesky.h.

template<typename Derived>
PermutationMatrix<Dynamic,Dynamic,Index> Eigen::SimplicialCholeskyBase< Derived >::m_P
protected

Definition at line 236 of file SimplicialCholesky.h.

template<typename Derived>
VectorXi Eigen::SimplicialCholeskyBase< Derived >::m_parent
protected

Definition at line 234 of file SimplicialCholesky.h.

template<typename Derived>
PermutationMatrix<Dynamic,Dynamic,Index> Eigen::SimplicialCholeskyBase< Derived >::m_Pinv
protected

Definition at line 237 of file SimplicialCholesky.h.

template<typename Derived>
RealScalar Eigen::SimplicialCholeskyBase< Derived >::m_shiftOffset
protected

Definition at line 239 of file SimplicialCholesky.h.

template<typename Derived>
RealScalar Eigen::SimplicialCholeskyBase< Derived >::m_shiftScale
protected

Definition at line 240 of file SimplicialCholesky.h.


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


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