19 params.addRequiredParam<std::vector<BoundaryName>>(
20 "boundary",
"The boundaries on which this pressure jump model applies.");
50 "Pressure-jump face " + std::to_string(fi.
id()) +
51 " lies on more than one boundary of this model.");
64 bool elem_has_boundary =
false;
65 bool neighbor_has_boundary =
false;
70 elem_has_boundary =
true;
77 neighbor_has_boundary =
true;
81 if (elem_has_boundary != neighbor_has_boundary)
82 return elem_has_boundary;
84 return fi.
elem().subdomain_id() <= fi.
neighbor().subdomain_id();
const ExecFlagType EXEC_NONE
void addAvailableFlags(const ExecFlagType &flag, Args... flags)
unsigned int neighborSideID() const
const std::set< BoundaryID > & boundaryIDs() const
const Elem & elem() const
const Elem * neighborPtr() const
unsigned int elemSideID() const
const Elem * elemPtr() const
const Elem & neighbor() const
static InputParameters validParams()
const T & getParam(const std::string &name) const
std::vector< BoundaryID > getBoundaryIDs(const Elem *const elem, const unsigned short int side) const
static InputParameters validParams()
std::unordered_set< BoundaryID > _boundary_ids
Boundary IDs on which this pressure-jump model applies.
MooseMesh & _moose_mesh
Mesh used to resolve boundary names and determine pressure-jump orientation.
static InputParameters validParams()
Return the input parameters shared by pressure-jump models.
bool elemIsOwner(const FaceInfo &fi) const
Return whether the FaceInfo element is the oriented owner of the pressure jump.
PressureJumpModel(const InputParameters ¶ms)
Construct a pressure-jump model for the configured boundaries.
bool appliesTo(const FaceInfo &fi) const
Return whether this model applies to a face.