Chombo + EB  3.2
Public Member Functions | Protected Attributes | Private Member Functions | List of all members
RedistStencil Class Reference

stencil for mass redistribution More...

#include <RedistStencil.H>

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)

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.

Constructor & Destructor Documentation

◆ RedistStencil() [1/3]

RedistStencil::RedistStencil ( )

Default constructor. User must subsequently call define().

◆ ~RedistStencil()

RedistStencil::~RedistStencil ( )

◆ RedistStencil() [2/3]

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() [3/3]

RedistStencil::RedistStencil ( const RedistStencil ebcin)

References MayDay::Error().

Member Function Documentation

◆ define()

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

◆ isDefined()

bool RedistStencil::isDefined ( ) const

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

◆ resetWeights()

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.

◆ operator[]()

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

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

◆ deepCopy()

void RedistStencil::deepCopy ( const RedistStencil a_stenin)

This copy operation detaches copier from copyee.

◆ getRedistRadius()

int RedistStencil::getRedistRadius ( ) const

◆ computePointStencil()

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

◆ operator=()

void RedistStencil::operator= ( const RedistStencil fabin)

References MayDay::Error().

Member Data Documentation

◆ m_stencil

LayoutData<BaseIVFAB<VoFStencil > > RedistStencil::m_stencil

◆ m_volsten

LayoutData<BaseIVFAB<VoFStencil > > RedistStencil::m_volsten

◆ m_grids

DisjointBoxLayout RedistStencil::m_grids

◆ m_domain

ProblemDomain RedistStencil::m_domain

◆ m_ebisl

EBISLayout RedistStencil::m_ebisl

◆ m_isDefined

bool RedistStencil::m_isDefined

◆ m_hasDefaultWeights

bool RedistStencil::m_hasDefaultWeights

◆ m_alwaysRedist

bool RedistStencil::m_alwaysRedist

◆ m_redistRadius

int RedistStencil::m_redistRadius

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