|
IBAMR
IBAMR version 0.19.
|
#include <PatchEdgeDataBasicOps.h>

Public Member Functions | |
| PatchEdgeDataBasicOps () | |
| virtual | ~PatchEdgeDataBasicOps () |
| void | scale (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const TYPE &alpha, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src, const hier::Box< DIM > &box) const |
| void | addScalar (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src, const TYPE &alpha, const hier::Box< DIM > &box) const |
| void | add (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const |
| void | subtract (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const |
| void | multiply (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const |
| void | divide (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const |
| void | reciprocal (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src, const hier::Box< DIM > &box) const |
| void | linearSum (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const TYPE &alpha, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src1, const TYPE &beta, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const |
| void | axpy (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const TYPE &alpha, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const |
| void | axmy (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const TYPE &alpha, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src1, const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &src2, const hier::Box< DIM > &box) const |
| TYPE | min (const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &data, const hier::Box< DIM > &box) const |
| TYPE | max (const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &data, const hier::Box< DIM > &box) const |
| void | setRandomValues (tbox::Pointer< pdat::EdgeData< DIM, TYPE > > &dst, const TYPE &width, const TYPE &low, const hier::Box< DIM > &box) const |
Private Member Functions | |
| PatchEdgeDataBasicOps (const PatchEdgeDataBasicOps< DIM, TYPE > &) | |
| void | operator= (const PatchEdgeDataBasicOps< DIM, TYPE > &) |
Private Attributes | |
| ArrayDataBasicOps< DIM, TYPE > | d_array_ops |
Class PatchEdgeDataBasicOps<DIM> provides access to a collection of basic numerical operations that may be applied to numerical edge- 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 PatchEdgeDataOps<DIM> object which provides access to a complete set of operations that may be used to manipulate edge-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.
| SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::PatchEdgeDataBasicOps | ( | ) |
Empty constructor and destructor.
|
virtual |
|
private |
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::scale | ( | tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | dst, |
| const TYPE & | alpha, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src, | ||
| const hier::Box< DIM > & | box | ||
| ) | const |
Set dst = alpha * src, elementwise.
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::addScalar | ( | tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | dst, |
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src, | ||
| const TYPE & | alpha, | ||
| const hier::Box< DIM > & | box | ||
| ) | const |
Set dst = src + alpha, elementwise.
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::add | ( | tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | dst, |
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src1, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src2, | ||
| const hier::Box< DIM > & | box | ||
| ) | const |
Set dst = src1 + src2, elementwise.
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::subtract | ( | tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | dst, |
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src1, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src2, | ||
| const hier::Box< DIM > & | box | ||
| ) | const |
Set dst = src1 - src2, elementwise.
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::multiply | ( | tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | dst, |
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src1, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src2, | ||
| const hier::Box< DIM > & | box | ||
| ) | const |
Set dst = src1 * src2, elementwise.
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::divide | ( | tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | dst, |
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src1, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src2, | ||
| const hier::Box< DIM > & | box | ||
| ) | const |
Set dst = src1 / src2, elementwise. No check for division by zero.
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::reciprocal | ( | tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | dst, |
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src, | ||
| const hier::Box< DIM > & | box | ||
| ) | const |
Set dst = 1 / src, elementwise. No check for division by zero.
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::linearSum | ( | tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | dst, |
| const TYPE & | alpha, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src1, | ||
| const TYPE & | beta, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src2, | ||
| const hier::Box< DIM > & | box | ||
| ) | const |
Set dst = alpha * src1 + beta * src2, elementwise.
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::axpy | ( | tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | dst, |
| const TYPE & | alpha, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src1, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src2, | ||
| const hier::Box< DIM > & | box | ||
| ) | const |
Set dst = alpha * src1 + src2, elementwise.
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::axmy | ( | tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | dst, |
| const TYPE & | alpha, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src1, | ||
| const tbox::Pointer< pdat::EdgeData< DIM, TYPE > > & | src2, | ||
| const hier::Box< DIM > & | box | ||
| ) | const |
Set dst = alpha * src1 - src2, elementwise.
| TYPE SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::min | ( | const tbox::Pointer< pdat::EdgeData< 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.
| TYPE SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::max | ( | const tbox::Pointer< pdat::EdgeData< 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.
| void SAMRAI::math::PatchEdgeDataBasicOps< DIM, TYPE >::setRandomValues | ( | tbox::Pointer< pdat::EdgeData< 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.
|
private |
|
private |
1.8.17