Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

NodeBaseBottomSmoother Class Reference

Pure base class to encapsulate bottom smoother for NodeLevelOp-derived objects. More...

#include <NodeBaseBottomSmoother.H>

Inheritance diagram for NodeBaseBottomSmoother:

Inheritance graph
[legend]
List of all members.

Public Methods

 NodeBaseBottomSmoother ()
 {\bf constructor and destructor}

virtual ~NodeBaseBottomSmoother ()
virtual NodeBaseBottomSmoother * new_bottomSmoother () const=0
virtual void doBottomSmooth (LevelData< NodeFArrayBox > &a_phi, const LevelData< NodeFArrayBox > &a_rhs, NodeLevelOp *a_levelop_ptr)=0
 {\bf data modification functions}


Detailed Description

Pure base class to encapsulate bottom smoother for NodeLevelOp-derived objects.

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.


Constructor & Destructor Documentation

NodeBaseBottomSmoother::NodeBaseBottomSmoother   [inline]
 

{\bf constructor and destructor}

Default constructor.

virtual NodeBaseBottomSmoother::~NodeBaseBottomSmoother   [inline, virtual]
 

Destructor.


Member Function Documentation

virtual void NodeBaseBottomSmoother::doBottomSmooth LevelData< NodeFArrayBox > &    a_phi,
const LevelData< NodeFArrayBox > &    a_rhs,
NodeLevelOp   a_levelop_ptr
[pure virtual]
 

{\bf data modification functions}

Perform smoothing of L(a_phi) = a_rhs; \ L is the operator defined in a_levelop_ptr, and the preconditioner is a_levelop_ptr->levelPreconditioner().

{\bf Arguments:}\ a_phi (modified): the data at this level.\ a_rhs (not modified): right-hand side.\ a_levelop_ptr (not modified): pointer to the operator.\

Implemented in NodeBiCGStabSmoother, NodeCGSmoother, and NodeNoOpSmoother.

virtual NodeBaseBottomSmoother* NodeBaseBottomSmoother::new_bottomSmoother   const [pure virtual]
 

this gets around the "no virtual constructor" rule

Implemented in NodeBiCGStabSmoother, NodeCGSmoother, and NodeNoOpSmoother.


The documentation for this class was generated from the following file:
Generated on Tue Apr 15 18:34:54 2003 for AMRNodeElliptic by doxygen1.2.16