HArD::Core2D
Hybrid Arbitrary Degree::Core 2D - Library to implement 2D schemes with edge and cell polynomials as unknowns
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
Eigen::PastixLLT< _MatrixType, _UpLo > Class Template Reference

Class to invoke the Pastix LLT solver. More...

#include <PastixInterface.hpp>

Inheritance diagram for Eigen::PastixLLT< _MatrixType, _UpLo >:
Inheritance graph
[legend]
Collaboration diagram for Eigen::PastixLLT< _MatrixType, _UpLo >:
Collaboration graph
[legend]

Public Types

enum  { UpLo = _UpLo }
 
typedef _MatrixType MatrixType
 
typedef PastixBase< PastixLLT< MatrixType, _UpLo > > Base
 
typedef Base::ColSpMatrix ColSpMatrix
 
- Public Types inherited from Eigen::PastixBase< PastixLLT< _MatrixType, _UpLo > >
enum  
 
typedef internal::pastix_traits< PastixLLT< _MatrixType, _UpLo > >::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

 PastixLLT ()
 
 PastixLLT (const MatrixType &matrix)
 
void compute (const MatrixType &matrix)
 
void analyzePattern (const MatrixType &matrix)
 
void factorize (const MatrixType &matrix)
 
- Public Member Functions inherited from Eigen::PastixBase< PastixLLT< _MatrixType, _UpLo > >
 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. More...
 
void init (double eps_refinement=-1.0, double eps_ctrl=-1.0)
 

Protected Member Functions

void init ()
 
void grabMatrix (const MatrixType &matrix, ColSpMatrix &out)
 
- Protected Member Functions inherited from Eigen::PastixBase< PastixLLT< _MatrixType, _UpLo > >
void analyzePattern (ColSpMatrix &mat)
 
void factorize (ColSpMatrix &mat)
 
void clean ()
 
void compute (ColSpMatrix &mat)
 

Protected Attributes

Array< int, IPARM_SIZE, 1 > m_iparm
 
- Protected Attributes inherited from Eigen::PastixBase< PastixLLT< _MatrixType, _UpLo > >
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< PastixLLT< _MatrixType, _UpLo > >
typedef SparseSolverBase< PastixLLT< _MatrixType, _UpLo > > Base
 

Detailed Description

template<typename _MatrixType, int _UpLo>
class Eigen::PastixLLT< _MatrixType, _UpLo >

Class to invoke the Pastix LLT 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 via a LL^T supernodal Cholesky factorization available in the PaStiX library. The matrix A should be symmetric and positive definite WARNING Selfadjoint complex matrices are not supported in the current version of PaStiX 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<>
UpLoThe part of the matrix to use : Lower or Upper. The default is Lower as required by PaStiX

Member Data Documentation

◆ m_iparm

template<typename _MatrixType , int _UpLo>
Array<int,IPARM_SIZE,1> Eigen::PastixBase< Derived >::m_iparm
mutableprotected

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