KASKADE 7 development version
Public Types | Public Member Functions | List of all members
PARDISOFactorization Class Reference

Factorization with DirectType::PARDISO. More...

#include <pardiso_solve.hh>

Detailed Description

Factorization with DirectType::PARDISO.

Important: can only be used with an appropriate license file! Set PARDISO_LIC_PATH to the directory where it is located.

Definition at line 25 of file fem/pardiso_solve.hh.

Public Types

enum  MatrixStructure { STRUCTURALLY_SYMMETRIC = 1 , SYMMETRIC_POSITIVE_DEFINITE = 2 , SYMMETRIC_INDEFINITE = -2 , NONSYMMETRIC = 11 }
 

Public Member Functions

 PARDISOFactorization (int n, int mtype_, std::vector< int > const &ridx, std::vector< int > const &cidx, std::vector< double > const &values)
 Version of constructor leaving input data in triplet format (aka coordinate format) unchanged. More...
 
 ~PARDISOFactorization ()
 
void solve (std::vector< double > const &b, std::vector< double > &x) const
 

Member Enumeration Documentation

◆ MatrixStructure

Matrix structures accepted by the solver. Note that for symmetric matrices (SYMMETRIC_POSITIVE_DEFINITE, SYMMETRIC_INDEFINITE) the upper triangular part has to be given.

Enumerator
STRUCTURALLY_SYMMETRIC 
SYMMETRIC_POSITIVE_DEFINITE 
SYMMETRIC_INDEFINITE 
NONSYMMETRIC 

Definition at line 34 of file fem/pardiso_solve.hh.

Constructor & Destructor Documentation

◆ PARDISOFactorization()

PARDISOFactorization::PARDISOFactorization ( int  n,
int  mtype_,
std::vector< int > const &  ridx,
std::vector< int > const &  cidx,
std::vector< double > const &  values 
)

Version of constructor leaving input data in triplet format (aka coordinate format) unchanged.

Construction is factorization!

Parameters
nsize of the (square) matrix, i.e. the number of rows
mtype_Matrix Type: several options available:
  • 1 real structurally symmetric
  • 2 real symmetric positive definite
  • -2 real symmetric indefinite
  • 11 real nonsymmetric
  • 3 complex structurally symmetric
  • 4 complex symmetric positive definite
  • -4 complex symmetric indefinite
  • 13 complex nonsymmetric
ridxrow indices
cidxcolumn indices
valuesentry values

◆ ~PARDISOFactorization()

PARDISOFactorization::~PARDISOFactorization ( )

Member Function Documentation

◆ solve()

void PARDISOFactorization::solve ( std::vector< double > const &  b,
std::vector< double > &  x 
) const

Solves the system for the given right hand side

  • b.
  • x is resized to the number of matrix columns.

Referenced by Kaskade::HigherOrderRecovery< Grid, Space >::getErrorFunction().


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