11 #ifndef _DIRICHLETVISCOUSTENSOREBBC_H_ 12 #define _DIRICHLETVISCOUSTENSOREBBC_H_ 21 #include "NamespaceHeader.H" 44 const IntVect* a_ghostCellsRhs);
55 const Real& a_factor);
70 const bool& a_useHomogeneous,
102 const Real& a_weight,
116 Real a_weight[ SpaceDim],
152 Real a_Jinverse[SpaceDim][SpaceDim],
233 const IntVect* a_ghostCellsPhi,
234 const IntVect* a_ghostCellsRhs);
250 #include "NamespaceFooter.H" virtual void define(const LayoutData< IntVectSet > &a_cfivs, const Real &a_factor)
void getNormalStencil(VoFStencil &a_stencil, Real &a_weight, const VolIndex &a_vof, const EBISBox &a_ebisBox, const RealVect &a_dx, const IntVectSet &a_cfivs)
An irregular domain on an integer lattice.
Definition: IntVectSet.H:44
#define CH_SPACEDIM
Definition: SPACE.H:51
A class to facilitate interaction with physical boundary conditions.
Definition: ProblemDomain.H:141
void getGradient(Real a_grad[SpaceDim][SpaceDim], const VolIndex &a_vof, const EBCellFAB &a_phi, const EBISBox &a_ebisBox, const DataIndex &a_dit, const Real &a_dx, bool a_homogeneous)
bool m_isDefined
Definition: DirichletViscousTensorEBBC.H:183
DirichletViscousTensorEBBC()
const IntVect m_ghostCellsPhi
Definition: DirichletViscousTensorEBBC.H:194
ProblemDomain m_domain
Definition: DirichletViscousTensorEBBC.H:185
bool getSecondOrderStencil(VoFStencil &a_stencil, Real &a_weight, Vector< VoFStencil > &a_pointStencil, Vector< Real > &a_distanceAlongLine, const VolIndex &a_vof, const EBISBox &a_ebisBox, const RealVect &a_dx, const IntVectSet &a_cfivs)
virtual RealVect getInhomogeneousContribution(const VolIndex &a_vof, const EBCellFAB &a_phi, const EBISBox &a_ebisBox, const DataIndex &a_dit, const Real &a_dx)
const IntVect m_ghostCellsPhi
Definition: DirichletViscousTensorEBBC.H:243
const int SpaceDim
Definition: SPACE.H:38
virtual ~DirichletViscousTensorEBBC()
VoF-centered stencil.
Definition: Stencils.H:60
void getFlux(Real a_flux[SpaceDim][SpaceDim], const VolIndex &a_vof, const EBCellFAB &a_phi, const EBISBox &a_ebisBox, const DataIndex &a_dit, const Real &a_dx, bool a_homogeneous)
void getJacobianAndInverse(Real a_Jacobian[SpaceDim][SpaceDim], Real a_Jinverse[SpaceDim][SpaceDim], RealVect &a_normal, RealVect a_tangents[SpaceDim-1])
virtual void setValue(Real a_value)
Definition: BaseEBBC.H:149
LayoutData< BaseIVFAB< Real > > m_fluxWeight[CH_SPACEDIM]
Definition: DirichletViscousTensorEBBC.H:193
Definition: EBCellFAB.H:29
RefCountedPtr< BaseBCFuncEval > m_func
Definition: DirichletViscousTensorEBBC.H:242
const IntVect m_ghostCellsRHS
Definition: DirichletViscousTensorEBBC.H:195
void getFirstOrderStencil(VoFStencil &a_stencil, Real &a_weight, const VolIndex &a_vof, const EBISBox &a_ebisBox, const RealVect &a_dx, const IntVectSet &a_cfivs)
double Real
Definition: REAL.H:33
void getGradInhomOnly(Real a_grad[SpaceDim][SpaceDim], const Real &a_weight, const VolIndex &a_vof, const EBISBox &a_ebisBox, const Real &a_dx)
bool m_isFunction
Definition: DirichletViscousTensorEBBC.H:239
virtual void applyEBFlux(EBCellFAB &a_lphi, const EBCellFAB &a_phi, VoFIterator &a_vofit, const LayoutData< IntVectSet > &a_cfivs, const DataIndex &a_dit, const RealVect &a_probLo, const RealVect &a_dx, const Real &a_factor, const bool &a_useHomogeneous, const Real &a_time)
RealVect m_dx
Definition: DirichletViscousTensorEBBC.H:188
Definition: BaseEBBC.H:109
static int s_leastSquaresRad
Definition: DirichletViscousTensorEBBC.H:180
const IntVect m_ghostCellsRHS
Definition: DirichletViscousTensorEBBC.H:244
virtual LayoutData< BaseIVFAB< VoFStencil > > * getFluxStencil(int ivar)
Definition: DirichletViscousTensorEBBC.H:57
A Real vector in SpaceDim-dimensional space.
Definition: RealVect.H:41
Definition: DataIndex.H:114
Definition: BaseEBBC.H:315
Iterator for all vofs within an IntVectSet and an Ebgraph.
Definition: VoFIterator.H:27
LayoutData< BaseIVFAB< VoFStencil > > m_fluxStencil[CH_SPACEDIM]
Definition: DirichletViscousTensorEBBC.H:192
Definition: DirichletViscousTensorEBBC.H:28
void getCartesianGradientStencil(VoFStencil a_gradStencils[SpaceDim][SpaceDim], VoFStencil &a_normalStencil, const DataIndex &a_dit, const VolIndex &a_vof, const EBISBox &a_ebisBox, const RealVect &a_dx)
EBISLayout m_ebisl
Definition: DirichletViscousTensorEBBC.H:186
An integer Vector in SpaceDim-dimensional space.
Definition: CHArray.H:42
virtual void setFunction(RefCountedPtr< BaseBCFuncEval > a_func)
Definition: BaseEBBC.H:161
Volume of Fluid Index.
Definition: VolIndex.H:31
Definition: EBISLayout.H:39
void getGradientFunction(Real a_grad[SpaceDim][SpaceDim], const VolIndex &a_vof, const EBCellFAB &a_phi, const EBISBox &a_ebisBox, const DataIndex &a_dit, const Real &a_dx, bool a_homogeneous)
Real m_value
Definition: DirichletViscousTensorEBBC.H:241
void getGradientStenValue(Real a_grad[SpaceDim][SpaceDim], const VolIndex &a_vof, const EBCellFAB &a_phi, const EBISBox &a_ebisBox, const DataIndex &a_dit, const Real &a_dx, bool a_homogeneous)
Definition: DirichletViscousTensorEBBC.H:203