25 #include "NamespaceHeader.H"    44                       const Real&                   a_factor) = 0;
    54                          const bool&                   a_useHomogeneous,
    56                          const pair<int,Real>*         a_cacheHint=0 )
    82                            const bool&                   a_useHomogeneous,
    83                            const Real&                   a_time) = 0;
   118     m_value = 12345.6789;
   120     m_isFunction = 
false;
   142     m_etaOpen    = a_etaOpen;
   143     m_lambdaOpen = a_lambdaOpen;
   154     m_isFunction = 
false;
   163     m_value = 12345.6789;
   176     for (
int comp = 0; comp < 
SpaceDim; comp++)
   178         for (
int derivDir = 0; derivDir < 
SpaceDim; derivDir++)
   188                 value = m_func->derivative(point, comp, derivDir);
   194             a_grad[comp][derivDir] = value;
   201                   const Real       a_grad[CH_SPACEDIM][CH_SPACEDIM],
   207     for (
int divDir = 0; divDir < 
SpaceDim; divDir++)
   209         divergence += a_grad[divDir][divDir];
   212     Real lambda = (*m_lambda)[a_dit](a_vof, 0);
   213     Real    eta =    (*m_eta)[a_dit](a_vof, 0);
   215     for (
int comp = 0; comp < 
SpaceDim; comp++)
   217         for (
int derivDir = 0; derivDir < 
SpaceDim; derivDir++)
   219             a_flux[comp][derivDir] = eta*(a_grad[comp][derivDir] + a_grad[derivDir][comp]);
   220             if (comp == derivDir)
   222                 a_flux[comp][derivDir] += lambda*divergence;
   230                       const Real                a_flux[CH_SPACEDIM][CH_SPACEDIM],
   242     for (
int comp = 0; comp < 
SpaceDim; comp++)
   244         a_deltaLph[comp] = 0;
   245         for (
int derivDir = 0; derivDir < 
SpaceDim; derivDir++)
   247             a_deltaLph[comp] -= a_flux[comp][derivDir]*beta*areaFrac*normal[derivDir]/a_dx[0];
   332                            const IntVect*       a_ghostCellsPhi=0,
   333                            const IntVect*       a_ghostCellsRhs=0 ) = 0;
   336 #include "NamespaceFooter.H" virtual void setType(RefCountedPtr< LevelData< BaseIVFAB< int > > > &a_type)
Definition: BaseEBBC.H:96
 
static RealVect getVofLocation(const VolIndex &a_vof, const RealVect &a_dx, const RealVect &a_probLo)
gets the location in real space of a cell center 
 
Definition: BaseEBBC.H:273
 
Real m_beta
Definition: BaseEBBC.H:308
 
bool m_isFunction
Definition: BaseEBBC.H:252
 
A reference-counting handle class. 
Definition: RefCountedPtr.H:173
 
bool m_dataBased
Definition: BaseEBBC.H:103
 
#define CH_SPACEDIM
Definition: SPACE.H:51
 
void getChangeInSolution(Real a_deltaLph[CH_SPACEDIM], const Real a_flux[CH_SPACEDIM][CH_SPACEDIM], const RealVect &a_dx, const VolIndex &a_vof, const DataIndex &a_dit, const EBISBox &a_ebisBox)
Definition: BaseEBBC.H:229
 
A class to facilitate interaction with physical boundary conditions. 
Definition: ProblemDomain.H:141
 
Real bndryArea(const VolIndex &a_vof) const
 
virtual LayoutData< BaseIVFAB< VoFStencil > > * getFluxStencil(int ivar)=0
 
bool m_coefSet
Definition: BaseEBBC.H:260
 
BaseEBBCFactory()
Definition: BaseEBBC.H:318
 
void setCoef(EBLevelGrid &a_eblg, Real &a_beta, RefCountedPtr< LevelData< BaseIVFAB< Real > > > &a_eta, RefCountedPtr< LevelData< BaseIVFAB< Real > > > &a_lambda, RefCountedPtr< LevelData< EBFluxFAB > > &a_etaOpen, RefCountedPtr< LevelData< EBFluxFAB > > &a_lambdaOpen)
Definition: BaseEBBC.H:129
 
Definition: EBLevelGrid.H:30
 
void getFluxFromGrad(Real a_flux[CH_SPACEDIM][CH_SPACEDIM], const Real a_grad[CH_SPACEDIM][CH_SPACEDIM], const VolIndex &a_vof, const DataIndex &a_dit)
Definition: BaseEBBC.H:200
 
RefCountedPtr< LevelData< EBFluxFAB > > m_etaOpen
Definition: BaseEBBC.H:265
 
RefCountedPtr< BaseBCFuncEval > m_func
Definition: BaseEBBC.H:256
 
bool dataBased() const
Definition: BaseEBBC.H:91
 
void setCoef(EBLevelGrid &a_eblg, Real &a_beta, RefCountedPtr< LevelData< BaseIVFAB< Real > > > &a_bcoe)
Definition: BaseEBBC.H:293
 
const int SpaceDim
Definition: SPACE.H:38
 
EBLevelGrid m_eblg
Definition: BaseEBBC.H:259
 
virtual void setValue(Real a_value)
Definition: BaseEBBC.H:149
 
Real m_beta
Definition: BaseEBBC.H:261
 
Definition: EBCellFAB.H:29
 
RefCountedPtr< LevelData< EBFluxFAB > > m_lambdaOpen
Definition: BaseEBBC.H:266
 
double Real
Definition: REAL.H:33
 
virtual void getEBFlux(Real &a_flux, const VolIndex &a_vof, const LevelData< EBCellFAB > &a_phi, const LayoutData< IntVectSet > &a_cfivs, const DataIndex &a_dit, const RealVect &a_probLo, const RealVect &a_dx, const bool &a_useHomogeneous, const Real &a_time, const pair< int, Real > *a_cacheHint=0)
deprecated interface. 
Definition: BaseEBBC.H:47
 
RealVect bndryCentroid(const VolIndex &a_vof) const
 
virtual ~BaseEBBCFactory()
Definition: BaseEBBC.H:322
 
ViscousBaseEBBC()
Definition: BaseEBBC.H:115
 
Definition: BaseEBBC.H:109
 
virtual void define(const LayoutData< IntVectSet > &a_cfivs, const Real &a_factor)=0
 
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)=0
 
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. 
 
RealVect normal(const VolIndex &a_vof) const
 
virtual void setData(RefCountedPtr< LevelData< BaseIVFAB< Real > > > &a_data)
Definition: BaseEBBC.H:85
 
A Real vector in SpaceDim-dimensional space. 
Definition: RealVect.H:41
 
Definition: BaseEBBC.H:31
 
Definition: DataIndex.H:112
 
Definition: BaseEBBC.H:315
 
Iterator for all vofs within an IntVectSet and an Ebgraph. 
Definition: VoFIterator.H:27
 
EBLevelGrid m_eblg
Definition: BaseEBBC.H:306
 
RefCountedPtr< LevelData< BaseIVFAB< Real > > > m_bcoe
Definition: BaseEBBC.H:309
 
void getBoundaryGrad(Real a_grad[CH_SPACEDIM][CH_SPACEDIM], const VolIndex &a_vof, const RealVect &a_dx, const RealVect &a_probLo, const EBISBox &a_ebisBox)
Definition: BaseEBBC.H:170
 
ConductivityBaseEBBC()
Definition: BaseEBBC.H:279
 
An integer Vector in SpaceDim-dimensional space. 
Definition: CHArray.H:42
 
virtual void setFunction(RefCountedPtr< BaseBCFuncEval > a_func)
Definition: BaseEBBC.H:161
 
Real m_value
Definition: BaseEBBC.H:255
 
RefCountedPtr< LevelData< BaseIVFAB< Real > > > m_lambda
Definition: BaseEBBC.H:263
 
RefCountedPtr< LevelData< BaseIVFAB< Real > > > m_eta
Definition: BaseEBBC.H:262
 
Volume of Fluid Index. 
Definition: VolIndex.H:31
 
virtual ~ConductivityBaseEBBC()
Definition: BaseEBBC.H:285
 
Definition: EBISLayout.H:39
 
BaseEBBC()
Definition: BaseEBBC.H:34
 
RefCountedPtr< LevelData< BaseIVFAB< Real > > > m_data
Definition: BaseEBBC.H:102
 
bool m_coefSet
Definition: BaseEBBC.H:307
 
virtual ~ViscousBaseEBBC()
Definition: BaseEBBC.H:122
 
virtual ~BaseEBBC()
Definition: BaseEBBC.H:39