compbio
|
A sparse direct LU factorization and solver based on the PARDISO library. More...
#include <PardisoSupport.h>
Public Member Functions | |
PardisoLU (const MatrixType &matrix) | |
![]() | |
Index | cols () const |
Index | rows () const |
ComputationInfo | info () const |
Reports whether previous computation was successful. More... | |
ParameterType & | pardisoParameterArray () |
PardisoLU< MatrixType > & | analyzePattern (const MatrixType &matrix) |
Performs a symbolic decomposition on the sparcity of matrix. More... | |
PardisoLU< MatrixType > & | factorize (const MatrixType &matrix) |
Performs a numeric decomposition of matrix. More... | |
PardisoLU< MatrixType > & | compute (const MatrixType &matrix) |
void | _solve_impl (const MatrixBase< Rhs > &b, MatrixBase< Dest > &dest) const |
void | _solve_impl (const MatrixBase< BDerived > &b, MatrixBase< XDerived > &x) const |
![]() | |
SparseSolverBase () | |
Default constructor. | |
PardisoLU< MatrixType > & | derived () |
const PardisoLU< MatrixType > & | derived () const |
const Solve< PardisoLU< MatrixType >, Rhs > | solve (const MatrixBase< Rhs > &b) const |
const Solve< PardisoLU< MatrixType >, Rhs > | solve (const SparseMatrixBase< Rhs > &b) const |
void | _solve_impl (const SparseMatrixBase< Rhs > &b, SparseMatrixBase< Dest > &dest) const |
Protected Types | |
typedef PardisoImpl< PardisoLU > | Base |
typedef Base::Scalar | Scalar |
typedef Base::RealScalar | RealScalar |
![]() | |
typedef SparseSolverBase< PardisoLU< MatrixType > > | Base |
typedef internal::pardiso_traits< PardisoLU< MatrixType > > | Traits |
Protected Member Functions | |
void | getMatrix (const MatrixType &matrix) |
![]() | |
void | pardisoRelease () |
void | pardisoInit (int type) |
void | manageErrorCode (Index error) const |
Friends | |
class | PardisoImpl< PardisoLU< MatrixType > > |
Additional Inherited Members | |
![]() | |
enum | |
typedef Traits::MatrixType | MatrixType |
typedef Traits::Scalar | Scalar |
typedef Traits::RealScalar | RealScalar |
typedef Traits::StorageIndex | StorageIndex |
typedef SparseMatrix< Scalar, RowMajor, StorageIndex > | SparseMatrixType |
typedef Matrix< Scalar, Dynamic, 1 > | VectorType |
typedef Matrix< StorageIndex, 1, MatrixType::ColsAtCompileTime > | IntRowVectorType |
typedef Matrix< StorageIndex, MatrixType::RowsAtCompileTime, 1 > | IntColVectorType |
typedef Array< StorageIndex, 64, 1, DontAlign > | ParameterType |
![]() | |
SparseMatrixType | m_matrix |
ComputationInfo | m_info |
bool | m_analysisIsOk |
bool | m_factorizationIsOk |
StorageIndex | m_type |
StorageIndex | m_msglvl |
void * | m_pt [64] |
ParameterType | m_iparm |
IntColVectorType | m_perm |
Index | m_size |
![]() | |
bool | m_isInitialized |
A sparse direct LU factorization and solver based on the PARDISO library.
This class allows to solve for A.X = B sparse linear problems via a direct LU factorization using the Intel MKL PARDISO library. The sparse matrix A must be squared and invertible. The vectors or matrices X and B can be either dense or sparse.
By default, it runs in in-core mode. To enable PARDISO's out-of-core feature, set:
_MatrixType | the type of the sparse matrix A, it must be a SparseMatrix<> |