12 #ifndef CD_MFHelmholtzJumpBCImplem_H
13 #define CD_MFHelmholtzJumpBCImplem_H
16 #include <NeighborIterator.H>
20 #include <CD_NamespaceHeader.H>
29 std::vector<Box> validBoxes;
31 Box curBox = dbl[a_dit];
34 validBoxes.emplace_back(curBox);
36 NeighborIterator nit(dbl);
37 for (nit.begin(a_dit); nit.ok(); ++nit) {
38 Box neighBox = dbl[nit()];
42 validBoxes.emplace_back(neighBox);
49 for (
int i = 0; i < a_stencil.size(); i++) {
50 const VolIndex& vof = a_stencil.vof(i);
51 const IntVect& iv = vof.gridIndex();
53 bool insideOneBox =
false;
54 for (
const auto& b : validBoxes) {
72 for (
int i = 0; i < a_stencil.size(); i++) {
73 contrib += a_stencil.weight(i) * a_phi(a_stencil.vof(i),
m_comp);
79 #include <CD_NamespaceFooter.H>
Declaration of class for computing "jump interface" boundary conditions for multifluid Helmholtz code...
static constexpr int m_comp
Component where stencils are stored.
Definition: CD_MFHelmholtzJumpBC.H:189
int m_ghostCF
Number of grid cells that were filled over the CF.
Definition: CD_MFHelmholtzJumpBC.H:234
Real applyStencil(const VoFStencil &a_stencil, const EBCellFAB &a_phi) const
Apply a stencil and return the result.
Definition: CD_MFHelmholtzJumpBCImplem.H:69
bool isStencilValidCF(const VoFStencil &a_stencil, const DataIndex &a_dit) const
Check if stencil is valid.
Definition: CD_MFHelmholtzJumpBCImplem.H:23
MFLevelGrid m_mflg
Grids.
Definition: CD_MFHelmholtzJumpBC.H:204
virtual ProblemDomain getDomain() const
Get the problem domain.
Definition: CD_MFLevelGrid.cpp:72
virtual DisjointBoxLayout getGrids() const
Get the grids.
Definition: CD_MFLevelGrid.cpp:78