version 3.10.0
Loading...
Searching...
No Matches
Dumux::UzawaBiCGSTABBackend< LinearSolverTraits > Class Template Reference

A Uzawa preconditioned BiCGSTAB solver for saddle-point problems.

#include <dumux/linear/seqsolverbackend.hh>

Inheritance diagram for Dumux::UzawaBiCGSTABBackend< LinearSolverTraits >:

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 &paramGroup="")
 Construct the solver.
template<class Vector>
auto norm (const Vector &x) const
const std::string & paramGroup () const
 the parameter group for getting parameter from the parameter tree
int verbosity () const
 the verbosity level
void setVerbosity (int v)
 set the verbosity level
int maxIter () const
 the maximum number of linear solver iterations
void setMaxIter (int i)
 set the maximum number of linear solver iterations
Scalar residReduction () const
 the linear solver residual reduction
void setResidualReduction (Scalar r)
 set the linear solver residual reduction
Scalar relaxation () const
 the linear solver relaxation factor
void setRelaxation (Scalar r)
 set the linear solver relaxation factor
int precondIter () const
 the number of preconditioner iterations
void setPrecondIter (int i)
 set the number of preconditioner iterations
int precondVerbosity () const
 the preconditioner verbosity
void setPrecondVerbosity (int verbosityLevel)
 set the preconditioner verbosity

Member Typedef Documentation

◆ Scalar

using Dumux::LinearSolver::Scalar = double
inherited

export Scalar type (might be needed to set parameters from output) TODO: Do we need this?

Member Function Documentation

◆ LinearSolver()

template<class LinearSolverTraits>
Dumux::LinearSolver::LinearSolver ( const std::string & paramGroup = "")
inline
Note
Read parameters from the parameter tree
  • LinearSolver.Verbosity the verbosity level of the linear solver
  • LinearSolver.MaxIterations the maximum iterations of the solver
  • LinearSolver.ResidualReduction the residual reduction threshold, i.e. stopping criterion
  • LinearSolver.Preconditioner.Relaxation precondition relaxation
  • LinearSolver.Preconditioner.Iterations the number of preconditioner iterations
  • LinearSolver.Preconditioner.Verbosity the preconditioner verbosity level

◆ maxIter()

int Dumux::LinearSolver::maxIter ( ) const
inlineinherited

◆ name()

template<class LinearSolverTraits>
std::string Dumux::UzawaBiCGSTABBackend< LinearSolverTraits >::name ( ) const
inline

◆ norm()

template<class Vector>
auto Dumux::LinearSolver::norm ( const Vector & x) const
inlineinherited

◆ paramGroup()

const std::string & Dumux::LinearSolver::paramGroup ( ) const
inlineinherited

◆ precondIter()

int Dumux::LinearSolver::precondIter ( ) const
inlineinherited

◆ precondVerbosity()

int Dumux::LinearSolver::precondVerbosity ( ) const
inlineinherited

◆ relaxation()

Scalar Dumux::LinearSolver::relaxation ( ) const
inlineinherited

◆ residReduction()

Scalar Dumux::LinearSolver::residReduction ( ) const
inlineinherited

◆ setMaxIter()

void Dumux::LinearSolver::setMaxIter ( int i)
inlineinherited

◆ setPrecondIter()

void Dumux::LinearSolver::setPrecondIter ( int i)
inlineinherited

◆ setPrecondVerbosity()

void Dumux::LinearSolver::setPrecondVerbosity ( int verbosityLevel)
inlineinherited

◆ setRelaxation()

void Dumux::LinearSolver::setRelaxation ( Scalar r)
inlineinherited

◆ setResidualReduction()

void Dumux::LinearSolver::setResidualReduction ( Scalar r)
inlineinherited

◆ setVerbosity()

void Dumux::LinearSolver::setVerbosity ( int v)
inlineinherited

◆ solve()

template<class LinearSolverTraits>
template<class Matrix, class Vector>
bool Dumux::UzawaBiCGSTABBackend< LinearSolverTraits >::solve ( const Matrix & A,
Vector & x,
const Vector & b )
inline

◆ verbosity()

int Dumux::LinearSolver::verbosity ( ) const
inlineinherited

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