#include <BiCGStabSmoother.H>
Inheritance diagram for BiCGStabSmoother:
Public Member Functions | |
BiCGStabSmoother () | |
Null constructor. | |
virtual | ~BiCGStabSmoother () |
Destructor. | |
virtual BaseBottomSmoother * | new_bottomSmoother () const |
"Virtual constructor" workaround. | |
void | setMaxIter (int a_maxIter) |
Set maximum number of BiCGStab iterations. | |
void | setSolverTol (Real a_solverTol) |
Set solver tolerance. | |
void | setEnableRestart (bool a_enableRestart) |
Set whether to enable restart capabillity. | |
void | setVerbose (bool a_verbose) |
Set verbosity level. | |
virtual void | doBottomSmooth (LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_rhs, LevelOp *a_levelopPtr) |
Do smoothing. | |
virtual void | setConvergenceMetric (Real a_metric, int a_comp) |
set metric for judging convergence (if not set, defaults to 1.0) | |
Protected Attributes | |
int | m_maxIter |
Vector< Real > | m_convergenceMetrics |
Real | m_solverTol |
Real | m_small |
Real | m_convergeSmall |
bool | m_enableRestart |
bool | m_verbose |
The BiCGStabSmoother class implements the BiCGStab algorithm for LevelOp-derived classes
|
Null constructor.
|
|
Destructor.
|
|
Do smoothing. Performs BiCGStab smoothing of L(a_phi) = a_rhs; L is the operator defined in a_levelopPtr, and the preconditioner is a_levelopPtr->smooth Implements BaseBottomSmoother. |
|
"Virtual constructor" workaround. This gets around the "no virtual constructor" rule Implements BaseBottomSmoother. |
|
set metric for judging convergence (if not set, defaults to 1.0)
Implements BaseBottomSmoother. |
|
Set whether to enable restart capabillity. If this is true, if BiCGStab reaches a hang point, the solver will recompute the residual and attempt to restart the computation |
|
Set maximum number of BiCGStab iterations.
|
|
Set solver tolerance. Set solver tolerance Implements BaseBottomSmoother. |
|
Set verbosity level. Set whether i/o is done when solving (default is false) |
|
Solver convergence metrics |
|
Small parameter to check for size of correction (to prevent hanging) |
|
If true, enable restarting capability |
|
Maximum number of BiCGStab iterations |
|
Small parameter to check for division by zero |
|
Solver tolerance (we declare the problem solved if the residual is smaller than solverTol*convergenceMetric |
|
Default is false |