chombo-discharge
|
Stencil class for computing non-conservative divergences using neighborhood algorithms. More...
#include <CD_NonConservativeDivergenceStencil.H>
Public Member Functions | |
NonConservativeDivergenceStencil ()=delete | |
Disallowed weak constructor. | |
NonConservativeDivergenceStencil (const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl, const ProblemDomain &a_domain, const Real &a_dx, const int a_order, const int a_radius, const IrregStencil::StencilType a_type) | |
Full constructor. Subsequently calls define. More... | |
virtual | ~NonConservativeDivergenceStencil () |
Destructor. | |
Public Member Functions inherited from IrregStencil | |
IrregStencil () | |
Weak constructor (does nothing) | |
IrregStencil (const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl, const ProblemDomain &a_domain, const Real &a_dx, const int a_order, const int a_radius, const IrregStencil::StencilType a_type) | |
Full constructor. More... | |
virtual | ~IrregStencil () |
Destructor. | |
const BaseIVFAB< VoFStencil > & | operator[] (const DataIndex &a_dit) const |
Get the stencils over a single box. | |
BaseIVFAB< VoFStencil > & | operator[] (const DataIndex &a_dit) |
Get the stencils over a single box. | |
virtual void | apply (EBCellFAB &a_dst, const EBCellFAB &a_src, const DataIndex &a_dit) const |
Apply the stencil. | |
virtual void | apply (BaseIVFAB< Real > &a_dst, const EBCellFAB &a_src, const DataIndex &a_dit) const |
Apply the stencil. | |
Protected Member Functions | |
virtual void | buildStencil (VoFStencil &a_sten, const VolIndex &a_vof, const DisjointBoxLayout &a_dbl, const ProblemDomain &a_domain, const EBISBox &a_ebisbox, const Box &a_box, const Real &a_dx, const IntVectSet &a_cfivs) override |
Build the interpolation stencils. More... | |
Protected Member Functions inherited from IrregStencil | |
virtual void | define (const DisjointBoxLayout &a_dbl, const EBISLayout &a_ebisl, const ProblemDomain &a_domain, const Real &a_dx, const int a_order, const int a_radius, const IrregStencil::StencilType a_type) |
Define function. | |
Additional Inherited Members | |
Public Types inherited from IrregStencil | |
enum class | StencilType { NoType , Linear , TaylorExtrapolation , LeastSquares , PiecewiseLinear } |
Enum for identifying stencil – only meant for enhancing code visibility. | |
Protected Attributes inherited from IrregStencil | |
LayoutData< RefCountedPtr< BaseIVFAB< VoFStencil > > > | m_stencils |
Stencil. | |
LayoutData< VoFIterator > | m_vofIter |
VoFIterators. | |
DisjointBoxLayout | m_dbl |
Grids. | |
EBISLayout | m_ebisl |
EBIS layout. | |
Real | m_dx |
Level resolution. | |
int | m_radius |
Stencil radius. | |
int | m_order |
Stencil order. | |
IrregStencil::StencilType | m_stencilType |
Stencil type. | |
ProblemDomain | m_domain |
Domain. | |
Static Protected Attributes inherited from IrregStencil | |
static constexpr int | m_defaultStenComp = 0 |
Default stencil component. | |
static constexpr int | m_defaultNumSten = 1 |
Default stencil component. | |
Stencil class for computing non-conservative divergences using neighborhood algorithms.
This class will compute a stencil s(phi) = sum(kappa * phi)/sum(kappa) where the stencil points consist of cells that can be reached through a monotone path.
NonConservativeDivergenceStencil::NonConservativeDivergenceStencil | ( | const DisjointBoxLayout & | a_dbl, |
const EBISLayout & | a_ebisl, | ||
const ProblemDomain & | a_domain, | ||
const Real & | a_dx, | ||
const int | a_order, | ||
const int | a_radius, | ||
const IrregStencil::StencilType | a_type | ||
) |
Full constructor. Subsequently calls define.
[in] | a_dbl | Grids |
[in] | a_ebisl | EBIS layout |
[in] | a_domain | Problem domain |
[in] | a_dx | Resolutions |
[in] | a_order | Stencil order (dummy argument) |
[in] | a_radius | Stencil radius |
[in] | a_type | Stencil type (dummy argument) |
|
overrideprotectedvirtual |
Build the interpolation stencils.
[out] | a_sten | Returned stencil |
[in] | a_vof | VolIndex where stencil is defined |
[in] | a_dbl | Grids |
[in] | a_domain | Problem domain |
[in] | a_ebisbox | EBISBox |
[in] | a_box | Box currently being evaluated |
[in] | a_dx | Grid resolution |
[in] | a_cfivs | Coarse-fine interface |
This calls one of the other function for computing the stencil.
Implements IrregStencil.