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 |