#include <NodeBaseBottomSmoother.H>

The NodeBaseBottomSmoother class is a virtual base class for implementing different bottomSmoother algorithms for NodeLevelOp-derived classes. It takes a NodeLevelOp pointer as an argument during its definition, in order to access the problem-dependent (equation-dependent) functionality of the specific NodeLevelOp derivative class.
Public Member Functions | |
Constructor and destructor | |
| NodeBaseBottomSmoother () | |
| virtual | ~NodeBaseBottomSmoother () |
| virtual NodeBaseBottomSmoother * | new_bottomSmoother () const =0 |
Parameter-setting functions | |
| void | setVerbose (bool a_verbose) |
Data modification functions | |
| virtual void | doBottomSmooth (LevelData< NodeFArrayBox > &a_phi, const LevelData< NodeFArrayBox > &a_rhs, NodeLevelOp *a_levelop_ptr)=0 |
Public Attributes | |
| bool | m_verbose |
| NodeBaseBottomSmoother::NodeBaseBottomSmoother | ( | ) | [inline] |
Default constructor.
| virtual NodeBaseBottomSmoother::~NodeBaseBottomSmoother | ( | ) | [inline, virtual] |
Destructor.
| virtual NodeBaseBottomSmoother* NodeBaseBottomSmoother::new_bottomSmoother | ( | ) | const [pure virtual] |
This gets around the "no virtual constructor" rule.
Implemented in NodeBiCGStabSmoother, NodeCGSmoother, and NodeNoOpSmoother.
| void NodeBaseBottomSmoother::setVerbose | ( | bool | a_verbose | ) | [inline] |
Control output to stdout.
References m_verbose.
| virtual void NodeBaseBottomSmoother::doBottomSmooth | ( | LevelData< NodeFArrayBox > & | a_phi, | |
| const LevelData< NodeFArrayBox > & | a_rhs, | |||
| NodeLevelOp * | a_levelop_ptr | |||
| ) | [pure virtual] |
Perform smoothing of L(a_phi) = a_rhs, where L is the operator defined in a_levelop_ptr, and the preconditioner is a_levelop_ptr->levelPreconditioner().
| a_phi | data at this level, to be smoothed |
| a_rhs | right-hand side at this level |
| a_levelop_ptr | pointer to the operator |
Implemented in NodeBiCGStabSmoother, NodeCGSmoother, and NodeNoOpSmoother.
enable output to stdout if true
Referenced by setVerbose().
1.5.5