SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE > Class Template Reference

#include <source/mathops/face/PatchFaceDataBasicOps.h>

Inheritance diagram for SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 PatchFaceDataBasicOps ()
virtual ~PatchFaceDataBasicOps ()
void scale (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const TYPE &alpha, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src, const hier::Box< DIM > &box) const
void addScalar (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src, const TYPE &alpha, const hier::Box< DIM > &box) const
void add (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const
void subtract (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const
void multiply (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const
void divide (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const
void reciprocal (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src, const hier::Box< DIM > &box) const
void linearSum (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const TYPE &alpha, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src1, const TYPE &beta, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const
void axpy (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const TYPE &alpha, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const
void axmy (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const TYPE &alpha, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const
TYPE min (const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &data, const hier::Box< DIM > &box) const
TYPE max (const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &data, const hier::Box< DIM > &box) const
void setRandomValues (tbox::Pointer< pdat::FaceData< DIM, TYPE > > &dst, const TYPE &width, const TYPE &low, const hier::Box< DIM > &box) const

Detailed Description

template<int DIM, class TYPE>
class SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >

Class PatchFaceDataBasicOps<DIM> provides access to a collection of basic numerical operations that may be applied to numerical face- centered patch data. These operations include simple arithmetic operations as well as min and max, etc. The primary intent of this class is to provide the interface to these standard operations for an PatchFaceDataOps<DIM> object which provides access to a complete set of operations that may be used to manipulate face-centered patch data objects. Each member function accepts a box argument indicating the region of index space on which the operation should be performed. The operation will be performed on the intersection of this box and those boxes corresponding to the patch data objects involved.

These operations typically apply only to the numerical standard built-in types, such as double, float, and int, and the complex type (which may or may not be a built-in type depending on the C++ compiler). Thus, this templated class should only be used to instantiate objects with those types as the template parameter. None of the operations are implemented for any other type.

See also:
math::ArrayDataBasicOps


Constructor & Destructor Documentation

template<int DIM, class TYPE>
SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::PatchFaceDataBasicOps (  ) 

Empty constructor and destructor.

template<int DIM, class TYPE>
SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::~PatchFaceDataBasicOps (  )  [virtual]


Member Function Documentation

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::scale ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const TYPE &  alpha,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src,
const hier::Box< DIM > &  box 
) const

Set dst = alpha * src, elementwise.

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::addScalar ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src,
const TYPE &  alpha,
const hier::Box< DIM > &  box 
) const

Set dst = src + alpha, elementwise.

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::add ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src1,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src2,
const hier::Box< DIM > &  box 
) const

Set dst = src1 + src2, elementwise.

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::subtract ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src1,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src2,
const hier::Box< DIM > &  box 
) const

Set dst = src1 - src2, elementwise.

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::multiply ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src1,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src2,
const hier::Box< DIM > &  box 
) const

Set dst = src1 * src2, elementwise.

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::divide ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src1,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src2,
const hier::Box< DIM > &  box 
) const

Set dst = src1 / src2, elementwise. No check for division by zero.

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::reciprocal ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src,
const hier::Box< DIM > &  box 
) const

Set dst = 1 / src, elementwise. No check for division by zero.

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::linearSum ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const TYPE &  alpha,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src1,
const TYPE &  beta,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src2,
const hier::Box< DIM > &  box 
) const

Set dst = alpha * src1 + beta * src2, elementwise.

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::axpy ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const TYPE &  alpha,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src1,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src2,
const hier::Box< DIM > &  box 
) const

Set dst = alpha * src1 + src2, elementwise.

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::axmy ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const TYPE &  alpha,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src1,
const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  src2,
const hier::Box< DIM > &  box 
) const

Set dst = alpha * src1 - src2, elementwise.

template<int DIM, class TYPE>
TYPE SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::min ( const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  data,
const hier::Box< DIM > &  box 
) const

Return the minimum patch data component entry When the data is complex, the result is the data element with the smallest norm.

template<int DIM, class TYPE>
TYPE SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::max ( const tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  data,
const hier::Box< DIM > &  box 
) const

Return the maximum patch data component entry When the data is complex, the result is the data element with the largest norm.

template<int DIM, class TYPE>
void SAMRAI::math::PatchFaceDataBasicOps< DIM, TYPE >::setRandomValues ( tbox::Pointer< pdat::FaceData< DIM, TYPE > > &  dst,
const TYPE &  width,
const TYPE &  low,
const hier::Box< DIM > &  box 
) const

Set patch data to random values. See the operations in the ArrayDataBasicOps<DIM> class for details on the generation of the random values for each data type.


The documentation for this class was generated from the following files:
Generated on Thu Jun 18 11:28:35 2009 for SAMRAI by  doxygen 1.5.1