Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

SAMRAI::pdat::OutersideVariable< DIM, TYPE > Class Template Reference

#include <source/patchdata/outerside/OutersideVariable.h>

Inheritance diagram for SAMRAI::pdat::OutersideVariable< DIM, TYPE >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 OutersideVariable (const string &name, int depth=1)
virtual ~OutersideVariable ()
bool fineBoundaryRepresentsVariable () const
bool dataLivesOnPatchBorder () const

Detailed Description

template<int DIM, class TYPE>
class SAMRAI::pdat::OutersideVariable< DIM, TYPE >

Class OutersideVariable<DIM> is a templated variable class used to define side-centered quantities on an AMR mesh. It is templated on the type of the underlying data (e.g., double, int, bool, etc.). Outerside variable data is associated with the sides (or faces) of cells. However, it differs from the SideVariable<DIM> class in that outerside quantities reside only on the sides residing on the boundary of a patch. Outerside data is stored in 2*DIM arrays, each of which holds values for sides having the same outward normal vector. For example, a three-dimensional outerside variable can be used to create side-centered data arrays over a box [l0:u0,l1:u1,l2:u2] that can be dimensioned as:
     [ l1 : u1 ,
       l2 : u2 , d ]   ,

     [ l0 : u0 ,
       l2 : u2 , d ]   ,

     [ l0 : u0 ,
       l1 : u1 , d ]   ,

 * 
for the upper and lower x, y, and z (or 0, 1, 2) face directions, respectively, and where d is the depth index (i.e., number of values at each side index location). Note that the array orderings match the conventions of the SideVariable<DIM> class. One- and two-dimensional outerside variables define storage similarly. For more information on indexing and manipulating outerside patch data objects, see the classes OutersideData<DIM> and OutersideGeometry<DIM>.

IMPORTANT: The class OuterfaceVariable<DIM> and associated classes define the same storage as this outerside variable class, except that the indices are not permuted in the outerside data type. Also, outerface and outerside data classes are intended to interact with their face-centered and side-centered data counterparts, respectively. Mixing types, while allowed, is discouraged to prevent undesirable behavior.

See also:
pdat::SideData

pdat::OutersideData

pdat::OutersideDataFactory

hier::Variable


Constructor & Destructor Documentation

template<int DIM, class TYPE>
SAMRAI::pdat::OutersideVariable< DIM, TYPE >::OutersideVariable const string &  name,
int  depth = 1
 

Create an outerside variable object having properties specified by the name and depth (i.e., number of data values at each index location). The default depth is one. The ghost cell width for all outerside data is currently fixed at zero; this may be changed in the future if needed.

template<int DIM, class TYPE>
SAMRAI::pdat::OutersideVariable< DIM, TYPE >::~OutersideVariable  )  [virtual]
 

Virtual destructor for outerside variable objects.


Member Function Documentation

template<int DIM, class TYPE>
bool SAMRAI::pdat::OutersideVariable< DIM, TYPE >::fineBoundaryRepresentsVariable  )  const [inline, virtual]
 

Return a boolean true value indicating that fine patch values take precedence on coarse-fine interfaces.

Implements SAMRAI::hier::Variable< DIM >.

template<int DIM, class TYPE>
bool SAMRAI::pdat::OutersideVariable< DIM, TYPE >::dataLivesOnPatchBorder  )  const [inline, virtual]
 

Return true since the side data index space (and hence the outerside data index space) extends beyond the interior of patches. That is, outerside data lives on patch borders.

Implements SAMRAI::hier::Variable< DIM >.


The documentation for this class was generated from the following files:
Generated on Fri Dec 2 11:30:01 2005 for SAMRAI by  doxygen 1.4.2