|
Chombo + EB + MF
3.2
|
#include <MBAggStencil.H>
Classes | |
| struct | stenelem_t |
Public Types | |
| typedef Vector< stenelem_t > | stencil_t |
Public Member Functions | |
| MBAggStencil (const RefCountedPtr< IVSFAB< MBStencil > > &a_stencil, const IntVectSet &a_region, const Box &a_srcBox, const Box &a_dstBox, const int &a_stencilDim) | |
| ~MBAggStencil () | |
| void | apply (FArrayBox &a_lph, const Vector< FArrayBox *> &a_phi, const int &a_src, const int &a_dst, const int &a_nco, const bool &a_incrementOnly) const |
Protected Member Functions | |
| size_t | getOffset (const IntVect &a_iv, const Box &a_grid) |
| void | computeSlabSizes () |
| void | computeOffsets (const RefCountedPtr< IVSFAB< MBStencil > > &a_stencil, const IntVectSet &a_region, const Box &a_srcBox, const Box &a_dstBox) |
Protected Attributes | |
| Vector< stencil_t > | m_mbstencil |
| Vector< size_t > | m_dstAccess |
| IntVect | m_srcBoxSize |
| IntVect | m_dstBoxSize |
| int | m_stencilDim |
| bool | m_reducedDimStencil |
| size_t | m_srcSlabLinearSize |
| size_t | m_dstSlabLinearSize |
| int | m_numSlabs |
Private Member Functions | |
| MBAggStencil () | |
| weak construction is bad. More... | |
| MBAggStencil & | operator= (const MBAggStencil &stenin) |
| deep copy for this object would kill performance More... | |
| MBAggStencil (const MBAggStencil &stenin) | |
| no reason to allow this one either. More... | |
Aggregated stencil for multiblock stuff. Takes IVSFAB<MBStencil> and turns that into arrays of offsets and weights so the stencil can be evaluated very quickly in comparison with fab(iv, ivar) over and over.
| typedef Vector< stenelem_t > MBAggStencil::stencil_t |
| MBAggStencil::MBAggStencil | ( | const RefCountedPtr< IVSFAB< MBStencil > > & | a_stencil, |
| const IntVectSet & | a_region, | ||
| const Box & | a_srcBox, | ||
| const Box & | a_dstBox, | ||
| const int & | a_stencilDim | ||
| ) |
IVS sent in separately because of the removeNoValid fiasco. sometimes the input stencil has extra cells.
|
inline |
References apply().
|
private |
weak construction is bad.
|
private |
no reason to allow this one either.
| void MBAggStencil::apply | ( | FArrayBox & | a_lph, |
| const Vector< FArrayBox *> & | a_phi, | ||
| const int & | a_src, | ||
| const int & | a_dst, | ||
| const int & | a_nco, | ||
| const bool & | a_incrementOnly | ||
| ) | const |
for applying a scalar operator to multiple operators. Sets the initial variable for destination to a_varDest Sets dataPtr for a_phi initial variable to a_varSrc Runs over ncomp components
Referenced by ~MBAggStencil().
|
protected |
|
protected |
|
private |
deep copy for this object would kill performance
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
1.8.13