A linear solver based on the ISTL AMG preconditioner and the ISTL BiCGSTAB solver.
More...
#include <dumux/linear/amgbackend.hh>
template<class GridView, class
AmgTraits>
class Dumux::ParallelAMGBackend< GridView, AmgTraits >
A linear solver based on the ISTL AMG preconditioner and the ISTL BiCGSTAB solver.
◆ Scalar
export Scalar type (might be needed to set parameters from output) TODO: Do we need this?
◆ ParallelAMGBackend() [1/2]
Construct the backend for the sequential case only.
- Parameters
-
paramGroup | the parameter group for parameter lookup |
◆ ParallelAMGBackend() [2/2]
Construct the backend for parallel or sequential runs.
- Parameters
-
gridView | the grid view on which we are performing the multi-grid |
dofMapper | an index mapper for dof entities |
paramGroup | the parameter group for parameter lookup |
◆ maxIter()
int Dumux::LinearSolver::maxIter |
( |
| ) |
const |
|
inlineinherited |
the maximum number of linear solver iterations
◆ name()
◆ paramGroup()
const std::string & Dumux::LinearSolver::paramGroup |
( |
| ) |
const |
|
inlineinherited |
the parameter group for getting parameter from the parameter tree
◆ precondIter()
int Dumux::LinearSolver::precondIter |
( |
| ) |
const |
|
inlineinherited |
the number of preconditioner iterations
◆ relaxation()
double Dumux::LinearSolver::relaxation |
( |
| ) |
const |
|
inlineinherited |
the linear solver relaxation factor
◆ residReduction()
double Dumux::LinearSolver::residReduction |
( |
| ) |
const |
|
inlineinherited |
the linear solver residual reduction
◆ result()
The result containing the convergence history.
◆ setMaxIter()
void Dumux::LinearSolver::setMaxIter |
( |
int |
i | ) |
|
|
inlineinherited |
set the maximum number of linear solver iterations
◆ setPrecondIter()
void Dumux::LinearSolver::setPrecondIter |
( |
int |
i | ) |
|
|
inlineinherited |
set the number of preconditioner iterations
◆ setRelaxation()
void Dumux::LinearSolver::setRelaxation |
( |
double |
r | ) |
|
|
inlineinherited |
set the linear solver relaxation factor
◆ setResidualReduction()
void Dumux::LinearSolver::setResidualReduction |
( |
double |
r | ) |
|
|
inlineinherited |
set the linear solver residual reduction
◆ setVerbosity()
void Dumux::LinearSolver::setVerbosity |
( |
int |
v | ) |
|
|
inlineinherited |
◆ solve() [1/2]
template<class Matrix , class Vector >
bool Dumux::LinearSolver::solve |
( |
const Matrix & |
A, |
|
|
Vector & |
x, |
|
|
const Vector & |
b |
|
) |
| |
|
inlineinherited |
Solve the linear system Ax = b.
- Note
- This has to be overloaded by the actual solver
◆ solve() [2/2]
template<class Matrix , class Vector >
Solve a linear system.
- Parameters
-
A | the matrix |
x | the seeked solution vector, containing the initial solution upon entry |
b | the right hand side vector |
- Todo:
- Check whether the default accumulation mode atOnceAccu is needed.
- Todo:
- Todo:
- make parameters changeable at runtime from input file / parameter tree
◆ verbosity()
int Dumux::LinearSolver::verbosity |
( |
| ) |
const |
|
inlineinherited |
The documentation for this class was generated from the following file: