#include <PaStiXSupport.h>
Public Types | |
typedef internal::pastix_traits < Derived >::MatrixType | _MatrixType |
typedef MatrixType::Index | Index |
typedef _MatrixType | MatrixType |
typedef MatrixType::RealScalar | RealScalar |
typedef MatrixType::Scalar | Scalar |
typedef Matrix< Scalar, Dynamic, 1 > | Vector |
Public Member Functions | |
template<typename Rhs , typename Dest > | |
bool | _solve (const MatrixBase< Rhs > &b, MatrixBase< Dest > &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 (MatrixType &mat) |
Index | cols () const |
Derived & | derived () |
const Derived & | derived () const |
Array< RealScalar, IPARM_SIZE, 1 > & | dparm () |
double & | dparm (int idxparam) |
Derived & | factorize (MatrixType &mat) |
ComputationInfo | info () const |
Reports whether previous computation was successful. | |
Array< Index, IPARM_SIZE, 1 > & | iparm () |
int & | iparm (int idxparam) |
PastixBase () | |
void | PastixInit () |
Index | rows () const |
template<typename Rhs > | |
const internal::solve_retval < PastixBase, Rhs > | solve (const MatrixBase< Rhs > &b) const |
template<typename Rhs > | |
const internal::sparse_solve_retval < PastixBase, Rhs > | solve (const SparseMatrixBase< Rhs > &b) const |
~PastixBase () | |
Protected Member Functions | |
Derived & | compute (MatrixType &mat) |
void | PastixDestroy () |
Protected Attributes | |
int | m_amalgamation |
int | m_analysisIsOk |
int | m_comm |
Matrix< double, DPARM_SIZE, 1 > | m_dparm |
int | m_factorizationIsOk |
bool | m_hasTranspose |
ComputationInfo | m_info |
int | m_initisOk |
Matrix< Index, Dynamic, 1 > | m_invp |
Matrix< Index, IPARM_SIZE, 1 > | m_iparm |
bool | m_isInitialized |
SparseMatrix< Scalar, ColMajor > | m_mat_null |
int | m_ordering |
pastix_data_t * | m_pastixdata |
Matrix< Index, Dynamic, 1 > | m_perm |
int | m_size |
SparseMatrix< Scalar, ColMajor > | m_StrMatTrans |
Matrix< Scalar, Dynamic, 1 > | m_vec_null |
typedef internal::pastix_traits<Derived>::MatrixType _MatrixType |
typedef MatrixType::Index Index |
Reimplemented in PastixLDLT< _MatrixType, _UpLo >, and PastixLLT< _MatrixType, _UpLo >.
typedef _MatrixType MatrixType |
Reimplemented in PastixLDLT< _MatrixType, _UpLo >, PastixLLT< _MatrixType, _UpLo >, and PastixLU< _MatrixType, IsStrSym >.
typedef MatrixType::RealScalar RealScalar |
typedef MatrixType::Scalar Scalar |
Reimplemented in PastixLDLT< _MatrixType, _UpLo >, PastixLLT< _MatrixType, _UpLo >, and PastixLU< _MatrixType, IsStrSym >.
PastixBase | ( | ) | [inline] |
~PastixBase | ( | ) | [inline] |
bool _solve | ( | const MatrixBase< Rhs > & | b, |
MatrixBase< Dest > & | x | ||
) | const |
void _solve_sparse | ( | const Rhs & | b, |
SparseMatrix< DestScalar, DestOptions, DestIndex > & | dest | ||
) | const [inline] |
Derived & analyzePattern | ( | MatrixType & | mat | ) |
References Eigen::internal::eigen_pastix(), Eigen::internal::EigenToFortranNumbering(), Eigen::NumericalIssue, and Eigen::Success.
Referenced by PastixLU< _MatrixType, IsStrSym >::analyzePattern(), PastixLLT< _MatrixType, _UpLo >::analyzePattern(), and PastixLDLT< _MatrixType, _UpLo >::analyzePattern().
Derived & compute | ( | MatrixType & | mat | ) | [protected] |
Derived& derived | ( | ) | [inline] |
Referenced by PastixBase< PastixLU< _MatrixType > >::_solve_sparse().
const Derived& derived | ( | ) | const [inline] |
Array<RealScalar,IPARM_SIZE,1>& dparm | ( | ) | [inline] |
Returns a reference to the double vector DPARM of PaStiX parameters The statistics related to the different phases of factorization and solve are saved here as well
Return a reference to a particular index parameter of the DPARM vector
Derived & factorize | ( | MatrixType & | mat | ) |
ComputationInfo info | ( | ) | const [inline] |
Reports whether previous computation was successful.
Success
if computation was succesful, NumericalIssue
if the PaStiX reports a problem InvalidInput
if the input matrix is invalidReturns a reference to the integer vector IPARM of PaStiX parameters to modify the default parameters. The statistics related to the different phases of factorization and solve are saved here as well
Return a reference to a particular index parameter of the IPARM vector
void PastixDestroy | ( | ) | [inline, protected] |
Referenced by PastixBase< PastixLU< _MatrixType > >::~PastixBase().
void PastixInit | ( | ) |
Initialize the PaStiX data structure. A first call to this function fills iparm and dparm with the default PaStiX parameters
References Eigen::internal::eigen_pastix(), Eigen::InvalidInput, and Eigen::Success.
Referenced by PastixLU< _MatrixType, IsStrSym >::analyzePattern(), PastixLLT< _MatrixType, _UpLo >::analyzePattern(), PastixLDLT< _MatrixType, _UpLo >::analyzePattern(), PastixLU< _MatrixType, IsStrSym >::compute(), PastixLLT< _MatrixType, _UpLo >::compute(), PastixLDLT< _MatrixType, _UpLo >::compute(), and PastixBase< PastixLU< _MatrixType > >::PastixBase().
const internal::solve_retval<PastixBase, Rhs> solve | ( | const MatrixBase< Rhs > & | b | ) | const [inline] |
const internal::sparse_solve_retval<PastixBase, Rhs> solve | ( | const SparseMatrixBase< Rhs > & | b | ) | const [inline] |
int m_amalgamation [mutable, protected] |
int m_analysisIsOk [protected] |
int m_factorizationIsOk [protected] |
Referenced by PastixBase< PastixLU< _MatrixType > >::_solve_sparse().
bool m_hasTranspose [mutable, protected] |
Referenced by PastixBase< PastixLU< _MatrixType > >::PastixBase().
ComputationInfo m_info [mutable, protected] |
Referenced by PastixBase< PastixLU< _MatrixType > >::info().
int m_initisOk [protected] |
Referenced by PastixBase< PastixLU< _MatrixType > >::PastixDestroy().
Referenced by PastixBase< PastixLU< _MatrixType > >::PastixDestroy().
bool m_isInitialized [protected] |
SparseMatrix<Scalar, ColMajor> m_mat_null [mutable, protected] |
Referenced by PastixBase< PastixLU< _MatrixType > >::PastixDestroy().
int m_ordering [mutable, protected] |
pastix_data_t* m_pastixdata [mutable, protected] |
Referenced by PastixBase< PastixLU< _MatrixType > >::PastixDestroy().
SparseMatrix<Scalar, ColMajor> m_StrMatTrans [mutable, protected] |
Matrix<Scalar, Dynamic,1> m_vec_null [mutable, protected] |
Referenced by PastixBase< PastixLU< _MatrixType > >::PastixDestroy().