A class for requiring an object to be boundary restricted. More...
#include <BoundaryRestrictableRequired.h>
Public Types | |
enum | TEST_TYPE { ALL, ANY } |
A flag changing the behavior of hasBoundary. More... | |
Public Member Functions | |
BoundaryRestrictableRequired (const MooseObject *moose_object, bool nodal) | |
BoundaryRestrictableRequired (const BoundaryRestrictableRequired &object, const Moose::Kokkos::FunctorCopy &key) | |
Special constructor used for Kokkos functor copy during parallel dispatch. More... | |
virtual const std::set< BoundaryID > & | boundaryIDs () const |
Return the boundary IDs for this object. More... | |
const std::vector< BoundaryName > & | boundaryNames () const |
Return the boundary names for this object. More... | |
unsigned int | numBoundaryIDs () const |
Return the number of boundaries for this object. More... | |
bool | hasBoundary (const BoundaryName &name) const |
Test if the supplied boundary name is valid for this object. More... | |
bool | hasBoundary (const std::vector< BoundaryName > &names) const |
Test if the supplied vector of boundary names are valid for this object. More... | |
bool | hasBoundary (const BoundaryID &id) const |
Test if the supplied boundary ids are valid for this object. More... | |
bool | hasBoundary (const std::vector< BoundaryID > &ids, TEST_TYPE type=ALL) const |
Test if the supplied vector boundary ids are valid for this object. More... | |
bool | hasBoundary (const std::set< BoundaryID > &ids, TEST_TYPE type=ALL) const |
Test if the supplied set of boundary ids are valid for this object. More... | |
bool | isBoundarySubset (const std::set< BoundaryID > &ids) const |
Test if the class boundary ids are a subset of the supplied objects. More... | |
bool | isBoundarySubset (const std::vector< BoundaryID > &ids) const |
template<typename T , bool is_ad = false> | |
bool | hasBoundaryMaterialProperty (const std::string &prop_name) const |
Check if a material property is valid for all boundaries of this object. More... | |
virtual bool | boundaryRestricted () const |
Returns true if this object has been restricted to a boundary. More... | |
const std::set< BoundaryID > & | meshBoundaryIDs () const |
Returns the set of all boundary ids for the entire mesh. More... | |
virtual bool | checkVariableBoundaryIntegrity () const |
Whether integrity/coverage checking should be conducted for moose variables used in this object. More... | |
Static Public Member Functions | |
static InputParameters | validParams () |
static bool | restricted (const std::set< BoundaryID > &ids) |
Helper for determining if the object is boundary restricted. More... | |
Protected Member Functions | |
bool | hasBoundaryMaterialPropertyHelper (const std::string &prop_name) const |
A helper method to avoid circular #include problems. More... | |
KOKKOS_FUNCTION dof_id_type | numKokkosBoundaryNodes () const |
Get the number of nodes this Kokkos object is operating on. More... | |
KOKKOS_FUNCTION dof_id_type | numKokkosBoundarySides () const |
Get the number of sides this Kokkos object is operating on. More... | |
KOKKOS_FUNCTION ContiguousNodeID | kokkosBoundaryNodeID (ThreadID tid) const |
Get the contiguous node ID this Kokkos thread is operating on. More... | |
KOKKOS_FUNCTION auto | kokkosBoundaryElementSideID (ThreadID tid) const |
Get the contiguous element ID - side index pair this Kokkos thread is operating on. More... | |
A class for requiring an object to be boundary restricted.
This class acts as a wrapper for BoundaryRestrictable, it allows an additional validParams that adds the 'boundary' parameter as required.
Definition at line 21 of file BoundaryRestrictableRequired.h.
|
inherited |
A flag changing the behavior of hasBoundary.
Enumerator | |
---|---|
ALL | |
ANY |
Definition at line 33 of file BoundaryRestrictable.h.
BoundaryRestrictableRequired::BoundaryRestrictableRequired | ( | const MooseObject * | moose_object, |
bool | nodal | ||
) |
Definition at line 31 of file BoundaryRestrictableRequired.C.
BoundaryRestrictableRequired::BoundaryRestrictableRequired | ( | const BoundaryRestrictableRequired & | object, |
const Moose::Kokkos::FunctorCopy & | key | ||
) |
Special constructor used for Kokkos functor copy during parallel dispatch.
Definition at line 38 of file BoundaryRestrictableRequired.C.
|
virtualinherited |
Return the boundary IDs for this object.
Definition at line 197 of file BoundaryRestrictable.C.
Referenced by MaterialBase::getGenericZeroMaterialPropertyByName(), BoundaryRestrictable::hasBoundaryMaterialPropertyHelper(), SidesetInfoVectorPostprocessor::initialize(), SideFVFluxBCIntegral::initialSetup(), InterfaceQpUserObjectBase::initialSetup(), and MaterialBase::registerPropName().
|
inherited |
Return the boundary names for this object.
Definition at line 203 of file BoundaryRestrictable.C.
Referenced by MaterialOutputAction::getParams(), NearestNodeDistanceAux::NearestNodeDistanceAux(), and NearestNodeValueAux::NearestNodeValueAux().
|
virtualinherited |
Returns true if this object has been restricted to a boundary.
Definition at line 215 of file BoundaryRestrictable.C.
Referenced by Moose::Kokkos::Material< KokkosGenericConstantMaterial >::checkMaterialProperty(), Material::checkMaterialProperty(), MaterialOutputAction::getParams(), DerivativeMaterialInterface< MortarScalarBase >::haveMaterialProperty(), and NodePositions::initialize().
|
inlinevirtualinherited |
Whether integrity/coverage checking should be conducted for moose variables used in this object.
This should return true if variables are only evaluated locally, e.g. on the current node or element. This should return false if evaluation of this object entails non-local variable evaluations
Definition at line 190 of file BoundaryRestrictable.h.
|
inherited |
Test if the supplied boundary name is valid for this object.
name | A BoundaryName to check |
Definition at line 227 of file BoundaryRestrictable.C.
Referenced by AuxKernelTempl< Real >::AuxKernelTempl(), BoundaryRestrictable::hasBoundary(), BoundaryRestrictable::hasBoundaryMaterialPropertyHelper(), and NodePositions::initialize().
|
inherited |
Test if the supplied vector of boundary names are valid for this object.
names | A vector of BoundaryNames to check |
Definition at line 235 of file BoundaryRestrictable.C.
|
inherited |
Test if the supplied boundary ids are valid for this object.
id | A BoundaryID to check |
Definition at line 241 of file BoundaryRestrictable.C.
|
inherited |
Test if the supplied vector boundary ids are valid for this object.
ids | A vector of BoundaryIDs ids to check |
type | A flag for the type of matching to perform: ALL requires that all supplied ids must match those of the object; ANY requires that any one of the supplied ids must match those of the object |
Definition at line 250 of file BoundaryRestrictable.C.
|
inherited |
Test if the supplied set of boundary ids are valid for this object.
ids | A std::set of BoundaryIDs to check |
type | A flag for the type of matching to perform: ALL requires that all supplied ids must match those of the object; ANY requires that any one of the supplied ids must match those of the object |
Definition at line 257 of file BoundaryRestrictable.C.
|
inherited |
Check if a material property is valid for all boundaries of this object.
This method returns true if the supplied property name has been declared in a Material object on the boundary ids for this object.
T | The type of material property |
prop_name | the name of the property to query |
Definition at line 295 of file BoundaryRestrictable.h.
|
protectedinherited |
A helper method to avoid circular #include problems.
Definition at line 318 of file BoundaryRestrictable.C.
Referenced by BoundaryRestrictable::hasBoundaryMaterialProperty().
|
inherited |
Test if the class boundary ids are a subset of the supplied objects.
ids | A std::set of boundaries to check |
Definition at line 289 of file BoundaryRestrictable.C.
Referenced by BoundaryRestrictable::isBoundarySubset().
|
inherited |
Definition at line 305 of file BoundaryRestrictable.C.
|
inlineprotectedinherited |
Get the contiguous element ID - side index pair this Kokkos thread is operating on.
tid | The thread ID |
Definition at line 273 of file BoundaryRestrictable.h.
|
inlineprotectedinherited |
Get the contiguous node ID this Kokkos thread is operating on.
tid | The thread ID |
Definition at line 264 of file BoundaryRestrictable.h.
|
inherited |
Returns the set of all boundary ids for the entire mesh.
Definition at line 312 of file BoundaryRestrictable.C.
Referenced by BoundaryRestrictable::hasBoundaryMaterialPropertyHelper().
|
inherited |
Return the number of boundaries for this object.
Definition at line 209 of file BoundaryRestrictable.C.
Referenced by SidesetInfoVectorPostprocessor::initialize().
|
inlineprotectedinherited |
Get the number of nodes this Kokkos object is operating on.
Definition at line 250 of file BoundaryRestrictable.h.
|
inlineprotectedinherited |
Get the number of sides this Kokkos object is operating on.
Definition at line 255 of file BoundaryRestrictable.h.
|
staticinherited |
Helper for determining if the object is boundary restricted.
This is needed for the MaterialPropertyInterface.
Definition at line 221 of file BoundaryRestrictable.C.
Referenced by moose::internal::boundaryRestricted(), and BoundaryRestrictable::boundaryRestricted().
|
static |
Definition at line 14 of file BoundaryRestrictableRequired.C.
Referenced by InterfaceUserObjectBase::validParams(), SideUserObject::validParams(), BoundaryCondition::validParams(), LinearFVBoundaryCondition::validParams(), FVInterfaceKernel::validParams(), and FVBoundaryCondition::validParams().