Class which computes a bi/tri-linear stencil in cut-cells. This class makes appropriate modifications if one of the cells don't exist, and even if there are multivalued cells present.
More...
#include <CD_LinearStencil.H>
|
static bool | getLinearInterpStencil (VoFStencil &a_stencil, const RealVect &a_pos, const VolIndex &a_vof, const ProblemDomain &a_domain, const EBISBox &a_ebisbox) |
| Get a bi(tri)linear interpolation stencil in 2D(3D) More...
|
|
|
static bool | computeInterpStencil1D (VoFStencil &a_stencil, const RealVect &a_pos, const VolIndex &a_vof, const ProblemDomain &a_domain, const EBISBox &a_ebisbox, const int a_interpDir) |
| Compute a linear interpolation stencil. More...
|
|
static bool | computeInterpStencil2D (VoFStencil &a_stencil, const RealVect &a_pos, const VolIndex &a_vof, const ProblemDomain &a_domain, const EBISBox &a_ebisbox, const int a_noInterpDir=2) |
| Compute a bilinear interpolation stencil. More...
|
|
|
static constexpr Real | tolerance = 1.E-6 |
| Tolerance for when we switch between 1D/2D/3D stencils.
|
|
Class which computes a bi/tri-linear stencil in cut-cells. This class makes appropriate modifications if one of the cells don't exist, and even if there are multivalued cells present.
- Note
- This routine assumes that the data is fundamentally cell-centered.
◆ computeInterpStencil1D()
bool LinearStencil::computeInterpStencil1D |
( |
VoFStencil & |
a_stencil, |
|
|
const RealVect & |
a_pos, |
|
|
const VolIndex & |
a_vof, |
|
|
const ProblemDomain & |
a_domain, |
|
|
const EBISBox & |
a_ebisbox, |
|
|
const int |
a_interpDir |
|
) |
| |
|
staticprotected |
Compute a linear interpolation stencil.
This only does interpolation along the input coordinate. The other coordinates are ignored.
- Parameters
-
[out] | a_stencil | Interpolation stencil |
[in] | a_pos | Relative position inside cell |
[in] | a_vof | Cut-cell |
[in] | a_domain | Domain |
[in] | a_ebisBox | EBISBox |
[in] | a_interpDir | Interpolation coordinate |
◆ computeInterpStencil2D()
bool LinearStencil::computeInterpStencil2D |
( |
VoFStencil & |
a_stencil, |
|
|
const RealVect & |
a_pos, |
|
|
const VolIndex & |
a_vof, |
|
|
const ProblemDomain & |
a_domain, |
|
|
const EBISBox & |
a_ebisbox, |
|
|
const int |
a_noInterpDir = 2 |
|
) |
| |
|
staticprotected |
Compute a bilinear interpolation stencil.
This ignores interpolation along the input coordinate.
- Parameters
-
[out] | a_stencil | Interpolation stencil |
[in] | a_pos | Relative position inside cell |
[in] | a_vof | Cut-cell |
[in] | a_domain | Domain |
[in] | a_ebisBox | EBISBox |
[in] | a_interpDir | Interpolation coordinate |
◆ getLinearInterpStencil()
bool LinearStencil::getLinearInterpStencil |
( |
VoFStencil & |
a_stencil, |
|
|
const RealVect & |
a_pos, |
|
|
const VolIndex & |
a_vof, |
|
|
const ProblemDomain & |
a_domain, |
|
|
const EBISBox & |
a_ebisbox |
|
) |
| |
|
static |
Get a bi(tri)linear interpolation stencil in 2D(3D)
- Parameters
-
[out] | a_stencil | Interpolation stencil |
[in] | a_pos | Relative position inside cell |
[in] | a_vof | Cut-cell |
[in] | a_domain | Domain |
[in] | a_ebisBox | EBISBox |
The documentation for this class was generated from the following files: