Sequential ILU(n)-preconditioned GMRes solver. More...
#include <dumux/linear/seqsolverbackend.hh>
Sequential ILU(n)-preconditioned GMRes solver.
Solver: The GMRes (generalized minimal residual) method is an iterative method for the numerical solution of a nonsymmetric system of linear equations.
See: Saad, Y., Schultz, M. H. (1986). "GMRES: A generalized minimal residual
algorithm for solving nonsymmetric linear systems." SIAM J. Sci. and Stat. Comput. 7: 856–869.
Preconditioner: ILU(n) incomplete LU factorization. The order n can be provided by the parameter LinearSolver.PreconditionerIterations and controls the fill-in. It can be damped by the relaxation parameter LinearSolver.PreconditionerRelaxation.
See: Golub, G. H., and Van Loan, C. F. (2012). Matrix computations. JHU Press.
Public Types | |
using | Scalar = double |
Public Member Functions | |
template<class Matrix , class Vector > | |
bool | solve (const Matrix &A, Vector &x, const Vector &b) |
std::string | name () const |
LinearSolver (const std::string ¶mGroup="") | |
Construct the solver. More... | |
const std::string & | paramGroup () const |
the parameter group for getting parameter from the parameter tree More... | |
int | verbosity () const |
the verbosity level More... | |
void | setVerbosity (int v) |
set the verbosity level More... | |
int | maxIter () const |
the maximum number of linear solver iterations More... | |
void | setMaxIter (int i) |
set the maximum number of linear solver iterations More... | |
Scalar | residReduction () const |
the linear solver residual reduction More... | |
void | setResidualReduction (Scalar r) |
set the linear solver residual reduction More... | |
Scalar | relaxation () const |
the linear solver relaxation factor More... | |
void | setRelaxation (Scalar r) |
set the linear solver relaxation factor More... | |
int | precondIter () const |
the number of preconditioner iterations More... | |
void | setPrecondIter (int i) |
set the number of preconditioner iterations More... | |
int | precondVerbosity () const |
the preconditioner verbosity More... | |
void | setPrecondVerbosity (int verbosityLevel) |
set the preconditioner verbosity More... | |
|
inherited |
export Scalar type (might be needed to set parameters from output) TODO: Do we need this?
|
inline |
Construct the solver.
|
inlineinherited |
the maximum number of linear solver iterations
|
inline |
|
inlineinherited |
the parameter group for getting parameter from the parameter tree
|
inlineinherited |
the number of preconditioner iterations
|
inlineinherited |
the preconditioner verbosity
|
inlineinherited |
the linear solver relaxation factor
|
inlineinherited |
the linear solver residual reduction
|
inlineinherited |
set the maximum number of linear solver iterations
|
inlineinherited |
set the number of preconditioner iterations
|
inlineinherited |
set the preconditioner verbosity
|
inlineinherited |
set the linear solver relaxation factor
|
inlineinherited |
set the linear solver residual reduction
|
inlineinherited |
set the verbosity level
|
inline |
|
inlineinherited |
the verbosity level