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

A direct sparse Cholesky factorizations. More...

#include <SimplicialCholesky.h>

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

List of all members.

Classes

struct  keep_diag

Public Types

enum  { UpLo = internal::traits<Derived>::UpLo }
typedef SparseMatrix< Scalar,
ColMajor, Index
CholMatrixType
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
template<typename Rhs , typename DestScalar , int DestOptions, typename DestIndex >
void _solve_sparse (const Rhs &b, SparseMatrix< DestScalar, DestOptions, DestIndex > &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.
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, Index
m_P
VectorXi m_parent
PermutationMatrix< Dynamic,
Dynamic, Index
m_Pinv
RealScalar m_shiftOffset
RealScalar m_shiftScale

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 76 of file SimplicialCholesky.h.


Member Typedef Documentation

template<typename Derived>
typedef SparseMatrix<Scalar,ColMajor,Index> Eigen::SimplicialCholeskyBase< Derived >::CholMatrixType
template<typename Derived>
typedef MatrixType::Index Eigen::SimplicialCholeskyBase< Derived >::Index
template<typename Derived>
typedef internal::traits<Derived>::MatrixType Eigen::SimplicialCholeskyBase< Derived >::MatrixType
template<typename Derived>
typedef MatrixType::RealScalar Eigen::SimplicialCholeskyBase< Derived >::RealScalar
template<typename Derived>
typedef MatrixType::Scalar Eigen::SimplicialCholeskyBase< Derived >::Scalar
template<typename Derived>
typedef Matrix<Scalar,Dynamic,1> Eigen::SimplicialCholeskyBase< Derived >::VectorType

Member Enumeration Documentation

template<typename Derived>
anonymous enum
Enumerator:
UpLo 

Definition at line 80 of file SimplicialCholesky.h.


Constructor & Destructor Documentation

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

Default constructor

Definition at line 90 of file SimplicialCholesky.h.

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

Definition at line 94 of file SimplicialCholesky.h.

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

Definition at line 100 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]

Reimplemented in Eigen::SimplicialCholesky< _MatrixType, _UpLo >.

Definition at line 192 of file SimplicialCholesky.h.

template<typename Derived>
template<typename Rhs , typename DestScalar , int DestOptions, typename DestIndex >
void Eigen::SimplicialCholeskyBase< Derived >::_solve_sparse ( const Rhs &  b,
SparseMatrix< DestScalar, DestOptions, DestIndex > &  dest 
) const [inline]

Definition at line 220 of file SimplicialCholesky.h.

template<typename Derived>
void Eigen::SimplicialCholeskyBase< Derived >::analyzePattern ( const MatrixType a,
bool  doLDLT 
) [inline, protected]

Definition at line 268 of file SimplicialCholesky.h.

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

Definition at line 697 of file SimplicialCholesky.h.

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

Definition at line 107 of file SimplicialCholesky.h.

template<typename Derived>
template<bool DoLDLT>
void Eigen::SimplicialCholeskyBase< Derived >::compute ( const MatrixType matrix) [inline, protected]

Computes the sparse Cholesky decomposition of matrix

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

Definition at line 245 of file SimplicialCholesky.h.

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

Definition at line 104 of file SimplicialCholesky.h.

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

Definition at line 105 of file SimplicialCholesky.h.

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

Definition at line 178 of file SimplicialCholesky.h.

template<typename Derived>
template<bool DoLDLT>
void Eigen::SimplicialCholeskyBase< Derived >::factorize ( const MatrixType a) [inline, protected]
template<typename Derived >
template<bool DoLDLT>
void Eigen::SimplicialCholeskyBase< Derived >::factorize_preordered ( const CholMatrixType a) [protected]

Definition at line 747 of file SimplicialCholesky.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 115 of file SimplicialCholesky.h.

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

Definition at line 672 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 151 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 156 of file SimplicialCholesky.h.

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

Definition at line 108 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 168 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 127 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 141 of file SimplicialCholesky.h.


Member Data Documentation

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

Definition at line 291 of file SimplicialCholesky.h.

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

Definition at line 294 of file SimplicialCholesky.h.

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

Definition at line 290 of file SimplicialCholesky.h.

template<typename Derived>
ComputationInfo Eigen::SimplicialCholeskyBase< Derived >::m_info [mutable, protected]

Definition at line 288 of file SimplicialCholesky.h.

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

Definition at line 289 of file SimplicialCholesky.h.

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

Definition at line 293 of file SimplicialCholesky.h.

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

Definition at line 296 of file SimplicialCholesky.h.

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

Definition at line 297 of file SimplicialCholesky.h.

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

Definition at line 295 of file SimplicialCholesky.h.

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

Definition at line 298 of file SimplicialCholesky.h.

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

Definition at line 300 of file SimplicialCholesky.h.

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

Definition at line 301 of file SimplicialCholesky.h.


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


win_eigen
Author(s): Daniel Stonier
autogenerated on Mon Oct 6 2014 12:27:19