A sparse direct Cholesky (LLT) factorization and solver based on the PARDISO library. More...
#include <PardisoSupport.h>
Inheritance diagram for PardisoLLT< MatrixType, _UpLo >:Public Types | |
| enum | { ScalarIsComplex } |
| enum | { UpLo } |
| typedef Matrix< Index, MatrixType::RowsAtCompileTime, 1 > | IntColVectorType |
| typedef Matrix< Index, 1, MatrixType::ColsAtCompileTime > | IntRowVectorType |
| typedef Traits::MatrixType | MatrixType |
| typedef SparseMatrix< Scalar, RowMajor, Index > | SparseMatrixType |
| typedef Matrix< Scalar, Dynamic, 1 > | VectorType |
Public Member Functions | |
| template<typename BDerived , typename XDerived > | |
| bool | _solve (const MatrixBase< BDerived > &b, MatrixBase< XDerived > &x) const |
| template<typename Rhs , typename DestScalar , int DestOptions, typename DestIndex > | |
| void | _solve_sparse (const Rhs &b, SparseMatrix< DestScalar, DestOptions, DestIndex > &dest) 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. | |
| PardisoLLT () | |
| PardisoLLT (const MatrixType &matrix) | |
| Array< Index, 64, 1 > & | pardisoParameterArray () |
| 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 |
Protected Types | |
| typedef PardisoImpl < PardisoLLT< MatrixType, _UpLo > > | Base |
| typedef Base::Index | Index |
| typedef Base::RealScalar | RealScalar |
| typedef Base::Scalar | Scalar |
Protected Member Functions | |
| void | getMatrix (const MatrixType &matrix) |
| void | manageErrorCode (Index error) |
| void | pardisoInit (int type) |
| void | pardisoRelease () |
Protected Attributes | |
| bool | m_analysisIsOk |
| bool | m_factorizationIsOk |
| ComputationInfo | m_info |
| bool | m_initialized |
| Array< Index, 64, 1 > | m_iparm |
| SparseMatrixType | m_matrix |
| Index | m_msglvl |
| IntColVectorType | m_perm |
| void * | m_pt [64] |
| Index | m_size |
| Index | m_type |
A sparse direct Cholesky (LLT) factorization and solver based on the PARDISO library.
This class allows to solve for A.X = B sparse linear problems via a LL^T Cholesky factorization using the Intel MKL PARDISO library. The sparse matrix A must be selfajoint and positive definite. The vectors or matrices X and B can be either dense or sparse.
| MatrixType | the type of the sparse matrix A, it must be a SparseMatrix<> |
| UpLo | can be any bitwise combination of Upper, Lower. The default is Upper, meaning only the upper triangular part has to be used. Upper|Lower can be used to tell both triangular parts can be used as input. |
|
protected |
|
protected |
Reimplemented from PardisoImpl< Derived >.
|
inherited |
|
inherited |
|
inherited |
|
protected |
Reimplemented from PardisoImpl< Derived >.
|
protected |
Reimplemented from PardisoImpl< Derived >.
|
inherited |
|
inherited |
|
inline |
|
inline |
|
inherited |
|
inlineinherited |
|
inherited |
Performs a symbolic decomposition on the sparcity of matrix.
This function is particularly useful when solving for several problems having the same structure.
References eigen_assert.
|
inlineinherited |
|
inherited |
References eigen_assert.
Referenced by PardisoLDLT< MatrixType, Options >::PardisoLDLT(), and PardisoLLT< MatrixType, _UpLo >::PardisoLLT().
|
inlineinherited |
Referenced by PardisoImpl< PardisoLU< MatrixType > >::_solve_sparse().
|
inlineinherited |
|
inherited |
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.
References eigen_assert.
|
inlineprotected |
|
inlineinherited |
Reports whether previous computation was successful.
Success if computation was succesful, NumericalIssue if the matrix appears to be negative.
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
Referenced by PardisoImpl< PardisoLU< MatrixType > >::~PardisoImpl().
|
inlineinherited |
Referenced by PardisoImpl< PardisoLU< MatrixType > >::solve().
|
inlineinherited |
using the current decomposition of A.
|
inlineinherited |
using the current decomposition of A.
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
mutableprotectedinherited |
|
protectedinherited |
|
mutableprotectedinherited |
Referenced by PardisoImpl< PardisoLU< MatrixType > >::pardisoRelease().
|
mutableprotectedinherited |
Referenced by PardisoImpl< PardisoLU< MatrixType > >::pardisoRelease().
|
protectedinherited |
|
protectedinherited |
1.8.1.1