Base class for passing EB boundary conditions into EBHelmholtzOp.
More...
#include <CD_EBHelmholtzEBBC.H>
|
| EBHelmholtzEBBC () |
| Default constructor.
|
|
virtual | ~EBHelmholtzEBBC () |
| Destructor.
|
|
| EBHelmholtzEBBC (const EBHelmholtzEBBC &a_other)=delete |
| Disallowed – don't see why you would need it.
|
|
EBHelmholtzEBBC & | operator= (const EBHelmholtzEBBC &a_other)=delete |
| Disallowed - don't see why you would need it.
|
|
void | define (const Location::Cell a_dataLocation, const EBLevelGrid &a_eblg, const RealVect &a_probLo, const Real &a_dx, const int a_ghostCF) |
| Define function that is called by EBHelmholtzOp. More...
|
|
virtual void | applyEBFlux (VoFIterator &a_vofit, EBCellFAB &a_Lphi, const EBCellFAB &a_phi, const BaseIVFAB< Real > &a_Bcoef, const DataIndex &a_dit, const Real &a_beta, const bool &a_homogeneousPhysBC) const =0 |
| Apply the EB flux. This is the version that is called by EBHelmholtzOp. More...
|
|
const LayoutData< BaseIVFAB< VoFStencil > > & | getGradPhiStencils () const |
| Get the stencil for computing the finite-volume approximation to kappa*Div(F). More...
|
|
|
virtual void | define ()=0 |
| User define function.
|
|
bool | isStencilValidCF (const VoFStencil &a_stencil, const DataIndex &a_dit) const |
| Check if stencil is valid. More...
|
|
RealVect | getBoundaryPosition (const VolIndex &a_vof, const DataIndex &a_dit) const |
| Returns physical position at the boundary.
|
|
Real | applyStencil (const VoFStencil &a_stencil, const EBCellFAB &a_phi) const |
| Apply stencil to data holder and return result.
|
|
|
Location::Cell | m_dataLocation |
| Data centering.
|
|
int | m_ghostCF |
| Number of ghost cells that were filled across CF interface.
|
|
Real | m_dx |
| Grid resolution.
|
|
RealVect | m_probLo |
| Lower-left corner of computational domain.
|
|
EBLevelGrid | m_eblg |
| Level grid.
|
|
LayoutData< BaseIVFAB< VoFStencil > > | m_gradPhiStencils |
| Stencils for computing the flux on a single level. This is a single-level object.
|
|
|
constexpr static int | m_comp = 0 |
| Component that everything is defined for. Always have m_comp = 0.
|
|
constexpr static int | m_nComp = 1 |
| Number of components. Always have m_nComp = 1.
|
|
Base class for passing EB boundary conditions into EBHelmholtzOp.
◆ applyEBFlux()
virtual void EBHelmholtzEBBC::applyEBFlux |
( |
VoFIterator & |
a_vofit, |
|
|
EBCellFAB & |
a_Lphi, |
|
|
const EBCellFAB & |
a_phi, |
|
|
const BaseIVFAB< Real > & |
a_Bcoef, |
|
|
const DataIndex & |
a_dit, |
|
|
const Real & |
a_beta, |
|
|
const bool & |
a_homogeneousPhysBC |
|
) |
| const |
|
pure virtual |
◆ define()
void EBHelmholtzEBBC::define |
( |
const Location::Cell |
a_dataLocation, |
|
|
const EBLevelGrid & |
a_eblg, |
|
|
const RealVect & |
a_probLo, |
|
|
const Real & |
a_dx, |
|
|
const int |
a_ghostCF |
|
) |
| |
Define function that is called by EBHelmholtzOp.
- Parameters
-
[in] | a_dataLocation | Specification of data centering |
[in] | a_eblg | Grid where this object is defined. |
[in] | a_probLo | Lower-left corner of computational domain. Required if BC objects needs physical position. |
[in] | a_dx | Grid resolution. |
[in] | a_ghostCF | Number of ghost cells that are filled across CF interface. |
◆ getGradPhiStencils()
const LayoutData< BaseIVFAB< VoFStencil > > & EBHelmholtzEBBC::getGradPhiStencils |
( |
| ) |
const |
Get the stencil for computing the finite-volume approximation to kappa*Div(F).
The finite volume approximation to kappa*Div(F) is sum(Fluxes)/dx. This routine should return the flux on the EB, i.e. (B*dphi/dn)/dx. The derivative can be written dphi/dn = w0*phi0 + sum(wi*phi(i)) where phi0 is a boundary weight and phi(i) are grid points. This routine should return the stencil B*wi*phi(i).
- Note
- Multiplication by beta is done in the operator.
◆ isStencilValidCF()
bool EBHelmholtzEBBC::isStencilValidCF |
( |
const VoFStencil & |
a_stencil, |
|
|
const DataIndex & |
a_dit |
|
) |
| const |
|
inlineprotected |
Check if stencil is valid.
This routine makes sure that the stencil a_stencil does not reach over the CF interface and into ghost cells that do not have valid data.
- Parameters
-
[in] | a_stencil | Stencil |
[in] | a_dit | Data index |
The documentation for this class was generated from the following files: