RedistStencil Class Reference

#include <RedistStencil.H>

List of all members.


Detailed Description

stencil for mass redistribution

The RedistStencil class holds the stencil for mass redistribution at every irregular VoF in a layout. The default weights that the stencil holds are volume weights. The class does allow the flexibility to redefine these weights.

Public Member Functions

 RedistStencil ()
 ~RedistStencil ()
 RedistStencil (const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl, const ProblemDomain &a_domain, const int &a_redistRadius)
void define (const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl, const ProblemDomain &a_domain, const int &a_redistRadius, bool a_do2DStencil=false)
bool isDefined () const
void resetWeights (const LevelData< EBCellFAB > &a_modifier, const int &a_ivar)
const BaseIVFAB< VoFStencil > & operator[] (const DataIndex &datInd) const
void deepCopy (const RedistStencil &a_stenin)
int getRedistRadius () const

Protected Attributes

LayoutData< BaseIVFAB
< VoFStencil > > 
m_stencil
LayoutData< BaseIVFAB
< VoFStencil > > 
m_volsten
DisjointBoxLayout m_grids
ProblemDomain m_domain
EBISLayout m_ebisl
bool m_isDefined
bool m_hasDefaultWeights
bool m_alwaysRedist
int m_redistRadius

Private Member Functions

void computePointStencil (VoFStencil &a_stencil, const VolIndex &a_srcVoF, const DataIndex &a_datInd, const bool &a_do2DStencil)
 RedistStencil (const RedistStencil &ebcin)
void operator= (const RedistStencil &fabin)


Constructor & Destructor Documentation

RedistStencil::RedistStencil (  ) 

Default constructor. User must subsequently call define().

RedistStencil::~RedistStencil (  ) 

RedistStencil::RedistStencil ( const DisjointBoxLayout a_dbl,
const EBISLayout a_ebisl,
const ProblemDomain a_domain,
const int &  a_redistRadius 
)

Defining constructor. Constructs a valid object. Equivalent to default construction followed by define(). ebisl needs ghost cells out to 3*redistradius

RedistStencil::RedistStencil ( const RedistStencil ebcin  )  [inline, private]

References MayDay::Error().


Member Function Documentation

void RedistStencil::define ( const DisjointBoxLayout a_dbl,
const EBISLayout a_ebisl,
const ProblemDomain a_domain,
const int &  a_redistRadius,
bool  a_do2DStencil = false 
)

Defines this object. Existing information is overriden. ebisl needs ghost cells out to 3*redistradius

bool RedistStencil::isDefined (  )  const

Returns true if this object was created with the defining constructor or if define() has been called.

void RedistStencil::resetWeights ( const LevelData< EBCellFAB > &  a_modifier,
const int &  a_ivar 
)

Modify the weights in the stencil by multiplying by the inputs in a normalized way. If you want mass weighting, send in the density.

const BaseIVFAB<VoFStencil >& RedistStencil::operator[] ( const DataIndex datInd  )  const

Returns the redistribution stencil at every irregular point in input Box associated with this DataIndex.

void RedistStencil::deepCopy ( const RedistStencil a_stenin  ) 

This copy operation detaches copier from copyee.

int RedistStencil::getRedistRadius (  )  const

void RedistStencil::computePointStencil ( VoFStencil a_stencil,
const VolIndex a_srcVoF,
const DataIndex a_datInd,
const bool &  a_do2DStencil 
) [private]

void RedistStencil::operator= ( const RedistStencil fabin  )  [inline, private]

References MayDay::Error().


Member Data Documentation

bool RedistStencil::m_isDefined [protected]


The documentation for this class was generated from the following file:

Generated on Sat Jun 24 04:03:54 2017 for Chombo + EB by  doxygen 1.5.5