|
HArD::Core2D
Hybrid Arbitrary Degree::Core 2D - Library to implement 2D schemes with edge and cell polynomials as unknowns
|
Class to invoke the Pastix LU solver. More...
#include <PastixInterface.hpp>


Public Types | |
| typedef _MatrixType | MatrixType |
| typedef PastixBase< PastixLU< MatrixType > > | Base |
| typedef Base::ColSpMatrix | ColSpMatrix |
| typedef MatrixType::StorageIndex | StorageIndex |
Public Types inherited from Eigen::PastixBase< PastixLU< _MatrixType > > | |
| enum | |
| typedef internal::pastix_traits< PastixLU< _MatrixType > >::MatrixType | _MatrixType |
| typedef _MatrixType | MatrixType |
| typedef MatrixType::Scalar | Scalar |
| typedef MatrixType::RealScalar | RealScalar |
| typedef MatrixType::StorageIndex | StorageIndex |
| typedef Matrix< Scalar, Dynamic, 1 > | Vector |
| typedef SparseMatrix< Scalar, ColMajor > | ColSpMatrix |
Public Member Functions | |
| PastixLU () | |
| PastixLU (const MatrixType &matrix) | |
| void | compute (const MatrixType &matrix) |
| void | analyzePattern (const MatrixType &matrix) |
| void | factorize (const MatrixType &matrix) |
| void | init (double eps_refinement=-1.0, double eps_ctrl=-1.0) |
Public Member Functions inherited from Eigen::PastixBase< PastixLU< _MatrixType > > | |
| PastixBase () | |
| ~PastixBase () | |
| bool | _solve_impl (const MatrixBase< Rhs > &b, MatrixBase< Dest > &x) const |
| Array< StorageIndex, IPARM_SIZE, 1 > & | iparm () |
| int & | iparm (int idxparam) |
| Array< double, DPARM_SIZE, 1 > & | dparm () |
| double & | dparm (int idxparam) |
| Index | cols () const |
| Index | rows () const |
| ComputationInfo | info () const |
| Reports whether previous computation was successful. | |
| void | init (double eps_refinement=-1.0, double eps_ctrl=-1.0) |
Protected Member Functions | |
| void | grabMatrix (const MatrixType &matrix, ColSpMatrix &out) |
Protected Member Functions inherited from Eigen::PastixBase< PastixLU< _MatrixType > > | |
| void | analyzePattern (ColSpMatrix &mat) |
| void | factorize (ColSpMatrix &mat) |
| void | clean () |
| void | compute (ColSpMatrix &mat) |
Protected Attributes | |
| ColSpMatrix | m_transposedStructure |
| bool | m_structureIsUptodate |
| Array< int, IPARM_SIZE, 1 > | m_iparm |
| Array< double, DPARM_SIZE, 1 > | m_dparm |
Protected Attributes inherited from Eigen::PastixBase< PastixLU< _MatrixType > > | |
| int | m_initisOk |
| int | m_analysisIsOk |
| int | m_factorizationIsOk |
| ComputationInfo | m_info |
| pastix_data_t * | m_pastixdata |
| int | m_comm |
| Array< int, IPARM_SIZE, 1 > | m_iparm |
| Array< double, DPARM_SIZE, 1 > | m_dparm |
| Matrix< StorageIndex, Dynamic, 1 > | m_perm |
| Matrix< StorageIndex, Dynamic, 1 > | m_invp |
| int | m_size |
Additional Inherited Members | |
Protected Types inherited from Eigen::PastixBase< PastixLU< _MatrixType > > | |
| typedef SparseSolverBase< PastixLU< _MatrixType > > | Base |
Class to invoke the Pastix LU solver.
After the class is instantianted, use iparm(IPARM_VERBOSE)=PastixVerboseNo or PastixVerboseYes to get more verbose output from pastix
This class is used to solve the linear systems A.X = B with a supernodal LU factorization in the PaStiX library. The matrix A should be squared and nonsingular PaStiX requires that the matrix A has a symmetric structural pattern. This interface can symmetrize the input matrix otherwise. 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<> |
| IsStrSym | Indicates if the input matrix has a symmetric pattern, default is false NOTE : Note that if the analysis and factorization phase are called separately, the input matrix will be symmetrized at each call, hence it is advised to symmetrize the matrix in a end-user program and set IsStrSym to true |
|
mutableprotected |
|
mutableprotected |