#include <BaseEBFaceFAB.H>
An BaseEBFaceFAB is a templated holder for face-centered data over a region which consists of the intersection of a face-centered box and an EBISBox. At every uncovered VoF in this intersection, the BaseEBFaceFAB contains a specified number of data values. At singly valued faces, the data is stored internally in a BaseFab. At multiply-valued faces, the data is stored internally in an INFab. A multiply-valued face is defined to be a face which abuts at least one multiply-valued Face. BaseEBFaceFAB provides indexing by Face. This class does not provide a copy constructor or assignment operator for all the usual reasons.
Public Member Functions | |
BaseEBFaceFAB () | |
BaseEBFaceFAB (const EBISBox &a_ebisBox, const Box &a_region, int a_iDir, int a_nVar) | |
void | define (const EBISBox &a_ebisBox, const Box &a_region, int a_iDir, int a_nVar) |
virtual | ~BaseEBFaceFAB () |
void | clear () |
void | setVal (const T &value) |
void | setVal (int ivar, const T &value) |
bool | isDefined () const |
int | nComp () const |
const BaseIFFAB< T > & | getMultiValuedFAB () const |
BaseIFFAB< T > & | getMultiValuedFAB () |
const BaseFab< T > & | getSingleValuedFAB () const |
const IntVectSet & | getMultiCells () const |
BaseFab< T > & | getSingleValuedFAB () |
int | direction () const |
const Box & | getRegion () const |
const Box & | getCellRegion () const |
T & | operator() (const FaceIndex &a_facein, int a_nVarLoc) |
const T & | operator() (const FaceIndex &a_facein, int a_nVarLoc) const |
void | copy (const Box &RegionFrom, const Interval &destInt, const Box &RegionTo, const BaseEBFaceFAB< T > &source, const Interval &srcInt) |
BaseEBFaceFAB< T > & | copy (const BaseEBFaceFAB< T > &source) |
int | size (const Box &R, const Interval &comps) const |
void | linearOut (void *buf, const Box &R, const Interval &comps) const |
void | linearIn (void *buf, const Box &R, const Interval &comps) |
BaseEBFaceFAB (const Box &a_region, int a_nVar) | |
Invalid but necessary for LevelData<T> to compile. | |
const EBISBox & | getEBISBox () const |
void | setCoveredFaceVal (const T &a_val, const int &a_comp, const bool &a_doMulti=true) |
Static Public Member Functions | |
static bool | preAllocatable () |
Protected Attributes | |
BaseIFFAB< T > | m_irrFAB |
data at faces which abut multi-valued cells | |
BaseFab< T > | m_regFAB |
data at faces between two single-valued cells | |
int | m_nComp |
number of data values at each face in BaseEBFaceFAB | |
int | m_iDir |
Box | m_regionFace |
the face-centered region over which the BaseEBFaceFAB lives | |
Box | m_region |
the cell-centered region over which the BaseEBFaceFAB lives | |
bool | m_isDefined |
has the full define function been called for the BaseEBFaceFAB? | |
EBISBox | m_ebisBox |
Private Member Functions | |
void | setDefaultValues () |
void | operator= (const BaseEBFaceFAB< T > &ebcin) |
BaseEBFaceFAB (const BaseEBFaceFAB< T > &ebcin) |
BaseEBFaceFAB< T >::BaseEBFaceFAB | ( | ) | [inline] |
References BaseEBFaceFAB< T >::setDefaultValues().
BaseEBFaceFAB< T >::BaseEBFaceFAB | ( | const EBISBox & | a_ebisBox, | |
const Box & | a_region, | |||
int | a_iDir, | |||
int | a_nVar | |||
) | [inline] |
Box going into this needs to be cell-centered. Data will exist over the surrounding nodes of the box.
References BaseEBFaceFAB< T >::define(), and BaseEBFaceFAB< T >::setDefaultValues().
BaseEBFaceFAB< T >::~BaseEBFaceFAB | ( | ) | [inline, virtual] |
References BaseEBFaceFAB< T >::clear().
BaseEBFaceFAB< T >::BaseEBFaceFAB | ( | const Box & | a_region, | |
int | a_nVar | |||
) | [inline] |
Invalid but necessary for LevelData<T> to compile.
BaseEBFaceFAB< T >::BaseEBFaceFAB | ( | const BaseEBFaceFAB< T > & | ebcin | ) | [inline, private] |
void BaseEBFaceFAB< T >::define | ( | const EBISBox & | a_ebisBox, | |
const Box & | a_region, | |||
int | a_iDir, | |||
int | a_nVar | |||
) | [inline] |
Box going into this needs to be cell-centered. Data will exist over the surrounding nodes of the box.
References Box::cellCentered(), BaseEBFaceFAB< T >::clear(), Box::contains(), ProblemDomain::domainBox(), EBISBox::getDomain(), EBISBox::getEBGraph(), EBISBox::getMultiCells(), EBISBox::getRegion(), Box::grow(), Box::isEmpty(), BaseEBFaceFAB< T >::m_ebisBox, BaseEBFaceFAB< T >::m_iDir, BaseEBFaceFAB< T >::m_irrFAB, BaseEBFaceFAB< T >::m_isDefined, BaseEBFaceFAB< T >::m_nComp, BaseEBFaceFAB< T >::m_regFAB, BaseEBFaceFAB< T >::m_region, BaseEBFaceFAB< T >::m_regionFace, SpaceDim, and surroundingNodes().
Referenced by BaseEBFaceFAB< T >::BaseEBFaceFAB().
void BaseEBFaceFAB< T >::clear | ( | ) | [inline] |
References BaseEBFaceFAB< T >::m_irrFAB, BaseEBFaceFAB< T >::m_isDefined, and BaseEBFaceFAB< T >::m_regFAB.
Referenced by BaseEBFaceFAB< T >::define(), and BaseEBFaceFAB< T >::~BaseEBFaceFAB().
void BaseEBFaceFAB< T >::setVal | ( | const T & | value | ) | [inline] |
References BaseEBFaceFAB< T >::m_irrFAB, and BaseEBFaceFAB< T >::m_regFAB.
void BaseEBFaceFAB< T >::setVal | ( | int | ivar, | |
const T & | value | |||
) | [inline] |
References BaseEBFaceFAB< T >::m_irrFAB, and BaseEBFaceFAB< T >::m_regFAB.
bool BaseEBFaceFAB< T >::isDefined | ( | ) | const [inline] |
References BaseEBFaceFAB< T >::m_isDefined.
Referenced by BaseEBFaceFAB< T >::copy(), BaseEBFaceFAB< T >::direction(), BaseEBFaceFAB< T >::getCellRegion(), BaseEBFaceFAB< T >::getMultiCells(), BaseEBFaceFAB< T >::getMultiValuedFAB(), BaseEBFaceFAB< T >::getRegion(), BaseEBFaceFAB< T >::getSingleValuedFAB(), BaseEBFaceFAB< T >::nComp(), and BaseEBFaceFAB< T >::operator()().
int BaseEBFaceFAB< T >::nComp | ( | ) | const [inline] |
References BaseEBFaceFAB< T >::isDefined(), and BaseEBFaceFAB< T >::m_nComp.
const BaseIFFAB< T > & BaseEBFaceFAB< T >::getMultiValuedFAB | ( | ) | const [inline] |
References BaseEBFaceFAB< T >::isDefined(), and BaseEBFaceFAB< T >::m_irrFAB.
BaseIFFAB< T > & BaseEBFaceFAB< T >::getMultiValuedFAB | ( | ) | [inline] |
References BaseEBFaceFAB< T >::isDefined(), and BaseEBFaceFAB< T >::m_irrFAB.
const BaseFab< T > & BaseEBFaceFAB< T >::getSingleValuedFAB | ( | ) | const [inline] |
References BaseEBFaceFAB< T >::isDefined(), and BaseEBFaceFAB< T >::m_regFAB.
const IntVectSet & BaseEBFaceFAB< T >::getMultiCells | ( | ) | const [inline] |
References BaseEBFaceFAB< T >::isDefined(), and BaseEBFaceFAB< T >::m_irrFAB.
Referenced by BaseEBFaceFAB< T >::operator()().
BaseFab< T > & BaseEBFaceFAB< T >::getSingleValuedFAB | ( | ) | [inline] |
References BaseEBFaceFAB< T >::isDefined(), and BaseEBFaceFAB< T >::m_regFAB.
int BaseEBFaceFAB< T >::direction | ( | ) | const [inline] |
References BaseEBFaceFAB< T >::isDefined(), and BaseEBFaceFAB< T >::m_iDir.
const Box & BaseEBFaceFAB< T >::getRegion | ( | ) | const [inline] |
Returns the FACE-CENTERED region of the fab
References BaseEBFaceFAB< T >::isDefined(), and BaseEBFaceFAB< T >::m_regionFace.
const Box & BaseEBFaceFAB< T >::getCellRegion | ( | ) | const [inline] |
Returns the CELL-CENTERED region of the fab
References BaseEBFaceFAB< T >::isDefined(), and BaseEBFaceFAB< T >::m_region.
T & BaseEBFaceFAB< T >::operator() | ( | const FaceIndex & | a_facein, | |
int | a_nVarLoc | |||
) | [inline] |
const T & BaseEBFaceFAB< T >::operator() | ( | const FaceIndex & | a_facein, | |
int | a_nVarLoc | |||
) | const [inline] |
static bool BaseEBFaceFAB< T >::preAllocatable | ( | ) | [inline, static] |
void BaseEBFaceFAB< T >::copy | ( | const Box & | RegionFrom, | |
const Interval & | destInt, | |||
const Box & | RegionTo, | |||
const BaseEBFaceFAB< T > & | source, | |||
const Interval & | srcInt | |||
) | [inline] |
Box going into this should be CELL CENTERED. copy done over surrounding nodes.
References Interval::begin(), Box::cellCentered(), Box::contains(), Interval::end(), BaseEBFaceFAB< T >::isDefined(), BaseEBFaceFAB< T >::m_iDir, BaseEBFaceFAB< T >::m_irrFAB, BaseEBFaceFAB< T >::m_nComp, BaseEBFaceFAB< T >::m_regFAB, BaseEBFaceFAB< T >::m_region, BaseEBFaceFAB< T >::m_regionFace, Interval::size(), and surroundingNodes().
Referenced by BaseEBFaceFAB< T >::copy().
BaseEBFaceFAB< T > & BaseEBFaceFAB< T >::copy | ( | const BaseEBFaceFAB< T > & | source | ) | [inline] |
int BaseEBFaceFAB< T >::size | ( | const Box & | R, | |
const Interval & | comps | |||
) | const [inline] |
void BaseEBFaceFAB< T >::linearOut | ( | void * | buf, | |
const Box & | R, | |||
const Interval & | comps | |||
) | const [inline] |
void BaseEBFaceFAB< T >::linearIn | ( | void * | buf, | |
const Box & | R, | |||
const Interval & | comps | |||
) | [inline] |
const EBISBox & BaseEBFaceFAB< T >::getEBISBox | ( | ) | const [inline] |
References BaseEBFaceFAB< T >::m_ebisBox.
void BaseEBFaceFAB< T >::setCoveredFaceVal | ( | const T & | a_val, | |
const int & | a_comp, | |||
const bool & | a_doMulti = true | |||
) | [inline] |
void BaseEBFaceFAB< T >::setDefaultValues | ( | ) | [inline, private] |
References BaseEBFaceFAB< T >::m_iDir, BaseEBFaceFAB< T >::m_isDefined, and BaseEBFaceFAB< T >::m_nComp.
Referenced by BaseEBFaceFAB< T >::BaseEBFaceFAB().
void BaseEBFaceFAB< T >::operator= | ( | const BaseEBFaceFAB< T > & | ebcin | ) | [inline, private] |
BaseIFFAB<T> BaseEBFaceFAB< T >::m_irrFAB [protected] |
data at faces which abut multi-valued cells
Referenced by BaseEBFaceFAB< T >::clear(), BaseEBFaceFAB< T >::copy(), BaseEBFaceFAB< T >::define(), BaseEBFaceFAB< T >::getMultiCells(), BaseEBFaceFAB< T >::getMultiValuedFAB(), BaseEBFaceFAB< T >::linearIn(), BaseEBFaceFAB< T >::linearOut(), BaseEBFaceFAB< T >::operator()(), BaseEBFaceFAB< T >::setVal(), and BaseEBFaceFAB< T >::size().
BaseFab<T> BaseEBFaceFAB< T >::m_regFAB [protected] |
data at faces between two single-valued cells
Referenced by BaseEBFaceFAB< T >::clear(), BaseEBFaceFAB< T >::copy(), BaseEBFaceFAB< T >::define(), BaseEBFaceFAB< T >::getSingleValuedFAB(), BaseEBFaceFAB< T >::linearIn(), BaseEBFaceFAB< T >::linearOut(), BaseEBFaceFAB< T >::operator()(), BaseEBFaceFAB< T >::setCoveredFaceVal(), BaseEBFaceFAB< T >::setVal(), and BaseEBFaceFAB< T >::size().
int BaseEBFaceFAB< T >::m_nComp [protected] |
number of data values at each face in BaseEBFaceFAB
Referenced by BaseEBFaceFAB< T >::copy(), BaseEBFaceFAB< T >::define(), BaseEBFaceFAB< T >::nComp(), BaseEBFaceFAB< T >::operator()(), BaseEBFaceFAB< T >::setCoveredFaceVal(), and BaseEBFaceFAB< T >::setDefaultValues().
int BaseEBFaceFAB< T >::m_iDir [protected] |
Box BaseEBFaceFAB< T >::m_regionFace [protected] |
the face-centered region over which the BaseEBFaceFAB lives
Referenced by BaseEBFaceFAB< T >::copy(), BaseEBFaceFAB< T >::define(), BaseEBFaceFAB< T >::getRegion(), and BaseEBFaceFAB< T >::operator()().
Box BaseEBFaceFAB< T >::m_region [protected] |
the cell-centered region over which the BaseEBFaceFAB lives
Referenced by BaseEBFaceFAB< T >::copy(), BaseEBFaceFAB< T >::define(), BaseEBFaceFAB< T >::getCellRegion(), and BaseEBFaceFAB< T >::setCoveredFaceVal().
bool BaseEBFaceFAB< T >::m_isDefined [protected] |
has the full define function been called for the BaseEBFaceFAB?
Referenced by BaseEBFaceFAB< T >::clear(), BaseEBFaceFAB< T >::define(), BaseEBFaceFAB< T >::isDefined(), and BaseEBFaceFAB< T >::setDefaultValues().
EBISBox BaseEBFaceFAB< T >::m_ebisBox [protected] |