Public Types | |
enum | { ILUT, ILU_D, ILUT_K, ILU_0, MILU_0, ILU_K } |
Available types of incomplete factorization. | |
Public Member Functions | |
void | Clear () |
bool | UseInteger8 () const |
void | HideMessages () |
void | ShowMessages () |
int | GetFactorisationType () const |
int | GetFillLevel () const |
int | GetAdditionalFillNumber () const |
int | GetPrintLevel () const |
int | GetPivotBlockInteger () const |
size_t | GetMemorySize () const |
int | GetInfoFactorization () const |
void | SetFactorisationType (int) |
void | SetFillLevel (int) |
void | SetAdditionalFillNumber (int) |
void | SetPrintLevel (int) |
void | SetPivotBlockInteger (int) |
void | SetSymmetricAlgorithm () |
void | SetUnsymmetricAlgorithm () |
ClassComplexType< T >::Treal | GetDroppingThreshold () const |
ClassComplexType< T >::Treal | GetDiagonalCoefficient () const |
ClassComplexType< T >::Treal | GetPivotThreshold () const |
void | SetDroppingThreshold (typename ClassComplexType< T >::Treal) |
void | SetDiagonalCoefficient (typename ClassComplexType< T >::Treal) |
void | SetPivotThreshold (double) |
Sets the threshold for pivot. | |
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) |
Applies transpose of ilut preconditioning. | |
template<class Matrix1 , class Vector1 > | |
void | Solve (const Matrix1 &A, const Vector1 &r, Vector1 &z) |
Applies ilut preconditioning. | |
template<class Vector1 > | |
void | TransSolve (Vector1 &z) |
template<class Vector1 > | |
void | Solve (Vector1 &z) |
template<class Vector1 > | |
void | Solve (const SeldonTranspose &, Vector1 &z) |
void | Solve (const SeldonTranspose &, T *x_ptr, int nrhs) |
template<class cplx , class Allocator > | |
void | Solve (const SeldonTranspose &TransA, cplx *x_ptr, int nrhs) |
virtual void | RefineSolution () |
Tells to the direct solver that refinement is required. | |
virtual void | DoNotRefineSolution () |
Tells to the direct solver that no refinement is required. | |
virtual void | SetCoefficientEstimationNeededMemory (double coef) |
Method overloaded in Mumps solver. | |
virtual void | SetMaximumCoefficientEstimationNeededMemory (double coef) |
Method overloaded in Mumps solver. | |
virtual void | SetIncreaseCoefficientEstimationNeededMemory (double coef) |
Method overloaded in Mumps solver. | |
virtual void | SelectOrdering (int) |
selects ordering to use in the interfaced solver | |
virtual void | SelectParallelOrdering (int) |
selects ordering to use in parallel for the interfaced solver | |
virtual void | SetPermutation (const Vector< int > &) |
gives the ordering array to the interface solver | |
virtual void | SetNumberOfThreadPerNode (int n) |
Sets the number of threads per mpi process. | |
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. | |
ClassComplexType< T >::Treal | alpha |
Diagonal compensation parameter (alpha = 0 -> ILU, alpha = 1 -> MILU). | |
ClassComplexType< T >::Treal | droptol |
Threshold used for dropping small terms. | |
ClassComplexType< T >::Treal | permtol |
Threshold for pivoting. | |
IVect | permutation_row |
Permutation arrays. | |
IVect | permutation_col |
Matrix< T, Symmetric, ArrayRowSymSparse, Allocator > | mat_sym |
Symmetric matrix. | |
Matrix< T, General, ArrayRowSparse, Allocator > | mat_unsym |
Unsymmetric matrix. | |
Definition at line 27 of file IlutPreconditioning.hxx.