12 #ifndef CD_EBHelmholtzDirichletEBBC_H
13 #define CD_EBHelmholtzDirichletEBBC_H
20 #include <CD_EBHelmholtzEBBC.H>
21 #include <CD_NamespaceHeader.H>
67 setValue(
const std::function<Real(
const RealVect& a_pos)>& a_value);
88 const EBCellFAB& a_phi,
89 const BaseIVFAB<Real>& a_Bcoef,
90 const DataIndex& a_dit,
92 const bool& a_homogeneousPhysBC)
const override;
153 const VolIndex& a_vof,
155 const DataIndex& a_dit,
156 const int a_order)
const;
168 const VolIndex& a_vof,
169 const DataIndex& a_dit,
170 const int a_order)
const;
181 getChomboLsqStencil(std::pair<Real, VoFStencil>& a_stencil,
const VolIndex& a_vof,
const DataIndex& a_dit)
const;
184 #include <CD_NamespaceFooter.H>
Various functions for getting Vofs near cut-cells.
Base class for passing Dirichlet EB boundary conditions into EBHelmholtzOp.
Definition: CD_EBHelmholtzDirichletEBBC.H:27
virtual bool getJohansenStencil(std::pair< Real, VoFStencil > &a_stencil, const VolIndex &a_vof, const DataIndex &a_dit, const int a_order) const
Get johansen stencil with specified order. Not used but exists for backward compatibility testing and...
Definition: CD_EBHelmholtzDirichletEBBC.cpp:282
EBHelmholtzDirichletEBBC()
Default constructor.
Definition: CD_EBHelmholtzDirichletEBBC.cpp:23
std::function< Real(const RealVect &a_pos)> m_functionValue
Value on the EB.
Definition: CD_EBHelmholtzDirichletEBBC.H:128
int m_order
Stencil approximation order,.
Definition: CD_EBHelmholtzDirichletEBBC.H:108
LayoutData< BaseIVFAB< Real > > m_boundaryWeights
Boundary weights.
Definition: CD_EBHelmholtzDirichletEBBC.H:133
virtual void setValue(const int a_value)
Set the value on the EB.
Definition: CD_EBHelmholtzDirichletEBBC.cpp:60
virtual bool getChomboLsqStencil(std::pair< Real, VoFStencil > &a_stencil, const VolIndex &a_vof, const DataIndex &a_dit) const
Get Chombo's least squares gradient stencil. Not used but kept for backward compatibility testing and...
Definition: CD_EBHelmholtzDirichletEBBC.cpp:353
virtual void setDomainDropOrder(const int a_domainSize)
Drop BC order if domain size is equal or below this.
Definition: CD_EBHelmholtzDirichletEBBC.cpp:82
virtual void applyEBFlux(VoFIterator &a_vofit, EBCellFAB &a_Lphi, const EBCellFAB &a_phi, const BaseIVFAB< Real > &a_Bcoef, const DataIndex &a_dit, const Real &a_beta, const bool &a_homogeneousPhysBC) const override
Apply the EB flux. This is the version that is called by EBHelmholtzOp.
Definition: CD_EBHelmholtzDirichletEBBC.cpp:197
virtual void setOrder(const int a_order)
Set BC order.
Definition: CD_EBHelmholtzDirichletEBBC.cpp:41
int m_weight
Distance weighting factor for stencils.
Definition: CD_EBHelmholtzDirichletEBBC.H:113
bool m_useFunction
Use function for BC value.
Definition: CD_EBHelmholtzDirichletEBBC.H:103
virtual void define() override
User define function.
Definition: CD_EBHelmholtzDirichletEBBC.cpp:90
virtual bool getLeastSquaresStencil(std::pair< Real, VoFStencil > &a_stencil, const VolIndex &a_vof, const VofUtils::Neighborhood a_neighborhood, const DataIndex &a_dit, const int a_order) const
Get stencil with specified order.
Definition: CD_EBHelmholtzDirichletEBBC.cpp:239
int m_domainDropOrder
Special flag for dropping stencil order when domains become coarser than this.
Definition: CD_EBHelmholtzDirichletEBBC.H:118
bool m_useConstant
Use constant for BC.
Definition: CD_EBHelmholtzDirichletEBBC.H:98
virtual void setWeight(const int a_weight)
Set stencil weights.
Definition: CD_EBHelmholtzDirichletEBBC.cpp:50
Real m_constantValue
Value on EB.
Definition: CD_EBHelmholtzDirichletEBBC.H:123
virtual ~EBHelmholtzDirichletEBBC()
Destructor.
Definition: CD_EBHelmholtzDirichletEBBC.cpp:35
Base class for passing EB boundary conditions into EBHelmholtzOp.
Definition: CD_EBHelmholtzEBBC.H:29
Neighborhood
Neighborhood type.
Definition: CD_VofUtils.H:55