|
chombo-discharge
|
Class for interpolating cell-centered data to the EB centroid. More...
#include <CD_EBCentroidInterpolation.H>
Public Types | |
| enum class | Type { Constant , Linear , Taylor , LeastSquares , PiecewiseLinear , MinMod , MonotonizedCentral , Superbee } |
| Supported interpolation types. | |
Public Member Functions | |
| EBCentroidInterpolation () noexcept | |
| Default constructor. Must call the define function afterwards. | |
| EBCentroidInterpolation (const EBCentroidInterpolation &a_other)=delete | |
| Copy constructor. Not allowed. | |
| EBCentroidInterpolation (const EBLevelGrid &a_eblg, const Real &a_dx, const Type &a_interpolationType) noexcept | |
| Defining constructor. This calls the define function. | |
| virtual | ~EBCentroidInterpolation () noexcept |
| Destructor. Does nothing. | |
| virtual void | define (const EBLevelGrid &a_eblg, const Real &a_dx, const Type &a_interpolationType) noexcept |
| Define function. Puts object in usable state. | |
| virtual void | interpolate (LevelData< BaseIVFAB< Real > > &a_centroidData, const LevelData< EBCellFAB > &a_cellData) const noexcept |
| Function for interpolating data. | |
| void | interpolate (BaseIVFAB< Real > &a_centroidData, const EBCellFAB &a_cellData, const DataIndex &a_din) const noexcept |
| Interpolation function. | |
Protected Attributes | |
| bool | m_isDefined |
| Defined or not. | |
| EBLevelGrid | m_eblg |
| Grids. | |
| Type | m_interpolationType |
| Interpolation type. | |
| Real | m_dx |
| Grid resolution. | |
| LayoutData< VoFIterator > | m_vofIterator |
| VoF iterator for iterating through the cut-cells. | |
| LayoutData< BaseIVFAB< VoFStencil > > | m_interpStencils |
| Stencils. This is only populated when the interpolation is expressable as a stencil. | |
Class for interpolating cell-centered data to the EB centroid.
Various interpolation methods are supported, where some are supported by explicitly expressable stencils and others through limiters.
This is a per-level class without AMR functionality. On coarse-fine interfaces near the EB the user must fill the ghost cells prior to the interpolation.
|
noexcept |
Defining constructor. This calls the define function.
| [in] | a_eblg | Grids |
| [in] | a_dx | Grid resolution |
| [in] | a_interpolationType | Interpolation type |
|
virtualnoexcept |
Define function. Puts object in usable state.
| [in] | a_eblg | Grids |
| [in] | a_dx | Grid resolution |
| [in] | a_interpolationType | Interpolation type |
|
protectedvirtualnoexcept |
Utility function for fetching a least-squares based interpolation stencil.
| [out] | a_stencil | Stencil |
| [in] | a_vof | VolIndex for cut-cell |
| [in] | a_ebisBox | EB grid box |
| [in] | a_domain | Grid domain |
|
protectedvirtualnoexcept |
Utility function for fetching a bilinear/trilinear stencil.
| [out] | a_stencil | Stencil |
| [in] | a_vof | VolIndex for cut-cell |
| [in] | a_ebisBox | EB grid box |
| [in] | a_domain | Grid domain |
|
protectedvirtualnoexcept |
Utility function for fetching a piecewise linear stencil.
| [out] | a_stencil | Stencil |
| [in] | a_vof | VolIndex for cut-cell |
| [in] | a_ebisBox | EB grid box |
| [in] | a_domain | Grid domain |
|
protectedvirtualnoexcept |
Utility function for fetching a Taylor-extrapolation stencil.
| [out] | a_stencil | Stencil |
| [in] | a_vof | VolIndex for cut-cell |
| [in] | a_ebisBox | EB grid box |
| [in] | a_domain | Grid domain |
|
noexcept |
Interpolation function.
| [out] | a_centroidData | Centroid-centered data. |
| [in] | a_cellData | Cell-centered data. |
|
virtualnoexcept |
Function for interpolating data.
| [out] | a_centroidData | Centroid-centered data. |
| [in] | a_cellData | Cell-centered data. |
|
inlineprotectednoexcept |
Minmod slope function.
| [in] | a_dwl | Left slope |
| [in] | a_dwr | Right slope |
|
inlineprotectednoexcept |
Monotonized central difference slope limiter.
| [in] | a_dwl | Left slope |
| [in] | a_dwr | Right slope |
|
inlineprotectednoexcept |
Superbee slope limiter.
| [in] | a_dwl | Left slope |
| [in] | a_dwr | Right slope |