11 #ifndef _VISCOUSBASEDOMAINBC_H_ 12 #define _VISCOUSBASEDOMAINBC_H_ 27 #include "NamespaceHeader.H" 88 const bool& a_useAreaFrac,
90 const bool& a_useHomogeneous)
127 for (
int divDir = 0; divDir <
SpaceDim; divDir++)
130 int srccomp = gradComp;
132 faceDiv.plus(a_grad, srccomp, dstcomp, 1);
136 const Box& faceBox = fluxFAB.
box();
149 bool a_homogeneous) = 0;
159 for(
int idir = 0; idir <
SpaceDim; idir++)
166 for(
int idir = 0; idir <
SpaceDim; idir++)
188 #include "NamespaceFooter.H" virtual Real value(const RealVect &a_point, const int &a_comp) const =0
ViscousBaseDomainBC()
Definition: ViscousBaseDomainBC.H:39
RefCountedPtr< BaseBCFuncEval > m_func
Definition: ViscousBaseDomainBC.H:178
void getFluxFromGrad(BaseFab< Real > &a_flux, const FArrayBox &a_grad, const DataIndex &a_dit, const int &a_idir)
Definition: ViscousBaseDomainBC.H:118
Definition: BaseDomainBC.H:31
RefCountedPtr< LevelData< EBFluxFAB > > m_eta
Definition: ViscousBaseDomainBC.H:184
bool m_onlyHomogeneous
Definition: ViscousBaseDomainBC.H:174
void setVal(T a_x, const Box &a_bx, int a_nstart, int a_numcomp)
{ data modification functions}
Definition: BaseFabImplem.H:399
virtual void getFaceGradPhi(Real &a_faceFlux, const FaceIndex &a_face, const int &a_comp, const EBCellFAB &a_phi, const RealVect &a_probLo, const RealVect &a_dx, const int &a_idir, const Side::LoHiSide &a_side, const DataIndex &a_dit, const Real &a_time, const bool &a_useAreaFrac, const RealVect &a_centroid, const bool &a_useHomogeneous)
Definition: ViscousBaseDomainBC.H:78
Definition: FaceIndex.H:28
virtual ~ViscousBaseDomainBC()
Definition: ViscousBaseDomainBC.H:47
Definition: EBLevelGrid.H:30
virtual void getFaceVel(Real &a_faceFlux, const FaceIndex &a_vof, const EBFluxFAB &a_vel, const RealVect &a_probLo, const RealVect &a_dx, const int &a_idir, const int &a_icomp, const Real &a_time, const Side::LoHiSide &a_side)
Definition: ViscousBaseDomainBC.H:65
static void getFluxFromDivAndGrad(FArrayBox &a_flux, const FArrayBox &a_faceDiv, const FArrayBox &a_faceGrad, const FArrayBox &a_etaFace, const FArrayBox &a_lambdaFace, const Box &a_faceBox, int a_dir)
static int gradIndex(int ivar, int gradDir)
returns component in gradient for variable ivar in direction gradDir
Definition: TensorCFInterp.H:142
const Box & box() const
Definition: BaseFabImplem.H:271
bool m_coefSet
Definition: ViscousBaseDomainBC.H:182
const int SpaceDim
Definition: SPACE.H:38
Definition: ViscousBaseDomainBC.H:33
A EBFaceFAB-like container for edge-centered fluxes.
Definition: EBFluxFAB.H:25
Definition: EBCellFAB.H:29
EBLevelGrid m_eblg
Definition: ViscousBaseDomainBC.H:183
double Real
Definition: REAL.H:33
virtual void setFunction(RefCountedPtr< BaseBCFuncEval > a_func)
Definition: ViscousBaseDomainBC.H:110
Real m_value
Definition: ViscousBaseDomainBC.H:177
LoHiSide
Definition: LoHiSide.H:27
static void Error(const char *const a_msg=m_nullString, int m_exitCode=CH_DEFAULT_ERROR_CODE)
Print out message to cerr and exit with the specified exit code.
void setCoef(EBLevelGrid &a_eblg, Real &a_beta, RefCountedPtr< LevelData< EBFluxFAB > > &a_eta, RefCountedPtr< LevelData< EBFluxFAB > > &a_lambda)
Definition: ViscousBaseDomainBC.H:53
A Rectangular Domain on an Integer Lattice.
Definition: Box.H:469
A Real vector in SpaceDim-dimensional space.
Definition: RealVect.H:41
Definition: DataIndex.H:114
RealVect bcvaluefunc(const RealVect &a_point, const int &a_dir, const Side::LoHiSide &a_side)
Definition: ViscousBaseDomainBC.H:152
virtual void fillVelGhost(FArrayBox &a_state, const Box &a_valid, const Box &a_domain, Real a_dx, bool a_homogeneous)=0
Real m_beta
Definition: ViscousBaseDomainBC.H:181
virtual void setValue(Real a_value)
Definition: ViscousBaseDomainBC.H:98
Definition: FArrayBox.H:45
bool m_isFunction
Definition: ViscousBaseDomainBC.H:175
RefCountedPtr< LevelData< EBFluxFAB > > m_lambda
Definition: ViscousBaseDomainBC.H:185