Chombo + EB  3.2
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
DirichletPoissonEBBC Class Reference

#include <DirichletPoissonEBBC.H>

Inheritance diagram for DirichletPoissonEBBC:
Inheritance graph
[legend]

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< BaseBCValuem_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
 

Constructor & Destructor Documentation

◆ DirichletPoissonEBBC() [1/2]

DirichletPoissonEBBC::DirichletPoissonEBBC ( )

◆ DirichletPoissonEBBC() [2/2]

DirichletPoissonEBBC::DirichletPoissonEBBC ( const ProblemDomain a_domain,
const EBISLayout a_layout,
const RealVect a_dx,
const IntVect a_ghostCellsPhi = 0,
const IntVect a_ghostCellsRhs = 0 
)

◆ ~DirichletPoissonEBBC()

virtual DirichletPoissonEBBC::~DirichletPoissonEBBC ( )
virtual

Member Function Documentation

◆ construct()

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 
)

◆ define() [1/2]

virtual void DirichletPoissonEBBC::define ( const LayoutData< IntVectSet > &  a_cfivs,
const Real a_factor 
)
virtual

Implements BaseEBBC.

◆ setOrder()

virtual void DirichletPoissonEBBC::setOrder ( int  a_order)
virtual

◆ getFluxStencil()

virtual LayoutData<BaseIVFAB<VoFStencil> >* DirichletPoissonEBBC::getFluxStencil ( int  ivar)
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.

◆ getFluxWeight()

LayoutData<BaseIVFAB<Real> >& DirichletPoissonEBBC::getFluxWeight ( )
inline

◆ setValue()

virtual void DirichletPoissonEBBC::setValue ( Real  a_value)
virtual

Referenced by getFluxWeight().

◆ setFunction()

virtual void DirichletPoissonEBBC::setFunction ( RefCountedPtr< BaseBCValue a_func)
virtual

Referenced by getFluxWeight().

◆ applyEBFlux()

virtual void DirichletPoissonEBBC::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

add change in lphi due to eb flux

Implements BaseEBBC.

Referenced by getFluxWeight().

◆ getEBFlux()

virtual void DirichletPoissonEBBC::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 
)
virtual

deprecated interface

Reimplemented from BaseEBBC.

Referenced by getFluxWeight().

◆ getSecondOrderStencil() [1/2]

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().

◆ applyEBFluxPoint()

virtual void DirichletPoissonEBBC::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

Referenced by getFluxWeight().

◆ getFirstOrderStencil()

virtual void DirichletPoissonEBBC::getFirstOrderStencil ( VoFStencil a_stencil,
Real a_weight,
const VolIndex a_vof,
const EBISBox a_ebisBox,
const RealVect a_dx 
)
virtual

◆ getSecondOrderStencil() [2/2]

virtual void DirichletPoissonEBBC::getSecondOrderStencil ( VoFStencil a_stencil,
Real a_weight,
const VolIndex a_vof,
const EBISBox a_ebisBox,
const RealVect a_dx,
const IntVectSet a_cfivs 
)
virtual

◆ define() [2/2]

virtual void DirichletPoissonEBBC::define ( const LayoutData< IntVectSet > &  a_cfivs)
virtual

Member Data Documentation

◆ s_velComp

int DirichletPoissonEBBC::s_velComp
static

◆ s_leastSquaresRad

int DirichletPoissonEBBC::s_leastSquaresRad
static

◆ s_areaFracWeighted

bool DirichletPoissonEBBC::s_areaFracWeighted
static

◆ s_useQuadrantBasedStencil

bool DirichletPoissonEBBC::s_useQuadrantBasedStencil
static

◆ m_isDefined

bool DirichletPoissonEBBC::m_isDefined

◆ m_onlyHomogeneous

bool DirichletPoissonEBBC::m_onlyHomogeneous

◆ m_isFunction

bool DirichletPoissonEBBC::m_isFunction

◆ m_order

int DirichletPoissonEBBC::m_order

◆ m_value

Real DirichletPoissonEBBC::m_value

◆ m_func

RefCountedPtr<BaseBCValue> DirichletPoissonEBBC::m_func

◆ m_domain

ProblemDomain DirichletPoissonEBBC::m_domain

◆ m_layout

EBISLayout DirichletPoissonEBBC::m_layout

◆ m_dx

RealVect DirichletPoissonEBBC::m_dx

◆ m_ghostCellsPhi

IntVect DirichletPoissonEBBC::m_ghostCellsPhi

◆ m_ghostCellsRHS

IntVect DirichletPoissonEBBC::m_ghostCellsRHS

◆ m_fluxWeight

LayoutData<BaseIVFAB<Real> > DirichletPoissonEBBC::m_fluxWeight

Referenced by getFluxWeight().

◆ m_fluxStencil

LayoutData<BaseIVFAB<VoFStencil> > DirichletPoissonEBBC::m_fluxStencil

Referenced by getFluxStencil().


The documentation for this class was generated from the following file: