Chombo + EB + MF
3.2
|
#include <DirichletPoissonEBBC.H>
Public Member Functions | |
DirichletPoissonEBBC () | |
DirichletPoissonEBBC (const ProblemDomain &a_domain, const EBISLayout &a_layout, const RealVect &a_dx, const IntVect *a_ghostCellsPhi=0, const IntVect *a_ghostCellsRhs=0) | |
void | construct (const ProblemDomain &a_domain, const EBISLayout &a_layout, const RealVect &a_dx, const IntVect *a_ghostCellsPhi=0, const IntVect *a_ghostCellsRhs=0) |
virtual | ~DirichletPoissonEBBC () |
virtual void | define (const LayoutData< IntVectSet > &a_cfivs, const Real &a_factor) |
virtual void | setOrder (int a_order) |
virtual LayoutData< BaseIVFAB< VoFStencil > > * | getFluxStencil (int ivar) |
LayoutData< BaseIVFAB< Real > > & | getFluxWeight () |
virtual void | setValue (Real a_value) |
virtual void | setFunction (RefCountedPtr< BaseBCValue > a_func) |
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) |
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) |
bool | getSecondOrderStencil (VoFStencil &a_stencil, Real &a_weight, Vector< VoFStencil > &a_pointStencils, Vector< Real > &a_distanceAlongLine, const VolIndex &a_vof, const EBISBox &a_ebisBox, const RealVect &a_dx, const IntVectSet &a_cfivs) |
virtual void | applyEBFluxPoint (const VolIndex &a_vof, 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) |
virtual void | getFirstOrderStencil (VoFStencil &a_stencil, Real &a_weight, const VolIndex &a_vof, const EBISBox &a_ebisBox, const RealVect &a_dx) |
virtual void | getSecondOrderStencil (VoFStencil &a_stencil, Real &a_weight, const VolIndex &a_vof, const EBISBox &a_ebisBox, const RealVect &a_dx, const IntVectSet &a_cfivs) |
virtual void | define (const LayoutData< IntVectSet > &a_cfivs) |
Public Member Functions inherited from BaseEBBC | |
BaseEBBC () | |
virtual | ~BaseEBBC () |
virtual void | setData (RefCountedPtr< LevelData< BaseIVFAB< Real > > > &a_data) |
bool | dataBased () const |
virtual void | setType (RefCountedPtr< LevelData< BaseIVFAB< int > > > &a_type) |
Public Attributes | |
bool | m_isDefined |
bool | m_onlyHomogeneous |
bool | m_isFunction |
int | m_order |
Real | m_value |
RefCountedPtr< BaseBCValue > | m_func |
ProblemDomain | m_domain |
EBISLayout | m_layout |
RealVect | m_dx |
IntVect | m_ghostCellsPhi |
IntVect | m_ghostCellsRHS |
LayoutData< BaseIVFAB< Real > > | m_fluxWeight |
LayoutData< BaseIVFAB< VoFStencil > > | m_fluxStencil |
Static Public Attributes | |
static int | s_velComp |
static int | s_leastSquaresRad |
static bool | s_areaFracWeighted |
static bool | s_useQuadrantBasedStencil |
Additional Inherited Members | |
Protected Attributes inherited from BaseEBBC | |
RefCountedPtr< LevelData< BaseIVFAB< Real > > > | m_data |
bool | m_dataBased |
DirichletPoissonEBBC::DirichletPoissonEBBC | ( | ) |
DirichletPoissonEBBC::DirichletPoissonEBBC | ( | const ProblemDomain & | a_domain, |
const EBISLayout & | a_layout, | ||
const RealVect & | a_dx, | ||
const IntVect * | a_ghostCellsPhi = 0 , |
||
const IntVect * | a_ghostCellsRhs = 0 |
||
) |
|
virtual |
void DirichletPoissonEBBC::construct | ( | const ProblemDomain & | a_domain, |
const EBISLayout & | a_layout, | ||
const RealVect & | a_dx, | ||
const IntVect * | a_ghostCellsPhi = 0 , |
||
const IntVect * | a_ghostCellsRhs = 0 |
||
) |
Referenced by DirichletConductivityEBBC::DirichletConductivityEBBC().
|
virtual |
Implements BaseEBBC.
|
virtual |
Referenced by DirichletConductivityEBBC::setOrder().
|
inlinevirtual |
Return a pointer to the homogenous flux stencil for the boundary condition. contribution. In the case where there in no contribution in the homogeneous case (ie. homogeneous Neumann) return NULL.
Implements BaseEBBC.
References m_fluxStencil.
|
inline |
References applyEBFlux(), applyEBFluxPoint(), getEBFlux(), getSecondOrderStencil(), m_fluxWeight, setFunction(), and setValue().
|
virtual |
Referenced by getFluxWeight().
|
virtual |
Referenced by getFluxWeight().
|
virtual |
|
virtual |
bool DirichletPoissonEBBC::getSecondOrderStencil | ( | VoFStencil & | a_stencil, |
Real & | a_weight, | ||
Vector< VoFStencil > & | a_pointStencils, | ||
Vector< Real > & | a_distanceAlongLine, | ||
const VolIndex & | a_vof, | ||
const EBISBox & | a_ebisBox, | ||
const RealVect & | a_dx, | ||
const IntVectSet & | a_cfivs | ||
) |
Referenced by getFluxWeight().
|
virtual |
Referenced by getFluxWeight().
|
virtual |
|
virtual |
|
virtual |
|
static |
|
static |
|
static |
|
static |
bool DirichletPoissonEBBC::m_isDefined |
bool DirichletPoissonEBBC::m_onlyHomogeneous |
bool DirichletPoissonEBBC::m_isFunction |
int DirichletPoissonEBBC::m_order |
Real DirichletPoissonEBBC::m_value |
RefCountedPtr<BaseBCValue> DirichletPoissonEBBC::m_func |
ProblemDomain DirichletPoissonEBBC::m_domain |
EBISLayout DirichletPoissonEBBC::m_layout |
RealVect DirichletPoissonEBBC::m_dx |
IntVect DirichletPoissonEBBC::m_ghostCellsPhi |
IntVect DirichletPoissonEBBC::m_ghostCellsRHS |
LayoutData<BaseIVFAB<Real> > DirichletPoissonEBBC::m_fluxWeight |
Referenced by getFluxWeight().
LayoutData<BaseIVFAB<VoFStencil> > DirichletPoissonEBBC::m_fluxStencil |
Referenced by getFluxStencil().