Public Types | Public Member Functions | Protected Types | Private Member Functions | Friends | List of all members
Eigen::PardisoLDLT< MatrixType, Options > Class Template Reference

A sparse direct Cholesky (LDLT) factorization and solver based on the PARDISO library. More...

#include <PardisoSupport.h>

Inheritance diagram for Eigen::PardisoLDLT< MatrixType, Options >:
Inheritance graph
[legend]

Public Types

enum  { UpLo = Options&(Upper|Lower) }
 
- Public Types inherited from Eigen::PardisoImpl< Derived >
enum  { ScalarIsComplex = NumTraits<Scalar>::IsComplex }
 
typedef Traits::Index Index
 
typedef Matrix< Index, MatrixType::RowsAtCompileTime, 1 > IntColVectorType
 
typedef Matrix< Index, 1, MatrixType::ColsAtCompileTime > IntRowVectorType
 
typedef Traits::MatrixType MatrixType
 
typedef Array< Index, 64, 1, DontAlignParameterType
 
typedef Traits::RealScalar RealScalar
 
typedef Traits::Scalar Scalar
 
typedef SparseMatrix< Scalar, RowMajor, IndexSparseMatrixType
 
typedef Matrix< Scalar, Dynamic, 1 > VectorType
 

Public Member Functions

void getMatrix (const MatrixType &matrix)
 
 PardisoLDLT ()
 
 PardisoLDLT (const MatrixType &matrix)
 
- Public Member Functions inherited from Eigen::PardisoImpl< Derived >
template<typename BDerived , typename XDerived >
bool _solve (const MatrixBase< BDerived > &b, MatrixBase< XDerived > &x) const
 
Derived & analyzePattern (const MatrixType &matrix)
 
Index cols () const
 
Derived & compute (const MatrixType &matrix)
 
Derived & derived ()
 
const Derived & derived () const
 
Derived & factorize (const MatrixType &matrix)
 
ComputationInfo info () const
 Reports whether previous computation was successful. More...
 
 PardisoImpl ()
 
ParameterTypepardisoParameterArray ()
 
Index rows () const
 
template<typename Rhs >
const internal::solve_retval< PardisoImpl, Rhs > solve (const MatrixBase< Rhs > &b) const
 
template<typename Rhs >
const internal::sparse_solve_retval< PardisoImpl, Rhs > solve (const SparseMatrixBase< Rhs > &b) const
 
 ~PardisoImpl ()
 

Protected Types

typedef PardisoImpl< PardisoLDLT< MatrixType, Options > > Base
 
typedef Base::Index Index
 
typedef Base::RealScalar RealScalar
 
typedef Base::Scalar Scalar
 

Private Member Functions

 PardisoLDLT (PardisoLDLT &)
 

Friends

class PardisoImpl< PardisoLDLT< MatrixType, Options > >
 

Additional Inherited Members

- Protected Member Functions inherited from Eigen::PardisoImpl< Derived >
void manageErrorCode (Index error)
 
void pardisoInit (int type)
 
void pardisoRelease ()
 
- Protected Attributes inherited from Eigen::PardisoImpl< Derived >
bool m_analysisIsOk
 
bool m_factorizationIsOk
 
ComputationInfo m_info
 
bool m_initialized
 
ParameterType m_iparm
 
SparseMatrixType m_matrix
 
Index m_msglvl
 
IntColVectorType m_perm
 
void * m_pt [64]
 
Index m_size
 
Index m_type
 

Detailed Description

template<typename MatrixType, int Options>
class Eigen::PardisoLDLT< MatrixType, Options >

A sparse direct Cholesky (LDLT) factorization and solver based on the PARDISO library.

This class allows to solve for A.X = B sparse linear problems via a LDL^T Cholesky factorization using the Intel MKL PARDISO library. The sparse matrix A is assumed to be selfajoint and positive definite. For complex matrices, A can also be symmetric only, see the Options template parameter. The vectors or matrices X and B can be either dense or sparse.

Template Parameters
MatrixTypethe type of the sparse matrix A, it must be a SparseMatrix<>
Optionscan be any bitwise combination of Upper, Lower, and Symmetric. The default is Upper, meaning only the upper triangular part has to be used. Symmetric can be used for symmetric, non-selfadjoint complex matrices, the default being to assume a selfadjoint matrix. Upper|Lower can be used to tell both triangular parts can be used as input.
See also
TutorialSparseDirectSolvers

Definition at line 39 of file PardisoSupport.h.

Member Typedef Documentation

template<typename MatrixType , int Options>
typedef PardisoImpl< PardisoLDLT<MatrixType,Options> > Eigen::PardisoLDLT< MatrixType, Options >::Base
protected

Definition at line 521 of file PardisoSupport.h.

template<typename MatrixType , int Options>
typedef Base::Index Eigen::PardisoLDLT< MatrixType, Options >::Index
protected

Definition at line 523 of file PardisoSupport.h.

template<typename MatrixType , int Options>
typedef Base::RealScalar Eigen::PardisoLDLT< MatrixType, Options >::RealScalar
protected

Definition at line 524 of file PardisoSupport.h.

template<typename MatrixType , int Options>
typedef Base::Scalar Eigen::PardisoLDLT< MatrixType, Options >::Scalar
protected

Definition at line 522 of file PardisoSupport.h.

Member Enumeration Documentation

template<typename MatrixType , int Options>
anonymous enum
Enumerator
UpLo 

Definition at line 533 of file PardisoSupport.h.

Constructor & Destructor Documentation

template<typename MatrixType , int Options>
Eigen::PardisoLDLT< MatrixType, Options >::PardisoLDLT ( )
inline

Definition at line 535 of file PardisoSupport.h.

template<typename MatrixType , int Options>
Eigen::PardisoLDLT< MatrixType, Options >::PardisoLDLT ( const MatrixType matrix)
inline

Definition at line 541 of file PardisoSupport.h.

template<typename MatrixType , int Options>
Eigen::PardisoLDLT< MatrixType, Options >::PardisoLDLT ( PardisoLDLT< MatrixType, Options > &  )
inlineprivate

Definition at line 557 of file PardisoSupport.h.

Member Function Documentation

template<typename MatrixType , int Options>
void Eigen::PardisoLDLT< MatrixType, Options >::getMatrix ( const MatrixType matrix)
inline

Definition at line 548 of file PardisoSupport.h.

Friends And Related Function Documentation

template<typename MatrixType , int Options>
friend class PardisoImpl< PardisoLDLT< MatrixType, Options > >
friend

Definition at line 527 of file PardisoSupport.h.


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


tuw_aruco
Author(s): Lukas Pfeifhofer
autogenerated on Mon Jun 10 2019 15:41:08