#include <NodeCGSmoother.H>
Inheritance diagram for NodeCGSmoother:
Public Methods | |
NodeCGSmoother () | |
{\bf constructor and destructor} | |
virtual | ~NodeCGSmoother () |
virtual NodeBaseBottomSmoother * | new_bottomSmoother () const |
void | setMaxIter (int a_max_iter) |
{\bf parameter-setting functions} | |
void | setSolverTol (Real a_solverTol) |
void | setVerbose (bool a_verbose) |
virtual void | doBottomSmooth (LevelData< NodeFArrayBox > &a_phi, const LevelData< NodeFArrayBox > &a_rhs, NodeLevelOp *a_levelopPtr) |
{\bf data modification functions} | |
Protected Attributes | |
int | m_maxIter |
Real | m_solverTol |
Real | m_small |
Real | m_converge_small |
bool | m_verbose |
The NodeCGSmoother class implements the CG algorithm for NodeLevelOp-derived classes
|
{\bf constructor and destructor} Default constructor. |
|
Destructor. |
|
{\bf data modification functions} Perform CG smoothing of L(a_phi) = a_rhs; \ L is the operator defined in a_levelopPtr, and the preconditioner is a_levelopPtr->smooth(). {\bf Arguments:}\ a_phi (modified): the data at this level.\ a_rhs (not modified): right-hand side.\ a_levelopPtr (not modified): pointer to the operator.\ Implements NodeBaseBottomSmoother. |
|
this gets around the "no virtual constructor" rule Implements NodeBaseBottomSmoother. |
|
{\bf parameter-setting functions} set max number of CG iterations |
|
set solver tolerance (amount residual must be decreased, etc) |
|
set whether i/o is done when solving (default is false) |
|
|
|
|
|
|
|
|
|
|