Seldon::IlutPreconditioning< real, cplx, Allocator > Class Template Reference

List of all members.

Public Types

enum  {
  ILUT, ILU_D, ILUT_K, ILU_0,
  MILU_0, ILU_K
}
 

Available types of incomplete factorization.


Public Member Functions

void Clear ()
int GetFactorisationType () const
int GetFillLevel () const
int GetAdditionalFillNumber () const
int GetPrintLevel () const
int GetPivotBlockInteger () const
void SetFactorisationType (int)
void SetFillLevel (int)
void SetAdditionalFillNumber (int)
void SetPrintLevel (int)
void SetPivotBlockInteger (int)
void SetSymmetricAlgorithm ()
void SetUnsymmetricAlgorithm ()
real GetDroppingThreshold () const
real GetDiagonalCoefficient () const
real GetPivotThreshold () const
void SetDroppingThreshold (real)
void SetDiagonalCoefficient (real)
void SetPivotThreshold (real)
template<class MatrixSparse >
void FactorizeSymMatrix (const IVect &perm, MatrixSparse &mat, bool keep_matrix=false)
template<class MatrixSparse >
void FactorizeUnsymMatrix (const IVect &perm, MatrixSparse &mat, bool keep_matrix=false)
template<class T0 , class Storage0 , class Allocator0 >
void FactorizeMatrix (const IVect &perm, Matrix< T0, General, Storage0, Allocator0 > &mat, bool keep_matrix=false)
template<class T0 , class Storage0 , class Allocator0 >
void FactorizeMatrix (const IVect &perm, Matrix< T0, Symmetric, Storage0, Allocator0 > &mat, bool keep_matrix=false)
template<class Matrix1 , class Vector1 >
void TransSolve (const Matrix1 &A, const Vector1 &r, Vector1 &z)
template<class Matrix1 , class Vector1 >
void Solve (const Matrix1 &A, const Vector1 &r, Vector1 &z)
template<class Vector1 >
void TransSolve (Vector1 &z)
template<class Vector1 >
void Solve (Vector1 &z)

Protected Attributes

int print_level
 Verbosity level.
bool symmetric_algorithm
 True if symmetric matrix is constructed.
int type_ilu
 Type of incomplete factorization.
int fill_level
 Maximum number of elements on a row of L or U. For Ilu(k), fill_level = k.
int additional_fill
 Additional number of elements for each row. This number is only used for ILUT(k).
int mbloc
 Size of block where the pivot is searched.
real alpha
 Diagonal compensation parameter (alpha = 0 -> ILU, alpha = 1 -> MILU).
real droptol
 Threshold used for dropping small terms.
real permtol
 Threshold for pivoting.
IVect permutation_row
 Permutation arrays.
IVect permutation_col
Matrix< cplx, Symmetric,
ArrayRowSymSparse, Allocator > 
mat_sym
 Symmetric matrix.
Matrix< cplx, General,
ArrayRowSparse, Allocator > 
mat_unsym
 Unsymmetric matrix.
Vector< cplx, VectFull, Allocator > xtmp
 Temporary vector.

Detailed Description

template<class real, class cplx, class Allocator = SELDON_DEFAULT_ALLOCATOR<cplx>>
class Seldon::IlutPreconditioning< real, cplx, Allocator >

Definition at line 27 of file IlutPreconditioning.hxx.


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