My Project
|
Implements a preconditioned stabilized BiCG linear solver. More...
#include <bicgstabsolver.hh>
Public Member Functions | |
BiCGStabSolver (Preconditioner &preconditioner, ConvergenceCriterion &convergenceCriterion, Dune::ScalarProduct< Vector > &scalarProduct) | |
void | setMaxIterations (unsigned value) |
Set the maximum number of iterations before we give up without achieving convergence. | |
unsigned | maxIterations () const |
Return the maximum number of iterations before we give up without achieving convergence. | |
void | setVerbosity (unsigned value) |
Set the verbosity level of the linear solver. | |
unsigned | verbosity () const |
Return the verbosity level of the linear solver. | |
void | setLinearOperator (const LinearOperator *A) |
Set the matrix "A" of the linear system. | |
void | setRhs (const Vector *b) |
Set the right hand side "b" of the linear system. | |
bool | apply (Vector &x) |
Run the stabilized BiCG solver and store the result into the "x" vector. | |
void | setConvergenceCriterion (ConvergenceCriterion &crit) |
const SolverReport & | report () const |
Implements a preconditioned stabilized BiCG linear solver.
This solves a linear system of equations Ax = b, where the matrix A is sparse and may be unsymmetric.
See https://en.wikipedia.org/wiki/Biconjugate_gradient_stabilized_method, (article date: December 19, 2016)
|
inline |
Set the verbosity level of the linear solver.
The levels correspont to those used by the dune-istl solvers: