#include <BaseBottomSmoother.H>
Inheritance diagram for BaseBottomSmoother:
Public Methods | |
BaseBottomSmoother () | |
Null constructor. | |
virtual | ~BaseBottomSmoother () |
Destructor. | |
virtual BaseBottomSmoother * | new_bottomSmoother () const=0 |
This gets around the "no virtual constructor" rule. | |
virtual void | doBottomSmooth (LevelData< FArrayBox > &a_phi, const LevelData< FArrayBox > &a_rhs, LevelOp *a_levelopPtr)=0 |
Do smoothing. | |
virtual void | setConvergenceMetric (Real a_metric, int a_comp=0)=0 |
sets metric to judge convergence (normally norm(rhs) of outer problem | |
virtual void | setSolverTol (Real a_tol)=0 |
set solver tolerance |
The BaseBottomSmoother class is a virtual base class for implementing different bottomSmoother algorithms for LevelOp-derived classes. It takes a LevelOp pointer as an argument during its definition, in order to access the problem-dependent (equation-dependent) functionality of the specific LevelOp derivative class.
|
Null constructor.
|
|
Destructor.
|
|
Do smoothing.
Implemented in BiCGStabSmoother, GSRBSmoother, and NoOpSmoother. |
|
This gets around the "no virtual constructor" rule.
Implemented in BiCGStabSmoother, GSRBSmoother, and NoOpSmoother. |
|
sets metric to judge convergence (normally norm(rhs) of outer problem To make the iterative solver convergence more consistent, the solver will consider itself "solved" if the residual is reduced to epsilon*metric, where epsilon is the solver tolerance (set by setSolverTol). A good starting point for the metric is the norm of the RHS of the original problem (i.e. the rhs sent in to LevelSolver or AMRSolver). Default value is 1.0. Implemented in BiCGStabSmoother, GSRBSmoother, and NoOpSmoother. |
|
set solver tolerance
Implemented in BiCGStabSmoother, GSRBSmoother, and NoOpSmoother. |