46 os <<
"|ElementUserObject";
48 os <<
"|SideUserObject";
50 os <<
"|InternalSideUserObject";
52 os <<
"|NodalUserObject";
54 os <<
"|GeneralUserObject";
56 os <<
"|ThreadedGeneralUserObject";
58 os <<
"|ShapeElementUserObject";
60 os <<
"|ShapeSideUserObject";
62 os <<
"|Postprocessor";
64 os <<
"|VectorPostprocessor";
66 os <<
"|InterfaceUserObject";
70 os <<
"|DomainUserObject";
72 os <<
"|MortarUserObject";
74 os <<
"|FVInterpolationMethod";
85 if (a->_vals.size() == 0)
89 for (
auto val :
_vals)
90 if (std::find(a->_vals.begin(), a->_vals.end(), val) != a->_vals.end())
99 if (!a || a->_vals.size() !=
_vals.size())
102 for (
size_t i = 0; i < a->_vals.size(); i++)
103 if (a->_vals[i] !=
_vals[i])
115 for (
auto & tag : t->getMatrixTags({}))
116 _vals.push_back(
static_cast<int>(tag));
127 for (
auto & tag : t->getVectorTags({}))
128 _vals.push_back(
static_cast<int>(tag));
138 const auto & current_items = sup->getExecuteOnEnum();
139 _vals.reserve(current_items.size());
140 for (
auto & on : current_items)
149 if (!a || a->_vals.empty())
151 auto cond = a->
_vals[0];
155 for (
const auto val :
_vals)
165 if (!a || a->_vals.size() !=
_vals.size())
168 for (
size_t i = 0; i < a->_vals.size(); i++)
169 if (a->_vals[i] !=
_vals[i])
179 if (blk && blk->blockRestricted())
181 for (
auto id : blk->blockIDs())
192 if (!a || a->_vals.size() < 1)
195 auto cond = a->
_vals[0];
201 for (
auto id :
_vals)
213 if (!a || a->_vals.size() !=
_vals.size())
216 for (
size_t i = 0; i < a->_vals.size(); i++)
217 if (a->_vals[i] !=
_vals[i])
227 if (bnd && bnd->boundaryRestricted())
229 for (
auto & bound : bnd->boundaryIDs())
230 _vals.push_back(bound);
240 if (!a || a->_vals.size() < 1)
244 for (
auto val :
_vals)
248 if (std::find(a->_vals.begin(), a->_vals.end(), val) != a->_vals.end())
260 if (!a || a->_vals.size() !=
_vals.size())
263 for (
size_t i = 0; i < a->_vals.size(); i++)
264 if (a->_vals[i] !=
_vals[i])
278 return a && (a->_val ==
_val);
290 _val = uo ? uo->
getParam<
int>(
"execution_order_group") : 0;
296 return a && (a->_val ==
_val);
317 return a && (a->_val ==
_val);
333 auto a =
dynamic_cast<const AttribPreIC *
>(&other);
334 return a && (a->_val ==
_val);
346 const auto a =
dynamic_cast<const AttribPreAux *
>(&other);
348 bool is_match =
false;
350 if (a && !
_vals.empty() && !a->_vals.empty())
352 is_match = std::includes(
_vals.begin(),
_vals.end(), a->_vals.begin(), a->_vals.end()) ||
353 std::includes(a->_vals.begin(), a->_vals.end(),
_vals.begin(),
_vals.end());
362 const auto a =
dynamic_cast<const AttribPreAux *
>(&other);
376 bool is_match =
false;
378 if (a && !
_vals.empty() && !a->_vals.empty())
380 is_match = std::includes(
_vals.begin(),
_vals.end(), a->_vals.begin(), a->_vals.end()) ||
381 std::includes(a->_vals.begin(), a->_vals.end(),
_vals.begin(),
_vals.end());
407 auto a =
dynamic_cast<const AttribName *
>(&other);
408 return a && (a->_val ==
_val);
427 return a && (a->_val ==
_val);
439#ifdef MOOSE_KOKKOS_ENABLED
442 static_cast<void>(obj);
451 return a && (a->_val ==
_val);
485 _val =
static_cast<int>(vi->mooseVariableBase()->number());
490 auto a =
dynamic_cast<const AttribVar *
>(&other);
491 return a && (
_val != -1) && (a->_val ==
_val);
530 return a && (a->_val &
_val);
537 return a && (a->_val ==
_val);
544 obj->
getParam<
bool>(
"use_displaced_mesh");
551 return a && (a->_val ==
_val);
std::ostream & operator<<(std::ostream &os, Interfaces &iface)
@ ThreadedGeneralUserObject
void ErrorVector unsigned int
AttribBoundaries tracks all boundary IDs associated with an object.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
std::vector< BoundaryID > _vals
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
Tracks whether the object is on the displaced mesh.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
static const ExecFlagType EXEC_ALL
Execute flag that is used to represent all flags when querying AttribExecOns.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
TODO: delete this later - it is a temporary hack for dealing with inter-system dependencies.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
TODO: delete this later - it is a temporary hack for dealing with inter-system dependencies.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
TODO: delete this later - it is a temporary hack for dealing with inter-system dependencies.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
Residual objects have this attribute.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
std::vector< SubdomainID > _vals
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
Tracks the libmesh system number that a MooseObject is associated with.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
AttribTagBase tracks all (vector or matrix) tags associated with an object.
std::vector< TagID > _vals
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual bool isEqual(const Attribute &other) const override
isEqual returns true if the meta-data stored in this attribute is identical to that stored in other.
virtual bool isMatch(const Attribute &other) const override
isMatch returns true if the meta-data stored in this attribute is equivalent to that stored in other.
virtual void initFrom(const MooseObject *obj) override
initFrom reads and stores the desired meta-data from obj for later matching comparisons.
Attribute is an abstract class that can be implemented in order to track custom metadata about MooseO...
An interface that restricts an object to subdomains via the 'blocks' input parameter.
/class BoundaryRestrictable /brief Provides functionality for limiting the object to certain boundary...
This user object allows related evaluations on elements, boundaries, internal sides,...
Registered base class for linear FV interpolation objects.
Base class for implementing interface user objects.
Base class for user objects executed on all element sides internal to one or more blocks,...
const InputParameters & parameters() const
Get the parameters of the object.
const std::string & name() const
Get the name of the class.
const T & getParam(const std::string &name) const
Retrieve a parameter for the object.
Class for containing MooseEnum item information.
Every object that can be built by the factory should be derived from this class.
bool isKokkosObject() const
Get whether this object is a Kokkos functor The parameter MooseBase::kokkos_object_param is set by th...
Interface for objects that need to get values of MooseVariables.
Base class for creating new nodally-based mortar user objects.
A user object that runs over all the nodes and does an aggregation step to compute a single value.
Base class for all Postprocessors.
Reporter objects allow for the declaration of arbitrary data types that are aggregate values for a si...
ElementUserObject class in which the _phi and _grad_phi shape function data is available and correctl...
SideUserObject class in which the _phi and _grad_phi shape function data is available and correctly i...
Base class for user objects executed one or more sidesets, which may be on the outer boundary of the ...
Base class for a system (of equations)
unsigned int number() const
Gets the number of this system.
An instance of this object type has one copy per thread that runs on each thread.
Base class for Postprocessors that produce a vector of values.
const SubdomainID ANY_BLOCK_ID
const SubdomainID INVALID_BLOCK_ID
const BoundaryID ANY_BOUNDARY_ID