https://mooseframework.inl.gov
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
SideAverageFunctorPostprocessor Class Reference

Computes the average of a functor over a side set. More...

#include <SideAverageFunctorPostprocessor.h>

Inheritance diagram for SideAverageFunctorPostprocessor:
[legend]

Public Types

using DataFileParameterType = DataFileName
 The parameter type this interface expects for a data file name. More...
 
enum  TEST_TYPE { ALL, ANY }
 A flag changing the behavior of hasBoundary. More...
 
using FunctorType = FunctorBase< Real >
 
using ValueType = Real
 
using GradientType = typename FunctorReturnType< Real, FunctorEvaluationKind::Gradient >::type
 This rigmarole makes it so that a user can create functors that return containers (std::vector, std::array). More...
 
using DotType = ValueType
 

Public Member Functions

 SideAverageFunctorPostprocessor (const InputParameters &parameters)
 
virtual void initialize () override
 Called before execute() is ever called so that data can be cleared. More...
 
virtual void execute () override
 Execute method. More...
 
virtual void finalize () override
 This is called after execute() and after threadJoin()! This is probably where you want to do MPI communication! Finalize is not required for Postprocessor implementations since work may be done in getValue(). More...
 
virtual Real getValue () const override
 This will get called to actually grab the final value the postprocessor has calculated. More...
 
virtual void threadJoin (const UserObject &y) override
 Must override. More...
 
bool hasFaceSide (const FaceInfo &fi, const bool fi_elem_side) const override
 
virtual void initialSetup () override
 Gets called at the beginning of the simulation before this object is asked to do its job. More...
 
SubProblemgetSubProblem () const
 Returns a reference to the subproblem that this postprocessor is tied to. More...
 
bool shouldDuplicateInitialExecution () const
 Returns whether or not this user object should be executed twice during the initial condition when depended upon by an IC. More...
 
virtual Real spatialValue (const Point &) const
 Optional interface function for "evaluating" a UserObject at a spatial position. More...
 
virtual const std::vector< Point > spatialPoints () const
 Optional interface function for providing the points at which a UserObject attains spatial values. More...
 
template<typename T >
void gatherSum (T &value)
 Gather the parallel sum of the variable passed in. More...
 
template<typename T >
void gatherMax (T &value)
 Gather the parallel max of the variable passed in. More...
 
template<typename T >
void gatherMin (T &value)
 Gather the parallel min of the variable passed in. More...
 
template<typename T1 , typename T2 >
void gatherProxyValueMax (T1 &proxy, T2 &value)
 Deteremine the value of a variable according to the parallel maximum of the provided proxy. More...
 
template<typename T1 , typename T2 >
void gatherProxyValueMin (T1 &proxy, T2 &value)
 Determine the value of a variable according to which process has the parallel minimum of the provided proxy. More...
 
void setPrimaryThreadCopy (UserObject *primary)
 
UserObjectprimaryThreadCopy ()
 
std::set< UserObjectName > getDependObjects () const
 Recursively return a set of user objects this user object depends on Note: this can be called only after all user objects are constructed. More...
 
virtual bool needThreadedCopy () const
 Whether or not a threaded copy of this object is needed when obtaining it in another object, like via the UserObjectInterface. More...
 
const std::set< std::string > & getRequestedItems () override
 Return a set containing the names of items requested by the object. More...
 
const std::set< std::string > & getSuppliedItems () override
 Return a set containing the names of items owned by the object. More...
 
unsigned int systemNumber () const
 
virtual bool enabled () const
 Return the enabled status of the object. More...
 
std::shared_ptr< MooseObjectgetSharedPtr ()
 Get another shared pointer to this object that has the same ownership group. More...
 
std::shared_ptr< const MooseObjectgetSharedPtr () const
 
MooseAppgetMooseApp () const
 Get the MooseApp this class is associated with. More...
 
const std::string & type () const
 Get the type of this class. More...
 
virtual const std::string & name () const
 Get the name of the class. More...
 
std::string typeAndName () const
 Get the class's combined type and name; useful in error handling. More...
 
std::string errorPrefix (const std::string &error_type) const
 
void callMooseError (std::string msg, const bool with_prefix) const
 Calls moose error with the message msg. More...
 
MooseObjectParameterName uniqueParameterName (const std::string &parameter_name) const
 The unique parameter name of a valid parameter of this object for accessing parameter controls. More...
 
const InputParametersparameters () const
 Get the parameters of the object. More...
 
MooseObjectName uniqueName () const
 The unique name for accessing input parameters of this object in the InputParameterWarehouse. More...
 
template<typename T >
const T & getParam (const std::string &name) const
 Retrieve a parameter for the object. More...
 
template<typename T1 , typename T2 >
std::vector< std::pair< T1, T2 > > getParam (const std::string &param1, const std::string &param2) const
 Retrieve two parameters and provide pair of parameters for the object. More...
 
template<typename T >
const T & getRenamedParam (const std::string &old_name, const std::string &new_name) const
 Retrieve a renamed parameter for the object. More...
 
template<typename T >
getCheckedPointerParam (const std::string &name, const std::string &error_string="") const
 Verifies that the requested parameter exists and is not NULL and returns it to the caller. More...
 
bool isParamValid (const std::string &name) const
 Test if the supplied parameter is valid. More...
 
bool isParamSetByUser (const std::string &nm) const
 Test if the supplied parameter is set by a user, as opposed to not set or set to default. More...
 
template<typename... Args>
void paramError (const std::string &param, Args... args) const
 Emits an error prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message. More...
 
template<typename... Args>
void paramWarning (const std::string &param, Args... args) const
 Emits a warning prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message. More...
 
template<typename... Args>
void paramInfo (const std::string &param, Args... args) const
 Emits an informational message prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message. More...
 
void connectControllableParams (const std::string &parameter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const
 Connect controllable parameter of this action with the controllable parameters of the objects added by this action. More...
 
template<typename... Args>
void mooseError (Args &&... args) const
 Emits an error prefixed with object name and type. More...
 
template<typename... Args>
void mooseErrorNonPrefixed (Args &&... args) const
 Emits an error without the prefixing included in mooseError(). More...
 
template<typename... Args>
void mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const
 Emits a documented error with object name and type. More...
 
template<typename... Args>
void mooseWarning (Args &&... args) const
 Emits a warning prefixed with object name and type. More...
 
template<typename... Args>
void mooseWarningNonPrefixed (Args &&... args) const
 Emits a warning without the prefixing included in mooseWarning(). More...
 
template<typename... Args>
void mooseDeprecated (Args &&... args) const
 
template<typename... Args>
void mooseInfo (Args &&... args) const
 
const Parallel::Communicatorcomm () const
 
processor_id_type n_processors () const
 
processor_id_type processor_id () const
 
std::string getDataFileName (const std::string &param) const
 Deprecated method. More...
 
std::string getDataFileNameByName (const std::string &relative_path) const
 Deprecated method. More...
 
std::string getDataFilePath (const std::string &relative_path) const
 Returns the path of a data file for a given relative file path. More...
 
virtual void timestepSetup ()
 Gets called at the beginning of the timestep before this object is asked to do its job. More...
 
virtual void timestepSetup () override
 
virtual void jacobianSetup ()
 Gets called just before the Jacobian is computed and before this object is asked to do its job. More...
 
virtual void jacobianSetup () override
 
virtual void residualSetup ()
 Gets called just before the residual is computed and before this object is asked to do its job. More...
 
virtual void residualSetup () override
 
virtual void subdomainSetup ()
 Gets called when the subdomain changes (i.e. More...
 
virtual void customSetup (const ExecFlagType &)
 Gets called in FEProblemBase::execute() for execute flags other than initial, timestep_begin, nonlinear, linear and subdomain. More...
 
virtual void customSetup (const ExecFlagType &exec_type) override
 
const ExecFlagEnumgetExecuteOnEnum () const
 Return the execute on MultiMooseEnum for this object. More...
 
UserObjectName getUserObjectName (const std::string &param_name) const
 
template<class T >
const T & getUserObject (const std::string &param_name, bool is_dependency=true) const
 Get an user object with a given parameter param_name. More...
 
template<class T >
const T & getUserObjectByName (const UserObjectName &object_name, bool is_dependency=true) const
 Get an user object with the name object_name. More...
 
const UserObjectgetUserObjectBase (const std::string &param_name, bool is_dependency=true) const
 Get an user object with a given parameter param_name. More...
 
const UserObjectgetUserObjectBaseByName (const UserObjectName &object_name, bool is_dependency=true) const
 Get an user object with the name object_name. 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...
 
template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & getGenericMaterialProperty (const std::string &name, MaterialData &material_data, const unsigned int state=0)
 Retrieve the generic property named "name" for the specified material_data at state state. More...
 
template<typename T >
const MaterialProperty< T > & getMaterialProperty (const std::string &name, MaterialData &material_data, const unsigned int state=0)
 Retrieve the property named "name" for the specified material_data. More...
 
template<typename T >
const ADMaterialProperty< T > & getADMaterialProperty (const std::string &name, MaterialData &material_data)
 Retrieve the AD property named "name" for the specified material_data. More...
 
template<typename T >
const MaterialProperty< T > & getMaterialPropertyOld (const std::string &name, MaterialData &material_data)
 Retrieve the old property deduced from the name name for the specified material_data. More...
 
template<typename T >
const MaterialProperty< T > & getMaterialPropertyOlder (const std::string &name, MaterialData &material_data)
 Retrieve the older property deduced from the name name for the specified material_data. More...
 
template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & getGenericMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data, const unsigned int state)
 Retrieve the generic property named "name" without any deduction for the specified material_data for state state. More...
 
template<typename T >
const MaterialProperty< T > & getMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data, const unsigned int state=0)
 Retrieve the property named "name" without any deduction for the specified material_data. More...
 
template<typename T >
const ADMaterialProperty< T > & getADMaterialPropertyByName (const MaterialPropertyName &name, MaterialData &material_data)
 Retrieve the AD property named "name" without any deduction for the specified material_data. More...
 
template<typename T >
const MaterialProperty< T > & getMaterialPropertyOldByName (const MaterialPropertyName &name, MaterialData &material_data)
 Retrieve the old property named name without any deduction for the specified material_data. More...
 
template<typename T >
const MaterialProperty< T > & getMaterialPropertyOlderByName (const MaterialPropertyName &name, MaterialData &material_data)
 Retrieve the older property named name without any deduction for the specified material_data. More...
 
template<typename T >
std::pair< const MaterialProperty< T > *, std::set< SubdomainID > > getBlockMaterialProperty (const MaterialPropertyName &name)
 Retrieve pointer to a material property with the mesh blocks where it is defined The name required by this method is the name defined in the input file. More...
 
template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & getGenericZeroMaterialProperty (const std::string &name)
 Return a material property that is initialized to zero by default and does not need to (but can) be declared by another material. More...
 
template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & getGenericZeroMaterialProperty ()
 Return a constant zero anonymous material property. More...
 
template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & getGenericZeroMaterialPropertyByName (const std::string &prop_name)
 
template<typename T , typename... Ts>
const MaterialProperty< T > & getZeroMaterialProperty (Ts... args)
 for backwards compatibility More...
 
std::set< SubdomainIDgetMaterialPropertyBlocks (const std::string &name)
 Retrieve the block ids that the material property is defined. More...
 
std::vector< SubdomainName > getMaterialPropertyBlockNames (const std::string &name)
 Retrieve the block names that the material property is defined. More...
 
std::set< BoundaryIDgetMaterialPropertyBoundaryIDs (const std::string &name)
 Retrieve the boundary ids that the material property is defined. More...
 
std::vector< BoundaryName > getMaterialPropertyBoundaryNames (const std::string &name)
 Retrieve the boundary namess that the material property is defined. More...
 
void checkBlockAndBoundaryCompatibility (std::shared_ptr< MaterialBase > discrete)
 Check if block and boundary restrictions of a given material are compatible with the current material. More...
 
std::unordered_map< SubdomainID, std::vector< MaterialBase * > > buildRequiredMaterials (bool allow_stateful=true)
 get a map of MaterialBase pointers for all material objects that this object depends on for each block More...
 
void statefulPropertiesAllowed (bool)
 Derived classes can declare whether or not they work with stateful material properties. More...
 
bool getMaterialPropertyCalled () const
 Returns true if getMaterialProperty() has been called, false otherwise. More...
 
const std::unordered_set< unsigned int > & getMatPropDependencies () const
 Retrieve the set of material properties that this object depends on. More...
 
virtual void resolveOptionalProperties ()
 resolve all optional properties More...
 
template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & getPossiblyConstantGenericMaterialPropertyByName (const MaterialPropertyName &prop_name, MaterialData &material_data, const unsigned int state)
 Retrieve the generic property named "prop_name" without any deduction for the specified material_data for state state. More...
 
virtual const VariableValuecoupledValueByName (const std::string &var_name)
 Returns value of a coupled variable give the variable name. More...
 
virtual const ArrayVariableValuecoupledArrayValueByName (const std::string &var_name)
 Returns value of a coupled array variable give the variable name. More...
 
const std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > & getCoupledVars () const
 Get the list of coupled variables. More...
 
const std::vector< MooseVariableFieldBase * > & getCoupledMooseVars () const
 Get the list of all coupled variables. More...
 
const std::vector< MooseVariable * > & getCoupledStandardMooseVars () const
 Get the list of standard coupled variables. More...
 
const std::vector< VectorMooseVariable * > & getCoupledVectorMooseVars () const
 Get the list of vector coupled variables. More...
 
const std::vector< ArrayMooseVariable * > & getCoupledArrayMooseVars () const
 Get the list of array coupled variables. More...
 
void addFEVariableCoupleableVectorTag (TagID tag)
 
void addFEVariableCoupleableMatrixTag (TagID tag)
 
std::set< TagID > & getFEVariableCoupleableVectorTags ()
 
const std::set< TagID > & getFEVariableCoupleableVectorTags () const
 
std::set< TagID > & getFEVariableCoupleableMatrixTags ()
 
const std::set< TagID > & getFEVariableCoupleableMatrixTags () const
 
auto & getWritableCoupledVariables () const
 returns a reference to the set of writable coupled variables More...
 
bool hasWritableCoupledVariables () const
 Checks whether the object has any writable coupled variables. More...
 
const ADVariableValuegetADDefaultValue (const std::string &var_name) const
 Helper method to return (and insert if necessary) the default value for Automatic Differentiation for an uncoupled variable. More...
 
const ADVectorVariableValuegetADDefaultVectorValue (const std::string &var_name) const
 Helper method to return (and insert if necessary) the default vector value for Automatic Differentiation for an uncoupled variable. More...
 
const ADVariableGradientgetADDefaultGradient () const
 Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation for an uncoupled variable. More...
 
const ADVectorVariableGradientgetADDefaultVectorGradient () const
 Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation for an uncoupled vector variable. More...
 
const ADVariableSecondgetADDefaultSecond () const
 Helper method to return (and insert if necessary) the default second derivatives for Automatic Differentiation for an uncoupled variable. More...
 
const ADVectorVariableCurlgetADDefaultCurl () const
 Helper method to return (and insert if necessary) the default curl value for Automatic Differentiation for an uncoupled variable. More...
 
const std::vector< MooseVariableScalar * > & getCoupledMooseScalarVars ()
 Get the list of coupled scalar variables. More...
 
const std::set< TagID > & getScalarVariableCoupleableVectorTags () const
 
const std::set< TagID > & getScalarVariableCoupleableMatrixTags () const
 
const std::set< MooseVariableFieldBase * > & getMooseVariableDependencies () const
 Retrieve the set of MooseVariableFieldBase that this object depends on. More...
 
template<typename DofObjectType >
std::set< MooseVariableFieldBase * > checkAllVariables (const DofObjectType &dof_object, const std::set< MooseVariableFieldBase *> &vars_to_omit={})
 Check whether all of the variable dependencies have degree of freedom indices on the supplied degree of freedom object. More...
 
template<typename DofObjectType >
std::set< MooseVariableFieldBase * > checkVariables (const DofObjectType &dof_object, const std::set< MooseVariableFieldBase *> &vars_to_check)
 Check whether all of the supplied variables have degree of freedom indices on the supplied degree of freedom object. More...
 
bool isImplicit ()
 
Moose::StateArg determineState () const
 Create a functor state argument that corresponds to the implicit state of this object. More...
 
virtual unsigned int getElementIDIndex (const std::string &id_parameter_name, unsigned int comp=0) const
 Gets index of an element integer with a parameter of the object derived from this interface. More...
 
virtual unsigned int getElementIDIndexByName (const std::string &id_name) const
 Return the accessing integer for an extra element integer with its name. More...
 
virtual const dof_id_typegetElementID (const std::string &id_parameter_name, unsigned int comp=0) const
 Gets an element integer with a parameter of the object derived from this interface. More...
 
dof_id_type getElementID (const Elem *elem, unsigned int elem_id_index) const
 Get an element integer for an element. More...
 
virtual const dof_id_typegetElementIDNeighbor (const std::string &id_parameter_name, unsigned int comp=0) const
 Gets a neighbor element integer with a parameter of the object derived from this interface. More...
 
virtual const dof_id_typegetElementIDByName (const std::string &id_name) const
 Gets an element integer with the element integer name. More...
 
virtual const dof_id_typegetElementIDNeighborByName (const std::string &id_name) const
 Gets a neighbor element integer with the element integer name. More...
 
bool hasElementID (const std::string &id_name) const
 Whether mesh has an element integer with a given name. More...
 
dof_id_type maxElementID (unsigned int elem_id_index) const
 Return the maximum element ID for an element integer with its index. More...
 
dof_id_type minElementID (unsigned int elem_id_index) const
 Return the minimum element ID for an element integer with its index. More...
 
bool areElemIDsIdentical (const std::string &id_name1, const std::string &id_name2) const
 Whether two element integers are identical for all elements. More...
 
std::unordered_map< dof_id_type, std::set< dof_id_type > > getElemIDMapping (const std::string &id_name1, const std::string &id_name2) const
 Get the mapping from IDs of one extra element integer to another given the two integer names. More...
 
std::set< dof_id_typegetAllElemIDs (unsigned int elem_id_index) const
 Return all the unique element IDs for an element integer with its index on the entire domain. More...
 
std::set< dof_id_typegetElemIDsOnBlocks (unsigned int elem_id_index, const std::set< SubdomainID > &blks) const
 Return all the unique element IDs for an extra element integer with its index on a set of subdomains. More...
 
const PostprocessorValuegetCurrentValue () const
 
const std::string & PPName () const
 Returns the name of the Postprocessor. More...
 
virtual bool hasBlocks (SubdomainID) const override
 Returns whether the functor is defined on this block. More...
 
bool supportsFaceArg () const override final
 Whether this functor supports evaluation with FaceArg. More...
 
bool supportsElemSideQpArg () const override final
 Whether this functor supports evaluation with ElemSideQpArg. More...
 
void buildOutputHideVariableList (std::set< std::string > variable_names)
 Builds hide lists for output objects NOT listed in the 'outputs' parameter. More...
 
const std::set< OutputName > & getOutputs ()
 Get the list of output objects that this class is restricted. More...
 
FunctorReturnType< Real, FET >::type genericEvaluate (const Space &r, const State &state) const
 Perform a generic evaluation based on the supplied template argument FET and supplied spatial and temporal arguments. More...
 
const MooseFunctorName & functorName () const
 Return the functor name. More...
 
void setCacheClearanceSchedule (const std::set< ExecFlagType > &clearance_schedule)
 Set how often to clear the functor evaluation cache. More...
 
virtual bool isExtrapolatedBoundaryFace (const FaceInfo &, const Elem *, const StateArg &) const
 Returns whether this (sided) face is an extrapolated boundary face for this functor. More...
 
bool isInternalFace (const FaceInfo &) const
 Returns true if the face is an internal face. More...
 
virtual bool isConstant () const
 Returns true if this functor is a constant. More...
 
void checkFace (const Moose::FaceArg &face) const
 Examines the incoming face argument. More...
 
Moose::FaceArg makeFace (const FaceInfo &fi, const Moose::FV::LimiterType limiter_type, const bool elem_is_upwind, const bool correct_skewness=false, const Moose::StateArg *state_limiter=nullptr) const
 Create a functor face argument from provided component arguments. More...
 
Moose::FaceArg makeCDFace (const FaceInfo &fi, const bool correct_skewness=false) const
 Make a functor face argument with a central differencing limiter, e.g. More...
 
bool hasUserObject (const std::string &param_name) const
 
template<class T >
bool hasUserObject (const std::string &param_name) const
 
bool hasUserObjectByName (const UserObjectName &object_name) const
 
template<class T >
bool hasUserObjectByName (const UserObjectName &object_name) const
 
template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & getGenericMaterialProperty (const std::string &name, const unsigned int state=0)
 Retrieve reference to material property or one of it's old or older values. More...
 
template<typename T >
const MaterialProperty< T > & getMaterialProperty (const std::string &name, const unsigned int state=0)
 
template<typename T >
const ADMaterialProperty< T > & getADMaterialProperty (const std::string &name)
 
template<typename T >
const MaterialProperty< T > & getMaterialPropertyOld (const std::string &name)
 
template<typename T >
const MaterialProperty< T > & getMaterialPropertyOlder (const std::string &name)
 
template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & getGenericMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0)
 Retrieve reference to material property or its old or older value The name required by this method is the name defined in the input file. More...
 
template<typename T >
const MaterialProperty< T > & getMaterialPropertyByName (const MaterialPropertyName &name, const unsigned int state=0)
 
template<typename T >
const ADMaterialProperty< T > & getADMaterialPropertyByName (const MaterialPropertyName &name)
 
template<typename T >
const MaterialProperty< T > & getMaterialPropertyOldByName (const MaterialPropertyName &name)
 
template<typename T >
const MaterialProperty< T > & getMaterialPropertyOlderByName (const MaterialPropertyName &name)
 
template<typename T , bool is_ad>
const GenericOptionalMaterialProperty< T, is_ad > & getGenericOptionalMaterialProperty (const std::string &name, const unsigned int state=0)
 
template<typename T >
const OptionalMaterialProperty< T > & getOptionalMaterialProperty (const std::string &name, const unsigned int state=0)
 
template<typename T >
const OptionalADMaterialProperty< T > & getOptionalADMaterialProperty (const std::string &name)
 
template<typename T >
const OptionalMaterialProperty< T > & getOptionalMaterialPropertyOld (const std::string &name)
 
template<typename T >
const OptionalMaterialProperty< T > & getOptionalMaterialPropertyOlder (const std::string &name)
 
MaterialBasegetMaterial (const std::string &name)
 Return a MaterialBase reference - usable for computing directly. More...
 
MaterialBasegetMaterialByName (const std::string &name, bool no_warn=false)
 
template<typename T >
bool hasMaterialProperty (const std::string &name)
 Check if the material property exists. More...
 
template<typename T >
bool hasMaterialPropertyByName (const std::string &name)
 
template<typename T >
bool hasADMaterialProperty (const std::string &name)
 
template<typename T >
bool hasADMaterialPropertyByName (const std::string &name)
 
template<typename T , bool is_ad>
bool hasGenericMaterialProperty (const std::string &name)
 generic hasMaterialProperty helper More...
 
template<typename T , bool is_ad>
bool hasGenericMaterialPropertyByName (const std::string &name)
 
ValueType operator() (const ElemArg &elem, const StateArg &state) const
 Same as their evaluate overloads with the same arguments but allows for caching implementation. More...
 
ValueType operator() (const FaceArg &face, const StateArg &state) const
 
ValueType operator() (const ElemQpArg &qp, const StateArg &state) const
 
ValueType operator() (const ElemSideQpArg &qp, const StateArg &state) const
 
ValueType operator() (const ElemPointArg &elem_point, const StateArg &state) const
 
ValueType operator() (const NodeArg &node, const StateArg &state) const
 
GradientType gradient (const ElemArg &elem, const StateArg &state) const
 Same as their evaluateGradient overloads with the same arguments but allows for caching implementation. More...
 
GradientType gradient (const FaceArg &face, const StateArg &state) const
 
GradientType gradient (const ElemQpArg &qp, const StateArg &state) const
 
GradientType gradient (const ElemSideQpArg &qp, const StateArg &state) const
 
GradientType gradient (const ElemPointArg &elem_point, const StateArg &state) const
 
GradientType gradient (const NodeArg &node, const StateArg &state) const
 
DotType dot (const ElemArg &elem, const StateArg &state) const
 Same as their evaluateDot overloads with the same arguments but allows for caching implementation. More...
 
DotType dot (const FaceArg &face, const StateArg &state) const
 
DotType dot (const ElemQpArg &qp, const StateArg &state) const
 
DotType dot (const ElemSideQpArg &qp, const StateArg &state) const
 
DotType dot (const ElemPointArg &elem_point, const StateArg &state) const
 
DotType dot (const NodeArg &node, const StateArg &state) const
 
GradientType gradDot (const ElemArg &elem, const StateArg &state) const
 Same as their evaluateGradDot overloads with the same arguments but allows for caching implementation. More...
 
GradientType gradDot (const FaceArg &face, const StateArg &state) const
 
GradientType gradDot (const ElemQpArg &qp, const StateArg &state) const
 
GradientType gradDot (const ElemSideQpArg &qp, const StateArg &state) const
 
GradientType gradDot (const ElemPointArg &elem_point, const StateArg &state) const
 
GradientType gradDot (const NodeArg &node, const StateArg &state) const
 

Static Public Member Functions

static InputParameters validParams ()
 
template<typename T >
static void sort (typename std::vector< T > &vector)
 Given a vector, sort using the getRequested/SuppliedItems sets. More...
 
template<typename T >
static void sortDFS (typename std::vector< T > &vector)
 Given a vector, sort using the depth-first search. More...
 
template<typename T , typename T2 >
static void cyclicDependencyError (CyclicDependencyException< T2 > &e, const std::string &header)
 A helper method for cyclic errors. More...
 
static bool restricted (const std::set< BoundaryID > &ids)
 Helper for determining if the object is boundary restricted. More...
 
static std::string deduceFunctorName (const std::string &name, const InputParameters &params)
 Helper to look up a functor name through the input parameter keys. More...
 

Public Attributes

const ConsoleStream _console
 An instance of helper class to write streams to the Console objects. More...
 

Static Public Attributes

static constexpr PropertyValue::id_type default_property_id
 The material property ID for a default (parsed from input) property. More...
 
static constexpr PropertyValue::id_type zero_property_id = PropertyValue::invalid_property_id - 2
 The material property ID for a zero property. More...
 

Protected Member Functions

virtual Real computeFaceInfoIntegral (const FaceInfo *fi) override
 Compute contribution from an element face, either on a boundary or between two active elements. More...
 
Real computeQpIntegral () override
 
bool checkFunctorDefinedOnSideBlock () const
 Check if the functor and the prefactor are defined on the primary block by the sideset. More...
 
void errorFunctorNotDefinedOnSideBlock () const
 Error with a helpful message if the functor is not defined on the primary block by the sideset. More...
 
void errorNoFaceInfo () const override
 Error method to call when face info is needed but not available. More...
 
virtual Real computeIntegral ()
 
void getFaceInfos ()
 Computes the local FaceInfo(s) to use in functor arguments and interpolations. More...
 
virtual void addPostprocessorDependencyHelper (const PostprocessorName &name) const override
 Helper for deriving classes to override to add dependencies when a Postprocessor is requested. More...
 
virtual void addVectorPostprocessorDependencyHelper (const VectorPostprocessorName &name) const override
 Helper for deriving classes to override to add dependencies when a VectorPostprocessor is requested. More...
 
virtual void addUserObjectDependencyHelper (const UserObject &uo) const override
 Helper for deriving classes to override to add dependencies when a UserObject is requested. More...
 
void addReporterDependencyHelper (const ReporterName &reporter_name) override
 A method that can be overridden to update the UO dependencies. More...
 
const FunctiongetFunction (const std::string &name) const
 Get a function with a given name. More...
 
const FunctiongetFunctionByName (const FunctionName &name) const
 Get a function with a given name. More...
 
bool hasFunction (const std::string &param_name) const
 Determine if the function exists. More...
 
bool hasFunctionByName (const FunctionName &name) const
 Determine if the function exists. More...
 
bool isDefaultPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 Determine whether or not the Postprocessor is a default value. More...
 
bool hasPostprocessor (const std::string &param_name, const unsigned int index=0) const
 Determine if the Postprocessor data exists. More...
 
bool hasPostprocessorByName (const PostprocessorName &name) const
 Determine if the Postprocessor data exists. More...
 
std::size_t coupledPostprocessors (const std::string &param_name) const
 Returns number of Postprocessors coupled under parameter name. More...
 
const PostprocessorName & getPostprocessorName (const std::string &param_name, const unsigned int index=0) const
 Get the name of a postprocessor. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name) const
 DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the value of a VectorPostprocessor. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the value of the VectorPostprocessor. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name) const
 DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the old value of a VectorPostprocessor. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the old value of a VectorPostprocessor. More...
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name) const
 Return the scatter value for the post processor. More...
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 Return the scatter value for the post processor. More...
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name) const
 Return the old scatter value for the post processor. More...
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 Return the old scatter value for the post processor. More...
 
bool hasVectorPostprocessor (const std::string &param_name, const std::string &vector_name) const
 Determine if the VectorPostprocessor data exists by parameter. More...
 
bool hasVectorPostprocessor (const std::string &param_name) const
 Determine if the VectorPostprocessor exists by parameter. More...
 
bool hasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 Determine if the VectorPostprocessor data exists by name. More...
 
bool hasVectorPostprocessorByName (const VectorPostprocessorName &name) const
 Determine if the VectorPostprocessor exists by name. More...
 
const VectorPostprocessorName & getVectorPostprocessorName (const std::string &param_name) const
 Get the name of a VectorPostprocessor associated with a parameter. More...
 
const ReporterNamegetReporterName (const std::string &param_name) const
 
template<typename T = Sampler>
T & getSampler (const std::string &name)
 Get a sampler with a given name. More...
 
template<>
SamplergetSampler (const std::string &name)
 
template<typename T = Sampler>
T & getSamplerByName (const SamplerName &name)
 Get a sampler with a given name. More...
 
template<>
SamplergetSamplerByName (const SamplerName &name)
 
template<typename T , typename... Args>
T & declareRestartableData (const std::string &data_name, Args &&... args)
 Declare a piece of data as "restartable" and initialize it. More...
 
template<typename T , typename... Args>
ManagedValue< T > declareManagedRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args)
 Declares a piece of "managed" restartable data and initialize it. More...
 
template<typename T , typename... Args>
const T & getRestartableData (const std::string &data_name) const
 Declare a piece of data as "restartable" and initialize it Similar to declareRestartableData but returns a const reference to the object. More...
 
template<typename T , typename... Args>
T & declareRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args)
 Declare a piece of data as "restartable" and initialize it. More...
 
template<typename T , typename... Args>
T & declareRecoverableData (const std::string &data_name, Args &&... args)
 Declare a piece of data as "recoverable" and initialize it. More...
 
template<typename T , typename... Args>
T & declareRestartableDataWithObjectName (const std::string &data_name, const std::string &object_name, Args &&... args)
 Declare a piece of data as "restartable". More...
 
template<typename T , typename... Args>
T & declareRestartableDataWithObjectNameWithContext (const std::string &data_name, const std::string &object_name, void *context, Args &&... args)
 Declare a piece of data as "restartable". More...
 
std::string restartableName (const std::string &data_name) const
 Gets the name of a piece of restartable data given a data name, adding the system name and object name prefix. More...
 
template<typename T >
const T & getMeshProperty (const std::string &data_name, const std::string &prefix)
 Method for retrieving a property with the given type and name exists in the mesh meta-data store. More...
 
template<typename T >
const T & getMeshProperty (const std::string &data_name)
 
bool hasMeshProperty (const std::string &data_name, const std::string &prefix) const
 
template<typename T >
bool hasMeshProperty (const std::string &data_name, const std::string &prefix) const
 
bool hasMeshProperty (const std::string &data_name) const
 
template<typename T >
bool hasMeshProperty (const std::string &data_name) const
 
std::string meshPropertyName (const std::string &data_name) const
 
virtual void meshChanged ()
 Called on this object when the mesh changes. More...
 
PerfGraphperfGraph ()
 Get the PerfGraph. More...
 
PerfID registerTimedSection (const std::string &section_name, const unsigned int level) const
 Call to register a named section for timing. More...
 
PerfID registerTimedSection (const std::string &section_name, const unsigned int level, const std::string &live_message, const bool print_dots=true) const
 Call to register a named section for timing. More...
 
std::string timedSectionName (const std::string &section_name) const
 
bool hasBoundaryMaterialPropertyHelper (const std::string &prop_name) const
 A helper method to avoid circular #include problems. More...
 
virtual void checkMaterialProperty (const std::string &name, const unsigned int state)
 A helper method for checking material properties This method was required to avoid a compiler problem with the template getMaterialProperty method. More...
 
void markMatPropRequested (const std::string &)
 A proxy method for _mi_feproblem.markMatPropRequested(name) More...
 
MaterialPropertyName getMaterialPropertyName (const std::string &name) const
 
void checkExecutionStage ()
 Check and throw an error if the execution has progressed past the construction stage. More...
 
virtual void coupledCallback (const std::string &, bool) const
 A call-back function provided by the derived object for actions before coupling a variable with functions such as coupledValue. More...
 
virtual bool isCoupled (const std::string &var_name, unsigned int i=0) const
 Returns true if a variables has been coupled as name. More...
 
virtual bool isCoupledConstant (const std::string &var_name) const
 Returns true if a variable passed as a coupled value is really a constant. More...
 
unsigned int coupledComponents (const std::string &var_name) const
 Number of coupled components. More...
 
VariableName coupledName (const std::string &var_name, unsigned int comp=0) const
 Names of the variable in the Coupleable interface. More...
 
std::vector< VariableName > coupledNames (const std::string &var_name) const
 Names of the variables in the Coupleable interface. More...
 
virtual unsigned int coupled (const std::string &var_name, unsigned int comp=0) const
 Returns the index for a coupled variable by name. More...
 
std::vector< unsigned intcoupledIndices (const std::string &var_name) const
 Returns the indices for a coupled variable's components. More...
 
virtual const VariableValuecoupledValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled variable. More...
 
std::vector< const VariableValue * > coupledValues (const std::string &var_name) const
 Returns the values for all of a coupled variable components. More...
 
std::vector< const VectorVariableValue * > coupledVectorValues (const std::string &var_name) const
 Returns the values for all of a coupled vector variable's components. More...
 
template<bool is_ad>
const GenericVariableValue< is_ad > & coupledGenericValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled variable for use in templated automatic differentiation classes. More...
 
template<>
const GenericVariableValue< false > & coupledGenericValue (const std::string &var_name, unsigned int comp) const
 
template<>
const GenericVariableValue< true > & coupledGenericValue (const std::string &var_name, unsigned int comp) const
 
template<bool is_ad>
const GenericVectorVariableValue< is_ad > & coupledGenericVectorValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled vector variable for use in templated automatic differentiation classes. More...
 
template<>
const GenericVectorVariableValue< false > & coupledGenericVectorValue (const std::string &var_name, unsigned int comp) const
 
template<>
const GenericVectorVariableValue< true > & coupledGenericVectorValue (const std::string &var_name, unsigned int comp) const
 
template<bool is_ad>
std::vector< const GenericVariableValue< is_ad > * > coupledGenericValues (const std::string &var_name) const
 Returns the values for all of a coupled variable's components for use in templated automatic differentiation classes. More...
 
template<>
std::vector< const GenericVariableValue< false > * > coupledGenericValues (const std::string &var_name) const
 
template<>
std::vector< const GenericVariableValue< true > * > coupledGenericValues (const std::string &var_name) const
 
template<bool is_ad>
const GenericVariableValue< is_ad > & coupledGenericDofValue (const std::string &var_name, unsigned int comp=0) const
 Returns DOF value of a coupled variable for use in templated automatic differentiation classes. More...
 
template<>
const GenericVariableValue< false > & coupledGenericDofValue (const std::string &var_name, unsigned int comp) const
 
template<>
const GenericVariableValue< true > & coupledGenericDofValue (const std::string &var_name, unsigned int comp) const
 
template<bool is_ad>
const GenericVariableValue< is_ad > & coupledGenericDot (const std::string &var_name, unsigned int comp=0) const
 Returns time derivative of a coupled variable for use in templated automatic differentiation classes. More...
 
template<>
const GenericVariableValue< false > & coupledGenericDot (const std::string &var_name, unsigned int comp) const
 
template<>
const GenericVariableValue< true > & coupledGenericDot (const std::string &var_name, unsigned int comp) const
 
template<bool is_ad>
const GenericVariableValue< is_ad > & coupledGenericDotDot (const std::string &var_name, unsigned int comp=0) const
 Returns the second time derivative of a coupled variable for use in templated automatic differentiation classes. More...
 
template<>
const GenericVariableValue< false > & coupledGenericDotDot (const std::string &var_name, unsigned int comp) const
 
template<>
const GenericVariableValue< true > & coupledGenericDotDot (const std::string &var_name, unsigned int comp) const
 
virtual const VariableValuecoupledValueLower (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled lower-dimensional variable. More...
 
const ADVariableValueadCoupledValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled variable for use in Automatic Differentiation. More...
 
std::vector< const ADVariableValue * > adCoupledValues (const std::string &var_name) const
 Returns the values for all of a coupled variable's components for use in Automatic Differentiation. More...
 
const ADVariableValueadCoupledLowerValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled lower-dimensional variable for use in Automatic Differentiation. More...
 
const ADVectorVariableValueadCoupledVectorValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled vector variable for use in Automatic Differentiation. More...
 
std::vector< const ADVectorVariableValue * > adCoupledVectorValues (const std::string &var_name) const
 Returns the values for all of a coupled vector variable's components for use in Automatic Differentiation. More...
 
virtual const VariableValuecoupledVectorTagValue (const std::string &var_names, TagID tag, unsigned int index=0) const
 Returns value of a coupled variable for a given tag. More...
 
virtual const VariableValuecoupledVectorTagValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
std::vector< const VariableValue * > coupledVectorTagValues (const std::string &var_names, TagID tag) const
 Returns the values for all the coupled variables desired for a given tag. More...
 
std::vector< const VariableValue * > coupledVectorTagValues (const std::string &var_names, const std::string &tag_name) const
 
virtual const ArrayVariableValuecoupledVectorTagArrayValue (const std::string &var_names, TagID tag, unsigned int index=0) const
 Returns value of a coupled array variable for a given tag. More...
 
virtual const ArrayVariableValuecoupledVectorTagArrayValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
std::vector< const ArrayVariableValue * > coupledVectorTagArrayValues (const std::string &var_names, TagID tag) const
 Returns the values for all the coupled variables desired for a given tag. More...
 
std::vector< const ArrayVariableValue * > coupledVectorTagArrayValues (const std::string &var_names, const std::string &tag_name) const
 
virtual const VariableGradientcoupledVectorTagGradient (const std::string &var_names, TagID tag, unsigned int index=0) const
 Returns gradient of a coupled variable for a given tag. More...
 
virtual const VariableGradientcoupledVectorTagGradient (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
std::vector< const VariableGradient * > coupledVectorTagGradients (const std::string &var_names, TagID tag) const
 Returns gradients for all the coupled variables desired for a given tag. More...
 
std::vector< const VariableGradient * > coupledVectorTagGradients (const std::string &var_names, const std::string &tag_name) const
 
virtual const ArrayVariableGradientcoupledVectorTagArrayGradient (const std::string &var_names, TagID tag, unsigned int index=0) const
 Returns gradient of a coupled array variable for a given tag. More...
 
virtual const ArrayVariableGradientcoupledVectorTagArrayGradient (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
std::vector< const ArrayVariableGradient * > coupledVectorTagArrayGradients (const std::string &var_names, TagID tag) const
 Returns gradients for all the coupled variables desired for a given tag. More...
 
std::vector< const ArrayVariableGradient * > coupledVectorTagArrayGradients (const std::string &var_names, const std::string &tag_name) const
 
virtual const VariableValuecoupledVectorTagDofValue (const std::string &var_name, TagID tag, unsigned int index=0) const
 Returns dof value of a coupled variable for a given tag. More...
 
virtual const VariableValuecoupledVectorTagDofValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
const ArrayVariableValuecoupledVectorTagArrayDofValue (const std::string &var_name, const std::string &tag_name, unsigned int comp=0) const
 Returns evaluations of a tagged vector at the requested variable's degree of freedom indices. More...
 
std::vector< const VariableValue * > coupledVectorTagDofValues (const std::string &var_names, TagID tag) const
 Returns the dof values for all the coupled variables desired for a given tag. More...
 
std::vector< const VariableValue * > coupledVectorTagDofValues (const std::string &var_names, const std::string &tag_name) const
 
virtual const VariableValuecoupledMatrixTagValue (const std::string &var_names, TagID tag, unsigned int index=0) const
 Returns value of a coupled variable for a given tag. More...
 
virtual const VariableValuecoupledMatrixTagValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
std::vector< const VariableValue * > coupledMatrixTagValues (const std::string &var_names, TagID tag) const
 Returns the diagonal matrix values for all the coupled variables desired for a given tag. More...
 
std::vector< const VariableValue * > coupledMatrixTagValues (const std::string &var_names, const std::string &tag_name) const
 
virtual const VectorVariableValuecoupledVectorValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled vector variable. More...
 
virtual const ArrayVariableValuecoupledArrayValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled array variable. More...
 
std::vector< const ArrayVariableValue * > coupledArrayValues (const std::string &var_name) const
 Returns the values for all of a coupled array variable's components. More...
 
MooseWritableVariablewritableVariable (const std::string &var_name, unsigned int comp=0)
 Returns a writable MooseVariable object for a nodal or elemental variable. More...
 
virtual VariableValuewritableCoupledValue (const std::string &var_name, unsigned int comp=0)
 Returns a writable reference to a coupled variable for writing to multiple AuxVariables from a single AuxKernel or a UserObject. More...
 
void checkWritableVar (MooseWritableVariable *var)
 Checks that the passed in variable is only accessed writable by one object in a given subdomain. More...
 
virtual const VariableValuecoupledValueOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from previous time step of a coupled variable. More...
 
std::vector< const VariableValue * > coupledValuesOld (const std::string &var_name) const
 Returns the old values for all of a coupled variable's components. More...
 
std::vector< const VectorVariableValue * > coupledVectorValuesOld (const std::string &var_name) const
 Returns the old values for all of a coupled vector variable's components. More...
 
virtual const VariableValuecoupledValueOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from two time steps previous of a coupled variable. More...
 
std::vector< const VariableValue * > coupledValuesOlder (const std::string &var_name) const
 Returns the older values for all of a coupled variable's components. More...
 
virtual const VariableValuecoupledValuePreviousNL (const std::string &var_name, unsigned int comp=0) const
 Returns value of previous Newton iterate of a coupled variable. More...
 
virtual const VectorVariableValuecoupledVectorValueOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from previous time step of a coupled vector variable. More...
 
virtual const VectorVariableValuecoupledVectorValueOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from two time steps previous of a coupled vector variable. More...
 
virtual const ArrayVariableValuecoupledArrayValueOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from previous time step of a coupled array variable. More...
 
virtual const ArrayVariableValuecoupledArrayValueOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from two time steps previous of a coupled array variable. More...
 
virtual const VariableGradientcoupledGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled variable. More...
 
std::vector< const VariableGradient * > coupledGradients (const std::string &var_name) const
 Returns the gradients for all of a coupled variable's components. More...
 
const ADVariableGradientadCoupledGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled variable for use in Automatic Differentiation. More...
 
const ADVariableGradientadCoupledGradientDot (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled variable's time derivative for use in Automatic Differentiation. More...
 
std::vector< const ADVariableGradient * > adCoupledGradients (const std::string &var_name) const
 Returns the gradients for all of a coupled variable's components for use in Automatic Differentiation. More...
 
template<bool is_ad>
const GenericVariableGradient< is_ad > & coupledGenericGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled variable for use in templated automatic differentiation. More...
 
template<>
const GenericVariableGradient< false > & coupledGenericGradient (const std::string &var_name, unsigned int comp) const
 
template<>
const GenericVariableGradient< true > & coupledGenericGradient (const std::string &var_name, unsigned int comp) const
 
template<bool is_ad>
std::vector< const GenericVariableGradient< is_ad > * > coupledGenericGradients (const std::string &var_name) const
 Returns the gradients for all of a coupled variable's components for use in templated automatic differentiation. More...
 
template<>
std::vector< const GenericVariableGradient< false > * > coupledGenericGradients (const std::string &var_name) const
 
template<>
std::vector< const GenericVariableGradient< true > * > coupledGenericGradients (const std::string &var_name) const
 
const ADVectorVariableGradientadCoupledVectorGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled vector variable for use in Automatic Differentiation. More...
 
const ADVariableSecondadCoupledSecond (const std::string &var_name, unsigned int comp=0) const
 Returns second derivatives of a coupled variable for use in Automatic Differentiation. More...
 
const ADVectorVariableSecondadCoupledVectorSecond (const std::string &var_name, unsigned int comp=0) const
 Returns second derivatives of a coupled vector variable for use in Automatic Differentiation. More...
 
virtual const VariableGradientcoupledGradientOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from previous time step of a coupled variable. More...
 
std::vector< const VariableGradient * > coupledGradientsOld (const std::string &var_name) const
 Returns the old gradients for all of a coupled variable's components. More...
 
virtual const VariableGradientcoupledGradientOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from two time steps previous of a coupled variable. More...
 
virtual const VariableGradientcoupledGradientPreviousNL (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled variable for previous Newton iterate. More...
 
virtual const VariableGradientcoupledGradientDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of the gradient of a coupled variable. More...
 
virtual const VariableGradientcoupledGradientDotDot (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of the gradient of a coupled variable. More...
 
virtual const VectorVariableGradientcoupledVectorGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled vector variable. More...
 
virtual const VectorVariableGradientcoupledVectorGradientOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from previous time step of a coupled vector variable. More...
 
virtual const VectorVariableGradientcoupledVectorGradientOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from two time steps previous of a coupled vector variable. More...
 
virtual const ArrayVariableGradientcoupledArrayGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled array variable. More...
 
virtual const ArrayVariableGradientcoupledArrayGradientOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from previous time step of a coupled array variable. More...
 
virtual const ArrayVariableGradientcoupledArrayGradientOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from two time steps previous of a coupled array variable. More...
 
virtual const ArrayVariableGradientcoupledArrayGradientDot (const std::string &var_name, unsigned int comp=0) const
 Retun a gradient of a coupled array variable's time derivative. More...
 
virtual const VectorVariableCurlcoupledCurl (const std::string &var_name, unsigned int comp=0) const
 Returns curl of a coupled variable. More...
 
virtual const VectorVariableCurlcoupledCurlOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old curl from previous time step of a coupled variable. More...
 
virtual const VectorVariableCurlcoupledCurlOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old curl from two time steps previous of a coupled variable. More...
 
const ADVectorVariableCurladCoupledCurl (const std::string &var_name, unsigned int comp=0) const
 Returns curl of a coupled variable for use in objects utilizing Automatic Differentiation. More...
 
virtual const VectorVariableDivergencecoupledDiv (const std::string &var_name, unsigned int comp=0) const
 Returns divergence of a coupled variable. More...
 
virtual const VectorVariableDivergencecoupledDivOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old divergence from previous time step of a coupled variable. More...
 
virtual const VectorVariableDivergencecoupledDivOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old divergence from two time steps previous of a coupled variable. More...
 
virtual const VariableSecondcoupledSecond (const std::string &var_name, unsigned int comp=0) const
 Returns second spatial derivatives of a coupled variable. More...
 
virtual const VariableSecondcoupledSecondOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old second spatial derivatives from previous time step of a coupled variable. More...
 
virtual const VariableSecondcoupledSecondOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old second derivative from two time steps previous of a coupled variable. More...
 
virtual const VariableSecondcoupledSecondPreviousNL (const std::string &var_name, unsigned int comp=0) const
 Returns second derivative of a coupled variable for the previous Newton iterate. More...
 
virtual const VariableValuecoupledDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled variable. More...
 
std::vector< const VariableValue * > coupledDots (const std::string &var_name) const
 Returns the time derivatives for all of a coupled variable's components. More...
 
virtual const VariableValuecoupledDotDot (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledDotOld (const std::string &var_name, unsigned int comp=0) const
 Old time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledDotDotOld (const std::string &var_name, unsigned int comp=0) const
 Old second time derivative of a coupled variable. More...
 
const ADVariableValueadCoupledDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled variable for ad simulations. More...
 
std::vector< const ADVariableValue * > adCoupledDots (const std::string &var_name) const
 Returns the time derivatives for all of a coupled variable's components for ad simulations. More...
 
const ADVariableValueadCoupledDotDot (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled variable for ad simulations. More...
 
const ADVectorVariableValueadCoupledVectorDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a vector coupled variable for ad simulations. More...
 
virtual const VectorVariableValuecoupledVectorDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled vector variable. More...
 
virtual const VectorVariableValuecoupledVectorDotDot (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled vector variable. More...
 
virtual const VectorVariableValuecoupledVectorDotOld (const std::string &var_name, unsigned int comp=0) const
 Old time derivative of a coupled vector variable. More...
 
virtual const VectorVariableValuecoupledVectorDotDotOld (const std::string &var_name, unsigned int comp=0) const
 Old second time derivative of a coupled vector variable. More...
 
virtual const VariableValuecoupledVectorDotDu (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled vector variable with respect to the coefficients. More...
 
virtual const VariableValuecoupledVectorDotDotDu (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled vector variable with respect to the coefficients. More...
 
virtual const ArrayVariableValuecoupledArrayDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled array variable. More...
 
virtual const ArrayVariableValuecoupledArrayDotDot (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled array variable. More...
 
virtual const ArrayVariableValuecoupledArrayDotOld (const std::string &var_name, unsigned int comp=0) const
 Old time derivative of a coupled array variable. More...
 
virtual const ArrayVariableValuecoupledArrayDotDotOld (const std::string &var_name, unsigned int comp=0) const
 Old second time derivative of a coupled array variable. More...
 
virtual const VariableValuecoupledDotDu (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled variable with respect to the coefficients. More...
 
virtual const VariableValuecoupledDotDotDu (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled variable with respect to the coefficients. More...
 
const VariableValuecoupledArrayDotDu (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled array variable with respect to the coefficients. More...
 
template<typename T >
const T & coupledNodalValue (const std::string &var_name, unsigned int comp=0) const
 Returns nodal values of a coupled variable. More...
 
template<typename T >
const Moose::ADType< T >::typeadCoupledNodalValue (const std::string &var_name, unsigned int comp=0) const
 Returns AD nodal values of a coupled variable. More...
 
template<typename T >
const T & coupledNodalValueOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old nodal value from previous time step of a coupled variable. More...
 
template<typename T >
const T & coupledNodalValueOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old nodal value from two time steps previous of a coupled variable. More...
 
template<typename T >
const T & coupledNodalValuePreviousNL (const std::string &var_name, unsigned int comp=0) const
 Returns nodal values of a coupled variable for previous Newton iterate. More...
 
template<typename T >
const T & coupledNodalDot (const std::string &var_name, unsigned int comp=0) const
 Nodal values of time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledNodalDotDot (const std::string &var_name, unsigned int comp=0) const
 Nodal values of second time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledNodalDotOld (const std::string &var_name, unsigned int comp=0) const
 Nodal values of old time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledNodalDotDotOld (const std::string &var_name, unsigned int comp=0) const
 Nodal values of old second time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledDofValues (const std::string &var_name, unsigned int comp=0) const
 Returns DoFs in the current solution vector of a coupled variable for the local element. More...
 
std::vector< const VariableValue * > coupledAllDofValues (const std::string &var_name) const
 Returns DoFs in the current solution vector of all of a coupled variable's components for the local element. More...
 
virtual const VariableValuecoupledDofValuesOld (const std::string &var_name, unsigned int comp=0) const
 Returns DoFs in the old solution vector of a coupled variable for the local element. More...
 
std::vector< const VariableValue * > coupledAllDofValuesOld (const std::string &var_name) const
 Returns DoFs in the old solution vector of all of a coupled variable's components for the local element. More...
 
virtual const VariableValuecoupledDofValuesOlder (const std::string &var_name, unsigned int comp=0) const
 Returns DoFs in the older solution vector of a coupled variable for the local element. More...
 
std::vector< const VariableValue * > coupledAllDofValuesOlder (const std::string &var_name) const
 Returns DoFs in the older solution vector of all of a coupled variable's components for the local element. More...
 
virtual const ArrayVariableValuecoupledArrayDofValues (const std::string &var_name, unsigned int comp=0) const
 Returns DoFs in the current solution vector of a coupled array variable for the local element. More...
 
virtual const ADVariableValueadCoupledDofValues (const std::string &var_name, unsigned int comp=0) const
 Returns DOF value of a coupled variable for use in Automatic Differentiation. More...
 
const ADVariableValueadZeroValue () const
 method that returns _zero to RESIDUAL computing objects and _ad_zero to JACOBIAN computing objects More...
 
const ADVariableGradientadZeroGradient () const
 method that returns _grad_zero to RESIDUAL computing objects and _ad_grad_zero to JACOBIAN computing objects More...
 
const ADVariableSecondadZeroSecond () const
 Retrieve a zero second for automatic differentiation. More...
 
template<bool is_ad>
const GenericVariableValue< is_ad > & genericZeroValue ()
 Returns zero value templated with automatic differentiation boolean. More...
 
template<>
const GenericVariableValue< false > & genericZeroValue ()
 
template<>
const GenericVariableValue< true > & genericZeroValue ()
 
template<bool is_ad>
const GenericVariableGradient< is_ad > & genericZeroGradient ()
 Returns zero gradient templated with automatic differentiation boolean. More...
 
template<>
const GenericVariableGradient< false > & genericZeroGradient ()
 
template<>
const GenericVariableGradient< true > & genericZeroGradient ()
 
template<bool is_ad>
const GenericVariableSecond< is_ad > & genericZeroSecond ()
 Returns zero second derivative templated with automatic differentiation boolean. More...
 
template<>
const GenericVariableSecond< false > & genericZeroSecond ()
 
template<>
const GenericVariableSecond< true > & genericZeroSecond ()
 
bool checkVar (const std::string &var_name, unsigned int comp=0, unsigned int comp_bound=0) const
 Check that the right kind of variable is being coupled in. More...
 
const MooseVariableFieldBasegetFEVar (const std::string &var_name, unsigned int comp) const
 Deprecated method. More...
 
const MooseVariableFieldBasegetFieldVar (const std::string &var_name, unsigned int comp) const
 
MooseVariableFieldBasegetFieldVar (const std::string &var_name, unsigned int comp)
 
template<typename T >
const T * getVarHelper (const std::string &var_name, unsigned int comp) const
 Helper that that be used to retrieve a variable of arbitrary type T. More...
 
template<typename T >
T * getVarHelper (const std::string &var_name, unsigned int comp)
 Helper that can be used to retrieve a variable of arbitrary type T. More...
 
MooseVariablegetVar (const std::string &var_name, unsigned int comp)
 Extract pointer to a coupled variable. More...
 
const MooseVariablegetVar (const std::string &var_name, unsigned int comp) const
 Extract pointer to a coupled variable. More...
 
VectorMooseVariablegetVectorVar (const std::string &var_name, unsigned int comp)
 Extract pointer to a coupled vector variable. More...
 
const VectorMooseVariablegetVectorVar (const std::string &var_name, unsigned int comp) const
 Extract pointer to a coupled vector variable. More...
 
ArrayMooseVariablegetArrayVar (const std::string &var_name, unsigned int comp)
 Extract pointer to a coupled array variable. More...
 
const ArrayMooseVariablegetArrayVar (const std::string &var_name, unsigned int comp) const
 Extract pointer to a coupled array variable. More...
 
void validateExecutionerType (const std::string &name, const std::string &fn_name) const
 Checks to make sure that the current Executioner has set "_is_transient" when old/older values are coupled in. More...
 
template<typename T , typename Func >
std::vector< T > coupledVectorHelper (const std::string &var_name, const Func &func) const
 
bool isCoupledScalar (const std::string &var_name, unsigned int i=0) const
 Returns true if a variables has been coupled_as name. More...
 
unsigned int coupledScalarComponents (const std::string &var_name) const
 Return the number of components to the coupled scalar variable. More...
 
unsigned int coupledScalar (const std::string &var_name, unsigned int comp=0) const
 Returns the index for a scalar coupled variable by name. More...
 
libMesh::Order coupledScalarOrder (const std::string &var_name, unsigned int comp=0) const
 Returns the order for a scalar coupled variable by name. More...
 
const VariableValuecoupledScalarValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a scalar coupled variable. More...
 
const ADVariableValueadCoupledScalarValue (const std::string &var_name, unsigned int comp=0) const
 Returns AD value of a scalar coupled variable. More...
 
template<bool is_ad>
const GenericVariableValue< is_ad > & coupledGenericScalarValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled scalar variable for use in templated automatic differentiation classes. More...
 
template<>
const GenericVariableValue< false > & coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const
 
template<>
const GenericVariableValue< true > & coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const
 
const VariableValuecoupledVectorTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const
 Returns value of a scalar coupled variable. More...
 
const VariableValuecoupledMatrixTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const
 Returns value of a scalar coupled variable. More...
 
const VariableValuecoupledScalarValueOld (const std::string &var_name, unsigned int comp=0) const
 Returns the old (previous time step) value of a scalar coupled variable. More...
 
const VariableValuecoupledScalarValueOlder (const std::string &var_name, unsigned int comp=0) const
 Returns the older (two time steps previous) value of a scalar coupled variable. More...
 
const VariableValuecoupledScalarDot (const std::string &var_name, unsigned int comp=0) const
 Returns the time derivative of a scalar coupled variable. More...
 
const ADVariableValueadCoupledScalarDot (const std::string &var_name, unsigned int comp=0) const
 Returns the time derivative of a scalar coupled variable, including its dependence on the nonlinear degrees of freedom through automatic differentiation. More...
 
const VariableValuecoupledScalarDotDot (const std::string &var_name, unsigned int comp=0) const
 Returns the second time derivative of a scalar coupled variable. More...
 
const VariableValuecoupledScalarDotOld (const std::string &var_name, unsigned int comp=0) const
 Returns the old time derivative of a scalar coupled variable. More...
 
const VariableValuecoupledScalarDotDotOld (const std::string &var_name, unsigned int comp=0) const
 Returns the old second time derivative of a scalar coupled variable. More...
 
const VariableValuecoupledScalarDotDu (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a scalar coupled variable with respect to the coefficients. More...
 
const VariableValuecoupledScalarDotDotDu (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a scalar coupled variable with respect to the coefficients. More...
 
const MooseVariableScalargetScalarVar (const std::string &var_name, unsigned int comp) const
 Extract pointer to a scalar coupled variable. More...
 
void addMooseVariableDependency (MooseVariableFieldBase *var)
 Call this function to add the passed in MooseVariableFieldBase as a variable that this object depends on. More...
 
void addMooseVariableDependency (const std::vector< MooseVariableFieldBase *> &vars)
 
std::string deduceFunctorName (const std::string &name) const
 Small helper to look up a functor name through the input parameter keys. More...
 
template<typename T >
const Moose::Functor< T > & getFunctor (const std::string &name)
 Retrieves a functor from the subproblem. More...
 
template<typename T >
const Moose::Functor< T > & getFunctor (const std::string &name, THREAD_ID tid)
 Retrieves a functor from the subproblem. More...
 
template<typename T >
const Moose::Functor< T > & getFunctor (const std::string &name, SubProblem &subproblem)
 Retrieves a functor from the passed-in subproblem. More...
 
template<typename T >
const Moose::Functor< T > & getFunctor (const std::string &name, SubProblem &subproblem, THREAD_ID tid)
 Retrieves a functor from the passed-in subproblem. More...
 
bool isFunctor (const std::string &name) const
 Checks the subproblem for the given functor. More...
 
bool isFunctor (const std::string &name, const SubProblem &subproblem) const
 Checks the passed-in subproblem for the given functor. More...
 
Moose::ElemArg makeElemArg (const Elem *elem, bool correct_skewnewss=false) const
 Helper method to create an elemental argument for a functor that includes whether to perform skewness corrections. More...
 
template<typename T >
void checkFunctorSupportsSideIntegration (const std::string &name, bool qp_integration)
 Throws error if the functor does not support the requested side integration. More...
 
const PostprocessorValuegetPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 doco-normal-methods-begin Retrieve the value of a Postprocessor or one of it's old or older values More...
 
const PostprocessorValuegetPostprocessorValueOld (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValueOlder (const std::string &param_name, const unsigned int index=0) const
 
virtual const PostprocessorValuegetPostprocessorValueByName (const PostprocessorName &name) const
 Retrieve the value of the Postprocessor. More...
 
const PostprocessorValuegetPostprocessorValueOldByName (const PostprocessorName &name) const
 
const PostprocessorValuegetPostprocessorValueOlderByName (const PostprocessorName &name) const
 
bool isVectorPostprocessorDistributed (const std::string &param_name) const
 Return true if the VectorPostprocessor is marked with parallel_type as DISTRIBUTED. More...
 
bool isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const
 
template<typename T >
const T & getReporterValue (const std::string &param_name, const std::size_t time_index=0)
 doco-normal-methods-begin Returns read-only reference to a Reporter value that is provided by an input parameter. More...
 
template<typename T >
const T & getReporterValue (const std::string &param_name, ReporterMode mode, const std::size_t time_index=0)
 
template<typename T >
const T & getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0)
 Returns read-only reference to a Reporter value that is provided by name directly. More...
 
template<typename T >
const T & getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0)
 
bool hasReporterValue (const std::string &param_name) const
 Return True if the Reporter value exists. More...
 
template<typename T >
bool hasReporterValue (const std::string &param_name) const
 
bool hasReporterValueByName (const ReporterName &reporter_name) const
 
template<typename T >
bool hasReporterValueByName (const ReporterName &reporter_name) const
 
const DistributiongetDistribution (const std::string &name) const
 Get a distribution with a given name. More...
 
template<typename T >
const T & getDistribution (const std::string &name) const
 
const DistributiongetDistributionByName (const DistributionName &name) const
 Get a distribution with a given name. More...
 
template<typename T >
const T & getDistributionByName (const std::string &name) const
 
template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > * defaultGenericMaterialProperty (const std::string &name)
 
template<typename T >
const MaterialProperty< T > * defaultMaterialProperty (const std::string &name)
 
template<typename T >
const ADMaterialProperty< T > * defaultADMaterialProperty (const std::string &name)
 
Functor evaluation routines

These methods are all for evaluating functors with different kinds of spatial arguments.

Each of these methods also takes a state argument. For a description of the state argument, please see the StateArg doxygen

virtual GradientType evaluateGradDot (const ElemArg &, const StateArg &) const
 Evaluate the functor gradient-dot with a given element. More...
 
virtual GradientType evaluateGradDot (const FaceArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemSideQpArg &, const StateArg &) const
 
virtual GradientType evaluateGradDot (const ElemPointArg &, const StateArg &) const
 Evaluate the functor gradient-dot with a given element and point. More...
 
virtual GradientType evaluateGradDot (const NodeArg &, const StateArg &) const
 

Static Protected Member Functions

static std::string meshPropertyName (const std::string &data_name, const std::string &prefix)
 

Protected Attributes

Real _area
 Side set area. More...
 
const Moose::Functor< GenericReal< is_ad > > & _functor
 Functor being integrated. More...
 
const Moose::Functor< GenericReal< is_ad > > & _prefactor
 Factor multiplying the functor being integrated. More...
 
const bool _partial_integral
 Whether to skip integrating where the functors are not both defined. More...
 
unsigned int _qp
 The local quadrature point index when computing an integral over quadrature points. More...
 
Real _integral_value
 Holds the postprocessor result, the integral. More...
 
bool _qp_integration
 Whether to integrate over quadrature points or FaceInfos. More...
 
MooseMesh_mesh
 
const MooseArray< Point > & _q_point
 
const QBase *const & _qrule
 
const MooseArray< Real > & _JxW
 
const MooseArray< Real > & _coord
 
const MooseArray< Point > & _normals
 
const Elem *const & _current_elem
 
const unsigned int_current_side
 current side of the current element More...
 
const Elem *const & _current_side_elem
 
const Real_current_side_volume
 
const BoundaryID_current_boundary_id
 
std::vector< const FaceInfo * > _face_infos
 Holds the FaceInfos to loop on to consider all active neighbors of an element on a given side. More...
 
SubProblem_subproblem
 Reference to the Subproblem for this user object. More...
 
FEProblemBase_fe_problem
 Reference to the FEProblemBase for this user object. More...
 
SystemBase_sys
 Reference to the system object for this user object. More...
 
const THREAD_ID _tid
 Thread ID of this postprocessor. More...
 
Assembly_assembly
 
const Moose::CoordinateSystemType_coord_sys
 Coordinate system. More...
 
const bool _duplicate_initial_execution
 
std::set< std::string > _depend_uo
 Depend UserObjects that to be used both for determining user object sorting and by AuxKernel for finding the full UO dependency. More...
 
const bool & _enabled
 Reference to the "enable" InputParameters, used by Controls for toggling on/off MooseObjects. More...
 
MooseApp_app
 The MOOSE application this is associated with. More...
 
const std::string _type
 The type of this class. More...
 
const std::string _name
 The name of this class. More...
 
const InputParameters_pars
 Parameters of this object, references the InputParameters stored in the InputParametersWarehouse. More...
 
Factory_factory
 The Factory associated with the MooseApp. More...
 
ActionFactory_action_factory
 Builds Actions. More...
 
const Parallel::Communicator_communicator
 
const ExecFlagEnum_execute_enum
 Execute settings for this object. More...
 
const ExecFlagType_current_execute_flag
 Reference to FEProblemBase. More...
 
MooseApp_restartable_app
 Reference to the application. More...
 
const std::string _restartable_system_name
 The system name this object is in. More...
 
const THREAD_ID _restartable_tid
 The thread ID for this object. More...
 
const bool _restartable_read_only
 Flag for toggling read only status (see ReporterData) More...
 
FEProblemBase_mci_feproblem
 Reference to FEProblemBase instance. More...
 
MooseApp_pg_moose_app
 The MooseApp that owns the PerfGraph. More...
 
const std::string _prefix
 A prefix to use for all sections. More...
 
const InputParameters_mi_params
 Parameters of the object with this interface. More...
 
const std::string _mi_name
 The name of the object that this interface belongs to. More...
 
const MooseObjectName _mi_moose_object_name
 The "complete" name of the object that this interface belongs for material property output. More...
 
FEProblemBase_mi_feproblem
 Reference to the FEProblemBase class. More...
 
SubProblem_mi_subproblem
 Reference to the subproblem. More...
 
const THREAD_ID _mi_tid
 Current threaded it. More...
 
const Moose::MaterialDataType _material_data_type
 The type of data. More...
 
MaterialData_material_data
 The material data class that stores properties. More...
 
bool _stateful_allowed
 True by default. More...
 
bool _get_material_property_called
 Initialized to false. More...
 
std::vector< std::unique_ptr< PropertyValue > > _default_properties
 Storage vector for default properties. More...
 
std::unordered_set< unsigned int_material_property_dependencies
 The set of material properties (as given by their IDs) that this object depends on. More...
 
const MaterialPropertyName _get_suffix
 
const bool _use_interpolated_state
 Use the interpolated state set up through the ProjectedStatefulMaterialStorageAction. More...
 
const InputParameters_c_parameters
 
const std::string & _c_name
 The name of the object this interface is part of. More...
 
const std::string & _c_type
 The type of the object this interface is part of. More...
 
FEProblemBase_c_fe_problem
 
const SystemBase *const _c_sys
 Pointer to the system object if the moose object this is an interface for has one. More...
 
std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > _coupled_vars
 Coupled vars whose values we provide. More...
 
std::vector< MooseVariableFieldBase * > _coupled_moose_vars
 Vector of all coupled variables. More...
 
std::vector< MooseVariable * > _coupled_standard_moose_vars
 Vector of standard coupled variables. More...
 
std::vector< VectorMooseVariable * > _coupled_vector_moose_vars
 Vector of vector coupled variables. More...
 
std::vector< ArrayMooseVariable * > _coupled_array_moose_vars
 Vector of array coupled variables. More...
 
std::vector< MooseVariableFV< Real > * > _coupled_standard_fv_moose_vars
 Vector of standard finite volume coupled variables. More...
 
std::vector< MooseLinearVariableFV< Real > * > _coupled_standard_linear_fv_moose_vars
 Vector of standard linear finite volume coupled variables. More...
 
const std::unordered_map< std::string, std::string > & _new_to_deprecated_coupled_vars
 map from new to deprecated variable names More...
 
bool _c_nodal
 True if we provide coupling to nodal values. More...
 
bool _c_is_implicit
 True if implicit value is required. More...
 
const bool _c_allow_element_to_nodal_coupling
 
THREAD_ID _c_tid
 Thread ID of the thread using this object. More...
 
std::unordered_map< std::string, std::vector< std::unique_ptr< VariableValue > > > _default_value
 Will hold the default value for optional coupled variables. More...
 
std::unordered_map< std::string, std::unique_ptr< MooseArray< ADReal > > > _ad_default_value
 Will hold the default value for optional coupled variables for automatic differentiation. More...
 
std::unordered_map< std::string, std::unique_ptr< VectorVariableValue > > _default_vector_value
 Will hold the default value for optional vector coupled variables. More...
 
std::unordered_map< std::string, std::unique_ptr< ArrayVariableValue > > _default_array_value
 Will hold the default value for optional array coupled variables. More...
 
std::unordered_map< std::string, std::unique_ptr< MooseArray< ADRealVectorValue > > > _ad_default_vector_value
 Will hold the default value for optional vector coupled variables for automatic differentiation. More...
 
VariableValue _default_value_zero
 This will always be zero because the default values for optionally coupled variables is always constant and this is used for time derivative info. More...
 
VariableGradient _default_gradient
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
MooseArray< ADRealVectorValue_ad_default_gradient
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
MooseArray< ADRealTensorValue_ad_default_vector_gradient
 This will always be zero because the default values for optionally coupled vector variables is always constant. More...
 
VariableSecond _default_second
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
MooseArray< ADRealTensorValue_ad_default_second
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
MooseArray< ADRealVectorValue_ad_default_curl
 This will always be zero because the default values for optionally coupled vector variables is always constant. More...
 
const VariableValue_zero
 Zero value of a variable. More...
 
const VariablePhiValue_phi_zero
 
const MooseArray< ADReal > & _ad_zero
 
const VariableGradient_grad_zero
 Zero gradient of a variable. More...
 
const MooseArray< ADRealVectorValue > & _ad_grad_zero
 
const VariablePhiGradient_grad_phi_zero
 Zero gradient of trial function. More...
 
const VariableSecond_second_zero
 Zero second derivative of a variable. More...
 
const MooseArray< ADRealTensorValue > & _ad_second_zero
 
const VariablePhiSecond_second_phi_zero
 Zero second derivative of a test function. More...
 
const VectorVariableValue_vector_zero
 Zero value of a vector variable. More...
 
const VectorVariableCurl_vector_curl_zero
 Zero value of the curl of a vector variable. More...
 
VectorVariableValue _default_vector_value_zero
 This will always be zero because the default values for optionally coupled variables is always constant and this is used for time derivative info. More...
 
VectorVariableGradient _default_vector_gradient
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
VectorVariableCurl _default_vector_curl
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
VectorVariableDivergence _default_div
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
ArrayVariableValue _default_array_value_zero
 This will always be zero because the default values for optionally coupled variables is always constant and this is used for time derivative info. More...
 
ArrayVariableGradient _default_array_gradient
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
bool _coupleable_neighbor
 Whether or not this object is a "neighbor" object: ie all of it's coupled values should be neighbor values. More...
 
FEProblemBase_sc_fe_problem
 
const THREAD_ID _sc_tid
 Thread ID of the thread using this object. More...
 
const Real_real_zero
 Scalar zero. More...
 
const VariableValue_scalar_zero
 Zero value of a scalar variable. More...
 
const Point & _point_zero
 Zero point. More...
 
const InputParameters_ti_params
 
FEProblemBase_ti_feproblem
 
bool _is_implicit
 If the object is using implicit or explicit form. More...
 
Real_t
 Time. More...
 
const Real_t_old
 Old time. More...
 
int_t_step
 The number of the time step. More...
 
Real_dt
 Time step size. More...
 
Real_dt_old
 Size of the old time step. More...
 
bool _is_transient
 
const std::string & _pp_name
 Post-processor name. More...
 
const PostprocessorValue_current_value
 The current value, which is the Reporter value that changes when we execute UOs in the problem. More...
 

Static Protected Attributes

static constexpr auto SYSTEM = "MeshMetaData"
 The system name used when initializing the Restartable interface. More...
 
static constexpr auto NAME = "<empty>"
 The data name used when initializing the Restartable interface for non-MeshGenerator objects. More...
 
static const std::string _interpolated_old = "_interpolated_old"
 name suffixes for interpolated old and older properties More...
 
static const std::string _interpolated_older = "_interpolated_older"
 

Detailed Description

Computes the average of a functor over a side set.

Definition at line 17 of file SideAverageFunctorPostprocessor.h.

Member Typedef Documentation

◆ DataFileParameterType

using DataFileInterface::DataFileParameterType = DataFileName
inherited

The parameter type this interface expects for a data file name.

Definition at line 27 of file DataFileInterface.h.

◆ DotType

using Moose::FunctorBase< Real >::DotType = ValueType
inherited

Definition at line 150 of file MooseFunctor.h.

◆ FunctorType

Definition at line 140 of file MooseFunctor.h.

◆ GradientType

using Moose::FunctorBase< Real >::GradientType = typename FunctorReturnType<Real , FunctorEvaluationKind::Gradient>::type
inherited

This rigmarole makes it so that a user can create functors that return containers (std::vector, std::array).

This logic will make it such that if a user requests a functor type T that is a container of algebraic types, for example Reals, then the GradientType will be a container of the gradients of those algebraic types, in this example VectorValue<Reals>. So if T is std::vector<Real>, then GradientType will be std::vector<VectorValue<Real>>. As another example: T = std::array<VectorValue<Real>, 1> -> GradientType = std::array<TensorValue<Real>, 1>

Definition at line 149 of file MooseFunctor.h.

◆ ValueType

using Moose::FunctorBase< Real >::ValueType = Real
inherited

Definition at line 141 of file MooseFunctor.h.

Member Enumeration Documentation

◆ TEST_TYPE

A flag changing the behavior of hasBoundary.

Enumerator
ALL 
ANY 

Definition at line 29 of file BoundaryRestrictable.h.

Constructor & Destructor Documentation

◆ SideAverageFunctorPostprocessor()

SideAverageFunctorPostprocessor::SideAverageFunctorPostprocessor ( const InputParameters parameters)

Member Function Documentation

◆ adCoupledCurl()

const ADVectorVariableCurl & Coupleable::adCoupledCurl ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns curl of a coupled variable for use in objects utilizing Automatic Differentiation.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to an ADVectorVariableCurl containing the curl of the coupled variable
See also
Kernel::_curl_u

Definition at line 1756 of file Coupleable.C.

1757 {
1758  const auto * var = getVectorVar(var_name, comp);
1759 
1760  if (!var)
1761  return getADDefaultCurl();
1763 
1764  if (!_c_is_implicit)
1765  mooseError("Not implemented");
1766 
1767  if (!_coupleable_neighbor)
1768  return var->adCurlSln();
1769  return var->adCurlSlnNeighbor();
1770 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const ADVectorVariableCurl & getADDefaultCurl() const
Helper method to return (and insert if necessary) the default curl value for Automatic Differentiatio...
Definition: Coupleable.C:2391
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledDofValues()

const ADVariableValue & Coupleable::adCoupledDofValues ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns DOF value of a coupled variable for use in Automatic Differentiation.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to an ADVariableValue for the DoFs of the coupled variable

Definition at line 2099 of file Coupleable.C.

2100 {
2101  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2102 
2103  if (!var)
2104  return *getADDefaultValue(var_name);
2106 
2107  if (!_c_is_implicit)
2108  mooseError("Not implemented");
2109 
2110  if (!_coupleable_neighbor)
2111  return var->adDofValues();
2112  return var->adDofValuesNeighbor();
2113 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for Automatic Differentiation for...
Definition: Coupleable.C:2339
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledDot()

const ADVariableValue & Coupleable::adCoupledDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Time derivative of a coupled variable for ad simulations.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the time derivative of the coupled variable
See also
Kernel::dot

Definition at line 2249 of file Coupleable.C.

Referenced by Coupleable::adCoupledDots().

2250 {
2251  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2252 
2253  if (!var)
2254  return *getADDefaultValue(var_name);
2256 
2257  if (!_coupleable_neighbor)
2258  {
2259  if (_c_nodal)
2260  return var->adDofValuesDot();
2261  return var->adUDot();
2262  }
2263  else
2264  {
2265  if (_c_nodal)
2266  mooseError("AD neighbor nodal dof dot not implemented");
2267  return var->adUDotNeighbor();
2268  }
2269 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for Automatic Differentiation for...
Definition: Coupleable.C:2339
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledDotDot()

const ADVariableValue & Coupleable::adCoupledDotDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Second time derivative of a coupled variable for ad simulations.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to an ADVariableValue containing the second time derivative of the coupled variable

Definition at line 2272 of file Coupleable.C.

2273 {
2274  const auto * const var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2275 
2276  if (!var)
2277  return *getADDefaultValue(var_name);
2279 
2280  if (_c_nodal)
2281  mooseError("Not implemented");
2282 
2283  if (!_coupleable_neighbor)
2284  return var->adUDotDot();
2285  return var->adUDotDotNeighbor();
2286 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for Automatic Differentiation for...
Definition: Coupleable.C:2339
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledDots()

std::vector< const ADVariableValue * > Coupleable::adCoupledDots ( const std::string &  var_name) const
protectedinherited

Returns the time derivatives for all of a coupled variable's components for ad simulations.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableValue pointers for each component of var_name

Definition at line 2752 of file Coupleable.C.

2753 {
2754  auto func = [this, &var_name](unsigned int comp) { return &adCoupledDot(var_name, comp); };
2755  return coupledVectorHelper<const ADVariableValue *>(var_name, func);
2756 }
const ADVariableValue & adCoupledDot(const std::string &var_name, unsigned int comp=0) const
Time derivative of a coupled variable for ad simulations.
Definition: Coupleable.C:2249

◆ adCoupledGradient()

const ADVariableGradient & Coupleable::adCoupledGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns gradient of a coupled variable for use in Automatic Differentiation.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to an ADVariableGradient containing the gradient of the coupled variable
See also
Kernel::gradient

Definition at line 2190 of file Coupleable.C.

Referenced by Coupleable::adCoupledGradients().

2191 {
2192  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2193 
2194  if (!var)
2195  return getADDefaultGradient();
2197 
2198  if (!_c_is_implicit)
2199  mooseError("Not implemented");
2200 
2201  if (!_coupleable_neighbor)
2202  return var->adGradSln();
2203  return var->adGradSlnNeighbor();
2204 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const ADVariableGradient & getADDefaultGradient() const
Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation ...
Definition: Coupleable.C:2370
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledGradientDot()

const ADVariableGradient & Coupleable::adCoupledGradientDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns gradient of a coupled variable's time derivative for use in Automatic Differentiation.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to an ADVariableGradient containing the gradient of the coupled variable's time derivative

Definition at line 2207 of file Coupleable.C.

2208 {
2209  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2210 
2211  if (!var)
2212  return getADDefaultGradient();
2214 
2215  if (!_c_is_implicit)
2216  mooseError("Not implemented");
2217 
2218  if (!_coupleable_neighbor)
2219  return var->adGradSlnDot();
2220  return var->adGradSlnNeighborDot();
2221 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const ADVariableGradient & getADDefaultGradient() const
Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation ...
Definition: Coupleable.C:2370
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledGradients()

std::vector< const ADVariableGradient * > Coupleable::adCoupledGradients ( const std::string &  var_name) const
protectedinherited

Returns the gradients for all of a coupled variable's components for use in Automatic Differentiation.

Parameters
var_nameName of coupled variable
Returns
Vector of ADVariableGradient pointers for each component of var_name

Definition at line 2731 of file Coupleable.C.

2732 {
2733  auto func = [this, &var_name](unsigned int comp) { return &adCoupledGradient(var_name, comp); };
2734  return coupledVectorHelper<const ADVariableGradient *>(var_name, func);
2735 }
const ADVariableGradient & adCoupledGradient(const std::string &var_name, unsigned int comp=0) const
Returns gradient of a coupled variable for use in Automatic Differentiation.
Definition: Coupleable.C:2190

◆ adCoupledLowerValue()

const ADVariableValue & Coupleable::adCoupledLowerValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns value of a coupled lower-dimensional variable for use in Automatic Differentiation.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a ADVariableValue for the coupled variable

Definition at line 2172 of file Coupleable.C.

2173 {
2174  auto var = getVarHelper<MooseVariableFE<Real>>(var_name, comp);
2175 
2176  if (!var)
2177  return *getADDefaultValue(var_name);
2179 
2180  if (!_c_is_implicit)
2181  mooseError("adCoupledLowerValue cannot be called in a coupleable neighbor object");
2182 
2183  if (_c_nodal)
2184  return var->adDofValues();
2185  else
2186  return var->adSlnLower();
2187 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for Automatic Differentiation for...
Definition: Coupleable.C:2339

◆ adCoupledNodalValue()

template<typename T >
template const ADRealVectorValue & Coupleable::adCoupledNodalValue< RealVectorValue > ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns AD nodal values of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable

Definition at line 2130 of file Coupleable.C.

2131 {
2132  static const typename Moose::ADType<T>::type zero = 0;
2133  if (!isCoupled(var_name))
2134  return zero;
2135 
2136  if (!_c_nodal)
2137  mooseError("The adCoupledNodalValue method should only be called for nodal computing objects");
2139  mooseError(
2140  "The adCoupledNodalValue method shouldn't be called for neighbor computing objects. I "
2141  "don't even know what that would mean, although maybe someone could explain it to me.");
2142  if (!_c_is_implicit)
2143  mooseError("If you're going to use an explicit scheme, then use coupledNodalValue instead of "
2144  "adCoupledNodalValue");
2145 
2146  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
2147 
2148  return var->adNodalValue();
2149 }
virtual bool isCoupled(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled as name.
Definition: Coupleable.C:128
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const Number zero
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledScalarDot()

const ADVariableValue & ScalarCoupleable::adCoupledScalarDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns the time derivative of a scalar coupled variable, including its dependence on the nonlinear degrees of freedom through automatic differentiation.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to the time derivative at quadrature points for the coupled variable, including automatic differentiation information

Definition at line 252 of file ScalarCoupleable.C.

253 {
254  checkVar(var_name);
255  validateExecutionerType(var_name, "adCoupledScalarDot");
256  return getScalarVar(var_name, comp)->adUDot();
257 }
const ADVariableValue & adUDot() const
Return the first derivative of the solution with derivative information.
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.

◆ adCoupledScalarValue()

const ADVariableValue & ScalarCoupleable::adCoupledScalarValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns AD value of a scalar coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a ADVariableValue for the coupled variable

Definition at line 135 of file ScalarCoupleable.C.

136 {
137  checkVar(var_name);
138  if (!isCoupledScalar(var_name, comp))
139  return *getADDefaultValue(var_name);
140 
141  auto var = getScalarVar(var_name, comp);
142 
143  if (_sc_is_implicit)
144  return var->adSln();
145  else
146  mooseError("adCoupledValue for non-implicit calculations is not currently supported. Use "
147  "coupledValue instead for non-implicit");
148 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const bool _sc_is_implicit
True if implicit value is required.
bool isCoupledScalar(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled_as name.
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the AD default value for an uncoupled variable...

◆ adCoupledSecond()

const ADVariableSecond & Coupleable::adCoupledSecond ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns second derivatives of a coupled variable for use in Automatic Differentiation.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableSecond containing the second derivatives of the coupled variable

Definition at line 2224 of file Coupleable.C.

2225 {
2226  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2227 
2228  if (!var)
2229  return getADDefaultSecond();
2231 
2232  if (!_c_is_implicit)
2233  mooseError("Not implemented");
2234 
2235  if (!_coupleable_neighbor)
2236  return var->adSecondSln();
2237  else
2238  return var->adSecondSlnNeighbor();
2239 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
const ADVariableSecond & getADDefaultSecond() const
Helper method to return (and insert if necessary) the default second derivatives for Automatic Differ...
Definition: Coupleable.C:2384

◆ adCoupledValue()

const ADVariableValue & Coupleable::adCoupledValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns value of a coupled variable for use in Automatic Differentiation.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a ADVariableValue for the coupled variable

Definition at line 2152 of file Coupleable.C.

Referenced by Coupleable::adCoupledValues().

2153 {
2154  const auto * const var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2155 
2156  if (!var)
2157  return *getADDefaultValue(var_name);
2159 
2160  if (!_c_is_implicit)
2161  mooseError("Not implemented");
2162 
2163  if (_c_nodal)
2164  return var->adDofValues();
2165 
2166  if (!_coupleable_neighbor)
2167  return var->adSln();
2168  return var->adSlnNeighbor();
2169 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for Automatic Differentiation for...
Definition: Coupleable.C:2339
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledValues()

std::vector< const ADVariableValue * > Coupleable::adCoupledValues ( const std::string &  var_name) const
protectedinherited

Returns the values for all of a coupled variable's components for use in Automatic Differentiation.

Parameters
var_nameName of coupled variable
Returns
Vector of ADVariableValue pointers for each component of var_name

Definition at line 2534 of file Coupleable.C.

2535 {
2536  auto func = [this, &var_name](unsigned int comp) { return &adCoupledValue(var_name, comp); };
2537  return coupledVectorHelper<const ADVariableValue *>(var_name, func);
2538 }
const ADVariableValue & adCoupledValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled variable for use in Automatic Differentiation.
Definition: Coupleable.C:2152

◆ adCoupledVectorDot()

const ADVectorVariableValue & Coupleable::adCoupledVectorDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Time derivative of a vector coupled variable for ad simulations.

Parameters
var_nameName of vector coupled variable
compComponent number
Returns
Reference to a VectorVariableValue containing the time derivative of the coupled variable
See also
Kernel::dot

Definition at line 2289 of file Coupleable.C.

2290 {
2291  const auto * var = getVectorVar(var_name, comp);
2292  if (!var)
2293  return *getADDefaultVectorValue(var_name);
2295 
2296  if (_c_nodal)
2297  mooseError("Not implemented");
2298 
2299  if (!_coupleable_neighbor)
2300  return var->adUDot();
2301  return var->adUDotNeighbor();
2302 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
const ADVectorVariableValue * getADDefaultVectorValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default vector value for Automatic Differentiat...
Definition: Coupleable.C:2353
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledVectorGradient()

const ADVectorVariableGradient & Coupleable::adCoupledVectorGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns gradient of a coupled vector variable for use in Automatic Differentiation.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VectorVariableGradient containing the gradient of the coupled variable
See also
Kernel::gradient

Definition at line 2323 of file Coupleable.C.

2324 {
2325  const auto * var = getVectorVar(var_name, comp);
2326  if (!var)
2327  return getADDefaultVectorGradient();
2329 
2330  if (!_c_is_implicit)
2331  mooseError("Not implemented");
2332 
2333  if (!_coupleable_neighbor)
2334  return var->adGradSln();
2335  return var->adGradSlnNeighbor();
2336 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const ADVectorVariableGradient & getADDefaultVectorGradient() const
Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation ...
Definition: Coupleable.C:2377
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledVectorSecond()

const ADVectorVariableSecond& Coupleable::adCoupledVectorSecond ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns second derivatives of a coupled vector variable for use in Automatic Differentiation.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VectorVariableSecond containing the second derivatives of the coupled variable

◆ adCoupledVectorValue()

const ADVectorVariableValue & Coupleable::adCoupledVectorValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns value of a coupled vector variable for use in Automatic Differentiation.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable
See also
Kernel::value

Definition at line 2305 of file Coupleable.C.

Referenced by Coupleable::adCoupledVectorValues().

2306 {
2307  const auto * var = getVectorVar(var_name, comp);
2308  if (!var)
2309  return *getADDefaultVectorValue(var_name);
2311 
2312  if (_c_nodal)
2313  mooseError("Not implemented");
2314  if (!_c_is_implicit)
2315  mooseError("Not implemented");
2316 
2317  if (!_coupleable_neighbor)
2318  return var->adSln();
2319  return var->adSlnNeighbor();
2320 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
const ADVectorVariableValue * getADDefaultVectorValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default vector value for Automatic Differentiat...
Definition: Coupleable.C:2353
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ adCoupledVectorValues()

std::vector< const ADVectorVariableValue * > Coupleable::adCoupledVectorValues ( const std::string &  var_name) const
protectedinherited

Returns the values for all of a coupled vector variable's components for use in Automatic Differentiation.

Parameters
var_nameName of coupled variable
Returns
Vector of ADVariableValue pointers for each component of var_name

Definition at line 2541 of file Coupleable.C.

2542 {
2543  auto func = [this, &var_name](unsigned int comp)
2544  { return &adCoupledVectorValue(var_name, comp); };
2545  return coupledVectorHelper<const ADVectorVariableValue *>(var_name, func);
2546 }
const ADVectorVariableValue & adCoupledVectorValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled vector variable for use in Automatic Differentiation.
Definition: Coupleable.C:2305

◆ addFEVariableCoupleableMatrixTag()

void Coupleable::addFEVariableCoupleableMatrixTag ( TagID  tag)
inlineinherited

Definition at line 104 of file Coupleable.h.

Referenced by Coupleable::coupledMatrixTagValue().

104 { _fe_coupleable_matrix_tags.insert(tag); }
std::set< TagID > _fe_coupleable_matrix_tags
Definition: Coupleable.h:1801

◆ addFEVariableCoupleableVectorTag()

void Coupleable::addFEVariableCoupleableVectorTag ( TagID  tag)
inlineinherited

◆ addMooseVariableDependency() [1/2]

void MooseVariableDependencyInterface::addMooseVariableDependency ( MooseVariableFieldBase var)
inlineprotectedinherited

Call this function to add the passed in MooseVariableFieldBase as a variable that this object depends on.

Definition at line 73 of file MooseVariableDependencyInterface.h.

Referenced by ADDGKernel::ADDGKernel(), ADIntegratedBCTempl< T >::ADIntegratedBCTempl(), ADInterfaceKernelTempl< T >::ADInterfaceKernelTempl(), ADKernelTempl< T >::ADKernelTempl(), ArrayDGKernel::ArrayDGKernel(), ArrayIntegratedBC::ArrayIntegratedBC(), ArrayKernel::ArrayKernel(), ArrayNodalBC::ArrayNodalBC(), AuxKernelTempl< Real >::AuxKernelTempl(), AuxNodalScalarKernel::AuxNodalScalarKernel(), CoupleableMooseVariableDependencyIntermediateInterface::CoupleableMooseVariableDependencyIntermediateInterface(), CoupleableMooseVariableDependencyIntermediateInterface::coupledArrayValueByName(), CoupleableMooseVariableDependencyIntermediateInterface::coupledValueByName(), DGKernel::DGKernel(), DiracKernelTempl< T >::DiracKernelTempl(), ElemElemConstraint::ElemElemConstraint(), ElementIndicator::ElementIndicator(), ElementIntegralArrayVariablePostprocessor::ElementIntegralArrayVariablePostprocessor(), ElementIntegralVariablePostprocessor::ElementIntegralVariablePostprocessor(), ElementIntegralVariableUserObject::ElementIntegralVariableUserObject(), ElementVariablePostprocessor::ElementVariablePostprocessor(), FVBoundaryCondition::FVBoundaryCondition(), FVElementalKernel::FVElementalKernel(), FVInterfaceKernel::FVInterfaceKernel(), IntegratedBC::IntegratedBC(), InterfaceIntegralVariableValuePostprocessor::InterfaceIntegralVariableValuePostprocessor(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), InterfaceMaterial::InterfaceMaterial(), InternalSideIndicator::InternalSideIndicator(), InternalSideIntegralVariablePostprocessor::InternalSideIntegralVariablePostprocessor(), Kernel::Kernel(), LinearFVBoundaryCondition::LinearFVBoundaryCondition(), LinearFVKernel::LinearFVKernel(), Marker::Marker(), Material::Material(), MortarConstraintBase::MortarConstraintBase(), NeighborCoupleableMooseVariableDependencyIntermediateInterface::NeighborCoupleableMooseVariableDependencyIntermediateInterface(), NodalBC::NodalBC(), NodalConstraint::NodalConstraint(), NodalKernel::NodalKernel(), NodalScalarKernel::NodalScalarKernel(), NodeElemConstraint::NodeElemConstraint(), NodeFaceConstraint::NodeFaceConstraint(), PointVariableSamplerBase::PointVariableSamplerBase(), QuadraturePointMarker::QuadraturePointMarker(), SideIntegralVariablePostprocessor::SideIntegralVariablePostprocessor(), SideIntegralVariableUserObject::SideIntegralVariableUserObject(), SideVariablePostprocessor::SideVariablePostprocessor(), VectorIntegratedBC::VectorIntegratedBC(), VectorKernel::VectorKernel(), and VectorNodalBC::VectorNodalBC().

74  {
75  _moose_variable_dependencies.insert(var);
76  }
std::set< MooseVariableFieldBase * > _moose_variable_dependencies

◆ addMooseVariableDependency() [2/2]

void MooseVariableDependencyInterface::addMooseVariableDependency ( const std::vector< MooseVariableFieldBase *> &  vars)
inlineprotectedinherited

Definition at line 77 of file MooseVariableDependencyInterface.h.

78  {
79  _moose_variable_dependencies.insert(vars.begin(), vars.end());
80  }
char ** vars
std::set< MooseVariableFieldBase * > _moose_variable_dependencies

◆ addPostprocessorDependencyHelper()

void UserObject::addPostprocessorDependencyHelper ( const PostprocessorName &  ) const
overrideprotectedvirtualinherited

Helper for deriving classes to override to add dependencies when a Postprocessor is requested.

Reimplemented from PostprocessorInterface.

Definition at line 127 of file UserObject.C.

128 {
129  _depend_uo.insert(name);
130 }
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
std::set< std::string > _depend_uo
Depend UserObjects that to be used both for determining user object sorting and by AuxKernel for find...
Definition: UserObject.h:226

◆ addReporterDependencyHelper()

void UserObject::addReporterDependencyHelper ( const ReporterName )
overrideprotectedvirtualinherited

A method that can be overridden to update the UO dependencies.

This is needed because the get methods for this interface cannot be virtual because of the template parameter. See GeneralUserObject for how it is utilized.

Reimplemented from ReporterInterface.

Definition at line 139 of file UserObject.C.

140 {
141  _depend_uo.insert(reporter_name.getObjectName());
142 }
std::set< std::string > _depend_uo
Depend UserObjects that to be used both for determining user object sorting and by AuxKernel for find...
Definition: UserObject.h:226

◆ addUserObjectDependencyHelper()

void UserObject::addUserObjectDependencyHelper ( const UserObject ) const
overrideprotectedvirtualinherited

Helper for deriving classes to override to add dependencies when a UserObject is requested.

Reimplemented from UserObjectInterface.

Definition at line 121 of file UserObject.C.

122 {
123  _depend_uo.insert(uo.name());
124 }
std::set< std::string > _depend_uo
Depend UserObjects that to be used both for determining user object sorting and by AuxKernel for find...
Definition: UserObject.h:226

◆ addVectorPostprocessorDependencyHelper()

void UserObject::addVectorPostprocessorDependencyHelper ( const VectorPostprocessorName &  ) const
overrideprotectedvirtualinherited

Helper for deriving classes to override to add dependencies when a VectorPostprocessor is requested.

Reimplemented from VectorPostprocessorInterface.

Definition at line 133 of file UserObject.C.

134 {
135  _depend_uo.insert(name);
136 }
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
std::set< std::string > _depend_uo
Depend UserObjects that to be used both for determining user object sorting and by AuxKernel for find...
Definition: UserObject.h:226

◆ adZeroGradient()

const ADVariableGradient & Coupleable::adZeroGradient ( ) const
protectedinherited

method that returns _grad_zero to RESIDUAL computing objects and _ad_grad_zero to JACOBIAN computing objects

Definition at line 2405 of file Coupleable.C.

2406 {
2407  mooseDeprecated("Method adZeroGradient() is deprecated. Use '_ad_grad_zero' instead.");
2408  return _ad_grad_zero;
2409 }
const MooseArray< ADRealVectorValue > & _ad_grad_zero
Definition: Coupleable.h:1493
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:353

◆ adZeroSecond()

const ADVariableSecond & Coupleable::adZeroSecond ( ) const
protectedinherited

Retrieve a zero second for automatic differentiation.

Definition at line 2412 of file Coupleable.C.

2413 {
2414  mooseDeprecated("Method adZeroSecond() is deprecated. Use '_ad_second_zero' instead.");
2415  return _ad_second_zero;
2416 }
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:353
const MooseArray< ADRealTensorValue > & _ad_second_zero
Definition: Coupleable.h:1500

◆ adZeroValue()

const ADVariableValue & Coupleable::adZeroValue ( ) const
protectedinherited

method that returns _zero to RESIDUAL computing objects and _ad_zero to JACOBIAN computing objects

Definition at line 2398 of file Coupleable.C.

2399 {
2400  mooseDeprecated("Method adZeroValue() is deprecated. Use '_ad_zero' instead.");
2401  return _ad_zero;
2402 }
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:353
const MooseArray< ADReal > & _ad_zero
Definition: Coupleable.h:1489

◆ areElemIDsIdentical()

bool ElementIDInterface::areElemIDsIdentical ( const std::string &  id_name1,
const std::string &  id_name2 
) const
inlineinherited

Whether two element integers are identical for all elements.

Definition at line 103 of file ElementIDInterface.h.

104  {
105  return _id_mesh->areElemIDsIdentical(id_name1, id_name2);
106  }
std::shared_ptr< MooseMesh > & _id_mesh
References to the mesh and displaced mesh (currently in the ActionWarehouse)

◆ boundaryIDs()

const std::set< BoundaryID > & BoundaryRestrictable::boundaryIDs ( ) const
virtualinherited

Return the boundary IDs for this object.

Returns
A set of all boundary ids for which the object is restricted

Definition at line 180 of file BoundaryRestrictable.C.

Referenced by MaterialBase::getGenericZeroMaterialPropertyByName(), BoundaryRestrictable::hasBoundaryMaterialPropertyHelper(), SidesetInfoVectorPostprocessor::initialize(), SideFVFluxBCIntegral::initialSetup(), InterfaceQpUserObjectBase::initialSetup(), and MaterialBase::registerPropName().

181 {
182  return _bnd_ids;
183 }
std::set< BoundaryID > _bnd_ids
Set of the boundary ids.

◆ boundaryNames()

const std::vector< BoundaryName > & BoundaryRestrictable::boundaryNames ( ) const
inherited

Return the boundary names for this object.

Returns
A set of all boundary names for which the object is restricted

Definition at line 186 of file BoundaryRestrictable.C.

Referenced by MaterialOutputAction::getParams(), NearestNodeDistanceAux::NearestNodeDistanceAux(), and NearestNodeValueAux::NearestNodeValueAux().

187 {
188  return _boundary_names;
189 }
std::vector< BoundaryName > _boundary_names
Vector the the boundary names.

◆ boundaryRestricted()

bool BoundaryRestrictable::boundaryRestricted ( ) const
virtualinherited

Returns true if this object has been restricted to a boundary.

See also
MooseObject

Definition at line 198 of file BoundaryRestrictable.C.

Referenced by Material::checkMaterialProperty(), MaterialOutputAction::getParams(), and DerivativeMaterialInterface< MortarScalarBase >::haveMaterialProperty().

199 {
201 }
static bool restricted(const std::set< BoundaryID > &ids)
Helper for determining if the object is boundary restricted.
std::set< BoundaryID > _bnd_ids
Set of the boundary ids.

◆ buildOutputHideVariableList()

void OutputInterface::buildOutputHideVariableList ( std::set< std::string >  variable_names)
inherited

Builds hide lists for output objects NOT listed in the 'outputs' parameter.

Parameters
variable_namesA set of variables for which the 'outputs' parameter controls

By default this is called by the constructor and passes the block name as the list of variables. This needs to be called explicitly if the build_list flag is set to False in the constructor. The latter cases is needed by the Material object to work correctly with the automatic material output capability.

Definition at line 61 of file OutputInterface.C.

Referenced by ReporterTransferInterface::hideVariableHelper(), and OutputInterface::OutputInterface().

62 {
63  // Set of available names
64  const std::set<OutputName> & avail = _oi_output_warehouse.getOutputNames();
65 
66  // Check for 'none'; hide variables on all outputs
67  if (_oi_outputs.find("none") != _oi_outputs.end())
68  for (const auto & name : avail)
69  _oi_output_warehouse.addInterfaceHideVariables(name, variable_names);
70 
71  // Check for empty and 'all' in 'outputs' parameter; do not perform any variable restrictions in
72  // these cases
73  else if (_oi_outputs.empty() || _oi_outputs.find("all") != _oi_outputs.end())
74  return;
75 
76  // Limit the variable output to Output objects listed
77  else
78  {
79  // Create a list of outputs where the variable should be hidden
80  std::set<OutputName> hide;
81  std::set_difference(avail.begin(),
82  avail.end(),
83  _oi_outputs.begin(),
84  _oi_outputs.end(),
85  std::inserter(hide, hide.begin()));
86 
87  // If 'outputs' is specified add the object name to the list of items to hide
88  for (const auto & name : hide)
89  _oi_output_warehouse.addInterfaceHideVariables(name, variable_names);
90  }
91 }
OutputWarehouse & _oi_output_warehouse
Reference to the OutputWarehouse for populating the Output object hide lists.
std::set< OutputName > _oi_outputs
The set of Output object names listed in the &#39;outputs&#39; parameter.
const std::set< OutputName > & getOutputNames()
Get a complete set of all output object names.
void addInterfaceHideVariables(const std::string &output_name, const std::set< std::string > &variable_names)
Insert variable names for hiding via the OutoutInterface.

◆ buildRequiredMaterials()

std::unordered_map< SubdomainID, std::vector< MaterialBase * > > MaterialPropertyInterface::buildRequiredMaterials ( bool  allow_stateful = true)
inherited

get a map of MaterialBase pointers for all material objects that this object depends on for each block

Definition at line 209 of file MaterialPropertyInterface.C.

210 {
211  std::unordered_map<SubdomainID, std::vector<MaterialBase *>> required_mats;
212  const auto & mwh = _mi_feproblem.getMaterialWarehouse();
213  for (const auto id : _mi_block_ids)
214  {
215  const auto & mats = mwh[_material_data_type].getActiveBlockObjects(id, _mi_tid);
216  std::array<const MaterialPropertyInterface *, 1> consumers = {{this}};
217  const auto block_required =
218  MaterialBase::buildRequiredMaterials(consumers, mats, allow_stateful);
219  required_mats[id].insert(
220  required_mats[id].begin(), block_required.begin(), block_required.end());
221  }
222  return required_mats;
223 }
FEProblemBase & _mi_feproblem
Reference to the FEProblemBase class.
const THREAD_ID _mi_tid
Current threaded it.
const std::set< SubdomainID > & _mi_block_ids
Storage for the block ids created by BlockRestrictable.
const std::map< SubdomainID, std::vector< std::shared_ptr< T > > > & getActiveBlockObjects(THREAD_ID tid=0) const
const MaterialWarehouse & getMaterialWarehouse() const
static std::deque< MaterialBase * > buildRequiredMaterials(const Consumers &mat_consumers, const std::vector< std::shared_ptr< MaterialBase >> &mats, const bool allow_stateful)
Build the materials required by a set of consumer objects.
Definition: MaterialBase.h:522
const Moose::MaterialDataType _material_data_type
The type of data.

◆ callMooseError()

void MooseBase::callMooseError ( std::string  msg,
const bool  with_prefix 
) const
inherited

Calls moose error with the message msg.

Will prefix the message with the subapp name if one exists.

If with_prefix, then add the prefix from errorPrefix() to the error.

Definition at line 33 of file MooseBase.C.

Referenced by InputParameters::callMooseErrorHelper(), MooseBaseErrorInterface::mooseDocumentedError(), MooseBaseErrorInterface::mooseError(), MooseBaseErrorInterface::mooseErrorNonPrefixed(), and MooseBaseParameterInterface::paramError().

34 {
36  const std::string prefix = _app.isUltimateMaster() ? "" : _app.name();
37  if (with_prefix)
38  msg = errorPrefix("error") + msg;
39  moose::internal::mooseErrorRaw(msg, prefix);
40 }
bool isUltimateMaster() const
Whether or not this app is the ultimate master app.
Definition: MooseApp.h:847
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
std::string errorPrefix(const std::string &error_type) const
Definition: MooseBase.C:43
MooseApp & _app
The MOOSE application this is associated with.
Definition: MooseBase.h:84
void mooseErrorRaw(std::string msg, const std::string prefix="")
Definition: MooseError.C:53
void mooseConsole()
Send current output buffer to Console output objects.
OutputWarehouse & getOutputWarehouse()
Get the OutputWarehouse objects.
Definition: MooseApp.C:2296

◆ checkAllVariables()

template<typename DofObjectType >
std::set< MooseVariableFieldBase * > MooseVariableDependencyInterface::checkAllVariables ( const DofObjectType &  dof_object,
const std::set< MooseVariableFieldBase *> &  vars_to_omit = {} 
)
inherited

Check whether all of the variable dependencies have degree of freedom indices on the supplied degree of freedom object.

Parameters
dof_objectThe degree of freedom object (an element or node) that we want to check for existence of variable degrees of freedom on
vars_to_omitVariables that we can omit from checking
Returns
Any variables that do not have degrees of freedom on the supplied degree of freedom object

Definition at line 91 of file MooseVariableDependencyInterface.h.

93 {
94  if (vars_to_omit.empty())
95  return checkVariables(dof_object, _moose_variable_dependencies);
96 
97  std::set<MooseVariableFieldBase *> vars_to_check;
98  std::set_difference(_moose_variable_dependencies.begin(),
100  vars_to_omit.begin(),
101  vars_to_omit.end(),
102  std::inserter(vars_to_check, vars_to_check.begin()));
103  return checkVariables(dof_object, vars_to_check);
104 }
std::set< MooseVariableFieldBase * > checkVariables(const DofObjectType &dof_object, const std::set< MooseVariableFieldBase *> &vars_to_check)
Check whether all of the supplied variables have degree of freedom indices on the supplied degree of ...
std::set< MooseVariableFieldBase * > _moose_variable_dependencies

◆ checkBlockAndBoundaryCompatibility()

void MaterialPropertyInterface::checkBlockAndBoundaryCompatibility ( std::shared_ptr< MaterialBase discrete)
inherited

Check if block and boundary restrictions of a given material are compatible with the current material.

Error out otherwise.

Definition at line 151 of file MaterialPropertyInterface.C.

Referenced by MaterialPropertyInterface::getMaterialByName().

153 {
154  // Check block compatibility
155  if (!discrete->hasBlocks(_mi_block_ids))
156  {
157  std::ostringstream oss;
158  oss << "Incompatible material and object blocks:";
159 
160  oss << "\n " << paramErrorPrefix(discrete->parameters(), "block")
161  << " material defined on blocks ";
162  for (const auto & sbd_id : discrete->blockIDs())
163  oss << sbd_id << ", ";
164 
165  oss << "\n " << paramErrorPrefix(_mi_params, "block") << " object needs material on blocks ";
166  for (const auto & block_id : _mi_block_ids)
167  oss << block_id << ", ";
168 
169  mooseError(oss.str());
170  }
171 
172  // Check boundary compatibility
173  if (!discrete->hasBoundary(_mi_boundary_ids))
174  {
175  std::ostringstream oss;
176  oss << "Incompatible material and object boundaries:";
177 
178  oss << "\n " << paramErrorPrefix(discrete->parameters(), "boundary")
179  << " material defined on boundaries ";
180  for (const auto & bnd_id : discrete->boundaryIDs())
181  oss << bnd_id << ", ";
182 
183  oss << "\n " << paramErrorPrefix(_mi_params, "boundary")
184  << " object needs material on boundaries ";
185  for (const auto & bnd_id : _mi_boundary_ids)
186  oss << bnd_id << ", ";
187 
188  mooseError(oss.str());
189  }
190 }
const std::set< SubdomainID > & _mi_block_ids
Storage for the block ids created by BlockRestrictable.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::set< BoundaryID > & _mi_boundary_ids
Storage for the boundary ids created by BoundaryRestrictable.
const InputParameters & _mi_params
Parameters of the object with this interface.
std::string paramErrorPrefix(const InputParameters &params, const std::string &param)
Get canonical paramError prefix for param-related error/warning/info messages.

◆ checkExecutionStage()

void MaterialPropertyInterface::checkExecutionStage ( )
protectedinherited

Check and throw an error if the execution has progressed past the construction stage.

Definition at line 226 of file MaterialPropertyInterface.C.

Referenced by MaterialPropertyInterface::getGenericMaterialPropertyByName().

227 {
229  mooseError("Material properties must be retrieved during object construction. This is a code "
230  "problem.");
231 }
FEProblemBase & _mi_feproblem
Reference to the FEProblemBase class.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
virtual bool startedInitialSetup()
Returns true if we are in or beyond the initialSetup stage.

◆ checkFace()

void Moose::FunctorBase< Real >::checkFace ( const Moose::FaceArg face) const
inherited

Examines the incoming face argument.

If the face argument producer (residual object, postprocessor, etc.) did not indicate a sidedness to the face, e.g. if the face_side member of the FaceArg is nullptr, then we may "modify" the sidedness of the argument if we are only defined on one side of the face. If the face argument producer has indicated a sidedness and we are not defined on that side, then we will error

Parameters
faceThe face argument created by the face argument producer, likely a residual object
Returns
A face with possibly changed sidedness depending on whether we aren't defined on both sides of the face

Definition at line 732 of file MooseFunctor.h.

737 {
738 #if DEBUG
739  const Elem * const elem = face.face_side;
740  const FaceInfo * const fi = face.fi;
741  mooseAssert(fi, "face info should be non-null");
742  bool check_elem_def = false;
743  bool check_neighbor_def = false;
744  // We check if the functor is defined on both sides of the face
745  if (!elem)
746  {
747  if (!hasFaceSide(*fi, true))
748  check_neighbor_def = true;
749  else if (!hasFaceSide(*fi, false))
750  check_elem_def = true;
751  }
752  else if (elem == fi->elemPtr())
753  check_elem_def = true;
754  else
755  {
756  mooseAssert(elem == fi->neighborPtr(), "This has to match something");
757  check_neighbor_def = true;
758  }
759 
760  if (check_elem_def && !hasFaceSide(*fi, true))
761  {
762  std::string additional_message = "It is not defined on the neighbor side either.";
763  if (hasFaceSide(*fi, false))
764  additional_message = "It is however defined on the neighbor side.";
765  additional_message += " Face centroid: " + Moose::stringify(fi->faceCentroid());
767  " is not defined on the element side of the face information, but a face argument "
768  "producer "
769  "(e.g. residual object, postprocessor, etc.) has requested evaluation there.\n",
770  additional_message);
771  }
772  if (check_neighbor_def && !hasFaceSide(*fi, false))
773  {
774  std::string additional_message = "It is not defined on the element side either.";
775  if (hasFaceSide(*fi, true))
776  additional_message = "It is however defined on the element side.";
777  additional_message += " Face centroid: " + Moose::stringify(fi->faceCentroid());
778  mooseError(
780  " is not defined on the neighbor side of the face information, but a face argument "
781  "producer (e.g. residual object, postprocessor, etc.) has requested evaluation there.\n",
782  additional_message);
783  }
784 #endif
785 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const libMesh::Elem * face_side
A member that can be used to indicate whether there is a sidedness to this face.
const Point & faceCentroid() const
Returns the coordinates of the face centroid.
Definition: FaceInfo.h:71
This data structure is used to store geometric and variable related metadata about each cell face in ...
Definition: FaceInfo.h:36
const Elem * neighborPtr() const
Definition: FaceInfo.h:84
MooseFunctorName _functor_name
name of the functor
Definition: MooseFunctor.h:564
const FaceInfo * fi
a face information object which defines our location in space
std::string stringify(const T &t)
conversion to string
Definition: Conversion.h:64
const Elem * elemPtr() const
Definition: FaceInfo.h:82
virtual bool hasFaceSide(const FaceInfo &fi, const bool fi_elem_side) const override
Definition: MooseFunctor.h:976

◆ checkFunctorDefinedOnSideBlock()

bool SideIntegralFunctorPostprocessorTempl< is_ad >::checkFunctorDefinedOnSideBlock ( ) const
protectedinherited

Check if the functor and the prefactor are defined on the primary block by the sideset.

Definition at line 97 of file SideIntegralFunctorPostprocessor.C.

98 {
99  if (_functor.hasBlocks(_current_elem->subdomain_id()) &&
100  _prefactor.hasBlocks(_current_elem->subdomain_id()))
101  return true;
102  else
103  {
104 #ifndef NDEBUG
105  const auto neighbor_ptr = _current_elem->neighbor_ptr(_current_side);
106  if (neighbor_ptr)
107  {
108  mooseAssert(_functor.hasBlocks(_current_elem->subdomain_id()) ||
109  _functor.hasBlocks(neighbor_ptr->subdomain_id()),
110  "Functor should be defined on at least one side of the boundary");
111  mooseAssert(_prefactor.hasBlocks(_current_elem->subdomain_id()) ||
112  _prefactor.hasBlocks(neighbor_ptr->subdomain_id()),
113  "Prefactor should be defined on at least one side of the boundary");
114  }
115 #endif
116  return false;
117  }
118 }
const Moose::Functor< GenericReal< is_ad > > & _functor
Functor being integrated.
const unsigned int & _current_side
current side of the current element
const Moose::Functor< GenericReal< is_ad > > & _prefactor
Factor multiplying the functor being integrated.
const Elem *const & _current_elem

◆ checkFunctorSupportsSideIntegration()

template<typename T >
void FunctorInterface::checkFunctorSupportsSideIntegration ( const std::string &  name,
bool  qp_integration 
)
protectedinherited

Throws error if the functor does not support the requested side integration.

Parameters
[in]nameName of functor or functor parameter
[in]qp_integrationTrue if performing qp integration, false if face info

Definition at line 236 of file FunctorInterface.h.

237 {
238  const std::string functor_name = deduceFunctorName(name);
239  const auto & functor = getFunctor<T>(name);
240  if (qp_integration)
241  {
242  if (!functor.supportsElemSideQpArg())
243  mooseError("Quadrature point integration was requested, but the functor '",
244  functor_name,
245  "' does not support this.");
246  }
247  else
248  {
249  if (!functor.supportsFaceArg())
250  mooseError("Face info integration was requested, but the functor '",
251  functor_name,
252  "' does not support this.");
253  }
254 }
std::string name(const ElemQuality q)
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
static std::string deduceFunctorName(const std::string &name, const InputParameters &params)
Helper to look up a functor name through the input parameter keys.

◆ checkMaterialProperty()

void MaterialPropertyInterface::checkMaterialProperty ( const std::string &  name,
const unsigned int  state 
)
protectedvirtualinherited

A helper method for checking material properties This method was required to avoid a compiler problem with the template getMaterialProperty method.

Reimplemented in Material.

Definition at line 122 of file MaterialPropertyInterface.C.

Referenced by Material::checkMaterialProperty(), and MaterialPropertyInterface::getGenericMaterialPropertyByName().

123 {
124  if (state == 0)
125  {
126  // If the material property is boundary restrictable, add to the list of materials to check
128  for (const auto & bnd_id : _mi_boundary_ids)
130 
131  // The default is to assume block restrictions
132  else
133  for (const auto & blk_ids : _mi_block_ids)
135  }
136 }
FEProblemBase & _mi_feproblem
Reference to the FEProblemBase class.
const std::set< SubdomainID > & _mi_block_ids
Storage for the block ids created by BlockRestrictable.
virtual void storeSubdomainDelayedCheckMatProp(const std::string &requestor, SubdomainID block_id, const std::string &name)
Adds to a map based on block ids of material properties to validate.
Definition: SubProblem.C:608
const bool _mi_boundary_restricted
BoundaryRestricted flag.
virtual void storeBoundaryDelayedCheckMatProp(const std::string &requestor, BoundaryID boundary_id, const std::string &name)
Adds to a map based on boundary ids of material properties to validate.
Definition: SubProblem.C:616
const std::set< BoundaryID > & _mi_boundary_ids
Storage for the boundary ids created by BoundaryRestrictable.
const std::string _mi_name
The name of the object that this interface belongs to.

◆ checkVar()

bool Coupleable::checkVar ( const std::string &  var_name,
unsigned int  comp = 0,
unsigned int  comp_bound = 0 
) const
protectedinherited

Check that the right kind of variable is being coupled in.

Parameters
var_nameThe name of the coupled variable

Definition at line 208 of file Coupleable.C.

Referenced by Coupleable::getVarHelper().

211 {
212  const auto var_name = _c_parameters.checkForRename(var_name_in);
213  auto it = _c_coupled_scalar_vars.find(var_name);
214  if (it != _c_coupled_scalar_vars.end())
215  {
216  std::string cvars;
217  for (auto jt : it->second)
218  cvars += " " + jt->name();
219 
220  _obj->paramError(var_name,
221  "cannot couple '",
222  var_name,
223  "' to a scalar variable (",
224  cvars,
225  ") where field variable is expected");
226  }
227 
228  if (!isCoupled(var_name, comp))
229  return false; // return false since variable is *not* coupled
230 
231  auto vars_vector_it = _coupled_vars.find(var_name);
232  if (vars_vector_it == _coupled_vars.end())
233  mooseError(_c_name, ": Trying to get a coupled var ", var_name, " that doesn't exist");
234 
235  const auto & vars_vector = vars_vector_it->second;
236 
237  auto bound = comp_bound ? comp_bound : vars_vector.size();
238  checkComponent(_obj, comp, bound, var_name);
239 
240  // We should know we have a variable now
241  const auto * var = vars_vector[comp];
242  if (!var)
243  mooseError(
244  _c_name,
245  ": We did all our checks for the existence of a var, yet we still don't have a var!?");
246 
247  // Only perform the following checks for objects that feed into residuals/Jacobians, e.g. objects
248  // that inherit from the TaggingInterface
249  if (_c_parameters.have_parameter<MultiMooseEnum>("vector_tags"))
250  {
251  // Are we attempting to couple to a non-FV var in an FV object?
252  if (!var->isFV() && _is_fv)
253  mooseError("Attempting to couple non-FV variable ",
254  var->name(),
255  " into an FV object ",
256  _c_name,
257  ". This is not currently supported");
258  }
259 
260  if (!(vars_vector[comp])->isNodal() && _c_nodal && !_c_allow_element_to_nodal_coupling)
261  mooseError(_c_name, ": cannot couple elemental variables into nodal objects");
262 
263  return true;
264 }
virtual bool isCoupled(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled as name.
Definition: Coupleable.C:128
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > _coupled_vars
Coupled vars whose values we provide.
Definition: Coupleable.h:1409
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const bool _is_fv
Whether the MooseObject is a finite volume object.
Definition: Coupleable.h:1804
const bool _c_allow_element_to_nodal_coupling
Definition: Coupleable.h:1439
std::unordered_map< std::string, std::vector< MooseVariableScalar * > > _c_coupled_scalar_vars
Scalar variables coupled into this object (for error checking)
Definition: Coupleable.h:1797
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398
void paramError(const std::string &param, Args... args) const
Emits an error prefixed with the file and line number of the given param (from the input file) along ...
const MooseObject *const _obj
Definition: Coupleable.h:1806
bool have_parameter(std::string_view name) const
A wrapper around the Parameters base class method.
void checkComponent(const MooseObject *obj, unsigned int comp, unsigned int bound, const std::string &var_name)
Definition: Coupleable.C:177
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type...

◆ checkVariableBoundaryIntegrity()

virtual bool BoundaryRestrictable::checkVariableBoundaryIntegrity ( ) const
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 179 of file BoundaryRestrictable.h.

179 { return true; }

◆ checkVariables()

template<typename DofObjectType >
template std::set< MooseVariableFieldBase * > MooseVariableDependencyInterface::checkVariables ( const DofObjectType &  dof_object,
const std::set< MooseVariableFieldBase *> &  vars_to_check 
)
inherited

Check whether all of the supplied variables have degree of freedom indices on the supplied degree of freedom object.

Parameters
dof_objectThe degree of freedom object (an element or node) that we want to check for existence of variable degrees of freedom on
vars_to_checkthe variables to check
Returns
Any variables that do not have degrees of freedom on the supplied degree of freedom object

Definition at line 25 of file MooseVariableDependencyInterface.C.

Referenced by MooseVariableDependencyInterface::checkAllVariables().

27 {
28  std::set<MooseVariableFieldBase *> vars_without_indices;
29  for (auto * const var : vars_to_check)
30  {
31  var->sys().dofMap().dof_indices(&dof_object, _dof_indices, var->number());
32  if (_dof_indices.empty())
33  vars_without_indices.insert(var);
34  }
35 
36  return vars_without_indices;
37 }
std::vector< libMesh::dof_id_type > _dof_indices
A container for holding dof indices in order to avoid constant memory reallocation.

◆ checkWritableVar()

void Coupleable::checkWritableVar ( MooseWritableVariable var)
protectedinherited

Checks that the passed in variable is only accessed writable by one object in a given subdomain.

Definition at line 950 of file Coupleable.C.

Referenced by Coupleable::writableCoupledValue(), and Coupleable::writableVariable().

951 {
952  // check domain restrictions for compatibility
953  const auto * br = dynamic_cast<const BlockRestrictable *>(this);
954  const auto * nfc = dynamic_cast<const NodeFaceConstraint *>(this);
955 
956  if (br && !var->hasBlocks(br->blockIDs()))
957  mooseError("The variable '",
958  var->name(),
959  "' must be defined on all blocks '",
960  _obj->name(),
961  "' is defined on.");
962 
963  if (nfc && !var->hasBlocks(nfc->getSecondaryConnectedBlocks()))
964  mooseError("The variable '",
965  var->name(),
966  " must be defined on all blocks '",
967  _obj->name(),
968  "'s secondary surface is defined on.");
969 
970  // make sure only one object can access a variable
971  for (const auto & ci : _obj->getMooseApp().getInterfaceObjects<Coupleable>())
972  if (ci != this && ci->_writable_coupled_variables[_c_tid].count(var))
973  {
974  // if both this and ci are block restrictable then we check if the block restrictions
975  // are not overlapping. If they don't we permit the call.
976  const auto * br_other = dynamic_cast<const BlockRestrictable *>(ci);
977  if (br && br_other && br->blockRestricted() && br_other->blockRestricted() &&
978  !MooseUtils::setsIntersect(br->blockIDs(), br_other->blockIDs()))
979  continue;
980  else if (nfc)
981  continue;
982 
983  mooseError("'",
984  ci->_obj->name(),
985  "' already obtained a writable reference to '",
986  var->name(),
987  "'. Only one object can obtain such a reference per variable and subdomain in a "
988  "simulation.");
989  }
990 
991  // var is unique across threads, so we could forego having a separate set per thread, but we
992  // need quick access to the list of all variables that need to be inserted into the solution
993  // vector by a given thread.
994 
995  _writable_coupled_variables[_c_tid].insert(var);
996 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool setsIntersect(InputIterator first1, InputIterator last1, InputIterator first2, InputIterator last2)
This method detects whether two sets intersect without building a result set.
Definition: MooseUtils.h:1147
const std::string & name() const override
Get the variable name.
THREAD_ID _c_tid
Thread ID of the thread using this object.
Definition: Coupleable.h:1442
std::vector< std::set< MooseWritableVariable * > > _writable_coupled_variables
keep a set of allocated writable variable references to make sure only one object can obtain them per...
Definition: Coupleable.h:1813
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
MooseApp & getMooseApp() const
Get the MooseApp this class is associated with.
Definition: MooseBase.h:45
A NodeFaceConstraint is used when you need to create constraints between two surfaces in a mesh...
const MooseObject *const _obj
Definition: Coupleable.h:1806
Interface for objects that needs coupling capabilities.
Definition: Coupleable.h:45
bool hasBlocks(const SubdomainID id) const override
Returns whether the functor is defined on this block.
An interface that restricts an object to subdomains via the &#39;blocks&#39; input parameter.
const std::vector< T * > & getInterfaceObjects() const
Gets the registered interface objects for a given interface.
Definition: MooseApp.h:1625

◆ computeFaceInfoIntegral()

Real SideIntegralFunctorPostprocessorTempl< is_ad >::computeFaceInfoIntegral ( const FaceInfo fi)
overrideprotectedvirtualinherited

Compute contribution from an element face, either on a boundary or between two active elements.

Parameters
fithe FaceInfo, containing the geometric information of the face
Returns
the integral for this element (_current_elem) and side (_current_side)

Reimplemented from SideIntegralPostprocessor.

Definition at line 58 of file SideIntegralFunctorPostprocessor.C.

59 {
60  mooseAssert(fi, "We should have a FaceInfo");
61  const auto face = makeCDFace(*fi);
62  return computeLocalContribution(face);
63 }
Moose::FaceArg makeCDFace(const FaceInfo &fi, const bool correct_skewness=false) const
Make a functor face argument with a central differencing limiter, e.g.

◆ computeIntegral()

Real SideIntegralPostprocessor::computeIntegral ( )
protectedvirtualinherited

Reimplemented in AxisymmetricCenterlineAverageValue.

Definition at line 61 of file SideIntegralPostprocessor.C.

Referenced by SideIntegralPostprocessor::execute().

62 {
63  Real sum = 0;
64  if (_qp_integration)
65  for (_qp = 0; _qp < _qrule->n_points(); _qp++)
66  sum += _JxW[_qp] * _coord[_qp] * computeQpIntegral();
67  else
68  {
69  // Finite volume functors integration is over FaceInfo, not quadrature points
70  getFaceInfos();
71 
72  for (auto & fi : _face_infos)
73  sum += fi->faceArea() * fi->faceCoord() * computeFaceInfoIntegral(fi);
74  }
75  return sum;
76 }
bool _qp_integration
Whether to integrate over quadrature points or FaceInfos.
unsigned int _qp
The local quadrature point index when computing an integral over quadrature points.
std::vector< const FaceInfo * > _face_infos
Holds the FaceInfos to loop on to consider all active neighbors of an element on a given side...
const MooseArray< Real > & _JxW
virtual Real computeFaceInfoIntegral(const FaceInfo *)
void getFaceInfos()
Computes the local FaceInfo(s) to use in functor arguments and interpolations.
const MooseArray< Real > & _coord
virtual Real computeQpIntegral()=0
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const QBase *const & _qrule

◆ computeQpIntegral()

Real SideIntegralFunctorPostprocessorTempl< is_ad >::computeQpIntegral ( )
overrideprotectedvirtualinherited

Implements SideIntegralPostprocessor.

Definition at line 89 of file SideIntegralFunctorPostprocessor.C.

90 {
92  return computeLocalContribution(elem_side_qp);
93 }
const unsigned int & _current_side
current side of the current element
const MooseArray< Point > & _q_point
unsigned int _qp
The local quadrature point index when computing an integral over quadrature points.
const QBase *const & _qrule
const Elem *const & _current_elem
Argument for requesting functor evaluation at quadrature point locations on an element side...

◆ connectControllableParams()

void MooseBaseParameterInterface::connectControllableParams ( const std::string &  parameter,
const std::string &  object_type,
const std::string &  object_name,
const std::string &  object_parameter 
) const
inherited

Connect controllable parameter of this action with the controllable parameters of the objects added by this action.

Parameters
parameterName of the controllable parameter of this action
object_typeType of the object added by this action.
object_nameName of the object added by this action.
object_parameterName of the parameter of the object.

Definition at line 33 of file MooseBaseParameterInterface.C.

37 {
38  MooseObjectParameterName primary_name(uniqueName(), parameter);
39  const auto base_type = _factory.getValidParams(object_type).get<std::string>("_moose_base");
40  MooseObjectParameterName secondary_name(base_type, object_name, object_parameter);
42  primary_name, secondary_name);
43 
44  const auto & tags = _pars.get<std::vector<std::string>>("control_tags");
45  for (const auto & tag : tags)
46  {
47  if (!tag.empty())
48  {
49  // Only adds the parameter with the different control tags if the derived class
50  // properly registers the parameter to its own syntax
51  MooseObjectParameterName tagged_name(tag, _moose_base.name(), parameter);
53  tagged_name, secondary_name, /*error_on_empty=*/false);
54  }
55  }
56 }
void addControllableParameterConnection(const MooseObjectParameterName &primary, const MooseObjectParameterName &secondary, bool error_on_empty=true)
Method for linking control parameters of different names.
const MooseBase & _moose_base
The MooseBase object that inherits this class.
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
InputParameterWarehouse & getInputParameterWarehouse()
Get the InputParameterWarehouse for MooseObjects.
Definition: MooseApp.C:2754
InputParameters getValidParams(const std::string &name) const
Get valid parameters for the object.
Definition: Factory.C:68
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
MooseApp & getMooseApp() const
Get the MooseApp this class is associated with.
Definition: MooseBase.h:45
Factory & _factory
The Factory associated with the MooseApp.
MooseObjectName uniqueName() const
The unique name for accessing input parameters of this object in the InputParameterWarehouse.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
A class for storing an input parameter name.

◆ coupled()

unsigned int Coupleable::coupled ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns the index for a coupled variable by name.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Index of coupled variable, if this is an optionally coupled variable that wasn't provided this will return a unique "invalid" index.

Reimplemented in ShapeUserObject< ElementUserObject >, and ShapeUserObject< SideUserObject >.

Definition at line 441 of file Coupleable.C.

Referenced by Coupleable::coupledIndices(), FunctionMaterialBase< is_ad >::FunctionMaterialBase(), and KernelBase::KernelBase().

442 {
443  const auto * var = getFieldVar(var_name, comp);
444  if (!var)
445  {
446  mooseAssert(_optional_var_index.find(var_name) != _optional_var_index.end(),
447  "optional var index for " << var_name << " does not exist!");
448  // make sure we don't try to access default var ids that were not provided
449  checkComponent(_obj, comp, _optional_var_index.at(var_name).size(), var_name);
450  return _optional_var_index.at(var_name)[comp];
451  }
453 
454  if (var->kind() == Moose::VAR_SOLVER &&
455  // are we not an object that feeds into the nonlinear system?
456  (!_c_sys || _c_sys->varKind() != Moose::VAR_SOLVER ||
457  // are we an object that impacts the nonlinear system and this variable is within our
458  // nonlinear system?
459  var->sys().number() == _c_sys->number()))
460  return var->number();
461  else
462  // Avoid registering coupling to variables outside of our system (e.g. avoid potentially
463  // creating bad Jacobians)
464  return std::numeric_limits<unsigned int>::max() - var->number();
465 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
auto max(const L &left, const R &right)
const SystemBase *const _c_sys
Pointer to the system object if the moose object this is an interface for has one.
Definition: Coupleable.h:1406
unsigned int number() const
Gets the number of this system.
Definition: SystemBase.C:1130
const MooseObject *const _obj
Definition: Coupleable.h:1806
void checkComponent(const MooseObject *obj, unsigned int comp, unsigned int bound, const std::string &var_name)
Definition: Coupleable.C:177
std::unordered_map< std::string, std::vector< unsigned int > > _optional_var_index
Unique indices for optionally coupled vars that weren&#39;t provided.
Definition: Coupleable.h:1794
Moose::VarKindType varKind() const
Definition: SystemBase.h:925
const MooseVariableFieldBase * getFieldVar(const std::string &var_name, unsigned int comp) const
Definition: Coupleable.C:281

◆ coupledAllDofValues()

std::vector< const VariableValue * > Coupleable::coupledAllDofValues ( const std::string &  var_name) const
protectedinherited

Returns DoFs in the current solution vector of all of a coupled variable's components for the local element.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableValue pointers for each component of the coupled variable

Definition at line 2038 of file Coupleable.C.

2039 {
2040  auto func = [this, &var_name](unsigned int comp) { return &coupledDofValues(var_name, comp); };
2041  return coupledVectorHelper<const VariableValue *>(var_name, func);
2042 }
virtual const VariableValue & coupledDofValues(const std::string &var_name, unsigned int comp=0) const
Returns DoFs in the current solution vector of a coupled variable for the local element.
Definition: Coupleable.C:2025

◆ coupledAllDofValuesOld()

std::vector< const VariableValue * > Coupleable::coupledAllDofValuesOld ( const std::string &  var_name) const
protectedinherited

Returns DoFs in the old solution vector of all of a coupled variable's components for the local element.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableValue pointers for each compontnet of the coupled variable

Definition at line 2058 of file Coupleable.C.

2059 {
2060  auto func = [this, &var_name](unsigned int comp) { return &coupledDofValuesOld(var_name, comp); };
2061  return coupledVectorHelper<const VariableValue *>(var_name, func);
2062 }
virtual const VariableValue & coupledDofValuesOld(const std::string &var_name, unsigned int comp=0) const
Returns DoFs in the old solution vector of a coupled variable for the local element.
Definition: Coupleable.C:2045

◆ coupledAllDofValuesOlder()

std::vector< const VariableValue * > Coupleable::coupledAllDofValuesOlder ( const std::string &  var_name) const
protectedinherited

Returns DoFs in the older solution vector of all of a coupled variable's components for the local element.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableValue pointers for each component of the coupled variable

Definition at line 2078 of file Coupleable.C.

2079 {
2080  auto func = [this, &var_name](unsigned int comp)
2081  { return &coupledDofValuesOlder(var_name, comp); };
2082  return coupledVectorHelper<const VariableValue *>(var_name, func);
2083 }
virtual const VariableValue & coupledDofValuesOlder(const std::string &var_name, unsigned int comp=0) const
Returns DoFs in the older solution vector of a coupled variable for the local element.
Definition: Coupleable.C:2065

◆ coupledArrayDofValues()

const ArrayVariableValue & Coupleable::coupledArrayDofValues ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns DoFs in the current solution vector of a coupled array variable for the local element.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a VariableValue for the DoFs of the coupled variable

Definition at line 2086 of file Coupleable.C.

2087 {
2088  const auto * var = getArrayVar(var_name, comp);
2089  if (!var)
2090  return *getDefaultArrayValue(var_name);
2092 
2093  if (!_coupleable_neighbor)
2094  return (_c_is_implicit) ? var->dofValues() : var->dofValuesOld();
2095  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
2096 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
const ArrayVariableValue * getDefaultArrayValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled array variable...
Definition: Coupleable.C:396
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledArrayDot()

const ArrayVariableValue & Coupleable::coupledArrayDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Time derivative of a coupled array variable.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a ArrayVariableValue containing the time derivative of the coupled variable

Definition at line 1348 of file Coupleable.C.

1349 {
1350  const auto * var = getArrayVar(var_name, comp);
1351  if (!var)
1354 
1355  if (!_coupleable_neighbor)
1356  {
1357  if (_c_nodal)
1358  return var->dofValuesDot();
1359  return var->uDot();
1360  }
1361  else
1362  {
1363  if (_c_nodal)
1364  return var->dofValuesDotNeighbor();
1365  return var->uDotNeighbor();
1366  }
1367 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableValue _default_array_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1527

◆ coupledArrayDotDot()

const ArrayVariableValue & Coupleable::coupledArrayDotDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Second time derivative of a coupled array variable.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a ArrayVariableValue containing the time derivative of the coupled variable

Definition at line 1370 of file Coupleable.C.

1371 {
1372  const auto * var = getArrayVar(var_name, comp);
1373  if (!var)
1376 
1377  if (!_coupleable_neighbor)
1378  {
1379  if (_c_nodal)
1380  return var->dofValuesDotDot();
1381  return var->uDotDot();
1382  }
1383  else
1384  {
1385  if (_c_nodal)
1386  return var->dofValuesDotDotNeighbor();
1387  return var->uDotDotNeighbor();
1388  }
1389 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableValue _default_array_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1527

◆ coupledArrayDotDotOld()

const ArrayVariableValue & Coupleable::coupledArrayDotDotOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Old second time derivative of a coupled array variable.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a ArrayVariableValue containing the time derivative of the coupled variable

Definition at line 1414 of file Coupleable.C.

1415 {
1416  const auto * var = getArrayVar(var_name, comp);
1417  if (!var)
1420 
1421  if (!_coupleable_neighbor)
1422  {
1423  if (_c_nodal)
1424  return var->dofValuesDotDotOld();
1425  return var->uDotDotOld();
1426  }
1427  else
1428  {
1429  if (_c_nodal)
1430  return var->dofValuesDotDotOldNeighbor();
1431  return var->uDotDotOldNeighbor();
1432  }
1433 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableValue _default_array_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1527

◆ coupledArrayDotDu()

const VariableValue & Coupleable::coupledArrayDotDu ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Time derivative of a coupled array variable with respect to the coefficients.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a ArrayVariableValue containing the time derivative of the coupled variable

Definition at line 1486 of file Coupleable.C.

1487 {
1488  const auto * const var = getArrayVar(var_name, comp);
1489  if (!var)
1490  {
1492  return _default_value_zero;
1493  }
1495 
1496  if (!_coupleable_neighbor)
1497  {
1498  if (_c_nodal)
1499  return var->dofValuesDuDotDu();
1500  return var->duDotDu();
1501  }
1502  else
1503  {
1504  if (_c_nodal)
1505  return var->dofValuesDuDotDuNeighbor();
1506  return var->duDotDuNeighbor();
1507  }
1508 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledArrayDotOld()

const ArrayVariableValue & Coupleable::coupledArrayDotOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Old time derivative of a coupled array variable.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a ArrayVariableValue containing the time derivative of the coupled variable

Definition at line 1392 of file Coupleable.C.

1393 {
1394  const auto * var = getArrayVar(var_name, comp);
1395  if (!var)
1398 
1399  if (!_coupleable_neighbor)
1400  {
1401  if (_c_nodal)
1402  return var->dofValuesDotOld();
1403  return var->uDotOld();
1404  }
1405  else
1406  {
1407  if (_c_nodal)
1408  return var->dofValuesDotOldNeighbor();
1409  return var->uDotOldNeighbor();
1410  }
1411 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableValue _default_array_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1527

◆ coupledArrayGradient()

const ArrayVariableGradient & Coupleable::coupledArrayGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns gradient of a coupled array variable.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a VectorVariableGradient containing the gradient of the coupled array variable

Definition at line 1656 of file Coupleable.C.

1657 {
1658  const auto * var = getArrayVar(var_name, comp);
1659  if (!var)
1660  return _default_array_gradient;
1662 
1663  if (!_coupleable_neighbor)
1664  return (_c_is_implicit) ? var->gradSln() : var->gradSlnOld();
1665  return (_c_is_implicit) ? var->gradSlnNeighbor() : var->gradSlnOldNeighbor();
1666 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableGradient _default_array_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1530

◆ coupledArrayGradientDot()

const ArrayVariableGradient & Coupleable::coupledArrayGradientDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Retun a gradient of a coupled array variable's time derivative.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a ArrayVariableGradient containing the gradient of the time derivative the coupled array variable

Definition at line 1695 of file Coupleable.C.

1696 {
1697  const auto * const var = getArrayVar(var_name, comp);
1698  if (!var)
1699  return _default_array_gradient;
1701 
1702  if (!_coupleable_neighbor)
1703  return var->gradSlnDot();
1704  return var->gradSlnNeighborDot();
1705 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableGradient _default_array_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1530

◆ coupledArrayGradientOld()

const ArrayVariableGradient & Coupleable::coupledArrayGradientOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old gradient from previous time step of a coupled array variable.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a VectorVariableGradient containing the old gradient of the coupled array variable

Definition at line 1669 of file Coupleable.C.

1670 {
1671  const auto * var = getArrayVar(var_name, comp);
1672  if (!var)
1673  return _default_array_gradient;
1675 
1676  if (!_coupleable_neighbor)
1677  return (_c_is_implicit) ? var->gradSlnOld() : var->gradSlnOlder();
1678  return (_c_is_implicit) ? var->gradSlnOldNeighbor() : var->gradSlnOlderNeighbor();
1679 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableGradient _default_array_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1530

◆ coupledArrayGradientOlder()

const ArrayVariableGradient & Coupleable::coupledArrayGradientOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old gradient from two time steps previous of a coupled array variable.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a ArrayVariableGradient containing the older gradient of the coupled array variable

Definition at line 1682 of file Coupleable.C.

1683 {
1684  const auto * var = getArrayVar(var_name, comp);
1685  if (!var)
1686  return _default_array_gradient;
1688 
1689  if (!_coupleable_neighbor)
1690  return var->gradSlnOlder();
1691  return var->gradSlnOlderNeighbor();
1692 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableGradient _default_array_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1530

◆ coupledArrayValue()

const ArrayVariableValue & Coupleable::coupledArrayValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns value of a coupled array variable.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a ArrayVariableValue for the coupled vector variable
See also
ArrayKernel::_u

Definition at line 848 of file Coupleable.C.

Referenced by Coupleable::coupledArrayValues().

849 {
850  const auto * var = getArrayVar(var_name, comp);
851  if (!var)
852  return *getDefaultArrayValue(var_name);
854 
856  {
857  if (_c_nodal)
858  return (_c_is_implicit) ? var->dofValues() : var->dofValuesOld();
859  return (_c_is_implicit) ? var->sln() : var->slnOld();
860  }
861  else
862  {
863  if (_c_nodal)
864  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
865  return (_c_is_implicit) ? var->slnNeighbor() : var->slnOldNeighbor();
866  }
867 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
const ArrayVariableValue * getDefaultArrayValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled array variable...
Definition: Coupleable.C:396
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledArrayValueByName()

const ArrayVariableValue & CoupleableMooseVariableDependencyIntermediateInterface::coupledArrayValueByName ( const std::string &  var_name)
virtualinherited

Returns value of a coupled array variable give the variable name.

Parameters
var_nameName of coupled variable
Returns
Reference to a ArrayVariableValue for the coupled array variable

Definition at line 55 of file CoupleableMooseVariableDependencyIntermediateInterface.C.

57 {
60  _coupled_moose_vars.push_back(moose_var);
62  _coupled_array_moose_vars.push_back(var);
63 
64  addMooseVariableDependency(moose_var);
65 
67  {
68  if (_c_nodal)
69  return (_c_is_implicit) ? var->dofValues() : var->dofValuesOld();
70  else
71  return (_c_is_implicit) ? var->sln() : var->slnOld();
72  }
73  else
74  {
75  if (_c_nodal)
76  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
77  else
78  return (_c_is_implicit) ? var->slnNeighbor() : var->slnOldNeighbor();
79  }
80 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
Class for stuff related to variables.
Definition: Adaptivity.h:31
std::vector< ArrayMooseVariable * > _coupled_array_moose_vars
Vector of array coupled variables.
Definition: Coupleable.h:1421
const FieldVariableValue & slnNeighbor() const override
neighbor solutions
THREAD_ID _c_tid
Thread ID of the thread using this object.
Definition: Coupleable.h:1442
This class provides an interface for common operations on field variables of both FE and FV types wit...
const DoFValue & dofValuesNeighbor() const override
virtual const MooseVariableFieldBase & getVariable(const THREAD_ID tid, const std::string &var_name, Moose::VarKindType expected_var_type=Moose::VarKindType::VAR_ANY, Moose::VarFieldType expected_var_field_type=Moose::VarFieldType::VAR_FIELD_ANY) const override
Returns the variable reference for requested variable which must be of the expected_var_type (Nonline...
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const FieldVariableValue & sln() const override
element solutions
const DoFValue & dofValuesOld() const override
const DoFValue & dofValuesOldNeighbor() const override
std::vector< MooseVariableFieldBase * > _coupled_moose_vars
Vector of all coupled variables.
Definition: Coupleable.h:1412
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void addMooseVariableDependency(MooseVariableFieldBase *var)
Call this function to add the passed in MooseVariableFieldBase as a variable that this object depends...
const DoFValue & dofValues() const override
dof values getters
virtual ArrayMooseVariable & getArrayVariable(const THREAD_ID tid, const std::string &var_name) override
Returns the variable reference for requested ArrayMooseVariable which may be in any system...
const FieldVariableValue & slnOld() const override
const FieldVariableValue & slnOldNeighbor() const override

◆ coupledArrayValueOld()

const ArrayVariableValue & Coupleable::coupledArrayValueOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old value from previous time step of a coupled array variable.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a ArrayVariableValue containing the old value of the coupled variable
See also
ArrayKernel::_u_old

Definition at line 1094 of file Coupleable.C.

1095 {
1096  const auto * var = getArrayVar(var_name, comp);
1097  if (!var)
1098  return *getDefaultArrayValue(var_name);
1100 
1101  if (!_coupleable_neighbor)
1102  {
1103  if (_c_nodal)
1104  return (_c_is_implicit) ? var->dofValuesOld() : var->dofValuesOlder();
1105  return (_c_is_implicit) ? var->slnOld() : var->slnOlder();
1106  }
1107  else
1108  {
1109  if (_c_nodal)
1110  return (_c_is_implicit) ? var->dofValuesOldNeighbor() : var->dofValuesOlderNeighbor();
1111  return (_c_is_implicit) ? var->slnOldNeighbor() : var->slnOlderNeighbor();
1112  }
1113 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
const ArrayVariableValue * getDefaultArrayValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled array variable...
Definition: Coupleable.C:396
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledArrayValueOlder()

const ArrayVariableValue & Coupleable::coupledArrayValueOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old value from two time steps previous of a coupled array variable.

Parameters
var_nameName of coupled array variable
compComponent number for vector of coupled array variables
Returns
Reference to a ArrayVariableValue containing the older value of the coupled variable
See also
ArrayKernel::_u_older

Definition at line 1116 of file Coupleable.C.

1117 {
1118  const auto * var = getArrayVar(var_name, comp);
1119  if (!var)
1120  return *getDefaultArrayValue(var_name);
1122 
1123  if (!_coupleable_neighbor)
1124  {
1125  if (_c_nodal)
1126  return var->dofValuesOlder();
1127  return var->slnOlder();
1128  }
1129  else
1130  {
1131  if (_c_nodal)
1132  return var->dofValuesOlderNeighbor();
1133  return var->slnOlderNeighbor();
1134  }
1135 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
const ArrayVariableValue * getDefaultArrayValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled array variable...
Definition: Coupleable.C:396
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledArrayValues()

std::vector< const ArrayVariableValue * > Coupleable::coupledArrayValues ( const std::string &  var_name) const
protectedinherited

Returns the values for all of a coupled array variable's components.

Parameters
var_nameName of coupled array variable
Returns
Vector of ArrayVariableValue pointers for each component of var_name

Definition at line 870 of file Coupleable.C.

871 {
872  auto func = [this, &var_name](unsigned int comp) { return &coupledArrayValue(var_name, comp); };
873  return coupledVectorHelper<const ArrayVariableValue *>(var_name, func);
874 }
virtual const ArrayVariableValue & coupledArrayValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled array variable.
Definition: Coupleable.C:848

◆ coupledCallback()

virtual void Coupleable::coupledCallback ( const std::string &  ,
bool   
) const
inlineprotectedvirtualinherited

A call-back function provided by the derived object for actions before coupling a variable with functions such as coupledValue.

Reimplemented in AuxKernelTempl< ComputeValueType >, AuxKernelTempl< RT >, AuxKernelTempl< RealVectorValue >, and AuxKernelTempl< Real >.

Definition at line 135 of file Coupleable.h.

Referenced by Coupleable::checkFuncType().

135 {}

◆ coupledComponents()

unsigned int Coupleable::coupledComponents ( const std::string &  var_name) const
protectedinherited

Number of coupled components.

Parameters
var_nameName of the variable
Returns
number of components this variable has (usually 1)

Definition at line 157 of file Coupleable.C.

Referenced by Coupleable::coupledVectorHelper(), KernelBase::KernelBase(), SpatialAverageBase::SpatialAverageBase(), and VariableValueVolumeHistogram::VariableValueVolumeHistogram().

158 {
159  const auto var_name = _c_parameters.checkForRename(var_name_in);
160 
161  if (isCoupled(var_name))
162  {
163  mooseAssert(_coupled_vars.find(var_name) != _coupled_vars.end(),
164  var_name << " must not actually be coupled!");
165  return _coupled_vars.at(var_name).size();
166  }
167  else
168  {
170  return _c_parameters.numberDefaultCoupledValues(var_name);
171  else
172  return 0;
173  }
174 }
virtual bool isCoupled(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled as name.
Definition: Coupleable.C:128
std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > _coupled_vars
Coupled vars whose values we provide.
Definition: Coupleable.h:1409
unsigned int numberDefaultCoupledValues(const std::string &coupling_name) const
Get the number of defaulted coupled value entries.
bool hasDefaultCoupledValue(const std::string &coupling_name) const
Return whether or not the requested parameter has a default coupled value.
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.
const InputParameters & _c_parameters
Definition: Coupleable.h:1395

◆ coupledCurl()

const VectorVariableCurl & Coupleable::coupledCurl ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns curl of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VectorVariableCurl containing the curl of the coupled variable
See also
Kernel::_curl_u

Definition at line 1708 of file Coupleable.C.

1709 {
1710  const auto * var = getVectorVar(var_name, comp);
1711  if (!var)
1712  {
1714  return _default_vector_curl;
1715  }
1717 
1718  if (!_coupleable_neighbor)
1719  return (_c_is_implicit) ? var->curlSln() : var->curlSlnOld();
1720  return (_c_is_implicit) ? var->curlSlnNeighbor() : var->curlSlnOldNeighbor();
1721 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorVariableCurl _default_vector_curl
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1518
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledCurlOld()

const VectorVariableCurl & Coupleable::coupledCurlOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old curl from previous time step of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VectorVariableCurl containing the old curl of the coupled variable
See also
Kernel::_curl_u_old

Definition at line 1724 of file Coupleable.C.

1725 {
1726  const auto * var = getVectorVar(var_name, comp);
1727  if (!var)
1728  {
1730  return _default_vector_curl;
1731  }
1733 
1734  if (!_coupleable_neighbor)
1735  return (_c_is_implicit) ? var->curlSlnOld() : var->curlSlnOlder();
1736  return (_c_is_implicit) ? var->curlSlnOldNeighbor() : var->curlSlnOlderNeighbor();
1737 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorVariableCurl _default_vector_curl
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1518
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledCurlOlder()

const VectorVariableCurl & Coupleable::coupledCurlOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old curl from two time steps previous of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VectorVariableCurl containing the older curl of the coupled variable
See also
Kernel::_curl_u_older

Definition at line 1740 of file Coupleable.C.

1741 {
1742  const auto * var = getVectorVar(var_name, comp);
1743  if (!var)
1744  {
1746  return _default_vector_curl;
1747  }
1749 
1750  if (!_coupleable_neighbor)
1751  return var->curlSlnOlder();
1752  return var->curlSlnOlderNeighbor();
1753 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorVariableCurl _default_vector_curl
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1518
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledDiv()

const VectorVariableDivergence & Coupleable::coupledDiv ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns divergence of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VectorVariableDivergence containing the divergence of the coupled variable
See also
Kernel::_div_u

Definition at line 1773 of file Coupleable.C.

1774 {
1775  const auto * var = getVectorVar(var_name, comp);
1776  if (!var)
1777  {
1779  return _default_div;
1780  }
1782 
1783  if (!_coupleable_neighbor)
1784  return (_c_is_implicit) ? var->divSln() : var->divSlnOld();
1785  return (_c_is_implicit) ? var->divSlnNeighbor() : var->divSlnOldNeighbor();
1786 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
VectorVariableDivergence _default_div
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1521
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledDivOld()

const VectorVariableDivergence & Coupleable::coupledDivOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old divergence from previous time step of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VectorVariableDivergence containing the old divergence of the coupled variable
See also
Kernel::_div_u_old

Definition at line 1789 of file Coupleable.C.

1790 {
1791  const auto * var = getVectorVar(var_name, comp);
1792  if (!var)
1793  {
1795  return _default_div;
1796  }
1798 
1799  if (!_coupleable_neighbor)
1800  return (_c_is_implicit) ? var->divSlnOld() : var->divSlnOlder();
1801  return (_c_is_implicit) ? var->divSlnOldNeighbor() : var->divSlnOlderNeighbor();
1802 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
VectorVariableDivergence _default_div
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1521
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledDivOlder()

const VectorVariableDivergence & Coupleable::coupledDivOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old divergence from two time steps previous of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VectorVariableDivergence containing the older divergence of the coupled variable
See also
Kernel::_div_u_older

Definition at line 1805 of file Coupleable.C.

1806 {
1807  const auto * var = getVectorVar(var_name, comp);
1808  if (!var)
1809  {
1811  return _default_div;
1812  }
1814 
1815  if (!_coupleable_neighbor)
1816  return var->divSlnOlder();
1817  return var->divSlnOlderNeighbor();
1818 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
VectorVariableDivergence _default_div
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1521
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledDofValues()

const VariableValue & Coupleable::coupledDofValues ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns DoFs in the current solution vector of a coupled variable for the local element.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the DoFs of the coupled variable

Definition at line 2025 of file Coupleable.C.

Referenced by Coupleable::coupledAllDofValues().

2026 {
2027  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2028  if (!var)
2029  return *getDefaultValue(var_name, comp);
2031 
2032  if (!_coupleable_neighbor)
2033  return (_c_is_implicit) ? var->dofValues() : var->dofValuesOld();
2034  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
2035 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledDofValuesOld()

const VariableValue & Coupleable::coupledDofValuesOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns DoFs in the old solution vector of a coupled variable for the local element.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the old DoFs of the coupled variable

Definition at line 2045 of file Coupleable.C.

Referenced by Coupleable::coupledAllDofValuesOld().

2046 {
2047  const auto * var = getVar(var_name, comp);
2048  if (!var)
2049  return *getDefaultValue(var_name, comp);
2051 
2052  if (!_coupleable_neighbor)
2053  return (_c_is_implicit) ? var->dofValuesOld() : var->dofValuesOlder();
2054  return (_c_is_implicit) ? var->dofValuesOldNeighbor() : var->dofValuesOlderNeighbor();
2055 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledDofValuesOlder()

const VariableValue & Coupleable::coupledDofValuesOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns DoFs in the older solution vector of a coupled variable for the local element.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the older DoFs of the coupled variable

Definition at line 2065 of file Coupleable.C.

Referenced by Coupleable::coupledAllDofValuesOlder().

2066 {
2067  const auto * var = getVar(var_name, comp);
2068  if (!var)
2069  return *getDefaultValue(var_name, comp);
2071 
2072  if (!_coupleable_neighbor)
2073  return var->dofValuesOlder();
2074  return var->dofValuesOlderNeighbor();
2075 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledDot()

const VariableValue & Coupleable::coupledDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Time derivative of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the time derivative of the coupled variable

Reimplemented in AuxKernelTempl< ComputeValueType >, AuxKernelTempl< RT >, AuxKernelTempl< RealVectorValue >, and AuxKernelTempl< Real >.

Definition at line 1138 of file Coupleable.C.

Referenced by AuxKernelTempl< Real >::coupledDot(), and Coupleable::coupledDots().

1139 {
1140  const auto * var = getVar(var_name, comp);
1141  if (!var)
1142  {
1144  return _default_value_zero;
1145  }
1147 
1148  if (!_coupleable_neighbor)
1149  {
1150  if (_c_nodal)
1151  return var->dofValuesDot();
1152  return var->uDot();
1153  }
1154  else
1155  {
1156  if (_c_nodal)
1157  return var->dofValuesDotNeighbor();
1158  return var->uDotNeighbor();
1159  }
1160 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledDotDot()

const VariableValue & Coupleable::coupledDotDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Second time derivative of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the second time derivative of the coupled variable

Definition at line 1163 of file Coupleable.C.

1164 {
1165  const auto * var = getVar(var_name, comp);
1166  if (!var)
1167  {
1169  return _default_value_zero;
1170  }
1172 
1173  if (!_coupleable_neighbor)
1174  {
1175  if (_c_nodal)
1176  return var->dofValuesDotDot();
1177  return var->uDotDot();
1178  }
1179  else
1180  {
1181  if (_c_nodal)
1182  return var->dofValuesDotDotNeighbor();
1183  return var->uDotDotNeighbor();
1184  }
1185 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledDotDotDu()

const VariableValue & Coupleable::coupledDotDotDu ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Second time derivative of a coupled variable with respect to the coefficients.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the time derivative of the coupled variable with respect to the coefficients

Definition at line 1461 of file Coupleable.C.

1462 {
1463  const auto * var = getVar(var_name, comp);
1464  if (!var)
1465  {
1467  return _default_value_zero;
1468  }
1470 
1471  if (!_coupleable_neighbor)
1472  {
1473  if (_c_nodal)
1474  return var->dofValuesDuDotDotDu();
1475  return var->duDotDotDu();
1476  }
1477  else
1478  {
1479  if (_c_nodal)
1480  return var->dofValuesDuDotDotDuNeighbor();
1481  return var->duDotDotDuNeighbor();
1482  }
1483 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledDotDotOld()

const VariableValue & Coupleable::coupledDotDotOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Old second time derivative of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the old second time derivative of the coupled variable

Definition at line 1227 of file Coupleable.C.

1228 {
1229  const auto * var = getVar(var_name, comp);
1230  if (!var)
1231  {
1233  return _default_value_zero;
1234  }
1236 
1237  if (!_coupleable_neighbor)
1238  {
1239  if (_c_nodal)
1240  return var->dofValuesDotDotOld();
1241  return var->uDotDotOld();
1242  }
1243  else
1244  {
1245  if (_c_nodal)
1246  return var->dofValuesDotDotOldNeighbor();
1247  return var->uDotDotOldNeighbor();
1248  }
1249 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledDotDu()

const VariableValue & Coupleable::coupledDotDu ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Time derivative of a coupled variable with respect to the coefficients.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the time derivative of the coupled variable with respect to the coefficients

Reimplemented in AuxKernelTempl< ComputeValueType >, AuxKernelTempl< RT >, AuxKernelTempl< RealVectorValue >, and AuxKernelTempl< Real >.

Definition at line 1436 of file Coupleable.C.

Referenced by AuxKernelTempl< Real >::coupledDotDu().

1437 {
1438  const auto * var = getVar(var_name, comp);
1439  if (!var)
1440  {
1442  return _default_value_zero;
1443  }
1445 
1446  if (!_coupleable_neighbor)
1447  {
1448  if (_c_nodal)
1449  return var->dofValuesDuDotDu();
1450  return var->duDotDu();
1451  }
1452  else
1453  {
1454  if (_c_nodal)
1455  return var->dofValuesDuDotDuNeighbor();
1456  return var->duDotDuNeighbor();
1457  }
1458 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledDotOld()

const VariableValue & Coupleable::coupledDotOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Old time derivative of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the old time derivative of the coupled variable

Definition at line 1202 of file Coupleable.C.

1203 {
1204  const auto * var = getVar(var_name, comp);
1205  if (!var)
1206  {
1208  return _default_value_zero;
1209  }
1211 
1212  if (!_coupleable_neighbor)
1213  {
1214  if (_c_nodal)
1215  return var->dofValuesDotOld();
1216  return var->uDotOld();
1217  }
1218  else
1219  {
1220  if (_c_nodal)
1221  return var->dofValuesDotOldNeighbor();
1222  return var->uDotOldNeighbor();
1223  }
1224 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledDots()

std::vector< const VariableValue * > Coupleable::coupledDots ( const std::string &  var_name) const
protectedinherited

Returns the time derivatives for all of a coupled variable's components.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableValue pointers for each component of var_name

Definition at line 2745 of file Coupleable.C.

2746 {
2747  auto func = [this, &var_name](unsigned int comp) { return &coupledDot(var_name, comp); };
2748  return coupledVectorHelper<const VariableValue *>(var_name, func);
2749 }
virtual const VariableValue & coupledDot(const std::string &var_name, unsigned int comp=0) const
Time derivative of a coupled variable.
Definition: Coupleable.C:1138

◆ coupledGenericDofValue() [1/3]

template<bool is_ad>
const GenericVariableValue<is_ad>& Coupleable::coupledGenericDofValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns DOF value of a coupled variable for use in templated automatic differentiation classes.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a GenericVariableValue for the coupled variable

◆ coupledGenericDofValue() [2/3]

template<>
const GenericVariableValue<false>& Coupleable::coupledGenericDofValue ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 588 of file Coupleable.C.

589 {
590  return coupledDofValues(var_name, comp);
591 }
virtual const VariableValue & coupledDofValues(const std::string &var_name, unsigned int comp=0) const
Returns DoFs in the current solution vector of a coupled variable for the local element.
Definition: Coupleable.C:2025

◆ coupledGenericDofValue() [3/3]

template<>
const GenericVariableValue<true>& Coupleable::coupledGenericDofValue ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 595 of file Coupleable.C.

596 {
597  return adCoupledDofValues(var_name, comp);
598 }
virtual const ADVariableValue & adCoupledDofValues(const std::string &var_name, unsigned int comp=0) const
Returns DOF value of a coupled variable for use in Automatic Differentiation.
Definition: Coupleable.C:2099

◆ coupledGenericDot() [1/3]

template<bool is_ad>
const GenericVariableValue<is_ad>& Coupleable::coupledGenericDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns time derivative of a coupled variable for use in templated automatic differentiation classes.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a GenericVariableValue for the coupled variable time derivative

◆ coupledGenericDot() [2/3]

template<>
const GenericVariableValue<false>& Coupleable::coupledGenericDot ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 2760 of file Coupleable.C.

2761 {
2762  return coupledDot(var_name, comp);
2763 }
virtual const VariableValue & coupledDot(const std::string &var_name, unsigned int comp=0) const
Time derivative of a coupled variable.
Definition: Coupleable.C:1138

◆ coupledGenericDot() [3/3]

template<>
const GenericVariableValue<true>& Coupleable::coupledGenericDot ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 2767 of file Coupleable.C.

2768 {
2769  return adCoupledDot(var_name, comp);
2770 }
const ADVariableValue & adCoupledDot(const std::string &var_name, unsigned int comp=0) const
Time derivative of a coupled variable for ad simulations.
Definition: Coupleable.C:2249

◆ coupledGenericDotDot() [1/3]

template<bool is_ad>
const GenericVariableValue<is_ad>& Coupleable::coupledGenericDotDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns the second time derivative of a coupled variable for use in templated automatic differentiation classes.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a GenericVariableValue for the coupled variable second time derivative

◆ coupledGenericDotDot() [2/3]

template<>
const GenericVariableValue<false>& Coupleable::coupledGenericDotDot ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 1189 of file Coupleable.C.

1190 {
1191  return coupledDotDot(var_name, comp);
1192 }
virtual const VariableValue & coupledDotDot(const std::string &var_name, unsigned int comp=0) const
Second time derivative of a coupled variable.
Definition: Coupleable.C:1163

◆ coupledGenericDotDot() [3/3]

template<>
const GenericVariableValue<true>& Coupleable::coupledGenericDotDot ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 1196 of file Coupleable.C.

1197 {
1198  return adCoupledDotDot(var_name, comp);
1199 }
const ADVariableValue & adCoupledDotDot(const std::string &var_name, unsigned int comp=0) const
Second time derivative of a coupled variable for ad simulations.
Definition: Coupleable.C:2272

◆ coupledGenericGradient() [1/3]

template<bool is_ad>
const GenericVariableGradient<is_ad>& Coupleable::coupledGenericGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns gradient of a coupled variable for use in templated automatic differentiation.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableGradient containing the gradient of the coupled variable
See also
Kernel::gradient

◆ coupledGenericGradient() [2/3]

template<>
const GenericVariableGradient<false>& Coupleable::coupledGenericGradient ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 2462 of file Coupleable.C.

2463 {
2464  return coupledGradient(var_name, comp);
2465 }
virtual const VariableGradient & coupledGradient(const std::string &var_name, unsigned int comp=0) const
Returns gradient of a coupled variable.
Definition: Coupleable.C:1511

◆ coupledGenericGradient() [3/3]

template<>
const GenericVariableGradient<true>& Coupleable::coupledGenericGradient ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 2469 of file Coupleable.C.

2470 {
2471  return adCoupledGradient(var_name, comp);
2472 }
const ADVariableGradient & adCoupledGradient(const std::string &var_name, unsigned int comp=0) const
Returns gradient of a coupled variable for use in Automatic Differentiation.
Definition: Coupleable.C:2190

◆ coupledGenericGradients() [1/3]

template<bool is_ad>
std::vector<const GenericVariableGradient<is_ad> *> Coupleable::coupledGenericGradients ( const std::string &  var_name) const
protectedinherited

Returns the gradients for all of a coupled variable's components for use in templated automatic differentiation.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableGradient pointers for each component of var_name

◆ coupledGenericGradients() [2/3]

template<>
std::vector<const GenericVariableGradient<false> *> Coupleable::coupledGenericGradients ( const std::string &  var_name) const
protectedinherited

Definition at line 2717 of file Coupleable.C.

2718 {
2719  return coupledGradients(var_name);
2720 }
std::vector< const VariableGradient * > coupledGradients(const std::string &var_name) const
Returns the gradients for all of a coupled variable&#39;s components.
Definition: Coupleable.C:2709

◆ coupledGenericGradients() [3/3]

template<>
std::vector<const GenericVariableGradient<true> *> Coupleable::coupledGenericGradients ( const std::string &  var_name) const
protectedinherited

Definition at line 2724 of file Coupleable.C.

2725 {
2726  auto func = [this, &var_name](unsigned int comp) { return &adCoupledGradient(var_name, comp); };
2727  return coupledVectorHelper<const GenericVariableGradient<true> *>(var_name, func);
2728 }
const ADVariableGradient & adCoupledGradient(const std::string &var_name, unsigned int comp=0) const
Returns gradient of a coupled variable for use in Automatic Differentiation.
Definition: Coupleable.C:2190

◆ coupledGenericScalarValue() [1/3]

template<bool is_ad>
const GenericVariableValue<is_ad>& ScalarCoupleable::coupledGenericScalarValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns value of a coupled scalar variable for use in templated automatic differentiation classes.

Parameters
var_nameName of coupled scalar variable
compComponent number for vector of coupled scalar variables
Returns
Reference to a GenericVariableValue for the coupled scalar variable

◆ coupledGenericScalarValue() [2/3]

template<>
const GenericVariableValue<false>& ScalarCoupleable::coupledGenericScalarValue ( const std::string &  var_name,
const unsigned int  comp 
) const
protectedinherited

Definition at line 152 of file ScalarCoupleable.C.

154 {
155  return coupledScalarValue(var_name, comp);
156 }
const VariableValue & coupledScalarValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a scalar coupled variable.

◆ coupledGenericScalarValue() [3/3]

template<>
const GenericVariableValue<true>& ScalarCoupleable::coupledGenericScalarValue ( const std::string &  var_name,
const unsigned int  comp 
) const
protectedinherited

Definition at line 160 of file ScalarCoupleable.C.

162 {
163  return adCoupledScalarValue(var_name, comp);
164 }
const ADVariableValue & adCoupledScalarValue(const std::string &var_name, unsigned int comp=0) const
Returns AD value of a scalar coupled variable.

◆ coupledGenericValue() [1/3]

template<bool is_ad>
const GenericVariableValue<is_ad>& Coupleable::coupledGenericValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns value of a coupled variable for use in templated automatic differentiation classes.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a GenericVariableValue for the coupled variable

◆ coupledGenericValue() [2/3]

template<>
const GenericVariableValue<false>& Coupleable::coupledGenericValue ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 469 of file Coupleable.C.

470 {
471  return coupledValue(var_name, comp);
472 }
virtual const VariableValue & coupledValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled variable.
Definition: Coupleable.C:496

◆ coupledGenericValue() [3/3]

template<>
const GenericVariableValue<true>& Coupleable::coupledGenericValue ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 476 of file Coupleable.C.

477 {
478  return adCoupledValue(var_name, comp);
479 }
const ADVariableValue & adCoupledValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled variable for use in Automatic Differentiation.
Definition: Coupleable.C:2152

◆ coupledGenericValues() [1/3]

template<bool is_ad>
std::vector<const GenericVariableValue<is_ad> *> Coupleable::coupledGenericValues ( const std::string &  var_name) const
protectedinherited

Returns the values for all of a coupled variable's components for use in templated automatic differentiation classes.

Parameters
var_nameName of coupled variable
Returns
Vector of GenericVariableValue pointers for each component of var_name

◆ coupledGenericValues() [2/3]

template<>
std::vector<const GenericVariableValue<false> *> Coupleable::coupledGenericValues ( const std::string &  var_name) const
protectedinherited

Definition at line 2521 of file Coupleable.C.

2522 {
2523  return coupledValues(var_name);
2524 }
std::vector< const VariableValue * > coupledValues(const std::string &var_name) const
Returns the values for all of a coupled variable components.
Definition: Coupleable.C:2506

◆ coupledGenericValues() [3/3]

template<>
std::vector<const GenericVariableValue<true> *> Coupleable::coupledGenericValues ( const std::string &  var_name) const
protectedinherited

Definition at line 2528 of file Coupleable.C.

2529 {
2530  return adCoupledValues(var_name);
2531 }
std::vector< const ADVariableValue * > adCoupledValues(const std::string &var_name) const
Returns the values for all of a coupled variable&#39;s components for use in Automatic Differentiation...
Definition: Coupleable.C:2534

◆ coupledGenericVectorValue() [1/3]

template<bool is_ad>
const GenericVectorVariableValue<is_ad>& Coupleable::coupledGenericVectorValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns value of a coupled vector variable for use in templated automatic differentiation classes.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a GenericVariableVectorValue for the coupled variable

◆ coupledGenericVectorValue() [2/3]

template<>
const GenericVectorVariableValue<false>& Coupleable::coupledGenericVectorValue ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 483 of file Coupleable.C.

484 {
485  return coupledVectorValue(var_name, comp);
486 }
virtual const VectorVariableValue & coupledVectorValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled vector variable.
Definition: Coupleable.C:823

◆ coupledGenericVectorValue() [3/3]

template<>
const GenericVectorVariableValue<true>& Coupleable::coupledGenericVectorValue ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Definition at line 490 of file Coupleable.C.

491 {
492  return adCoupledVectorValue(var_name, comp);
493 }
const ADVectorVariableValue & adCoupledVectorValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled vector variable for use in Automatic Differentiation.
Definition: Coupleable.C:2305

◆ coupledGradient()

const VariableGradient & Coupleable::coupledGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns gradient of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableGradient containing the gradient of the coupled variable
See also
Kernel::gradient

Definition at line 1511 of file Coupleable.C.

Referenced by Coupleable::coupledGradients(), NodeElemConstraint::coupledSecondaryGradient(), and NodeFaceConstraint::coupledSecondaryGradient().

1512 {
1513  const auto * const var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
1514  if (!var)
1515  {
1517  return _default_gradient;
1518  }
1520 
1521  if (!_coupleable_neighbor)
1522  return (_c_is_implicit) ? var->gradSln() : var->gradSlnOld();
1523  return (_c_is_implicit) ? var->gradSlnNeighbor() : var->gradSlnOldNeighbor();
1524 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1469
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledGradientDot()

const VariableGradient & Coupleable::coupledGradientDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Time derivative of the gradient of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableGradient containing the time derivative of the gradient of a coupled variable

Definition at line 1576 of file Coupleable.C.

1577 {
1578  const auto * var = getVar(var_name, comp);
1579  if (!var)
1580  {
1582  return _default_gradient;
1583  }
1585 
1586  if (!_coupleable_neighbor)
1587  return var->gradSlnDot();
1588  return var->gradSlnNeighborDot();
1589 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1469
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledGradientDotDot()

const VariableGradient & Coupleable::coupledGradientDotDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Second time derivative of the gradient of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableGradient containing the time derivative of the gradient of a coupled variable

Definition at line 1592 of file Coupleable.C.

1593 {
1594  const auto * var = getVar(var_name, comp);
1595  if (!var)
1596  {
1598  return _default_gradient;
1599  }
1601 
1602  if (!_coupleable_neighbor)
1603  return var->gradSlnDotDot();
1604  return var->gradSlnNeighborDotDot();
1605 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1469
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledGradientOld()

const VariableGradient & Coupleable::coupledGradientOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old gradient from previous time step of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableGradient containing the old gradient of the coupled variable
See also
Kernel::gradientOld

Definition at line 1527 of file Coupleable.C.

Referenced by Coupleable::coupledGradientsOld(), NodeElemConstraint::coupledSecondaryGradientOld(), and NodeFaceConstraint::coupledSecondaryGradientOld().

1528 {
1529  const auto * var = getVar(var_name, comp);
1530  if (!var)
1531  {
1533  return _default_gradient;
1534  }
1536 
1537  if (!_coupleable_neighbor)
1538  return (_c_is_implicit) ? var->gradSlnOld() : var->gradSlnOlder();
1539  return (_c_is_implicit) ? var->gradSlnOldNeighbor() : var->gradSlnOlderNeighbor();
1540 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1469
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledGradientOlder()

const VariableGradient & Coupleable::coupledGradientOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old gradient from two time steps previous of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableGradient containing the older gradient of the coupled variable
See also
Kernel::gradientOlder

Definition at line 1543 of file Coupleable.C.

Referenced by NodeElemConstraint::coupledSecondaryGradientOlder(), and NodeFaceConstraint::coupledSecondaryGradientOlder().

1544 {
1545  const auto * var = getVar(var_name, comp);
1546  if (!var)
1547  {
1549  return _default_gradient;
1550  }
1552 
1553  if (!_coupleable_neighbor)
1554  return var->gradSlnOlder();
1555  return var->gradSlnOlderNeighbor();
1556 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1469
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledGradientPreviousNL()

const VariableGradient & Coupleable::coupledGradientPreviousNL ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns gradient of a coupled variable for previous Newton iterate.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableGradient containing the gradient of the coupled variable

Definition at line 1559 of file Coupleable.C.

1560 {
1561  const auto * var = getVar(var_name, comp);
1563  if (!var)
1564  {
1566  return _default_gradient;
1567  }
1569 
1570  if (!_coupleable_neighbor)
1571  return var->gradSlnPreviousNL();
1572  return var->gradSlnPreviousNLNeighbor();
1573 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1469
void needsPreviousNewtonIteration(bool state)
Set a flag that indicated that user required values for the previous Newton iterate.
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledGradients()

std::vector< const VariableGradient * > Coupleable::coupledGradients ( const std::string &  var_name) const
protectedinherited

Returns the gradients for all of a coupled variable's components.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableGradient pointers for each component of var_name

Definition at line 2709 of file Coupleable.C.

2710 {
2711  auto func = [this, &var_name](unsigned int comp) { return &coupledGradient(var_name, comp); };
2712  return coupledVectorHelper<const VariableGradient *>(var_name, func);
2713 }
virtual const VariableGradient & coupledGradient(const std::string &var_name, unsigned int comp=0) const
Returns gradient of a coupled variable.
Definition: Coupleable.C:1511

◆ coupledGradientsOld()

std::vector< const VariableGradient * > Coupleable::coupledGradientsOld ( const std::string &  var_name) const
protectedinherited

Returns the old gradients for all of a coupled variable's components.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableGradient pointers for each component of var_name

Definition at line 2738 of file Coupleable.C.

2739 {
2740  auto func = [this, &var_name](unsigned int comp) { return &coupledGradientOld(var_name, comp); };
2741  return coupledVectorHelper<const VariableGradient *>(var_name, func);
2742 }
virtual const VariableGradient & coupledGradientOld(const std::string &var_name, unsigned int comp=0) const
Returns an old gradient from previous time step of a coupled variable.
Definition: Coupleable.C:1527

◆ coupledIndices()

std::vector< unsigned int > Coupleable::coupledIndices ( const std::string &  var_name) const
protectedinherited

Returns the indices for a coupled variable's components.

Parameters
var_nameName of coupled variable
Returns
Vector of the indices for all components of the coupled variable var_name.

Definition at line 2475 of file Coupleable.C.

2476 {
2477  auto func = [this, &var_name](unsigned int comp) { return coupled(var_name, comp); };
2478  return coupledVectorHelper<unsigned int>(var_name, func);
2479 }
virtual unsigned int coupled(const std::string &var_name, unsigned int comp=0) const
Returns the index for a coupled variable by name.
Definition: Coupleable.C:441

◆ coupledMatrixTagScalarValue()

const VariableValue & ScalarCoupleable::coupledMatrixTagScalarValue ( const std::string &  var_name,
TagID  tag,
unsigned int  comp = 0 
) const
protectedinherited

Returns value of a scalar coupled variable.

Parameters
var_nameName of coupled variable
tagTag ID of coupled matrix;
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable

Definition at line 202 of file ScalarCoupleable.C.

205 {
206  checkVar(var_name);
207  if (!isCoupledScalar(var_name, comp))
208  return *getDefaultValue(var_name);
209 
210  _sc_coupleable_matrix_tags.insert(tag);
211 
212  return getScalarVar(var_name, comp)->matrixTagSln(tag);
213 }
std::set< TagID > _sc_coupleable_matrix_tags
The scalar coupleable matrix tags.
bool isCoupledScalar(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled_as name.
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.
const VariableValue & matrixTagSln(TagID tag) const
const VariableValue * getDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...

◆ coupledMatrixTagValue() [1/2]

const VariableValue & Coupleable::coupledMatrixTagValue ( const std::string &  var_names,
TagID  tag,
unsigned int  index = 0 
) const
protectedvirtualinherited

Returns value of a coupled variable for a given tag.

This couples the diag vector of matrix

Parameters
var_namesName(s) of coupled variable(s)
tagmatrix tag ID
indexIndex of the desired variable in the vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable
See also
Kernel::_u

Definition at line 790 of file Coupleable.C.

Referenced by Coupleable::coupledMatrixTagValue(), and Coupleable::coupledMatrixTagValues().

793 {
794  const auto * var = getVarHelper<MooseVariableField<Real>>(var_names, index);
795  if (!var)
796  mooseError(var_names, ": invalid variable name for coupledMatrixTagValue");
798 
799  const_cast<Coupleable *>(this)->addFEVariableCoupleableMatrixTag(tag);
800 
801  if (_c_nodal)
802  return var->nodalMatrixTagValue(tag);
803  return var->matrixTagValue(tag);
804 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
Interface for objects that needs coupling capabilities.
Definition: Coupleable.h:45
void addFEVariableCoupleableMatrixTag(TagID tag)
Definition: Coupleable.h:104

◆ coupledMatrixTagValue() [2/2]

const VariableValue & Coupleable::coupledMatrixTagValue ( const std::string &  var_names,
const std::string &  tag_name,
unsigned int  index = 0 
) const
protectedvirtualinherited

Definition at line 807 of file Coupleable.C.

810 {
811  if (!_c_parameters.isParamValid(tag_name))
812  mooseError("Tag name parameter '", tag_name, "' is invalid");
813 
814  TagName tagname = _c_parameters.get<TagName>(tag_name);
815  if (!_c_fe_problem.matrixTagExists(tagname))
816  mooseError("Matrix tag name '", tagname, "' does not exist");
817 
818  TagID tag = _c_fe_problem.getMatrixTagID(tagname);
819  return coupledMatrixTagValue(var_names, tag, index);
820 }
unsigned int TagID
Definition: MooseTypes.h:206
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
virtual const VariableValue & coupledMatrixTagValue(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns value of a coupled variable for a given tag.
Definition: Coupleable.C:790
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
virtual TagID getMatrixTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:343
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
virtual bool matrixTagExists(const TagName &tag_name) const
Check to see if a particular Tag exists.
Definition: SubProblem.C:329
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledMatrixTagValues() [1/2]

std::vector< const VariableValue * > Coupleable::coupledMatrixTagValues ( const std::string &  var_names,
TagID  tag 
) const
protectedinherited

Returns the diagonal matrix values for all the coupled variables desired for a given tag.

Parameters
var_namesName(s) of coupled variable(s)
tagmatrix tag ID
Returns
Vector of VariableValue pointers for each variable in var_name

Definition at line 2664 of file Coupleable.C.

Referenced by Coupleable::coupledMatrixTagValues().

2665 {
2666  auto func = [this, &var_names, &tag](unsigned int comp)
2667  { return &coupledMatrixTagValue(var_names, tag, comp); };
2668  return coupledVectorHelper<const VariableValue *>(var_names, func);
2669 }
virtual const VariableValue & coupledMatrixTagValue(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns value of a coupled variable for a given tag.
Definition: Coupleable.C:790

◆ coupledMatrixTagValues() [2/2]

std::vector< const VariableValue * > Coupleable::coupledMatrixTagValues ( const std::string &  var_names,
const std::string &  tag_name 
) const
protectedinherited

Definition at line 2672 of file Coupleable.C.

2674 {
2675  if (!_c_parameters.isParamValid(tag_name))
2676  mooseError("Tag name parameter '", tag_name, "' is invalid");
2677 
2678  TagName tagname = _c_parameters.get<TagName>(tag_name);
2679  if (!_c_fe_problem.matrixTagExists(tagname))
2680  mooseError("Matrix tag name '", tagname, "' does not exist");
2681 
2682  TagID tag = _c_fe_problem.getMatrixTagID(tagname);
2683  return coupledMatrixTagValues(var_names, tag);
2684 }
unsigned int TagID
Definition: MooseTypes.h:206
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
virtual TagID getMatrixTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:343
std::vector< const VariableValue * > coupledMatrixTagValues(const std::string &var_names, TagID tag) const
Returns the diagonal matrix values for all the coupled variables desired for a given tag...
Definition: Coupleable.C:2664
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
virtual bool matrixTagExists(const TagName &tag_name) const
Check to see if a particular Tag exists.
Definition: SubProblem.C:329
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledName()

VariableName Coupleable::coupledName ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Names of the variable in the Coupleable interface.

Parameters
var_nameName of the variable
compthe component of the variable
Returns
name the variable has been coupled as. For constants, returns the constant

Definition at line 2482 of file Coupleable.C.

Referenced by Coupleable::coupledNames(), SecondTimeDerivativeAux::SecondTimeDerivativeAux(), and SpatialAverageBase::SpatialAverageBase().

2483 {
2484  if (getFieldVar(var_name, comp))
2485  return getFieldVar(var_name, comp)->name();
2486  // Detect if we are in the case where a constant was passed in lieu of a variable
2487  else if (isCoupledConstant(var_name))
2489  ": a variable name was queried but a constant was passed for parameter '",
2490  var_name,
2491  "Either pass a true variable or contact a developer to shield the call to "
2492  "'coupledName' with 'isCoupledConstant'");
2493  else
2494  mooseError(
2495  _c_name, ": Variable '", var_name, "' does not exist, yet its coupled name is requested");
2496 }
virtual bool isCoupledConstant(const std::string &var_name) const
Returns true if a variable passed as a coupled value is really a constant.
Definition: Coupleable.C:151
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::string & name() const override
Get the variable name.
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398
const MooseVariableFieldBase * getFieldVar(const std::string &var_name, unsigned int comp) const
Definition: Coupleable.C:281

◆ coupledNames()

std::vector< VariableName > Coupleable::coupledNames ( const std::string &  var_name) const
protectedinherited

Names of the variables in the Coupleable interface.

Parameters
var_nameNames of the variables
Returns
names the variables have been coupled as

Definition at line 2499 of file Coupleable.C.

2500 {
2501  auto func = [this, &var_name](unsigned int comp) { return coupledName(var_name, comp); };
2502  return coupledVectorHelper<VariableName>(var_name, func);
2503 }
VariableName coupledName(const std::string &var_name, unsigned int comp=0) const
Names of the variable in the Coupleable interface.
Definition: Coupleable.C:2482

◆ coupledNodalDot()

template<typename T >
template const RealVectorValue & Coupleable::coupledNodalDot< RealVectorValue > ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Nodal values of time derivative of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the nodal values of time derivative of the coupled variable

Definition at line 1963 of file Coupleable.C.

1964 {
1965  static const T zero = 0;
1966  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
1967  if (!var)
1968  return zero;
1970 
1971  if (!_coupleable_neighbor)
1972  return var->nodalValueDot();
1973  mooseError("Neighbor version not implemented");
1974 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const Number zero
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledNodalDotDot()

const VariableValue & Coupleable::coupledNodalDotDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Nodal values of second time derivative of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the nodal values of second time derivative of the coupled variable

Definition at line 1977 of file Coupleable.C.

1978 {
1979  const auto * var = getVar(var_name, comp);
1980  if (!var)
1981  {
1983  return _default_value_zero;
1984  }
1986 
1987  if (!_coupleable_neighbor)
1988  return var->dofValuesDotDot();
1989  return var->dofValuesDotDotNeighbor();
1990 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledNodalDotDotOld()

const VariableValue & Coupleable::coupledNodalDotDotOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Nodal values of old second time derivative of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the nodal values of second time derivative of the coupled variable

Definition at line 2009 of file Coupleable.C.

2010 {
2011  const auto * var = getVar(var_name, comp);
2012  if (!var)
2013  {
2015  return _default_value_zero;
2016  }
2018 
2019  if (!_coupleable_neighbor)
2020  return var->dofValuesDotDotOld();
2021  return var->dofValuesDotDotOldNeighbor();
2022 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledNodalDotOld()

const VariableValue & Coupleable::coupledNodalDotOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Nodal values of old time derivative of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the nodal values of time derivative of the coupled variable

Definition at line 1993 of file Coupleable.C.

1994 {
1995  const auto * var = getVar(var_name, comp);
1996  if (!var)
1997  {
1999  return _default_value_zero;
2000  }
2002 
2003  if (!_coupleable_neighbor)
2004  return var->dofValuesDotOld();
2005  return var->dofValuesDotOldNeighbor();
2006 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledNodalValue()

template<typename T >
template const RealVectorValue & Coupleable::coupledNodalValue< RealVectorValue > ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns nodal values of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable

Definition at line 1887 of file Coupleable.C.

1888 {
1889  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
1890  if (!var)
1891  return getDefaultNodalValue<T>(var_name, comp);
1893 
1894  if (!var->isNodal())
1896  ": Trying to get nodal values of variable '",
1897  var->name(),
1898  "', but it is not nodal.");
1899 
1900  if (!_coupleable_neighbor)
1901  return (_c_is_implicit) ? var->nodalValue() : var->nodalValueOld();
1902  return (_c_is_implicit) ? var->nodalValueNeighbor() : var->nodalValueOldNeighbor();
1903 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledNodalValueOld()

template<typename T >
template const RealVectorValue & Coupleable::coupledNodalValueOld< RealVectorValue > ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns an old nodal value from previous time step of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the old value of the coupled variable

Definition at line 1907 of file Coupleable.C.

1908 {
1909  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
1910  if (!var)
1911  return getDefaultNodalValue<T>(var_name, comp);
1913 
1914  if (!var->isNodal())
1916  ": Trying to get old nodal values of variable '",
1917  var->name(),
1918  "', but it is not nodal.");
1919 
1920  if (!_coupleable_neighbor)
1921  return (_c_is_implicit) ? var->nodalValueOld() : var->nodalValueOlder();
1922  return (_c_is_implicit) ? var->nodalValueOldNeighbor() : var->nodalValueOlderNeighbor();
1923 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledNodalValueOlder()

template<typename T >
template const RealVectorValue & Coupleable::coupledNodalValueOlder< RealVectorValue > ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns an old nodal value from two time steps previous of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the older value of the coupled variable

Definition at line 1927 of file Coupleable.C.

1928 {
1929  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
1930  if (!var)
1931  return getDefaultNodalValue<T>(var_name, comp);
1933 
1934  if (!var->isNodal())
1936  ": Trying to get older nodal values of variable '",
1937  var->name(),
1938  "', but it is not nodal.");
1939 
1940  if (!_coupleable_neighbor)
1941  return var->nodalValueOlder();
1942  return var->nodalValueOlderNeighbor();
1943 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledNodalValuePreviousNL()

template<typename T >
template const RealVectorValue & Coupleable::coupledNodalValuePreviousNL< RealVectorValue > ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns nodal values of a coupled variable for previous Newton iterate.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable

Definition at line 1947 of file Coupleable.C.

1948 {
1949  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
1950  if (!var)
1951  return getDefaultNodalValue<T>(var_name, comp);
1953 
1955 
1956  if (!_coupleable_neighbor)
1957  return var->nodalValuePreviousNL();
1958  return var->nodalValuePreviousNLNeighbor();
1959 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
void needsPreviousNewtonIteration(bool state)
Set a flag that indicated that user required values for the previous Newton iterate.
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledPostprocessors()

std::size_t PostprocessorInterface::coupledPostprocessors ( const std::string &  param_name) const
inherited

Returns number of Postprocessors coupled under parameter name.

Parameters
param_nameThe name of the Postprocessor parameter
Returns
Number of coupled post-processors, 1 if it's a single

Definition at line 129 of file PostprocessorInterface.C.

Referenced by FunctionValuePostprocessor::FunctionValuePostprocessor().

130 {
131  checkParam(param_name);
132 
133  if (_ppi_params.isType<PostprocessorName>(param_name))
134  return 1;
135  return _ppi_params.get<std::vector<PostprocessorName>>(param_name).size();
136 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
void checkParam(const std::string &param_name, const unsigned int index=std::numeric_limits< unsigned int >::max()) const
Checks the parameters relating to a Postprocessor.
bool isType(const std::string &name) const
const InputParameters & _ppi_params
PostprocessorInterface Parameters.

◆ coupledScalar()

unsigned int ScalarCoupleable::coupledScalar ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns the index for a scalar coupled variable by name.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Index of coupled variable

Definition at line 93 of file ScalarCoupleable.C.

Referenced by ParsedODEKernel::ParsedODEKernel().

94 {
95  checkVar(var_name);
96  return getScalarVar(var_name, comp)->number();
97 }
unsigned int number() const
Get variable number coming from libMesh.
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.

◆ coupledScalarComponents()

unsigned int ScalarCoupleable::coupledScalarComponents ( const std::string &  var_name) const
protectedinherited

Return the number of components to the coupled scalar variable.

Parameters
var_nameThe of the coupled variable

Definition at line 353 of file ScalarCoupleable.C.

354 {
355  const auto var_name = _sc_parameters.checkForRename(var_name_in);
356 
357  const auto it = _coupled_scalar_vars.find(var_name);
358  if (it != _coupled_scalar_vars.end())
359  return it->second.size();
360 
361  mooseError(_sc_name, ": Trying to get a non-existent variable '", var_name, "'");
362 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::string & _sc_name
The name of the object this interface is part of.
std::unordered_map< std::string, std::vector< MooseVariableScalar * > > _coupled_scalar_vars
Coupled vars whose values we provide.
const InputParameters & _sc_parameters
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.

◆ coupledScalarDot()

const VariableValue & ScalarCoupleable::coupledScalarDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns the time derivative of a scalar coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a time derivative VariableValue for the coupled variable

Definition at line 244 of file ScalarCoupleable.C.

245 {
246  checkVar(var_name);
247  validateExecutionerType(var_name, "coupledScalarDot");
248  return getScalarVar(var_name, comp)->uDot();
249 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
const VariableValue & uDot() const
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.

◆ coupledScalarDotDot()

const VariableValue & ScalarCoupleable::coupledScalarDotDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns the second time derivative of a scalar coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a time derivative VariableValue for the coupled variable

Definition at line 260 of file ScalarCoupleable.C.

261 {
262  checkVar(var_name);
263  validateExecutionerType(var_name, "coupledScalarDotDot");
264  return getScalarVar(var_name, comp)->uDotDot();
265 }
const VariableValue & uDotDot() const
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.

◆ coupledScalarDotDotDu()

const VariableValue & ScalarCoupleable::coupledScalarDotDotDu ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Second time derivative of a scalar coupled variable with respect to the coefficients.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the time derivative of the coupled variable with respect to the coefficients

Definition at line 292 of file ScalarCoupleable.C.

293 {
294  checkVar(var_name);
295  validateExecutionerType(var_name, "coupledScalarDotDotDu");
296  return getScalarVar(var_name, comp)->duDotDotDu();
297 }
const VariableValue & duDotDotDu() const
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.

◆ coupledScalarDotDotOld()

const VariableValue & ScalarCoupleable::coupledScalarDotDotOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns the old second time derivative of a scalar coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a time derivative VariableValue for the coupled variable

Definition at line 276 of file ScalarCoupleable.C.

278 {
279  checkVar(var_name);
280  validateExecutionerType(var_name, "coupledScalarDotDotOld");
281  return getScalarVar(var_name, comp)->uDotDotOld();
282 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
const VariableValue & uDotDotOld() const
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.

◆ coupledScalarDotDu()

const VariableValue & ScalarCoupleable::coupledScalarDotDu ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Time derivative of a scalar coupled variable with respect to the coefficients.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the time derivative of the coupled variable with respect to the coefficients

Definition at line 284 of file ScalarCoupleable.C.

285 {
286  checkVar(var_name);
287  validateExecutionerType(var_name, "coupledScalarDotDu");
288  return getScalarVar(var_name, comp)->duDotDu();
289 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.
const VariableValue & duDotDu() const

◆ coupledScalarDotOld()

const VariableValue & ScalarCoupleable::coupledScalarDotOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns the old time derivative of a scalar coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a time derivative VariableValue for the coupled variable

Definition at line 268 of file ScalarCoupleable.C.

269 {
270  checkVar(var_name);
271  validateExecutionerType(var_name, "coupledScalarDotOld");
272  return getScalarVar(var_name, comp)->uDotOld();
273 }
const VariableValue & uDotOld() const
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.

◆ coupledScalarOrder()

Order ScalarCoupleable::coupledScalarOrder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns the order for a scalar coupled variable by name.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Order of coupled variable

Definition at line 100 of file ScalarCoupleable.C.

101 {
102  checkVar(var_name);
103  if (!isCoupledScalar(var_name, comp))
105 
106  return getScalarVar(var_name, comp)->order();
107 }
FEProblemBase & _sc_fe_problem
bool isCoupledScalar(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled_as name.
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.
libMesh::Order order() const
Get the order of this variable Note: Order enum can be implicitly converted to unsigned int...
libMesh::Order getMaxScalarOrder() const

◆ coupledScalarValue()

const VariableValue & ScalarCoupleable::coupledScalarValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns value of a scalar coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable

Definition at line 124 of file ScalarCoupleable.C.

Referenced by ParsedODEKernel::ParsedODEKernel().

125 {
126  checkVar(var_name);
127  if (!isCoupledScalar(var_name, comp))
128  return *getDefaultValue(var_name);
129 
130  auto var = getScalarVar(var_name, comp);
131  return _sc_is_implicit ? var->sln() : var->slnOld();
132 }
const bool _sc_is_implicit
True if implicit value is required.
bool isCoupledScalar(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled_as name.
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.
const VariableValue * getDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...

◆ coupledScalarValueOld()

const VariableValue & ScalarCoupleable::coupledScalarValueOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns the old (previous time step) value of a scalar coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a old VariableValue for the coupled variable

Definition at line 216 of file ScalarCoupleable.C.

217 {
218  checkVar(var_name);
219  if (!isCoupledScalar(var_name, comp))
220  return *getDefaultValue(var_name);
221 
222  validateExecutionerType(var_name, "coupledScalarValueOld");
223  auto var = getScalarVar(var_name, comp);
224  return _sc_is_implicit ? var->slnOld() : var->slnOlder();
225 }
const bool _sc_is_implicit
True if implicit value is required.
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
bool isCoupledScalar(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled_as name.
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.
const VariableValue * getDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...

◆ coupledScalarValueOlder()

const VariableValue & ScalarCoupleable::coupledScalarValueOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns the older (two time steps previous) value of a scalar coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a older VariableValue for the coupled variable

Definition at line 228 of file ScalarCoupleable.C.

230 {
231  checkVar(var_name);
232  if (!isCoupledScalar(var_name, comp))
233  return *getDefaultValue(var_name);
234 
235  validateExecutionerType(var_name, "coupledScalarValueOlder");
236  auto var = getScalarVar(var_name, comp);
237  if (_sc_is_implicit)
238  return var->slnOlder();
239  else
240  mooseError("Older values not available for explicit schemes");
241 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const bool _sc_is_implicit
True if implicit value is required.
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
bool isCoupledScalar(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled_as name.
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.
const VariableValue * getDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...

◆ coupledSecond()

const VariableSecond & Coupleable::coupledSecond ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns second spatial derivatives of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableSecond containing the second derivative of the coupled variable
See also
Kernel::second

Definition at line 1821 of file Coupleable.C.

Referenced by NodeElemConstraint::coupledSecondarySecond(), and NodeFaceConstraint::coupledSecondarySecond().

1822 {
1823  const auto * var = getVar(var_name, comp);
1824  if (!var)
1825  {
1827  return _default_second;
1828  }
1830 
1831  if (!_coupleable_neighbor)
1832  return (_c_is_implicit) ? var->secondSln() : var->secondSlnOlder();
1833  return (_c_is_implicit) ? var->secondSlnNeighbor() : var->secondSlnOlderNeighbor();
1834 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
VariableSecond _default_second
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1478
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledSecondOld()

const VariableSecond & Coupleable::coupledSecondOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old second spatial derivatives from previous time step of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableSecond containing the old second derivative of the coupled variable
See also
Kernel::secondOld

Definition at line 1837 of file Coupleable.C.

1838 {
1839  const auto * var = getVar(var_name, comp);
1840  if (!var)
1841  {
1843  return _default_second;
1844  }
1846 
1847  if (!_coupleable_neighbor)
1848  return (_c_is_implicit) ? var->secondSlnOld() : var->secondSlnOlder();
1849  return (_c_is_implicit) ? var->secondSlnOldNeighbor() : var->secondSlnOlderNeighbor();
1850 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
VariableSecond _default_second
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1478
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledSecondOlder()

const VariableSecond & Coupleable::coupledSecondOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old second derivative from two time steps previous of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableSecond containing the older second derivative of the coupled variable
See also
Kernel::secondOlder

Definition at line 1853 of file Coupleable.C.

1854 {
1855  const auto * var = getVar(var_name, comp);
1856  if (!var)
1857  {
1859  return _default_second;
1860  }
1862 
1863  if (!_coupleable_neighbor)
1864  return var->secondSlnOlder();
1865  return var->secondSlnOlderNeighbor();
1866 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
VariableSecond _default_second
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1478
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledSecondPreviousNL()

const VariableSecond & Coupleable::coupledSecondPreviousNL ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns second derivative of a coupled variable for the previous Newton iterate.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableSecond containing the second derivative of the coupled variable

Definition at line 1869 of file Coupleable.C.

1870 {
1871  const auto * var = getVar(var_name, comp);
1873  if (!var)
1874  {
1876  return _default_second;
1877  }
1879 
1880  if (!_coupleable_neighbor)
1881  return var->secondSlnPreviousNL();
1882  return var->secondSlnPreviousNLNeighbor();
1883 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
VariableSecond _default_second
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1478
void needsPreviousNewtonIteration(bool state)
Set a flag that indicated that user required values for the previous Newton iterate.
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledValue()

const VariableValue & Coupleable::coupledValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns value of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable
See also
Kernel::_u

Definition at line 496 of file Coupleable.C.

Referenced by NodeElemConstraint::coupledSecondaryValue(), NodeFaceConstraint::coupledSecondaryValue(), Coupleable::coupledValues(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), VariableTimeIntegrationAux::VariableTimeIntegrationAux(), and Coupleable::writableCoupledValue().

497 {
498  const auto * const var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
499  if (!var)
500  return *getDefaultValue(var_name, comp);
502 
504  {
505  if (_c_nodal)
506  return (_c_is_implicit) ? var->dofValues() : var->dofValuesOld();
507  else
508  return (_c_is_implicit) ? var->sln() : var->slnOld();
509  }
510  else
511  {
512  if (_c_nodal)
513  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
514  else
515  return (_c_is_implicit) ? var->slnNeighbor() : var->slnOldNeighbor();
516  }
517 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledValueByName()

const VariableValue & CoupleableMooseVariableDependencyIntermediateInterface::coupledValueByName ( const std::string &  var_name)
virtualinherited

Returns value of a coupled variable give the variable name.

Parameters
var_nameName of coupled variable
Returns
Reference to a VariableValue for the coupled variable

Definition at line 27 of file CoupleableMooseVariableDependencyIntermediateInterface.C.

29 {
32  _coupled_moose_vars.push_back(moose_var);
34  _coupled_standard_moose_vars.push_back(var);
35 
36  addMooseVariableDependency(moose_var);
37 
39  {
40  if (_c_nodal)
41  return (_c_is_implicit) ? var->dofValues() : var->dofValuesOld();
42  else
43  return (_c_is_implicit) ? var->sln() : var->slnOld();
44  }
45  else
46  {
47  if (_c_nodal)
48  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
49  else
50  return (_c_is_implicit) ? var->slnNeighbor() : var->slnOldNeighbor();
51  }
52 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
const FieldVariableValue & slnNeighbor() const override
neighbor solutions
THREAD_ID _c_tid
Thread ID of the thread using this object.
Definition: Coupleable.h:1442
This class provides an interface for common operations on field variables of both FE and FV types wit...
const DoFValue & dofValuesNeighbor() const override
virtual const MooseVariableFieldBase & getVariable(const THREAD_ID tid, const std::string &var_name, Moose::VarKindType expected_var_type=Moose::VarKindType::VAR_ANY, Moose::VarFieldType expected_var_field_type=Moose::VarFieldType::VAR_FIELD_ANY) const override
Returns the variable reference for requested variable which must be of the expected_var_type (Nonline...
std::vector< MooseVariable * > _coupled_standard_moose_vars
Vector of standard coupled variables.
Definition: Coupleable.h:1415
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const FieldVariableValue & sln() const override
element solutions
const DoFValue & dofValuesOld() const override
const DoFValue & dofValuesOldNeighbor() const override
virtual MooseVariable & getStandardVariable(const THREAD_ID tid, const std::string &var_name) override
Returns the variable reference for requested MooseVariable which may be in any system.
std::vector< MooseVariableFieldBase * > _coupled_moose_vars
Vector of all coupled variables.
Definition: Coupleable.h:1412
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void addMooseVariableDependency(MooseVariableFieldBase *var)
Call this function to add the passed in MooseVariableFieldBase as a variable that this object depends...
const DoFValue & dofValues() const override
dof values getters
const FieldVariableValue & slnOld() const override
const FieldVariableValue & slnOldNeighbor() const override

◆ coupledValueLower()

const VariableValue & Coupleable::coupledValueLower ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns value of a coupled lower-dimensional variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable

Definition at line 601 of file Coupleable.C.

602 {
603  const auto * var = getVar(var_name, comp);
604  if (!var)
605  return *getDefaultValue(var_name, comp);
607 
609  mooseError(_c_name, ":coupledValueLower cannot be called in a coupleable neighbor object");
610 
611  if (_c_nodal)
612  return (_c_is_implicit) ? var->dofValues() : var->dofValuesOld();
613  else
614  return (_c_is_implicit) ? var->slnLower() : var->slnLowerOld();
615 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledValueOld()

const VariableValue & Coupleable::coupledValueOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old value from previous time step of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the old value of the coupled variable
See also
Kernel::valueOld

Definition at line 999 of file Coupleable.C.

Referenced by NodeElemConstraint::coupledSecondaryValueOld(), NodeFaceConstraint::coupledSecondaryValueOld(), Coupleable::coupledValuesOld(), and VariableTimeIntegrationAux::VariableTimeIntegrationAux().

1000 {
1001  const auto * var = getVar(var_name, comp);
1002  if (!var)
1003  return *getDefaultValue(var_name, comp);
1005 
1006  if (!_coupleable_neighbor)
1007  {
1008  if (_c_nodal)
1009  return (_c_is_implicit) ? var->dofValuesOld() : var->dofValuesOlder();
1010  return (_c_is_implicit) ? var->slnOld() : var->slnOlder();
1011  }
1012  else
1013  {
1014  if (_c_nodal)
1015  return (_c_is_implicit) ? var->dofValuesOldNeighbor() : var->dofValuesOlderNeighbor();
1016  return (_c_is_implicit) ? var->slnOldNeighbor() : var->slnOlderNeighbor();
1017  }
1018 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledValueOlder()

const VariableValue & Coupleable::coupledValueOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old value from two time steps previous of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the older value of the coupled variable
See also
Kernel::valueOlder

Definition at line 1021 of file Coupleable.C.

Referenced by NodeElemConstraint::coupledSecondaryValueOlder(), NodeFaceConstraint::coupledSecondaryValueOlder(), Coupleable::coupledValuesOlder(), and VariableTimeIntegrationAux::VariableTimeIntegrationAux().

1022 {
1023  const auto * var = getVar(var_name, comp);
1024  if (!var)
1025  return *getDefaultValue(var_name, comp);
1027 
1028  if (!_coupleable_neighbor)
1029  {
1030  if (_c_nodal)
1031  return var->dofValuesOlder();
1032  return var->slnOlder();
1033  }
1034  else
1035  {
1036  if (_c_nodal)
1037  return var->dofValuesOlderNeighbor();
1038  return var->slnOlderNeighbor();
1039  }
1040 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledValuePreviousNL()

const VariableValue & Coupleable::coupledValuePreviousNL ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns value of previous Newton iterate of a coupled variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue containing the older value of the coupled variable

Definition at line 1043 of file Coupleable.C.

1044 {
1045  const auto * var = getVar(var_name, comp);
1046  if (!var)
1047  return *getDefaultValue(var_name, comp);
1049 
1051  if (!_coupleable_neighbor)
1052  {
1053  if (_c_nodal)
1054  return var->dofValuesPreviousNL();
1055  return var->slnPreviousNL();
1056  }
1057  else
1058  {
1059  if (_c_nodal)
1060  return var->dofValuesPreviousNLNeighbor();
1061  return var->slnPreviousNLNeighbor();
1062  }
1063 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
void needsPreviousNewtonIteration(bool state)
Set a flag that indicated that user required values for the previous Newton iterate.
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledValues()

std::vector< const VariableValue * > Coupleable::coupledValues ( const std::string &  var_name) const
protectedinherited

Returns the values for all of a coupled variable components.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableValue pointers for each component of var_name

Definition at line 2506 of file Coupleable.C.

2507 {
2508  auto func = [this, &var_name](unsigned int comp) { return &coupledValue(var_name, comp); };
2509  return coupledVectorHelper<const VariableValue *>(var_name, func);
2510 }
virtual const VariableValue & coupledValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled variable.
Definition: Coupleable.C:496

◆ coupledValuesOld()

std::vector< const VariableValue * > Coupleable::coupledValuesOld ( const std::string &  var_name) const
protectedinherited

Returns the old values for all of a coupled variable's components.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableValue pointers for each component of var_name

Definition at line 2687 of file Coupleable.C.

2688 {
2689  auto func = [this, &var_name](unsigned int comp) { return &coupledValueOld(var_name, comp); };
2690  return coupledVectorHelper<const VariableValue *>(var_name, func);
2691 }
virtual const VariableValue & coupledValueOld(const std::string &var_name, unsigned int comp=0) const
Returns an old value from previous time step of a coupled variable.
Definition: Coupleable.C:999

◆ coupledValuesOlder()

std::vector< const VariableValue * > Coupleable::coupledValuesOlder ( const std::string &  var_name) const
protectedinherited

Returns the older values for all of a coupled variable's components.

Parameters
var_nameName of coupled variable
Returns
Vector of VariableValue pointers for each component of var_name

Definition at line 2694 of file Coupleable.C.

2695 {
2696  auto func = [this, &var_name](unsigned int comp) { return &coupledValueOlder(var_name, comp); };
2697  return coupledVectorHelper<const VariableValue *>(var_name, func);
2698 }
virtual const VariableValue & coupledValueOlder(const std::string &var_name, unsigned int comp=0) const
Returns an old value from two time steps previous of a coupled variable.
Definition: Coupleable.C:1021

◆ coupledVectorDot()

const VectorVariableValue & Coupleable::coupledVectorDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Time derivative of a coupled vector variable.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VectorVariableValue containing the time derivative of the coupled variable

Definition at line 1252 of file Coupleable.C.

1253 {
1254  const auto * var = getVectorVar(var_name, comp);
1255  if (!var)
1256  {
1259  }
1261 
1262  if (!_coupleable_neighbor)
1263  return var->uDot();
1264  return var->uDotNeighbor();
1265 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
VectorVariableValue _default_vector_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1512
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledVectorDotDot()

const VectorVariableValue & Coupleable::coupledVectorDotDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Second time derivative of a coupled vector variable.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VectorVariableValue containing the time derivative of the coupled variable

Definition at line 1268 of file Coupleable.C.

1269 {
1270  const auto * var = getVectorVar(var_name, comp);
1271  if (!var)
1272  {
1275  }
1277 
1278  if (!_coupleable_neighbor)
1279  return var->uDotDot();
1280  return var->uDotDotNeighbor();
1281 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
VectorVariableValue _default_vector_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1512
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledVectorDotDotDu()

const VariableValue & Coupleable::coupledVectorDotDotDu ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Second time derivative of a coupled vector variable with respect to the coefficients.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VariableValue containing the time derivative of the coupled vector variable with respect to the coefficients

Definition at line 1332 of file Coupleable.C.

1333 {
1334  const auto * var = getVectorVar(var_name, comp);
1335  if (!var)
1336  {
1338  return _default_value_zero;
1339  }
1341 
1342  if (!_coupleable_neighbor)
1343  return var->duDotDotDu();
1344  return var->duDotDotDuNeighbor();
1345 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledVectorDotDotOld()

const VectorVariableValue & Coupleable::coupledVectorDotDotOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Old second time derivative of a coupled vector variable.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VectorVariableValue containing the time derivative of the coupled variable

Definition at line 1300 of file Coupleable.C.

1301 {
1302  const auto * var = getVectorVar(var_name, comp);
1303  if (!var)
1304  {
1307  }
1309 
1310  if (!_coupleable_neighbor)
1311  return var->uDotDotOld();
1312  return var->uDotDotOldNeighbor();
1313 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
VectorVariableValue _default_vector_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1512
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledVectorDotDu()

const VariableValue & Coupleable::coupledVectorDotDu ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Time derivative of a coupled vector variable with respect to the coefficients.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VariableValue containing the time derivative of the coupled vector variable with respect to the coefficients

Definition at line 1316 of file Coupleable.C.

1317 {
1318  const auto * var = getVectorVar(var_name, comp);
1319  if (!var)
1320  {
1322  return _default_value_zero;
1323  }
1325 
1326  if (!_coupleable_neighbor)
1327  return var->duDotDu();
1328  return var->duDotDuNeighbor();
1329 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1466
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:216
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledVectorDotOld()

const VectorVariableValue & Coupleable::coupledVectorDotOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Old time derivative of a coupled vector variable.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VectorVariableValue containing the time derivative of the coupled variable

Definition at line 1284 of file Coupleable.C.

1285 {
1286  const auto * var = getVectorVar(var_name, comp);
1287  if (!var)
1288  {
1291  }
1293 
1294  if (!_coupleable_neighbor)
1295  return var->uDotOld();
1296  return var->uDotOldNeighbor();
1297 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
VectorVariableValue _default_vector_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1512
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledVectorGradient()

const VectorVariableGradient & Coupleable::coupledVectorGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns gradient of a coupled vector variable.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VectorVariableGradient containing the gradient of the coupled vector variable

Definition at line 1608 of file Coupleable.C.

1609 {
1610  const auto * var = getVectorVar(var_name, comp);
1611  if (!var)
1612  {
1614  return _default_vector_gradient;
1615  }
1617 
1618  if (!_coupleable_neighbor)
1619  return (_c_is_implicit) ? var->gradSln() : var->gradSlnOld();
1620  return (_c_is_implicit) ? var->gradSlnNeighbor() : var->gradSlnOldNeighbor();
1621 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
VectorVariableGradient _default_vector_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1515
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledVectorGradientOld()

const VectorVariableGradient & Coupleable::coupledVectorGradientOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old gradient from previous time step of a coupled vector variable.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VectorVariableGradient containing the old gradient of the coupled vector variable

Definition at line 1624 of file Coupleable.C.

1625 {
1626  const auto * var = getVectorVar(var_name, comp);
1627  if (!var)
1628  {
1630  return _default_vector_gradient;
1631  }
1633 
1634  if (!_coupleable_neighbor)
1635  return (_c_is_implicit) ? var->gradSlnOld() : var->gradSlnOlder();
1636  return (_c_is_implicit) ? var->gradSlnOldNeighbor() : var->gradSlnOlderNeighbor();
1637 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
VectorVariableGradient _default_vector_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1515
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledVectorGradientOlder()

const VectorVariableGradient & Coupleable::coupledVectorGradientOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old gradient from two time steps previous of a coupled vector variable.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VectorVariableGradient containing the older gradient of the coupled vector variable

Definition at line 1640 of file Coupleable.C.

1641 {
1642  const auto * var = getVectorVar(var_name, comp);
1643  if (!var)
1644  {
1646  return _default_vector_gradient;
1647  }
1649 
1650  if (!_coupleable_neighbor)
1651  return var->gradSlnOlder();
1652  return var->gradSlnOlderNeighbor();
1653 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
VectorVariableGradient _default_vector_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1515
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ coupledVectorHelper()

template<typename T , typename Func >
std::vector<T> Coupleable::coupledVectorHelper ( const std::string &  var_name,
const Func &  func 
) const
inlineprotectedinherited

Definition at line 1695 of file Coupleable.h.

1696  {
1697  const auto components = coupledComponents(var_name);
1698  std::vector<T> vals(components);
1699  for (MooseIndex(components) comp = 0; comp < components; ++comp)
1700  vals[comp] = func(comp);
1701  return vals;
1702  }
unsigned int coupledComponents(const std::string &var_name) const
Number of coupled components.
Definition: Coupleable.C:157

◆ coupledVectorTagArrayDofValue()

const ArrayVariableValue & Coupleable::coupledVectorTagArrayDofValue ( const std::string &  var_name,
const std::string &  tag_name,
unsigned int  comp = 0 
) const
protectedinherited

Returns evaluations of a tagged vector at the requested variable's degree of freedom indices.

Parameters
var_nameName of coupled variable
tag_namevector tag name
Returns
Reference to a ArrayVariableValue for the coupled variable

Definition at line 782 of file Coupleable.C.

785 {
786  return vectorTagDofValueHelper<RealEigenVector>(var_name, tag_name, comp);
787 }

◆ coupledVectorTagArrayGradient() [1/2]

const ArrayVariableGradient & Coupleable::coupledVectorTagArrayGradient ( const std::string &  var_names,
TagID  tag,
unsigned int  index = 0 
) const
protectedvirtualinherited

Returns gradient of a coupled array variable for a given tag.

Parameters
var_namesName(s) of coupled array variable(s)
tagvector tag ID
indexIndex of the desired variable in the vector of coupled variables
Returns
Reference to a ArrayVariableGradient containing the gradient of the coupled array variable
See also
Kernel::gradient

Definition at line 688 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagArrayGradient(), and Coupleable::coupledVectorTagArrayGradients().

691 {
692  const auto * var = getArrayVar(var_names, index);
693  if (!var)
694  mooseError(var_names, ": invalid variable name for coupledVectorTagArrayGradient");
696 
697  if (!_c_fe_problem.vectorTagExists(tag))
698  mooseError("Attempting to couple to vector tag with ID ",
699  tag,
700  "in ",
701  _c_name,
702  ", but a vector tag with that ID does not exist");
703 
704  const_cast<Coupleable *>(this)->addFEVariableCoupleableVectorTag(tag);
705 
706  return var->vectorTagGradient(tag);
707 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
void addFEVariableCoupleableVectorTag(TagID tag)
Definition: Coupleable.h:102
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:197
Interface for objects that needs coupling capabilities.
Definition: Coupleable.h:45
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledVectorTagArrayGradient() [2/2]

const ArrayVariableGradient & Coupleable::coupledVectorTagArrayGradient ( const std::string &  var_names,
const std::string &  tag_name,
unsigned int  index = 0 
) const
protectedvirtualinherited

Definition at line 710 of file Coupleable.C.

713 {
714  if (!_c_parameters.isParamValid(tag_name))
715  mooseError("Tag name parameter '", tag_name, "' is invalid");
716 
717  TagName tagname = _c_parameters.get<TagName>(tag_name);
718  if (!_c_fe_problem.vectorTagExists(tagname))
719  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
720 
721  TagID tag = _c_fe_problem.getVectorTagID(tagname);
722  return coupledVectorTagArrayGradient(var_names, tag, index);
723 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:204
unsigned int TagID
Definition: MooseTypes.h:206
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
virtual const ArrayVariableGradient & coupledVectorTagArrayGradient(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns gradient of a coupled array variable for a given tag.
Definition: Coupleable.C:688
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:197
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagArrayGradients() [1/2]

std::vector< const ArrayVariableGradient * > Coupleable::coupledVectorTagArrayGradients ( const std::string &  var_names,
TagID  tag 
) const
protectedinherited

Returns gradients for all the coupled variables desired for a given tag.

Parameters
var_namesName(s) of coupled array variable(s)
tagvector tag ID
Returns
Vector of ArrayVariableGradient pointers for each variable in var_name

Definition at line 2618 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagArrayGradients().

2619 {
2620  auto func = [this, &var_names, &tag](unsigned int index)
2621  { return &coupledVectorTagArrayGradient(var_names, tag, index); };
2622  return coupledVectorHelper<const ArrayVariableGradient *>(var_names, func);
2623 }
virtual const ArrayVariableGradient & coupledVectorTagArrayGradient(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns gradient of a coupled array variable for a given tag.
Definition: Coupleable.C:688

◆ coupledVectorTagArrayGradients() [2/2]

std::vector< const ArrayVariableGradient * > Coupleable::coupledVectorTagArrayGradients ( const std::string &  var_names,
const std::string &  tag_name 
) const
protectedinherited

Definition at line 2626 of file Coupleable.C.

2628 {
2629  if (!_c_parameters.isParamValid(tag_name))
2630  mooseError("Tag name parameter '", tag_name, "' is invalid");
2631 
2632  TagName tagname = _c_parameters.get<TagName>(tag_name);
2633  if (!_c_fe_problem.vectorTagExists(tagname))
2634  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
2635 
2636  TagID tag = _c_fe_problem.getVectorTagID(tagname);
2637  return coupledVectorTagArrayGradients(var_names, tag);
2638 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:204
unsigned int TagID
Definition: MooseTypes.h:206
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:197
std::vector< const ArrayVariableGradient * > coupledVectorTagArrayGradients(const std::string &var_names, TagID tag) const
Returns gradients for all the coupled variables desired for a given tag.
Definition: Coupleable.C:2618
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagArrayValue() [1/2]

const ArrayVariableValue & Coupleable::coupledVectorTagArrayValue ( const std::string &  var_names,
TagID  tag,
unsigned int  index = 0 
) const
protectedvirtualinherited

Returns value of a coupled array variable for a given tag.

Parameters
var_namesName(s) of coupled array variable(s)
tagvector tag ID
indexIndex of the desired variable in the vector of coupled variables
Returns
Reference to a VariableValue for the coupled array variable
See also
Kernel::_u

Definition at line 634 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagArrayValues().

637 {
638  return vectorTagValueHelper<RealEigenVector>(var_names, tag, index);
639 }

◆ coupledVectorTagArrayValue() [2/2]

const ArrayVariableValue & Coupleable::coupledVectorTagArrayValue ( const std::string &  var_names,
const std::string &  tag_name,
unsigned int  index = 0 
) const
protectedvirtualinherited

Definition at line 642 of file Coupleable.C.

645 {
646  return vectorTagValueHelper<RealEigenVector>(var_names, tag_name, index);
647 }

◆ coupledVectorTagArrayValues() [1/2]

std::vector< const ArrayVariableValue * > Coupleable::coupledVectorTagArrayValues ( const std::string &  var_names,
TagID  tag 
) const
protectedinherited

Returns the values for all the coupled variables desired for a given tag.

Parameters
var_nameName of array coupled variable
tagvector tag ID
Returns
Vector of ArrayVariableValue pointers for each variable in var_names

Definition at line 2572 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagArrayValues().

2573 {
2574  auto func = [this, &var_names, &tag](unsigned int index)
2575  { return &coupledVectorTagArrayValue(var_names, tag, index); };
2576  return coupledVectorHelper<const ArrayVariableValue *>(var_names, func);
2577 }
virtual const ArrayVariableValue & coupledVectorTagArrayValue(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns value of a coupled array variable for a given tag.
Definition: Coupleable.C:634

◆ coupledVectorTagArrayValues() [2/2]

std::vector< const ArrayVariableValue * > Coupleable::coupledVectorTagArrayValues ( const std::string &  var_names,
const std::string &  tag_name 
) const
protectedinherited

Definition at line 2580 of file Coupleable.C.

2582 {
2583  if (!_c_parameters.isParamValid(tag_name))
2584  mooseError("Tag name parameter '", tag_name, "' is invalid");
2585 
2586  TagName tagname = _c_parameters.get<TagName>(tag_name);
2587  if (!_c_fe_problem.vectorTagExists(tagname))
2588  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
2589 
2590  TagID tag = _c_fe_problem.getVectorTagID(tagname);
2591  return coupledVectorTagArrayValues(var_names, tag);
2592 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:204
unsigned int TagID
Definition: MooseTypes.h:206
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
std::vector< const ArrayVariableValue * > coupledVectorTagArrayValues(const std::string &var_names, TagID tag) const
Returns the values for all the coupled variables desired for a given tag.
Definition: Coupleable.C:2572
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:197
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagDofValue() [1/2]

const VariableValue & Coupleable::coupledVectorTagDofValue ( const std::string &  var_name,
TagID  tag,
unsigned int  index = 0 
) const
protectedvirtualinherited

Returns dof value of a coupled variable for a given tag.

Parameters
var_namesName(s) of coupled variable(s)
tagvector tag ID
indexIndex of the desired variable in the vector of coupled variables
Returns
Reference to a DofValue for the coupled variable

Definition at line 766 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagDofValues().

769 {
770  return vectorTagDofValueHelper<Real>(var_name, tag, comp);
771 }

◆ coupledVectorTagDofValue() [2/2]

const VariableValue & Coupleable::coupledVectorTagDofValue ( const std::string &  var_names,
const std::string &  tag_name,
unsigned int  index = 0 
) const
protectedvirtualinherited

Definition at line 774 of file Coupleable.C.

777 {
778  return vectorTagDofValueHelper<Real>(var_name, tag_name, comp);
779 }

◆ coupledVectorTagDofValues() [1/2]

std::vector< const VariableValue * > Coupleable::coupledVectorTagDofValues ( const std::string &  var_names,
TagID  tag 
) const
protectedinherited

Returns the dof values for all the coupled variables desired for a given tag.

Parameters
var_namesName(s) of coupled variable(s)
tagvector tag ID
Returns
Vector of VariableValue pointers for each variable in var_name

Definition at line 2641 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagDofValues().

2642 {
2643  auto func = [this, &var_names, &tag](unsigned int comp)
2644  { return &coupledVectorTagDofValue(var_names, tag, comp); };
2645  return coupledVectorHelper<const VariableValue *>(var_names, func);
2646 }
virtual const VariableValue & coupledVectorTagDofValue(const std::string &var_name, TagID tag, unsigned int index=0) const
Returns dof value of a coupled variable for a given tag.
Definition: Coupleable.C:766

◆ coupledVectorTagDofValues() [2/2]

std::vector< const VariableValue * > Coupleable::coupledVectorTagDofValues ( const std::string &  var_names,
const std::string &  tag_name 
) const
protectedinherited

Definition at line 2649 of file Coupleable.C.

2651 {
2652  if (!_c_parameters.isParamValid(tag_name))
2653  mooseError("Tag name parameter '", tag_name, "' is invalid");
2654 
2655  TagName tagname = _c_parameters.get<TagName>(tag_name);
2656  if (!_c_fe_problem.vectorTagExists(tagname))
2657  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
2658 
2659  TagID tag = _c_fe_problem.getVectorTagID(tagname);
2660  return coupledVectorTagDofValues(var_names, tag);
2661 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:204
unsigned int TagID
Definition: MooseTypes.h:206
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
std::vector< const VariableValue * > coupledVectorTagDofValues(const std::string &var_names, TagID tag) const
Returns the dof values for all the coupled variables desired for a given tag.
Definition: Coupleable.C:2641
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:197
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagGradient() [1/2]

const VariableGradient & Coupleable::coupledVectorTagGradient ( const std::string &  var_names,
TagID  tag,
unsigned int  index = 0 
) const
protectedvirtualinherited

Returns gradient of a coupled variable for a given tag.

Parameters
var_namesName(s) of coupled variable(s)
tagvector tag ID
indexIndex of the desired variable in the vector of coupled variables
Returns
Reference to a VariableGradient containing the gradient of the coupled variable
See also
Kernel::gradient

Definition at line 650 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagGradient(), and Coupleable::coupledVectorTagGradients().

653 {
654  const auto * var = getVar(var_names, index);
655  if (!var)
656  mooseError(var_names, ": invalid variable name for coupledVectorTagGradient");
658 
659  if (!_c_fe_problem.vectorTagExists(tag))
660  mooseError("Attempting to couple to vector tag with ID ",
661  tag,
662  "in ",
663  _c_name,
664  ", but a vector tag with that ID does not exist");
665 
666  const_cast<Coupleable *>(this)->addFEVariableCoupleableVectorTag(tag);
667 
668  return var->vectorTagGradient(tag);
669 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
void addFEVariableCoupleableVectorTag(TagID tag)
Definition: Coupleable.h:102
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:197
Interface for objects that needs coupling capabilities.
Definition: Coupleable.h:45

◆ coupledVectorTagGradient() [2/2]

const VariableGradient & Coupleable::coupledVectorTagGradient ( const std::string &  var_names,
const std::string &  tag_name,
unsigned int  index = 0 
) const
protectedvirtualinherited

Definition at line 672 of file Coupleable.C.

675 {
676  if (!_c_parameters.isParamValid(tag_name))
677  mooseError("Tag name parameter '", tag_name, "' is invalid");
678 
679  TagName tagname = _c_parameters.get<TagName>(tag_name);
680  if (!_c_fe_problem.vectorTagExists(tagname))
681  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
682 
683  TagID tag = _c_fe_problem.getVectorTagID(tagname);
684  return coupledVectorTagGradient(var_names, tag, index);
685 }
virtual const VariableGradient & coupledVectorTagGradient(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns gradient of a coupled variable for a given tag.
Definition: Coupleable.C:650
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:204
unsigned int TagID
Definition: MooseTypes.h:206
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:197
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagGradients() [1/2]

std::vector< const VariableGradient * > Coupleable::coupledVectorTagGradients ( const std::string &  var_names,
TagID  tag 
) const
protectedinherited

Returns gradients for all the coupled variables desired for a given tag.

Parameters
var_namesName(s) of coupled array variable(s)
tagvector tag ID
Returns
Vector of VariableGradient pointers for each variables in var_name

Definition at line 2595 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagGradients().

2596 {
2597  auto func = [this, &var_names, &tag](unsigned int index)
2598  { return &coupledVectorTagGradient(var_names, tag, index); };
2599  return coupledVectorHelper<const VariableGradient *>(var_names, func);
2600 }
virtual const VariableGradient & coupledVectorTagGradient(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns gradient of a coupled variable for a given tag.
Definition: Coupleable.C:650

◆ coupledVectorTagGradients() [2/2]

std::vector< const VariableGradient * > Coupleable::coupledVectorTagGradients ( const std::string &  var_names,
const std::string &  tag_name 
) const
protectedinherited

Definition at line 2603 of file Coupleable.C.

2605 {
2606  if (!_c_parameters.isParamValid(tag_name))
2607  mooseError("Tag name parameter '", tag_name, "' is invalid");
2608 
2609  TagName tagname = _c_parameters.get<TagName>(tag_name);
2610  if (!_c_fe_problem.vectorTagExists(tagname))
2611  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
2612 
2613  TagID tag = _c_fe_problem.getVectorTagID(tagname);
2614  return coupledVectorTagGradients(var_names, tag);
2615 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:204
unsigned int TagID
Definition: MooseTypes.h:206
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
std::vector< const VariableGradient * > coupledVectorTagGradients(const std::string &var_names, TagID tag) const
Returns gradients for all the coupled variables desired for a given tag.
Definition: Coupleable.C:2595
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:197
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagScalarValue()

const VariableValue & ScalarCoupleable::coupledVectorTagScalarValue ( const std::string &  var_name,
TagID  tag,
unsigned int  comp = 0 
) const
protectedinherited

Returns value of a scalar coupled variable.

Parameters
var_nameName of coupled variable
tagTag ID of coupled vector ;
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable

Definition at line 181 of file ScalarCoupleable.C.

184 {
185  checkVar(var_name);
186  if (!isCoupledScalar(var_name, comp))
187  return *getDefaultValue(var_name);
188 
190  mooseError("Attempting to couple to vector tag scalar with ID ",
191  tag,
192  "in ",
193  _sc_name,
194  ", but a vector tag with that ID does not exist");
195 
196  _sc_coupleable_vector_tags.insert(tag);
197 
198  return getScalarVar(var_name, comp)->vectorTagSln(tag);
199 }
std::set< TagID > _sc_coupleable_vector_tags
The scalar coupleable vector tags.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::string & _sc_name
The name of the object this interface is part of.
FEProblemBase & _sc_fe_problem
bool isCoupledScalar(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled_as name.
const VariableValue & vectorTagSln(TagID tag) const
void checkVar(const std::string &var_name) const
Check that the right kind of variable is being coupled in.
const MooseVariableScalar * getScalarVar(const std::string &var_name, unsigned int comp) const
Extract pointer to a scalar coupled variable.
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:197
const VariableValue * getDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...

◆ coupledVectorTagValue() [1/2]

const VariableValue & Coupleable::coupledVectorTagValue ( const std::string &  var_names,
TagID  tag,
unsigned int  index = 0 
) const
protectedvirtualinherited

Returns value of a coupled variable for a given tag.

Parameters
var_namesName(s) of coupled variable(s)
tagvector tag ID
indexIndex of the desired variable in the vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable
See also
Kernel::_u

Definition at line 618 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagValues().

621 {
622  return vectorTagValueHelper<Real>(var_names, tag, index);
623 }

◆ coupledVectorTagValue() [2/2]

const VariableValue & Coupleable::coupledVectorTagValue ( const std::string &  var_names,
const std::string &  tag_name,
unsigned int  index = 0 
) const
protectedvirtualinherited

Definition at line 626 of file Coupleable.C.

629 {
630  return vectorTagValueHelper<Real>(var_names, tag_name, index);
631 }

◆ coupledVectorTagValues() [1/2]

std::vector< const VariableValue * > Coupleable::coupledVectorTagValues ( const std::string &  var_names,
TagID  tag 
) const
protectedinherited

Returns the values for all the coupled variables desired for a given tag.

Parameters
var_namesName(s) of coupled variable(s)
tagvector tag ID
Returns
Vector of VariableValue pointers for each variable in var_names

Definition at line 2549 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagValues().

2550 {
2551  auto func = [this, &var_names, &tag](unsigned int comp)
2552  { return &coupledVectorTagValue(var_names, tag, comp); };
2553  return coupledVectorHelper<const VariableValue *>(var_names, func);
2554 }
virtual const VariableValue & coupledVectorTagValue(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns value of a coupled variable for a given tag.
Definition: Coupleable.C:618

◆ coupledVectorTagValues() [2/2]

std::vector< const VariableValue * > Coupleable::coupledVectorTagValues ( const std::string &  var_names,
const std::string &  tag_name 
) const
protectedinherited

Definition at line 2557 of file Coupleable.C.

2559 {
2560  if (!_c_parameters.isParamValid(tag_name))
2561  mooseError("Tag name parameter '", tag_name, "' is invalid");
2562 
2563  TagName tagname = _c_parameters.get<TagName>(tag_name);
2564  if (!_c_fe_problem.vectorTagExists(tagname))
2565  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
2566 
2567  TagID tag = _c_fe_problem.getVectorTagID(tagname);
2568  return coupledVectorTagValues(var_names, tag);
2569 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:204
unsigned int TagID
Definition: MooseTypes.h:206
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:197
std::vector< const VariableValue * > coupledVectorTagValues(const std::string &var_names, TagID tag) const
Returns the values for all the coupled variables desired for a given tag.
Definition: Coupleable.C:2549
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorValue()

const VectorVariableValue & Coupleable::coupledVectorValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns value of a coupled vector variable.

Parameters
var_nameName of coupled vector variable
compComponent number for vector of coupled vector variables
Returns
Reference to a VectorVariableValue for the coupled vector variable
See also
VectorKernel::_u

Definition at line 823 of file Coupleable.C.

Referenced by Coupleable::coupledVectorValues().

824 {
825  const auto * var = getVectorVar(var_name, comp);
826  if (!var)
827  return *getDefaultVectorValue(var_name);
829 
831  {
832  if (_c_nodal)
833  return _c_is_implicit ? var->nodalValueArray() : var->nodalValueOldArray();
834  else
835  return _c_is_implicit ? var->sln() : var->slnOld();
836  }
837  else
838  {
839  if (_c_nodal)
840  // Since this is at a node, I don't feel like there should be any "neighbor" logic
841  return _c_is_implicit ? var->nodalValueArray() : var->nodalValueOldArray();
842  else
843  return _c_is_implicit ? var->slnNeighbor() : var->slnOldNeighbor();
844  }
845 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
const VectorVariableValue * getDefaultVectorValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled vector variable...
Definition: Coupleable.C:361
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledVectorValueOld()

const VectorVariableValue & Coupleable::coupledVectorValueOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old value from previous time step of a coupled vector variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VectorVariableValue containing the old value of the coupled variable
See also
VectorKernel::_u_old

Definition at line 1066 of file Coupleable.C.

Referenced by Coupleable::coupledVectorValuesOld().

1067 {
1068  const auto * var = getVectorVar(var_name, comp);
1069  if (!var)
1070  return *getDefaultVectorValue(var_name);
1072 
1073  if (_c_nodal)
1074  return (_c_is_implicit) ? var->nodalValueOldArray() : var->nodalValueOlderArray();
1075  if (!_coupleable_neighbor)
1076  return (_c_is_implicit) ? var->slnOld() : var->slnOlder();
1077  return (_c_is_implicit) ? var->slnOldNeighbor() : var->slnOlderNeighbor();
1078 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
const VectorVariableValue * getDefaultVectorValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled vector variable...
Definition: Coupleable.C:361
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1436
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledVectorValueOlder()

const VectorVariableValue & Coupleable::coupledVectorValueOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
protectedvirtualinherited

Returns an old value from two time steps previous of a coupled vector variable.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VectorVariableValue containing the older value of the coupled variable
See also
VectorKernel::_u_older

Definition at line 1081 of file Coupleable.C.

1082 {
1083  const auto * var = getVectorVar(var_name, comp);
1084  if (!var)
1085  return *getDefaultVectorValue(var_name);
1087 
1088  if (!_coupleable_neighbor)
1089  return var->slnOlder();
1090  return var->slnOlderNeighbor();
1091 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
const VectorVariableValue * getDefaultVectorValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled vector variable...
Definition: Coupleable.C:361
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1705

◆ coupledVectorValues()

std::vector< const VectorVariableValue * > Coupleable::coupledVectorValues ( const std::string &  var_name) const
protectedinherited

Returns the values for all of a coupled vector variable's components.

Parameters
var_nameName of coupled variable
Returns
Vector of VectorVariableValue pointers for each component of var_name

Definition at line 2513 of file Coupleable.C.

2514 {
2515  auto func = [this, &var_name](unsigned int comp) { return &coupledVectorValue(var_name, comp); };
2516  return coupledVectorHelper<const VectorVariableValue *>(var_name, func);
2517 }
virtual const VectorVariableValue & coupledVectorValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled vector variable.
Definition: Coupleable.C:823

◆ coupledVectorValuesOld()

std::vector< const VectorVariableValue * > Coupleable::coupledVectorValuesOld ( const std::string &  var_name) const
protectedinherited

Returns the old values for all of a coupled vector variable's components.

Parameters
var_nameName of coupled vector variable
Returns
Vector of VectorVariableValue pointers for each component of var_name

Definition at line 2701 of file Coupleable.C.

2702 {
2703  auto func = [this, &var_name](unsigned int comp)
2704  { return &coupledVectorValueOld(var_name, comp); };
2705  return coupledVectorHelper<const VectorVariableValue *>(var_name, func);
2706 }
virtual const VectorVariableValue & coupledVectorValueOld(const std::string &var_name, unsigned int comp=0) const
Returns an old value from previous time step of a coupled vector variable.
Definition: Coupleable.C:1066

◆ customSetup() [1/2]

virtual void SetupInterface::customSetup ( const ExecFlagType )
inlinevirtualinherited

Gets called in FEProblemBase::execute() for execute flags other than initial, timestep_begin, nonlinear, linear and subdomain.

Reimplemented in Function.

Definition at line 61 of file SetupInterface.h.

61 {}

◆ customSetup() [2/2]

void Moose::FunctorBase< Real >::customSetup ( const ExecFlagType exec_type)
overridevirtualinherited

Implements Moose::FunctorAbstract.

Reimplemented in Function.

Definition at line 839 of file MooseFunctor.h.

840 {
841  if (_clearance_schedule.count(exec_type))
842  clearCacheData();
843 }
void clearCacheData()
clear cache data
Definition: MooseFunctor.h:789
std::set< ExecFlagType > _clearance_schedule
How often to clear the material property cache.
Definition: MooseFunctor.h:514

◆ cyclicDependencyError()

template<typename T , typename T2 >
void DependencyResolverInterface::cyclicDependencyError ( CyclicDependencyException< T2 > &  e,
const std::string &  header 
)
staticinherited

A helper method for cyclic errors.

Definition at line 119 of file DependencyResolverInterface.h.

121 {
122  std::ostringstream oss;
123 
124  oss << header << ":\n";
125  const auto cycle = e.getCyclicDependencies();
126  std::vector<std::string> names(cycle.size());
127  for (const auto i : index_range(cycle))
128  names[i] = static_cast<T>(cycle[i])->name();
129  oss << MooseUtils::join(names, " <- ");
130  mooseError(oss.str());
131 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::vector< T > & getCyclicDependencies() const
auto index_range(const T &sizable)
std::string join(const T &strings, const std::string &delimiter)
Python like join function for strings.
Definition: MooseUtils.h:142

◆ declareManagedRestartableDataWithContext()

template<typename T , typename... Args>
Restartable::ManagedValue< T > Restartable::declareManagedRestartableDataWithContext ( const std::string &  data_name,
void context,
Args &&...  args 
)
protectedinherited

Declares a piece of "managed" restartable data and initialize it.

Here, "managed" restartable data means that the caller can destruct this data upon destruction of the return value of this method. Therefore, this ManagedValue<T> wrapper should survive after the final calls to dataStore() for it. That is... at the very end.

This is needed for objects whose destruction ordering is important, and enables natural c++ destruction in reverse construction order of the object that declares it.

See delcareRestartableData and declareRestartableDataWithContext for more information.

Definition at line 276 of file Restartable.h.

279 {
280  auto & data_ptr =
281  declareRestartableDataHelper<T>(data_name, context, std::forward<Args>(args)...);
282  return Restartable::ManagedValue<T>(data_ptr);
283 }
Wrapper class for restartable data that is "managed.
Definition: Restartable.h:42

◆ declareRecoverableData()

template<typename T , typename... Args>
T & Restartable::declareRecoverableData ( const std::string &  data_name,
Args &&...  args 
)
protectedinherited

Declare a piece of data as "recoverable" and initialize it.

This means that in the event of a restart this piece of data will be restored back to its previous value.

Note - this data will NOT be restored on Restart!

NOTE: This returns a reference! Make sure you store it in a reference!

Parameters
data_nameThe name of the data (usually just use the same name as the member variable)
argsArguments to forward to the constructor of the data

Definition at line 351 of file Restartable.h.

352 {
353  const auto full_name = restartableName(data_name);
354 
356 
357  return declareRestartableDataWithContext<T>(data_name, nullptr, std::forward<Args>(args)...);
358 }
std::string restartableName(const std::string &data_name) const
Gets the name of a piece of restartable data given a data name, adding the system name and object nam...
Definition: Restartable.C:66
void registerRestartableNameWithFilterOnApp(const std::string &name, Moose::RESTARTABLE_FILTER filter)
Helper function for actually registering the restartable data.
Definition: Restartable.C:59

◆ declareRestartableData()

template<typename T , typename... Args>
T & Restartable::declareRestartableData ( const std::string &  data_name,
Args &&...  args 
)
protectedinherited

Declare a piece of data as "restartable" and initialize it.

This means that in the event of a restart this piece of data will be restored back to its previous value.

NOTE: This returns a reference! Make sure you store it in a reference!

Parameters
data_nameThe name of the data (usually just use the same name as the member variable)
argsArguments to forward to the constructor of the data

Definition at line 269 of file Restartable.h.

270 {
271  return declareRestartableDataWithContext<T>(data_name, nullptr, std::forward<Args>(args)...);
272 }

◆ declareRestartableDataWithContext()

template<typename T , typename... Args>
T & Restartable::declareRestartableDataWithContext ( const std::string &  data_name,
void context,
Args &&...  args 
)
protectedinherited

Declare a piece of data as "restartable" and initialize it.

This means that in the event of a restart this piece of data will be restored back to its previous value.

NOTE: This returns a reference! Make sure you store it in a reference!

Parameters
data_nameThe name of the data (usually just use the same name as the member variable)
contextContext pointer that will be passed to the load and store functions
argsArguments to forward to the constructor of the data

Definition at line 294 of file Restartable.h.

297 {
298  return declareRestartableDataHelper<T>(data_name, context, std::forward<Args>(args)...).set();
299 }

◆ declareRestartableDataWithObjectName()

template<typename T , typename... Args>
T & Restartable::declareRestartableDataWithObjectName ( const std::string &  data_name,
const std::string &  object_name,
Args &&...  args 
)
protectedinherited

Declare a piece of data as "restartable".

This means that in the event of a restart this piece of data will be restored back to its previous value.

NOTE: This returns a reference! Make sure you store it in a reference!

Parameters
data_nameThe name of the data (usually just use the same name as the member variable)
object_nameA supplied name for the object that is declaring this data.
argsArguments to forward to the constructor of the data

Definition at line 323 of file Restartable.h.

326 {
327  return declareRestartableDataWithObjectNameWithContext<T>(
328  data_name, object_name, nullptr, std::forward<Args>(args)...);
329 }

◆ declareRestartableDataWithObjectNameWithContext()

template<typename T , typename... Args>
T & Restartable::declareRestartableDataWithObjectNameWithContext ( const std::string &  data_name,
const std::string &  object_name,
void context,
Args &&...  args 
)
protectedinherited

Declare a piece of data as "restartable".

This means that in the event of a restart this piece of data will be restored back to its previous value.

NOTE: This returns a reference! Make sure you store it in a reference!

Parameters
data_nameThe name of the data (usually just use the same name as the member variable)
object_nameA supplied name for the object that is declaring this data.
contextContext pointer that will be passed to the load and store functions
argsArguments to forward to the constructor of the data

Definition at line 333 of file Restartable.h.

337 {
338  std::string old_name = _restartable_name;
339 
340  _restartable_name = object_name;
341 
342  T & value = declareRestartableDataWithContext<T>(data_name, context, std::forward<Args>(args)...);
343 
344  _restartable_name = old_name;
345 
346  return value;
347 }
std::string _restartable_name
The name of the object.
Definition: Restartable.h:243
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)

◆ deduceFunctorName() [1/2]

std::string FunctorInterface::deduceFunctorName ( const std::string &  name,
const InputParameters params 
)
staticinherited

Helper to look up a functor name through the input parameter keys.

Parameters
nameThe input parameter name that we are trying to deduce the functor name for
paramsThe input parameters object that we will be checking for parameters named name
Returns
The functor name

Definition at line 28 of file FunctorInterface.C.

Referenced by FunctorInterface::checkFunctorSupportsSideIntegration(), FunctorInterface::deduceFunctorName(), FunctorInterface::getFunctor(), and FunctorInterface::isFunctor().

29 {
30  if (params.isParamValid(name))
31  {
32  if (params.have_parameter<MooseFunctorName>(name))
33  return params.get<MooseFunctorName>(name);
34  // variables, functor material properties, functions, and post-processors are also functors
35  else if (params.have_parameter<MaterialPropertyName>(name))
36  return params.get<MaterialPropertyName>(name);
37  else if (params.have_parameter<VariableName>(name))
38  return params.get<VariableName>(name);
39  else if (params.have_parameter<std::vector<VariableName>>(name))
40  {
41  const auto & var_names = params.get<std::vector<VariableName>>(name);
42  if (var_names.size() != 1)
43  mooseError("We only support a single variable name for retrieving a functor");
44  return var_names[0];
45  }
46  else if (params.have_parameter<NonlinearVariableName>(name))
47  return params.get<NonlinearVariableName>(name);
48  else if (params.have_parameter<FunctionName>(name))
49  return params.get<FunctionName>(name);
50  else if (params.have_parameter<PostprocessorName>(name))
51  return params.get<PostprocessorName>(name);
52  else
53  mooseError("Invalid parameter type for retrieving a functor");
54  }
55  else
56  return name;
57 }
std::string name(const ElemQuality q)
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
bool have_parameter(std::string_view name) const
A wrapper around the Parameters base class method.
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ deduceFunctorName() [2/2]

std::string FunctorInterface::deduceFunctorName ( const std::string &  name) const
protectedinherited

Small helper to look up a functor name through the input parameter keys.

Definition at line 60 of file FunctorInterface.C.

61 {
62  return deduceFunctorName(name, _fi_params);
63 }
const InputParameters & _fi_params
Parameters of the object with this interface.
static std::string deduceFunctorName(const std::string &name, const InputParameters &params)
Helper to look up a functor name through the input parameter keys.

◆ defaultADMaterialProperty()

template<typename T >
const ADMaterialProperty<T>* MaterialPropertyInterface::defaultADMaterialProperty ( const std::string &  name)
inlineprotectedinherited

Definition at line 521 of file MaterialPropertyInterface.h.

522  {
523  return defaultGenericMaterialProperty<T, true>(name);
524  }
std::string name(const ElemQuality q)

◆ defaultGenericMaterialProperty()

template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > * MaterialPropertyInterface::defaultGenericMaterialProperty ( const std::string &  name)
protectedinherited
Returns
The default material property with the name name, if any.

"Default" properties are properties whose default values are set from within the name. That is, if we can cast name to a Real, and the prop type is a Real or RealVectorValue, we'll return said value.

Definition at line 618 of file MaterialPropertyInterface.h.

619 {
620  if constexpr (std::is_same_v<T, Real> || std::is_same_v<T, RealVectorValue>)
621  {
622  std::istringstream ss(name);
623  Real real_value;
624 
625  // check if the string parsed cleanly into a Real number
626  if (ss >> real_value && ss.eof())
627  {
628  using prop_type = GenericMaterialProperty<T, is_ad>;
629 
630  const auto nqp = Moose::constMaxQpsPerElem;
631  auto & property =
632  _default_properties.emplace_back(std::make_unique<prop_type>(default_property_id));
633  auto & T_property = static_cast<prop_type &>(*property);
634 
635  T_property.resize(nqp);
636  for (const auto qp : make_range(nqp))
637  T_property[qp] = real_value;
638 
639  return &T_property;
640  }
641  }
642 
643  return nullptr;
644 }
static constexpr PropertyValue::id_type default_property_id
The material property ID for a default (parsed from input) property.
constexpr std::size_t constMaxQpsPerElem
This is used for places where we initialize some qp-sized data structures that would end up being siz...
Definition: MooseTypes.h:226
std::vector< std::unique_ptr< PropertyValue > > _default_properties
Storage vector for default properties.
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
IntRange< T > make_range(T beg, T end)

◆ defaultMaterialProperty()

template<typename T >
const MaterialProperty<T>* MaterialPropertyInterface::defaultMaterialProperty ( const std::string &  name)
inlineprotectedinherited

Definition at line 516 of file MaterialPropertyInterface.h.

517  {
518  return defaultGenericMaterialProperty<T, false>(name);
519  }
std::string name(const ElemQuality q)

◆ determineState()

Moose::StateArg TransientInterface::determineState ( ) const
inlineinherited

Create a functor state argument that corresponds to the implicit state of this object.

If we are implicit then we will return the current state. If we are not, then we will return the old state

Definition at line 83 of file TransientInterface.h.

Referenced by LinearFVAdvectionDiffusionFunctorDirichletBC::computeBoundaryGradientRHSContribution(), LinearFVAdvectionDiffusionFunctorNeumannBC::computeBoundaryGradientRHSContribution(), LinearFVDiffusion::computeBoundaryMatrixContribution(), LinearFVAnisotropicDiffusion::computeBoundaryMatrixContribution(), LinearFVAdvectionDiffusionFunctorDirichletBC::computeBoundaryNormalGradient(), LinearFVAdvectionDiffusionFunctorNeumannBC::computeBoundaryNormalGradient(), LinearFVDiffusion::computeBoundaryRHSContribution(), LinearFVAnisotropicDiffusion::computeBoundaryRHSContribution(), LinearFVAdvectionDiffusionFunctorNeumannBC::computeBoundaryValue(), LinearFVAdvectionDiffusionExtrapolatedBC::computeBoundaryValue(), LinearFVAdvectionDiffusionFunctorDirichletBC::computeBoundaryValue(), LinearFVAdvectionDiffusionFunctorNeumannBC::computeBoundaryValueRHSContribution(), LinearFVAdvectionDiffusionFunctorDirichletBC::computeBoundaryValueRHSContribution(), SideIntegralVariablePostprocessor::computeFaceInfoIntegral(), InternalSideIntegralVariablePostprocessor::computeFaceInfoIntegral(), LinearFVAnisotropicDiffusion::computeFluxMatrixContribution(), LinearFVDiffusion::computeFluxMatrixContribution(), LinearFVAnisotropicDiffusion::computeFluxRHSContribution(), LinearFVDiffusion::computeFluxRHSContribution(), LinearFVReaction::computeMatrixContribution(), LayeredSideDiffusiveFluxAverage::computeQpIntegral(), SideIntegralFunctorUserObject::computeQpIntegral(), ElementIntegralFunctorUserObject::computeQpIntegral(), SideIntegralVariableUserObject::computeQpIntegral(), InterfaceIntegralVariableValuePostprocessor::computeQpIntegral(), ParsedMaterialHelper< is_ad >::computeQpProperties(), FVTwoVarContinuityConstraint::computeQpResidual(), FVOneVarDiffusionInterface::computeQpResidual(), FVDiffusionInterface::computeQpResidual(), FVMatAdvection::computeQpResidual(), FVAdvection::computeQpResidual(), FVFunctorTimeKernel::computeQpResidual(), FVCoupledForce::computeQpResidual(), FVConstantScalarOutflowBC::computeQpResidual(), FVAnisotropicDiffusion::computeQpResidual(), FVFunctorNeumannBC::computeQpResidual(), FVMassMatrix::computeQpResidual(), FVDivergence::computeQpResidual(), UserForcingFunctorNodalKernel::computeQpResidual(), FVBoundaryIntegralValueConstraint::computeQpResidual(), FVDiffusion::computeQpResidual(), FVIntegralValueConstraint::computeQpResidual(), FVBoundedValueConstraint::computeQpResidual(), FVPointValueConstraint::computeQpResidual(), LinearFVSource::computeRightHandSideContribution(), AdvectiveFluxAux::computeValue(), TimeDerivativeAux::computeValue(), SecondTimeDerivativeAux::computeValue(), FunctorAux::computeValue(), ParsedAux::computeValue(), FunctorCoordinatesFunctionAux::computeValue(), PositionsFunctorValueSampler::execute(), MeshDivisionFunctorReductionVectorPostprocessor::execute(), FunctorPositions::initialize(), FunctorTimes::initialize(), FunctorExtremaPositions::initialize(), DiffusionHDGPrescribedGradientBC::onBoundary(), DiffusionHDGAssemblyHelper::scalarDirichletResidual(), DiffusionHDGAssemblyHelper::scalarVolumeResidual(), and DiffusionHDGAssemblyHelper::vectorDirichletResidual().

84 {
86 }
StateArg oldState()
MOOSE now contains C++17 code, so give a reasonable error message stating what the user can do to add...
StateArg currentState()
bool _is_implicit
If the object is using implicit or explicit form.

◆ dot() [1/6]

FunctorBase< Real >::DotType Moose::FunctorBase< Real >::dot ( const ElemArg elem,
const StateArg state 
) const
inherited

Same as their evaluateDot overloads with the same arguments but allows for caching implementation.

These are the methods a user will call in their code

Definition at line 890 of file MooseFunctor.h.

891 {
892  return evaluateDot(elem, state);
893 }
virtual DotType evaluateDot(const ElemArg &, const StateArg &) const
Evaluate the functor time derivative with a given element.
Definition: MooseFunctor.h:385

◆ dot() [2/6]

FunctorBase< Real >::DotType Moose::FunctorBase< Real >::dot ( const FaceArg face,
const StateArg state 
) const
inherited

Definition at line 897 of file MooseFunctor.h.

898 {
899  checkFace(face);
900  return evaluateDot(face, state);
901 }
virtual DotType evaluateDot(const ElemArg &, const StateArg &) const
Evaluate the functor time derivative with a given element.
Definition: MooseFunctor.h:385
void checkFace(const Moose::FaceArg &face) const
Examines the incoming face argument.
Definition: MooseFunctor.h:732

◆ dot() [3/6]

FunctorBase< Real >::DotType Moose::FunctorBase< Real >::dot ( const ElemQpArg qp,
const StateArg state 
) const
inherited

Definition at line 905 of file MooseFunctor.h.

906 {
907  return evaluateDot(elem_qp, state);
908 }
virtual DotType evaluateDot(const ElemArg &, const StateArg &) const
Evaluate the functor time derivative with a given element.
Definition: MooseFunctor.h:385

◆ dot() [4/6]

FunctorBase< Real >::DotType Moose::FunctorBase< Real >::dot ( const ElemSideQpArg qp,
const StateArg state 
) const
inherited

Definition at line 912 of file MooseFunctor.h.

913 {
914  return evaluateDot(elem_side_qp, state);
915 }
virtual DotType evaluateDot(const ElemArg &, const StateArg &) const
Evaluate the functor time derivative with a given element.
Definition: MooseFunctor.h:385

◆ dot() [5/6]

FunctorBase< Real >::DotType Moose::FunctorBase< Real >::dot ( const ElemPointArg elem_point,
const StateArg state 
) const
inherited

Definition at line 919 of file MooseFunctor.h.

920 {
921  return evaluateDot(elem_point, state);
922 }
virtual DotType evaluateDot(const ElemArg &, const StateArg &) const
Evaluate the functor time derivative with a given element.
Definition: MooseFunctor.h:385

◆ dot() [6/6]

FunctorBase< Real >::DotType Moose::FunctorBase< Real >::dot ( const NodeArg node,
const StateArg state 
) const
inherited

Definition at line 926 of file MooseFunctor.h.

927 {
928  return evaluateDot(node, state);
929 }
virtual DotType evaluateDot(const ElemArg &, const StateArg &) const
Evaluate the functor time derivative with a given element.
Definition: MooseFunctor.h:385

◆ enabled()

virtual bool MooseObject::enabled ( ) const
inlinevirtualinherited

Return the enabled status of the object.

Reimplemented in EigenKernel.

Definition at line 40 of file MooseObject.h.

Referenced by EigenKernel::enabled().

40 { return _enabled; }
const bool & _enabled
Reference to the "enable" InputParameters, used by Controls for toggling on/off MooseObjects.
Definition: MooseObject.h:51

◆ errorFunctorNotDefinedOnSideBlock()

void SideIntegralFunctorPostprocessorTempl< is_ad >::errorFunctorNotDefinedOnSideBlock ( ) const
protectedinherited

Error with a helpful message if the functor is not defined on the primary block by the sideset.

Definition at line 122 of file SideIntegralFunctorPostprocessor.C.

123 {
124  paramError("boundary",
125  "Functor " + _functor.functorName() + " (or prefactor " + _prefactor.functorName() +
126  ") is not defined on block " + std::to_string(_current_elem->subdomain_id()) +
127  ". Is the functor defined along the whole sideset? "
128  "Are the sidesets in 'boundary' all oriented correctly?");
129 }
const Moose::Functor< GenericReal< is_ad > > & _functor
Functor being integrated.
void paramError(const std::string &param, Args... args) const
Emits an error prefixed with the file and line number of the given param (from the input file) along ...
const Moose::Functor< GenericReal< is_ad > > & _prefactor
Factor multiplying the functor being integrated.
const Elem *const & _current_elem

◆ errorNoFaceInfo()

void SideIntegralFunctorPostprocessorTempl< is_ad >::errorNoFaceInfo ( ) const
inlineoverrideprotectedvirtualinherited

Error method to call when face info is needed but not available.

Reimplemented from SideIntegralPostprocessor.

Definition at line 48 of file SideIntegralFunctorPostprocessor.h.

49  {
50  mooseError("The parameter 'functor_argument' was set to 'face', but the mesh contains no face "
51  "info objects.");
52  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ errorPrefix()

std::string MooseBase::errorPrefix ( const std::string &  error_type) const
inherited
Returns
A prefix to be used in errors that contains the input file location associated with this object (if any) and the name and type of the object.

Definition at line 43 of file MooseBase.C.

Referenced by MooseBase::callMooseError(), MooseBaseErrorInterface::mooseDeprecated(), MooseBaseErrorInterface::mooseInfo(), MooseBaseErrorInterface::mooseWarning(), and MooseBaseParameterInterface::paramErrorMsg().

44 {
45  std::stringstream oss;
46  if (const auto node = _params.getHitNode())
47  if (!node->isRoot())
48  oss << node->fileLocation() << ":\n";
49  oss << "The following " << error_type << " occurred in the ";
50  if (const auto base_ptr = _params.getBase())
51  oss << *base_ptr;
52  else
53  oss << "object";
54  oss << " '" << name() << "' of type " << type() << ".\n\n";
55  return oss.str();
56 }
const hit::Node * getHitNode(const std::string &param) const
std::optional< std::string > getBase() const
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const InputParameters & _params
The object&#39;s parameteres.
Definition: MooseBase.h:94
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51

◆ evaluateGradDot() [1/6]

virtual GradientType Moose::FunctorBase< Real >::evaluateGradDot ( const ElemArg ,
const StateArg  
) const
inlineprotectedvirtualinherited

Evaluate the functor gradient-dot with a given element.

Some example implementations of this method could compute an element-average or evaluate at the element centroid

Reimplemented in Moose::FunctorEnvelope< Real >.

Definition at line 439 of file MooseFunctor.h.

440  {
441  mooseError("Element gradient-dot not implemented for functor " + functorName());
442  }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const MooseFunctorName & functorName() const
Return the functor name.
Definition: MooseFunctor.h:170

◆ evaluateGradDot() [2/6]

virtual GradientType Moose::FunctorBase< Real >::evaluateGradDot ( const FaceArg ,
const StateArg  
) const
inlineprotectedvirtualinherited
Parameters
faceSee the FaceArg doxygen
stateSee the StateArg doxygen
Returns
The functor gradient-dot evaluated at the requested state and space

Reimplemented in Moose::FunctorEnvelope< Real >.

Definition at line 449 of file MooseFunctor.h.

450  {
451  mooseError("Face gradient-dot not implemented for functor " + functorName());
452  }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const MooseFunctorName & functorName() const
Return the functor name.
Definition: MooseFunctor.h:170

◆ evaluateGradDot() [3/6]

virtual GradientType Moose::FunctorBase< Real >::evaluateGradDot ( const ElemQpArg ,
const StateArg  
) const
inlineprotectedvirtualinherited
Parameters
qpSee the ElemQpArg doxygen
stateSee the StateArg doxygen
Returns
The functor gradient-dot evaluated at the requested state and space

Reimplemented in Moose::FunctorEnvelope< Real >.

Definition at line 459 of file MooseFunctor.h.

460  {
461  mooseError("Element quadrature point gradient-dot not implemented for functor " +
462  functorName());
463  }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const MooseFunctorName & functorName() const
Return the functor name.
Definition: MooseFunctor.h:170

◆ evaluateGradDot() [4/6]

virtual GradientType Moose::FunctorBase< Real >::evaluateGradDot ( const ElemSideQpArg ,
const StateArg  
) const
inlineprotectedvirtualinherited
Parameters
side_qpSee the ElemSideQpArg doxygen
stateSee the StateArg doxygen
Returns
The functor gradient-dot evaluated at the requested state and space

Reimplemented in Moose::FunctorEnvelope< Real >.

Definition at line 470 of file MooseFunctor.h.

471  {
472  mooseError("Element side quadrature point gradient-dot not implemented for functor " +
473  functorName());
474  }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const MooseFunctorName & functorName() const
Return the functor name.
Definition: MooseFunctor.h:170

◆ evaluateGradDot() [5/6]

virtual GradientType Moose::FunctorBase< Real >::evaluateGradDot ( const ElemPointArg ,
const StateArg  
) const
inlineprotectedvirtualinherited

Evaluate the functor gradient-dot with a given element and point.

Reimplemented in Moose::FunctorEnvelope< Real >.

Definition at line 479 of file MooseFunctor.h.

480  {
481  mooseError("Element-point gradient-dot not implemented for functor " + functorName());
482  }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const MooseFunctorName & functorName() const
Return the functor name.
Definition: MooseFunctor.h:170

◆ evaluateGradDot() [6/6]

virtual GradientType Moose::FunctorBase< Real >::evaluateGradDot ( const NodeArg ,
const StateArg  
) const
inlineprotectedvirtualinherited

Reimplemented in Moose::FunctorEnvelope< Real >.

Definition at line 484 of file MooseFunctor.h.

485  {
486  mooseError("Gradient-dot at node not implemented for functor " + functorName());
487  }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const MooseFunctorName & functorName() const
Return the functor name.
Definition: MooseFunctor.h:170

◆ execute()

void SideAverageFunctorPostprocessor::execute ( )
overridevirtual

Execute method.

Reimplemented from SideIntegralPostprocessor.

Definition at line 35 of file SideAverageFunctorPostprocessor.C.

36 {
38 
39  _area += this->_current_side_volume;
40 }
const Real & _current_side_volume
virtual void execute() override
Execute method.

◆ finalize()

void SideAverageFunctorPostprocessor::finalize ( )
overridevirtual

This is called after execute() and after threadJoin()! This is probably where you want to do MPI communication! Finalize is not required for Postprocessor implementations since work may be done in getValue().

Reimplemented from SideIntegralPostprocessor.

Definition at line 49 of file SideAverageFunctorPostprocessor.C.

50 {
53 }
void gatherSum(T &value)
Gather the parallel sum of the variable passed in.
Definition: UserObject.h:124
Real _integral_value
Holds the postprocessor result, the integral.

◆ functorName()

const MooseFunctorName& Moose::FunctorBase< Real >::functorName ( ) const
inlineinherited

Return the functor name.

Definition at line 170 of file MooseFunctor.h.

170 { return _functor_name; }
MooseFunctorName _functor_name
name of the functor
Definition: MooseFunctor.h:564

◆ gatherMax()

template<typename T >
void UserObject::gatherMax ( T &  value)
inlineinherited

Gather the parallel max of the variable passed in.

It takes care of values across all threads and CPUs (we DO hybrid parallelism!)

After calling this, the variable that was passed in will hold the gathered value.

Definition at line 136 of file UserObject.h.

Referenced by SidesetInfoVectorPostprocessor::finalize(), NodalMaxValue::finalize(), MeshDivisionFunctorReductionVectorPostprocessor::finalize(), and MemoryUsage::finalize().

137  {
138  _communicator.max(value);
139  }
const Parallel::Communicator & _communicator
void max(const T &r, T &o, Request &req) const

◆ gatherMin()

template<typename T >
void UserObject::gatherMin ( T &  value)
inlineinherited

Gather the parallel min of the variable passed in.

It takes care of values across all threads and CPUs (we DO hybrid parallelism!)

After calling this, the variable that was passed in will hold the gathered value.

Definition at line 148 of file UserObject.h.

Referenced by PointValue::execute(), SidesetInfoVectorPostprocessor::finalize(), ScalarVariable::finalize(), NearestNodeNumberUO::finalize(), MeshDivisionFunctorReductionVectorPostprocessor::finalize(), and MemoryUsage::finalize().

149  {
150  _communicator.min(value);
151  }
const Parallel::Communicator & _communicator
void min(const T &r, T &o, Request &req) const

◆ gatherProxyValueMax()

template<typename T1 , typename T2 >
void UserObject::gatherProxyValueMax ( T1 &  proxy,
T2 &  value 
)
inherited

Deteremine the value of a variable according to the parallel maximum of the provided proxy.

Parameters
[in]proxymaximum proxy will be selected
[in]valuevalue to be obtained corresponding to the location of maximum proxy

Definition at line 237 of file UserObject.h.

Referenced by NodalMaxValueId::finalize(), and ElementVariablesDifferenceMax::finalize().

238 {
239  // Get all proxy, value pairs. _communicator.maxloc would be faster but leads to
240  // partitioning dependent results if the maximum proxy is not unique.
241  std::vector<std::pair<T1, T2>> all(n_processors());
242  const auto pair = std::make_pair(proxy, value);
243  _communicator.allgather(pair, all);
244 
245  // find maximum, disambiguated by the value
246  const auto it = std::max_element(all.begin(), all.end());
247  proxy = it->first;
248  value = it->second;
249 }
void allgather(const T &send_data, std::vector< T, A > &recv_data) const
const Parallel::Communicator & _communicator
processor_id_type n_processors() const
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)

◆ gatherProxyValueMin()

template<typename T1 , typename T2 >
void UserObject::gatherProxyValueMin ( T1 &  proxy,
T2 &  value 
)
inherited

Determine the value of a variable according to which process has the parallel minimum of the provided proxy.

Parameters
[in]proxyminimum proxy will be selected
[in]valuevalue to be obtained corresponding to the location of minimum proxy

Definition at line 253 of file UserObject.h.

254 {
255  // get all proxy, value pairs
256  std::vector<std::pair<T1, T2>> all(n_processors());
257  const auto pair = std::make_pair(proxy, value);
258  _communicator.allgather(pair, all);
259 
260  // find minimum, disambiguated by the value
261  const auto it = std::min_element(all.begin(), all.end());
262  proxy = it->first;
263  value = it->second;
264 }
void allgather(const T &send_data, std::vector< T, A > &recv_data) const
const Parallel::Communicator & _communicator
processor_id_type n_processors() const
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)

◆ gatherSum()

template<typename T >
void UserObject::gatherSum ( T &  value)
inlineinherited

Gather the parallel sum of the variable passed in.

It takes care of values across all threads and CPUs (we DO hybrid parallelism!)

After calling this, the variable that was passed in will hold the gathered value.

Definition at line 124 of file UserObject.h.

Referenced by AverageNodalVariableValue::finalize(), NodalSum::finalize(), NodalL2Error::finalize(), finalize(), ExtraIDIntegralVectorPostprocessor::finalize(), SidesetInfoVectorPostprocessor::finalize(), AverageElementSize::finalize(), ElementAverageMaterialPropertyTempl< is_ad >::finalize(), SpatialAverageBase::finalize(), FunctionElementAverage::finalize(), SideAverageMaterialPropertyTempl< is_ad >::finalize(), FunctionSideAverage::finalize(), InterfaceIntegralPostprocessor::finalize(), AverageVariableChange::finalize(), NodalL2Norm::finalize(), VariableValueVolumeHistogram::finalize(), SideDiffusiveFluxAverageTempl< is_ad >::finalize(), InternalSideIntegralPostprocessor::finalize(), SideIntegralPostprocessor::finalize(), GreaterThanLessThanPostprocessor::finalize(), ElementAverageValue::finalize(), MemoryUsage::finalize(), MeshDivisionFunctorReductionVectorPostprocessor::finalize(), SideIntegralUserObject::finalize(), ElementIntegralPostprocessor::finalize(), SideAverageValue::finalize(), InterfacePostprocessor::finalize(), ElementalVariableValue::finalize(), ElementIntegralUserObject::finalize(), NodalVariableValue::finalize(), and ElementSubdomainModifierBase::modify().

125  {
126  _communicator.sum(value);
127  }
const Parallel::Communicator & _communicator

◆ genericEvaluate()

FunctorReturnType< Real , FET >::type Moose::FunctorBase< Real >::genericEvaluate ( const Space &  r,
const State &  state 
) const
inherited

Perform a generic evaluation based on the supplied template argument FET and supplied spatial and temporal arguments.

Definition at line 987 of file MooseFunctor.h.

988 {
989  if constexpr (FET == FunctorEvaluationKind::Value)
990  return (*this)(r, state);
991  else if constexpr (FET == FunctorEvaluationKind::Gradient)
992  return gradient(r, state);
993  else if constexpr (FET == FunctorEvaluationKind::Dot)
994  return dot(r, state);
995  else
996  return gradDot(r, state);
997 }
GradientType gradDot(const ElemArg &elem, const StateArg &state) const
Same as their evaluateGradDot overloads with the same arguments but allows for caching implementation...
Definition: MooseFunctor.h:933
DotType dot(const ElemArg &elem, const StateArg &state) const
Same as their evaluateDot overloads with the same arguments but allows for caching implementation...
Definition: MooseFunctor.h:890
GradientType gradient(const ElemArg &elem, const StateArg &state) const
Same as their evaluateGradient overloads with the same arguments but allows for caching implementatio...
Definition: MooseFunctor.h:847

◆ genericZeroGradient() [1/3]

template<bool is_ad>
const GenericVariableGradient<is_ad>& Coupleable::genericZeroGradient ( )
protectedinherited

Returns zero gradient templated with automatic differentiation boolean.

Returns
Reference to a const GenericVariableValue

◆ genericZeroGradient() [2/3]

template<>
const GenericVariableGradient<false>& Coupleable::genericZeroGradient ( )
protectedinherited

Definition at line 2434 of file Coupleable.C.

2435 {
2436  return _grad_zero;
2437 }
const VariableGradient & _grad_zero
Zero gradient of a variable.
Definition: Coupleable.h:1492

◆ genericZeroGradient() [3/3]

template<>
const GenericVariableGradient<true>& Coupleable::genericZeroGradient ( )
protectedinherited

Definition at line 2441 of file Coupleable.C.

2442 {
2443  return _ad_grad_zero;
2444 }
const MooseArray< ADRealVectorValue > & _ad_grad_zero
Definition: Coupleable.h:1493

◆ genericZeroSecond() [1/3]

template<bool is_ad>
const GenericVariableSecond<is_ad>& Coupleable::genericZeroSecond ( )
protectedinherited

Returns zero second derivative templated with automatic differentiation boolean.

Returns
Reference to a const GenericVariableValue

◆ genericZeroSecond() [2/3]

template<>
const GenericVariableSecond<false>& Coupleable::genericZeroSecond ( )
protectedinherited

Definition at line 2448 of file Coupleable.C.

2449 {
2450  return _second_zero;
2451 }
const VariableSecond & _second_zero
Zero second derivative of a variable.
Definition: Coupleable.h:1499

◆ genericZeroSecond() [3/3]

template<>
const GenericVariableSecond<true>& Coupleable::genericZeroSecond ( )
protectedinherited

Definition at line 2455 of file Coupleable.C.

2456 {
2457  return _ad_second_zero;
2458 }
const MooseArray< ADRealTensorValue > & _ad_second_zero
Definition: Coupleable.h:1500

◆ genericZeroValue() [1/3]

template<bool is_ad>
const GenericVariableValue<is_ad>& Coupleable::genericZeroValue ( )
protectedinherited

Returns zero value templated with automatic differentiation boolean.

Returns
Reference to a const GenericVariableValue

◆ genericZeroValue() [2/3]

template<>
const GenericVariableValue<false>& Coupleable::genericZeroValue ( )
protectedinherited

Definition at line 2420 of file Coupleable.C.

2421 {
2422  return _zero;
2423 }
const VariableValue & _zero
Zero value of a variable.
Definition: Coupleable.h:1487

◆ genericZeroValue() [3/3]

template<>
const GenericVariableValue<true>& Coupleable::genericZeroValue ( )
protectedinherited

Definition at line 2427 of file Coupleable.C.

2428 {
2429  return _ad_zero;
2430 }
const MooseArray< ADReal > & _ad_zero
Definition: Coupleable.h:1489

◆ getADDefaultCurl()

const ADVectorVariableCurl & Coupleable::getADDefaultCurl ( ) const
inherited

Helper method to return (and insert if necessary) the default curl value for Automatic Differentiation for an uncoupled variable.

Parameters
var_namethe name of the vector variable for which to retrieve a default value
Returns
Reference to a ADVectorVariableCurl containing zero entries for the default values

Definition at line 2391 of file Coupleable.C.

Referenced by Coupleable::adCoupledCurl().

2392 {
2394  return _ad_default_curl;
2395 }
MooseArray< ADRealVectorValue > _ad_default_curl
This will always be zero because the default values for optionally coupled vector variables is always...
Definition: Coupleable.h:1484
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ getADDefaultGradient()

const ADVariableGradient & Coupleable::getADDefaultGradient ( ) const
inherited

Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation for an uncoupled variable.

Parameters
var_namethe name of the variable for which to retrieve a default gradient
Returns
Reference to a ADVariableGradient containing zero entries for the default values

Definition at line 2370 of file Coupleable.C.

Referenced by Coupleable::adCoupledGradient(), and Coupleable::adCoupledGradientDot().

2371 {
2373  return _ad_default_gradient;
2374 }
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791
MooseArray< ADRealVectorValue > _ad_default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1472

◆ getADDefaultSecond()

const ADVariableSecond & Coupleable::getADDefaultSecond ( ) const
inherited

Helper method to return (and insert if necessary) the default second derivatives for Automatic Differentiation for an uncoupled variable.

Parameters
var_namethe name of the variable for which to retrieve a default second derivative
Returns
Reference to a ADVariableSecond containing zero entries for the default values

Definition at line 2384 of file Coupleable.C.

Referenced by Coupleable::adCoupledSecond().

2385 {
2387  return _ad_default_second;
2388 }
MooseArray< ADRealTensorValue > _ad_default_second
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1481
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ getADDefaultValue()

const ADVariableValue * Coupleable::getADDefaultValue ( const std::string &  var_name) const
inherited

Helper method to return (and insert if necessary) the default value for Automatic Differentiation for an uncoupled variable.

Parameters
var_namethe name of the variable for which to retrieve a default value
Returns
VariableValue * a pointer to the associated VariableValue.

Definition at line 2339 of file Coupleable.C.

Referenced by Coupleable::adCoupledDofValues(), Coupleable::adCoupledDot(), Coupleable::adCoupledDotDot(), Coupleable::adCoupledLowerValue(), NeighborCoupleable::adCoupledNeighborValue(), and Coupleable::adCoupledValue().

2340 {
2341  auto default_value_it = _ad_default_value.find(var_name);
2342  if (default_value_it == _ad_default_value.end())
2343  {
2344  auto value = std::make_unique<ADVariableValue>(_coupleable_max_qps,
2346  default_value_it = _ad_default_value.insert(std::make_pair(var_name, std::move(value))).first;
2347  }
2348 
2349  return default_value_it->second.get();
2350 }
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
Real defaultCoupledValue(const std::string &coupling_name, unsigned int i=0) const
Get the default value for an optionally coupled variable.
std::unordered_map< std::string, std::unique_ptr< MooseArray< ADReal > > > _ad_default_value
Will hold the default value for optional coupled variables for automatic differentiation.
Definition: Coupleable.h:1449
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ getADDefaultVectorGradient()

const ADVectorVariableGradient & Coupleable::getADDefaultVectorGradient ( ) const
inherited

Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation for an uncoupled vector variable.

Parameters
var_namethe name of the vector variable for which to retrieve a default gradient
Returns
Reference to a ADVectorVariableGradient containing zero entries for the default values

Definition at line 2377 of file Coupleable.C.

Referenced by Coupleable::adCoupledVectorGradient().

2378 {
2381 }
MooseArray< ADRealTensorValue > _ad_default_vector_gradient
This will always be zero because the default values for optionally coupled vector variables is always...
Definition: Coupleable.h:1475
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ getADDefaultVectorValue()

const ADVectorVariableValue * Coupleable::getADDefaultVectorValue ( const std::string &  var_name) const
inherited

Helper method to return (and insert if necessary) the default vector value for Automatic Differentiation for an uncoupled variable.

Parameters
var_namethe name of the vector variable for which to retrieve a default value
Returns
VectorVariableValue * a pointer to the associated VectorVariableValue.

Definition at line 2353 of file Coupleable.C.

Referenced by Coupleable::adCoupledVectorDot(), NeighborCoupleable::adCoupledVectorNeighborValue(), and Coupleable::adCoupledVectorValue().

2354 {
2355  auto default_value_it = _ad_default_vector_value.find(var_name);
2356  if (default_value_it == _ad_default_vector_value.end())
2357  {
2358  RealVectorValue default_vec;
2359  for (unsigned int i = 0; i < _c_parameters.numberDefaultCoupledValues(var_name); ++i)
2360  default_vec(i) = _c_parameters.defaultCoupledValue(var_name, i);
2361  auto value = std::make_unique<ADVectorVariableValue>(_coupleable_max_qps, default_vec);
2362  default_value_it =
2363  _ad_default_vector_value.insert(std::make_pair(var_name, std::move(value))).first;
2364  }
2365 
2366  return default_value_it->second.get();
2367 }
std::unordered_map< std::string, std::unique_ptr< MooseArray< ADRealVectorValue > > > _ad_default_vector_value
Will hold the default value for optional vector coupled variables for automatic differentiation.
Definition: Coupleable.h:1460
unsigned int numberDefaultCoupledValues(const std::string &coupling_name) const
Get the number of defaulted coupled value entries.
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
Real defaultCoupledValue(const std::string &coupling_name, unsigned int i=0) const
Get the default value for an optionally coupled variable.
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1791

◆ getADMaterialProperty() [1/2]

template<typename T >
const ADMaterialProperty<T>& MaterialPropertyInterface::getADMaterialProperty ( const std::string &  name)
inlineinherited

Definition at line 103 of file MaterialPropertyInterface.h.

104  {
105  return getGenericMaterialProperty<T, true>(name, 0);
106  }
std::string name(const ElemQuality q)

◆ getADMaterialProperty() [2/2]

template<typename T >
const ADMaterialProperty<T>& MaterialPropertyInterface::getADMaterialProperty ( const std::string &  name,
MaterialData material_data 
)
inlineinherited

Retrieve the AD property named "name" for the specified material_data.

state is the property state; 0 = current, 1 = old, 2 = older, etc.

Definition at line 362 of file MaterialPropertyInterface.h.

364  {
365  return getGenericMaterialProperty<T, true>(name, material_data, 0);
366  }
std::string name(const ElemQuality q)

◆ getADMaterialPropertyByName() [1/2]

template<typename T >
const ADMaterialProperty<T>& MaterialPropertyInterface::getADMaterialPropertyByName ( const MaterialPropertyName &  name)
inlineinherited

Definition at line 140 of file MaterialPropertyInterface.h.

141  {
142  return getGenericMaterialPropertyByName<T, true>(name, 0);
143  }
std::string name(const ElemQuality q)

◆ getADMaterialPropertyByName() [2/2]

template<typename T >
const ADMaterialProperty<T>& MaterialPropertyInterface::getADMaterialPropertyByName ( const MaterialPropertyName &  name,
MaterialData material_data 
)
inlineinherited

Retrieve the AD property named "name" without any deduction for the specified material_data.

Definition at line 405 of file MaterialPropertyInterface.h.

407  {
408  return getGenericMaterialPropertyByName<T, true>(name, material_data, 0);
409  }
std::string name(const ElemQuality q)

◆ getAllElemIDs()

std::set<dof_id_type> ElementIDInterface::getAllElemIDs ( unsigned int  elem_id_index) const
inlineinherited

Return all the unique element IDs for an element integer with its index on the entire domain.

Definition at line 120 of file ElementIDInterface.h.

121  {
122  return _id_mesh->getAllElemIDs(elem_id_index);
123  }
std::shared_ptr< MooseMesh > & _id_mesh
References to the mesh and displaced mesh (currently in the ActionWarehouse)

◆ getArrayVar() [1/2]

ArrayMooseVariable * Coupleable::getArrayVar ( const std::string &  var_name,
unsigned int  comp 
)
protectedinherited

◆ getArrayVar() [2/2]

const ArrayMooseVariable * Coupleable::getArrayVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Extract pointer to a coupled array variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 328 of file Coupleable.C.

329 {
330  return getVarHelper<ArrayMooseVariable>(var_name, comp);
331 }

◆ getBlockMaterialProperty()

template<typename T >
std::pair< const MaterialProperty< T > *, std::set< SubdomainID > > MaterialPropertyInterface::getBlockMaterialProperty ( const MaterialPropertyName &  name)
inherited

Retrieve pointer to a material property with the mesh blocks where it is defined The name required by this method is the name defined in the input file.

This function can be thought as the combination of getMaterialPropertyByName and getMaterialPropertyBlocks. It can be called after the action of all actions.

Parameters
nameThe name of the material property to retrieve
Returns
Pointer to the material property with the name 'name' and the set of blocks where the property is valid

Definition at line 648 of file MaterialPropertyInterface.h.

649 {
650  const auto name = _get_suffix.empty()
651  ? static_cast<const std::string &>(name_in)
652  : MooseUtils::join(std::vector<std::string>({name_in, _get_suffix}), "_");
653 
654  if (_mi_block_ids.empty())
655  mooseError("getBlockMaterialProperty must be called by a block restrictable object");
656 
657  using pair_type = std::pair<const MaterialProperty<T> *, std::set<SubdomainID>>;
658 
659  if (!hasMaterialPropertyByName<T>(name))
660  return pair_type(nullptr, {});
661 
662  // Call first so that the ID gets registered
663  const auto & prop = _material_data.getProperty<T, false>(name, 0, _mi_moose_object);
664  auto blocks = getMaterialPropertyBlocks(name);
665  auto prop_blocks_pair = pair_type(&prop, std::move(blocks));
666 
668 
669  // Update consumed properties in MaterialPropertyDebugOutput
671 
672  return prop_blocks_pair;
673 }
std::string name(const ElemQuality q)
const MooseObjectName _mi_moose_object_name
The "complete" name of the object that this interface belongs for material property output...
const std::set< SubdomainID > & _mi_block_ids
Storage for the block ids created by BlockRestrictable.
char ** blocks
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
unsigned int getPropertyId(const std::string &prop_name) const
Wrapper for MaterialStorage::getPropertyId.
Definition: MaterialData.C:80
MaterialData & _material_data
The material data class that stores properties.
std::set< SubdomainID > getMaterialPropertyBlocks(const std::string &name)
Retrieve the block ids that the material property is defined.
const MaterialPropertyName _get_suffix
GenericMaterialProperty< T, is_ad > & getProperty(const std::string &prop_name, const unsigned int state, const MooseObject &requestor)
Retrieves a material property.
Definition: MaterialData.h:111
void addConsumedPropertyName(const MooseObjectName &obj_name, const std::string &prop_name)
const MooseObject & _mi_moose_object
The MooseObject creating the MaterialPropertyInterface.
std::unordered_set< unsigned int > _material_property_dependencies
The set of material properties (as given by their IDs) that this object depends on.
std::string join(const T &strings, const std::string &delimiter)
Python like join function for strings.
Definition: MooseUtils.h:142

◆ getCheckedPointerParam()

template<typename T >
T MooseBaseParameterInterface::getCheckedPointerParam ( const std::string &  name,
const std::string &  error_string = "" 
) const
inherited

Verifies that the requested parameter exists and is not NULL and returns it to the caller.

The template parameter must be a pointer or an error will be thrown.

Definition at line 268 of file MooseBaseParameterInterface.h.

270 {
271  return parameters().getCheckedPointerParam<T>(name, error_string);
272 }
std::string name(const ElemQuality q)
T getCheckedPointerParam(const std::string &name, const std::string &error_string="") const
Verifies that the requested parameter exists and is not NULL and returns it to the caller...
const InputParameters & parameters() const
Get the parameters of the object.

◆ getCoupledArrayMooseVars()

const std::vector<ArrayMooseVariable *>& Coupleable::getCoupledArrayMooseVars ( ) const
inlineinherited

Get the list of array coupled variables.

Returns
The list of array coupled variables

Definition at line 97 of file Coupleable.h.

98  {
100  }
std::vector< ArrayMooseVariable * > _coupled_array_moose_vars
Vector of array coupled variables.
Definition: Coupleable.h:1421

◆ getCoupledMooseScalarVars()

const std::vector<MooseVariableScalar *>& ScalarCoupleable::getCoupledMooseScalarVars ( )
inlineinherited

Get the list of coupled scalar variables.

Returns
The list of coupled variables

Definition at line 45 of file ScalarCoupleable.h.

Referenced by AuxScalarKernel::AuxScalarKernel(), MortarScalarBase::computeJacobian(), and ScalarInitialCondition::ScalarInitialCondition().

46  {
48  }
std::vector< MooseVariableScalar * > _coupled_moose_scalar_vars
Vector of coupled variables.

◆ getCoupledMooseVars()

const std::vector<MooseVariableFieldBase *>& Coupleable::getCoupledMooseVars ( ) const
inlineinherited

◆ getCoupledStandardMooseVars()

const std::vector<MooseVariable *>& Coupleable::getCoupledStandardMooseVars ( ) const
inlineinherited

Get the list of standard coupled variables.

Returns
The list of standard coupled variables

Definition at line 79 of file Coupleable.h.

80  {
82  }
std::vector< MooseVariable * > _coupled_standard_moose_vars
Vector of standard coupled variables.
Definition: Coupleable.h:1415

◆ getCoupledVars()

const std::unordered_map<std::string, std::vector<MooseVariableFieldBase *> >& Coupleable::getCoupledVars ( ) const
inlineinherited

Get the list of coupled variables.

Returns
The list of coupled variables

Definition at line 61 of file Coupleable.h.

Referenced by InitialConditionBase::InitialConditionBase().

62  {
63  return _coupled_vars;
64  }
std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > _coupled_vars
Coupled vars whose values we provide.
Definition: Coupleable.h:1409

◆ getCoupledVectorMooseVars()

const std::vector<VectorMooseVariable *>& Coupleable::getCoupledVectorMooseVars ( ) const
inlineinherited

Get the list of vector coupled variables.

Returns
The list of vector coupled variables

Definition at line 88 of file Coupleable.h.

89  {
91  }
std::vector< VectorMooseVariable * > _coupled_vector_moose_vars
Vector of vector coupled variables.
Definition: Coupleable.h:1418

◆ getCurrentValue()

const PostprocessorValue& Postprocessor::getCurrentValue ( ) const
inlineinherited
Returns
The "current" value of this Postprocessor.

Your sanity would tell you... why not just call getValue()? Well - the intention of getValue() is to be called by the problem when the UserObjects are executed, and not by other things. This enables the control of when this Postprocessor is updated, which could be very important. If the implementation of getValue() is such that it actually computes a new value (instead of one that is called in finalize()), you could potentially call getValue() and not get the value as it was at the last time this PP was executed.

What this does instead is gives you the value that was last set as this PP was executed by the problem. That is, the value that every object that uses the PostprocessorInterface will get you.

Definition at line 56 of file Postprocessor.h.

Referenced by Postprocessor::evaluate().

56 { return _current_value; }
const PostprocessorValue & _current_value
The current value, which is the Reporter value that changes when we execute UOs in the problem...
Definition: Postprocessor.h:73

◆ getDataFileName()

std::string DataFileInterface::getDataFileName ( const std::string &  param) const
inherited

Deprecated method.

The data file paths are now automatically set within the InputParameters object, so using getParam<DataFileName>("param_name") is now sufficient.

Definition at line 21 of file DataFileInterface.C.

22 {
23  _parent.mooseDeprecated("getDataFileName() is deprecated. The file path is now directly set "
24  "within the InputParameters.\nUse getParam<DataFileName>(\"",
25  param,
26  "\") instead.");
27  return _parent.getParam<DataFileName>(param);
28 }
void mooseDeprecated(Args &&... args) const
const T & getParam(const std::string &name) const
Retrieve a parameter for the object.
const ParallelParamObject & _parent

◆ getDataFileNameByName()

std::string DataFileInterface::getDataFileNameByName ( const std::string &  relative_path) const
inherited

Deprecated method.

Use getDataFilePath() instead.

Definition at line 31 of file DataFileInterface.C.

32 {
33  _parent.mooseDeprecated("getDataFileNameByName() is deprecated. Use getDataFilePath(\"",
34  relative_path,
35  "\") instead.");
36  return getDataFilePath(relative_path);
37 }
std::string getDataFilePath(const std::string &relative_path) const
Returns the path of a data file for a given relative file path.
void mooseDeprecated(Args &&... args) const
const ParallelParamObject & _parent

◆ getDataFilePath()

std::string DataFileInterface::getDataFilePath ( const std::string &  relative_path) const
inherited

Returns the path of a data file for a given relative file path.

This can be used for hardcoded datafile names and will search the same locations as getDataFileName

Definition at line 40 of file DataFileInterface.C.

Referenced by DataFileInterface::getDataFileNameByName().

41 {
42  // This should only ever be used with relative paths. There is no point to
43  // use this search path with an absolute path.
44  if (std::filesystem::path(relative_path).is_absolute())
45  _parent.mooseWarning("While using getDataFilePath(\"",
46  relative_path,
47  "\"): This API should not be used for absolute paths.");
48 
49  // Throw on error so that if getPath() fails, we can throw an error
50  // with the context of _parent.mooseError()
51  const auto throw_on_error_before = Moose::_throw_on_error;
53  std::optional<std::string> error;
54 
55  // This will search the data paths for this relative path
56  Moose::DataFileUtils::Path found_path;
57  try
58  {
59  found_path = Moose::DataFileUtils::getPath(relative_path);
60  }
61  catch (std::exception & e)
62  {
63  error = e.what();
64  }
65 
66  Moose::_throw_on_error = throw_on_error_before;
67  if (error)
68  _parent.mooseError(*error);
69 
70  mooseAssert(found_path.context == Moose::DataFileUtils::Context::DATA,
71  "Should only ever obtain data");
72  mooseAssert(found_path.data_name, "Should be set");
73 
74  const std::string msg =
75  "Using data file '" + found_path.path + "' from " + *found_path.data_name + " data";
76  _parent.mooseInfo(msg);
77 
78  return found_path.path;
79 }
Context context
Context for the file (where it came from)
Definition: DataFileUtils.h:48
void mooseInfo(Args &&... args) const
void mooseWarning(Args &&... args) const
Emits a warning prefixed with object name and type.
Representation of a data file path.
Definition: DataFileUtils.h:36
Path getPath(std::string path, const std::optional< std::string > &base=std::optional< std::string >())
Get the data path for a given path, searching the registered data.
Definition: DataFileUtils.C:22
std::optional< std::string > data_name
The name of the data registry the file came from (with context == DATA)
Definition: DataFileUtils.h:50
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
bool _throw_on_error
Variable to turn on exceptions during mooseError(), should only be used within MOOSE unit tests or wh...
Definition: Moose.C:742
const ParallelParamObject & _parent

◆ getDependObjects()

std::set< UserObjectName > UserObject::getDependObjects ( ) const
inherited

Recursively return a set of user objects this user object depends on Note: this can be called only after all user objects are constructed.

Definition at line 97 of file UserObject.C.

Referenced by AuxKernelTempl< Real >::addUserObjectDependencyHelper().

98 {
99  std::set<UserObjectName> all;
100  for (auto & v : _depend_uo)
101  {
102  all.insert(v);
104 
105  // Add dependencies of other objects, but don't allow it to call itself. This can happen
106  // through the PostprocessorInterface if a Postprocessor calls getPostprocessorValueByName
107  // with it's own name. This happens in the Receiver, which could use the FEProblem version of
108  // the get method, but this is a fix that prevents an infinite loop occurring by accident for
109  // future objects.
110  if (uo.name() != name())
111  {
112  auto uos = uo.getDependObjects();
113  for (auto & t : uos)
114  all.insert(t);
115  }
116  }
117  return all;
118 }
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
std::set< std::string > _depend_uo
Depend UserObjects that to be used both for determining user object sorting and by AuxKernel for find...
Definition: UserObject.h:226
const UserObject & getUserObjectBaseByName(const UserObjectName &object_name, bool is_dependency=true) const
Get an user object with the name object_name.

◆ getDistribution() [1/2]

const Distribution & DistributionInterface::getDistribution ( const std::string &  name) const
inherited

Get a distribution with a given name.

Parameters
nameThe name of the parameter key of the distribution to retrieve
Returns
The distribution with name associated with the parameter 'name'

Definition at line 31 of file DistributionInterface.C.

Referenced by DistributionInterface::getDistribution(), and DistributionInterface::getDistributionByName().

32 {
33  DistributionName dist_name = _dni_params.get<DistributionName>(name);
34  return _dni_feproblem.getDistribution(dist_name);
35 }
std::string name(const ElemQuality q)
virtual Distribution & getDistribution(const std::string &name)
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _dni_feproblem
Reference to FEProblemBase instance.
const InputParameters & _dni_params
Parameters of the object with this interface.

◆ getDistribution() [2/2]

template<typename T >
const T & DistributionInterface::getDistribution ( const std::string &  name) const
inherited

Definition at line 69 of file DistributionInterface.h.

70 {
71  try
72  {
73  const T & dist = dynamic_cast<const T &>(getDistribution(name));
74  return dist;
75  }
76  catch (std::bad_cast & exception)
77  {
78  DistributionName dist_name = _dni_params.get<DistributionName>(name);
79  mooseError("The '",
81  "' object failed to retrieve '",
82  dist_name,
83  "' distribution with the desired type.");
84  }
85 }
std::string name(const ElemQuality q)
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const Distribution & getDistribution(const std::string &name) const
Get a distribution with a given name.
const InputParameters & _dni_params
Parameters of the object with this interface.
const MooseObject *const _dni_moose_object_ptr
Pointer to the MooseObject.

◆ getDistributionByName() [1/2]

const Distribution & DistributionInterface::getDistributionByName ( const DistributionName &  name) const
inherited

Get a distribution with a given name.

Parameters
nameThe name of the distribution to retrieve
Returns
The distribution with name 'name'

Definition at line 38 of file DistributionInterface.C.

Referenced by RandomIC::RandomIC().

39 {
40  return _dni_feproblem.getDistribution(name);
41 }
virtual Distribution & getDistribution(const std::string &name)
FEProblemBase & _dni_feproblem
Reference to FEProblemBase instance.

◆ getDistributionByName() [2/2]

template<typename T >
const T & DistributionInterface::getDistributionByName ( const std::string &  name) const
inherited

Definition at line 89 of file DistributionInterface.h.

90 {
91  try
92  {
93  const T & dist = dynamic_cast<const T &>(getDistribution(name));
94  return dist;
95  }
96  catch (std::bad_cast & exception)
97  {
98  mooseError("The '",
100  "' object failed to retrieve '",
101  name,
102  "' distribution with the desired type.");
103  }
104 }
std::string name(const ElemQuality q)
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const Distribution & getDistribution(const std::string &name) const
Get a distribution with a given name.
const MooseObject *const _dni_moose_object_ptr
Pointer to the MooseObject.

◆ getElementID() [1/2]

const dof_id_type & ElementIDInterface::getElementID ( const std::string &  id_parameter_name,
unsigned int  comp = 0 
) const
virtualinherited

Gets an element integer with a parameter of the object derived from this interface.

Parameters
id_parameter_nameName of object parameter
compComponent number for vector of integer names
Returns
Integer for the current element

Reimplemented in Material.

Definition at line 72 of file ElementIDInterface.C.

Referenced by Material::getElementID().

73 {
74  auto id = getElementIDIndex(id_parameter_name, comp);
75 
76  auto & _subproblem = *_obj_parameters.getCheckedPointerParam<SubProblem *>("_subproblem");
77 
78  auto tid = _obj_parameters.get<THREAD_ID>("_tid");
79 
80  auto & assembly = _subproblem.assembly(tid, 0);
81 
82  return assembly.extraElemID(id);
83 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
T getCheckedPointerParam(const std::string &name, const std::string &error_string="") const
Verifies that the requested parameter exists and is not NULL and returns it to the caller...
virtual unsigned int getElementIDIndex(const std::string &id_parameter_name, unsigned int comp=0) const
Gets index of an element integer with a parameter of the object derived from this interface...
const InputParameters & _obj_parameters
Reference to the object&#39;s input parameters.
Generic class for solving transient nonlinear problems.
Definition: SubProblem.h:78
unsigned int THREAD_ID
Definition: MooseTypes.h:205

◆ getElementID() [2/2]

dof_id_type ElementIDInterface::getElementID ( const Elem *  elem,
unsigned int  elem_id_index 
) const
inlineinherited

Get an element integer for an element.

Definition at line 138 of file ElementIDInterface.h.

139  {
140  if (elem_id_index == elem->n_extra_integers())
141  return elem->subdomain_id();
142 
143  return elem->get_extra_integer(elem_id_index);
144  }

◆ getElementIDByName()

const dof_id_type & ElementIDInterface::getElementIDByName ( const std::string &  id_name) const
virtualinherited

Gets an element integer with the element integer name.

Parameters
id_nameName of element integer
Returns
Integer for the current element

Reimplemented in Material.

Definition at line 101 of file ElementIDInterface.C.

Referenced by Material::getElementIDByName().

102 {
103  auto id = getElementIDIndexByName(id_name);
104 
105  auto & _subproblem = *_obj_parameters.getCheckedPointerParam<SubProblem *>("_subproblem");
106 
107  auto tid = _obj_parameters.get<THREAD_ID>("_tid");
108 
109  auto & assembly = _subproblem.assembly(tid, 0);
110 
111  return assembly.extraElemID(id);
112 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
T getCheckedPointerParam(const std::string &name, const std::string &error_string="") const
Verifies that the requested parameter exists and is not NULL and returns it to the caller...
const InputParameters & _obj_parameters
Reference to the object&#39;s input parameters.
virtual unsigned int getElementIDIndexByName(const std::string &id_name) const
Return the accessing integer for an extra element integer with its name.
Generic class for solving transient nonlinear problems.
Definition: SubProblem.h:78
unsigned int THREAD_ID
Definition: MooseTypes.h:205

◆ getElementIDIndex()

unsigned int ElementIDInterface::getElementIDIndex ( const std::string &  id_parameter_name,
unsigned int  comp = 0 
) const
virtualinherited

Gets index of an element integer with a parameter of the object derived from this interface.

Parameters
id_parameter_nameName of object parameter
compComponent number for vector of integer names
Returns
Index of the element integer

Definition at line 36 of file ElementIDInterface.C.

Referenced by ElementIDInterface::getElementID(), and ElementIDInterface::getElementIDNeighbor().

38 {
39  auto & p = _obj_parameters.get<std::vector<ExtraElementIDName>>(id_parameter_name);
40  if (comp >= p.size())
41  mooseError(id_parameter_name, " does not have enough integer names");
42 
43  return getElementIDIndexByName(p[comp]);
44 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _obj_parameters
Reference to the object&#39;s input parameters.
virtual unsigned int getElementIDIndexByName(const std::string &id_name) const
Return the accessing integer for an extra element integer with its name.

◆ getElementIDIndexByName()

unsigned int ElementIDInterface::getElementIDIndexByName ( const std::string &  id_name) const
virtualinherited

Return the accessing integer for an extra element integer with its name.

Parameters
id_nameName of element integer
Returns
Index of the element integer

Definition at line 47 of file ElementIDInterface.C.

Referenced by ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), ElementIDInterface::getElementIDByName(), ElementIDInterface::getElementIDIndex(), and ElementIDInterface::getElementIDNeighborByName().

48 {
49  if (!_id_mesh.get())
50  mooseError("Mesh is not available for getting element integers");
51 
52  auto & mesh_base = _id_mesh->getMesh();
53 
54  if (id_name == "subdomain_id")
55  {
56  if (mesh_base.has_elem_integer(id_name))
57  mooseError("MOOSE does not allow 'subdomain_id' element integer in a mesh. 'subdomain_id' is "
58  "reserved for element subdomain ID");
59  return mesh_base.n_elem_integers();
60  }
61 
62  if (!mesh_base.has_elem_integer(id_name))
63  mooseError(
64  "Mesh does not have an element integer names as ", id_name, " but required by ", _ei_name);
65 
66  auto id = mesh_base.get_elem_integer_index(id_name);
67 
68  return id;
69 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::shared_ptr< MooseMesh > & _id_mesh
References to the mesh and displaced mesh (currently in the ActionWarehouse)
const std::string & _ei_name
Name of the object using this interface.

◆ getElementIDNeighbor()

const dof_id_type & ElementIDInterface::getElementIDNeighbor ( const std::string &  id_parameter_name,
unsigned int  comp = 0 
) const
virtualinherited

Gets a neighbor element integer with a parameter of the object derived from this interface.

Parameters
id_parameter_nameName of object parameter
compComponent number for vector of integer names
Returns
Integer for the neighbor element

Reimplemented in Material.

Definition at line 86 of file ElementIDInterface.C.

Referenced by Material::getElementID(), and Material::getElementIDNeighbor().

88 {
89  auto id = getElementIDIndex(id_parameter_name, comp);
90 
91  auto & _subproblem = *_obj_parameters.getCheckedPointerParam<SubProblem *>("_subproblem");
92 
93  auto tid = _obj_parameters.get<THREAD_ID>("_tid");
94 
95  auto & assembly = _subproblem.assembly(tid, 0);
96 
97  return assembly.extraElemIDNeighbor(id);
98 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
T getCheckedPointerParam(const std::string &name, const std::string &error_string="") const
Verifies that the requested parameter exists and is not NULL and returns it to the caller...
virtual unsigned int getElementIDIndex(const std::string &id_parameter_name, unsigned int comp=0) const
Gets index of an element integer with a parameter of the object derived from this interface...
const InputParameters & _obj_parameters
Reference to the object&#39;s input parameters.
Generic class for solving transient nonlinear problems.
Definition: SubProblem.h:78
unsigned int THREAD_ID
Definition: MooseTypes.h:205

◆ getElementIDNeighborByName()

const dof_id_type & ElementIDInterface::getElementIDNeighborByName ( const std::string &  id_name) const
virtualinherited

Gets a neighbor element integer with the element integer name.

Parameters
id_nameName of element integer
Returns
Integer for the neighbor element

Reimplemented in Material.

Definition at line 115 of file ElementIDInterface.C.

Referenced by Material::getElementIDByName(), and Material::getElementIDNeighborByName().

116 {
117  auto id = getElementIDIndexByName(id_name);
118 
119  auto & _subproblem = *_obj_parameters.getCheckedPointerParam<SubProblem *>("_subproblem");
120 
121  auto tid = _obj_parameters.get<THREAD_ID>("_tid");
122 
123  auto & assembly = _subproblem.assembly(tid, 0);
124 
125  return assembly.extraElemIDNeighbor(id);
126 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
T getCheckedPointerParam(const std::string &name, const std::string &error_string="") const
Verifies that the requested parameter exists and is not NULL and returns it to the caller...
const InputParameters & _obj_parameters
Reference to the object&#39;s input parameters.
virtual unsigned int getElementIDIndexByName(const std::string &id_name) const
Return the accessing integer for an extra element integer with its name.
Generic class for solving transient nonlinear problems.
Definition: SubProblem.h:78
unsigned int THREAD_ID
Definition: MooseTypes.h:205

◆ getElemIDMapping()

std::unordered_map<dof_id_type, std::set<dof_id_type> > ElementIDInterface::getElemIDMapping ( const std::string &  id_name1,
const std::string &  id_name2 
) const
inlineinherited

Get the mapping from IDs of one extra element integer to another given the two integer names.

Definition at line 112 of file ElementIDInterface.h.

113  {
114  return _id_mesh->getElemIDMapping(id_name1, id_name2);
115  }
std::shared_ptr< MooseMesh > & _id_mesh
References to the mesh and displaced mesh (currently in the ActionWarehouse)

◆ getElemIDsOnBlocks()

std::set<dof_id_type> ElementIDInterface::getElemIDsOnBlocks ( unsigned int  elem_id_index,
const std::set< SubdomainID > &  blks 
) const
inlineinherited

Return all the unique element IDs for an extra element integer with its index on a set of subdomains.

Definition at line 129 of file ElementIDInterface.h.

131  {
132  return _id_mesh->getElemIDsOnBlocks(elem_id_index, blks);
133  }
std::shared_ptr< MooseMesh > & _id_mesh
References to the mesh and displaced mesh (currently in the ActionWarehouse)

◆ getExecuteOnEnum()

const ExecFlagEnum & SetupInterface::getExecuteOnEnum ( ) const
inherited

◆ getFaceInfos()

void SideUserObject::getFaceInfos ( )
protectedinherited

Computes the local FaceInfo(s) to use in functor arguments and interpolations.

Adaptivity/refinement may mean that an element with a given side has multiple active faces (each a different FaceInfo) with its more refined neighbor. Note that face info could hold the element from the other side of the sideset. Sidesets are oriented!

Definition at line 49 of file SideUserObject.C.

Referenced by SideIntegralPostprocessor::computeIntegral().

50 {
51  _face_infos.clear();
52 
53  // Either the element or the (active) neighbor is a valid argument to get a face info
54  const Elem * side_neighbor = _current_elem->neighbor_ptr(_current_side);
55 
56  mooseAssert(_current_elem, "We should have an element");
57  mooseAssert(_current_elem->active(), "The current element should be active");
58 
59  // No neighbor means we are at a boundary, a FaceInfo exists in the mesh
60  if (side_neighbor)
61  {
62  std::vector<const Elem *> candidate_neighbors = {side_neighbor};
63 
64  // neighbor is not active, we have to seek its refined children to get a FaceInfo
65  if (!side_neighbor->active())
66  side_neighbor->active_family_tree_by_neighbor(candidate_neighbors, _current_elem);
67 
68  for (const Elem * neighbor : candidate_neighbors)
69  {
70  const Elem * element = _current_elem;
71  auto side = _current_side;
72 
73  // If a neighbor exists, the face info may only be defined on the other side
74  // First check refinement level
75  if (_current_elem->level() < neighbor->level())
76  {
77  element = neighbor;
78  side = neighbor->which_neighbor_am_i(_current_elem);
79  }
80  // Then check ids
81  else if ((_current_elem->level() == neighbor->level()) &&
82  (_current_elem->id() > neighbor->id()))
83  {
84  element = neighbor;
85  side = neighbor->which_neighbor_am_i(_current_elem);
86  }
87  const auto fi = _mesh.faceInfo(element, side);
88  mooseAssert(fi, "Face info must not be null.");
89  _face_infos.push_back(fi);
90  }
91  }
92  else
93  {
94  const auto fi = _mesh.faceInfo(_current_elem, _current_side);
95  mooseAssert(fi, "Face info must not be null.");
96  _face_infos.push_back(fi);
97  }
98 }
const unsigned int & _current_side
current side of the current element
std::vector< const FaceInfo * > _face_infos
Holds the FaceInfos to loop on to consider all active neighbors of an element on a given side...
const std::vector< const FaceInfo * > & faceInfo() const
Accessor for local FaceInfo objects.
Definition: MooseMesh.h:2156
MooseMesh & _mesh
const Elem *const & _current_elem

◆ getFEVar()

const MooseVariableFieldBase * Coupleable::getFEVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Deprecated method.

Use getFieldVar instead Extract pointer to a base coupled field variable. Could be either a finite volume or finite element variable

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 267 of file Coupleable.C.

268 {
269  mooseDeprecated("Coupleable::getFEVar is deprecated. Please use Coupleable::getFieldVar instead. "
270  "Note that this method could potentially return a finite volume variable");
271  return getFieldVar(var_name, comp);
272 }
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:353
const MooseVariableFieldBase * getFieldVar(const std::string &var_name, unsigned int comp) const
Definition: Coupleable.C:281

◆ getFEVariableCoupleableMatrixTags() [1/2]

std::set<TagID>& Coupleable::getFEVariableCoupleableMatrixTags ( )
inlineinherited

Definition at line 108 of file Coupleable.h.

108 { return _fe_coupleable_matrix_tags; }
std::set< TagID > _fe_coupleable_matrix_tags
Definition: Coupleable.h:1801

◆ getFEVariableCoupleableMatrixTags() [2/2]

const std::set<TagID>& Coupleable::getFEVariableCoupleableMatrixTags ( ) const
inlineinherited

Definition at line 115 of file Coupleable.h.

116  {
118  }
std::set< TagID > _fe_coupleable_matrix_tags
Definition: Coupleable.h:1801

◆ getFEVariableCoupleableVectorTags() [1/2]

std::set<TagID>& Coupleable::getFEVariableCoupleableVectorTags ( )
inlineinherited

◆ getFEVariableCoupleableVectorTags() [2/2]

const std::set<TagID>& Coupleable::getFEVariableCoupleableVectorTags ( ) const
inlineinherited

Definition at line 110 of file Coupleable.h.

111  {
113  }
std::set< TagID > _fe_coupleable_vector_tags
Definition: Coupleable.h:1799

◆ getFieldVar() [1/2]

const MooseVariableFieldBase * Coupleable::getFieldVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

◆ getFieldVar() [2/2]

MooseVariableFieldBase * Coupleable::getFieldVar ( const std::string &  var_name,
unsigned int  comp 
)
protectedinherited

Definition at line 275 of file Coupleable.C.

276 {
277  return getVarHelper<MooseVariableFieldBase>(var_name, comp);
278 }

◆ getFunction()

const Function & FunctionInterface::getFunction ( const std::string &  name) const
inherited

Get a function with a given name.

Parameters
nameThe name of the parameter key of the function to retrieve
Returns
The function with name associated with the parameter 'name'

Definition at line 30 of file FunctionInterface.C.

Referenced by FunctionDT::FunctionDT(), and Output::Output().

31 {
32  return _fni_feproblem.getFunction(_fni_params.get<FunctionName>(name), _fni_tid);
33 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
virtual Function & getFunction(const std::string &name, const THREAD_ID tid=0)
const THREAD_ID _fni_tid
Thread ID.
FEProblemBase & _fni_feproblem
Reference to FEProblemBase instance.
const InputParameters & _fni_params
Parameters of the object with this interface.

◆ getFunctionByName()

const Function & FunctionInterface::getFunctionByName ( const FunctionName &  name) const
inherited

◆ getFunctor() [1/4]

template<typename T >
const Moose::Functor< T > & FunctorInterface::getFunctor ( const std::string &  name)
protectedinherited

Retrieves a functor from the subproblem.

This method also leverages the ability to create default functors if the user passed an integer or real in the input file

Parameters
nameThe name of the functor to retrieve. This should match the functor parameter name, not the actual name of the functor created in the input file
Returns
The functor

Definition at line 200 of file FunctorInterface.h.

Referenced by MaterialFunctorConverterTempl< T >::MaterialFunctorConverterTempl().

201 {
202  mooseAssert(_fi_subproblem, "This must be non-null");
203  return getFunctor<T>(name, *_fi_subproblem, _fi_tid);
204 }
std::string name(const ElemQuality q)
SubProblem *const _fi_subproblem
Pointer to subproblem if the subproblem pointer parameter was set.
const THREAD_ID _fi_tid
Current threaded it.

◆ getFunctor() [2/4]

template<typename T >
const Moose::Functor< T > & FunctorInterface::getFunctor ( const std::string &  name,
THREAD_ID  tid 
)
protectedinherited

Retrieves a functor from the subproblem.

This method also leverages the ability to create default functors if the user passed an integer or real in the input file

Parameters
nameThe name of the functor to retrieve. This should match the functor parameter name, not the actual name of the functor created in the input file
tidThe thread ID used to retrieve the functor from this interface's subproblem
Returns
The functor

Definition at line 192 of file FunctorInterface.h.

193 {
194  mooseAssert(_fi_subproblem, "This must be non-null");
195  return getFunctor<T>(name, *_fi_subproblem, tid);
196 }
std::string name(const ElemQuality q)
SubProblem *const _fi_subproblem
Pointer to subproblem if the subproblem pointer parameter was set.

◆ getFunctor() [3/4]

template<typename T >
const Moose::Functor< T > & FunctorInterface::getFunctor ( const std::string &  name,
SubProblem subproblem 
)
protectedinherited

Retrieves a functor from the passed-in subproblem.

This method also leverages the ability to create default functors if the user passed an integer or real in the input file

Parameters
nameThe name of the functor to retrieve. This should match the functor parameter name, not the actual name of the functor created in the input file
subproblemThe subproblem to query for the functor
Returns
The functor

Definition at line 185 of file FunctorInterface.h.

186 {
187  return getFunctor<T>(name, subproblem, _fi_tid);
188 }
std::string name(const ElemQuality q)
const THREAD_ID _fi_tid
Current threaded it.

◆ getFunctor() [4/4]

template<typename T >
const Moose::Functor< T > & FunctorInterface::getFunctor ( const std::string &  name,
SubProblem subproblem,
THREAD_ID  tid 
)
protectedinherited

Retrieves a functor from the passed-in subproblem.

This method also leverages the ability to create default functors if the user passed an integer or real in the input file

Parameters
nameThe name of the functor to retrieve. This should match the functor parameter name, not the actual name of the functor created in the input file
subproblemThe subproblem to query for the functor
tidThe thread ID used to retrieve the functor from the subproblem
Returns
The functor

Definition at line 176 of file FunctorInterface.h.

177 {
178  // Check if the supplied parameter is a valid input parameter key
179  std::string functor_name = deduceFunctorName(name);
180  return getFunctorByName<T>(functor_name, subproblem, tid);
181 }
static std::string deduceFunctorName(const std::string &name, const InputParameters &params)
Helper to look up a functor name through the input parameter keys.

◆ getGenericMaterialProperty() [1/2]

template<typename T , bool is_ad>
const GenericMaterialProperty<T, is_ad>& MaterialPropertyInterface::getGenericMaterialProperty ( const std::string &  name,
const unsigned int  state = 0 
)
inlineinherited

Retrieve reference to material property or one of it's old or older values.

The name required by this method is the name that is hard-coded into your source code as the input parameter key. If no input parameter is found this behaves like the getMaterialPropertyByName family as a fall back.

Parameters
nameThe name of the parameter key of the material property to retrieve
stateThe state (current = 0, old = 1, older = 2)
Returns
Reference to the desired material property

Definition at line 91 of file MaterialPropertyInterface.h.

93  {
94  return getGenericMaterialProperty<T, is_ad>(name, _material_data, state);
95  }
std::string name(const ElemQuality q)
MaterialData & _material_data
The material data class that stores properties.

◆ getGenericMaterialProperty() [2/2]

template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & MaterialPropertyInterface::getGenericMaterialProperty ( const std::string &  name,
MaterialData material_data,
const unsigned int  state = 0 
)
inherited

Retrieve the generic property named "name" for the specified material_data at state state.

Definition at line 786 of file MaterialPropertyInterface.h.

789 {
790  // Check if the supplied parameter is a valid input parameter key
791  const auto prop_name = getMaterialPropertyName(name);
792 
793  return getPossiblyConstantGenericMaterialPropertyByName<T, is_ad>(
794  prop_name, material_data, state);
795 }
MaterialPropertyName getMaterialPropertyName(const std::string &name) const

◆ getGenericMaterialPropertyByName() [1/2]

template<typename T , bool is_ad>
const GenericMaterialProperty<T, is_ad>& MaterialPropertyInterface::getGenericMaterialPropertyByName ( const MaterialPropertyName &  name,
const unsigned int  state = 0 
)
inlineinherited

Retrieve reference to material property or its old or older value The name required by this method is the name defined in the input file.

Parameters
nameThe name of the material property to retrieve
stateThe state (current = 0, old = 1, older = 2)
Returns
Reference to the material property with the name 'name'

Definition at line 129 of file MaterialPropertyInterface.h.

130  {
131  return getGenericMaterialPropertyByName<T, is_ad>(name, _material_data, state);
132  }
std::string name(const ElemQuality q)
MaterialData & _material_data
The material data class that stores properties.

◆ getGenericMaterialPropertyByName() [2/2]

template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & MaterialPropertyInterface::getGenericMaterialPropertyByName ( const MaterialPropertyName &  name,
MaterialData material_data,
const unsigned int  state 
)
inherited

Retrieve the generic property named "name" without any deduction for the specified material_data for state state.

Definition at line 799 of file MaterialPropertyInterface.h.

802 {
804  {
805  if (state == 1)
806  return getGenericMaterialPropertyByName<T, is_ad>(
807  name_in + _interpolated_old, material_data, 0);
808  if (state == 2)
809  return getGenericMaterialPropertyByName<T, is_ad>(
810  name_in + _interpolated_older, material_data, 0);
811  }
812 
813  const auto name = _get_suffix.empty()
814  ? static_cast<const std::string &>(name_in)
815  : MooseUtils::join(std::vector<std::string>({name_in, _get_suffix}), "_");
816 
818  checkMaterialProperty(name, state);
819 
820  // mark property as requested
821  markMatPropRequested(name);
822 
823  // Update the boolean flag.
825 
826  // Call first so that the ID gets registered
827  auto & prop = material_data.getProperty<T, is_ad>(name, state, _mi_moose_object);
828 
829  // Does the material data used here matter?
830  _material_property_dependencies.insert(material_data.getPropertyId(name));
831 
832  if (state == 0)
834 
835  return prop;
836 }
std::string name(const ElemQuality q)
static const std::string _interpolated_old
name suffixes for interpolated old and older properties
virtual void checkMaterialProperty(const std::string &name, const unsigned int state)
A helper method for checking material properties This method was required to avoid a compiler problem...
const MooseObjectName _mi_moose_object_name
The "complete" name of the object that this interface belongs for material property output...
static const std::string _interpolated_older
void markMatPropRequested(const std::string &)
A proxy method for _mi_feproblem.markMatPropRequested(name)
const MaterialPropertyName _get_suffix
const bool _use_interpolated_state
Use the interpolated state set up through the ProjectedStatefulMaterialStorageAction.
void addConsumedPropertyName(const MooseObjectName &obj_name, const std::string &prop_name)
bool _get_material_property_called
Initialized to false.
void checkExecutionStage()
Check and throw an error if the execution has progressed past the construction stage.
const MooseObject & _mi_moose_object
The MooseObject creating the MaterialPropertyInterface.
std::unordered_set< unsigned int > _material_property_dependencies
The set of material properties (as given by their IDs) that this object depends on.
std::string join(const T &strings, const std::string &delimiter)
Python like join function for strings.
Definition: MooseUtils.h:142

◆ getGenericOptionalMaterialProperty()

template<typename T , bool is_ad>
const GenericOptionalMaterialProperty< T, is_ad > & MaterialPropertyInterface::getGenericOptionalMaterialProperty ( const std::string &  name,
const unsigned int  state = 0 
)
inherited

Optional material property getters state is the property state; 0 = current, 1 = old, 2 = older, etc.

Definition at line 754 of file MaterialPropertyInterface.h.

756 {
757  auto proxy = std::make_unique<OptionalMaterialPropertyProxy<MaterialPropertyInterface, T, is_ad>>(
758  name, state);
759  auto & optional_property = proxy->value();
760  _optional_property_proxies.push_back(std::move(proxy));
761  return optional_property;
762 }
std::string name(const ElemQuality q)
std::vector< std::unique_ptr< OptionalMaterialPropertyProxyBase< MaterialPropertyInterface > > > _optional_property_proxies
optional material properties

◆ getGenericZeroMaterialProperty() [1/2]

template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & MaterialPropertyInterface::getGenericZeroMaterialProperty ( const std::string &  name)
inherited

Return a material property that is initialized to zero by default and does not need to (but can) be declared by another material.

Definition at line 696 of file MaterialPropertyInterface.h.

697 {
698  const auto prop_name = getMaterialPropertyName(name);
699  return getGenericZeroMaterialPropertyByName<T, is_ad>(prop_name);
700 }
MaterialPropertyName getMaterialPropertyName(const std::string &name) const

◆ getGenericZeroMaterialProperty() [2/2]

template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & MaterialPropertyInterface::getGenericZeroMaterialProperty ( )
inherited

Return a constant zero anonymous material property.

Definition at line 715 of file MaterialPropertyInterface.h.

716 {
717  // static zero property storage
719 
720  // resize to accomodate maximum number of qpoints
721  // (in multiapp scenarios getMaxQps can return different values in each app; we need the max)
722  unsigned int nqp = getMaxQps();
723  if (nqp > zero.size())
724  zero.resize(nqp);
725 
726  // set values for all qpoints to zero
727  for (unsigned int qp = 0; qp < nqp; ++qp)
728  MathUtils::mooseSetToZero(zero[qp]);
729 
730  return zero;
731 }
void mooseSetToZero(T &v)
Helper function templates to set a variable to zero.
Definition: MathUtils.h:372
const Number zero
typename GenericMaterialPropertyStruct< T, is_ad >::type GenericMaterialProperty
static constexpr PropertyValue::id_type zero_property_id
The material property ID for a zero property.

◆ getGenericZeroMaterialPropertyByName()

template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & MaterialPropertyInterface::getGenericZeroMaterialPropertyByName ( const std::string &  prop_name)
inherited

Definition at line 704 of file MaterialPropertyInterface.h.

705 {
706  // if found return the requested property
707  if (hasGenericMaterialPropertyByName<T, is_ad>(prop_name))
708  return getGenericMaterialPropertyByName<T, is_ad>(prop_name);
709 
710  return getGenericZeroMaterialProperty<T, is_ad>();
711 }

◆ getMaterial()

MaterialBase & MaterialPropertyInterface::getMaterial ( const std::string &  name)
inherited

Return a MaterialBase reference - usable for computing directly.

Parameters
nameThe name of the input parameter or explicit material name.
no_warnIf true, suppress warning about retrieving the material potentially during its calculation. If you don't know what this is/means, then you don't need it.

Definition at line 193 of file MaterialPropertyInterface.C.

194 {
195  return getMaterialByName(_mi_params.get<MaterialName>(name));
196 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _mi_params
Parameters of the object with this interface.
MaterialBase & getMaterialByName(const std::string &name, bool no_warn=false)

◆ getMaterialByName()

MaterialBase & MaterialPropertyInterface::getMaterialByName ( const std::string &  name,
bool  no_warn = false 
)
inherited

Definition at line 199 of file MaterialPropertyInterface.C.

Referenced by ElementMaterialSampler::ElementMaterialSampler(), MaterialPropertyInterface::getMaterial(), and Material::getMaterialByName().

200 {
201  std::shared_ptr<MaterialBase> discrete =
203 
205  return *discrete;
206 }
FEProblemBase & _mi_feproblem
Reference to the FEProblemBase class.
const THREAD_ID _mi_tid
Current threaded it.
std::shared_ptr< MaterialBase > getMaterial(std::string name, Moose::MaterialDataType type, const THREAD_ID tid=0, bool no_warn=false)
Return a pointer to a MaterialBase object.
void checkBlockAndBoundaryCompatibility(std::shared_ptr< MaterialBase > discrete)
Check if block and boundary restrictions of a given material are compatible with the current material...
const Moose::MaterialDataType _material_data_type
The type of data.

◆ getMaterialProperty() [1/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialProperty ( const std::string &  name,
const unsigned int  state = 0 
)
inlineinherited

Definition at line 97 of file MaterialPropertyInterface.h.

99  {
100  return getGenericMaterialProperty<T, false>(name, state);
101  }
std::string name(const ElemQuality q)

◆ getMaterialProperty() [2/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialProperty ( const std::string &  name,
MaterialData material_data,
const unsigned int  state = 0 
)
inlineinherited

Retrieve the property named "name" for the specified material_data.

state is the property state; 0 = current, 1 = old, 2 = older, etc.

Definition at line 349 of file MaterialPropertyInterface.h.

352  {
353  return getGenericMaterialProperty<T, false>(name, material_data, state);
354  }
std::string name(const ElemQuality q)

◆ getMaterialPropertyBlockNames()

std::vector< SubdomainName > MaterialPropertyInterface::getMaterialPropertyBlockNames ( const std::string &  name)
inherited

Retrieve the block names that the material property is defined.

Parameters
nameThe name of the material property
Returns
A vector the the block names for the property

Definition at line 91 of file MaterialPropertyInterface.C.

92 {
94 }
FEProblemBase & _mi_feproblem
Reference to the FEProblemBase class.
virtual std::vector< SubdomainName > getMaterialPropertyBlockNames(const std::string &prop_name)
Get a vector of block id equivalences that the material property is defined on.
Definition: SubProblem.C:490

◆ getMaterialPropertyBlocks()

std::set< SubdomainID > MaterialPropertyInterface::getMaterialPropertyBlocks ( const std::string &  name)
inherited

Retrieve the block ids that the material property is defined.

Parameters
nameThe name of the material property
Returns
A vector the the block ids for the property

Definition at line 85 of file MaterialPropertyInterface.C.

Referenced by MaterialPropertyInterface::getBlockMaterialProperty().

86 {
88 }
FEProblemBase & _mi_feproblem
Reference to the FEProblemBase class.
virtual std::set< SubdomainID > getMaterialPropertyBlocks(const std::string &prop_name)
Get a vector containing the block ids the material property is defined on.
Definition: SubProblem.C:474

◆ getMaterialPropertyBoundaryIDs()

std::set< BoundaryID > MaterialPropertyInterface::getMaterialPropertyBoundaryIDs ( const std::string &  name)
inherited

Retrieve the boundary ids that the material property is defined.

Parameters
nameThe name of the material property
Returns
A vector the the boundary ids for the property

Definition at line 97 of file MaterialPropertyInterface.C.

98 {
100 }
FEProblemBase & _mi_feproblem
Reference to the FEProblemBase class.
virtual std::set< BoundaryID > getMaterialPropertyBoundaryIDs(const std::string &prop_name)
Get a vector containing the block ids the material property is defined on.
Definition: SubProblem.C:526

◆ getMaterialPropertyBoundaryNames()

std::vector< BoundaryName > MaterialPropertyInterface::getMaterialPropertyBoundaryNames ( const std::string &  name)
inherited

Retrieve the boundary namess that the material property is defined.

Parameters
nameThe name of the material property
Returns
A vector the the boundary names for the property

Definition at line 103 of file MaterialPropertyInterface.C.

104 {
106 }
FEProblemBase & _mi_feproblem
Reference to the FEProblemBase class.
virtual std::vector< BoundaryName > getMaterialPropertyBoundaryNames(const std::string &prop_name)
Get a vector of block id equivalences that the material property is defined on.
Definition: SubProblem.C:542

◆ getMaterialPropertyByName() [1/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialPropertyByName ( const MaterialPropertyName &  name,
const unsigned int  state = 0 
)
inlineinherited

Definition at line 134 of file MaterialPropertyInterface.h.

136  {
137  return getGenericMaterialPropertyByName<T, false>(name, state);
138  }
std::string name(const ElemQuality q)

◆ getMaterialPropertyByName() [2/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialPropertyByName ( const MaterialPropertyName &  name,
MaterialData material_data,
const unsigned int  state = 0 
)
inlineinherited

Retrieve the property named "name" without any deduction for the specified material_data.

state is the property state; 0 = current, 1 = old, 2 = older, etc.

Definition at line 393 of file MaterialPropertyInterface.h.

396  {
397  return getGenericMaterialPropertyByName<T, false>(name, material_data, state);
398  }
std::string name(const ElemQuality q)

◆ getMaterialPropertyCalled()

bool MaterialPropertyInterface::getMaterialPropertyCalled ( ) const
inlineinherited

Returns true if getMaterialProperty() has been called, false otherwise.

Definition at line 320 of file MaterialPropertyInterface.h.

bool _get_material_property_called
Initialized to false.

◆ getMaterialPropertyName()

MaterialPropertyName MaterialPropertyInterface::getMaterialPropertyName ( const std::string &  name) const
protectedinherited
Returns
The name of the material property associated with name name.

If name is the name of a material property parameter and the parameter is valid, this will return the value of said parameter. Otherwise, it will just return the name.

Definition at line 77 of file MaterialPropertyInterface.C.

Referenced by InterfaceMaterial::getGenericMaterialProperty(), Material::getGenericMaterialProperty(), MaterialPropertyInterface::getGenericMaterialProperty(), InterfaceMaterial::getGenericNeighborMaterialProperty(), MaterialPropertyInterface::getGenericZeroMaterialProperty(), MaterialPropertyInterface::hasADMaterialProperty(), and MaterialPropertyInterface::hasMaterialProperty().

78 {
79  if (_mi_params.have_parameter<MaterialPropertyName>(name) && _mi_params.isParamValid(name))
80  return _mi_params.get<MaterialPropertyName>(name);
81  return name;
82 }
std::string name(const ElemQuality q)
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _mi_params
Parameters of the object with this interface.
bool have_parameter(std::string_view name) const
A wrapper around the Parameters base class method.
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ getMaterialPropertyOld() [1/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialPropertyOld ( const std::string &  name)
inlineinherited

Definition at line 108 of file MaterialPropertyInterface.h.

109  {
110  return getMaterialProperty<T>(name, 1);
111  }
std::string name(const ElemQuality q)

◆ getMaterialPropertyOld() [2/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialPropertyOld ( const std::string &  name,
MaterialData material_data 
)
inlineinherited

Retrieve the old property deduced from the name name for the specified material_data.

Definition at line 415 of file MaterialPropertyInterface.h.

417  {
418  return getMaterialProperty<T>(name, material_data, 1);
419  }
std::string name(const ElemQuality q)

◆ getMaterialPropertyOldByName() [1/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialPropertyOldByName ( const MaterialPropertyName &  name)
inlineinherited

Definition at line 145 of file MaterialPropertyInterface.h.

146  {
147  return getMaterialPropertyByName<T>(name, 1);
148  }
std::string name(const ElemQuality q)

◆ getMaterialPropertyOldByName() [2/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialPropertyOldByName ( const MaterialPropertyName &  name,
MaterialData material_data 
)
inlineinherited

Retrieve the old property named name without any deduction for the specified material_data.

Definition at line 437 of file MaterialPropertyInterface.h.

439  {
440  return getMaterialPropertyByName<T>(name, material_data, 1);
441  }
std::string name(const ElemQuality q)

◆ getMaterialPropertyOlder() [1/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialPropertyOlder ( const std::string &  name)
inlineinherited

Definition at line 113 of file MaterialPropertyInterface.h.

114  {
115  return getMaterialProperty<T>(name, 2);
116  }
std::string name(const ElemQuality q)

◆ getMaterialPropertyOlder() [2/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialPropertyOlder ( const std::string &  name,
MaterialData material_data 
)
inlineinherited

Retrieve the older property deduced from the name name for the specified material_data.

Definition at line 426 of file MaterialPropertyInterface.h.

428  {
429  return getMaterialProperty<T>(name, material_data, 2);
430  }
std::string name(const ElemQuality q)

◆ getMaterialPropertyOlderByName() [1/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialPropertyOlderByName ( const MaterialPropertyName &  name)
inlineinherited

Definition at line 150 of file MaterialPropertyInterface.h.

151  {
152  return getMaterialPropertyByName<T>(name, 2);
153  }
std::string name(const ElemQuality q)

◆ getMaterialPropertyOlderByName() [2/2]

template<typename T >
const MaterialProperty<T>& MaterialPropertyInterface::getMaterialPropertyOlderByName ( const MaterialPropertyName &  name,
MaterialData material_data 
)
inlineinherited

Retrieve the older property named name without any deduction for the specified material_data.

Definition at line 448 of file MaterialPropertyInterface.h.

450  {
451  return getMaterialPropertyByName<T>(name, material_data, 2);
452  }
std::string name(const ElemQuality q)

◆ getMatPropDependencies()

const std::unordered_set<unsigned int>& MaterialPropertyInterface::getMatPropDependencies ( ) const
inlineinherited

Retrieve the set of material properties that this object depends on.

Returns
The IDs corresponding to the material properties that MUST be reinited before evaluating this object

Definition at line 328 of file MaterialPropertyInterface.h.

Referenced by InterfaceMaterial::getMatPropDependencies(), Material::getMatPropDependencies(), NodalPatchRecovery::reinitPatch(), ComputeUserObjectsThread::subdomainChanged(), and MooseObjectWarehouseBase< Indicator >::updateMatPropDependencyHelper().

329  {
331  }
std::unordered_set< unsigned int > _material_property_dependencies
The set of material properties (as given by their IDs) that this object depends on.

◆ getMeshProperty() [1/2]

template<typename T >
const T & MeshMetaDataInterface::getMeshProperty ( const std::string &  data_name,
const std::string &  prefix 
)
protectedinherited

Method for retrieving a property with the given type and name exists in the mesh meta-data store.

This method will throw an error if the property does not exist.

Definition at line 134 of file MeshMetaDataInterface.h.

136 {
137  if (!hasMeshProperty(data_name, prefix))
138  mooseErrorInternal("Failed to get mesh property '", prefix, "/", data_name, "'");
139 
140  auto value = &getMeshPropertyInternal(data_name, prefix);
141  mooseAssert(value->declared(), "Value has not been declared");
142  const RestartableData<T> * T_value = dynamic_cast<const RestartableData<T> *>(value);
143  if (!T_value)
144  mooseErrorInternal("While retrieving mesh property '",
145  prefix,
146  "/",
147  data_name,
148  "' with type '",
149  MooseUtils::prettyCppType<T>(),
150  "',\nthe property exists with different type '",
151  value->type(),
152  "'");
153  return T_value->get();
154 }
void mooseErrorInternal(Args &&... args) const
Helper for forwarding a mooseError to an object&#39;s mooseError if it is available (said error will prov...
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
Concrete definition of a parameter value for a specified type.
bool hasMeshProperty(const std::string &data_name, const std::string &prefix) const
const RestartableDataValue & getMeshPropertyInternal(const std::string &data_name, const std::string &prefix) const
Helper for getting a mesh property.

◆ getMeshProperty() [2/2]

template<typename T >
const T& MeshMetaDataInterface::getMeshProperty ( const std::string &  data_name)
inlineprotectedinherited

Definition at line 56 of file MeshMetaDataInterface.h.

57  {
58  return getMeshProperty<T>(data_name, meshPropertyPrefix(data_name));
59  }
virtual std::string meshPropertyPrefix(const std::string &data_name) const
The default prefix to use for getting/seeing if mesh properties exist.

◆ getMooseApp()

MooseApp& MooseBase::getMooseApp ( ) const
inlineinherited

◆ getMooseVariableDependencies()

const std::set<MooseVariableFieldBase *>& MooseVariableDependencyInterface::getMooseVariableDependencies ( ) const
inlineinherited

Retrieve the set of MooseVariableFieldBase that this object depends on.

Returns
The MooseVariableFieldBase that MUST be reinited before evaluating this object

Definition at line 35 of file MooseVariableDependencyInterface.h.

Referenced by ComputeUserObjectsThread::subdomainChanged(), and MooseObjectWarehouseBase< Indicator >::updateVariableDependencyHelper().

36  {
38  }
std::set< MooseVariableFieldBase * > _moose_variable_dependencies

◆ getOptionalADMaterialProperty()

template<typename T >
const OptionalADMaterialProperty<T>& MaterialPropertyInterface::getOptionalADMaterialProperty ( const std::string &  name)
inlineinherited

Definition at line 169 of file MaterialPropertyInterface.h.

170  {
171  return getGenericOptionalMaterialProperty<T, true>(name);
172  }
std::string name(const ElemQuality q)

◆ getOptionalMaterialProperty()

template<typename T >
const OptionalMaterialProperty<T>& MaterialPropertyInterface::getOptionalMaterialProperty ( const std::string &  name,
const unsigned int  state = 0 
)
inlineinherited

Definition at line 163 of file MaterialPropertyInterface.h.

165  {
166  return getGenericOptionalMaterialProperty<T, false>(name, state);
167  }
std::string name(const ElemQuality q)

◆ getOptionalMaterialPropertyOld()

template<typename T >
const OptionalMaterialProperty<T>& MaterialPropertyInterface::getOptionalMaterialPropertyOld ( const std::string &  name)
inlineinherited

Definition at line 175 of file MaterialPropertyInterface.h.

176  {
177  return getOptionalMaterialProperty<T>(name, 1);
178  }
std::string name(const ElemQuality q)

◆ getOptionalMaterialPropertyOlder()

template<typename T >
const OptionalMaterialProperty<T>& MaterialPropertyInterface::getOptionalMaterialPropertyOlder ( const std::string &  name)
inlineinherited

Definition at line 180 of file MaterialPropertyInterface.h.

181  {
182  return getOptionalMaterialProperty<T>(name, 2);
183  }
std::string name(const ElemQuality q)

◆ getOutputs()

const std::set< OutputName > & OutputInterface::getOutputs ( )
inherited

Get the list of output objects that this class is restricted.

Returns
A set of OutputNames

Definition at line 94 of file OutputInterface.C.

95 {
96  return _oi_outputs;
97 }
std::set< OutputName > _oi_outputs
The set of Output object names listed in the &#39;outputs&#39; parameter.

◆ getParam() [1/2]

template<typename T >
const T & MooseBaseParameterInterface::getParam ( const std::string &  name) const
inherited

Retrieve a parameter for the object.

Parameters
nameThe name of the parameter
Returns
The value of the parameter

Definition at line 204 of file MooseBaseParameterInterface.h.

Referenced by CreateDisplacedProblemAction::act(), AddPeriodicBCAction::act(), DiffusionPhysicsBase::addPostprocessors(), ADNodalKernel::ADNodalKernel(), ArrayParsedAux::ArrayParsedAux(), AddPeriodicBCAction::autoTranslationBoundaries(), BicubicSplineFunction::BicubicSplineFunction(), ComponentPhysicsInterface::ComponentPhysicsInterface(), FunctorAux::computeValue(), FEProblemBase::createTagSolutions(), CutMeshByLevelSetGenerator::CutMeshByLevelSetGenerator(), DebugResidualAux::DebugResidualAux(), AccumulateReporter::declareLateValues(), DerivativeParsedMaterialTempl< is_ad >::DerivativeParsedMaterialTempl(), DynamicObjectRegistrationAction::DynamicObjectRegistrationAction(), EigenKernel::EigenKernel(), FEProblemBase::FEProblemBase(), FEProblemSolve::FEProblemSolve(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), ParsedSubdomainGeneratorBase::functionInitialize(), FVInterfaceKernel::FVInterfaceKernel(), ExtraNodesetGenerator::generate(), FileMeshGenerator::generate(), BlockDeletionGenerator::generate(), BreakMeshByBlockGenerator::generate(), CoarsenBlockGenerator::generate(), GeneratedMeshGenerator::generate(), RefineBlockGenerator::generate(), RefineSidesetGenerator::generate(), MeshExtruderGenerator::generate(), GenericConstantRankTwoTensorTempl< is_ad >::GenericConstantRankTwoTensorTempl(), GenericConstantSymmetricRankTwoTensorTempl< is_ad >::GenericConstantSymmetricRankTwoTensorTempl(), MooseApp::getCheckpointDirectories(), DataFileInterface::getDataFileName(), ExecutorInterface::getExecutor(), GhostingUserObject::GhostingUserObject(), TimeSequenceStepper::init(), IterationAdaptiveDT::init(), AdvancedOutput::init(), AttribThread::initFrom(), AttribSysNum::initFrom(), AttribResidualObject::initFrom(), AttribDisplaced::initFrom(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), Console::initialSetup(), IterationAdaptiveDT::limitDTToPostprocessorValue(), MooseMesh::MooseMesh(), MooseVariableBase::MooseVariableBase(), MultiSystemSolveObject::MultiSystemSolveObject(), NestedDivision::NestedDivision(), ConsoleUtils::outputExecutionInformation(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedElementDeletionGenerator::ParsedElementDeletionGenerator(), ParsedExtraElementIDGenerator::ParsedExtraElementIDGenerator(), ParsedGenerateNodeset::ParsedGenerateNodeset(), ParsedGenerateSideset::ParsedGenerateSideset(), ParsedMaterialTempl< is_ad >::ParsedMaterialTempl(), ParsedNodeTransformGenerator::ParsedNodeTransformGenerator(), ParsedODEKernel::ParsedODEKernel(), ParsedPostprocessor::ParsedPostprocessor(), PiecewiseByBlockFunctorMaterialTempl< T >::PiecewiseByBlockFunctorMaterialTempl(), PiecewiseConstantByBlockMaterialTempl< is_ad >::PiecewiseConstantByBlockMaterialTempl(), ReferenceResidualInterface::ReferenceResidualInterface(), RenameBlockGenerator::RenameBlockGenerator(), Moose::FV::setInterpolationMethod(), SetupMeshAction::setupMesh(), SingleMatrixPreconditioner::SingleMatrixPreconditioner(), TimePeriod::TimePeriod(), UniqueExtraIDMeshGenerator::UniqueExtraIDMeshGenerator(), FunctorIC::value(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), and VectorOfPostprocessors::VectorOfPostprocessors().

205 {
206  return InputParameters::getParamHelper(name, _pars, static_cast<T *>(0), &_moose_base);
207 }
const MooseBase & _moose_base
The MooseBase object that inherits this class.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
static const T & getParamHelper(const std::string &name, const InputParameters &pars, const T *the_type, const MooseBase *moose_base=nullptr)

◆ getParam() [2/2]

template<typename T1 , typename T2 >
std::vector< std::pair< T1, T2 > > MooseBaseParameterInterface::getParam ( const std::string &  param1,
const std::string &  param2 
) const
inherited

Retrieve two parameters and provide pair of parameters for the object.

Parameters
param1The name of first parameter
param2The name of second parameter
Returns
Vector of pairs of first and second parameters

Definition at line 261 of file MooseBaseParameterInterface.h.

262 {
263  return _pars.get<T1, T2>(param1, param2);
264 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

◆ getPossiblyConstantGenericMaterialPropertyByName()

template<typename T , bool is_ad>
const GenericMaterialProperty< T, is_ad > & MaterialPropertyInterface::getPossiblyConstantGenericMaterialPropertyByName ( const MaterialPropertyName &  prop_name,
MaterialData material_data,
const unsigned int  state 
)
inherited

Retrieve the generic property named "prop_name" without any deduction for the specified material_data for state state.

This API allows the prop_name to be a constant, e.g. it allows the possibility that prop_name is not a name at all

Definition at line 766 of file MaterialPropertyInterface.h.

768 {
769  // Check if it's just a constant
770  if (const auto * default_property = defaultGenericMaterialProperty<T, is_ad>(prop_name))
771  return *default_property;
772 
773  if (state > 0 && !_stateful_allowed)
774  mooseError("Stateful material properties not allowed for this object."
775  " State ",
776  state,
777  " property for \"",
778  prop_name,
779  "\" was requested.");
780 
781  return this->getGenericMaterialPropertyByName<T, is_ad>(prop_name, material_data, state);
782 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool _stateful_allowed
True by default.

◆ getPostprocessorName()

const PostprocessorName & PostprocessorInterface::getPostprocessorName ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Get the name of a postprocessor.

This can only be used if the postprocessor parameter does not have a default value set (see isDefaultPostprocessorValue()), in which case the "name" is actually the default value.

Parameters
param_nameThe name of the Postprocessor parameter
indexThe index of the Postprocessor
Returns
The name of the given Postprocessor

Definition at line 185 of file PostprocessorInterface.C.

Referenced by EigenKernel::EigenKernel().

187 {
188  return getPostprocessorNameInternal(param_name, index, /* allow_default_value = */ false);
189 }
const PostprocessorName & getPostprocessorNameInternal(const std::string &param_name, const unsigned int index, const bool allow_default_value=true) const
Internal method for getting the PostprocessorName associated with a paremeter.

◆ getPostprocessorValue()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValue ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

doco-normal-methods-begin Retrieve the value of a Postprocessor or one of it's old or older values

Parameters
param_nameThe name of the Postprocessor parameter (see below)
indexThe index of the Postprocessor
Returns
A reference to the desired value

The name required by this method is the name that is hard-coded into your source code. For example, if you have a Kernel that requires a Postprocessor you may have an input file with "pp = my_pp", this function requires the "pp" name as input (see .../moose_test/functions/PostprocessorFunction.C)

see getPostprocessorValueByName getPostprocessorValueOldByName getPostprocessorValueOlderByName

Definition at line 36 of file PostprocessorInterface.C.

Referenced by EigenKernel::EigenKernel(), FunctionValuePostprocessor::FunctionValuePostprocessor(), LinearCombinationPostprocessor::LinearCombinationPostprocessor(), ParsedPostprocessor::ParsedPostprocessor(), and PicardSolve::PicardSolve().

38 {
39  return getPostprocessorValueInternal(param_name, index, /* t_index = */ 0);
40 }
const PostprocessorValue & getPostprocessorValueInternal(const std::string &param_name, unsigned int index, std::size_t t_index) const
Internal methods for getting Postprocessor values.

◆ getPostprocessorValueByName()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueByName ( const PostprocessorName &  name) const
virtualinherited

Retrieve the value of the Postprocessor.

Parameters
namePostprocessor name (see below)
Returns
A reference to the desired value

The name required by this method is the name defined in the input file. For example, if you have a Kernel that requires a Postprocessor you may have an input file with "pp = my_pp", this method requires the "my_pp" name as input (see .../moose_test/functions/PostprocessorFunction.C)

see getPostprocessorValue getPostprocessorValueOld getPostprocessorValueOlder

Definition at line 57 of file PostprocessorInterface.C.

Referenced by EigenKernel::EigenKernel(), PIDTransientControl::execute(), IterationAdaptiveDT::IterationAdaptiveDT(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), ParsedODEKernel::ParsedODEKernel(), SecantSolve::savePostprocessorValues(), SteffensenSolve::savePostprocessorValues(), PicardSolve::savePostprocessorValues(), WebServerControl::startServer(), Terminator::Terminator(), SteffensenSolve::transformPostprocessors(), SecantSolve::transformPostprocessors(), PicardSolve::transformPostprocessors(), and VectorOfPostprocessors::VectorOfPostprocessors().

58 {
59  return getPostprocessorValueByNameInternal(name, /* t_index = */ 0);
60 }
const PostprocessorValue & getPostprocessorValueByNameInternal(const PostprocessorName &name, std::size_t t_index) const

◆ getPostprocessorValueOld()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOld ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Definition at line 43 of file PostprocessorInterface.C.

45 {
46  return getPostprocessorValueInternal(param_name, index, /* t_index = */ 1);
47 }
const PostprocessorValue & getPostprocessorValueInternal(const std::string &param_name, unsigned int index, std::size_t t_index) const
Internal methods for getting Postprocessor values.

◆ getPostprocessorValueOldByName()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOldByName ( const PostprocessorName &  name) const
inherited

Definition at line 63 of file PostprocessorInterface.C.

Referenced by EigenKernel::EigenKernel().

64 {
65  return getPostprocessorValueByNameInternal(name, /* t_index = */ 1);
66 }
const PostprocessorValue & getPostprocessorValueByNameInternal(const PostprocessorName &name, std::size_t t_index) const

◆ getPostprocessorValueOlder()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOlder ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Definition at line 50 of file PostprocessorInterface.C.

52 {
53  return getPostprocessorValueInternal(param_name, index, /* t_index = */ 2);
54 }
const PostprocessorValue & getPostprocessorValueInternal(const std::string &param_name, unsigned int index, std::size_t t_index) const
Internal methods for getting Postprocessor values.

◆ getPostprocessorValueOlderByName()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOlderByName ( const PostprocessorName &  name) const
inherited

Definition at line 69 of file PostprocessorInterface.C.

70 {
71  return getPostprocessorValueByNameInternal(name, /* t_index = */ 2);
72 }
const PostprocessorValue & getPostprocessorValueByNameInternal(const PostprocessorName &name, std::size_t t_index) const

◆ getRenamedParam()

template<typename T >
const T & MooseBaseParameterInterface::getRenamedParam ( const std::string &  old_name,
const std::string &  new_name 
) const
inherited

Retrieve a renamed parameter for the object.

This helper makes sure we check both names before erroring, and that only one parameter is passed to avoid silent errors

Parameters
old_namethe old name for the parameter
new_namethe new name for the parameter

Definition at line 211 of file MooseBaseParameterInterface.h.

213 {
214  // this enables having a default on the new parameter but bypassing it with the old one
215  // Most important: accept new parameter
216  if (isParamSetByUser(new_name) && !isParamValid(old_name))
217  return InputParameters::getParamHelper(new_name, _pars, static_cast<T *>(0), &_moose_base);
218  // Second most: accept old parameter
219  else if (isParamValid(old_name) && !isParamSetByUser(new_name))
220  return InputParameters::getParamHelper(old_name, _pars, static_cast<T *>(0), &_moose_base);
221  // Third most: accept default for new parameter
222  else if (isParamValid(new_name) && !isParamValid(old_name))
223  return InputParameters::getParamHelper(new_name, _pars, static_cast<T *>(0), &_moose_base);
224  // Refuse: no default, no value passed
225  else if (!isParamValid(old_name) && !isParamValid(new_name))
226  mooseError(_pars.blockFullpath() + ": parameter '" + new_name +
227  "' is being retrieved without being set.\n"
228  "Did you misspell it?");
229  // Refuse: both old and new parameters set by user
230  else
231  mooseError(_pars.blockFullpath() + ": parameter '" + new_name +
232  "' may not be provided alongside former parameter '" + old_name + "'");
233 }
const MooseBase & _moose_base
The MooseBase object that inherits this class.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
bool isParamValid(const std::string &name) const
Test if the supplied parameter is valid.
bool isParamSetByUser(const std::string &nm) const
Test if the supplied parameter is set by a user, as opposed to not set or set to default.
std::string blockFullpath() const
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
static const T & getParamHelper(const std::string &name, const InputParameters &pars, const T *the_type, const MooseBase *moose_base=nullptr)

◆ getReporterName()

const ReporterName & ReporterInterface::getReporterName ( const std::string &  param_name) const
protectedinherited
Returns
The ReporterName associated with the parametre param_name.

Performs error checking to mak sure that the parameter is valid.

Definition at line 49 of file ReporterInterface.C.

Referenced by ReporterInterface::getReporterValue(), and ReporterInterface::hasReporterValue().

50 {
51  if (!_ri_params.isParamValid(param_name))
53  "When getting a Reporter, failed to get a parameter with the name \"",
54  param_name,
55  "\".",
56  "\n\nKnown parameters:\n",
58 
59  if (_ri_params.isType<ReporterName>(param_name))
60  return _ri_params.get<ReporterName>(param_name);
61 
62  _ri_moose_object.mooseError("Supplied parameter with name \"",
63  param_name,
64  "\" of type \"",
65  _ri_params.type(param_name),
66  "\" is not an expected type for getting a Reporter.\n\n",
67  "The expected type is \"ReporterName\".");
68 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
bool isType(const std::string &name) const
const MooseObject & _ri_moose_object
The MooseObject needing this interface.
const InputParameters & _ri_params
Parameters for the MooseObject inherting from this interface.
std::string type(const std::string &name) const
Prints the type of the requested parameter by name.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const InputParameters & parameters() const
Get the parameters of the object.
The Reporter system is comprised of objects that can contain any number of data values.
Definition: ReporterName.h:30
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ getReporterValue() [1/2]

template<typename T >
const T & ReporterInterface::getReporterValue ( const std::string &  param_name,
const std::size_t  time_index = 0 
)
protectedinherited

doco-normal-methods-begin Returns read-only reference to a Reporter value that is provided by an input parameter.

Template Parameters
TThe C++ type of the Reporter value being consumed
Parameters
param_nameThe name of the parameter that gives the name of the Reporter, which must be a ReporterName parameter (i.e., getParam<ReporterName>(param_name)).
modeThe mode that the object will consume the Reporter value time_index (optional) If zero is provided the current value is returned. Use a positive index to return previous values (1 = older, 2 = older, etc.). The maximum number of old values is dictated by the ReporterData object.

Definition at line 133 of file ReporterInterface.h.

134 {
135  return getReporterValue<T>(param_name, REPORTER_MODE_UNSET, time_index);
136 }
const ReporterMode REPORTER_MODE_UNSET

◆ getReporterValue() [2/2]

template<typename T >
const T & ReporterInterface::getReporterValue ( const std::string &  param_name,
ReporterMode  mode,
const std::size_t  time_index = 0 
)
protectedinherited

Definition at line 140 of file ReporterInterface.h.

143 {
144  const auto & reporter_name = getReporterName(param_name);
145 
146  possiblyCheckHasReporter<T>(reporter_name, param_name);
147 
148  return getReporterValueByName<T>(reporter_name, mode, time_index);
149 }
const ReporterName & getReporterName(const std::string &param_name) const

◆ getReporterValueByName() [1/2]

template<typename T >
const T & ReporterInterface::getReporterValueByName ( const ReporterName reporter_name,
const std::size_t  time_index = 0 
)
protectedinherited

Returns read-only reference to a Reporter value that is provided by name directly.

Template Parameters
TThe C++ type of the Reporter value being consumed
Parameters
reporter_nameA ReporterName object that for the desired Reporter value.
modeThe mode that the object will consume the Reporter value time_index (optional) If zero is provided the current value is returned. Use a positive index to return previous values (1 = older, 2 = older, etc.). The maximum number of old values is dictated by the ReporterData object.

Definition at line 153 of file ReporterInterface.h.

155 {
156  return getReporterValueByName<T>(reporter_name, REPORTER_MODE_UNSET, time_index);
157 }
const ReporterMode REPORTER_MODE_UNSET

◆ getReporterValueByName() [2/2]

template<typename T >
const T & ReporterInterface::getReporterValueByName ( const ReporterName reporter_name,
ReporterMode  mode,
const std::size_t  time_index = 0 
)
protectedinherited

Definition at line 161 of file ReporterInterface.h.

164 {
165  possiblyCheckHasReporter<T>(reporter_name);
166 
167  addReporterDependencyHelper(reporter_name);
168 
169  return _ri_reporter_data.getReporterValue<T>(reporter_name, _ri_moose_object, mode, time_index);
170 }
virtual void addReporterDependencyHelper(const ReporterName &)
A method that can be overridden to update the UO dependencies.
const T & getReporterValue(const ReporterName &reporter_name, const MooseObject &consumer, const ReporterMode &mode, const std::size_t time_index=0) const
Method for returning read only references to Reporter values.
Definition: ReporterData.h:388
const MooseObject & _ri_moose_object
The MooseObject needing this interface.
const ReporterData & _ri_reporter_data
The ReporterData.

◆ getRequestedItems()

const std::set<std::string>& UserObject::getRequestedItems ( )
inlineoverridevirtualinherited

Return a set containing the names of items requested by the object.

Implements DependencyResolverInterface.

Definition at line 189 of file UserObject.h.

189 { return _depend_uo; }
std::set< std::string > _depend_uo
Depend UserObjects that to be used both for determining user object sorting and by AuxKernel for find...
Definition: UserObject.h:226

◆ getRestartableData()

template<typename T , typename... Args>
const T & Restartable::getRestartableData ( const std::string &  data_name) const
protectedinherited

Declare a piece of data as "restartable" and initialize it Similar to declareRestartableData but returns a const reference to the object.

Forwarded arguments are not allowed in this case because we assume that the object is restarted and we won't need different constructors to initialize it.

NOTE: This returns a const reference! Make sure you store it in a const reference!

Parameters
data_nameThe name of the data (usually just use the same name as the member variable)

Definition at line 287 of file Restartable.h.

288 {
289  return declareRestartableDataHelper<T>(data_name, nullptr).get();
290 }

◆ getSampler() [1/2]

template<>
Sampler& SamplerInterface::getSampler ( const std::string &  name)
inherited

Definition at line 30 of file SamplerInterface.C.

31 {
32  return _si_feproblem.getSampler(_si_params.get<SamplerName>(name));
33 }
FEProblemBase & _si_feproblem
Reference to FEProblemBase instance.
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _si_params
Parameters of the object with this interface.
virtual Sampler & getSampler(const std::string &name, const THREAD_ID tid=0)

◆ getSampler() [2/2]

template<typename T >
T & SamplerInterface::getSampler ( const std::string &  name)
inherited

Get a sampler with a given name.

Parameters
nameThe name of the parameter key of the sampler to retrieve
Returns
The sampler with name associated with the parameter 'name'

Definition at line 70 of file SamplerInterface.h.

71 {
72  return getSamplerByName<T>(_si_params.get<SamplerName>(name));
73 }
std::string name(const ElemQuality q)
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _si_params
Parameters of the object with this interface.

◆ getSamplerByName() [1/2]

template<>
Sampler& SamplerInterface::getSamplerByName ( const SamplerName &  name)
inherited

Definition at line 37 of file SamplerInterface.C.

38 {
39  return _si_feproblem.getSampler(name, _si_tid);
40 }
FEProblemBase & _si_feproblem
Reference to FEProblemBase instance.
THREAD_ID _si_tid
Thread ID.
virtual Sampler & getSampler(const std::string &name, const THREAD_ID tid=0)

◆ getSamplerByName() [2/2]

template<typename T >
T & SamplerInterface::getSamplerByName ( const SamplerName &  name)
inherited

Get a sampler with a given name.

Parameters
nameThe name of the sampler to retrieve
Returns
The sampler with name 'name'

Definition at line 77 of file SamplerInterface.h.

78 {
79  Sampler * base_ptr = &_si_feproblem.getSampler(name, _si_tid);
80  T * obj_ptr = dynamic_cast<T *>(base_ptr);
81  if (!obj_ptr)
82  mooseError("Failed to find a Sampler object with the name '", name, "' for the desired type.");
83  return *obj_ptr;
84 }
FEProblemBase & _si_feproblem
Reference to FEProblemBase instance.
This is the base class for Samplers as used within the Stochastic Tools module.
Definition: Sampler.h:43
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
THREAD_ID _si_tid
Thread ID.
virtual Sampler & getSampler(const std::string &name, const THREAD_ID tid=0)

◆ getScalarVar()

const MooseVariableScalar * ScalarCoupleable::getScalarVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Extract pointer to a scalar coupled variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 321 of file ScalarCoupleable.C.

Referenced by ScalarCoupleable::adCoupledScalarDot(), ScalarCoupleable::adCoupledScalarValue(), ScalarCoupleable::coupledMatrixTagScalarValue(), ScalarCoupleable::coupledScalar(), ScalarCoupleable::coupledScalarDot(), ScalarCoupleable::coupledScalarDotDot(), ScalarCoupleable::coupledScalarDotDotDu(), ScalarCoupleable::coupledScalarDotDotOld(), ScalarCoupleable::coupledScalarDotDu(), ScalarCoupleable::coupledScalarDotOld(), ScalarCoupleable::coupledScalarOrder(), ScalarCoupleable::coupledScalarValue(), ScalarCoupleable::coupledScalarValueOld(), ScalarCoupleable::coupledScalarValueOlder(), ScalarCoupleable::coupledVectorTagScalarValue(), and ParsedODEKernel::ParsedODEKernel().

322 {
323  const auto var_name = _sc_parameters.checkForRename(var_name_in);
324 
325  const auto it = _coupled_scalar_vars.find(var_name);
326  if (it != _coupled_scalar_vars.end())
327  {
328  const auto & entry = it->second;
329  if (comp < entry.size())
330  return entry[comp];
331  else
332  mooseError(_sc_name, ": Trying to get a non-existent component of variable '", var_name, "'");
333  }
334  else
335  mooseError(_sc_name, ": Trying to get a non-existent variable '", var_name, "'");
336 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::string & _sc_name
The name of the object this interface is part of.
std::unordered_map< std::string, std::vector< MooseVariableScalar * > > _coupled_scalar_vars
Coupled vars whose values we provide.
const InputParameters & _sc_parameters
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.

◆ getScalarVariableCoupleableMatrixTags()

const std::set<TagID>& ScalarCoupleable::getScalarVariableCoupleableMatrixTags ( ) const
inlineinherited

Definition at line 55 of file ScalarCoupleable.h.

56  {
58  }
std::set< TagID > _sc_coupleable_matrix_tags
The scalar coupleable matrix tags.

◆ getScalarVariableCoupleableVectorTags()

const std::set<TagID>& ScalarCoupleable::getScalarVariableCoupleableVectorTags ( ) const
inlineinherited

Definition at line 50 of file ScalarCoupleable.h.

51  {
53  }
std::set< TagID > _sc_coupleable_vector_tags
The scalar coupleable vector tags.

◆ getScatterVectorPostprocessorValue()

const ScatterVectorPostprocessorValue & VectorPostprocessorInterface::getScatterVectorPostprocessorValue ( const std::string &  param_name,
const std::string &  vector_name 
) const
inherited

Return the scatter value for the post processor.

This is only valid when you expec the vector to be of lenghth "num_procs" In that case - this will return a reference to a value that will be this processor's value from that vector

Parameters
param_nameThe name of the parameter holding the vpp name
vector_nameThe name of the vector
Returns
The reference to the current scatter value

Definition at line 106 of file VectorPostprocessorInterface.C.

108 {
109  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
111  vector_name);
112 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
const ScatterVectorPostprocessorValue & getScatterVectorPostprocessorValueByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Return the scatter value for the post processor.

◆ getScatterVectorPostprocessorValueByName()

const ScatterVectorPostprocessorValue & VectorPostprocessorInterface::getScatterVectorPostprocessorValueByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

Return the scatter value for the post processor.

This is only valid when you expec the vector to be of lenghth "num_procs" In that case - this will return a reference to a value that will be this processor's value from that vector

Parameters
nameThe name of the VectorPostprocessor
vector_nameThe name of the vector
Returns
The reference to the current scatter value

Definition at line 115 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValue().

117 {
118  return getVectorPostprocessorContextByNameHelper(name, vector_name).getScatterValue();
119 }
const VectorPostprocessorContext< VectorPostprocessorValue > & getVectorPostprocessorContextByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name) const
Helper for getting the VPP context that handles scatter values.

◆ getScatterVectorPostprocessorValueOld()

const ScatterVectorPostprocessorValue & VectorPostprocessorInterface::getScatterVectorPostprocessorValueOld ( const std::string &  param_name,
const std::string &  vector_name 
) const
inherited

Return the old scatter value for the post processor.

This is only valid when you expec the vector to be of lenghth "num_procs" In that case - this will return a reference to a value that will be this processor's value from that vector

Parameters
param_nameThe name of the parameter holding the vpp name
vector_nameThe name of the vector
Returns
The reference to the old scatter value

Definition at line 122 of file VectorPostprocessorInterface.C.

124 {
125  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
127  vector_name);
128 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const ScatterVectorPostprocessorValue & getScatterVectorPostprocessorValueOldByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Return the old scatter value for the post processor.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.

◆ getScatterVectorPostprocessorValueOldByName()

const ScatterVectorPostprocessorValue & VectorPostprocessorInterface::getScatterVectorPostprocessorValueOldByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

Return the old scatter value for the post processor.

This is only valid when you expect the vector to be of length "num_procs" In that case - this will return a reference to a value that will be this processor's value from that vector

Parameters
nameThe name of the VectorPostprocessor
vector_nameThe name of the vector
Returns
The reference to the old scatter value

Definition at line 131 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValueOld().

133 {
134  return getVectorPostprocessorContextByNameHelper(name, vector_name).getScatterValueOld();
135 }
const VectorPostprocessorContext< VectorPostprocessorValue > & getVectorPostprocessorContextByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name) const
Helper for getting the VPP context that handles scatter values.

◆ getSharedPtr() [1/2]

std::shared_ptr< MooseObject > MooseObject::getSharedPtr ( )
inherited

Get another shared pointer to this object that has the same ownership group.

Wrapper around shared_from_this().

Definition at line 68 of file MooseObject.C.

Referenced by MFEMProblem::addBoundaryCondition(), and MFEMProblem::addKernel().

69 {
70  try
71  {
72  return shared_from_this();
73  }
74  catch (std::bad_weak_ptr &)
75  {
76  mooseError(not_shared_error);
77  }
78 }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ getSharedPtr() [2/2]

std::shared_ptr< const MooseObject > MooseObject::getSharedPtr ( ) const
inherited

Definition at line 81 of file MooseObject.C.

82 {
83  try
84  {
85  return shared_from_this();
86  }
87  catch (std::bad_weak_ptr &)
88  {
89  mooseError(not_shared_error);
90  }
91 }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ getSubProblem()

SubProblem& UserObject::getSubProblem ( ) const
inlineinherited

Returns a reference to the subproblem that this postprocessor is tied to.

Definition at line 80 of file UserObject.h.

80 { return _subproblem; }
SubProblem & _subproblem
Reference to the Subproblem for this user object.
Definition: UserObject.h:206

◆ getSuppliedItems()

const std::set<std::string>& UserObject::getSuppliedItems ( )
inlineoverridevirtualinherited

Return a set containing the names of items owned by the object.

Implements DependencyResolverInterface.

Definition at line 191 of file UserObject.h.

191 { return _supplied_uo; }
std::set< std::string > _supplied_uo
A name of the "supplied" user objects, which is just this object.
Definition: UserObject.h:232

◆ getUserObject()

template<class T >
const T & UserObjectInterface::getUserObject ( const std::string &  param_name,
bool  is_dependency = true 
) const
inherited

Get an user object with a given parameter param_name.

Parameters
param_nameThe name of the parameter key of the user object to retrieve
is_dependencyWhether the user object we are retrieving should be viewed as a dependency, e.g. whether the retrieved user object should be sorted and executed before this object (if we are a user object)
Returns
The user object with name associated with the parameter param_name

Definition at line 169 of file UserObjectInterface.h.

170 {
171  return castUserObject<T>(getUserObjectBase(param_name, is_dependency), param_name);
172 }
const UserObject & getUserObjectBase(const std::string &param_name, bool is_dependency=true) const
Get an user object with a given parameter param_name.

◆ getUserObjectBase()

const UserObject & UserObjectInterface::getUserObjectBase ( const std::string &  param_name,
bool  is_dependency = true 
) const
inherited

Get an user object with a given parameter param_name.

Parameters
param_nameThe name of the parameter key of the user object to retrieve
is_dependencyWhether the user object we are retrieving should be viewed as a dependency, e.g. whether the retrieved user object should be sorted and executed before this object (if we are a user object)
Returns
The user object with name associated with the parameter param_name

Definition at line 86 of file UserObjectInterface.C.

Referenced by UserObjectInterface::getUserObject().

88 {
89  const auto object_name = getUserObjectName(param_name);
90  if (!hasUserObjectByName(object_name))
92  param_name, "The requested UserObject with the name \"", object_name, "\" was not found.");
93 
94  return getUserObjectBaseByName(object_name, is_dependency);
95 }
UserObjectName getUserObjectName(const std::string &param_name) const
const MooseObject & _uoi_moose_object
Moose object using the interface.
void paramError(const std::string &param, Args... args) const
Emits an error prefixed with the file and line number of the given param (from the input file) along ...
const UserObject & getUserObjectBaseByName(const UserObjectName &object_name, bool is_dependency=true) const
Get an user object with the name object_name.
bool hasUserObjectByName(const UserObjectName &object_name) const

◆ getUserObjectBaseByName()

const UserObject & UserObjectInterface::getUserObjectBaseByName ( const UserObjectName &  object_name,
bool  is_dependency = true 
) const
inherited

Get an user object with the name object_name.

Parameters
object_nameThe name of the user object to retrieve
is_dependencyWhether the user object we are retrieving should be viewed as a dependency, e.g. whether the retrieved user object should be sorted and executed before this object (if we are a user object)
Returns
The user object with the name object_name

Definition at line 98 of file UserObjectInterface.C.

Referenced by UserObject::getDependObjects(), UserObjectInterface::getUserObjectBase(), and UserObjectInterface::getUserObjectByName().

100 {
101  if (!hasUserObjectByName(object_name))
103  "The requested UserObject with the name \"", object_name, "\" was not found.");
104 
105  const auto & uo_base_tid0 = _uoi_feproblem.getUserObjectBase(object_name, /* tid = */ 0);
106  if (is_dependency)
107  addUserObjectDependencyHelper(uo_base_tid0);
108 
109  const THREAD_ID tid = uo_base_tid0.needThreadedCopy() ? _uoi_tid : 0;
110  return _uoi_feproblem.getUserObjectBase(object_name, tid);
111 }
const MooseObject & _uoi_moose_object
Moose object using the interface.
const FEProblemBase & _uoi_feproblem
Reference to the FEProblemBase instance.
const THREAD_ID _uoi_tid
Thread ID.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const UserObject & getUserObjectBase(const std::string &name, const THREAD_ID tid=0) const
Get the user object by its name.
virtual void addUserObjectDependencyHelper(const UserObject &) const
Helper for deriving classes to override to add dependencies when a UserObject is requested.
bool hasUserObjectByName(const UserObjectName &object_name) const
unsigned int THREAD_ID
Definition: MooseTypes.h:205

◆ getUserObjectByName()

template<class T >
const T & UserObjectInterface::getUserObjectByName ( const UserObjectName &  object_name,
bool  is_dependency = true 
) const
inherited

Get an user object with the name object_name.

Parameters
object_nameThe name of the user object to retrieve
is_dependencyWhether the user object we are retrieving should be viewed as a dependency, e.g. whether the retrieved user object should be sorted and executed before this object (if we are a user object)
Returns
The user object with the name object_name

Definition at line 176 of file UserObjectInterface.h.

178 {
179  return castUserObject<T>(getUserObjectBaseByName(object_name, is_dependency));
180 }
const UserObject & getUserObjectBaseByName(const UserObjectName &object_name, bool is_dependency=true) const
Get an user object with the name object_name.

◆ getUserObjectName()

UserObjectName UserObjectInterface::getUserObjectName ( const std::string &  param_name) const
inherited
Returns
The name of the user object associated with the parameter param_name

Definition at line 35 of file UserObjectInterface.C.

Referenced by UserObjectInterface::getUserObjectBase(), and UserObjectInterface::hasUserObject().

36 {
37  const auto & params = _uoi_moose_object.parameters();
38 
39  if (!params.isParamValid(param_name))
40  _uoi_moose_object.mooseError("Failed to get a parameter with the name \"",
41  param_name,
42  "\" when getting a UserObjectName.",
43  "\n\nKnown parameters:\n",
45 
46  // Other interfaces will use this interface (PostprocessorInterface, VectorPostprocessorInterface)
47  // to grab UOs with a specialized name, so we need to check them all
48  UserObjectName name;
49  if (params.isType<UserObjectName>(param_name))
50  name = params.get<UserObjectName>(param_name);
51  else if (params.isType<PostprocessorName>(param_name))
52  name = params.get<PostprocessorName>(param_name);
53  else if (params.isType<VectorPostprocessorName>(param_name))
54  name = params.get<VectorPostprocessorName>(param_name);
55  else if (params.isType<std::string>(param_name))
56  name = params.get<std::string>(param_name);
57  else
59  param_name,
60  "Parameter of type \"",
61  params.type(param_name),
62  "\" is not an expected type for getting the name of a UserObject.");
63 
64  return name;
65 }
std::string name(const ElemQuality q)
const MooseObject & _uoi_moose_object
Moose object using the interface.
void paramError(const std::string &param, Args... args) const
Emits an error prefixed with the file and line number of the given param (from the input file) along ...
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const InputParameters & parameters() const
Get the parameters of the object.

◆ getValue()

Real SideAverageFunctorPostprocessor::getValue ( ) const
overridevirtual

This will get called to actually grab the final value the postprocessor has calculated.

Note that this should only be called by internal methods, namely the problem that actually sets the value globally for other things to use. If you want the value outside of one of these external methods, you should use getCurrentValue().

Reimplemented from SideIntegralPostprocessor.

Definition at line 43 of file SideAverageFunctorPostprocessor.C.

44 {
45  return _integral_value / _area;
46 }
Real _integral_value
Holds the postprocessor result, the integral.

◆ getVar() [1/2]

MooseVariable * Coupleable::getVar ( const std::string &  var_name,
unsigned int  comp 
)
protectedinherited

Extract pointer to a coupled variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 287 of file Coupleable.C.

Referenced by Coupleable::coupledDofValuesOld(), Coupleable::coupledDofValuesOlder(), Coupleable::coupledDot(), Coupleable::coupledDotDot(), Coupleable::coupledDotDotDu(), Coupleable::coupledDotDotOld(), Coupleable::coupledDotDu(), Coupleable::coupledDotOld(), Coupleable::coupledGradientDot(), Coupleable::coupledGradientDotDot(), Coupleable::coupledGradientOld(), Coupleable::coupledGradientOlder(), Coupleable::coupledGradientPreviousNL(), NeighborCoupleable::coupledNeighborDofValues(), NeighborCoupleable::coupledNeighborDofValuesOld(), NeighborCoupleable::coupledNeighborDofValuesOlder(), NeighborCoupleable::coupledNeighborGradientOld(), NeighborCoupleable::coupledNeighborGradientOlder(), NeighborCoupleable::coupledNeighborSecond(), NeighborCoupleable::coupledNeighborValueDot(), NeighborCoupleable::coupledNeighborValueDotDu(), NeighborCoupleable::coupledNeighborValueOld(), NeighborCoupleable::coupledNeighborValueOlder(), Coupleable::coupledNodalDotDot(), Coupleable::coupledNodalDotDotOld(), Coupleable::coupledNodalDotOld(), Coupleable::coupledSecond(), Coupleable::coupledSecondOld(), Coupleable::coupledSecondOlder(), Coupleable::coupledSecondPreviousNL(), Coupleable::coupledValueLower(), Coupleable::coupledValueOld(), Coupleable::coupledValueOlder(), Coupleable::coupledValuePreviousNL(), Coupleable::coupledVectorTagGradient(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), and Coupleable::writableCoupledValue().

288 {
289  return const_cast<MooseVariable *>(getVarHelper<MooseVariable>(var_name, comp));
290 }

◆ getVar() [2/2]

const MooseVariable * Coupleable::getVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Extract pointer to a coupled variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 311 of file Coupleable.C.

312 {
313  return getVarHelper<MooseVariable>(var_name, comp);
314 }

◆ getVarHelper() [1/2]

template<typename T >
const T * Coupleable::getVarHelper ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Helper that that be used to retrieve a variable of arbitrary type T.

Definition at line 1872 of file Coupleable.h.

1873 {
1874  return const_cast<Coupleable *>(this)->getVarHelper<T>(var_name, comp);
1875 }
Interface for objects that needs coupling capabilities.
Definition: Coupleable.h:45

◆ getVarHelper() [2/2]

template<typename T >
T * Coupleable::getVarHelper ( const std::string &  var_name,
unsigned int  comp 
)
protectedinherited

Helper that can be used to retrieve a variable of arbitrary type T.

Definition at line 1818 of file Coupleable.h.

1819 {
1820  const auto var_name = _c_parameters.checkForRename(var_name_in);
1821  auto name_to_use = var_name;
1822 
1823  // First check for supplied name
1824  if (!checkVar(var_name, comp, 0))
1825  {
1826  // See if there is an associated deprecated name that the user may have used instead
1827  auto it = _new_to_deprecated_coupled_vars.find(var_name);
1828  if (it == _new_to_deprecated_coupled_vars.end())
1829  return nullptr;
1830  else
1831  {
1832  auto deprecated_name = it->second;
1833  if (checkVar(deprecated_name, comp, 0))
1834  name_to_use = deprecated_name;
1835  else
1836  return nullptr;
1837  }
1838  }
1839 
1840  auto coupled_vars_it = _coupled_vars.find(name_to_use);
1841 
1842  mooseAssert(coupled_vars_it != _coupled_vars.end(),
1843  "Trying to get a coupled var " << name_to_use << " that doesn't exist");
1844 
1845  if (auto coupled_var = dynamic_cast<T *>(coupled_vars_it->second[comp]))
1846  return coupled_var;
1847  else
1848  {
1849  for (auto & var : _coupled_standard_moose_vars)
1850  if (var->name() == name_to_use)
1851  mooseError("The named variable is a standard variable, try a "
1852  "'coupled[Value/Gradient/Dot/etc]...' function instead");
1853  for (auto & var : _coupled_vector_moose_vars)
1854  if (var->name() == name_to_use)
1855  mooseError("The named variable is a vector variable, try a "
1856  "'coupledVector[Value/Gradient/Dot/etc]...' function instead");
1857  for (auto & var : _coupled_array_moose_vars)
1858  if (var->name() == name_to_use)
1859  mooseError("The named variable is an array variable, try a "
1860  "'coupledArray[Value/Gradient/Dot/etc]...' function instead");
1861  for (auto & var : _coupled_standard_fv_moose_vars)
1862  if (var->name() == name_to_use)
1863  mooseError("The named variable is a finite volume variable, which the coupled[...] routine "
1864  "used does not support. Try using the functor system routines instead.");
1865  mooseError(
1866  "Variable '", name_to_use, "' is of a different C++ type than you tried to fetch it as.");
1867  }
1868 }
std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > _coupled_vars
Coupled vars whose values we provide.
Definition: Coupleable.h:1409
std::vector< MooseVariableFV< Real > * > _coupled_standard_fv_moose_vars
Vector of standard finite volume coupled variables.
Definition: Coupleable.h:1424
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
std::vector< ArrayMooseVariable * > _coupled_array_moose_vars
Vector of array coupled variables.
Definition: Coupleable.h:1421
std::vector< MooseVariable * > _coupled_standard_moose_vars
Vector of standard coupled variables.
Definition: Coupleable.h:1415
std::vector< VectorMooseVariable * > _coupled_vector_moose_vars
Vector of vector coupled variables.
Definition: Coupleable.h:1418
bool checkVar(const std::string &var_name, unsigned int comp=0, unsigned int comp_bound=0) const
Check that the right kind of variable is being coupled in.
Definition: Coupleable.C:208
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.
const InputParameters & _c_parameters
Definition: Coupleable.h:1395
const std::unordered_map< std::string, std::string > & _new_to_deprecated_coupled_vars
map from new to deprecated variable names
Definition: Coupleable.h:1430

◆ getVectorPostprocessorName()

const VectorPostprocessorName & VectorPostprocessorInterface::getVectorPostprocessorName ( const std::string &  param_name) const
inherited

Get the name of a VectorPostprocessor associated with a parameter.

Parameters
param_nameThe name of the VectorPostprocessor parameter
Returns
The name of the given VectorPostprocessor

Definition at line 203 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValue(), VectorPostprocessorInterface::getScatterVectorPostprocessorValueOld(), VectorPostprocessorInterface::getVectorPostprocessorValue(), VectorPostprocessorInterface::getVectorPostprocessorValueOld(), VectorPostprocessorInterface::hasVectorPostprocessor(), VectorPostprocessorInterface::isVectorPostprocessorDistributed(), and VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor().

204 {
205  const auto & params = _vpi_moose_object.parameters();
206 
207  if (!params.isParamValid(param_name))
209  "When getting a VectorPostprocessor, failed to get a parameter with the name \"",
210  param_name,
211  "\".",
212  "\n\nKnown parameters:\n",
214 
215  if (!params.isType<VectorPostprocessorName>(param_name))
217  "Supplied parameter with name \"",
218  param_name,
219  "\" of type \"",
220  params.type(param_name),
221  "\" is not an expected type for getting a VectorPostprocessor.\n\n",
222  "The allowed type is \"VectorPostprocessorName\".");
223 
224  return params.get<VectorPostprocessorName>(param_name);
225 }
const MooseObject & _vpi_moose_object
The MooseObject that uses this interface.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const InputParameters & parameters() const
Get the parameters of the object.

◆ getVectorPostprocessorValue() [1/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValue ( const std::string &  param_name,
const std::string &  vector_name 
) const
inherited

DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast.

Retrieve the value of a VectorPostprocessor

Parameters
param_nameThe name of the VectorPostprocessor parameter (see below)
vector_nameThe name of the particular vector you want.
Returns
A reference to the desired value

The name required by this method is the name that is hard-coded into your source code. For example, if you have a Kernel that requires a VectorPostprocessor you may have an input file with "pp = my_pp", this function requires the "pp" name as input (see .../moose_test/functions/VectorPostprocessorFunction.C)

see getVectorPostprocessorValueOld getVectorPostprocessorValueByName getVectorPostprocessorValueOldByName

Definition at line 36 of file VectorPostprocessorInterface.C.

38 {
39  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
40  return getVectorPostprocessorValueByName(getVectorPostprocessorName(param_name), vector_name);
41 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
const VectorPostprocessorValue & getVectorPostprocessorValueByName(const VectorPostprocessorName &name, const std::string &vector_name) const
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...

◆ getVectorPostprocessorValue() [2/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValue ( const std::string &  param_name,
const std::string &  vector_name,
bool  needs_broadcast 
) const
inherited

Retrieve the value of a VectorPostprocessor.

Parameters
param_nameThe name of the VectorPostprocessor parameter (see below)
vector_nameThe name of the particular vector you want.
need_broadcastWhether or not this object requires the vector to be replicated in parallel
Returns
A reference to the desired value

The name required by this method is the name that is hard-coded into your source code. For example, if you have a Kernel that requires a VectorPostprocessor you may have an input file with "pp = my_pp", this function requires the "pp" name as input (see .../moose_test/functions/VectorPostprocessorFunction.C)

see getVectorPostprocessorValueOld getVectorPostprocessorValueByName getVectorPostprocessorValueOldByName

Definition at line 66 of file VectorPostprocessorInterface.C.

69 {
70  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
72  getVectorPostprocessorName(param_name), vector_name, needs_broadcast);
73 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
const VectorPostprocessorValue & getVectorPostprocessorValueByName(const VectorPostprocessorName &name, const std::string &vector_name) const
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...

◆ getVectorPostprocessorValueByName() [1/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast.

Retrieve the value of the VectorPostprocessor

Parameters
nameVectorPostprocessor name (see below)
vector_nameThe name of the particular vector you want.
Returns
A reference to the desired value

The name required by this method is the name defined in the input file. For example, if you have a Kernel that requires a VectorPostprocessor you may have an input file with "pp = my_pp", this method requires the "my_pp" name as input (see .../moose_test/functions/VectorPostprocessorFunction.C)

see getVectorPostprocessorValue getVectorPostprocessorValueOldByName getVectorPostprocessorValueByName

Definition at line 44 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::getVectorPostprocessorValue().

46 {
47  return getVectorPostprocessorByNameHelper(name, vector_name, _broadcast_by_default, 0);
48 }
const VectorPostprocessorValue & getVectorPostprocessorByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name, bool broadcast, std::size_t t_index) const
Helper function for extracting VPP data from ReporterData object.
const bool _broadcast_by_default
Whether or not to force broadcasting by default.

◆ getVectorPostprocessorValueByName() [2/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name,
bool  needs_broadcast 
) const
inherited

Retrieve the value of the VectorPostprocessor.

Parameters
nameVectorPostprocessor name (see below)
vector_nameThe name of the particular vector you want.
need_broadcastWhether or not this object requires the vector to be replicated in parallel
Returns
A reference to the desired value

The name required by this method is the name defined in the input file. For example, if you have a Kernel that requires a VectorPostprocessor you may have an input file with "pp = my_pp", this method requires the "my_pp" name as input (see .../moose_test/functions/VectorPostprocessorFunction.C)

see getVectorPostprocessorValue getVectorPostprocessorValueOldByName getVectorPostprocessorValueByName

Definition at line 76 of file VectorPostprocessorInterface.C.

80 {
82  name, vector_name, needs_broadcast || _broadcast_by_default, 0);
83 }
const VectorPostprocessorValue & getVectorPostprocessorByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name, bool broadcast, std::size_t t_index) const
Helper function for extracting VPP data from ReporterData object.
const bool _broadcast_by_default
Whether or not to force broadcasting by default.

◆ getVectorPostprocessorValueOld() [1/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueOld ( const std::string &  param_name,
const std::string &  vector_name 
) const
inherited

DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast.

Retrieve the old value of a VectorPostprocessor

Parameters
param_nameThe name of the VectorPostprocessor parameter
vector_nameThe name of the particular vector you want.
Returns
The value of the VectorPostprocessor

see getVectorPostprocessorValue

Definition at line 51 of file VectorPostprocessorInterface.C.

53 {
54  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
56 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
const VectorPostprocessorValue & getVectorPostprocessorValueOldByName(const VectorPostprocessorName &name, const std::string &vector_name) const
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...

◆ getVectorPostprocessorValueOld() [2/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueOld ( const std::string &  param_name,
const std::string &  vector_name,
bool  needs_broadcast 
) const
inherited

Retrieve the old value of a VectorPostprocessor.

Parameters
param_nameThe name of the VectorPostprocessor parameter
vector_nameThe name of the particular vector you want.
need_broadcastWhether or not this object requires the vector to be replicated in parallel
Returns
The value of the VectorPostprocessor

see getVectorPostprocessorValue

Definition at line 86 of file VectorPostprocessorInterface.C.

89 {
90  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
92  getVectorPostprocessorName(param_name), vector_name, needs_broadcast);
93 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
const VectorPostprocessorValue & getVectorPostprocessorValueOldByName(const VectorPostprocessorName &name, const std::string &vector_name) const
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...

◆ getVectorPostprocessorValueOldByName() [1/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueOldByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast.

Retrieve the old value of a VectorPostprocessor

Parameters
nameThe name of the VectorPostprocessor
vector_nameThe name of the particular vector you want.
Returns
The value of the VectorPostprocessor

If within the validParams for the object the addVectorPostprocessorParam was called this method will retun a reference to the default value specified in the call to the addVectorPostprocessorParam function if the postVectorPostprocessor does not exist.

see getVectorPostprocessorValueByName

Definition at line 59 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::getVectorPostprocessorValueOld().

61 {
62  return getVectorPostprocessorByNameHelper(name, vector_name, _broadcast_by_default, 1);
63 }
const VectorPostprocessorValue & getVectorPostprocessorByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name, bool broadcast, std::size_t t_index) const
Helper function for extracting VPP data from ReporterData object.
const bool _broadcast_by_default
Whether or not to force broadcasting by default.

◆ getVectorPostprocessorValueOldByName() [2/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueOldByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name,
bool  needs_broadcast 
) const
inherited

Retrieve the old value of a VectorPostprocessor.

Parameters
nameThe name of the VectorPostprocessor
vector_nameThe name of the particular vector you want.
need_broadcastWhether or not this object requires the vector to be replicated in parallel
Returns
The value of the VectorPostprocessor

If within the validParams for the object the addVectorPostprocessorParam was called this method will retun a reference to the default value specified in the call to the addVectorPostprocessorParam function if the postVectorPostprocessor does not exist.

see getVectorPostprocessorValueByName

Definition at line 96 of file VectorPostprocessorInterface.C.

100 {
102  name, vector_name, needs_broadcast || _broadcast_by_default, 1);
103 }
const VectorPostprocessorValue & getVectorPostprocessorByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name, bool broadcast, std::size_t t_index) const
Helper function for extracting VPP data from ReporterData object.
const bool _broadcast_by_default
Whether or not to force broadcasting by default.

◆ getVectorVar() [1/2]

VectorMooseVariable * Coupleable::getVectorVar ( const std::string &  var_name,
unsigned int  comp 
)
protectedinherited

Extract pointer to a coupled vector variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 293 of file Coupleable.C.

Referenced by Coupleable::adCoupledCurl(), Coupleable::adCoupledVectorDot(), Coupleable::adCoupledVectorGradient(), Coupleable::adCoupledVectorValue(), Coupleable::coupledCurl(), Coupleable::coupledCurlOld(), Coupleable::coupledCurlOlder(), Coupleable::coupledDiv(), Coupleable::coupledDivOld(), Coupleable::coupledDivOlder(), Coupleable::coupledVectorDot(), Coupleable::coupledVectorDotDot(), Coupleable::coupledVectorDotDotDu(), Coupleable::coupledVectorDotDotOld(), Coupleable::coupledVectorDotDu(), Coupleable::coupledVectorDotOld(), Coupleable::coupledVectorGradient(), Coupleable::coupledVectorGradientOld(), Coupleable::coupledVectorGradientOlder(), NeighborCoupleable::coupledVectorNeighborGradient(), NeighborCoupleable::coupledVectorNeighborGradientOld(), NeighborCoupleable::coupledVectorNeighborGradientOlder(), Coupleable::coupledVectorValue(), Coupleable::coupledVectorValueOld(), and Coupleable::coupledVectorValueOlder().

294 {
295  auto * const var =
296  const_cast<VectorMooseVariable *>(getVarHelper<VectorMooseVariable>(var_name, comp));
297 
298  if (_c_nodal && var && var->feType().family != LAGRANGE_VEC)
299  mooseError(_c_name, ": Only LAGRANGE_VEC vector variables are defined at nodes");
300 
301  return var;
302 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
LAGRANGE_VEC
Class for stuff related to variables.
Definition: Adaptivity.h:31
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398

◆ getVectorVar() [2/2]

const VectorMooseVariable * Coupleable::getVectorVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Extract pointer to a coupled vector variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 317 of file Coupleable.C.

318 {
319  const auto * const var = getVarHelper<VectorMooseVariable>(var_name, comp);
320 
321  if (_c_nodal && var && var->feType().family != LAGRANGE_VEC)
322  mooseError(_c_name, ": Only LAGRANGE_VEC vector variables are defined at nodes");
323 
324  return var;
325 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1433
LAGRANGE_VEC
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398

◆ getWritableCoupledVariables()

auto& Coupleable::getWritableCoupledVariables ( ) const
inlineinherited

returns a reference to the set of writable coupled variables

Definition at line 123 of file Coupleable.h.

Referenced by Coupleable::hasWritableCoupledVariables().

THREAD_ID _c_tid
Thread ID of the thread using this object.
Definition: Coupleable.h:1442
std::vector< std::set< MooseWritableVariable * > > _writable_coupled_variables
keep a set of allocated writable variable references to make sure only one object can obtain them per...
Definition: Coupleable.h:1813

◆ getZeroMaterialProperty()

template<typename T , typename... Ts>
const MaterialProperty<T>& MaterialPropertyInterface::getZeroMaterialProperty ( Ts...  args)
inlineinherited

for backwards compatibility

Definition at line 219 of file MaterialPropertyInterface.h.

220  {
221  return getGenericZeroMaterialProperty<T, false>(args...);
222  }

◆ gradDot() [1/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradDot ( const ElemArg elem,
const StateArg state 
) const
inherited

Same as their evaluateGradDot overloads with the same arguments but allows for caching implementation.

These are the methods a user will call in their code

Definition at line 933 of file MooseFunctor.h.

934 {
935  return evaluateGradDot(elem, state);
936 }
virtual GradientType evaluateGradDot(const ElemArg &, const StateArg &) const
Evaluate the functor gradient-dot with a given element.
Definition: MooseFunctor.h:439

◆ gradDot() [2/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradDot ( const FaceArg face,
const StateArg state 
) const
inherited

Definition at line 940 of file MooseFunctor.h.

941 {
942  checkFace(face);
943  return evaluateGradDot(face, state);
944 }
void checkFace(const Moose::FaceArg &face) const
Examines the incoming face argument.
Definition: MooseFunctor.h:732
virtual GradientType evaluateGradDot(const ElemArg &, const StateArg &) const
Evaluate the functor gradient-dot with a given element.
Definition: MooseFunctor.h:439

◆ gradDot() [3/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradDot ( const ElemQpArg qp,
const StateArg state 
) const
inherited

Definition at line 948 of file MooseFunctor.h.

949 {
950  return evaluateGradDot(elem_qp, state);
951 }
virtual GradientType evaluateGradDot(const ElemArg &, const StateArg &) const
Evaluate the functor gradient-dot with a given element.
Definition: MooseFunctor.h:439

◆ gradDot() [4/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradDot ( const ElemSideQpArg qp,
const StateArg state 
) const
inherited

Definition at line 955 of file MooseFunctor.h.

956 {
957  return evaluateGradDot(elem_side_qp, state);
958 }
virtual GradientType evaluateGradDot(const ElemArg &, const StateArg &) const
Evaluate the functor gradient-dot with a given element.
Definition: MooseFunctor.h:439

◆ gradDot() [5/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradDot ( const ElemPointArg elem_point,
const StateArg state 
) const
inherited

Definition at line 962 of file MooseFunctor.h.

963 {
964  return evaluateGradDot(elem_point, state);
965 }
virtual GradientType evaluateGradDot(const ElemArg &, const StateArg &) const
Evaluate the functor gradient-dot with a given element.
Definition: MooseFunctor.h:439

◆ gradDot() [6/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradDot ( const NodeArg node,
const StateArg state 
) const
inherited

Definition at line 969 of file MooseFunctor.h.

970 {
971  return evaluateGradDot(node, state);
972 }
virtual GradientType evaluateGradDot(const ElemArg &, const StateArg &) const
Evaluate the functor gradient-dot with a given element.
Definition: MooseFunctor.h:439

◆ gradient() [1/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradient ( const ElemArg elem,
const StateArg state 
) const
inherited

Same as their evaluateGradient overloads with the same arguments but allows for caching implementation.

These are the methods a user will call in their code

Definition at line 847 of file MooseFunctor.h.

848 {
849  return evaluateGradient(elem, state);
850 }
virtual GradientType evaluateGradient(const ElemArg &, const StateArg &) const
Evaluate the functor gradient with a given element.
Definition: MooseFunctor.h:332

◆ gradient() [2/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradient ( const FaceArg face,
const StateArg state 
) const
inherited

Definition at line 854 of file MooseFunctor.h.

855 {
856  checkFace(face);
857  return evaluateGradient(face, state);
858 }
void checkFace(const Moose::FaceArg &face) const
Examines the incoming face argument.
Definition: MooseFunctor.h:732
virtual GradientType evaluateGradient(const ElemArg &, const StateArg &) const
Evaluate the functor gradient with a given element.
Definition: MooseFunctor.h:332

◆ gradient() [3/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradient ( const ElemQpArg qp,
const StateArg state 
) const
inherited

Definition at line 862 of file MooseFunctor.h.

863 {
864  return evaluateGradient(elem_qp, state);
865 }
virtual GradientType evaluateGradient(const ElemArg &, const StateArg &) const
Evaluate the functor gradient with a given element.
Definition: MooseFunctor.h:332

◆ gradient() [4/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradient ( const ElemSideQpArg qp,
const StateArg state 
) const
inherited

Definition at line 869 of file MooseFunctor.h.

870 {
871  return evaluateGradient(elem_side_qp, state);
872 }
virtual GradientType evaluateGradient(const ElemArg &, const StateArg &) const
Evaluate the functor gradient with a given element.
Definition: MooseFunctor.h:332

◆ gradient() [5/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradient ( const ElemPointArg elem_point,
const StateArg state 
) const
inherited

Definition at line 876 of file MooseFunctor.h.

877 {
878  return evaluateGradient(elem_point, state);
879 }
virtual GradientType evaluateGradient(const ElemArg &, const StateArg &) const
Evaluate the functor gradient with a given element.
Definition: MooseFunctor.h:332

◆ gradient() [6/6]

FunctorBase< Real >::GradientType Moose::FunctorBase< Real >::gradient ( const NodeArg node,
const StateArg state 
) const
inherited

Definition at line 883 of file MooseFunctor.h.

884 {
885  return evaluateGradient(node, state);
886 }
virtual GradientType evaluateGradient(const ElemArg &, const StateArg &) const
Evaluate the functor gradient with a given element.
Definition: MooseFunctor.h:332

◆ hasADMaterialProperty()

template<typename T >
bool MaterialPropertyInterface::hasADMaterialProperty ( const std::string &  name)
inherited

Definition at line 735 of file MaterialPropertyInterface.h.

736 {
737  // Check if the supplied parameter is a valid input parameter key
738  const auto prop_name = getMaterialPropertyName(name);
739  return hasADMaterialPropertyByName<T>(prop_name);
740 }
MaterialPropertyName getMaterialPropertyName(const std::string &name) const

◆ hasADMaterialPropertyByName()

template<typename T >
bool MaterialPropertyInterface::hasADMaterialPropertyByName ( const std::string &  name)
inherited

Definition at line 744 of file MaterialPropertyInterface.h.

745 {
746  const auto name = _get_suffix.empty()
747  ? name_in
748  : MooseUtils::join(std::vector<std::string>({name_in, _get_suffix}), "_");
750 }
std::string name(const ElemQuality q)
MaterialData & _material_data
The material data class that stores properties.
const MaterialPropertyName _get_suffix
bool haveADProperty(const std::string &prop_name) const
Returns true if the AD material property exists - defined by any material.
Definition: MaterialData.h:96
std::string join(const T &strings, const std::string &delimiter)
Python like join function for strings.
Definition: MooseUtils.h:142

◆ hasBlocks()

virtual bool Postprocessor::hasBlocks ( SubdomainID  ) const
inlineoverridevirtualinherited

Returns whether the functor is defined on this block.

Reimplemented from Moose::FunctorBase< Real >.

Definition at line 63 of file Postprocessor.h.

63 { return true; }

◆ hasBoundary() [1/5]

bool BoundaryRestrictable::hasBoundary ( const BoundaryName &  name) const
inherited

Test if the supplied boundary name is valid for this object.

Parameters
nameA BoundaryName to check
Returns
True if the given id is valid for this object

Definition at line 210 of file BoundaryRestrictable.C.

Referenced by AuxKernelTempl< Real >::AuxKernelTempl(), BoundaryRestrictable::hasBoundary(), and BoundaryRestrictable::hasBoundaryMaterialPropertyHelper().

211 {
212  // Create a vector and utilize the getBoundaryIDs function, which
213  // handles the ANY_BOUNDARY_ID (getBoundaryID does not)
214  return hasBoundary(_bnd_mesh->getBoundaryIDs({name}));
215 }
MooseMesh * _bnd_mesh
Point to mesh.
bool hasBoundary(const BoundaryName &name) const
Test if the supplied boundary name is valid for this object.
std::vector< BoundaryID > getBoundaryIDs(const Elem *const elem, const unsigned short int side) const
Returns a vector of boundary IDs for the requested element on the requested side. ...

◆ hasBoundary() [2/5]

bool BoundaryRestrictable::hasBoundary ( const std::vector< BoundaryName > &  names) const
inherited

Test if the supplied vector of boundary names are valid for this object.

Parameters
namesA vector of BoundaryNames to check
Returns
True if the given ids are valid for this object

Definition at line 218 of file BoundaryRestrictable.C.

219 {
220  return hasBoundary(_bnd_mesh->getBoundaryIDs(names));
221 }
MooseMesh * _bnd_mesh
Point to mesh.
bool hasBoundary(const BoundaryName &name) const
Test if the supplied boundary name is valid for this object.
std::vector< BoundaryID > getBoundaryIDs(const Elem *const elem, const unsigned short int side) const
Returns a vector of boundary IDs for the requested element on the requested side. ...

◆ hasBoundary() [3/5]

bool BoundaryRestrictable::hasBoundary ( const BoundaryID id) const
inherited

Test if the supplied boundary ids are valid for this object.

Parameters
idA BoundaryID to check
Returns
True if the given id is valid for this object

Definition at line 224 of file BoundaryRestrictable.C.

225 {
226  if (_bnd_ids.empty() || _bnd_ids.find(Moose::ANY_BOUNDARY_ID) != _bnd_ids.end())
227  return true;
228  else
229  return _bnd_ids.find(id) != _bnd_ids.end();
230 }
std::set< BoundaryID > _bnd_ids
Set of the boundary ids.
const BoundaryID ANY_BOUNDARY_ID
Definition: MooseTypes.C:21

◆ hasBoundary() [4/5]

bool BoundaryRestrictable::hasBoundary ( const std::vector< BoundaryID > &  ids,
TEST_TYPE  type = ALL 
) const
inherited

Test if the supplied vector boundary ids are valid for this object.

Parameters
idsA vector of BoundaryIDs ids to check
typeA 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
Returns
True if the all of the given ids are found within the ids for this object

Definition at line 233 of file BoundaryRestrictable.C.

234 {
235  std::set<BoundaryID> ids_set(ids.begin(), ids.end());
236  return hasBoundary(ids_set, type);
237 }
bool hasBoundary(const BoundaryName &name) const
Test if the supplied boundary name is valid for this object.

◆ hasBoundary() [5/5]

bool BoundaryRestrictable::hasBoundary ( const std::set< BoundaryID > &  ids,
TEST_TYPE  type = ALL 
) const
inherited

Test if the supplied set of boundary ids are valid for this object.

Parameters
idsA std::set of BoundaryIDs to check
typeA 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
Returns
True if the all of the given ids are found within the ids for this object
See also
isSubset

Definition at line 240 of file BoundaryRestrictable.C.

241 {
242  // An empty input is assumed to be ANY_BOUNDARY_ID
243  if (ids.empty() || ids.find(Moose::ANY_BOUNDARY_ID) != ids.end())
244  return true;
245 
246  // All supplied IDs must match those of the object
247  else if (type == ALL)
248  {
249  if (_bnd_ids.find(Moose::ANY_BOUNDARY_ID) != _bnd_ids.end())
250  return true;
251  else
252  return std::includes(_bnd_ids.begin(), _bnd_ids.end(), ids.begin(), ids.end());
253  }
254  // Any of the supplied IDs must match those of the object
255  else
256  {
257  // Loop through the supplied ids
258  for (const auto & id : ids)
259  {
260  // Test the current supplied id
261  bool test = hasBoundary(id);
262 
263  // If the id exists in the stored ids, then return true, otherwise
264  if (test)
265  return true;
266  }
267  return false;
268  }
269 }
std::set< BoundaryID > _bnd_ids
Set of the boundary ids.
bool hasBoundary(const BoundaryName &name) const
Test if the supplied boundary name is valid for this object.
const BoundaryID ANY_BOUNDARY_ID
Definition: MooseTypes.C:21

◆ hasBoundaryMaterialProperty()

template<typename T , bool is_ad>
bool BoundaryRestrictable::hasBoundaryMaterialProperty ( const std::string &  prop_name) const
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.

Template Parameters
TThe type of material property
Parameters
prop_namethe name of the property to query
Returns
true if the property exists for all boundary ids of the object, otherwise false

Definition at line 233 of file BoundaryRestrictable.h.

234 {
235  // If you get here the supplied property is defined on all boundaries, but is still subject
236  // existence in the MateialData class
237  return hasBoundaryMaterialPropertyHelper(prop_name) &&
238  _bnd_material_data.haveGenericProperty<T, is_ad>(prop_name);
239 }
bool haveGenericProperty(const std::string &prop_name) const
Definition: MaterialData.h:253
bool hasBoundaryMaterialPropertyHelper(const std::string &prop_name) const
A helper method to avoid circular #include problems.
const MaterialData & _bnd_material_data
Pointer to MaterialData for boundary (.

◆ hasBoundaryMaterialPropertyHelper()

bool BoundaryRestrictable::hasBoundaryMaterialPropertyHelper ( const std::string &  prop_name) const
protectedinherited

A helper method to avoid circular #include problems.

See also
hasBoundaryMaterialProperty

Definition at line 301 of file BoundaryRestrictable.C.

Referenced by BoundaryRestrictable::hasBoundaryMaterialProperty().

302 {
303  // Reference to MaterialWarehouse for testing and retrieving boundary ids
305 
306  // Complete set of BoundaryIDs that this object is defined
307  const std::set<BoundaryID> & ids =
309 
310  // Loop over each BoundaryID for this object
311  for (const auto & id : ids)
312  {
313  // Storage of material properties that have been DECLARED on this BoundaryID
314  std::set<std::string> declared_props;
315 
316  // If boundary materials exist, populated the set of properties that were declared
317  if (warehouse.hasActiveBoundaryObjects(id))
318  {
319  const std::vector<std::shared_ptr<MaterialBase>> & mats =
320  warehouse.getActiveBoundaryObjects(id);
321  for (const auto & mat : mats)
322  {
323  const std::set<std::string> & mat_props = mat->getSuppliedItems();
324  declared_props.insert(mat_props.begin(), mat_props.end());
325  }
326  }
327 
328  // If the supplied property is not in the list of properties on the current id, return false
329  if (declared_props.find(prop_name) == declared_props.end())
330  return false;
331  }
332 
333  // If you get here the supplied property is defined on all boundaries
334  return true;
335 }
MaterialBase objects are special in that they have additional objects created automatically (see FEPr...
const MaterialWarehouse & getMaterialWarehouse() const
bool hasActiveBoundaryObjects(THREAD_ID tid=0) const
const std::set< BoundaryID > & meshBoundaryIDs() const
Returns the set of all boundary ids for the entire mesh.
const std::map< BoundaryID, std::vector< std::shared_ptr< T > > > & getActiveBoundaryObjects(THREAD_ID tid=0) const
bool hasBoundary(const BoundaryName &name) const
Test if the supplied boundary name is valid for this object.
FEProblemBase * _bnd_feproblem
Pointer to FEProblemBase.
virtual const std::set< BoundaryID > & boundaryIDs() const
Return the boundary IDs for this object.
const BoundaryID ANY_BOUNDARY_ID
Definition: MooseTypes.C:21

◆ hasElementID()

bool ElementIDInterface::hasElementID ( const std::string &  id_name) const
inlineinherited

Whether mesh has an element integer with a given name.

Definition at line 82 of file ElementIDInterface.h.

82 { return _id_mesh->hasElementID(id_name); }
std::shared_ptr< MooseMesh > & _id_mesh
References to the mesh and displaced mesh (currently in the ActionWarehouse)

◆ hasFaceSide()

bool SideIntegralFunctorPostprocessorTempl< is_ad >::hasFaceSide ( const FaceInfo fi,
const bool  fi_elem_side 
) const
overridevirtualinherited

Implements FaceArgInterface.

Definition at line 133 of file SideIntegralFunctorPostprocessor.C.

135 {
136  return _current_elem == (fi_elem_side ? &fi.elem() : fi.neighborPtr());
137 }
const Elem & elem() const
Definition: FaceInfo.h:81
const Elem * neighborPtr() const
Definition: FaceInfo.h:84
const Elem *const & _current_elem

◆ hasFunction()

bool FunctionInterface::hasFunction ( const std::string &  param_name) const
inherited

Determine if the function exists.

Parameters
param_nameThe name of the function parameter
indexThe index of the function
Returns
True if the function exists

Definition at line 42 of file FunctionInterface.C.

43 {
44  return hasFunctionByName(_fni_params.get<FunctionName>(param_name));
45 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
bool hasFunctionByName(const FunctionName &name) const
Determine if the function exists.
const InputParameters & _fni_params
Parameters of the object with this interface.

◆ hasFunctionByName()

bool FunctionInterface::hasFunctionByName ( const FunctionName &  name) const
inherited

Determine if the function exists.

Parameters
nameThe name of the function
Returns
True if the function exists

Definition at line 48 of file FunctionInterface.C.

Referenced by FunctionInterface::hasFunction().

49 {
50  return _fni_feproblem.hasFunction(name, _fni_tid);
51 }
const THREAD_ID _fni_tid
Thread ID.
FEProblemBase & _fni_feproblem
Reference to FEProblemBase instance.
virtual bool hasFunction(const std::string &name, const THREAD_ID tid=0)

◆ hasGenericMaterialProperty()

template<typename T , bool is_ad>
bool MaterialPropertyInterface::hasGenericMaterialProperty ( const std::string &  name)
inlineinherited

generic hasMaterialProperty helper

Definition at line 293 of file MaterialPropertyInterface.h.

294  {
295  if constexpr (is_ad)
296  return hasADMaterialProperty<T>(name);
297  else
298  return hasMaterialProperty<T>(name);
299  }
std::string name(const ElemQuality q)

◆ hasGenericMaterialPropertyByName()

template<typename T , bool is_ad>
bool MaterialPropertyInterface::hasGenericMaterialPropertyByName ( const std::string &  name)
inlineinherited

Definition at line 301 of file MaterialPropertyInterface.h.

302  {
303  if constexpr (is_ad)
304  return hasADMaterialPropertyByName<T>(name);
305  else
306  return hasMaterialPropertyByName<T>(name);
307  }
std::string name(const ElemQuality q)

◆ hasMaterialProperty()

template<typename T >
bool MaterialPropertyInterface::hasMaterialProperty ( const std::string &  name)
inherited

Check if the material property exists.

Parameters
namethe name of the property to query
Returns
true if the property exists, otherwise false

Definition at line 677 of file MaterialPropertyInterface.h.

678 {
679  // Check if the supplied parameter is a valid input parameter key
680  const auto prop_name = getMaterialPropertyName(name);
681  return hasMaterialPropertyByName<T>(prop_name);
682 }
MaterialPropertyName getMaterialPropertyName(const std::string &name) const

◆ hasMaterialPropertyByName()

template<typename T >
bool MaterialPropertyInterface::hasMaterialPropertyByName ( const std::string &  name)
inherited

Definition at line 686 of file MaterialPropertyInterface.h.

687 {
688  const auto name = _get_suffix.empty()
689  ? name_in
690  : MooseUtils::join(std::vector<std::string>({name_in, _get_suffix}), "_");
691  return _material_data.haveProperty<T>(name);
692 }
std::string name(const ElemQuality q)
bool haveProperty(const std::string &prop_name) const
Returns true if the regular material property exists - defined by any material.
Definition: MaterialData.h:89
MaterialData & _material_data
The material data class that stores properties.
const MaterialPropertyName _get_suffix
std::string join(const T &strings, const std::string &delimiter)
Python like join function for strings.
Definition: MooseUtils.h:142

◆ hasMeshProperty() [1/4]

bool MeshMetaDataInterface::hasMeshProperty ( const std::string &  data_name,
const std::string &  prefix 
) const
protectedinherited
Returns
Whether or not a mesh meta-data exists.

Definition at line 25 of file MeshMetaDataInterface.C.

Referenced by MeshGenerator::declareMeshProperty(), MeshMetaDataInterface::getMeshProperty(), MeshMetaDataInterface::hasMeshProperty(), and MeshGenerator::setMeshProperty().

27 {
28  return _meta_data_app.hasRestartableMetaData(meshPropertyName(data_name, prefix),
30 }
bool hasRestartableMetaData(const std::string &name, const RestartableDataMapName &metaname) const
Definition: MooseApp.C:2388
static const RestartableDataMapName MESH_META_DATA
Definition: MooseApp.h:112
static std::string meshPropertyName(const std::string &data_name, const std::string &prefix)
MooseApp & _meta_data_app
Reference to the application.

◆ hasMeshProperty() [2/4]

template<typename T >
bool MeshMetaDataInterface::hasMeshProperty ( const std::string &  data_name,
const std::string &  prefix 
) const
protectedinherited
Returns
Whether or not a mesh meta-data exists with the given type.

Definition at line 158 of file MeshMetaDataInterface.h.

160 {
161  if (!hasMeshProperty(data_name, prefix))
162  return false;
163  const auto & value = getMeshPropertyInternal(data_name, prefix);
164  return dynamic_cast<const RestartableData<T> *>(&value) != nullptr;
165 }
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
Concrete definition of a parameter value for a specified type.
bool hasMeshProperty(const std::string &data_name, const std::string &prefix) const
const RestartableDataValue & getMeshPropertyInternal(const std::string &data_name, const std::string &prefix) const
Helper for getting a mesh property.

◆ hasMeshProperty() [3/4]

bool MeshMetaDataInterface::hasMeshProperty ( const std::string &  data_name) const
inlineprotectedinherited
Returns
Whether or not a mesh meta-data exists with the default prefix.

Definition at line 74 of file MeshMetaDataInterface.h.

75  {
76  return hasMeshProperty(data_name, meshPropertyPrefix(data_name));
77  }
virtual std::string meshPropertyPrefix(const std::string &data_name) const
The default prefix to use for getting/seeing if mesh properties exist.
bool hasMeshProperty(const std::string &data_name, const std::string &prefix) const

◆ hasMeshProperty() [4/4]

template<typename T >
bool MeshMetaDataInterface::hasMeshProperty ( const std::string &  data_name) const
inlineprotectedinherited
Returns
Whether or not a mesh meta-data exists with the default prefix and the given type.

Definition at line 82 of file MeshMetaDataInterface.h.

83  {
84  return hasMeshProperty<T>(data_name, meshPropertyPrefix(data_name));
85  }
virtual std::string meshPropertyPrefix(const std::string &data_name) const
The default prefix to use for getting/seeing if mesh properties exist.

◆ hasPostprocessor()

bool PostprocessorInterface::hasPostprocessor ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Determine if the Postprocessor data exists.

Parameters
param_nameThe name of the Postprocessor parameter
indexThe index of the Postprocessor
Returns
True if the Postprocessor exists
See also
hasPostprocessorByName getPostprocessorValue

Definition at line 107 of file PostprocessorInterface.C.

109 {
110  if (!postprocessorsAdded())
112  "Cannot call hasPostprocessor() until all Postprocessors have been constructed.");
113 
114  return hasPostprocessorByName(getPostprocessorNameInternal(param_name, index));
115 }
const PostprocessorName & getPostprocessorNameInternal(const std::string &param_name, const unsigned int index, const bool allow_default_value=true) const
Internal method for getting the PostprocessorName associated with a paremeter.
bool hasPostprocessorByName(const PostprocessorName &name) const
Determine if the Postprocessor data exists.
const MooseObject & _ppi_moose_object
The MooseObject that uses this interface.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ hasPostprocessorByName()

bool PostprocessorInterface::hasPostprocessorByName ( const PostprocessorName &  name) const
inherited

Determine if the Postprocessor data exists.

Parameters
nameThe name of the Postprocessor
Returns
True if the Postprocessor exists
See also
hasPostprocessor getPostprocessorValueByName

Definition at line 118 of file PostprocessorInterface.C.

Referenced by PostprocessorInterface::getPostprocessorValueByNameInternal(), PostprocessorInterface::getPostprocessorValueInternal(), PostprocessorInterface::hasPostprocessor(), AdvancedOutput::initShowHideLists(), TableOutput::outputReporters(), Exodus::outputReporters(), and WebServerControl::startServer().

119 {
120  if (!postprocessorsAdded())
122  "Cannot call hasPostprocessorByName() until all Postprocessors have been constructed.");
123 
126 }
const FEProblemBase & _ppi_feproblem
Reference the the FEProblemBase class.
const ReporterData & getReporterData() const
Provides const access the ReporterData object.
Real PostprocessorValue
various MOOSE typedefs
Definition: MooseTypes.h:198
const MooseObject & _ppi_moose_object
The MooseObject that uses this interface.
A ReporterName that represents a Postprocessor.
Definition: ReporterName.h:134
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
bool hasReporterValue(const ReporterName &reporter_name) const
Return True if a Reporter value with the given type and name have been created.
Definition: ReporterData.h:445

◆ hasReporterValue() [1/2]

bool ReporterInterface::hasReporterValue ( const std::string &  param_name) const
protectedinherited

Return True if the Reporter value exists.

Template Parameters
TThe C++ type of the Reporter value being consumed
Parameters
reporter_nameA ReporterName object that for the desired Reporter value.

Definition at line 29 of file ReporterInterface.C.

30 {
31  if (!reportersAdded())
33  "Cannot call hasReporterValue() until all Reporters have been constructed.");
34 
35  return hasReporterValueByName(getReporterName(param_name));
36 }
const ReporterName & getReporterName(const std::string &param_name) const
bool reportersAdded() const
const MooseObject & _ri_moose_object
The MooseObject needing this interface.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
bool hasReporterValueByName(const ReporterName &reporter_name) const

◆ hasReporterValue() [2/2]

template<typename T >
bool ReporterInterface::hasReporterValue ( const std::string &  param_name) const
protectedinherited

Definition at line 174 of file ReporterInterface.h.

175 {
176  if (!reportersAdded())
178  "Cannot call hasReporterValue() until all Reporters have been constructed.");
179 
180  return hasReporterValueByName<T>(getReporterName(param_name));
181 }
const ReporterName & getReporterName(const std::string &param_name) const
bool reportersAdded() const
const MooseObject & _ri_moose_object
The MooseObject needing this interface.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ hasReporterValueByName() [1/2]

bool ReporterInterface::hasReporterValueByName ( const ReporterName reporter_name) const
protectedinherited

Definition at line 39 of file ReporterInterface.C.

Referenced by ReporterInterface::hasReporterValue(), and AdvancedOutput::initShowHideLists().

40 {
41  if (!reportersAdded())
43  "Cannot call hasReporterValueByName() until all Reporters have been constructed.");
44 
45  return _ri_reporter_data.hasReporterValue(reporter_name);
46 }
bool reportersAdded() const
const MooseObject & _ri_moose_object
The MooseObject needing this interface.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const ReporterData & _ri_reporter_data
The ReporterData.
bool hasReporterValue(const ReporterName &reporter_name) const
Return True if a Reporter value with the given type and name have been created.
Definition: ReporterData.h:445

◆ hasReporterValueByName() [2/2]

template<typename T >
bool ReporterInterface::hasReporterValueByName ( const ReporterName reporter_name) const
protectedinherited

Definition at line 185 of file ReporterInterface.h.

186 {
187  if (!reportersAdded())
189  "Cannot call hasReporterValueByName() until all Reporters have been constructed.");
190 
191  return _ri_reporter_data.hasReporterValue<T>(reporter_name);
192 }
bool reportersAdded() const
const MooseObject & _ri_moose_object
The MooseObject needing this interface.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const ReporterData & _ri_reporter_data
The ReporterData.
bool hasReporterValue(const ReporterName &reporter_name) const
Return True if a Reporter value with the given type and name have been created.
Definition: ReporterData.h:445

◆ hasUserObject() [1/2]

bool UserObjectInterface::hasUserObject ( const std::string &  param_name) const
inherited
Returns
Whether or not a UserObject exists with the name given by the parameter param_name.

Definition at line 68 of file UserObjectInterface.C.

69 {
70  return hasUserObjectByName(getUserObjectName(param_name));
71 }
UserObjectName getUserObjectName(const std::string &param_name) const
bool hasUserObjectByName(const UserObjectName &object_name) const

◆ hasUserObject() [2/2]

template<class T >
bool UserObjectInterface::hasUserObject ( const std::string &  param_name) const
inherited

Definition at line 184 of file UserObjectInterface.h.

185 {
186  return hasUserObjectByName<T>(getUserObjectName(param_name));
187 }
UserObjectName getUserObjectName(const std::string &param_name) const

◆ hasUserObjectByName() [1/2]

bool UserObjectInterface::hasUserObjectByName ( const UserObjectName &  object_name) const
inherited

Definition at line 74 of file UserObjectInterface.C.

Referenced by UserObjectInterface::getUserObjectBase(), UserObjectInterface::getUserObjectBaseByName(), UserObjectInterface::hasUserObject(), and UserObjectInterface::hasUserObjectByName().

75 {
76  return _uoi_feproblem.hasUserObject(object_name);
77 }
bool hasUserObject(const std::string &name) const
Check if there if a user object of given name.
const FEProblemBase & _uoi_feproblem
Reference to the FEProblemBase instance.

◆ hasUserObjectByName() [2/2]

template<class T >
bool UserObjectInterface::hasUserObjectByName ( const UserObjectName &  object_name) const
inherited

Definition at line 191 of file UserObjectInterface.h.

192 {
193  if (!hasUserObjectByName(object_name))
194  return false;
195  return dynamic_cast<const T *>(&getUserObjectFromFEProblem(object_name));
196 }
const UserObject & getUserObjectFromFEProblem(const UserObjectName &object_name) const
Go directly to the FEProblem for the requested UserObject.
bool hasUserObjectByName(const UserObjectName &object_name) const

◆ hasVectorPostprocessor() [1/2]

bool VectorPostprocessorInterface::hasVectorPostprocessor ( const std::string &  param_name,
const std::string &  vector_name 
) const
inherited

Determine if the VectorPostprocessor data exists by parameter.

Parameters
param_nameThe name of the VectorPostprocessor parameter
vector_nameThe vector name within the VectorPostprocessor
Returns
True if the VectorPostprocessor data exists
See also
hasVectorPostprocessorByName getVectorPostprocessorValue

Definition at line 138 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor().

140 {
142  _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessor() until all VectorPostprocessors "
143  "have been constructed.");
144 
145  return hasVectorPostprocessorByName(getVectorPostprocessorName(param_name), vector_name);
146 }
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
bool hasVectorPostprocessorByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Determine if the VectorPostprocessor data exists by name.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.

◆ hasVectorPostprocessor() [2/2]

bool VectorPostprocessorInterface::hasVectorPostprocessor ( const std::string &  param_name) const
inherited

Determine if the VectorPostprocessor exists by parameter.

Parameters
nameThe name of the VectorPostprocessor parameter
Returns
True if the VectorPostprocessor exists

Definition at line 168 of file VectorPostprocessorInterface.C.

169 {
171  _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessor() until all "
172  "VectorPostprocessors have been constructed.");
173 
175 }
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
bool hasVectorPostprocessorByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Determine if the VectorPostprocessor data exists by name.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.

◆ hasVectorPostprocessorByName() [1/2]

bool VectorPostprocessorInterface::hasVectorPostprocessorByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

Determine if the VectorPostprocessor data exists by name.

Parameters
nameThe name of the VectorPostprocessor
vector_nameThe vector name within the VectorPostprocessor
Returns
True if the VectorPostprocessor data exists
See also
hasVectorPostprocessor getVectorPostprocessorValueByName

Definition at line 149 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::hasVectorPostprocessor(), AdvancedOutput::initShowHideLists(), CSV::output(), and VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessorByName().

151 {
153  _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessorByName() until all "
154  "VectorPostprocessors have been constructed.");
155 
157  VectorPostprocessorReporterName(name, vector_name));
158 
159  if (has_vpp)
160  mooseAssert(_vpi_feproblem.hasUserObject(name) && dynamic_cast<const VectorPostprocessor *>(
162  "Has reporter VectorPostprocessor Reporter value but not VectorPostprocessor UO");
163 
164  return has_vpp;
165 }
bool hasUserObject(const std::string &name) const
Check if there if a user object of given name.
A ReporterName that represents a VectorPostprocessor.
Definition: ReporterName.h:143
const ReporterData & getReporterData() const
Provides const access the ReporterData object.
std::vector< Real > VectorPostprocessorValue
Definition: MooseTypes.h:199
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
bool hasReporterValue(const ReporterName &reporter_name) const
Return True if a Reporter value with the given type and name have been created.
Definition: ReporterData.h:445
const UserObject & getUserObjectBase(const std::string &name, const THREAD_ID tid=0) const
Get the user object by its name.
Base class for Postprocessors that produce a vector of values.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.

◆ hasVectorPostprocessorByName() [2/2]

bool VectorPostprocessorInterface::hasVectorPostprocessorByName ( const VectorPostprocessorName &  name) const
inherited

Determine if the VectorPostprocessor exists by name.

Parameters
nameThe name of the VectorPostprocessor
Returns
True if the VectorPostprocessor exists

Definition at line 178 of file VectorPostprocessorInterface.C.

180 {
182  _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessorByName() until all "
183  "VectorPostprocessors have been constructed.");
184 
185  return _vpi_feproblem.hasUserObject(name) &&
186  dynamic_cast<const VectorPostprocessor *>(&_vpi_feproblem.getUserObjectBase(name));
187 }
bool hasUserObject(const std::string &name) const
Check if there if a user object of given name.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const UserObject & getUserObjectBase(const std::string &name, const THREAD_ID tid=0) const
Get the user object by its name.
Base class for Postprocessors that produce a vector of values.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.

◆ hasWritableCoupledVariables()

bool Coupleable::hasWritableCoupledVariables ( ) const
inlineinherited

Checks whether the object has any writable coupled variables.

Definition at line 128 of file Coupleable.h.

128 { return !getWritableCoupledVariables().empty(); }
auto & getWritableCoupledVariables() const
returns a reference to the set of writable coupled variables
Definition: Coupleable.h:123

◆ initialize()

void SideAverageFunctorPostprocessor::initialize ( )
overridevirtual

Called before execute() is ever called so that data can be cleared.

Reimplemented from SideIntegralPostprocessor.

Definition at line 28 of file SideAverageFunctorPostprocessor.C.

29 {
31  _area = 0.0;
32 }
virtual void initialize() override
Called before execute() is ever called so that data can be cleared.

◆ initialSetup()

void SideIntegralPostprocessor::initialSetup ( )
overridevirtualinherited

Gets called at the beginning of the simulation before this object is asked to do its job.

Reimplemented from SetupInterface.

Reimplemented in SideIntegralMaterialPropertyTempl< is_ad >, and SideFVFluxBCIntegral.

Definition at line 27 of file SideIntegralPostprocessor.C.

Referenced by SideFVFluxBCIntegral::initialSetup().

28 {
30 
33 }
bool isFiniteVolumeInfoDirty() const
Definition: MooseMesh.h:1289
bool _qp_integration
Whether to integrate over quadrature points or FaceInfos.
virtual void errorNoFaceInfo() const
Error method to call when face info is needed but not available.
MooseMesh & _mesh
virtual void initialSetup()
Gets called at the beginning of the simulation before this object is asked to do its job...

◆ isBoundarySubset() [1/2]

bool BoundaryRestrictable::isBoundarySubset ( const std::set< BoundaryID > &  ids) const
inherited

Test if the class boundary ids are a subset of the supplied objects.

Parameters
idsA std::set of boundaries to check
Returns
True if all of the boundary ids for this class are found within the given ids (opposite of hasBoundary)
See also
hasBoundary

Definition at line 272 of file BoundaryRestrictable.C.

Referenced by BoundaryRestrictable::isBoundarySubset().

273 {
274  // An empty input is assumed to be ANY_BOUNDARY_ID
275  if (ids.empty() || ids.find(Moose::ANY_BOUNDARY_ID) != ids.end())
276  return true;
277 
278  if (_bnd_ids.find(Moose::ANY_BOUNDARY_ID) != _bnd_ids.end())
279  return std::includes(ids.begin(),
280  ids.end(),
281  _bnd_mesh->meshBoundaryIds().begin(),
282  _bnd_mesh->meshBoundaryIds().end());
283  else
284  return std::includes(ids.begin(), ids.end(), _bnd_ids.begin(), _bnd_ids.end());
285 }
MooseMesh * _bnd_mesh
Point to mesh.
const std::set< BoundaryID > & meshBoundaryIds() const
Returns a read-only reference to the set of boundary IDs currently present in the Mesh...
Definition: MooseMesh.C:3146
std::set< BoundaryID > _bnd_ids
Set of the boundary ids.
const BoundaryID ANY_BOUNDARY_ID
Definition: MooseTypes.C:21

◆ isBoundarySubset() [2/2]

bool BoundaryRestrictable::isBoundarySubset ( const std::vector< BoundaryID > &  ids) const
inherited

Definition at line 288 of file BoundaryRestrictable.C.

289 {
290  std::set<BoundaryID> ids_set(ids.begin(), ids.end());
291  return isBoundarySubset(ids_set);
292 }
bool isBoundarySubset(const std::set< BoundaryID > &ids) const
Test if the class boundary ids are a subset of the supplied objects.

◆ isConstant()

virtual bool Moose::FunctorBase< Real >::isConstant ( ) const
inlinevirtualinherited

Returns true if this functor is a constant.

Reimplemented in Moose::FunctorEnvelope< Real >.

Definition at line 260 of file MooseFunctor.h.

260 { return false; }

◆ isCoupled()

bool Coupleable::isCoupled ( const std::string &  var_name,
unsigned int  i = 0 
) const
protectedvirtualinherited

Returns true if a variables has been coupled as name.

Parameters
var_nameThe name the kernel wants to refer to the variable as.
iBy default 0, in general the index to test in a vector of MooseVariable pointers.
Returns
True if a coupled variable has the supplied name

Definition at line 128 of file Coupleable.C.

Referenced by Coupleable::adCoupledNodalValue(), Coupleable::checkVar(), Coupleable::coupledComponents(), and MatDiffusionBase< Real >::MatDiffusionBase().

129 {
130  const auto var_name = _c_parameters.checkForRename(var_name_in);
131 
132  auto it = _coupled_vars.find(var_name);
133  if (it != _coupled_vars.end())
134  return (i < it->second.size());
135  else
136  {
137  // Make sure the user originally requested this value in the InputParameter syntax
138  if (!_c_parameters.hasCoupledValue(var_name))
140  ": The coupled variable \"",
141  var_name,
142  "\" was never added to this object's "
143  "InputParameters, please double-check your "
144  "spelling");
145 
146  return false;
147  }
148 }
bool hasCoupledValue(const std::string &coupling_name) const
Return whether or not the coupled variable exists.
std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > _coupled_vars
Coupled vars whose values we provide.
Definition: Coupleable.h:1409
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.
const InputParameters & _c_parameters
Definition: Coupleable.h:1395

◆ isCoupledConstant()

bool Coupleable::isCoupledConstant ( const std::string &  var_name) const
protectedvirtualinherited

Returns true if a variable passed as a coupled value is really a constant.

Parameters
var_nameThe name the kernel wants to refer to the variable as.
Returns
True if the variable is actually a constant

Definition at line 151 of file Coupleable.C.

Referenced by Coupleable::coupledName(), and DerivativeFunctionMaterialBaseTempl< is_ad >::DerivativeFunctionMaterialBaseTempl().

152 {
153  return _c_parameters.hasDefaultCoupledValue(var_name);
154 }
bool hasDefaultCoupledValue(const std::string &coupling_name) const
Return whether or not the requested parameter has a default coupled value.
const InputParameters & _c_parameters
Definition: Coupleable.h:1395

◆ isCoupledScalar()

bool ScalarCoupleable::isCoupledScalar ( const std::string &  var_name,
unsigned int  i = 0 
) const
protectedinherited

Returns true if a variables has been coupled_as name.

Parameters
var_nameThe of the coupled variable
iBy default 0, in general the index to test in a vector of MooseVariable pointers.

Definition at line 70 of file ScalarCoupleable.C.

Referenced by ScalarCoupleable::adCoupledScalarValue(), ScalarCoupleable::coupledMatrixTagScalarValue(), ScalarCoupleable::coupledScalarOrder(), ScalarCoupleable::coupledScalarValue(), ScalarCoupleable::coupledScalarValueOld(), ScalarCoupleable::coupledScalarValueOlder(), and ScalarCoupleable::coupledVectorTagScalarValue().

71 {
72  const auto var_name = _sc_parameters.checkForRename(var_name_in);
73 
74  auto it = _coupled_scalar_vars.find(var_name);
75  if (it != _coupled_scalar_vars.end())
76  return (i < it->second.size());
77  else
78  {
79  // Make sure the user originally requested this value in the InputParameter syntax
80  if (!_sc_parameters.hasCoupledValue(var_name))
82  ": The coupled scalar variable \"",
83  var_name,
84  "\" was never added to this object's "
85  "InputParameters, please double-check "
86  "your spelling");
87 
88  return false;
89  }
90 }
bool hasCoupledValue(const std::string &coupling_name) const
Return whether or not the coupled variable exists.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const std::string & _sc_name
The name of the object this interface is part of.
std::unordered_map< std::string, std::vector< MooseVariableScalar * > > _coupled_scalar_vars
Coupled vars whose values we provide.
const InputParameters & _sc_parameters
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.

◆ isDefaultPostprocessorValue()

bool PostprocessorInterface::isDefaultPostprocessorValue ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Determine whether or not the Postprocessor is a default value.

A default value is when the value is either the value set by addParam, or is a user-set value in input instead of a name to a postprocessor.

Parameters
param_nameThe name of the Postprocessor parameter
indexThe index of the postprocessor
Returns
True if the Postprocessor is a default value, false if the Postprocessor is the name of a Postprocessor

Definition at line 75 of file PostprocessorInterface.C.

Referenced by EigenKernel::EigenKernel().

77 {
79 }
bool isDefaultPostprocessorValueByName(const PostprocessorName &name) const
const PostprocessorName & getPostprocessorNameInternal(const std::string &param_name, const unsigned int index, const bool allow_default_value=true) const
Internal method for getting the PostprocessorName associated with a paremeter.

◆ isExtrapolatedBoundaryFace()

virtual bool Moose::FunctorBase< Real >::isExtrapolatedBoundaryFace ( const FaceInfo ,
const Elem *  ,
const StateArg  
) const
inlinevirtualinherited

Returns whether this (sided) face is an extrapolated boundary face for this functor.

Reimplemented in Moose::FunctorEnvelope< Real >.

Definition at line 247 of file MooseFunctor.h.

248  {
249  mooseError("not implemented");
250  }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302

◆ isFunctor() [1/2]

bool FunctorInterface::isFunctor ( const std::string &  name) const
protectedinherited

Checks the subproblem for the given functor.

This will not query default functors potentially stored in this object, e.g. this method will return false if the user passed an int or real to the functor param in the input file

Parameters
nameThe name of the functor to check. This should match the functor parameter name, not the actual name of the functor created in the input file
Returns
Whether the subproblem has the specified functor

Definition at line 113 of file FunctorInterface.C.

114 {
115  mooseAssert(_fi_subproblem, "This must be non-null");
116  return isFunctor(name, *_fi_subproblem);
117 }
SubProblem *const _fi_subproblem
Pointer to subproblem if the subproblem pointer parameter was set.
bool isFunctor(const std::string &name) const
Checks the subproblem for the given functor.

◆ isFunctor() [2/2]

bool FunctorInterface::isFunctor ( const std::string &  name,
const SubProblem subproblem 
) const
protectedinherited

Checks the passed-in subproblem for the given functor.

This will not query default functors potentially stored in this object, e.g. this method will return false if the user passed an int or real to the functor param in the input file

Parameters
nameThe name of the functor to check. This should match the functor parameter name, not the actual name of the functor created in the input file
subproblemThe subproblem to query for the functor
Returns
Whether the subproblem has the specified functor

Definition at line 104 of file FunctorInterface.C.

105 {
106  // Check if the supplied parameter is a valid input parameter key
107  std::string functor_name = deduceFunctorName(name);
108 
109  return subproblem.hasFunctor(functor_name, _fi_tid);
110 }
bool hasFunctor(const std::string &name, const THREAD_ID tid) const
checks whether we have a functor corresponding to name on the thread id tid
Definition: SubProblem.C:1271
const THREAD_ID _fi_tid
Current threaded it.
static std::string deduceFunctorName(const std::string &name, const InputParameters &params)
Helper to look up a functor name through the input parameter keys.

◆ isImplicit()

bool TransientInterface::isImplicit ( )
inlineinherited

Definition at line 38 of file TransientInterface.h.

Referenced by ComputeJacobianThread::compute().

38 { return _is_implicit; }
bool _is_implicit
If the object is using implicit or explicit form.

◆ isInternalFace()

bool Moose::FunctorBase< Real >::isInternalFace ( const FaceInfo fi) const
inherited

Returns true if the face is an internal face.

Definition at line 569 of file MooseFunctor.h.

570 {
571  if (!fi.neighborPtr())
572  return false;
573 
574  return hasBlocks(fi.elem().subdomain_id()) && hasBlocks(fi.neighborPtr()->subdomain_id());
575 }
virtual bool hasBlocks(SubdomainID) const
Returns whether the functor is defined on this block.
Definition: MooseFunctor.h:237
const Elem & elem() const
Definition: FaceInfo.h:81
const Elem * neighborPtr() const
Definition: FaceInfo.h:84

◆ isParamSetByUser()

bool MooseBaseParameterInterface::isParamSetByUser ( const std::string &  nm) const
inlineinherited

Test if the supplied parameter is set by a user, as opposed to not set or set to default.

Parameters
nmThe name of the parameter to test

Definition at line 117 of file MooseBaseParameterInterface.h.

Referenced by SetupDebugAction::act(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), DiffusionCG::addFEBCs(), DiffusionPhysicsBase::addInitialConditions(), DiffusionCG::addSolverVariables(), MFEMMesh::buildMesh(), LibtorchNeuralNetControl::conditionalParameterError(), DiffusionPhysicsBase::DiffusionPhysicsBase(), ElementSubdomainModifierBase::ElementSubdomainModifierBase(), FixedPointSolve::FixedPointSolve(), MooseBaseParameterInterface::getRenamedParam(), DefaultNonlinearConvergence::getSharedExecutionerParam(), PhysicsBase::initializePhysics(), ElementSubdomainModifierBase::initialSetup(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), SolutionInvalidityOutput::output(), Output::Output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), PetscExternalPartitioner::partition(), PiecewiseTabularBase::PiecewiseTabularBase(), MooseMesh::prepare(), SolutionUserObjectBase::readXda(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), TimedSubdomainModifier::TimedSubdomainModifier(), and XYDelaunayGenerator::XYDelaunayGenerator().

117 { return _pars.isParamSetByUser(nm); }
bool isParamSetByUser(const std::string &name) const
Method returns true if the parameter was by the user.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

◆ isParamValid()

bool MooseBaseParameterInterface::isParamValid ( const std::string &  name) const
inlineinherited

Test if the supplied parameter is valid.

Parameters
nameThe name of the parameter to test

Definition at line 111 of file MooseBaseParameterInterface.h.

Referenced by HierarchicalGridPartitioner::_do_partition(), GridPartitioner::_do_partition(), CopyNodalVarsAction::act(), SetupMeshAction::act(), ComposeTimeStepperAction::act(), SetupDebugAction::act(), SetAdaptivityOptionsAction::act(), CreateDisplacedProblemAction::act(), CommonOutputAction::act(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), DiffusionCG::addFEKernels(), DiffusionFV::addFVBCs(), DiffusionFV::addFVKernels(), CylinderComponent::addMeshGenerators(), AddPeriodicBCAction::AddPeriodicBCAction(), DiffusionPhysicsBase::addPostprocessors(), AdvectiveFluxAux::AdvectiveFluxAux(), ArrayHFEMDirichletBC::ArrayHFEMDirichletBC(), AddPeriodicBCAction::autoTranslationBoundaries(), BicubicSplineFunction::BicubicSplineFunction(), BlockDeletionGenerator::BlockDeletionGenerator(), TimedSubdomainModifier::buildFromFile(), PiecewiseTabularBase::buildFromFile(), PiecewiseTabularBase::buildFromJSON(), ParsedChainControl::buildFunction(), GeneratedMesh::buildMesh(), MooseMesh::buildTypedMesh(), CartesianGridDivision::CartesianGridDivision(), CartesianMeshGenerator::CartesianMeshGenerator(), LibmeshPartitioner::clone(), OversampleOutput::cloneMesh(), CombinerGenerator::CombinerGenerator(), FunctorAux::computeValue(), ConservativeAdvectionTempl< is_ad >::ConservativeAdvectionTempl(), CSVReaderVectorPostprocessor::CSVReaderVectorPostprocessor(), CutMeshByLevelSetGenerator::CutMeshByLevelSetGenerator(), CutMeshByLevelSetGeneratorBase::CutMeshByLevelSetGeneratorBase(), ConstantReporter::declareConstantReporterValues(), DGKernelBase::DGKernelBase(), DiffusionFluxAux::DiffusionFluxAux(), DomainUserObject::DomainUserObject(), DynamicObjectRegistrationAction::DynamicObjectRegistrationAction(), Eigenvalue::Eigenvalue(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), PIDTransientControl::execute(), MultiAppNearestNodeTransfer::execute(), MultiAppUserObjectTransfer::execute(), Exodus::Exodus(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), FEProblemBase::FEProblemBase(), FEProblemSolve::FEProblemSolve(), FieldSplitPreconditioner::FieldSplitPreconditioner(), FileOutput::FileOutput(), SpatialUserObjectVectorPostprocessor::fillPoints(), CombinerGenerator::fillPositions(), MultiApp::fillPositions(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), FunctionDT::FunctionDT(), FunctionValuePostprocessor::FunctionValuePostprocessor(), FVInterfaceKernel::FVInterfaceKernel(), FVMassMatrix::FVMassMatrix(), BreakBoundaryOnSubdomainGenerator::generate(), ElementGenerator::generate(), FileMeshGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), SubdomainPerElementGenerator::generate(), ExtraNodesetGenerator::generate(), AddMetaDataGenerator::generate(), BlockDeletionGenerator::generate(), GeneratedMeshGenerator::generate(), ParsedSubdomainGeneratorBase::generate(), MeshExtruderGenerator::generate(), ParsedExtraElementIDGenerator::generate(), XYZDelaunayGenerator::generate(), XYDelaunayGenerator::generate(), XYMeshLineCutter::generate(), SubdomainBoundingBoxGenerator::generate(), DistributedRectilinearMeshGenerator::generate(), PropertyReadFile::getFileNames(), MultiAppNearestNodeTransfer::getLocalEntitiesAndComponents(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), MooseBaseParameterInterface::getRenamedParam(), MultiAppNearestNodeTransfer::getTargetLocalNodes(), Terminator::handleMessage(), HFEMDirichletBC::HFEMDirichletBC(), EigenExecutionerBase::init(), IterationAdaptiveDT::init(), Eigenvalue::init(), AdvancedOutput::initExecutionTypes(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), MultiAppCloneReporterTransfer::initialSetup(), SolutionIC::initialSetup(), MultiAppVariableValueSampleTransfer::initialSetup(), PiecewiseTabularBase::initialSetup(), ParsedConvergence::initialSetup(), SolutionScalarAux::initialSetup(), SolutionAux::initialSetup(), Console::initialSetup(), MooseParsedVectorFunction::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), MooseParsedGradFunction::initialSetup(), MooseParsedFunction::initialSetup(), IterationAdaptiveDT::IterationAdaptiveDT(), LeastSquaresFit::LeastSquaresFit(), LibmeshPartitioner::LibmeshPartitioner(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), MassMatrix::MassMatrix(), MatCoupledForce::MatCoupledForce(), MatDiffusionBase< Real >::MatDiffusionBase(), MeshGeneratorComponent::MeshGeneratorComponent(), MooseMesh::MooseMesh(), MoosePreconditioner::MoosePreconditioner(), MooseVariableBase::MooseVariableBase(), MooseVariableFV< Real >::MooseVariableFV(), MortarConstraintBase::MortarConstraintBase(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppCloneReporterTransfer::MultiAppCloneReporterTransfer(), MultiAppGeneralFieldNearestLocationTransfer::MultiAppGeneralFieldNearestLocationTransfer(), MultiAppGeneralFieldShapeEvaluationTransfer::MultiAppGeneralFieldShapeEvaluationTransfer(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppPostprocessorInterpolationTransfer::MultiAppPostprocessorInterpolationTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppReporterTransfer::MultiAppReporterTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSampleTransfer::MultiAppVariableValueSampleTransfer(), MultiSystemSolveObject::MultiSystemSolveObject(), NodeSetsGeneratorBase::NodeSetsGeneratorBase(), EigenExecutionerBase::normalizeSolution(), Output::Output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), ParsedCurveGenerator::ParsedCurveGenerator(), PetscOutput::PetscOutput(), PhysicsBasedPreconditioner::PhysicsBasedPreconditioner(), PicardSolve::PicardSolve(), PIDTransientControl::PIDTransientControl(), PiecewiseTabularBase::PiecewiseTabularBase(), PlaneIDMeshGenerator::PlaneIDMeshGenerator(), MooseMesh::prepare(), MultiApp::readCommandLineArguments(), SolutionUserObjectBase::readExodusII(), ReferenceResidualInterface::ReferenceResidualInterface(), RenameBlockGenerator::RenameBlockGenerator(), ReporterPointSource::ReporterPointSource(), ParsedSubdomainMeshGenerator::setBlockName(), MooseMesh::setCoordSystem(), FileOutput::setFileBase(), FileOutput::setFileBaseInternal(), Split::setup(), SideSetsGeneratorBase::setup(), SetupMeshAction::setupMesh(), SideDiffusiveFluxIntegralTempl< is_ad, Real >::SideDiffusiveFluxIntegralTempl(), SideSetsGeneratorBase::SideSetsGeneratorBase(), SolutionUserObjectBase::SolutionUserObjectBase(), FEProblemSolve::solve(), WebServerControl::startServer(), Terminator::Terminator(), TimeIntervalTimes::TimeIntervalTimes(), TimePeriod::TimePeriod(), MultiAppDofCopyTransfer::transfer(), TransformGenerator::TransformGenerator(), FunctorIC::value(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl(), WebServerControl::WebServerControl(), XYDelaunayGenerator::XYDelaunayGenerator(), and XYZDelaunayGenerator::XYZDelaunayGenerator().

111 { return _pars.isParamValid(name); }
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ isVectorPostprocessorDistributed()

bool VectorPostprocessorInterface::isVectorPostprocessorDistributed ( const std::string &  param_name) const
inherited

Return true if the VectorPostprocessor is marked with parallel_type as DISTRIBUTED.

Definition at line 190 of file VectorPostprocessorInterface.C.

191 {
193 }
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
bool isVectorPostprocessorDistributedByName(const VectorPostprocessorName &name) const

◆ isVectorPostprocessorDistributedByName()

bool VectorPostprocessorInterface::isVectorPostprocessorDistributedByName ( const VectorPostprocessorName &  name) const
inherited

Definition at line 196 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::isVectorPostprocessorDistributed().

198 {
200 }
const VectorPostprocessor & getVectorPostprocessorObjectByName(const std::string &object_name, const THREAD_ID tid=0) const
Return the VPP object given the name.
bool isDistributed() const
Return true if the VPP is operating in distributed mode.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.

◆ jacobianSetup() [1/2]

void SetupInterface::jacobianSetup ( )
virtualinherited

◆ jacobianSetup() [2/2]

void Moose::FunctorBase< Real >::jacobianSetup ( )
overridevirtualinherited

Implements Moose::FunctorAbstract.

Reimplemented in Function.

Definition at line 831 of file MooseFunctor.h.

832 {
834  clearCacheData();
835 }
const ExecFlagType EXEC_NONLINEAR
Definition: Moose.C:31
void clearCacheData()
clear cache data
Definition: MooseFunctor.h:789
std::set< ExecFlagType > _clearance_schedule
How often to clear the material property cache.
Definition: MooseFunctor.h:514

◆ makeCDFace()

Moose::FaceArg FaceArgProducerInterface::makeCDFace ( const FaceInfo fi,
const bool  correct_skewness = false 
) const
inlineinherited

Make a functor face argument with a central differencing limiter, e.g.

compose a face argument that will tell functors to perform (possibly skew-corrected) linear interpolations from cell center values to faces

Parameters
fithe face information
correct_skewnesswhether to apply skew correction
Returns
a face argument for functors

Definition at line 62 of file FaceArgInterface.h.

Referenced by LinearFVAdvectionDiffusionFunctorNeumannBC::computeBoundaryNormalGradient(), LinearFVAdvectionDiffusionFunctorNeumannBC::computeBoundaryValue(), LinearFVAdvectionDiffusionFunctorNeumannBC::computeBoundaryValueRHSContribution(), SideIntegralVariablePostprocessor::computeFaceInfoIntegral(), InternalSideIntegralVariablePostprocessor::computeFaceInfoIntegral(), LinearFVDiffusion::computeFluxMatrixContribution(), LinearFVAnisotropicDiffusion::computeFluxMatrixContribution(), LinearFVDiffusion::computeFluxRHSContribution(), LinearFVAnisotropicDiffusion::computeFluxRHSContribution(), and InterfaceIntegralVariableValuePostprocessor::computeQpIntegral().

63 {
64  return makeFace(fi, Moose::FV::LimiterType::CentralDifference, true, correct_skewness);
65 }
Moose::FaceArg makeFace(const FaceInfo &fi, const Moose::FV::LimiterType limiter_type, const bool elem_is_upwind, const bool correct_skewness=false, const Moose::StateArg *state_limiter=nullptr) const
Create a functor face argument from provided component arguments.

◆ makeElemArg()

Moose::ElemArg FunctorInterface::makeElemArg ( const Elem *  elem,
bool  correct_skewnewss = false 
) const
protectedinherited

◆ makeFace()

Moose::FaceArg FaceArgProducerInterface::makeFace ( const FaceInfo fi,
const Moose::FV::LimiterType  limiter_type,
const bool  elem_is_upwind,
const bool  correct_skewness = false,
const Moose::StateArg state_limiter = nullptr 
) const
inherited

Create a functor face argument from provided component arguments.

Parameters
fithe face information object
limiter_typethe limiter that defines how to perform interpolations to the faces
elem_is_upwindwhether the face information element is the upwind element (the value of this doesn't matter when the limiter type is CentralDifference)
correct_skewnesswhether to apply skew correction
Returns
the functor face argument

Definition at line 13 of file FaceArgInterface.C.

Referenced by FVAdvection::computeQpResidual(), FVMatAdvection::computeQpResidual(), FVDivergence::computeQpResidual(), FVBoundaryIntegralValueConstraint::computeQpResidual(), FaceArgProducerInterface::makeCDFace(), LinearFVFluxKernel::singleSidedFaceArg(), FVBoundaryCondition::singleSidedFaceArg(), LinearFVBoundaryCondition::singleSidedFaceArg(), and FVFluxKernel::singleSidedFaceArg().

18 {
19  const bool defined_on_elem_side = hasFaceSide(fi, true);
20  const bool defined_on_neighbor_side = hasFaceSide(fi, false);
21  const Elem * const elem = defined_on_elem_side && defined_on_neighbor_side
22  ? nullptr
23  : (defined_on_elem_side ? &fi.elem() : fi.neighborPtr());
24 
25  if (!defined_on_elem_side && !defined_on_neighbor_side)
26  mooseError("No definition on either side");
27 
28  return {&fi, limiter_type, elem_is_upwind, correct_skewness, elem, state_limiter};
29 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
const Elem & elem() const
Definition: FaceInfo.h:81
const Elem * neighborPtr() const
Definition: FaceInfo.h:84
virtual bool hasFaceSide(const FaceInfo &fi, const bool fi_elem_side) const =0

◆ markMatPropRequested()

void MaterialPropertyInterface::markMatPropRequested ( const std::string &  name)
protectedinherited

A proxy method for _mi_feproblem.markMatPropRequested(name)

Definition at line 139 of file MaterialPropertyInterface.C.

Referenced by MaterialPropertyInterface::getGenericMaterialPropertyByName().

140 {
142 }
FEProblemBase & _mi_feproblem
Reference to the FEProblemBase class.
virtual void markMatPropRequested(const std::string &)
Helper method for adding a material property name to the _material_property_requested set...
Definition: SubProblem.C:725

◆ maxElementID()

dof_id_type ElementIDInterface::maxElementID ( unsigned int  elem_id_index) const
inlineinherited

Return the maximum element ID for an element integer with its index.

Definition at line 87 of file ElementIDInterface.h.

88  {
89  return _id_mesh->maxElementID(elem_id_index);
90  }
std::shared_ptr< MooseMesh > & _id_mesh
References to the mesh and displaced mesh (currently in the ActionWarehouse)

◆ meshBoundaryIDs()

const std::set< BoundaryID > & BoundaryRestrictable::meshBoundaryIDs ( ) const
inherited

Returns the set of all boundary ids for the entire mesh.

Returns
A const reference the the boundary ids for the entire mesh

Definition at line 295 of file BoundaryRestrictable.C.

Referenced by BoundaryRestrictable::hasBoundaryMaterialPropertyHelper().

296 {
297  return _bnd_mesh->getBoundaryIDs();
298 }
MooseMesh * _bnd_mesh
Point to mesh.
std::vector< BoundaryID > getBoundaryIDs(const Elem *const elem, const unsigned short int side) const
Returns a vector of boundary IDs for the requested element on the requested side. ...

◆ meshChanged()

virtual void MeshChangedInterface::meshChanged ( )
inlinevirtualinherited

◆ meshPropertyName() [1/2]

std::string MeshMetaDataInterface::meshPropertyName ( const std::string &  data_name,
const std::string &  prefix 
)
staticprotectedinherited
Returns
The full name for mesh property data.

Definition at line 33 of file MeshMetaDataInterface.C.

Referenced by MeshGenerator::declareMeshProperty(), MeshMetaDataInterface::getMeshPropertyInternal(), MeshMetaDataInterface::hasMeshProperty(), MeshMetaDataInterface::meshPropertyName(), and MeshGenerator::setMeshPropertyHelper().

34 {
35  return std::string(SYSTEM) + "/" + prefix + "/" + data_name;
36 }
static constexpr auto SYSTEM
The system name used when initializing the Restartable interface.

◆ meshPropertyName() [2/2]

std::string MeshMetaDataInterface::meshPropertyName ( const std::string &  data_name) const
inlineprotectedinherited
Returns
The default mesh property name for mesh property data

Definition at line 95 of file MeshMetaDataInterface.h.

96  {
97  return meshPropertyName(data_name, meshPropertyPrefix(data_name));
98  }
static std::string meshPropertyName(const std::string &data_name, const std::string &prefix)
virtual std::string meshPropertyPrefix(const std::string &data_name) const
The default prefix to use for getting/seeing if mesh properties exist.

◆ minElementID()

dof_id_type ElementIDInterface::minElementID ( unsigned int  elem_id_index) const
inlineinherited

Return the minimum element ID for an element integer with its index.

Definition at line 95 of file ElementIDInterface.h.

96  {
97  return _id_mesh->minElementID(elem_id_index);
98  }
std::shared_ptr< MooseMesh > & _id_mesh
References to the mesh and displaced mesh (currently in the ActionWarehouse)

◆ mooseDeprecated()

template<typename... Args>
void MooseBaseErrorInterface::mooseDeprecated ( Args &&...  args) const
inlineinherited

Definition at line 91 of file MooseBaseErrorInterface.h.

Referenced by FEProblemBase::addAuxArrayVariable(), FEProblemBase::addAuxScalarVariable(), FEProblemBase::addAuxVariable(), FEProblemBase::advanceMultiApps(), MultiApp::appProblem(), Executioner::augmentedPicardConvergenceCheck(), MooseMesh::buildSideList(), ChangeOverTimestepPostprocessor::ChangeOverTimestepPostprocessor(), AddVariableAction::determineType(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), MooseMesh::elem(), UserForcingFunction::f(), FaceFaceConstraint::FaceFaceConstraint(), FunctionDT::FunctionDT(), RandomICBase::generateRandom(), MooseMesh::getBoundariesToElems(), DataFileInterface::getDataFileName(), DataFileInterface::getDataFileNameByName(), Control::getExecuteOptions(), FEProblemBase::getNonlinearSystem(), FEProblemBase::getUserObjects(), FEProblemBase::hasPostprocessor(), MatDiffusionBase< Real >::MatDiffusionBase(), MultiAppNearestNodeTransfer::MultiAppNearestNodeTransfer(), MultiAppShapeEvaluationTransfer::MultiAppShapeEvaluationTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), NodalScalarKernel::NodalScalarKernel(), MooseMesh::node(), FixedPointSolve::numPicardIts(), RelationshipManager::operator>=(), PercentChangePostprocessor::PercentChangePostprocessor(), Executioner::picardSolve(), ReferenceResidualConvergence::ReferenceResidualConvergence(), Residual::Residual(), MooseMesh::setBoundaryToNormalMap(), Exodus::setOutputDimension(), and UserForcingFunction::UserForcingFunction().

92  {
94  _console, false, true, _moose_base.errorPrefix("deprecation"), std::forward<Args>(args)...);
95  }
std::string errorPrefix(const std::string &error_type) const
Definition: MooseBase.C:43
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void mooseDeprecatedStream(S &oss, const bool expired, const bool print_title, Args &&... args)
Definition: MooseError.h:239
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ mooseDocumentedError()

template<typename... Args>
void MooseBaseErrorInterface::mooseDocumentedError ( const std::string &  repo_name,
const unsigned int  issue_num,
Args &&...  args 
) const
inlineinherited

Emits a documented error with object name and type.

Documented errors are errors that have an issue associated with them.

The repository name repo_name links a named repository to a URL and should be registered at the application level with registerRepository(). See Moose.C for an example of the "moose" repository registration.

Parameters
repo_nameThe repository name where the issue resides
issue_numThe number of the issue
argsThe error message to be combined

Definition at line 61 of file MooseBaseErrorInterface.h.

Referenced by ArrayDGLowerDKernel::ArrayDGLowerDKernel(), ArrayHFEMDirichletBC::ArrayHFEMDirichletBC(), ArrayLowerDIntegratedBC::ArrayLowerDIntegratedBC(), DGLowerDKernel::DGLowerDKernel(), HFEMDirichletBC::HFEMDirichletBC(), and LowerDIntegratedBC::LowerDIntegratedBC().

64  {
65  std::ostringstream oss;
66  moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
67  const auto msg = moose::internal::formatMooseDocumentedError(repo_name, issue_num, oss.str());
68  _moose_base.callMooseError(msg, /* with_prefix = */ true);
69  }
void mooseStreamAll(std::ostringstream &ss)
All of the following are not meant to be called directly - they are called by the normal macros (moos...
Definition: MooseError.C:94
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33
std::string formatMooseDocumentedError(const std::string &repo_name, const unsigned int issue_num, const std::string &msg)
Formats a documented error.
Definition: MooseError.C:99

◆ mooseError()

template<typename... Args>
void MooseBaseErrorInterface::mooseError ( Args &&...  args) const
inlineinherited

Emits an error prefixed with object name and type.

Definition at line 29 of file MooseBaseErrorInterface.h.

Referenced by HierarchicalGridPartitioner::_do_partition(), GridPartitioner::_do_partition(), PetscExternalPartitioner::_do_partition(), MultiAppGeneralFieldTransfer::acceptPointInOriginMesh(), InitProblemAction::act(), AutoCheckpointAction::act(), CheckIntegrityAction::act(), SetupMeshCompleteAction::act(), AddBoundsVectorsAction::act(), AddFVICAction::act(), CheckFVBCAction::act(), CreateExecutionerAction::act(), AddVectorPostprocessorAction::act(), AddICAction::act(), AddMeshGeneratorAction::act(), CreateProblemDefaultAction::act(), CreateProblemAction::act(), CombineComponentsMeshes::act(), SetupMeshAction::act(), SplitMeshAction::act(), AdaptivityAction::act(), ChainControlSetupAction::act(), AddTimeStepperAction::act(), DeprecatedBlockAction::act(), SetupPredictorAction::act(), SetupTimeStepperAction::act(), CreateDisplacedProblemAction::act(), MaterialDerivativeTestAction::act(), SetAdaptivityOptionsAction::act(), MaterialOutputAction::act(), CommonOutputAction::act(), AddPeriodicBCAction::act(), Action::Action(), FEProblemBase::adaptMesh(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), MooseVariableFV< Real >::adCurlSln(), MooseVariableFV< Real >::adCurlSlnNeighbor(), AddActionComponentAction::AddActionComponentAction(), MFEMProblem::addBoundaryCondition(), FEProblemBase::addBoundaryCondition(), DiffusionCG::addBoundaryConditionsFromComponents(), PhysicsComponentInterface::addBoundaryConditionsFromComponents(), FEProblemBase::addConstraint(), FEProblemBase::addDamper(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), DistributedRectilinearMeshGenerator::addElement(), FEProblemBase::addFunction(), SubProblem::addFunctor(), FEProblemBase::addFVInitialCondition(), ADDGKernel::ADDGKernel(), FEProblemBase::addHDGIntegratedBC(), FEProblemBase::addHDGKernel(), FEProblemBase::addInitialCondition(), PhysicsComponentInterface::addInitialConditionsFromComponents(), FEProblemBase::addInterfaceKernel(), MFEMProblem::addKernel(), FEProblemBase::addKernel(), FEProblem::addLineSearch(), FEProblemBase::addLineSearch(), MFEMProblem::addMaterial(), MeshGenerator::addMeshSubgenerator(), MFEMProblem::addMFEMFESpaceFromMOOSEVariable(), FEProblemBase::addOutput(), SubProblem::addPiecewiseByBlockLambdaFunctor(), DiracKernelBase::addPoint(), DistributedRectilinearMeshGenerator::addPoint(), DiracKernelBase::addPointWithValidId(), FEProblemBase::addPostprocessor(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), MooseMesh::addQuadratureNode(), Action::addRelationshipManager(), FEProblemBase::addReporter(), FEProblemBase::addScalarKernel(), AddVariableAction::addVariable(), FEProblemBase::addVectorPostprocessor(), SubProblem::addVectorTag(), MooseLinearVariableFV< Real >::adError(), ADInterfaceKernelTempl< T >::ADInterfaceKernelTempl(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), MooseVariableScalar::adUDot(), Output::advancedExecuteOn(), AdvectiveFluxAux::AdvectiveFluxAux(), MooseVariableBase::allDofIndices(), MultiApp::appPostprocessorValue(), MultiApp::appProblem(), MultiApp::appProblemBase(), MultiApp::appUserObjectBase(), ArrayConstantIC::ArrayConstantIC(), ArrayDGKernel::ArrayDGKernel(), ArrayDiffusion::ArrayDiffusion(), ArrayFunctionIC::ArrayFunctionIC(), ArrayParsedAux::ArrayParsedAux(), ArrayReaction::ArrayReaction(), ArrayTimeDerivative::ArrayTimeDerivative(), AddPeriodicBCAction::autoTranslationBoundaries(), AuxKernelTempl< Real >::AuxKernelTempl(), Function::average(), Axisymmetric2D3DSolutionFunction::Axisymmetric2D3DSolutionFunction(), BatchMeshGeneratorAction::BatchMeshGeneratorAction(), BicubicSplineFunction::BicubicSplineFunction(), BlockDeletionGenerator::BlockDeletionGenerator(), BoundingValueElementDamper::BoundingValueElementDamper(), BoundingValueNodalDamper::BoundingValueNodalDamper(), BreakMeshByBlockGeneratorBase::BreakMeshByBlockGeneratorBase(), MooseMesh::buildCoarseningMap(), MultiApp::buildComm(), DistributedRectilinearMeshGenerator::buildCube(), TimedSubdomainModifier::buildFromFile(), PiecewiseTabularBase::buildFromFile(), PiecewiseTabularBase::buildFromJSON(), TimedSubdomainModifier::buildFromParameters(), PiecewiseTabularBase::buildFromXY(), PiecewiseLinearBase::buildInterpolation(), MooseMesh::buildLowerDMesh(), TiledMesh::buildMesh(), GeneratedMesh::buildMesh(), SpiralAnnularMesh::buildMesh(), MeshGeneratorMesh::buildMesh(), ImageMeshGenerator::buildMesh3D(), ImageMesh::buildMesh3D(), MooseMesh::buildRefinementMap(), MaterialBase::buildRequiredMaterials(), MooseMesh::buildSideList(), MooseMesh::buildTypedMesh(), MooseMesh::cacheFaceInfoVariableOwnership(), CartesianGridDivision::CartesianGridDivision(), CartesianMeshGenerator::CartesianMeshGenerator(), ChangeOverFixedPointPostprocessor::ChangeOverFixedPointPostprocessor(), ChangeOverTimePostprocessor::ChangeOverTimePostprocessor(), EigenExecutionerBase::chebyshev(), SubProblem::checkBlockMatProps(), PhysicsBase::checkBlockRestrictionIdentical(), ComponentBoundaryConditionInterface::checkBoundaryConditionsAllRequested(), SubProblem::checkBoundaryMatProps(), PhysicsBase::checkComponentType(), IterationCountConvergence::checkConvergence(), MooseMesh::checkCoordinateSystems(), FEProblemBase::checkDependMaterialsHelper(), FEProblemBase::checkDisplacementOrders(), FEProblemBase::checkDuplicatePostprocessorVariableNames(), DefaultNonlinearConvergence::checkDuplicateSetSharedExecutionerParams(), MooseMesh::checkDuplicateSubdomainNames(), FEProblemBase::checkExceptionAndStopSolve(), MaterialBase::checkExecutionStage(), MeshGenerator::checkGetMesh(), ReporterTransferInterface::checkHasReporterValue(), FEProblemBase::checkICRestartError(), Steady::checkIntegrity(), EigenExecutionerBase::checkIntegrity(), Eigenvalue::checkIntegrity(), ExplicitTimeIntegrator::checkLinearConvergence(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), MeshDiagnosticsGenerator::checkNonMatchingEdges(), PostprocessorInterface::checkParam(), FEProblemBase::checkProblemIntegrity(), Sampler::checkReinitStatus(), MultiAppGeneralFieldNearestLocationTransfer::checkRestrictionsForSource(), MultiAppPostprocessorToAuxScalarTransfer::checkSiblingsTransferSupported(), MultiAppScalarToAuxScalarTransfer::checkSiblingsTransferSupported(), MultiAppMFEMCopyTransfer::checkSiblingsTransferSupported(), MultiAppPostprocessorTransfer::checkSiblingsTransferSupported(), MultiAppReporterTransfer::checkSiblingsTransferSupported(), MultiAppCopyTransfer::checkSiblingsTransferSupported(), MultiAppTransfer::checkSiblingsTransferSupported(), MaterialBase::checkStatefulSanity(), AddDefaultConvergenceAction::checkUnusedNonlinearConvergenceParameters(), FEProblemBase::checkUserObjects(), Moose::PetscSupport::checkUserProvidedPetscOption(), DomainUserObject::checkVariable(), MultiAppTransfer::checkVariable(), MeshDiagnosticsGenerator::checkWatertightNodesets(), MeshDiagnosticsGenerator::checkWatertightSidesets(), LibmeshPartitioner::clone(), MooseMesh::clone(), CombinerGenerator::CombinerGenerator(), ComparisonPostprocessor::comparisonIsTrue(), MooseVariableFieldBase::componentName(), CompositeFunction::CompositeFunction(), ElementH1ErrorFunctionAux::compute(), NodalPatchRecovery::compute(), FEProblemBase::computeBounds(), VariableCondensationPreconditioner::computeDInverseDiag(), CompositionDT::computeDT(), ArrayDGKernel::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighResidual(), InternalSideIntegralPostprocessor::computeFaceInfoIntegral(), SideIntegralPostprocessor::computeFaceInfoIntegral(), MooseVariableFieldBase::computeFaceValues(), TimeSequenceStepperBase::computeFailedDT(), IterationAdaptiveDT::computeFailedDT(), TimeStepper::computeFailedDT(), MooseMesh::computeFiniteVolumeCoords(), HistogramVectorPostprocessor::computeHistogram(), HDGIntegratedBC::computeJacobian(), ArrayKernel::computeJacobian(), ArrayIntegratedBC::computeJacobian(), HDGKernel::computeJacobian(), FVFluxKernel::computeJacobian(), NodalConstraint::computeJacobian(), FEProblemBase::computeJacobianTags(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), EigenProblem::computeMatricesTags(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), HDGIntegratedBC::computeOffDiagJacobian(), ArrayKernel::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), HDGKernel::computeOffDiagJacobian(), FVElementalKernel::computeOffDiagJacobian(), HDGIntegratedBC::computeOffDiagJacobianScalar(), HDGKernel::computeOffDiagJacobianScalar(), MortarScalarBase::computeOffDiagJacobianScalar(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), MaterialBase::computeProperties(), SideFVFluxBCIntegral::computeQpIntegral(), ScalarKernel::computeQpJacobian(), CoupledTiedValueConstraint::computeQpJacobian(), TiedValueConstraint::computeQpJacobian(), NodalEqualValueConstraint::computeQpJacobian(), LinearNodalConstraint::computeQpJacobian(), EqualValueBoundaryConstraint::computeQpJacobian(), EqualValueEmbeddedConstraint::computeQpJacobian(), CoupledTiedValueConstraint::computeQpOffDiagJacobian(), EqualValueEmbeddedConstraint::computeQpOffDiagJacobian(), ScalarKernel::computeQpResidual(), MassMatrix::computeQpResidual(), NodalEqualValueConstraint::computeQpResidual(), KernelValue::computeQpResidual(), TorchScriptMaterial::computeQpValues(), InterfaceQpValueUserObject::computeRealValue(), ArrayKernel::computeResidual(), HDGIntegratedBC::computeResidual(), ArrayIntegratedBC::computeResidual(), HDGKernel::computeResidual(), FVFluxBC::computeResidual(), FVFluxKernel::computeResidual(), NodalConstraint::computeResidual(), HDGIntegratedBC::computeResidualAndJacobian(), FVFluxKernel::computeResidualAndJacobian(), ResidualObject::computeResidualAndJacobian(), FEProblemBase::computeResidualAndJacobian(), FEProblemBase::computeResidualInternal(), FEProblemBase::computeResidualTag(), FEProblemBase::computeResidualTags(), FEProblemBase::computeResidualType(), KernelScalarBase::computeScalarOffDiagJacobian(), ADKernelScalarBase::computeScalarQpResidual(), ADMortarScalarBase::computeScalarQpResidual(), MortarScalarBase::computeScalarQpResidual(), KernelScalarBase::computeScalarQpResidual(), TimeStepper::computeStep(), ImplicitEuler::computeTimeDerivatives(), ActuallyExplicitEuler::computeTimeDerivatives(), ExplicitEuler::computeTimeDerivatives(), BDF2::computeTimeDerivatives(), NewmarkBeta::computeTimeDerivatives(), CentralDifference::computeTimeDerivatives(), CrankNicolson::computeTimeDerivatives(), LStableDirk2::computeTimeDerivatives(), LStableDirk3::computeTimeDerivatives(), ImplicitMidpoint::computeTimeDerivatives(), ExplicitTVDRK2::computeTimeDerivatives(), AStableDirk4::computeTimeDerivatives(), LStableDirk4::computeTimeDerivatives(), ExplicitRK2::computeTimeDerivatives(), MultiAppGeometricInterpolationTransfer::computeTransformation(), BuildArrayVariableAux::computeValue(), TagVectorArrayVariableAux::computeValue(), ProjectionAux::computeValue(), PenetrationAux::computeValue(), ConcentricCircleMesh::ConcentricCircleMesh(), ConditionalEnableControl::ConditionalEnableControl(), TimeStepper::constrainStep(), LibtorchNeuralNetControl::controlNeuralNet(), ParsedConvergence::convertRealToBool(), CoupledForceNodalKernel::CoupledForceNodalKernel(), MultiApp::createApp(), AddVariableAction::createInitialConditionAction(), Function::curl(), MooseVariableFV< Real >::curlPhi(), CutMeshByLevelSetGenerator::CutMeshByLevelSetGenerator(), CutMeshByPlaneGenerator::CutMeshByPlaneGenerator(), SidesetInfoVectorPostprocessor::dataHelper(), DebugResidualAux::DebugResidualAux(), ReporterTransferInterface::declareClone(), MeshGenerator::declareMeshProperty(), ReporterTransferInterface::declareVectorClone(), FunctorRelationshipManager::delete_remote_elements(), MooseMesh::deleteRemoteElements(), BicubicSplineFunction::derivative(), DerivativeSumMaterialTempl< is_ad >::DerivativeSumMaterialTempl(), MooseMesh::detectPairedSidesets(), FEProblemBase::determineSolverSystem(), DGKernel::DGKernel(), MeshDiagnosticsGenerator::diagnosticsLog(), DistributedPositions::DistributedPositions(), Function::div(), FunctorBinnedValuesDivision::divisionIndex(), MooseVariableFV< Real >::divPhi(), FunctorRelationshipManager::dofmap_reinit(), EigenProblem::doFreeNonlinearPowerIterations(), FEProblemBase::duplicateVariableCheck(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), Eigenvalues::Eigenvalues(), ElementalVariableValue::ElementalVariableValue(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementIntegerAux::ElementIntegerAux(), ElementMaterialSampler::ElementMaterialSampler(), ElementQualityAux::ElementQualityAux(), ElementSubdomainModifierBase::ElementSubdomainModifierBase(), ElementUOAux::ElementUOAux(), DistributedRectilinearMeshGenerator::elemId(), ProjectionAux::elemOnNodeVariableIsDefinedOn(), EigenKernel::enabled(), MooseMesh::errorIfDistributedMesh(), SideIntegralPostprocessor::errorNoFaceInfo(), SideIntegralFunctorPostprocessorTempl< false >::errorNoFaceInfo(), SolutionUserObjectBase::evalMeshFunction(), SolutionUserObjectBase::evalMeshFunctionGradient(), SolutionUserObjectBase::evalMultiValuedMeshFunction(), SolutionUserObjectBase::evalMultiValuedMeshFunctionGradient(), MultiAppGeneralFieldTransfer::examineReceivedValueConflicts(), RealToBoolChainControl::execute(), MultiAppMFEMCopyTransfer::execute(), DiscreteElementUserObject::execute(), RestartableDataReporter::execute(), MultiAppScalarToAuxScalarTransfer::execute(), MultiAppPostprocessorToAuxScalarTransfer::execute(), NodalValueSampler::execute(), MultiAppPostprocessorTransfer::execute(), PositionsFunctorValueSampler::execute(), ElementQualityChecker::execute(), MultiAppPostprocessorInterpolationTransfer::execute(), GreaterThanLessThanPostprocessor::execute(), PointValue::execute(), MultiAppVariableValueSampleTransfer::execute(), MultiAppVariableValueSamplePostprocessorTransfer::execute(), FindValueOnLine::execute(), MultiAppNearestNodeTransfer::execute(), MultiAppCopyTransfer::execute(), WebServerControl::execute(), MultiAppGeometricInterpolationTransfer::execute(), MultiAppUserObjectTransfer::execute(), InterfaceQpUserObjectBase::execute(), LeastSquaresFit::execute(), VectorPostprocessorComparison::execute(), LeastSquaresFitHistory::execute(), TimeExtremeValue::execute(), Eigenvalue::execute(), DomainUserObject::execute(), FEProblemBase::execute(), FEProblemBase::executeControls(), MultiAppVectorPostprocessorTransfer::executeFromMultiapp(), MultiAppVectorPostprocessorTransfer::executeToMultiapp(), Exodus::Exodus(), ExplicitSSPRungeKutta::ExplicitSSPRungeKutta(), MultiAppGeneralFieldTransfer::extractOutgoingPoints(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), FEProblemSolve::FEProblemSolve(), FileOutput::FileOutput(), QuadraturePointMultiApp::fillPositions(), CentroidMultiApp::fillPositions(), MultiApp::fillPositions(), MultiAppGeometricInterpolationTransfer::fillSourceInterpolationPoints(), VerifyElementUniqueID::finalize(), VerifyNodalUniqueID::finalize(), DiscreteElementUserObject::finalize(), ElementQualityChecker::finalize(), MemoryUsage::finalize(), PointSamplerBase::finalize(), NearestPointAverage::finalize(), NearestPointIntegralVariablePostprocessor::finalize(), Transfer::find_sys(), BreakMeshByBlockGeneratorBase::findFreeBoundaryId(), FunctionDT::FunctionDT(), ParsedSubdomainGeneratorBase::functionInitialize(), FunctionMaterialBase< is_ad >::FunctionMaterialBase(), FunctionScalarAux::FunctionScalarAux(), FunctionScalarIC::FunctionScalarIC(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), FVInitialConditionTempl< T >::FVInitialConditionTempl(), FVMassMatrix::FVMassMatrix(), FVMatAdvection::FVMatAdvection(), FVScalarLagrangeMultiplierInterface::FVScalarLagrangeMultiplierInterface(), GapValueAux::GapValueAux(), WorkBalance::gather(), ElementOrderConversionGenerator::generate(), BlockToMeshConverterGenerator::generate(), ExtraNodesetGenerator::generate(), FileMeshGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), MoveNodeGenerator::generate(), PlaneIDMeshGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), SideSetsFromNormalsGenerator::generate(), SmoothMeshGenerator::generate(), SubdomainPerElementGenerator::generate(), TiledMeshGenerator::generate(), BreakMeshByBlockGenerator::generate(), FlipSidesetGenerator::generate(), CoarsenBlockGenerator::generate(), GeneratedMeshGenerator::generate(), MeshDiagnosticsGenerator::generate(), MeshRepairGenerator::generate(), SideSetsFromPointsGenerator::generate(), MeshCollectionGenerator::generate(), AdvancedExtruderGenerator::generate(), AllSideSetsByNormalsGenerator::generate(), CombinerGenerator::generate(), MeshExtruderGenerator::generate(), ParsedGenerateNodeset::generate(), SideSetsFromBoundingBoxGenerator::generate(), StackGenerator::generate(), StitchedMeshGenerator::generate(), XYZDelaunayGenerator::generate(), CutMeshByLevelSetGeneratorBase::generate(), SpiralAnnularMeshGenerator::generate(), XYDelaunayGenerator::generate(), XYMeshLineCutter::generate(), PatternedMeshGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), DistributedRectilinearMeshGenerator::generate(), BoundingBoxNodeSetGenerator::generate(), MeshGenerator::generateData(), GeneratedMesh::GeneratedMesh(), GeneratedMeshGenerator::GeneratedMeshGenerator(), MeshGenerator::generateInternal(), CircularBoundaryCorrectionGenerator::generateRadialCorrectionFactor(), RandomICBase::generateRandom(), GenericConstantMaterialTempl< is_ad >::GenericConstantMaterialTempl(), GenericConstantVectorMaterialTempl< is_ad >::GenericConstantVectorMaterialTempl(), GenericFunctionMaterialTempl< is_ad >::GenericFunctionMaterialTempl(), GenericFunctionVectorMaterialTempl< is_ad >::GenericFunctionVectorMaterialTempl(), GenericFunctorGradientMaterialTempl< is_ad >::GenericFunctorGradientMaterialTempl(), GenericFunctorMaterialTempl< is_ad >::GenericFunctorMaterialTempl(), GenericFunctorTimeDerivativeMaterialTempl< is_ad >::GenericFunctorTimeDerivativeMaterialTempl(), GenericVectorFunctorMaterialTempl< is_ad >::GenericVectorFunctorMaterialTempl(), DisplacedProblem::getActualFieldVariable(), FEProblemBase::getActualFieldVariable(), DisplacedProblem::getArrayVariable(), FEProblemBase::getArrayVariable(), MooseMesh::getAxisymmetricRadialCoord(), MooseMesh::getBlockConnectedBlocks(), VariableOldValueBounds::getBound(), MooseMesh::getBoundaryID(), MultiApp::getBoundingBox(), ChainControl::getChainControlDataByName(), MooseMesh::getCoarseningMap(), MultiApp::getCommandLineArgs(), MooseVariableBase::getContinuity(), Control::getControllableParameterByName(), FEProblemBase::getConvergence(), MooseMesh::getCoordSystem(), PhysicsBase::getCoupledPhysics(), PropertyReadFile::getData(), DataFileInterface::getDataFilePath(), TransfiniteMeshGenerator::getDiscreteEdge(), FEProblemBase::getDistribution(), MooseVariableBase::getDofIndices(), VariableCondensationPreconditioner::getDofToCondense(), TransfiniteMeshGenerator::getEdge(), GhostingUserObject::getElementalValue(), ElementUOProvider::getElementalValueLong(), ElementUOProvider::getElementalValueReal(), PropertyReadFile::getElementData(), MooseMesh::getElementIDIndex(), Material::getElementIDNeighbor(), Material::getElementIDNeighborByName(), MooseMesh::getElemIDMapping(), MooseMesh::getElemIDsOnBlocks(), MultiAppFieldTransfer::getEquationSystem(), MultiApp::getExecutioner(), MFEMVectorFESpace::getFECName(), MultiAppTransfer::getFromMultiApp(), MultiAppTransfer::getFromMultiAppInfo(), FEProblemBase::getFunction(), SubProblem::getFunctor(), FEProblemBase::getFVMatsAndDependencies(), MooseMesh::getGeneralAxisymmetricCoordAxis(), DistributedRectilinearMeshGenerator::getGhostNeighbors(), DistributedRectilinearMeshGenerator::getIndices(), SolutionUserObjectBase::getLocalVarIndex(), Material::getMaterialByName(), FEProblemBase::getMaterialData(), SubProblem::getMatrixTagID(), AnnularMesh::getMaxInDimension(), GeneratedMesh::getMaxInDimension(), FEProblemBase::getMaxQps(), FEProblemBase::getMeshDivision(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), AnnularMesh::getMinInDimension(), GeneratedMesh::getMinInDimension(), MultiAppTransfer::getMultiApp(), DistributedRectilinearMeshGenerator::getNeighbors(), Times::getNextTime(), MooseMesh::getNodeBlockIds(), PropertyReadFile::getNodeData(), MooseMesh::getNodeList(), FEProblemBase::getNonlinearConvergenceNames(), EigenProblem::getNonlinearEigenSystem(), FEProblemBase::getNonlinearSystem(), MooseMesh::getPairedBoundaryMapping(), MaterialOutputAction::getParams(), ImageMeshGenerator::GetPixelInfo(), ImageMesh::GetPixelInfo(), PlaneIDMeshGenerator::getPlaneID(), Positions::getPosition(), Positions::getPositions(), FEProblemBase::getPositionsObject(), Positions::getPositionsVector2D(), Positions::getPositionsVector3D(), Positions::getPositionsVector4D(), PostprocessorInterface::getPostprocessorValueByNameInternal(), Times::getPreviousTime(), ComponentMaterialPropertyInterface::getPropertyValue(), InterfaceQpUserObjectBase::getQpValue(), MooseMesh::getRefinementMap(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), FEProblemBase::getSampler(), WebServerControl::getScalarJSONValue(), DisplacedProblem::getScalarVariable(), FEProblemBase::getScalarVariable(), MooseObject::getSharedPtr(), InterfaceQpUserObjectBase::getSideAverageValue(), PhysicsBase::getSolverSystem(), DisplacedProblem::getStandardVariable(), FEProblemBase::getStandardVariable(), MooseMesh::getSubdomainBoundaryIds(), TimedSubdomainModifier::getSubdomainIDAndCheck(), DisplacedProblem::getSystem(), FEProblemBase::getSystem(), Times::getTimeAtIndex(), FEProblemBase::getTimeFromStateArg(), TransientBase::getTimeIntegratorNames(), Times::getTimes(), MultiAppTransfer::getToMultiApp(), MultiAppTransfer::getToMultiAppInfo(), MooseMesh::getUniqueCoordSystem(), FEProblemBase::getUserObject(), FEProblemBase::getUserObjectBase(), UserObjectInterface::getUserObjectBaseByName(), UserObjectInterface::getUserObjectName(), NumRelationshipManagers::getValue(), VectorPostprocessorComponent::getValue(), Residual::getValue(), SideAverageValue::getValue(), JSONFileReader::getValue(), LineValueSampler::getValue(), FindValueOnLine::getValueAtPoint(), SubProblem::getVariableHelper(), JSONFileReader::getVector(), VectorPostprocessorInterface::getVectorPostprocessorName(), SubProblem::getVectorTag(), SubProblem::getVectorTagID(), DisplacedProblem::getVectorVariable(), FEProblemBase::getVectorVariable(), GhostingFromUOAux::GhostingFromUOAux(), MultiApp::globalAppToLocal(), MooseParsedVectorFunction::gradient(), Function::gradient(), FEProblemBase::handleException(), Terminator::handleMessage(), MooseVariableBase::hasDoFsOnNodes(), PostprocessorInterface::hasPostprocessor(), PostprocessorInterface::hasPostprocessorByName(), ReporterInterface::hasReporterValue(), ReporterInterface::hasReporterValueByName(), VectorPostprocessorInterface::hasVectorPostprocessor(), VectorPostprocessorInterface::hasVectorPostprocessorByName(), TransientBase::incrementStepOrReject(), FixedPointIterationAdaptiveDT::init(), CrankNicolson::init(), CSVTimeSequenceStepper::init(), ExplicitTimeIntegrator::init(), EigenExecutionerBase::init(), TransientBase::init(), AddAuxVariableAction::init(), IterationAdaptiveDT::init(), Eigenvalue::init(), AddVariableAction::init(), MooseMesh::init(), Sampler::init(), FEProblemBase::init(), MultiApp::init(), FEProblemBase::initialAdaptMesh(), NestedDivision::initialize(), DistributedPositions::initialize(), ReporterPositions::initialize(), TransformedPositions::initialize(), FunctorPositions::initialize(), ElementGroupCentroidPositions::initialize(), ReporterTimes::initialize(), FunctorTimes::initialize(), ParsedConvergence::initializeConstantSymbol(), PhysicsBase::initializePhysics(), MultiAppCloneReporterTransfer::initialSetup(), SolutionIC::initialSetup(), PiecewiseLinearBase::initialSetup(), MultiAppConservativeTransfer::initialSetup(), IntegralPreservingFunctionIC::initialSetup(), ChainControlDataPostprocessor::initialSetup(), PiecewiseLinear::initialSetup(), FullSolveMultiApp::initialSetup(), CoarsenedPiecewiseLinear::initialSetup(), MultiAppDofCopyTransfer::initialSetup(), LinearFVAdvection::initialSetup(), MultiAppGeneralFieldNearestLocationTransfer::initialSetup(), LinearFVAnisotropicDiffusion::initialSetup(), LinearFVDiffusion::initialSetup(), SolutionScalarAux::initialSetup(), ExplicitTimeIntegrator::initialSetup(), SolutionAux::initialSetup(), ReferenceResidualConvergence::initialSetup(), NodalVariableValue::initialSetup(), HDGKernel::initialSetup(), Axisymmetric2D3DSolutionFunction::initialSetup(), Exodus::initialSetup(), CSV::initialSetup(), MooseParsedFunction::initialSetup(), SolutionUserObjectBase::initialSetup(), FEProblemBase::initialSetup(), SubProblem::initialSetup(), AdvancedOutput::initOutputList(), MFEMProblem::initProblemOperator(), AdvancedOutput::initShowHideLists(), Function::integral(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceIntegralVariableValuePostprocessor::InterfaceIntegralVariableValuePostprocessor(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), InterfaceTimeKernel::InterfaceTimeKernel(), InternalSideIndicator::InternalSideIndicator(), MultiAppGeometricInterpolationTransfer::interpolateTargetPoints(), EigenExecutionerBase::inversePowerIteration(), InversePowerMethod::InversePowerMethod(), Sampler::isAdaptiveSamplingCompleted(), MooseMesh::isBoundaryFullyExternalToSubdomains(), MooseVariableBase::isNodal(), IterationAdaptiveDT::IterationAdaptiveDT(), IterationCountConvergence::IterationCountConvergence(), LeastSquaresFit::LeastSquaresFit(), LibmeshPartitioner::LibmeshPartitioner(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), LinearCombinationPostprocessor::LinearCombinationPostprocessor(), LinearNodalConstraint::LinearNodalConstraint(), LineMaterialSamplerBase< Real >::LineMaterialSamplerBase(), LineSearch::lineSearch(), LineValueSampler::LineValueSampler(), MultiAppGeneralFieldTransfer::locatePointReceivers(), LowerBoundNodalKernel::LowerBoundNodalKernel(), MooseLinearVariableFV< Real >::lowerDError(), ParsedConvergence::makeParsedFunction(), PNGOutput::makePNG(), ReporterPointMarker::markerSetup(), SubProblem::markFamilyPRefinement(), MassMatrix::MassMatrix(), Material::Material(), MaterialRealTensorValueAuxTempl< is_ad >::MaterialRealTensorValueAuxTempl(), MaterialRealVectorValueAuxTempl< T, is_ad, is_functor >::MaterialRealVectorValueAuxTempl(), MaterialStdVectorRealGradientAux::MaterialStdVectorRealGradientAux(), Distribution::median(), FunctorRelationshipManager::mesh_reinit(), SubProblem::meshChanged(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MeshExtruderGenerator::MeshExtruderGenerator(), MeshRepairGenerator::MeshRepairGenerator(), SetupMeshAction::modifyParamsForUseSplit(), MeshMetaDataInterface::mooseErrorInternal(), MooseLinearVariableFV< Real >::MooseLinearVariableFV(), MooseMesh::MooseMesh(), MooseObject::MooseObject(), UserObjectInterface::mooseObjectError(), MooseVariableBase::MooseVariableBase(), MooseVariableConstMonomial::MooseVariableConstMonomial(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppMFEMCopyTransfer::MultiAppMFEMCopyTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), NearestNodeDistanceAux::NearestNodeDistanceAux(), NearestNodeValueAux::NearestNodeValueAux(), FEProblemBase::needsPreviousNewtonIteration(), NewmarkBeta::NewmarkBeta(), NodalConstraint::NodalConstraint(), MooseVariableFV< Real >::nodalDofIndex(), MooseVariableFV< Real >::nodalDofIndexNeighbor(), MooseLinearVariableFV< Real >::nodalError(), MooseVariableFV< Real >::nodalMatrixTagValue(), NodalPatchRecoveryBase::nodalPatchRecovery(), NodalPatchRecoveryAuxBase::NodalPatchRecoveryAuxBase(), NodalScalarKernel::NodalScalarKernel(), MooseVariableFV< Real >::nodalValueArray(), MooseVariableFV< Real >::nodalValueOldArray(), MooseVariableFV< Real >::nodalValueOlderArray(), NodalVariableValue::NodalVariableValue(), MooseVariableFV< Real >::nodalVectorTagValue(), DistributedRectilinearMeshGenerator::nodeId(), MooseVariableFV< Real >::numberOfDofsNeighbor(), NumDOFs::NumDOFs(), NumFailedTimeSteps::NumFailedTimeSteps(), DistributedRectilinearMeshGenerator::numNeighbors(), NumNonlinearIterations::NumNonlinearIterations(), NumVars::NumVars(), Output::onInterval(), FunctorRelationshipManager::operator()(), RelationshipManager::operator==(), ActionComponent::outerSurfaceArea(), ActionComponent::outerSurfaceBoundaries(), XDA::output(), SolutionHistory::output(), Exodus::output(), Output::Output(), AdvancedOutput::outputElementalVariables(), AdvancedOutput::outputInput(), AdvancedOutput::outputNodalVariables(), AdvancedOutput::outputPostprocessors(), AdvancedOutput::outputReporters(), AdvancedOutput::outputScalarVariables(), Exodus::outputSetup(), AdvancedOutput::outputSystemInformation(), Console::outputVectorPostprocessors(), AdvancedOutput::outputVectorPostprocessors(), DistributedRectilinearMeshGenerator::paritionSquarely(), PiecewiseBilinear::parse(), ParsedConvergence::ParsedConvergence(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedExtraElementIDGenerator::ParsedExtraElementIDGenerator(), ParsedODEKernel::ParsedODEKernel(), ParsedPostprocessor::ParsedPostprocessor(), MultiAppConservativeTransfer::performAdjustment(), ExplicitTimeIntegrator::performExplicitSolve(), PetscExternalPartitioner::PetscExternalPartitioner(), MooseVariableFV< Real >::phiLowerSize(), PhysicsBasedPreconditioner::PhysicsBasedPreconditioner(), Executioner::picardSolve(), PIDTransientControl::PIDTransientControl(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), PiecewiseMulticonstant::PiecewiseMulticonstant(), PiecewiseMultiInterpolation::PiecewiseMultiInterpolation(), PiecewiseTabularBase::PiecewiseTabularBase(), CutMeshByLevelSetGeneratorBase::pointPairLevelSetInterception(), SolutionUserObjectBase::pointValueGradientWrapper(), SolutionUserObjectBase::pointValueWrapper(), ReporterInterface::possiblyCheckHasReporter(), VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessorByName(), LStableDirk2::postResidual(), LStableDirk3::postResidual(), ImplicitMidpoint::postResidual(), ExplicitTVDRK2::postResidual(), LStableDirk4::postResidual(), AStableDirk4::postResidual(), ExplicitRK2::postResidual(), EigenProblem::postScaleEigenVector(), VariableCondensationPreconditioner::preallocateCondensedJacobian(), ADKernelValueTempl< T >::precomputeQpJacobian(), Predictor::Predictor(), TransientBase::preExecute(), MooseMesh::prepare(), MooseMesh::prepared(), FixedPointSolve::printFixedPointConvergenceReason(), PseudoTimestep::PseudoTimestep(), MultiApp::readCommandLineArguments(), PropertyReadFile::readData(), SolutionUserObjectBase::readExodusII(), SolutionUserObjectBase::readXda(), CoarsenBlockGenerator::recursiveCoarsen(), FunctorRelationshipManager::redistribute(), ReferenceResidualConvergence::ReferenceResidualConvergence(), Sampler::reinit(), EqualValueEmbeddedConstraint::reinitConstraint(), RelativeSolutionDifferenceNorm::RelativeSolutionDifferenceNorm(), RinglebMesh::RinglebMesh(), RinglebMeshGenerator::RinglebMeshGenerator(), PiecewiseMultiInterpolation::sample(), ScalarComponentIC::ScalarComponentIC(), MortarScalarBase::scalarVariable(), DistributedRectilinearMeshGenerator::scaleNodalPositions(), BicubicSplineFunction::secondDerivative(), MooseVariableFV< Real >::secondPhi(), MooseVariableFV< Real >::secondPhiFace(), MooseVariableFV< Real >::secondPhiFaceNeighbor(), MooseVariableFV< Real >::secondPhiNeighbor(), FunctorRelationshipManager::set_mesh(), MooseVariableBase::setActiveTags(), DistributedRectilinearMeshGenerator::setBoundaryNames(), MooseMesh::setCoordSystem(), FEProblemBase::setCoupling(), PiecewiseBase::setData(), FileOutput::setFileBaseInternal(), MooseMesh::setGeneralAxisymmetricCoordAxes(), FEProblemSolve::setInnerSolve(), MeshGenerator::setMeshProperty(), FVPointValueConstraint::setMyElem(), FEProblemBase::setNonlocalCouplingMatrix(), Sampler::setNumberOfCols(), Sampler::setNumberOfRandomSeeds(), Sampler::setNumberOfRows(), Exodus::setOutputDimensionInExodusWriter(), AddPeriodicBCAction::setPeriodicVars(), MultiAppGeneralFieldTransfer::setSolutionVectorValues(), Split::setup(), TransientMultiApp::setupApp(), SetupMeshAction::setupMesh(), TimeSequenceStepperBase::setupSequence(), TransientBase::setupTimeIntegrator(), TimePeriodBase::setupTimes(), IntegratedBCBase::shouldApply(), SideAdvectiveFluxIntegralTempl< is_ad >::SideAdvectiveFluxIntegralTempl(), SideDiffusiveFluxIntegralTempl< is_ad, Real >::SideDiffusiveFluxIntegralTempl(), SideSetsFromNormalsGenerator::SideSetsFromNormalsGenerator(), SideSetsFromPointsGenerator::SideSetsFromPointsGenerator(), SingleMatrixPreconditioner::SingleMatrixPreconditioner(), SolutionTimeAdaptiveDT::SolutionTimeAdaptiveDT(), SolutionUserObject::SolutionUserObject(), SolutionUserObjectBase::SolutionUserObjectBase(), TimeIntegrator::solve(), FEProblemBase::solverSysNum(), FullSolveMultiApp::solveStep(), SpatialAverageBase::SpatialAverageBase(), UserObject::spatialPoints(), NearestPointIntegralVariablePostprocessor::spatialValue(), NearestPointAverage::spatialValue(), MeshDivisionFunctorReductionVectorPostprocessor::spatialValue(), UserObject::spatialValue(), SpiralAnnularMesh::SpiralAnnularMesh(), SpiralAnnularMeshGenerator::SpiralAnnularMeshGenerator(), WebServerControl::startServer(), StitchedMesh::StitchedMesh(), WebServerControl::stringifyJSONType(), MultiAppGeometricInterpolationTransfer::subdomainIDsNode(), Constraint::subdomainSetup(), NodalUserObject::subdomainSetup(), GeneralUserObject::subdomainSetup(), MaterialBase::subdomainSetup(), FEProblemBase::swapBackMaterialsNeighbor(), DisplacedProblem::systemBaseLinear(), Console::systemInfoFlags(), FEProblemBase::systemNumForVariable(), TerminateChainControl::terminate(), Terminator::Terminator(), CutMeshByLevelSetGeneratorBase::tet4ElemCutter(), ThreadedGeneralUserObject::threadJoin(), DiscreteElementUserObject::threadJoin(), GeneralUserObject::threadJoin(), Function::timeDerivative(), TimedSubdomainModifier::TimedSubdomainModifier(), TimeExtremeValue::TimeExtremeValue(), Function::timeIntegral(), MooseLinearVariableFV< Real >::timeIntegratorError(), TimeIntervalTimes::TimeIntervalTimes(), TimePeriodBase::TimePeriodBase(), VectorPostprocessorVisualizationAux::timestepSetup(), MultiAppMFEMCopyTransfer::transfer(), MultiAppDofCopyTransfer::transfer(), MultiAppShapeEvaluationTransfer::transferVariable(), TransformedPositions::TransformedPositions(), FEProblemBase::trustUserCouplingMatrix(), MooseVariableScalar::uDot(), MooseVariableScalar::uDotDot(), MooseVariableScalar::uDotDotOld(), FEProblemBase::uDotDotOldRequested(), MooseVariableScalar::uDotOld(), FEProblemBase::uDotOldRequested(), Positions::unrollMultiDPositions(), ScalarKernelBase::uOld(), AuxScalarKernel::uOld(), Checkpoint::updateCheckpointFiles(), EqualValueBoundaryConstraint::updateConstrainedNodes(), SolutionUserObjectBase::updateExodusBracketingTimeIndices(), FEProblemBase::updateMaxQps(), UpperBoundNodalKernel::UpperBoundNodalKernel(), NearestPointAverage::userObjectValue(), NearestPointIntegralVariablePostprocessor::userObjectValue(), BoundingBoxIC::value(), PiecewiseConstantFromCSV::value(), IntegralPreservingFunctionIC::value(), Axisymmetric2D3DSolutionFunction::value(), Function::value(), ValueRangeMarker::ValueRangeMarker(), ValueThresholdMarker::ValueThresholdMarker(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), PhysicsBase::variableExists(), MultiAppTransfer::variableIntegrityCheck(), VariableTimeIntegrationAux::VariableTimeIntegrationAux(), AddVariableAction::variableType(), VariableValueVolumeHistogram::VariableValueVolumeHistogram(), VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl(), VectorNodalBC::VectorNodalBC(), SubProblem::vectorTagName(), SubProblem::vectorTagType(), MooseParsedGradFunction::vectorValue(), MooseParsedFunction::vectorValue(), Function::vectorValue(), SubProblem::verifyVectorTags(), ActionComponent::volume(), VTKOutput::VTKOutput(), WebServerControl::WebServerControl(), DOFMapOutput::writeStreamToFile(), and Console::writeStreamToFile().

30  {
31  std::ostringstream oss;
32  moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
33  _moose_base.callMooseError(oss.str(), /* with_prefix = */ true);
34  }
void mooseStreamAll(std::ostringstream &ss)
All of the following are not meant to be called directly - they are called by the normal macros (moos...
Definition: MooseError.C:94
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33

◆ mooseErrorNonPrefixed()

template<typename... Args>
void MooseBaseErrorInterface::mooseErrorNonPrefixed ( Args &&...  args) const
inlineinherited

Emits an error without the prefixing included in mooseError().

Definition at line 40 of file MooseBaseErrorInterface.h.

41  {
42  std::ostringstream oss;
43  moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
44  _moose_base.callMooseError(oss.str(), /* with_prefix = */ false);
45  }
void mooseStreamAll(std::ostringstream &ss)
All of the following are not meant to be called directly - they are called by the normal macros (moos...
Definition: MooseError.C:94
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33

◆ mooseInfo()

template<typename... Args>
void MooseBaseErrorInterface::mooseInfo ( Args &&...  args) const
inlineinherited

Definition at line 98 of file MooseBaseErrorInterface.h.

Referenced by SetupRecoverFileBaseAction::act(), AStableDirk4::AStableDirk4(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), MultiAppGeneralFieldNearestLocationTransfer::evaluateInterpValuesNearestNode(), PIDTransientControl::execute(), ExplicitRK2::ExplicitRK2(), ExplicitTVDRK2::ExplicitTVDRK2(), DataFileInterface::getDataFilePath(), MultiAppTransfer::getPointInTargetAppFrame(), ImplicitMidpoint::ImplicitMidpoint(), PropertyReadFile::initialize(), MultiAppGeneralFieldTransfer::initialSetup(), InversePowerMethod::InversePowerMethod(), LStableDirk2::LStableDirk2(), LStableDirk3::LStableDirk3(), LStableDirk4::LStableDirk4(), PNGOutput::makeMeshFunc(), NonlinearEigen::NonlinearEigen(), SolutionInvalidityOutput::output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), ProjectionAux::ProjectionAux(), ReferenceResidualConvergence::ReferenceResidualConvergence(), FEProblemBase::setRestartFile(), and SymmetryTransformGenerator::SymmetryTransformGenerator().

99  {
101  _console, _moose_base.errorPrefix("information"), std::forward<Args>(args)...);
102  }
void mooseInfoStream(S &oss, Args &&... args)
Definition: MooseError.h:232
std::string errorPrefix(const std::string &error_type) const
Definition: MooseBase.C:43
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ mooseWarning()

template<typename... Args>
void MooseBaseErrorInterface::mooseWarning ( Args &&...  args) const
inlineinherited

Emits a warning prefixed with object name and type.

Definition at line 75 of file MooseBaseErrorInterface.h.

Referenced by AddKernelAction::act(), MeshOnlyAction::act(), AddFunctionAction::act(), MaterialOutputAction::act(), CommonOutputAction::act(), MFEMProblem::addFunction(), MooseMesh::addPeriodicVariable(), DiracKernelBase::addPoint(), BoundaryMarker::BoundaryMarker(), BoundsBase::BoundsBase(), DistributedRectilinearMeshGenerator::buildCube(), MultiAppVariableValueSamplePostprocessorTransfer::cacheElemToPostprocessorData(), CartesianMeshGenerator::CartesianMeshGenerator(), CheckOutputAction::checkConsoleOutput(), MultiAppTransfer::checkMultiAppExecuteOn(), ActionComponent::checkRequiredTasks(), PhysicsBase::checkRequiredTasks(), OversampleOutput::cloneMesh(), MultiAppGeneralFieldTransfer::closestToPosition(), VariableValueElementSubdomainModifier::computeSubdomainID(), GapValueAux::computeValue(), MultiApp::createApp(), DebugResidualAux::DebugResidualAux(), MeshDiagnosticsGenerator::diagnosticsLog(), CylindricalGridDivision::divisionIndex(), SphericalGridDivision::divisionIndex(), CartesianGridDivision::divisionIndex(), ElementMaterialSampler::ElementMaterialSampler(), Postprocessor::evaluateDotWarning(), MeshDivisionFunctorReductionVectorPostprocessor::execute(), ElementQualityChecker::finalize(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), FixedPointSolve::FixedPointSolve(), SubdomainPerElementGenerator::generate(), StitchedMeshGenerator::generate(), ParsedGenerateSideset::generate(), MultiAppTransfer::getAppInfo(), FunctorBinnedValuesDivision::getBinIndex(), DataFileInterface::getDataFilePath(), PointSamplerBase::getLocalElemContainingPoint(), FEProblemBase::getMaterial(), LineValueSampler::getValue(), Terminator::handleMessage(), IndicatorMarker::IndicatorMarker(), SphericalGridDivision::initialize(), ElementGroupCentroidPositions::initialize(), CylindricalGridDivision::initialize(), CartesianGridDivision::initialize(), MultiAppGeneralFieldNearestLocationTransfer::initialSetup(), ReferenceResidualConvergence::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), FEProblemBase::initialSetup(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), MaterialBase::initStatefulProperties(), LeastSquaresFit::LeastSquaresFit(), IterationAdaptiveDT::limitDTToPostprocessorValue(), FEProblemBase::mesh(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), NewmarkBeta::NewmarkBeta(), NodalPatchRecovery::NodalPatchRecovery(), NonlocalIntegratedBC::NonlocalIntegratedBC(), NonlocalKernel::NonlocalKernel(), Output::Output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), PiecewiseConstantFromCSV::PiecewiseConstantFromCSV(), Executioner::problem(), PropertyReadFile::readData(), TestSourceStepper::rejectStep(), MaterialBase::resetQpProperties(), SecondTimeDerivativeAux::SecondTimeDerivativeAux(), MooseMesh::setCoordSystem(), FEProblemBase::sizeZeroes(), TransientMultiApp::solveStep(), Tecplot::Tecplot(), TimeDerivativeAux::TimeDerivativeAux(), Checkpoint::updateCheckpointFiles(), PiecewiseConstantFromCSV::value(), and VariableCondensationPreconditioner::VariableCondensationPreconditioner().

76  {
78  _console, _moose_base.errorPrefix("warning"), std::forward<Args>(args)...);
79  }
std::string errorPrefix(const std::string &error_type) const
Definition: MooseBase.C:43
void mooseWarningStream(S &oss, Args &&... args)
Definition: MooseError.h:184
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ mooseWarningNonPrefixed()

template<typename... Args>
void MooseBaseErrorInterface::mooseWarningNonPrefixed ( Args &&...  args) const
inlineinherited

Emits a warning without the prefixing included in mooseWarning().

Definition at line 85 of file MooseBaseErrorInterface.h.

86  {
87  moose::internal::mooseWarningStream(_console, std::forward<Args>(args)...);
88  }
void mooseWarningStream(S &oss, Args &&... args)
Definition: MooseError.h:184
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ name()

virtual const std::string& MooseBase::name ( ) const
inlinevirtualinherited

Get the name of the class.

Returns
The name of the class

Reimplemented in MooseVariableBase.

Definition at line 57 of file MooseBase.h.

Referenced by AddElementalFieldAction::act(), CopyNodalVarsAction::act(), AdaptivityAction::act(), AddTimeStepperAction::act(), DeprecatedBlockAction::act(), SetupTimeIntegratorAction::act(), AddActionComponentAction::act(), AddVariableAction::act(), DisplayGhostingAction::act(), MaterialOutputAction::act(), AddPeriodicBCAction::act(), FEProblemBase::addAnyRedistributers(), Executioner::addAttributeReporter(), MFEMProblem::addAuxKernel(), FEProblemBase::addAuxKernel(), FEProblemBase::addAuxScalarKernel(), DisplacedProblem::addAuxVariable(), MFEMProblem::addBoundaryCondition(), FEProblemBase::addBoundaryCondition(), PhysicsComponentInterface::addComponent(), FEProblemBase::addConstraint(), FEProblemBase::addConvergence(), FEProblemBase::addDamper(), Registry::addDataFilePath(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), MooseApp::addExecutor(), MooseApp::addExecutorParams(), MFEMProblem::addFESpace(), MFEMProblem::addFunction(), FEProblemBase::addFunction(), SubProblem::addFunctor(), MFEMProblem::addFunctorMaterial(), FEProblemBase::addFunctorMaterial(), FunctorMaterial::addFunctorProperty(), FunctorMaterial::addFunctorPropertyByBlocks(), FEProblemBase::addFVBC(), FEProblemBase::addFVInitialCondition(), FEProblemBase::addFVInterfaceKernel(), FEProblemBase::addFVKernel(), ADDGKernel::ADDGKernel(), FEProblemBase::addHDGIntegratedBC(), FEProblemBase::addHDGKernel(), FEProblemBase::addIndicator(), FEProblemBase::addInitialCondition(), FEProblemBase::addInterfaceKernel(), FEProblemBase::addInterfaceMaterial(), MFEMProblem::addKernel(), FEProblemBase::addKernel(), FEProblemBase::addLinearFVBC(), FEProblemBase::addLinearFVKernel(), FEProblemBase::addMarker(), FEProblemBase::addMaterial(), FEProblemBase::addMaterialHelper(), ComponentMaterialPropertyInterface::addMaterials(), FEProblemBase::addMeshDivision(), MooseApp::addMeshGenerator(), CylinderComponent::addMeshGenerators(), MeshGenerator::addMeshSubgenerator(), MFEMProblem::addMFEMPreconditioner(), MFEMProblem::addMFEMSolver(), FEProblemBase::addMultiApp(), FEProblemBase::addNodalKernel(), FEProblemBase::addObject(), ComponentPhysicsInterface::addPhysics(), SubProblem::addPiecewiseByBlockLambdaFunctor(), MFEMProblem::addPostprocessor(), FEProblemBase::addPostprocessor(), InitialConditionBase::addPostprocessorDependencyHelper(), UserObject::addPostprocessorDependencyHelper(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), Action::addRelationshipManager(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addScalarKernel(), FEProblemBase::addTimeIntegrator(), FEProblemBase::addTransfer(), FEProblemBase::addUserObject(), InitialConditionBase::addUserObjectDependencyHelper(), UserObject::addUserObjectDependencyHelper(), AuxKernelTempl< Real >::addUserObjectDependencyHelper(), DisplacedProblem::addVariable(), FEProblemBase::addVectorPostprocessor(), UserObject::addVectorPostprocessorDependencyHelper(), Output::advancedExecuteOn(), AdvancedExtruderGenerator::AdvancedExtruderGenerator(), MooseApp::appBinaryName(), MooseApp::appendMeshGenerator(), Registry::appNameFromAppPath(), MultiApp::appPostprocessorValue(), MultiApp::appProblem(), MultiApp::appProblemBase(), MultiApp::appUserObjectBase(), ArrayDGKernel::ArrayDGKernel(), ArrayParsedAux::ArrayParsedAux(), PhysicsBase::assignBlocks(), AStableDirk4::AStableDirk4(), AuxKernelTempl< Real >::AuxKernelTempl(), Function::average(), MultiApp::backup(), CoarsenedPiecewiseLinear::buildCoarsenedGrid(), MFEMFESpace::buildFEC(), PiecewiseTabularBase::buildFromFile(), MultiAppVariableValueSamplePostprocessorTransfer::cacheElemToPostprocessorData(), MooseBase::callMooseError(), ChangeOverFixedPointPostprocessor::ChangeOverFixedPointPostprocessor(), ChangeOverTimePostprocessor::ChangeOverTimePostprocessor(), PhysicsBase::checkBlockRestrictionIdentical(), PhysicsBase::checkComponentType(), ParsedConvergence::checkConvergence(), DefaultNonlinearConvergence::checkConvergence(), FEProblemBase::checkDependMaterialsHelper(), ReporterTransferInterface::checkHasReporterValue(), FEProblemBase::checkICRestartError(), Material::checkMaterialProperty(), MooseApp::checkMetaDataIntegrity(), Damper::checkMinDamping(), Checkpoint::checkpointInfo(), Coupleable::checkWritableVar(), CompositeFunction::CompositeFunction(), MaterialBase::computeProperties(), FEProblemBase::computeUserObjectByName(), VectorPostprocessorVisualizationAux::computeValue(), MooseBaseParameterInterface::connectControllableParams(), ConstantPostprocessor::ConstantPostprocessor(), MultiApp::createApp(), MooseApp::createExecutors(), AddVariableAction::createInitialConditionAction(), MeshGeneratorSystem::createMeshGeneratorOrder(), MooseApp::createRecoverablePerfGraph(), CutMeshByLevelSetGenerator::CutMeshByLevelSetGenerator(), CutMeshByPlaneGenerator::CutMeshByPlaneGenerator(), MaterialBase::declareADProperty(), MeshGenerator::declareMeshesForSubByName(), MeshGenerator::declareNullMeshName(), MaterialBase::declareProperty(), DOFMapOutput::demangle(), DerivativeSumMaterialTempl< is_ad >::DerivativeSumMaterialTempl(), Registry::determineDataFilePath(), DGKernel::DGKernel(), DGKernelBase::DGKernelBase(), DomainUserObject::DomainUserObject(), DumpObjectsProblem::dumpObjectHelper(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementMaterialSampler::ElementMaterialSampler(), ElementValueSampler::ElementValueSampler(), EigenKernel::enabled(), MooseMesh::errorIfDistributedMesh(), MooseBase::errorPrefix(), SolutionUserObjectBase::evalMeshFunction(), SolutionUserObjectBase::evalMeshFunctionGradient(), SolutionUserObjectBase::evalMultiValuedMeshFunction(), SolutionUserObjectBase::evalMultiValuedMeshFunctionGradient(), RestartableDataReporter::execute(), PointValue::execute(), MultiAppNearestNodeTransfer::execute(), WebServerControl::execute(), MultiAppGeneralFieldTransfer::execute(), ActionWarehouse::executeActionsWithAction(), Exodus::Exodus(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), FEProblemBase::FEProblemBase(), MultiApp::fillPositions(), PointSamplerBase::finalize(), ChainControl::fullControlDataName(), FunctionDT::FunctionDT(), ParsedSubdomainGeneratorBase::functionInitialize(), FunctionIC::functionName(), FVFunctionIC::functionName(), FunctorPositions::FunctorPositions(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), FVOneVarDiffusionInterface::FVOneVarDiffusionInterface(), MooseServer::gatherDocumentSymbols(), BoundaryDeletionGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), BreakMeshByBlockGenerator::generate(), GeneratedMeshGenerator::generate(), ParsedSubdomainGeneratorBase::generate(), ParsedExtraElementIDGenerator::generate(), StitchedMeshGenerator::generate(), XYDelaunayGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), MeshGenerator::generateInternal(), InterfaceMaterial::getADMaterialProperty(), Material::getADMaterialProperty(), MultiAppTransfer::getAppInfo(), MultiApp::getBoundingBox(), MooseApp::getCheckpointDirectories(), Control::getControllableParameterByName(), Control::getControllableValue(), Control::getControllableValueByName(), FEProblemBase::getConvergence(), Registry::getDataFilePath(), UserObject::getDependObjects(), DistributionInterface::getDistribution(), FEProblemBase::getDistribution(), DistributionInterface::getDistributionByName(), ElementUOProvider::getElementalValueLong(), ElementUOProvider::getElementalValueReal(), MultiApp::getExecutioner(), MooseApp::getExecutor(), FEProblemBase::getExecutor(), OutputWarehouse::getFileNumbers(), FEProblemBase::getFunction(), SubProblem::getFunctor(), NodalPatchRecovery::getGenericMaterialProperty(), InterfaceMaterial::getGenericMaterialProperty(), Material::getGenericMaterialProperty(), AuxKernelTempl< Real >::getGenericMaterialProperty(), InterfaceMaterial::getGenericNeighborMaterialProperty(), InterfaceMaterial::getGenericNeighborMaterialPropertyByName(), Material::getGenericOptionalMaterialProperty(), MaterialBase::getGenericZeroMaterialProperty(), SolutionUserObjectBase::getLocalVarIndex(), Marker::getMarkerValue(), Material::getMaterial(), FEProblemBase::getMaterial(), Material::getMaterialByName(), NodalPatchRecovery::getMaterialProperty(), InterfaceMaterial::getMaterialProperty(), Material::getMaterialProperty(), AuxKernelTempl< Real >::getMaterialProperty(), SubProblem::getMaterialPropertyBlockNames(), SubProblem::getMaterialPropertyBoundaryNames(), NodalPatchRecovery::getMaterialPropertyOld(), InterfaceMaterial::getMaterialPropertyOld(), Material::getMaterialPropertyOld(), AuxKernelTempl< Real >::getMaterialPropertyOld(), NodalPatchRecovery::getMaterialPropertyOlder(), InterfaceMaterial::getMaterialPropertyOlder(), Material::getMaterialPropertyOlder(), AuxKernelTempl< Real >::getMaterialPropertyOlder(), MFEMGeneralUserObject::getMatrixCoefficient(), MeshGenerator::getMesh(), FEProblemBase::getMeshDivision(), MeshGenerator::getMeshesByName(), MooseApp::getMeshGenerator(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), ActionWarehouse::getMooseAppName(), MultiAppTransfer::getMultiApp(), InterfaceMaterial::getNeighborADMaterialProperty(), InterfaceMaterial::getNeighborMaterialProperty(), InterfaceMaterial::getNeighborMaterialPropertyOld(), InterfaceMaterial::getNeighborMaterialPropertyOlder(), MooseServer::getObjectParameters(), Material::getOptionalADMaterialProperty(), Material::getOptionalMaterialProperty(), Material::getOptionalMaterialPropertyOld(), Material::getOptionalMaterialPropertyOlder(), OutputWarehouse::getOutput(), MooseApp::getParam(), FEProblemBase::getPositionsObject(), FEProblemBase::getPostprocessorValueByName(), ComponentMaterialPropertyInterface::getPropertyValue(), ReporterData::getReporterInfo(), MooseApp::getRestartableDataMap(), MooseApp::getRestartableDataMapName(), MooseApp::getRestartableMetaData(), FEProblemBase::getSampler(), MFEMGeneralUserObject::getScalarCoefficient(), TransientBase::getTimeStepperName(), ProjectedStatefulMaterialStorageAction::getTypeEnum(), FEProblemBase::getUserObject(), FEProblemBase::getUserObjectBase(), MFEMGeneralUserObject::getVectorCoefficient(), Terminator::handleMessage(), Control::hasControllableParameterByName(), FEProblemBase::hasConvergence(), FEProblemBase::hasFunction(), SubProblem::hasFunctor(), SubProblem::hasFunctorWithType(), MooseApp::hasMeshGenerator(), AdvancedOutput::hasOutputHelper(), FEProblemBase::hasPostprocessor(), FEProblemBase::hasPostprocessorValueByName(), MooseApp::hasRelationshipManager(), MooseApp::hasRestartableDataMap(), MooseApp::hasRestartableMetaData(), FEProblemBase::hasUserObject(), IterationAdaptiveDT::init(), AddVariableAction::init(), AdvancedOutput::init(), AdvancedOutput::initExecutionTypes(), AttribName::initFrom(), NestedDivision::initialize(), TransformedPositions::initialize(), SideFVFluxBCIntegral::initialSetup(), SolutionScalarAux::initialSetup(), MultiAppProjectionTransfer::initialSetup(), NodalVariableValue::initialSetup(), Console::initialSetup(), SolutionUserObjectBase::initialSetup(), AdvancedOutput::initOutputList(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), MaterialBase::initStatefulProperties(), Function::integral(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), MeshGenerator::isChildMeshGenerator(), MeshGenerator::isNullMeshName(), MooseApp::isParamValid(), MeshGenerator::isParentMeshGenerator(), LinearCombinationFunction::LinearCombinationFunction(), FEProblemBase::logAdd(), Marker::Marker(), MaterialBase::markMatPropRequested(), MatDiffusionBase< Real >::MatDiffusionBase(), Material::Material(), MaterialDerivativeTestKernelBase< Real >::MaterialDerivativeTestKernelBase(), Distribution::median(), MemoryUsageReporter::MemoryUsageReporter(), MeshGenerator::meshPropertyPrefix(), MooseApp::MooseApp(), OutputWarehouse::mooseConsole(), MooseVariableInterface< Real >::MooseVariableInterface(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), NodalPatchRecoveryAuxBase::NodalPatchRecoveryAuxBase(), NodalValueSampler::NodalValueSampler(), Registry::objData(), MeshGenerator::Comparator::operator()(), ProgressOutput::output(), DOFMapOutput::output(), Output::Output(), AdvancedOutput::outputElementalVariables(), ConsoleUtils::outputExecutionInformation(), MaterialOutputAction::outputHelper(), AdvancedOutput::outputInput(), AdvancedOutput::outputNodalVariables(), Exodus::outputPostprocessors(), AdvancedOutput::outputPostprocessors(), TableOutput::outputReporter(), AdvancedOutput::outputReporters(), AdvancedOutput::outputScalarVariables(), AdvancedOutput::outputSystemInformation(), AdvancedOutput::outputVectorPostprocessors(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedExtraElementIDGenerator::ParsedExtraElementIDGenerator(), MooseServer::parseDocumentForDiagnostics(), ParsedODEKernel::ParsedODEKernel(), ComponentPhysicsInterface::physicsExists(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseByBlockFunctorMaterialTempl< T >::PiecewiseByBlockFunctorMaterialTempl(), MooseApp::possiblyLoadRestartableMetaData(), PhysicsBase::prefix(), BlockRestrictionDebugOutput::printBlockRestrictionMap(), PerfGraphLivePrint::printStats(), MultiApp::readCommandLineArguments(), Receiver::Receiver(), Executor::Result::record(), Registry::registerObjectsTo(), FEProblemBase::registerRandomInterface(), MooseApp::registerRestartableDataMapName(), MooseApp::registerRestartableNameWithFilter(), GlobalParamsAction::remove(), MaterialBase::resetQpProperties(), MultiApp::restore(), ScalarComponentIC::ScalarComponentIC(), MultiApp::setAppOutputFileBase(), MooseMesh::setBoundaryName(), Control::setControllableValue(), Control::setControllableValueByName(), GlobalParamsAction::setDoubleIndexParam(), OutputWarehouse::setFileNumbers(), GlobalParamsAction::setParam(), FEProblemBase::setPostprocessorValueByName(), FEProblemBase::setResidualObjectParamsAndLog(), GlobalParamsAction::setScalarParam(), MooseMesh::setSubdomainName(), GlobalParamsAction::setTripleIndexParam(), NodeSetsGeneratorBase::setup(), Split::setup(), SideSetsGeneratorBase::setup(), TransientMultiApp::setupApp(), GlobalParamsAction::setVectorParam(), FullSolveMultiApp::showStatusMessage(), SideSetExtruderGenerator::SideSetExtruderGenerator(), TransientMultiApp::solveStep(), UserObject::spatialValue(), WebServerControl::startServer(), StitchedMesh::StitchedMesh(), SubProblem::storeBoundaryDelayedCheckMatProp(), SubProblem::storeBoundaryMatPropName(), MaterialBase::storeBoundaryZeroMatProp(), SubProblem::storeBoundaryZeroMatProp(), SubProblem::storeSubdomainDelayedCheckMatProp(), SubProblem::storeSubdomainMatPropName(), MaterialBase::storeSubdomainZeroMatProp(), SubProblem::storeSubdomainZeroMatProp(), MaterialBase::subdomainSetup(), TaggingInterface::TaggingInterface(), VectorPostprocessorVisualizationAux::timestepSetup(), to_json(), MultiAppDofCopyTransfer::transfer(), TransientMultiApp::TransientMultiApp(), MooseServer::traverseParseTreeAndFillSymbols(), MooseBase::typeAndName(), MooseBaseParameterInterface::uniqueParameterName(), FVFluxBC::uOnGhost(), FVFluxBC::uOnUSub(), UserObject::UserObject(), UserObjectInterface::userObjectName(), ParsedAux::validateGenericVectorNames(), PhysicsBase::variableExists(), MultiAppTransfer::variableIntegrityCheck(), VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl(), Convergence::verboseOutput(), AdvancedOutput::wantOutput(), Coupleable::writableCoupledValue(), Coupleable::writableVariable(), Console::write(), and MooseApp::writeRestartableMetaData().

57 { return _name; }
const std::string _name
The name of this class.
Definition: MooseBase.h:90

◆ needThreadedCopy()

virtual bool UserObject::needThreadedCopy ( ) const
inlinevirtualinherited

Whether or not a threaded copy of this object is needed when obtaining it in another object, like via the UserObjectInterface.

Derived classes should override this as needed.

Reimplemented in DiscreteElementUserObject, and ThreadedGeneralUserObject.

Definition at line 187 of file UserObject.h.

187 { return false; }

◆ numBoundaryIDs()

unsigned int BoundaryRestrictable::numBoundaryIDs ( ) const
inherited

Return the number of boundaries for this object.

Returns
The number of boundary ids

Definition at line 192 of file BoundaryRestrictable.C.

Referenced by SidesetInfoVectorPostprocessor::initialize().

193 {
194  return (unsigned int)_bnd_ids.size();
195 }
std::set< BoundaryID > _bnd_ids
Set of the boundary ids.

◆ operator()() [1/6]

FunctorBase< Real >::ValueType Moose::FunctorBase< Real >::operator() ( const ElemArg elem,
const StateArg state 
) const
inherited

Same as their evaluate overloads with the same arguments but allows for caching implementation.

These are the methods a user will call in their code

Definition at line 597 of file MooseFunctor.h.

598 {
599  if (_always_evaluate)
600  return evaluate(elem, state);
601 
602  mooseAssert(state.state == 0,
603  "Cached evaluations are only currently supported for the current state.");
604 
605  return queryFVArgCache(_elem_arg_to_value, elem);
606 }
ValueType queryFVArgCache(std::map< SpaceArg, ValueType > &cache_data, const SpaceArg &space) const
check a finite volume spatial argument cache and if invalid then evaluate
Definition: MooseFunctor.h:580
virtual ValueType evaluate(const ElemArg &elem, const StateArg &state) const=0
Evaluate the functor with a given element.
std::map< ElemArg, ValueType > _elem_arg_to_value
Map from element arguments to their cached evaluations.
Definition: MooseFunctor.h:555
bool _always_evaluate
Boolean to check if we always need evaluation.
Definition: MooseFunctor.h:517

◆ operator()() [2/6]

FunctorBase< Real >::ValueType Moose::FunctorBase< Real >::operator() ( const FaceArg face,
const StateArg state 
) const
inherited

Definition at line 610 of file MooseFunctor.h.

611 {
612  checkFace(face_in);
613 
614  if (_always_evaluate)
615  return evaluate(face_in, state);
616 
617  mooseAssert(state.state == 0,
618  "Cached evaluations are only currently supported for the current state.");
619 
620  return queryFVArgCache(_face_arg_to_value, face_in);
621 }
std::map< FaceArg, ValueType > _face_arg_to_value
Map from face arguments to their cached evaluations.
Definition: MooseFunctor.h:558
void checkFace(const Moose::FaceArg &face) const
Examines the incoming face argument.
Definition: MooseFunctor.h:732
ValueType queryFVArgCache(std::map< SpaceArg, ValueType > &cache_data, const SpaceArg &space) const
check a finite volume spatial argument cache and if invalid then evaluate
Definition: MooseFunctor.h:580
virtual ValueType evaluate(const ElemArg &elem, const StateArg &state) const=0
Evaluate the functor with a given element.
bool _always_evaluate
Boolean to check if we always need evaluation.
Definition: MooseFunctor.h:517

◆ operator()() [3/6]

FunctorBase< Real >::ValueType Moose::FunctorBase< Real >::operator() ( const ElemQpArg qp,
const StateArg state 
) const
inherited

Definition at line 656 of file MooseFunctor.h.

657 {
658  if (_always_evaluate)
659  return evaluate(elem_qp, state);
660 
661  const auto elem_id = elem_qp.elem->id();
662  if (elem_id != _current_qp_map_key)
663  {
664  _current_qp_map_key = elem_id;
666  }
667  auto & qp_data = *_current_qp_map_value;
668  const auto qp = elem_qp.qp;
669  const auto * const qrule = elem_qp.qrule;
670  mooseAssert(qrule, "qrule must be non-null");
671 
672  return queryQpCache(qp, *qrule, qp_data, elem_qp, state);
673 }
dof_id_type _current_qp_map_key
Current key for qp map cache.
Definition: MooseFunctor.h:523
std::vector< std::pair< bool, ValueType > > * _current_qp_map_value
Current value for qp map cache.
Definition: MooseFunctor.h:526
ValueType queryQpCache(unsigned int qp, const libMesh::QBase &qrule, std::vector< std::pair< bool, Real >> &qp_cache_data, const SpaceArg &space, const StateArg &state) const
check a qp cache and if invalid then evaluate
Definition: MooseFunctor.h:626
virtual ValueType evaluate(const ElemArg &elem, const StateArg &state) const=0
Evaluate the functor with a given element.
bool _always_evaluate
Boolean to check if we always need evaluation.
Definition: MooseFunctor.h:517
std::unordered_map< dof_id_type, std::vector< std::pair< bool, ValueType > > > _qp_to_value
Cached element quadrature point functor property evaluations.
Definition: MooseFunctor.h:533

◆ operator()() [4/6]

FunctorBase< Real >::ValueType Moose::FunctorBase< Real >::operator() ( const ElemSideQpArg qp,
const StateArg state 
) const
inherited

Definition at line 677 of file MooseFunctor.h.

678 {
679  if (_always_evaluate)
680  return evaluate(elem_side_qp, state);
681 
682  const Elem * const elem = elem_side_qp.elem;
683  mooseAssert(elem, "elem must be non-null");
684  const auto elem_id = elem->id();
685  if (elem_id != _current_side_qp_map_key)
686  {
687  _current_side_qp_map_key = elem_id;
689  }
690  auto & side_qp_data = *_current_side_qp_map_value;
691  const auto side = elem_side_qp.side;
692  const auto qp = elem_side_qp.qp;
693  const auto * const qrule = elem_side_qp.qrule;
694  mooseAssert(qrule, "qrule must be non-null");
695 
696  // Check and see whether we even have sized for this side
697  if (side >= side_qp_data.size())
698  side_qp_data.resize(elem->n_sides());
699 
700  // Ok we were sized enough for our side
701  auto & qp_data = side_qp_data[side];
702  return queryQpCache(qp, *qrule, qp_data, elem_side_qp, state);
703 }
std::unordered_map< dof_id_type, std::vector< std::vector< std::pair< bool, ValueType > > > > _side_qp_to_value
Cached element quadrature point functor property evaluations.
Definition: MooseFunctor.h:552
ValueType queryQpCache(unsigned int qp, const libMesh::QBase &qrule, std::vector< std::pair< bool, Real >> &qp_cache_data, const SpaceArg &space, const StateArg &state) const
check a qp cache and if invalid then evaluate
Definition: MooseFunctor.h:626
virtual ValueType evaluate(const ElemArg &elem, const StateArg &state) const=0
Evaluate the functor with a given element.
dof_id_type _current_side_qp_map_key
Current key for side-qp map cache.
Definition: MooseFunctor.h:539
std::vector< std::vector< std::pair< bool, ValueType > > > * _current_side_qp_map_value
Current value for side-qp map cache.
Definition: MooseFunctor.h:542
bool _always_evaluate
Boolean to check if we always need evaluation.
Definition: MooseFunctor.h:517

◆ operator()() [5/6]

FunctorBase< Real >::ValueType Moose::FunctorBase< Real >::operator() ( const ElemPointArg elem_point,
const StateArg state 
) const
inherited

Definition at line 707 of file MooseFunctor.h.

708 {
709  return evaluate(elem_point, state);
710 }
virtual ValueType evaluate(const ElemArg &elem, const StateArg &state) const=0
Evaluate the functor with a given element.

◆ operator()() [6/6]

FunctorBase< Real >::ValueType Moose::FunctorBase< Real >::operator() ( const NodeArg node,
const StateArg state 
) const
inherited

Definition at line 724 of file MooseFunctor.h.

725 {
726  mooseAssert(node.subdomain_ids, "Subdomain IDs must be supplied to the node argument");
727  return evaluate(node, state);
728 }
virtual ValueType evaluate(const ElemArg &elem, const StateArg &state) const=0
Evaluate the functor with a given element.

◆ paramError()

template<typename... Args>
void MooseBaseParameterInterface::paramError ( const std::string &  param,
Args...  args 
) const
inherited

Emits an error prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message.

If this object's parameters were not created directly by the Parser, then this function falls back to the normal behavior of mooseError - only printing a message using the given args.

Definition at line 237 of file MooseBaseParameterInterface.h.

Referenced by HierarchicalGridPartitioner::_do_partition(), AutoCheckpointAction::act(), SetupDebugAction::act(), AddPeriodicBCAction::act(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), DiffusionCG::addFEKernels(), DiffusionFV::addFVKernels(), ADDGKernel::ADDGKernel(), CylinderComponent::addMeshGenerators(), AddPeriodicBCAction::AddPeriodicBCAction(), ReporterPointSource::addPoints(), DiffusionCG::addSolverVariables(), ADIntegratedBCTempl< T >::ADIntegratedBCTempl(), ADKernelTempl< T >::ADKernelTempl(), ADNodalKernel::ADNodalKernel(), ADPenaltyPeriodicSegmentalConstraint::ADPenaltyPeriodicSegmentalConstraint(), ADPeriodicSegmentalConstraint::ADPeriodicSegmentalConstraint(), AdvancedExtruderGenerator::AdvancedExtruderGenerator(), AdvectiveFluxAux::AdvectiveFluxAux(), ADVectorFunctionDirichletBC::ADVectorFunctionDirichletBC(), AnnularMesh::AnnularMesh(), AnnularMeshGenerator::AnnularMeshGenerator(), ArrayBodyForce::ArrayBodyForce(), ArrayDGKernel::ArrayDGKernel(), ArrayDGLowerDKernel::ArrayDGLowerDKernel(), ArrayDirichletBC::ArrayDirichletBC(), ArrayHFEMDirichletBC::ArrayHFEMDirichletBC(), ArrayIntegratedBC::ArrayIntegratedBC(), ArrayKernel::ArrayKernel(), ArrayLowerDIntegratedBC::ArrayLowerDIntegratedBC(), ArrayParsedAux::ArrayParsedAux(), ArrayPenaltyDirichletBC::ArrayPenaltyDirichletBC(), ArrayVacuumBC::ArrayVacuumBC(), ParsedSubdomainIDsGenerator::assignElemSubdomainID(), AuxKernelTempl< Real >::AuxKernelTempl(), BatchMeshGeneratorAction::BatchMeshGeneratorAction(), BlockDeletionGenerator::BlockDeletionGenerator(), BlockWeightedPartitioner::BlockWeightedPartitioner(), BoundsBase::BoundsBase(), BreakMeshByBlockGenerator::BreakMeshByBlockGenerator(), BuildArrayVariableAux::BuildArrayVariableAux(), PiecewiseTabularBase::buildFromFile(), MFEMMesh::buildMesh(), CartesianGridDivision::CartesianGridDivision(), checkComponent(), MeshGenerator::checkGetMesh(), ComponentInitialConditionInterface::checkInitialConditionsAllRequested(), BatchMeshGeneratorAction::checkInputParameterType(), PhysicsBase::checkIntegrityEarly(), PostprocessorInterface::checkParam(), FEProblemBase::checkProblemIntegrity(), MultiAppReporterTransfer::checkSiblingsTransferSupported(), Coupleable::checkVar(), MultiAppTransfer::checkVariable(), CircularBoundaryCorrectionGenerator::CircularBoundaryCorrectionGenerator(), CircularBoundaryCorrectionGenerator::circularCenterCalculator(), MultiAppGeneralFieldTransfer::closestToPosition(), CoarsenBlockGenerator::CoarsenBlockGenerator(), CombinerGenerator::CombinerGenerator(), ComponentInitialConditionInterface::ComponentInitialConditionInterface(), ComponentMaterialPropertyInterface::ComponentMaterialPropertyInterface(), CompositionDT::CompositionDT(), FunctorAux::computeValue(), ConcentricCircleMeshGenerator::ConcentricCircleMeshGenerator(), LibtorchNeuralNetControl::conditionalParameterError(), ConservativeAdvectionTempl< is_ad >::ConservativeAdvectionTempl(), ConstantVectorPostprocessor::ConstantVectorPostprocessor(), ContainsPointAux::ContainsPointAux(), CopyValueAux::CopyValueAux(), Coupleable::Coupleable(), CoupledForceTempl< is_ad >::CoupledForceTempl(), CoupledValueFunctionMaterialTempl< is_ad >::CoupledValueFunctionMaterialTempl(), MultiApp::createApp(), MeshGeneratorSystem::createMeshGenerator(), CylindricalGridDivision::CylindricalGridDivision(), ConstantReporter::declareConstantReporterValues(), AccumulateReporter::declareLateValues(), DGKernel::DGKernel(), DGKernelBase::DGKernelBase(), DGLowerDKernel::DGLowerDKernel(), DiffusionFluxAux::DiffusionFluxAux(), DomainUserObject::DomainUserObject(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementLengthAux::ElementLengthAux(), ElementLpNormAux::ElementLpNormAux(), ElementValueSampler::ElementValueSampler(), ElementVectorL2Error::ElementVectorL2Error(), ReporterPointSource::errorCheck(), ExamplePatchMeshGenerator::ExamplePatchMeshGenerator(), MultiAppNearestNodeTransfer::execute(), MultiAppUserObjectTransfer::execute(), ExtraElementIDAux::ExtraElementIDAux(), ExtraElementIntegerDivision::ExtraElementIntegerDivision(), FEProblemSolve::FEProblemSolve(), FileMeshGenerator::FileMeshGenerator(), FillBetweenCurvesGenerator::FillBetweenCurvesGenerator(), FillBetweenSidesetsGenerator::FillBetweenSidesetsGenerator(), ReporterPointSource::fillPoint(), SpatialUserObjectVectorPostprocessor::fillPoints(), CombinerGenerator::fillPositions(), MultiApp::fillPositions(), InternalSideIndicator::finalize(), FixedPointSolve::FixedPointSolve(), ForcingFunctionAux::ForcingFunctionAux(), FullSolveMultiApp::FullSolveMultiApp(), FunctionArrayAux::FunctionArrayAux(), FunctionValuePostprocessor::FunctionValuePostprocessor(), FunctorADConverterTempl< T >::FunctorADConverterTempl(), FunctorAux::FunctorAux(), FunctorBinnedValuesDivision::FunctorBinnedValuesDivision(), FunctorCoordinatesFunctionAux::FunctorCoordinatesFunctionAux(), FunctorElementalGradientAuxTempl< is_ad >::FunctorElementalGradientAuxTempl(), FunctorExtremaPositions::FunctorExtremaPositions(), FunctorIC::FunctorIC(), FunctorPositions::FunctorPositions(), FunctorVectorElementalAuxTempl< is_ad >::FunctorVectorElementalAuxTempl(), FVAdvection::FVAdvection(), FVFluxBC::FVFluxBC(), FVInterfaceKernel::FVInterfaceKernel(), FVOneVarDiffusionInterface::FVOneVarDiffusionInterface(), FVTwoVarContinuityConstraint::FVTwoVarContinuityConstraint(), BoundaryDeletionGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), AddMetaDataGenerator::generate(), BlockToMeshConverterGenerator::generate(), BreakBoundaryOnSubdomainGenerator::generate(), ExtraNodesetGenerator::generate(), FillBetweenCurvesGenerator::generate(), FillBetweenSidesetsGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), ElementsToTetrahedronsConverter::generate(), PlaneIDMeshGenerator::generate(), BlockDeletionGenerator::generate(), BreakMeshByBlockGenerator::generate(), CoarsenBlockGenerator::generate(), FlipSidesetGenerator::generate(), GeneratedMeshGenerator::generate(), ParsedSubdomainGeneratorBase::generate(), RefineBlockGenerator::generate(), RefineSidesetGenerator::generate(), AdvancedExtruderGenerator::generate(), CircularBoundaryCorrectionGenerator::generate(), CombinerGenerator::generate(), MeshCollectionGenerator::generate(), MeshExtruderGenerator::generate(), ParsedCurveGenerator::generate(), ParsedExtraElementIDGenerator::generate(), BreakMeshByElementGenerator::generate(), StackGenerator::generate(), StitchedMeshGenerator::generate(), XYZDelaunayGenerator::generate(), XYDelaunayGenerator::generate(), XYMeshLineCutter::generate(), CutMeshByLevelSetGeneratorBase::generate(), PatternedMeshGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), GeneratedMeshGenerator::GeneratedMeshGenerator(), GenericFunctorGradientMaterialTempl< is_ad >::GenericFunctorGradientMaterialTempl(), GenericFunctorMaterialTempl< is_ad >::GenericFunctorMaterialTempl(), GenericFunctorTimeDerivativeMaterialTempl< is_ad >::GenericFunctorTimeDerivativeMaterialTempl(), GenericVectorFunctorMaterialTempl< is_ad >::GenericVectorFunctorMaterialTempl(), PropertyReadFile::getBlockData(), ComponentBoundaryConditionInterface::getBoundaryCondition(), MultiApp::getCommandLineArgs(), PropertyReadFile::getData(), PropertyReadFile::getFileNames(), Sampler::getGlobalSamples(), ComponentInitialConditionInterface::getInitialCondition(), MultiAppNearestNodeTransfer::getLocalEntitiesAndComponents(), Sampler::getLocalSamples(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), Sampler::getNextLocalRow(), FEProblemSolve::getParamFromNonlinearSystemVectorParam(), PostprocessorInterface::getPostprocessorNameInternal(), PostprocessorInterface::getPostprocessorValueInternal(), MultiAppNearestNodeTransfer::getTargetLocalNodes(), UserObjectInterface::getUserObjectBase(), UserObjectInterface::getUserObjectName(), HFEMDirichletBC::HFEMDirichletBC(), AddVariableAction::init(), MultiApp::init(), DistributedPositions::initialize(), BlockWeightedPartitioner::initialize(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), PhysicsBase::initializePhysics(), MultiAppCloneReporterTransfer::initialSetup(), SolutionIC::initialSetup(), SideFVFluxBCIntegral::initialSetup(), ElementSubdomainModifierBase::initialSetup(), MultiAppVariableValueSamplePostprocessorTransfer::initialSetup(), MultiAppDofCopyTransfer::initialSetup(), MultiAppGeneralFieldNearestLocationTransfer::initialSetup(), HistogramVectorPostprocessor::initialSetup(), ReferenceResidualConvergence::initialSetup(), PiecewiseConstantFromCSV::initialSetup(), LibtorchControlValuePostprocessor::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), AddMetaDataGenerator::inputChecker(), IntegratedBC::IntegratedBC(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceValueUserObjectAux::InterfaceValueUserObjectAux(), InternalSideIndicator::InternalSideIndicator(), InterpolatedStatefulMaterialTempl< T >::InterpolatedStatefulMaterialTempl(), InversePowerMethod::InversePowerMethod(), IterationAdaptiveDT::IterationAdaptiveDT(), MultiApp::keepSolutionDuringRestore(), Kernel::Kernel(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), LinearCombinationFunction::LinearCombinationFunction(), LowerDIntegratedBC::LowerDIntegratedBC(), PNGOutput::makeMeshFunc(), MatCoupledForce::MatCoupledForce(), MaterialADConverterTempl< T >::MaterialADConverterTempl(), MaterialFunctorConverterTempl< T >::MaterialFunctorConverterTempl(), PatternedMeshGenerator::mergeSubdomainNameMaps(), MeshCollectionGenerator::MeshCollectionGenerator(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MeshDivisionAux::MeshDivisionAux(), MeshGenerator::MeshGenerator(), MeshGeneratorComponent::MeshGeneratorComponent(), MFEMGenericConstantFunctorMaterial::MFEMGenericConstantFunctorMaterial(), MFEMGenericConstantVectorFunctorMaterial::MFEMGenericConstantVectorFunctorMaterial(), MFEMGenericFunctorMaterial::MFEMGenericFunctorMaterial(), MFEMGenericFunctorVectorMaterial::MFEMGenericFunctorVectorMaterial(), MooseLinearVariableFV< Real >::MooseLinearVariableFV(), UserObjectInterface::mooseObjectError(), MoosePreconditioner::MoosePreconditioner(), MooseVariableBase::MooseVariableBase(), MortarConstraintBase::MortarConstraintBase(), MortarNodalAuxKernelTempl< ComputeValueType >::MortarNodalAuxKernelTempl(), MultiApp::moveApp(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppCloneReporterTransfer::MultiAppCloneReporterTransfer(), MultiAppGeneralFieldNearestLocationTransfer::MultiAppGeneralFieldNearestLocationTransfer(), MultiAppGeneralFieldShapeEvaluationTransfer::MultiAppGeneralFieldShapeEvaluationTransfer(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppGeometricInterpolationTransfer::MultiAppGeometricInterpolationTransfer(), MultiAppNearestNodeTransfer::MultiAppNearestNodeTransfer(), MultiAppPostprocessorInterpolationTransfer::MultiAppPostprocessorInterpolationTransfer(), MultiAppPostprocessorToAuxScalarTransfer::MultiAppPostprocessorToAuxScalarTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppProjectionTransfer::MultiAppProjectionTransfer(), MultiAppReporterTransfer::MultiAppReporterTransfer(), MultiAppScalarToAuxScalarTransfer::MultiAppScalarToAuxScalarTransfer(), MultiAppShapeEvaluationTransfer::MultiAppShapeEvaluationTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), MultiAppVariableValueSampleTransfer::MultiAppVariableValueSampleTransfer(), MultiAppVectorPostprocessorTransfer::MultiAppVectorPostprocessorTransfer(), MultiSystemSolveObject::MultiSystemSolveObject(), NestedDivision::NestedDivision(), NodalBC::NodalBC(), NodalEqualValueConstraint::NodalEqualValueConstraint(), NodalKernel::NodalKernel(), NodalPatchRecoveryAux::NodalPatchRecoveryAux(), NodalValueSampler::NodalValueSampler(), Output::Output(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedElementDeletionGenerator::ParsedElementDeletionGenerator(), ParsedFunctorMaterialTempl< is_ad >::ParsedFunctorMaterialTempl(), ParsedGenerateNodeset::ParsedGenerateNodeset(), ParsedGenerateSideset::ParsedGenerateSideset(), ParsedNodeTransformGenerator::ParsedNodeTransformGenerator(), PatternedMeshGenerator::PatternedMeshGenerator(), PenaltyPeriodicSegmentalConstraint::PenaltyPeriodicSegmentalConstraint(), PeriodicSegmentalConstraint::PeriodicSegmentalConstraint(), PIDTransientControl::PIDTransientControl(), PlaneDeletionGenerator::PlaneDeletionGenerator(), PlaneIDMeshGenerator::PlaneIDMeshGenerator(), PointwiseRenormalizeVector::PointwiseRenormalizeVector(), PolyLineMeshGenerator::PolyLineMeshGenerator(), ReporterInterface::possiblyCheckHasReporter(), VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor(), LibmeshPartitioner::prepareBlocksForSubdomainPartitioner(), ProjectedMaterialPropertyNodalPatchRecoveryAux::ProjectedMaterialPropertyNodalPatchRecoveryAux(), ProjectionAux::ProjectionAux(), PropertyReadFile::PropertyReadFile(), RandomIC::RandomIC(), MultiApp::readCommandLineArguments(), PropertyReadFile::readData(), SolutionUserObjectBase::readXda(), ReferenceResidualConvergence::ReferenceResidualConvergence(), RefineBlockGenerator::RefineBlockGenerator(), RefineSidesetGenerator::RefineSidesetGenerator(), RenameBlockGenerator::RenameBlockGenerator(), RenameBoundaryGenerator::RenameBoundaryGenerator(), ReporterPointSource::ReporterPointSource(), SecondTimeDerivativeAux::SecondTimeDerivativeAux(), FEProblemBase::setNonlinearConvergenceNames(), MooseMesh::setPartitioner(), NodeSetsGeneratorBase::setup(), SideSetsGeneratorBase::setup(), TimeSequenceStepperBase::setupSequence(), SidesetAroundSubdomainUpdater::SidesetAroundSubdomainUpdater(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), SingleRankPartitioner::SingleRankPartitioner(), SphericalGridDivision::SphericalGridDivision(), SymmetryTransformGenerator::SymmetryTransformGenerator(), Terminator::Terminator(), TimeDerivativeAux::TimeDerivativeAux(), Transfer::Transfer(), TransformGenerator::TransformGenerator(), TransientMultiApp::TransientMultiApp(), ParsedCurveGenerator::tSectionSpaceDefiner(), UniqueExtraIDMeshGenerator::UniqueExtraIDMeshGenerator(), UserObject::UserObject(), Checkpoint::validateExecuteOn(), ParsedAux::validateGenericVectorNames(), ParsedMaterialBase::validateVectorNames(), FunctorIC::value(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), VectorBodyForce::VectorBodyForce(), VectorFunctionDirichletBC::VectorFunctionDirichletBC(), VectorFunctionIC::VectorFunctionIC(), VolumeAux::VolumeAux(), WebServerControl::WebServerControl(), XYDelaunayGenerator::XYDelaunayGenerator(), XYMeshLineCutter::XYMeshLineCutter(), and XYZDelaunayGenerator::XYZDelaunayGenerator().

238 {
239  Moose::show_trace = false;
240  _moose_base.callMooseError(paramErrorMsg(param, std::forward<Args>(args)...),
241  /* with_prefix = */ false);
242  Moose::show_trace = true;
243 }
bool show_trace
Set to true (the default) to print the stack trace with error and warning messages - false to omit it...
Definition: Moose.C:745
const MooseBase & _moose_base
The MooseBase object that inherits this class.
std::string paramErrorMsg(const std::string &param, Args... args) const
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33

◆ parameters()

const InputParameters& MooseBaseParameterInterface::parameters ( ) const
inlineinherited

Get the parameters of the object.

Returns
The parameters of the object

Definition at line 62 of file MooseBaseParameterInterface.h.

Referenced by AddDefaultConvergenceAction::act(), SetupDebugAction::act(), AddActionComponentAction::act(), CommonOutputAction::act(), Action::Action(), FEProblemBase::addAnyRedistributers(), MFEMProblem::addAuxKernel(), FEProblemBase::addAuxKernel(), FEProblemBase::addAuxScalarKernel(), MFEMProblem::addAuxVariable(), DisplacedProblem::addAuxVariable(), MFEMProblem::addBoundaryCondition(), FEProblemBase::addBoundaryCondition(), FEProblemBase::addConstraint(), FEProblemBase::addConvergence(), FEProblemBase::addDamper(), ReferenceResidualProblem::addDefaultNonlinearConvergence(), FEProblemBase::addDefaultNonlinearConvergence(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), MFEMProblem::addFESpace(), MFEMProblem::addFunction(), FEProblemBase::addFunction(), MFEMProblem::addFunctorMaterial(), FEProblemBase::addFunctorMaterial(), FEProblemBase::addFVBC(), FEProblemBase::addFVInitialCondition(), FEProblemBase::addFVInterfaceKernel(), FEProblemBase::addFVKernel(), MFEMProblem::addGridFunction(), FEProblemBase::addHDGIntegratedBC(), FEProblemBase::addHDGKernel(), FEProblemBase::addIndicator(), FEProblemBase::addInitialCondition(), DiffusionPhysicsBase::addInitialConditions(), FEProblemBase::addInterfaceKernel(), FEProblemBase::addInterfaceMaterial(), MFEMProblem::addKernel(), FEProblemBase::addKernel(), FEProblemBase::addLinearFVBC(), FEProblemBase::addLinearFVKernel(), FEProblem::addLineSearch(), FEProblemBase::addMarker(), FEProblemBase::addMaterial(), FEProblemBase::addMaterialHelper(), FEProblemBase::addMeshDivision(), MFEMProblem::addMFEMFESpaceFromMOOSEVariable(), MFEMProblem::addMFEMPreconditioner(), MFEMProblem::addMFEMSolver(), FEProblemBase::addMultiApp(), FEProblemBase::addNodalKernel(), FEProblemBase::addObject(), FEProblemBase::addObjectParamsHelper(), FEProblemBase::addOutput(), MFEMProblem::addPostprocessor(), FEProblemBase::addPostprocessor(), FEProblemBase::addPredictor(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addScalarKernel(), FEProblemBase::addTimeIntegrator(), FEProblemBase::addTransfer(), FEProblemBase::addUserObject(), MFEMProblem::addVariable(), DisplacedProblem::addVariable(), FEProblemBase::addVectorPostprocessor(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), AdvancedOutput::AdvancedOutput(), ADVectorFunctionDirichletBC::ADVectorFunctionDirichletBC(), AnnularMesh::AnnularMesh(), AnnularMeshGenerator::AnnularMeshGenerator(), Action::associateWithParameter(), AuxKernelTempl< Real >::AuxKernelTempl(), AuxScalarKernel::AuxScalarKernel(), BoundsBase::BoundsBase(), MooseMesh::buildTypedMesh(), PostprocessorInterface::checkParam(), AddDefaultConvergenceAction::checkUnusedNonlinearConvergenceParameters(), OversampleOutput::cloneMesh(), LibtorchNeuralNetControl::conditionalParameterError(), Console::Console(), CommonOutputAction::create(), MultiApp::createApp(), Postprocessor::declareValue(), DumpObjectsProblem::deduceNecessaryParameters(), DumpObjectsProblem::dumpObjectHelper(), DumpObjectsProblem::DumpObjectsProblem(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), ElementMaterialSampler::ElementMaterialSampler(), ExamplePatchMeshGenerator::ExamplePatchMeshGenerator(), Executor::Executor(), Exodus::Exodus(), FEProblem::FEProblem(), FEProblemBase::FEProblemBase(), FixedPointSolve::FixedPointSolve(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), GapValueAux::GapValueAux(), ParsedSubdomainGeneratorBase::generate(), MooseBaseParameterInterface::getCheckedPointerParam(), ActionWarehouse::getCurrentActionName(), ExecutorInterface::getExecutor(), Material::getMaterial(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), UserObjectInterface::getUserObjectName(), VectorPostprocessorInterface::getVectorPostprocessorName(), GhostingUserObject::GhostingUserObject(), AttribSystem::initFrom(), AttribDisplaced::initFrom(), BlockRestrictable::initializeBlockRestrictable(), FullSolveMultiApp::initialSetup(), FEProblemBase::initNullSpaceVectors(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceIntegralVariableValuePostprocessor::InterfaceIntegralVariableValuePostprocessor(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), isValid(), IterationAdaptiveDT::IterationAdaptiveDT(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), MFEMCGSolver::MFEMCGSolver(), MFEMGMRESSolver::MFEMGMRESSolver(), MFEMHypreADS::MFEMHypreADS(), MFEMHypreAMS::MFEMHypreAMS(), MFEMHypreBoomerAMG::MFEMHypreBoomerAMG(), MFEMHypreFGMRES::MFEMHypreFGMRES(), MFEMHypreGMRES::MFEMHypreGMRES(), MFEMHyprePCG::MFEMHyprePCG(), MFEMOperatorJacobiSmoother::MFEMOperatorJacobiSmoother(), MFEMSuperLU::MFEMSuperLU(), MooseObject::MooseObject(), UserObjectInterface::mooseObjectError(), MooseVariableInterface< Real >::MooseVariableInterface(), MultiApp::MultiApp(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), NodeFaceConstraint::NodeFaceConstraint(), OverlayMeshGenerator::OverlayMeshGenerator(), PenetrationAux::PenetrationAux(), PicardSolve::PicardSolve(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), ProjectedStatefulMaterialStorageAction::processProperty(), PropertyReadFile::PropertyReadFile(), PseudoTimestep::PseudoTimestep(), RandomIC::RandomIC(), ReferenceResidualConvergence::ReferenceResidualConvergence(), InputParameterWarehouse::removeInputParameters(), OutputWarehouse::resetFileBase(), FEProblem::setInputParametersFEProblem(), FEProblemBase::setInputParametersFEProblem(), FEProblemBase::setResidualObjectParamsAndLog(), SideSetsGeneratorBase::setup(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), SteffensenSolve::SteffensenSolve(), Moose::PetscSupport::storePetscOptions(), DumpObjectsProblem::stringifyParameters(), TaggingInterface::TaggingInterface(), Transfer::Transfer(), TransientBase::TransientBase(), VectorBodyForce::VectorBodyForce(), VectorFunctionDirichletBC::VectorFunctionDirichletBC(), VectorFunctionIC::VectorFunctionIC(), and VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl().

62 { return _pars; }
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

◆ paramInfo()

template<typename... Args>
void MooseBaseParameterInterface::paramInfo ( const std::string &  param,
Args...  args 
) const
inherited

Emits an informational message prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message.

If this object's parameters were not created directly by the Parser, then this function falls back to the normal behavior of mooseInfo - only printing a message using the given args.

Definition at line 254 of file MooseBaseParameterInterface.h.

Referenced by GridPartitioner::_do_partition(), ComboMarker::ComboMarker(), FunctorIC::FunctorIC(), and TransientMultiApp::TransientMultiApp().

255 {
256  mooseInfo(paramErrorMsg(param, std::forward<Args>(args)...));
257 }
void mooseInfo(Args &&... args)
Emit an informational message with the given stringified, concatenated args.
Definition: MooseError.h:369
std::string paramErrorMsg(const std::string &param, Args... args) const

◆ paramWarning()

template<typename... Args>
void MooseBaseParameterInterface::paramWarning ( const std::string &  param,
Args...  args 
) const
inherited

Emits a warning prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message.

If this object's parameters were not created directly by the Parser, then this function falls back to the normal behavior of mooseWarning - only printing a message using the given args.

Definition at line 247 of file MooseBaseParameterInterface.h.

Referenced by GridPartitioner::_do_partition(), EigenProblem::checkProblemIntegrity(), CombinerGenerator::copyIntoMesh(), MultiAppNearestNodeTransfer::execute(), FEProblemSolve::FEProblemSolve(), FixedPointSolve::FixedPointSolve(), UniqueExtraIDMeshGenerator::generate(), PlaneIDMeshGenerator::generate(), Terminator::initialSetup(), MooseMesh::MooseMesh(), FEProblemBase::setPreserveMatrixSparsityPattern(), and Terminator::Terminator().

248 {
249  mooseWarning(paramErrorMsg(param, std::forward<Args>(args)...));
250 }
void mooseWarning(Args &&... args)
Emit a warning message with the given stringified, concatenated args.
Definition: MooseError.h:336
std::string paramErrorMsg(const std::string &param, Args... args) const

◆ perfGraph()

PerfGraph & PerfGraphInterface::perfGraph ( )
inherited

Get the PerfGraph.

Definition at line 78 of file PerfGraphInterface.C.

Referenced by CommonOutputAction::act(), PerfGraphData::finalize(), and PerfGraphOutput::output().

79 {
80  return _pg_moose_app.perfGraph();
81 }
MooseApp & _pg_moose_app
The MooseApp that owns the PerfGraph.
PerfGraph & perfGraph()
Get the PerfGraph for this app.
Definition: MooseApp.h:161

◆ PPName()

const std::string& Postprocessor::PPName ( ) const
inlineinherited

Returns the name of the Postprocessor.

Definition at line 61 of file Postprocessor.h.

61 { return _pp_name; }
const std::string & _pp_name
Post-processor name.
Definition: Postprocessor.h:70

◆ primaryThreadCopy()

UserObject* UserObject::primaryThreadCopy ( )
inlineinherited

Definition at line 173 of file UserObject.h.

173 { return _primary_thread_copy; }
UserObject * _primary_thread_copy
Definition: UserObject.h:229

◆ registerTimedSection() [1/2]

PerfID PerfGraphInterface::registerTimedSection ( const std::string &  section_name,
const unsigned int  level 
) const
protectedinherited

Call to register a named section for timing.

Parameters
section_nameThe name of the code section to be timed
levelThe importance of the timer - lower is more important (0 will always come out)
Returns
The ID of the section - use when starting timing

Definition at line 53 of file PerfGraphInterface.C.

55 {
56  const auto timed_section_name = timedSectionName(section_name);
57  if (!moose::internal::getPerfGraphRegistry().sectionExists(timed_section_name))
58  return moose::internal::getPerfGraphRegistry().registerSection(timed_section_name, level);
59  else
60  return moose::internal::getPerfGraphRegistry().sectionID(timed_section_name);
61 }
PerfID registerSection(const std::string &section_name, const unsigned int level)
Call to register a named section for timing.
std::string timedSectionName(const std::string &section_name) const
PerfID sectionID(const std::string &section_name) const
Given a name return the PerfID The name of the section.
PerfGraphRegistry & getPerfGraphRegistry()
Get the global PerfGraphRegistry singleton.

◆ registerTimedSection() [2/2]

PerfID PerfGraphInterface::registerTimedSection ( const std::string &  section_name,
const unsigned int  level,
const std::string &  live_message,
const bool  print_dots = true 
) const
protectedinherited

Call to register a named section for timing.

Parameters
section_nameThe name of the code section to be timed
levelThe importance of the timer - lower is more important (0 will always come out)
live_messageThe message to be printed to the screen during execution
print_dotsWhether or not progress dots should be printed for this section
Returns
The ID of the section - use when starting timing

Definition at line 64 of file PerfGraphInterface.C.

68 {
69  const auto timed_section_name = timedSectionName(section_name);
70  if (!moose::internal::getPerfGraphRegistry().sectionExists(timed_section_name))
72  timedSectionName(section_name), level, live_message, print_dots);
73  else
74  return moose::internal::getPerfGraphRegistry().sectionID(timed_section_name);
75 }
PerfID registerSection(const std::string &section_name, const unsigned int level)
Call to register a named section for timing.
std::string timedSectionName(const std::string &section_name) const
PerfID sectionID(const std::string &section_name) const
Given a name return the PerfID The name of the section.
PerfGraphRegistry & getPerfGraphRegistry()
Get the global PerfGraphRegistry singleton.

◆ residualSetup() [1/2]

void SetupInterface::residualSetup ( )
virtualinherited

◆ residualSetup() [2/2]

void Moose::FunctorBase< Real >::residualSetup ( )
overridevirtualinherited

Implements Moose::FunctorAbstract.

Reimplemented in Function.

Definition at line 823 of file MooseFunctor.h.

824 {
825  if (_clearance_schedule.count(EXEC_LINEAR))
826  clearCacheData();
827 }
const ExecFlagType EXEC_LINEAR
Definition: Moose.C:29
void clearCacheData()
clear cache data
Definition: MooseFunctor.h:789
std::set< ExecFlagType > _clearance_schedule
How often to clear the material property cache.
Definition: MooseFunctor.h:514

◆ resolveOptionalProperties()

void MaterialPropertyInterface::resolveOptionalProperties ( )
virtualinherited

resolve all optional properties

Reimplemented in Material.

Definition at line 234 of file MaterialPropertyInterface.C.

235 {
236  for (auto & proxy : _optional_property_proxies)
237  proxy->resolve(*this);
238 }
std::vector< std::unique_ptr< OptionalMaterialPropertyProxyBase< MaterialPropertyInterface > > > _optional_property_proxies
optional material properties

◆ restartableName()

std::string Restartable::restartableName ( const std::string &  data_name) const
protectedinherited

Gets the name of a piece of restartable data given a data name, adding the system name and object name prefix.

This should only be used in this interface and in testing.

Definition at line 66 of file Restartable.C.

Referenced by Restartable::declareRecoverableData(), and Restartable::declareRestartableDataHelper().

67 {
68  return _restartable_system_name + "/" + _restartable_name + "/" + data_name;
69 }
std::string _restartable_name
The name of the object.
Definition: Restartable.h:243
const std::string _restartable_system_name
The system name this object is in.
Definition: Restartable.h:230

◆ restricted()

bool BoundaryRestrictable::restricted ( const std::set< BoundaryID > &  ids)
staticinherited

Helper for determining if the object is boundary restricted.

This is needed for the MaterialPropertyInterface.

Definition at line 204 of file BoundaryRestrictable.C.

Referenced by moose::internal::boundaryRestricted(), and BoundaryRestrictable::boundaryRestricted().

205 {
206  return ids.find(Moose::ANY_BOUNDARY_ID) == ids.end();
207 }
const BoundaryID ANY_BOUNDARY_ID
Definition: MooseTypes.C:21

◆ setCacheClearanceSchedule()

void Moose::FunctorBase< Real >::setCacheClearanceSchedule ( const std::set< ExecFlagType > &  clearance_schedule)
inherited

Set how often to clear the functor evaluation cache.

Definition at line 714 of file MooseFunctor.h.

715 {
716  if (clearance_schedule.count(EXEC_ALWAYS))
717  _always_evaluate = true;
718 
719  _clearance_schedule = clearance_schedule;
720 }
const ExecFlagType EXEC_ALWAYS
Definition: Moose.C:44
bool _always_evaluate
Boolean to check if we always need evaluation.
Definition: MooseFunctor.h:517
std::set< ExecFlagType > _clearance_schedule
How often to clear the material property cache.
Definition: MooseFunctor.h:514

◆ setPrimaryThreadCopy()

void UserObject::setPrimaryThreadCopy ( UserObject primary)
inherited

Definition at line 145 of file UserObject.C.

146 {
147  if (!_primary_thread_copy && primary != this)
148  _primary_thread_copy = primary;
149 }
UserObject * _primary_thread_copy
Definition: UserObject.h:229

◆ shouldDuplicateInitialExecution()

bool UserObject::shouldDuplicateInitialExecution ( ) const
inlineinherited

Returns whether or not this user object should be executed twice during the initial condition when depended upon by an IC.

Definition at line 86 of file UserObject.h.

const bool _duplicate_initial_execution
Definition: UserObject.h:222

◆ sort()

template<typename T >
void DependencyResolverInterface::sort ( typename std::vector< T > &  vector)
staticinherited

Given a vector, sort using the getRequested/SuppliedItems sets.

Definition at line 64 of file DependencyResolverInterface.h.

Referenced by TheWarehouse::prepare().

65 {
66  sortDFS(vector);
67 }
static void sortDFS(typename std::vector< T > &vector)
Given a vector, sort using the depth-first search.

◆ sortDFS()

template<typename T >
void DependencyResolverInterface::sortDFS ( typename std::vector< T > &  vector)
staticinherited

Given a vector, sort using the depth-first search.

Class that represents the dependency as a graph

Definition at line 71 of file DependencyResolverInterface.h.

Referenced by DependencyResolverInterface::sort().

72 {
73  if (vector.size() <= 1)
74  return;
75 
80 
81  // Map of suppliers: what is supplied -> by what object
82  std::multimap<std::string, T> suppliers_map;
83  for (auto & v : vector)
84  {
85  // Whether or not this object supplies something, we will always
86  // add it as a node because we want to make sure that it gets returned
87  graph.addNode(v);
88 
89  for (const auto & supplied_item : v->getSuppliedItems())
90  suppliers_map.emplace(supplied_item, v);
91  }
92 
93  // build the dependency graph
94  for (auto & v : vector)
95  for (const auto & requested_item : v->getRequestedItems())
96  {
97  const auto & [begin_it, end_it] = suppliers_map.equal_range(requested_item);
98  for (const auto & [supplier_name, supplier_object] : as_range(begin_it, end_it))
99  {
100  libmesh_ignore(supplier_name);
101 
102  // We allow an object to have a circular dependency within itself; e.g. we choose to
103  // trust a developer knows what they are doing within a single object
104  if (supplier_object != v)
105  graph.addEdge(supplier_object, v);
106  }
107  }
108 
109  const auto & sorted = graph.dfs();
110 
111  // The set here gets unique objects, as it's valid to pass in duplicates
112  mooseAssert(sorted.size() == std::set<T>(vector.begin(), vector.end()).size(), "Size mismatch");
113 
114  vector = sorted;
115 }
void addEdge(const T &a, const T &b)
Add an edge between nodes &#39;a&#39; and &#39;b&#39;.
void libmesh_ignore(const Args &...)
SimpleRange< IndexType > as_range(const std::pair< IndexType, IndexType > &p)
void addNode(const T &a)
Add a node &#39;a&#39; to the graph.
const std::vector< T > & dfs()
Do depth-first search from root nodes to obtain order in which graph nodes should be "executed"...
Class that represents the dependecy as a graph.

◆ spatialPoints()

virtual const std::vector<Point> UserObject::spatialPoints ( ) const
inlinevirtualinherited

Optional interface function for providing the points at which a UserObject attains spatial values.

If a UserObject overrides this function, then other objects that take both the UserObject and points can instead directly use the points specified on the UserObject.

Reimplemented in NearestPointBase< ElementIntegralVariablePostprocessor, ElementVariableVectorPostprocessor >, NearestPointBase< LayeredSideIntegral, SideIntegralVariableUserObject >, NearestPointBase< LayeredAverage, ElementIntegralVariableUserObject >, NearestPointBase< LayeredSideAverage, SideIntegralVariableUserObject >, NearestPointBase< LayeredSideAverageFunctor, SideIntegralFunctorUserObject >, NearestPointBase< LayeredIntegral, ElementIntegralVariableUserObject >, NearestPointBase< ElementAverageValue, ElementVariableVectorPostprocessor >, NearestPointBase< LayeredSideIntegralFunctor, SideIntegralFunctorUserObject >, NearestPointBase< LayeredSideDiffusiveFluxAverage, SideIntegralVariableUserObject >, NearestPointIntegralVariablePostprocessor, FunctionLayeredIntegral, LayeredExtremumMaterialProperty, LayeredIntegralBase< SideIntegralFunctorUserObject >, LayeredIntegralBase< SideIntegralVariableUserObject >, LayeredIntegralBase< ElementIntegralFunctorUserObject >, and LayeredIntegralBase< ElementIntegralVariableUserObject >.

Definition at line 104 of file UserObject.h.

Referenced by SpatialUserObjectVectorPostprocessor::fillPoints().

105  {
106  mooseError("Spatial UserObject interface is not satisfied; spatialPoints() must be overridden");
107  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ spatialValue()

virtual Real UserObject::spatialValue ( const Point &  ) const
inlinevirtualinherited

Optional interface function for "evaluating" a UserObject at a spatial position.

If a UserObject overrides this function that UserObject can then be used in a Transfer to transfer information from one domain to another.

Reimplemented in NearestPointBase< ElementIntegralVariablePostprocessor, ElementVariableVectorPostprocessor >, NearestPointBase< LayeredSideIntegral, SideIntegralVariableUserObject >, NearestPointBase< LayeredAverage, ElementIntegralVariableUserObject >, NearestPointBase< LayeredSideAverage, SideIntegralVariableUserObject >, NearestPointBase< LayeredSideAverageFunctor, SideIntegralFunctorUserObject >, NearestPointBase< LayeredIntegral, ElementIntegralVariableUserObject >, NearestPointBase< ElementAverageValue, ElementVariableVectorPostprocessor >, NearestPointBase< LayeredSideIntegralFunctor, SideIntegralFunctorUserObject >, NearestPointBase< LayeredSideDiffusiveFluxAverage, SideIntegralVariableUserObject >, LineValueSampler, MeshDivisionFunctorReductionVectorPostprocessor, FunctionLayeredIntegral, LayeredExtremumMaterialProperty, LayeredIntegralBase< SideIntegralFunctorUserObject >, LayeredIntegralBase< SideIntegralVariableUserObject >, LayeredIntegralBase< ElementIntegralFunctorUserObject >, LayeredIntegralBase< ElementIntegralVariableUserObject >, PostprocessorSpatialUserObject, NearestPointAverage, and NearestPointIntegralVariablePostprocessor.

Definition at line 93 of file UserObject.h.

Referenced by SpatialUserObjectAux::computeValue(), MultiAppGeneralFieldUserObjectTransfer::evaluateInterpValuesWithUserObjects(), MultiAppUserObjectTransfer::execute(), and SpatialUserObjectVectorPostprocessor::execute().

94  {
95  mooseError(name(), " does not satisfy the Spatial UserObject interface!");
96  }
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ statefulPropertiesAllowed()

void MaterialPropertyInterface::statefulPropertiesAllowed ( bool  stateful_allowed)
inherited

Derived classes can declare whether or not they work with stateful material properties.

See, for example, DiracKernel. By default, they are allowed.

Definition at line 145 of file MaterialPropertyInterface.C.

Referenced by DiracKernelBase::DiracKernelBase(), and DiracKernelTempl< T >::DiracKernelTempl().

146 {
147  _stateful_allowed = stateful_allowed;
148 }
bool _stateful_allowed
True by default.

◆ subdomainSetup()

void SetupInterface::subdomainSetup ( )
virtualinherited

Gets called when the subdomain changes (i.e.

in a Jacobian or residual loop) and before this object is asked to do its job

Reimplemented in MaterialBase, Material, GeneralUserObject, NodalUserObject, Constraint, and ThreadedGeneralUserObject.

Definition at line 61 of file SetupInterface.C.

62 {
63 }

◆ supportsElemSideQpArg()

bool Postprocessor::supportsElemSideQpArg ( ) const
inlinefinaloverridevirtualinherited

Whether this functor supports evaluation with ElemSideQpArg.

Implements Moose::FunctorBase< Real >.

Definition at line 66 of file Postprocessor.h.

66 { return true; }

◆ supportsFaceArg()

bool Postprocessor::supportsFaceArg ( ) const
inlinefinaloverridevirtualinherited

Whether this functor supports evaluation with FaceArg.

Implements Moose::FunctorBase< Real >.

Definition at line 65 of file Postprocessor.h.

65 { return true; }

◆ systemNumber()

unsigned int UserObject::systemNumber ( ) const
inherited
Returns
the number of the system associated with this object

Definition at line 152 of file UserObject.C.

153 {
154  return _sys.number();
155 }
SystemBase & _sys
Reference to the system object for this user object.
Definition: UserObject.h:213
unsigned int number() const
Gets the number of this system.
Definition: SystemBase.C:1130

◆ threadJoin()

void SideAverageFunctorPostprocessor::threadJoin ( const UserObject uo)
overridevirtual

Must override.

Parameters
uoThe UserObject to be joined into this object. Take the data from the uo object and "add" it into the data for this object.

Reimplemented from SideIntegralPostprocessor.

Definition at line 56 of file SideAverageFunctorPostprocessor.C.

57 {
59 
60  const auto & pps = static_cast<const SideAverageFunctorPostprocessor &>(y);
61  _area += pps._area;
62 }
virtual void threadJoin(const UserObject &y) override
Must override.
Computes the average of a functor over a side set.

◆ timedSectionName()

std::string PerfGraphInterface::timedSectionName ( const std::string &  section_name) const
protectedinherited
Returns
The name of the timed section with the name section_name.

Optionally adds a prefix if one is defined.

Definition at line 47 of file PerfGraphInterface.C.

Referenced by PerfGraphInterface::registerTimedSection().

48 {
49  return _prefix.empty() ? "" : (_prefix + "::") + section_name;
50 }
const std::string _prefix
A prefix to use for all sections.

◆ timestepSetup() [1/2]

void SetupInterface::timestepSetup ( )
virtualinherited

◆ timestepSetup() [2/2]

void Moose::FunctorBase< Real >::timestepSetup ( )
overridevirtualinherited

Implements Moose::FunctorAbstract.

Reimplemented in Function, NumNonlinearIterations, and MemoryUsage.

Definition at line 815 of file MooseFunctor.h.

816 {
818  clearCacheData();
819 }
const ExecFlagType EXEC_TIMESTEP_BEGIN
Definition: Moose.C:34
void clearCacheData()
clear cache data
Definition: MooseFunctor.h:789
std::set< ExecFlagType > _clearance_schedule
How often to clear the material property cache.
Definition: MooseFunctor.h:514

◆ type()

const std::string& MooseBase::type ( ) const
inlineinherited

Get the type of this class.

Returns
the name of the type of this class

Definition at line 51 of file MooseBase.h.

Referenced by CreateProblemDefaultAction::act(), SetupDebugAction::act(), MaterialDerivativeTestAction::act(), MaterialOutputAction::act(), FEProblemBase::addAuxArrayVariable(), FEProblemBase::addAuxScalarVariable(), FEProblemBase::addAuxVariable(), FEProblemBase::addConvergence(), FEProblemBase::addDistribution(), MooseApp::addExecutor(), MooseApp::addExecutorParams(), MFEMProblem::addFunction(), FEProblemBase::addFunction(), FEProblemBase::addMeshDivision(), MooseApp::addMeshGenerator(), MeshGenerator::addMeshSubgenerator(), FEProblemBase::addObject(), MFEMProblem::addPostprocessor(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addTimeIntegrator(), MooseServer::addValuesToList(), DisplacedProblem::addVectorTag(), SubProblem::addVectorTag(), FEProblemBase::advanceMultiApps(), MooseApp::appendMeshGenerator(), AuxKernelTempl< Real >::AuxKernelTempl(), FEProblemBase::backupMultiApps(), BoundaryPreservedMarker::BoundaryPreservedMarker(), DistributedRectilinearMeshGenerator::buildCube(), MooseMesh::buildHRefinementAndCoarseningMaps(), MooseMesh::buildLowerDMesh(), MooseMesh::buildPRefinementAndCoarseningMaps(), PhysicsBase::checkComponentType(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), ActionComponent::checkRequiredTasks(), PhysicsBase::checkRequiredTasks(), ADDGKernel::computeElemNeighJacobian(), DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayDGLowerDKernel::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayHFEMDirichletBC::computeLowerDQpJacobian(), ArrayHFEMDiffusion::computeLowerDQpJacobian(), HFEMDirichletBC::computeLowerDQpJacobian(), HFEMDiffusion::computeLowerDQpJacobian(), ArrayHFEMDirichletBC::computeLowerDQpOffDiagJacobian(), HFEMDirichletBC::computeLowerDQpOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDQpOffDiagJacobian(), ArrayDGLowerDKernel::computeLowerDQpOffDiagJacobian(), FEProblemBase::computeMultiAppsDT(), ADDGKernel::computeOffDiagElemNeighJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), DGConvection::computeQpJacobian(), ScalarKernel::computeQpJacobian(), InterfaceDiffusion::computeQpJacobian(), ArrayDGDiffusion::computeQpJacobian(), InterfaceReaction::computeQpJacobian(), CoupledTiedValueConstraint::computeQpJacobian(), TiedValueConstraint::computeQpJacobian(), DGDiffusion::computeQpJacobian(), LinearNodalConstraint::computeQpJacobian(), EqualValueBoundaryConstraint::computeQpJacobian(), EqualValueEmbeddedConstraint::computeQpJacobian(), CoupledTiedValueConstraint::computeQpOffDiagJacobian(), HFEMTestJump::computeQpOffDiagJacobian(), HFEMTrialJump::computeQpOffDiagJacobian(), EqualValueEmbeddedConstraint::computeQpOffDiagJacobian(), ArrayDGKernel::computeQpOffDiagJacobian(), HFEMDiffusion::computeQpResidual(), ArrayHFEMDiffusion::computeQpResidual(), DGConvection::computeQpResidual(), ScalarKernel::computeQpResidual(), InterfaceDiffusion::computeQpResidual(), ArrayDGDiffusion::computeQpResidual(), ADMatInterfaceReaction::computeQpResidual(), InterfaceReaction::computeQpResidual(), ADDGAdvection::computeQpResidual(), CoupledTiedValueConstraint::computeQpResidual(), TiedValueConstraint::computeQpResidual(), DGDiffusion::computeQpResidual(), LinearNodalConstraint::computeQpResidual(), ADDGDiffusion::computeQpResidual(), HFEMTestJump::computeQpResidual(), HFEMTrialJump::computeQpResidual(), EqualValueBoundaryConstraint::computeQpResidual(), EqualValueEmbeddedConstraint::computeQpResidual(), FEProblemBase::computeSystems(), FEProblemBase::computeUserObjectByName(), FEProblemBase::computeUserObjects(), FEProblemBase::computeUserObjectsInternal(), DisplacedProblem::createQRules(), FEProblemBase::createQRules(), MooseApp::createRecoverablePerfGraph(), DumpObjectsProblem::deduceNecessaryParameters(), DumpObjectsProblem::dumpObjectHelper(), FEProblemBase::duplicateVariableCheck(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), MooseBase::errorPrefix(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), FEProblemBase::execTransfers(), WebServerControl::execute(), SteadyBase::execute(), ActionWarehouse::executeActionsWithAction(), FEProblemBase::finishMultiAppStep(), ParsedSubdomainGeneratorBase::functionInitialize(), FVScalarLagrangeMultiplierInterface::FVScalarLagrangeMultiplierInterface(), MooseServer::gatherDocumentReferencesLocations(), LowerDBlockFromSidesetGenerator::generate(), SubdomainPerElementGenerator::generate(), PatternedMeshGenerator::generate(), MeshGenerator::generateInternal(), MultiAppTransfer::getAppInfo(), TransfiniteMeshGenerator::getEdge(), ElementGenerator::getElemType(), MooseServer::getInputLookupDefinitionNodes(), FEProblemBase::getMaterial(), FEProblemBase::getMaterialData(), MaterialOutputAction::getParams(), ReporterData::getReporterInfo(), FEProblemBase::getTransfers(), DisplacedProblem::getVectorTags(), SubProblem::getVectorTags(), CommonOutputAction::hasConsole(), FEProblemBase::hasMultiApps(), AdvancedOutput::hasOutput(), FEProblemBase::incrementMultiAppTStep(), AdvancedOutput::initAvailableLists(), FunctorPositions::initialize(), FunctorTimes::initialize(), MultiAppConservativeTransfer::initialSetup(), LinearFVAdvection::initialSetup(), LinearFVAnisotropicDiffusion::initialSetup(), LinearFVDiffusion::initialSetup(), ArrayDGDiffusion::initQpResidual(), AdvancedOutput::initShowHideLists(), RelationshipManager::isType(), FEProblemBase::logAdd(), MaterialFunctorConverterTempl< T >::MaterialFunctorConverterTempl(), MFEMProblem::mesh(), MooseObject::MooseObject(), MultiAppMFEMCopyTransfer::MultiAppMFEMCopyTransfer(), DisplacedProblem::numVectorTags(), SubProblem::numVectorTags(), Console::output(), AdvancedOutput::output(), ConsoleUtils::outputExecutionInformation(), OversampleOutput::outputStep(), Output::outputStep(), FEProblemBase::outputStep(), MooseServer::parseDocumentForDiagnostics(), ProjectedStatefulMaterialStorageAction::processProperty(), MooseApp::recursivelyCreateExecutors(), SolutionInvalidInterface::registerInvalidSolutionInternal(), FEProblemBase::restoreMultiApps(), MeshRepairGenerator::separateSubdomainsByElementType(), FEProblemBase::setCoupling(), MooseApp::setupOptions(), WebServerControl::startServer(), MooseBase::typeAndName(), ScalarKernelBase::uOld(), AuxScalarKernel::uOld(), DisplacedProblem::updateGeomSearch(), FEProblemBase::updateGeomSearch(), UserObjectInterface::userObjectType(), and AdvancedOutput::wantOutput().

51 { return _type; }
const std::string _type
The type of this class.
Definition: MooseBase.h:87

◆ typeAndName()

std::string MooseBase::typeAndName ( ) const
inherited

Get the class's combined type and name; useful in error handling.

Returns
The type and name of this class in the form '<type()> "<name()>"'.

Definition at line 27 of file MooseBase.C.

Referenced by MaterialPropertyStorage::addProperty(), MeshGeneratorSystem::dataDrivenError(), ReporterContext< std::vector< T > >::finalize(), and ReporterData::getReporterInfo().

28 {
29  return type() + std::string(" \"") + name() + std::string("\"");
30 }
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51

◆ uniqueName()

MooseObjectName MooseBaseParameterInterface::uniqueName ( ) const
inlineinherited

The unique name for accessing input parameters of this object in the InputParameterWarehouse.

Definition at line 67 of file MooseBaseParameterInterface.h.

Referenced by MooseBaseParameterInterface::connectControllableParams(), and Action::uniqueActionName().

68  {
69  return MooseObjectName(_pars.get<std::string>("_unique_name"));
70  }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
A class for storing the names of MooseObject by tag and object name.

◆ uniqueParameterName()

MooseObjectParameterName MooseBaseParameterInterface::uniqueParameterName ( const std::string &  parameter_name) const
inlineinherited

The unique parameter name of a valid parameter of this object for accessing parameter controls.

Definition at line 52 of file MooseBaseParameterInterface.h.

53  {
55  _pars.get<std::string>("_moose_base"), _moose_base.name(), parameter_name);
56  }
const MooseBase & _moose_base
The MooseBase object that inherits this class.
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
A class for storing an input parameter name.

◆ validateExecutionerType()

void Coupleable::validateExecutionerType ( const std::string &  name,
const std::string &  fn_name 
) const
protectedinherited

Checks to make sure that the current Executioner has set "_is_transient" when old/older values are coupled in.

Parameters
namethe name of the variable
fn_nameThe name of the function that called this method - used in the error message

Definition at line 2116 of file Coupleable.C.

Referenced by Coupleable::checkFuncType(), NeighborCoupleable::coupledArrayNeighborGradientOld(), NeighborCoupleable::coupledArrayNeighborGradientOlder(), NeighborCoupleable::coupledNeighborDofValuesOld(), NeighborCoupleable::coupledNeighborDofValuesOlder(), NeighborCoupleable::coupledNeighborGradientOld(), NeighborCoupleable::coupledNeighborGradientOlder(), NeighborCoupleable::coupledNeighborValueOld(), NeighborCoupleable::coupledNeighborValueOlder(), NeighborCoupleable::coupledVectorNeighborGradientOld(), and NeighborCoupleable::coupledVectorNeighborGradientOlder().

2117 {
2118  if (!_c_fe_problem.isTransient())
2120  ": Calling \"",
2121  fn_name,
2122  "\" on variable \"",
2123  name,
2124  "\" when using a \"Steady\" executioner is not allowed. This value is available "
2125  "only in transient simulations.");
2126 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1398
virtual bool isTransient() const override

◆ validParams()

InputParameters SideAverageFunctorPostprocessor::validParams ( )
static

Definition at line 15 of file SideAverageFunctorPostprocessor.C.

16 {
18  params.addClassDescription("Computes the average of a functor over a side set.");
19  return params;
20 }
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
void addClassDescription(const std::string &doc_string)
This method adds a description of the class that will be displayed in the input file syntax dump...

◆ writableCoupledValue()

VariableValue & Coupleable::writableCoupledValue ( const std::string &  var_name,
unsigned int  comp = 0 
)
protectedvirtualinherited

Returns a writable reference to a coupled variable for writing to multiple AuxVariables from a single AuxKernel or a UserObject.

Only one object can obtain a writable reference in a simulation.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a VariableValue for the coupled variable
See also
Kernel::value

Definition at line 912 of file Coupleable.C.

913 {
914  mooseDeprecated("Coupleable::writableCoupledValue is deprecated, please use "
915  "Coupleable::writableVariable instead. ");
916 
917  // check if the variable exists
918  auto * const var = getVar(var_name, comp);
919  if (!var)
920  mooseError(
921  "Unable to create a writable reference for '", var_name, "', is it a constant expression?");
922 
923  // is the requested variable an AuxiliaryVariable?
924  if (!_c_fe_problem.getAuxiliarySystem().hasVariable(var->name()))
925  mooseError(
926  "'", var->name(), "' must be an auxiliary variable in Coupleable::writableCoupledValue");
927 
928  // check that the variable type (elemental/nodal) is compatible with the object type
929  const auto * aux = dynamic_cast<const AuxKernel *>(this);
930 
931  if (!aux)
932  mooseError("writableCoupledValue() can only be called from AuxKernels, but '",
933  _obj->name(),
934  "' is not an AuxKernel.");
935 
936  if (!aux->isNodal() && var->isNodal())
937  mooseError("The elemental AuxKernel '",
938  _obj->name(),
939  "' cannot obtain a writable reference to the nodal variable '",
940  var->name(),
941  "'.");
942 
943  // make sure only one object can access a variable
944  checkWritableVar(var);
945 
946  return const_cast<VariableValue &>(coupledValue(var_name, comp));
947 }
void checkWritableVar(MooseWritableVariable *var)
Checks that the passed in variable is only accessed writable by one object in a given subdomain...
Definition: Coupleable.C:950
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1403
virtual const VariableValue & coupledValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled variable.
Definition: Coupleable.C:496
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:353
AuxiliarySystem & getAuxiliarySystem()
virtual bool hasVariable(const std::string &var_name) const
Query a system for a variable.
Definition: SystemBase.C:805
const MooseObject *const _obj
Definition: Coupleable.h:1806
OutputTools< Real >::VariableValue VariableValue
Definition: MooseTypes.h:310

◆ writableVariable()

MooseWritableVariable & Coupleable::writableVariable ( const std::string &  var_name,
unsigned int  comp = 0 
)
protectedinherited

Returns a writable MooseVariable object for a nodal or elemental variable.

Use var.setNodalValue(val[, idx]) in both cases (!) to set the solution DOF values. Only one object can obtain a writable reference in a simulation. Note that the written values will not ba available in the same system loop! E.g. values written using this API by a nodal AuxKernel will not be updated for other nodal AuxKernels during the same iteration over all nodes.

Parameters
var_nameName of coupled variable
compComponent number for vector of coupled variables
Returns
Reference to a MooseWritableVariable for the coupled variable
See also
Kernel::value

Definition at line 877 of file Coupleable.C.

878 {
879  auto * var = getVarHelper<MooseWritableVariable>(var_name, comp);
880 
881  const auto * aux = dynamic_cast<const AuxKernel *>(this);
882  const auto * euo = dynamic_cast<const ElementUserObject *>(this);
883  const auto * nuo = dynamic_cast<const NodalUserObject *>(this);
884  const auto * nfc = dynamic_cast<const NodeFaceConstraint *>(this);
885 
886  if (!aux && !euo && !nuo && !nfc)
887  mooseError("writableVariable() can only be called from AuxKernels, ElementUserObjects, "
888  "NodalUserObjects, or NodeFaceConstraints. '",
889  _obj->name(),
890  "' is none of those.");
891 
892  if (aux && !aux->isNodal() && var->isNodal())
893  mooseError("The elemental AuxKernel '",
894  _obj->name(),
895  "' cannot obtain a writable reference to the nodal variable '",
896  var->name(),
897  "'.");
898  if (euo && var->isNodal())
899  mooseError("The ElementUserObject '",
900  _obj->name(),
901  "' cannot obtain a writable reference to the nodal variable '",
902  var->name(),
903  "'.");
904 
905  // make sure only one object can access a variable
906  checkWritableVar(var);
907 
908  return *var;
909 }
void checkWritableVar(MooseWritableVariable *var)
Checks that the passed in variable is only accessed writable by one object in a given subdomain...
Definition: Coupleable.C:950
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:302
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
A user object that runs over all the nodes and does an aggregation step to compute a single value...
A NodeFaceConstraint is used when you need to create constraints between two surfaces in a mesh...
const MooseObject *const _obj
Definition: Coupleable.h:1806

Member Data Documentation

◆ _action_factory

ActionFactory& MooseBaseParameterInterface::_action_factory
protectedinherited

◆ _ad_default_curl

MooseArray<ADRealVectorValue> Coupleable::_ad_default_curl
mutableprotectedinherited

This will always be zero because the default values for optionally coupled vector variables is always constant.

Definition at line 1484 of file Coupleable.h.

Referenced by Coupleable::getADDefaultCurl().

◆ _ad_default_gradient

MooseArray<ADRealVectorValue> Coupleable::_ad_default_gradient
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1472 of file Coupleable.h.

Referenced by Coupleable::getADDefaultGradient().

◆ _ad_default_second

MooseArray<ADRealTensorValue> Coupleable::_ad_default_second
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1481 of file Coupleable.h.

Referenced by Coupleable::getADDefaultSecond().

◆ _ad_default_value

std::unordered_map<std::string, std::unique_ptr<MooseArray<ADReal> > > Coupleable::_ad_default_value
mutableprotectedinherited

Will hold the default value for optional coupled variables for automatic differentiation.

Definition at line 1449 of file Coupleable.h.

Referenced by Coupleable::getADDefaultValue().

◆ _ad_default_vector_gradient

MooseArray<ADRealTensorValue> Coupleable::_ad_default_vector_gradient
mutableprotectedinherited

This will always be zero because the default values for optionally coupled vector variables is always constant.

Definition at line 1475 of file Coupleable.h.

Referenced by Coupleable::getADDefaultVectorGradient().

◆ _ad_default_vector_value

std::unordered_map<std::string, std::unique_ptr<MooseArray<ADRealVectorValue> > > Coupleable::_ad_default_vector_value
mutableprotectedinherited

Will hold the default value for optional vector coupled variables for automatic differentiation.

Definition at line 1460 of file Coupleable.h.

Referenced by Coupleable::getADDefaultVectorValue().

◆ _ad_grad_zero

const MooseArray<ADRealVectorValue>& Coupleable::_ad_grad_zero
protectedinherited

Definition at line 1493 of file Coupleable.h.

Referenced by Coupleable::adZeroGradient().

◆ _ad_second_zero

const MooseArray<ADRealTensorValue>& Coupleable::_ad_second_zero
protectedinherited

Definition at line 1500 of file Coupleable.h.

Referenced by Coupleable::adZeroSecond().

◆ _ad_zero

const MooseArray<ADReal>& Coupleable::_ad_zero
protectedinherited

Definition at line 1489 of file Coupleable.h.

Referenced by Coupleable::adZeroValue().

◆ _app

MooseApp& MooseBase::_app
protectedinherited

The MOOSE application this is associated with.

Definition at line 84 of file MooseBase.h.

◆ _area

Real SideAverageFunctorPostprocessor::_area
protected

Side set area.

Definition at line 33 of file SideAverageFunctorPostprocessor.h.

Referenced by execute(), finalize(), getValue(), initialize(), and threadJoin().

◆ _assembly

Assembly& UserObject::_assembly
protectedinherited

◆ _c_allow_element_to_nodal_coupling

const bool Coupleable::_c_allow_element_to_nodal_coupling
protectedinherited

Definition at line 1439 of file Coupleable.h.

Referenced by Coupleable::checkVar().

◆ _c_fe_problem

FEProblemBase& Coupleable::_c_fe_problem
protectedinherited

◆ _c_is_implicit

bool Coupleable::_c_is_implicit
protectedinherited

True if implicit value is required.

Definition at line 1436 of file Coupleable.h.

Referenced by Coupleable::adCoupledCurl(), Coupleable::adCoupledDofValues(), Coupleable::adCoupledGradient(), Coupleable::adCoupledGradientDot(), Coupleable::adCoupledLowerValue(), NeighborCoupleable::adCoupledNeighborGradient(), NeighborCoupleable::adCoupledNeighborValue(), NeighborCoupleable::adCoupledNeighborValueDot(), Coupleable::adCoupledNodalValue(), Coupleable::adCoupledSecond(), Coupleable::adCoupledValue(), Coupleable::adCoupledVectorGradient(), NeighborCoupleable::adCoupledVectorNeighborValue(), Coupleable::adCoupledVectorValue(), Coupleable::checkFuncType(), Coupleable::coupledArrayDofValues(), Coupleable::coupledArrayGradient(), Coupleable::coupledArrayGradientOld(), NeighborCoupleable::coupledArrayNeighborGradient(), NeighborCoupleable::coupledArrayNeighborGradientOld(), NeighborCoupleable::coupledArrayNeighborGradientOlder(), NeighborCoupleable::coupledArrayNeighborValue(), Coupleable::coupledArrayValue(), CoupleableMooseVariableDependencyIntermediateInterface::coupledArrayValueByName(), Coupleable::coupledArrayValueOld(), Coupleable::coupledCurl(), Coupleable::coupledCurlOld(), Coupleable::coupledDiv(), Coupleable::coupledDivOld(), Coupleable::coupledDofValues(), Coupleable::coupledDofValuesOld(), Coupleable::coupledGradient(), Coupleable::coupledGradientOld(), NeighborCoupleable::coupledNeighborDofValues(), NeighborCoupleable::coupledNeighborDofValuesOld(), NeighborCoupleable::coupledNeighborDofValuesOlder(), NeighborCoupleable::coupledNeighborGradient(), NeighborCoupleable::coupledNeighborGradientOld(), NeighborCoupleable::coupledNeighborGradientOlder(), NeighborCoupleable::coupledNeighborSecond(), NeighborCoupleable::coupledNeighborValue(), NeighborCoupleable::coupledNeighborValueOld(), NeighborCoupleable::coupledNeighborValueOlder(), Coupleable::coupledNodalValue(), Coupleable::coupledNodalValueOld(), Coupleable::coupledSecond(), Coupleable::coupledSecondOld(), Coupleable::coupledValue(), CoupleableMooseVariableDependencyIntermediateInterface::coupledValueByName(), Coupleable::coupledValueLower(), Coupleable::coupledValueOld(), Coupleable::coupledVectorGradient(), Coupleable::coupledVectorGradientOld(), NeighborCoupleable::coupledVectorNeighborGradient(), NeighborCoupleable::coupledVectorNeighborGradientOld(), NeighborCoupleable::coupledVectorNeighborGradientOlder(), Coupleable::coupledVectorValue(), and Coupleable::coupledVectorValueOld().

◆ _c_name

const std::string& Coupleable::_c_name
protectedinherited

◆ _c_nodal

bool Coupleable::_c_nodal
protectedinherited

◆ _c_parameters

const InputParameters& Coupleable::_c_parameters
protectedinherited

◆ _c_sys

const SystemBase* const Coupleable::_c_sys
protectedinherited

Pointer to the system object if the moose object this is an interface for has one.

Definition at line 1406 of file Coupleable.h.

Referenced by Coupleable::coupled().

◆ _c_tid

THREAD_ID Coupleable::_c_tid
protectedinherited

◆ _c_type

const std::string& Coupleable::_c_type
protectedinherited

The type of the object this interface is part of.

Definition at line 1400 of file Coupleable.h.

◆ _console

const ConsoleStream ConsoleStreamInterface::_console
inherited

An instance of helper class to write streams to the Console objects.

Definition at line 31 of file ConsoleStreamInterface.h.

Referenced by IterationAdaptiveDT::acceptStep(), MeshOnlyAction::act(), SetupDebugAction::act(), MaterialOutputAction::act(), Adaptivity::adaptMesh(), FEProblemBase::adaptMesh(), PerfGraph::addToExecutionList(), SimplePredictor::apply(), SystemBase::applyScalingFactors(), MultiApp::backup(), FEProblemBase::backupMultiApps(), CoarsenedPiecewiseLinear::buildCoarsenedGrid(), MeshDiagnosticsGenerator::checkElementOverlap(), MeshDiagnosticsGenerator::checkElementTypes(), MeshDiagnosticsGenerator::checkElementVolumes(), FEProblemBase::checkExceptionAndStopSolve(), SolverSystem::checkInvalidSolution(), MeshDiagnosticsGenerator::checkLocalJacobians(), MeshDiagnosticsGenerator::checkNonConformalMesh(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), MeshDiagnosticsGenerator::checkNonMatchingEdges(), MeshDiagnosticsGenerator::checkNonPlanarSides(), FEProblemBase::checkProblemIntegrity(), ReferenceResidualConvergence::checkRelativeConvergence(), MeshDiagnosticsGenerator::checkSidesetsOrientation(), MeshDiagnosticsGenerator::checkWatertightNodesets(), MeshDiagnosticsGenerator::checkWatertightSidesets(), IterationAdaptiveDT::computeAdaptiveDT(), TransientBase::computeConstrainedDT(), FixedPointSolve::computeCustomConvergencePostprocessor(), NonlinearSystemBase::computeDamping(), FixedPointIterationAdaptiveDT::computeDT(), IterationAdaptiveDT::computeDT(), IterationAdaptiveDT::computeFailedDT(), IterationAdaptiveDT::computeInitialDT(), IterationAdaptiveDT::computeInterpolationDT(), FEProblemBase::computeLinearSystemTags(), NonlinearSystemBase::computeScaling(), Problem::console(), IterationAdaptiveDT::constrainStep(), TimeStepper::constrainStep(), MultiApp::createApp(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), MFEMSteady::execute(), MessageFromInput::execute(), SteadyBase::execute(), Eigenvalue::execute(), ActionWarehouse::executeActionsWithAction(), ActionWarehouse::executeAllActions(), MeshGeneratorSystem::executeMeshGenerators(), ElementQualityChecker::finalize(), FEProblemBase::finishMultiAppStep(), MeshRepairGenerator::fixOverlappingNodes(), CoarsenBlockGenerator::generate(), MeshGenerator::generateInternal(), VariableCondensationPreconditioner::getDofToCondense(), NonlinearEigen::init(), InversePowerMethod::init(), FEProblemBase::initialAdaptMesh(), EigenExecutionerBase::inversePowerIteration(), FEProblemBase::joinAndFinalize(), TransientBase::keepGoing(), IterationAdaptiveDT::limitDTByFunction(), IterationAdaptiveDT::limitDTToPostprocessorValue(), FEProblemBase::logAdd(), EigenExecutionerBase::makeBXConsistent(), Console::meshChanged(), MooseBaseErrorInterface::mooseDeprecated(), MooseBaseErrorInterface::mooseInfo(), MooseBaseErrorInterface::mooseWarning(), MooseBaseErrorInterface::mooseWarningNonPrefixed(), ReferenceResidualConvergence::nonlinearConvergenceSetup(), ReporterDebugOutput::output(), PerfGraphOutput::output(), SolutionInvalidityOutput::output(), MaterialPropertyDebugOutput::output(), DOFMapOutput::output(), VariableResidualNormsDebugOutput::output(), Console::output(), ControlOutput::outputActiveObjects(), ControlOutput::outputChangedControls(), ControlOutput::outputControls(), Console::outputInput(), Console::outputPostprocessors(), PseudoTimestep::outputPseudoTimestep(), Console::outputReporters(), Console::outputScalarVariables(), Console::outputSystemInformation(), FEProblemBase::possiblyRebuildGeomSearchPatches(), EigenExecutionerBase::postExecute(), AB2PredictorCorrector::postSolve(), ActionWarehouse::printActionDependencySets(), BlockRestrictionDebugOutput::printBlockRestrictionMap(), SolutionInvalidity::printDebug(), EigenExecutionerBase::printEigenvalue(), SteffensenSolve::printFixedPointConvergenceHistory(), SecantSolve::printFixedPointConvergenceHistory(), PicardSolve::printFixedPointConvergenceHistory(), FixedPointSolve::printFixedPointConvergenceReason(), PerfGraphLivePrint::printLiveMessage(), MaterialPropertyDebugOutput::printMaterialMap(), PerfGraphLivePrint::printStats(), AutomaticMortarGeneration::projectPrimaryNodesSinglePair(), AutomaticMortarGeneration::projectSecondaryNodesSinglePair(), CoarsenBlockGenerator::recursiveCoarsen(), SolutionTimeAdaptiveDT::rejectStep(), MultiApp::restore(), FEProblemBase::restoreMultiApps(), FEProblemBase::restoreSolutions(), NonlinearSystemBase::setInitialSolution(), MooseApp::setupOptions(), Checkpoint::shouldOutput(), SubProblem::showFunctorRequestors(), SubProblem::showFunctors(), FullSolveMultiApp::showStatusMessage(), FEProblemSolve::solve(), FixedPointSolve::solve(), EigenProblem::solve(), NonlinearSystem::solve(), LinearSystem::solve(), LStableDirk2::solve(), LStableDirk3::solve(), ImplicitMidpoint::solve(), ExplicitTVDRK2::solve(), LStableDirk4::solve(), AStableDirk4::solve(), ExplicitRK2::solve(), TransientMultiApp::solveStep(), FixedPointSolve::solveStep(), PerfGraphLivePrint::start(), AB2PredictorCorrector::step(), NonlinearEigen::takeStep(), TransientBase::takeStep(), TerminateChainControl::terminate(), Convergence::verboseOutput(), Console::writeTimestepInformation(), Console::writeVariableNorms(), and FEProblemBase::~FEProblemBase().

◆ _coord

const MooseArray<Real>& SideUserObject::_coord
protectedinherited

◆ _coord_sys

const Moose::CoordinateSystemType& UserObject::_coord_sys
protectedinherited

Coordinate system.

Definition at line 220 of file UserObject.h.

Referenced by SideAverageValue::getValue().

◆ _coupleable_neighbor

bool Coupleable::_coupleable_neighbor
protectedinherited

Whether or not this object is a "neighbor" object: ie all of it's coupled values should be neighbor values.

Definition at line 1705 of file Coupleable.h.

Referenced by Coupleable::adCoupledCurl(), Coupleable::adCoupledDofValues(), Coupleable::adCoupledDot(), Coupleable::adCoupledDotDot(), Coupleable::adCoupledGradient(), Coupleable::adCoupledGradientDot(), Coupleable::adCoupledNodalValue(), Coupleable::adCoupledSecond(), Coupleable::adCoupledValue(), Coupleable::adCoupledVectorDot(), Coupleable::adCoupledVectorGradient(), Coupleable::adCoupledVectorValue(), Coupleable::coupledArrayDofValues(), Coupleable::coupledArrayDot(), Coupleable::coupledArrayDotDot(), Coupleable::coupledArrayDotDotOld(), Coupleable::coupledArrayDotDu(), Coupleable::coupledArrayDotOld(), Coupleable::coupledArrayGradient(), Coupleable::coupledArrayGradientDot(), Coupleable::coupledArrayGradientOld(), Coupleable::coupledArrayGradientOlder(), Coupleable::coupledArrayValue(), CoupleableMooseVariableDependencyIntermediateInterface::coupledArrayValueByName(), Coupleable::coupledArrayValueOld(), Coupleable::coupledArrayValueOlder(), Coupleable::coupledCurl(), Coupleable::coupledCurlOld(), Coupleable::coupledCurlOlder(), Coupleable::coupledDiv(), Coupleable::coupledDivOld(), Coupleable::coupledDivOlder(), Coupleable::coupledDofValues(), Coupleable::coupledDofValuesOld(), Coupleable::coupledDofValuesOlder(), Coupleable::coupledDot(), Coupleable::coupledDotDot(), Coupleable::coupledDotDotDu(), Coupleable::coupledDotDotOld(), Coupleable::coupledDotDu(), Coupleable::coupledDotOld(), Coupleable::coupledGradient(), Coupleable::coupledGradientDot(), Coupleable::coupledGradientDotDot(), Coupleable::coupledGradientOld(), Coupleable::coupledGradientOlder(), Coupleable::coupledGradientPreviousNL(), Coupleable::coupledNodalDot(), Coupleable::coupledNodalDotDot(), Coupleable::coupledNodalDotDotOld(), Coupleable::coupledNodalDotOld(), Coupleable::coupledNodalValue(), Coupleable::coupledNodalValueOld(), Coupleable::coupledNodalValueOlder(), Coupleable::coupledNodalValuePreviousNL(), Coupleable::coupledSecond(), Coupleable::coupledSecondOld(), Coupleable::coupledSecondOlder(), Coupleable::coupledSecondPreviousNL(), Coupleable::coupledValue(), CoupleableMooseVariableDependencyIntermediateInterface::coupledValueByName(), Coupleable::coupledValueLower(), Coupleable::coupledValueOld(), Coupleable::coupledValueOlder(), Coupleable::coupledValuePreviousNL(), Coupleable::coupledVectorDot(), Coupleable::coupledVectorDotDot(), Coupleable::coupledVectorDotDotDu(), Coupleable::coupledVectorDotDotOld(), Coupleable::coupledVectorDotDu(), Coupleable::coupledVectorDotOld(), Coupleable::coupledVectorGradient(), Coupleable::coupledVectorGradientOld(), Coupleable::coupledVectorGradientOlder(), Coupleable::coupledVectorValue(), Coupleable::coupledVectorValueOld(), and Coupleable::coupledVectorValueOlder().

◆ _coupled_array_moose_vars

std::vector<ArrayMooseVariable *> Coupleable::_coupled_array_moose_vars
protectedinherited

◆ _coupled_moose_vars

std::vector<MooseVariableFieldBase *> Coupleable::_coupled_moose_vars
protectedinherited

◆ _coupled_standard_fv_moose_vars

std::vector<MooseVariableFV<Real> *> Coupleable::_coupled_standard_fv_moose_vars
protectedinherited

Vector of standard finite volume coupled variables.

Definition at line 1424 of file Coupleable.h.

Referenced by Coupleable::Coupleable(), ElementValueSampler::execute(), and Coupleable::getVarHelper().

◆ _coupled_standard_linear_fv_moose_vars

std::vector<MooseLinearVariableFV<Real> *> Coupleable::_coupled_standard_linear_fv_moose_vars
protectedinherited

Vector of standard linear finite volume coupled variables.

Definition at line 1427 of file Coupleable.h.

Referenced by Coupleable::Coupleable().

◆ _coupled_standard_moose_vars

std::vector<MooseVariable *> Coupleable::_coupled_standard_moose_vars
protectedinherited

◆ _coupled_vars

std::unordered_map<std::string, std::vector<MooseVariableFieldBase *> > Coupleable::_coupled_vars
protectedinherited

◆ _coupled_vector_moose_vars

std::vector<VectorMooseVariable *> Coupleable::_coupled_vector_moose_vars
protectedinherited

Vector of vector coupled variables.

Definition at line 1418 of file Coupleable.h.

Referenced by Coupleable::Coupleable(), Coupleable::getCoupledVectorMooseVars(), and Coupleable::getVarHelper().

◆ _current_boundary_id

const BoundaryID& SideUserObject::_current_boundary_id
protectedinherited

Definition at line 53 of file SideUserObject.h.

Referenced by SidesetInfoVectorPostprocessor::execute().

◆ _current_elem

const Elem* const& SideUserObject::_current_elem
protectedinherited

◆ _current_execute_flag

const ExecFlagType& SetupInterface::_current_execute_flag
protectedinherited

Reference to FEProblemBase.

Definition at line 78 of file SetupInterface.h.

Referenced by PseudoTimestep::execute().

◆ _current_side

const unsigned int& SideUserObject::_current_side
protectedinherited

◆ _current_side_elem

const Elem* const& SideUserObject::_current_side_elem
protectedinherited

◆ _current_side_volume

const Real& SideUserObject::_current_side_volume
protectedinherited

◆ _current_value

const PostprocessorValue& Postprocessor::_current_value
protectedinherited

The current value, which is the Reporter value that changes when we execute UOs in the problem.

Definition at line 73 of file Postprocessor.h.

Referenced by Postprocessor::getCurrentValue().

◆ _default_array_gradient

ArrayVariableGradient Coupleable::_default_array_gradient
protectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1530 of file Coupleable.h.

Referenced by Coupleable::coupledArrayGradient(), Coupleable::coupledArrayGradientDot(), Coupleable::coupledArrayGradientOld(), and Coupleable::coupledArrayGradientOlder().

◆ _default_array_value

std::unordered_map<std::string, std::unique_ptr<ArrayVariableValue> > Coupleable::_default_array_value
mutableprotectedinherited

Will hold the default value for optional array coupled variables.

Definition at line 1456 of file Coupleable.h.

Referenced by Coupleable::getDefaultArrayValue().

◆ _default_array_value_zero

ArrayVariableValue Coupleable::_default_array_value_zero
protectedinherited

This will always be zero because the default values for optionally coupled variables is always constant and this is used for time derivative info.

Definition at line 1527 of file Coupleable.h.

Referenced by Coupleable::coupledArrayDot(), Coupleable::coupledArrayDotDot(), Coupleable::coupledArrayDotDotOld(), and Coupleable::coupledArrayDotOld().

◆ _default_div

VectorVariableDivergence Coupleable::_default_div
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1521 of file Coupleable.h.

Referenced by Coupleable::coupledDiv(), Coupleable::coupledDivOld(), and Coupleable::coupledDivOlder().

◆ _default_gradient

VariableGradient Coupleable::_default_gradient
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1469 of file Coupleable.h.

Referenced by Coupleable::coupledGradient(), Coupleable::coupledGradientDot(), Coupleable::coupledGradientDotDot(), Coupleable::coupledGradientOld(), Coupleable::coupledGradientOlder(), and Coupleable::coupledGradientPreviousNL().

◆ _default_properties

std::vector<std::unique_ptr<PropertyValue> > MaterialPropertyInterface::_default_properties
protectedinherited

Storage vector for default properties.

Definition at line 546 of file MaterialPropertyInterface.h.

Referenced by MaterialPropertyInterface::defaultGenericMaterialProperty().

◆ _default_second

VariableSecond Coupleable::_default_second
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1478 of file Coupleable.h.

Referenced by Coupleable::coupledSecond(), Coupleable::coupledSecondOld(), Coupleable::coupledSecondOlder(), and Coupleable::coupledSecondPreviousNL().

◆ _default_value

std::unordered_map<std::string, std::vector<std::unique_ptr<VariableValue> > > Coupleable::_default_value
mutableprotectedinherited

Will hold the default value for optional coupled variables.

Definition at line 1446 of file Coupleable.h.

Referenced by Coupleable::getDefaultValue().

◆ _default_value_zero

VariableValue Coupleable::_default_value_zero
mutableprotectedinherited

◆ _default_vector_curl

VectorVariableCurl Coupleable::_default_vector_curl
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1518 of file Coupleable.h.

Referenced by Coupleable::coupledCurl(), Coupleable::coupledCurlOld(), and Coupleable::coupledCurlOlder().

◆ _default_vector_gradient

VectorVariableGradient Coupleable::_default_vector_gradient
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1515 of file Coupleable.h.

Referenced by Coupleable::coupledVectorGradient(), Coupleable::coupledVectorGradientOld(), and Coupleable::coupledVectorGradientOlder().

◆ _default_vector_value

std::unordered_map<std::string, std::unique_ptr<VectorVariableValue> > Coupleable::_default_vector_value
mutableprotectedinherited

Will hold the default value for optional vector coupled variables.

Definition at line 1453 of file Coupleable.h.

Referenced by Coupleable::getDefaultVectorValue().

◆ _default_vector_value_zero

VectorVariableValue Coupleable::_default_vector_value_zero
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant and this is used for time derivative info.

Definition at line 1512 of file Coupleable.h.

Referenced by Coupleable::coupledVectorDot(), Coupleable::coupledVectorDotDot(), Coupleable::coupledVectorDotDotOld(), and Coupleable::coupledVectorDotOld().

◆ _depend_uo

std::set<std::string> UserObject::_depend_uo
mutableprotectedinherited

◆ _dt

Real& TransientInterface::_dt
protectedinherited

◆ _dt_old

Real& TransientInterface::_dt_old
protectedinherited

Size of the old time step.

Definition at line 73 of file TransientInterface.h.

Referenced by VariableTimeIntegrationAux::getIntegralValue().

◆ _duplicate_initial_execution

const bool UserObject::_duplicate_initial_execution
protectedinherited

Definition at line 222 of file UserObject.h.

Referenced by UserObject::shouldDuplicateInitialExecution().

◆ _enabled

const bool& MooseObject::_enabled
protectedinherited

Reference to the "enable" InputParameters, used by Controls for toggling on/off MooseObjects.

Definition at line 51 of file MooseObject.h.

Referenced by MooseObject::enabled().

◆ _execute_enum

const ExecFlagEnum& SetupInterface::_execute_enum
protectedinherited

◆ _face_infos

std::vector<const FaceInfo *> SideUserObject::_face_infos
protectedinherited

Holds the FaceInfos to loop on to consider all active neighbors of an element on a given side.

Definition at line 56 of file SideUserObject.h.

Referenced by SideIntegralPostprocessor::computeIntegral(), and SideUserObject::getFaceInfos().

◆ _factory

Factory& MooseBaseParameterInterface::_factory
protectedinherited

◆ _fe_problem

FEProblemBase& UserObject::_fe_problem
protectedinherited

Reference to the FEProblemBase for this user object.

Definition at line 209 of file UserObject.h.

Referenced by ElementSubdomainModifierBase::applyIC(), ChangeOverFixedPointPostprocessor::ChangeOverFixedPointPostprocessor(), ChangeOverTimePostprocessor::ChangeOverTimePostprocessor(), ConstantPostprocessor::ConstantPostprocessor(), PseudoTimestep::currentResidualNorm(), AccumulateReporter::declareAccumulateHelper(), AccumulateReporter::declareLateValues(), DistributedPositions::DistributedPositions(), ElementsAlongLine::ElementsAlongLine(), ElementsAlongPlane::ElementsAlongPlane(), VariableResidual::execute(), PseudoTimestep::execute(), ElemSideNeighborLayersTester::execute(), PositionsFunctorValueSampler::execute(), NodalNormalsEvaluator::execute(), GreaterThanLessThanPostprocessor::execute(), NodalNormalsCorner::execute(), ElementsAlongLine::execute(), ElementsAlongPlane::execute(), IntersectionPointsAlongLine::execute(), MemoryUsage::execute(), VectorMemoryUsage::execute(), ElementalVariableValue::execute(), HistogramVectorPostprocessor::execute(), IsMatrixSymmetric::execute(), ActivateElementsUserObjectBase::execute(), WorkBalance::execute(), NodalNormalsPreprocessor::execute(), Terminator::execute(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), PerfGraphData::finalize(), MemoryUsage::finalize(), VectorMemoryUsage::finalize(), SidesetAroundSubdomainUpdater::finalize(), NodalPatchRecoveryBase::finalize(), ActivateElementsUserObjectBase::finalize(), RadialAverage::finalize(), FunctorExtremaPositions::FunctorExtremaPositions(), Times::getCurrentTime(), Residual::getValue(), NumResidualEvaluations::getValue(), NumPositions::getValue(), ElementSubdomainModifierBase::initElementStatefulProps(), DistributedPositions::initialize(), ReporterPositions::initialize(), TransformedPositions::initialize(), FunctorPositions::initialize(), MultiAppPositions::initialize(), PositionsFunctorValueSampler::initialize(), ReporterTimes::initialize(), SimulationTimes::initialize(), FunctorTimes::initialize(), FunctorExtremaPositions::initialize(), Positions::initialized(), SideFVFluxBCIntegral::initialSetup(), LibtorchArtificialNeuralNetParameters::initialSetup(), LibtorchControlValuePostprocessor::initialSetup(), Terminator::initialSetup(), ActivateElementsUserObjectBase::initSolutions(), IntersectionPointsAlongLine::IntersectionPointsAlongLine(), ElementSubdomainModifierBase::modify(), PseudoTimestep::outputPseudoTimestep(), SolutionUserObjectBase::pointValueGradientWrapper(), SolutionUserObjectBase::pointValueWrapper(), PointwiseRenormalizeVector::PointwiseRenormalizeVector(), MeshInfo::possiblyAddSidesetInfo(), MeshInfo::possiblyAddSubdomainInfo(), PseudoTimestep::PseudoTimestep(), Receiver::Receiver(), ActivateElementsUserObjectBase::setNewBoundayName(), NodalReporter::shouldStore(), ElementReporter::shouldStore(), GeneralReporter::shouldStore(), PseudoTimestep::timestepEXP(), PseudoTimestep::timestepSER(), and TransformedPositions::TransformedPositions().

◆ _functor

const Moose::Functor<GenericReal<is_ad> >& SideIntegralFunctorPostprocessorTempl< is_ad >::_functor
protectedinherited

Functor being integrated.

Definition at line 55 of file SideIntegralFunctorPostprocessor.h.

◆ _get_material_property_called

bool MaterialPropertyInterface::_get_material_property_called
protectedinherited

Initialized to false.

Gets set to true when getMaterialProperty() is called. Clients of this class can inquire whether getMaterialProperty() has been called by calling getMaterialPropertyCalled().

Definition at line 543 of file MaterialPropertyInterface.h.

Referenced by MaterialPropertyInterface::getGenericMaterialPropertyByName(), and MaterialPropertyInterface::getMaterialPropertyCalled().

◆ _get_suffix

const MaterialPropertyName MaterialPropertyInterface::_get_suffix
protectedinherited

◆ _grad_phi_zero

const VariablePhiGradient& Coupleable::_grad_phi_zero
protectedinherited

Zero gradient of trial function.

Definition at line 1496 of file Coupleable.h.

◆ _grad_zero

const VariableGradient& Coupleable::_grad_zero
protectedinherited

Zero gradient of a variable.

Definition at line 1492 of file Coupleable.h.

◆ _integral_value

Real SideIntegralPostprocessor::_integral_value
protectedinherited

◆ _interpolated_old

const std::string MaterialPropertyInterface::_interpolated_old = "_interpolated_old"
staticprotectedinherited

name suffixes for interpolated old and older properties

Definition at line 557 of file MaterialPropertyInterface.h.

Referenced by Material::getGenericMaterialPropertyByName(), and MaterialPropertyInterface::getGenericMaterialPropertyByName().

◆ _interpolated_older

const std::string MaterialPropertyInterface::_interpolated_older = "_interpolated_older"
staticprotectedinherited

◆ _is_implicit

bool TransientInterface::_is_implicit
protectedinherited

If the object is using implicit or explicit form.

This does NOT mean time scheme, but which values are going to be used in the object - either from current time or old time. Note that even explicit schemes have implicit form (it is the time derivative "kernel")

Definition at line 58 of file TransientInterface.h.

Referenced by EigenKernel::computeJacobian(), EigenKernel::computeOffDiagJacobian(), Kernel::computeResidualAndJacobian(), NodalBC::computeResidualAndJacobian(), IntegratedBC::computeResidualAndJacobian(), TransientInterface::determineState(), EigenKernel::EigenKernel(), EigenKernel::enabled(), and TransientInterface::isImplicit().

◆ _is_transient

bool TransientInterface::_is_transient
protectedinherited

Definition at line 76 of file TransientInterface.h.

Referenced by InterfaceTimeKernel::InterfaceTimeKernel().

◆ _JxW

const MooseArray<Real>& SideUserObject::_JxW
protectedinherited

◆ _material_data

MaterialData& MaterialPropertyInterface::_material_data
protectedinherited

◆ _material_data_type

const Moose::MaterialDataType MaterialPropertyInterface::_material_data_type
protectedinherited

◆ _material_property_dependencies

std::unordered_set<unsigned int> MaterialPropertyInterface::_material_property_dependencies
protectedinherited

The set of material properties (as given by their IDs) that this object depends on.

Definition at line 549 of file MaterialPropertyInterface.h.

Referenced by MaterialPropertyInterface::getBlockMaterialProperty(), MaterialPropertyInterface::getGenericMaterialPropertyByName(), and MaterialPropertyInterface::getMatPropDependencies().

◆ _mci_feproblem

FEProblemBase& MeshChangedInterface::_mci_feproblem
protectedinherited

Reference to FEProblemBase instance.

Definition at line 38 of file MeshChangedInterface.h.

Referenced by MeshChangedInterface::MeshChangedInterface().

◆ _mesh

MooseMesh& SideUserObject::_mesh
protectedinherited

◆ _mi_feproblem

FEProblemBase& MaterialPropertyInterface::_mi_feproblem
protectedinherited

◆ _mi_moose_object_name

const MooseObjectName MaterialPropertyInterface::_mi_moose_object_name
protectedinherited

The "complete" name of the object that this interface belongs for material property output.

Definition at line 466 of file MaterialPropertyInterface.h.

Referenced by MaterialPropertyInterface::getBlockMaterialProperty(), and MaterialPropertyInterface::getGenericMaterialPropertyByName().

◆ _mi_name

const std::string MaterialPropertyInterface::_mi_name
protectedinherited

The name of the object that this interface belongs to.

Definition at line 463 of file MaterialPropertyInterface.h.

Referenced by MaterialPropertyInterface::checkMaterialProperty().

◆ _mi_params

const InputParameters& MaterialPropertyInterface::_mi_params
protectedinherited

◆ _mi_subproblem

SubProblem& MaterialPropertyInterface::_mi_subproblem
protectedinherited

Reference to the subproblem.

Definition at line 472 of file MaterialPropertyInterface.h.

◆ _mi_tid

const THREAD_ID MaterialPropertyInterface::_mi_tid
protectedinherited

◆ _name

const std::string MooseBase::_name
protectedinherited

The name of this class.

Definition at line 90 of file MooseBase.h.

Referenced by AddBCAction::act(), AddDGKernelAction::act(), AddDiracKernelAction::act(), AddFVInterfaceKernelAction::act(), AddIndicatorAction::act(), AddMFEMSolverAction::act(), AddPostprocessorAction::act(), AddMFEMPreconditionerAction::act(), AddMFEMFESpaceAction::act(), AddUserObjectAction::act(), AddFVInitialConditionAction::act(), AddInitialConditionAction::act(), AddTransferAction::act(), AddMaterialAction::act(), AddInterfaceKernelAction::act(), AddScalarKernelAction::act(), PartitionerAction::act(), AddKernelAction::act(), ReadExecutorParamsAction::act(), AddConstraintAction::act(), AddFunctorMaterialAction::act(), AddMarkerAction::act(), AddNodalKernelAction::act(), AddDamperAction::act(), AddMeshGeneratorAction::act(), AddVectorPostprocessorAction::act(), AddMultiAppAction::act(), AddPositionsAction::act(), AddReporterAction::act(), AddTimesAction::act(), AddFieldSplitAction::act(), AddFVKernelAction::act(), AddFVBCAction::act(), AddHDGBCAction::act(), AddConvergenceAction::act(), AddHDGKernelAction::act(), AddTimeStepperAction::act(), AddDistributionAction::act(), SetupPreconditionerAction::act(), SetupTimeIntegratorAction::act(), AddFunctionAction::act(), AddMeshDivisionAction::act(), AddOutputAction::act(), AddLinearFVBCAction::act(), AddLinearFVKernelAction::act(), AddCorrectorAction::act(), AddMeshModifiersAction::act(), AddSamplerAction::act(), AddControlAction::act(), AddPeriodicBCAction::act(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), PiecewiseTabularBase::buildFromFile(), PiecewiseTabularBase::buildFromXY(), PiecewiseLinearBase::buildInterpolation(), CombinerGenerator::CombinerGenerator(), Executor::Executor(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), QuadraturePointMultiApp::fillPositions(), CentroidMultiApp::fillPositions(), MultiApp::fillPositions(), FunctionDT::FunctionDT(), FillBetweenPointVectorsGenerator::generate(), FillBetweenSidesetsGenerator::generate(), FillBetweenCurvesGenerator::generate(), NearestPointBase< LayeredSideDiffusiveFluxAverage, SideIntegralVariableUserObject >::name(), ParsedFunctorMaterialTempl< is_ad >::ParsedFunctorMaterialTempl(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), and PiecewiseBase::setData().

◆ _new_to_deprecated_coupled_vars

const std::unordered_map<std::string, std::string>& Coupleable::_new_to_deprecated_coupled_vars
protectedinherited

map from new to deprecated variable names

Definition at line 1430 of file Coupleable.h.

Referenced by Coupleable::getVarHelper().

◆ _normals

const MooseArray<Point>& SideUserObject::_normals
protectedinherited

◆ _pars

const InputParameters& MooseBaseParameterInterface::_pars
protectedinherited

Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

Definition at line 162 of file MooseBaseParameterInterface.h.

Referenced by AddFVICAction::act(), AddICAction::act(), CreateProblemDefaultAction::act(), CreateProblemAction::act(), SetupMeshAction::act(), ComposeTimeStepperAction::act(), SetupDebugAction::act(), AddAuxKernelAction::act(), AddVariableAction::act(), CommonOutputAction::act(), AddPeriodicBCAction::act(), FunctorMaterial::addFunctorPropertyByBlocks(), BreakMeshByBlockGeneratorBase::BreakMeshByBlockGeneratorBase(), PiecewiseTabularBase::buildFromFile(), PNGOutput::calculateRescalingValues(), MooseBaseParameterInterface::connectControllableParams(), Console::Console(), AddVariableAction::createInitialConditionAction(), MaterialBase::declareADProperty(), MaterialBase::declareProperty(), FEProblemSolve::FEProblemSolve(), FunctionMaterialBase< is_ad >::FunctionMaterialBase(), FileMeshGenerator::generate(), MaterialBase::getGenericZeroMaterialProperty(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), MooseBaseParameterInterface::getParam(), MooseBaseParameterInterface::getRenamedParam(), MeshGenerator::hasGenerateData(), AddVariableAction::init(), AdvancedOutput::initExecutionTypes(), Console::initialSetup(), MooseBaseParameterInterface::isParamSetByUser(), MooseBaseParameterInterface::isParamValid(), MultiApp::keepSolutionDuringRestore(), MooseBaseParameterInterface::MooseBaseParameterInterface(), MooseBaseParameterInterface::paramErrorMsg(), GlobalParamsAction::parameters(), MooseBaseParameterInterface::parameters(), MooseMesh::prepare(), Eigenvalue::prepareSolverOptions(), MooseMesh::setCoordSystem(), MooseMesh::setPartitionerHelper(), SetupMeshAction::setupMesh(), TransientBase::setupTimeIntegrator(), MooseBaseParameterInterface::uniqueName(), and MooseBaseParameterInterface::uniqueParameterName().

◆ _partial_integral

const bool SideIntegralFunctorPostprocessorTempl< is_ad >::_partial_integral
protectedinherited

Whether to skip integrating where the functors are not both defined.

Definition at line 61 of file SideIntegralFunctorPostprocessor.h.

◆ _pg_moose_app

MooseApp& PerfGraphInterface::_pg_moose_app
protectedinherited

The MooseApp that owns the PerfGraph.

Definition at line 124 of file PerfGraphInterface.h.

Referenced by PerfGraphInterface::perfGraph().

◆ _phi_zero

const VariablePhiValue& Coupleable::_phi_zero
protectedinherited

Definition at line 1488 of file Coupleable.h.

◆ _point_zero

const Point& ScalarCoupleable::_point_zero
protectedinherited

◆ _pp_name

const std::string& Postprocessor::_pp_name
protectedinherited

Post-processor name.

Definition at line 70 of file Postprocessor.h.

Referenced by Postprocessor::declareValue(), and Postprocessor::PPName().

◆ _prefactor

const Moose::Functor<GenericReal<is_ad> >& SideIntegralFunctorPostprocessorTempl< is_ad >::_prefactor
protectedinherited

Factor multiplying the functor being integrated.

Definition at line 58 of file SideIntegralFunctorPostprocessor.h.

◆ _prefix

const std::string PerfGraphInterface::_prefix
protectedinherited

A prefix to use for all sections.

Definition at line 127 of file PerfGraphInterface.h.

Referenced by PerfGraphInterface::timedSectionName().

◆ _q_point

const MooseArray<Point>& SideUserObject::_q_point
protectedinherited

◆ _qp

unsigned int SideIntegralPostprocessor::_qp
protectedinherited

◆ _qp_integration

bool SideIntegralPostprocessor::_qp_integration
protectedinherited

◆ _qrule

const QBase* const& SideUserObject::_qrule
protectedinherited

◆ _real_zero

const Real& ScalarCoupleable::_real_zero
protectedinherited

Scalar zero.

Definition at line 238 of file ScalarCoupleable.h.

◆ _restartable_app

MooseApp& Restartable::_restartable_app
protectedinherited

Reference to the application.

Definition at line 227 of file Restartable.h.

Referenced by Restartable::registerRestartableDataOnApp(), and Restartable::registerRestartableNameWithFilterOnApp().

◆ _restartable_read_only

const bool Restartable::_restartable_read_only
protectedinherited

Flag for toggling read only status (see ReporterData)

Definition at line 236 of file Restartable.h.

Referenced by Restartable::registerRestartableDataOnApp().

◆ _restartable_system_name

const std::string Restartable::_restartable_system_name
protectedinherited

The system name this object is in.

Definition at line 230 of file Restartable.h.

Referenced by Restartable::restartableName().

◆ _restartable_tid

const THREAD_ID Restartable::_restartable_tid
protectedinherited

The thread ID for this object.

Definition at line 233 of file Restartable.h.

Referenced by Restartable::declareRestartableDataHelper().

◆ _sc_fe_problem

FEProblemBase& ScalarCoupleable::_sc_fe_problem
protectedinherited

◆ _sc_tid

const THREAD_ID ScalarCoupleable::_sc_tid
protectedinherited

Thread ID of the thread using this object.

Definition at line 235 of file ScalarCoupleable.h.

Referenced by ScalarCoupleable::ScalarCoupleable().

◆ _scalar_zero

const VariableValue& ScalarCoupleable::_scalar_zero
protectedinherited

Zero value of a scalar variable.

Definition at line 241 of file ScalarCoupleable.h.

◆ _second_phi_zero

const VariablePhiSecond& Coupleable::_second_phi_zero
protectedinherited

Zero second derivative of a test function.

Definition at line 1502 of file Coupleable.h.

◆ _second_zero

const VariableSecond& Coupleable::_second_zero
protectedinherited

Zero second derivative of a variable.

Definition at line 1499 of file Coupleable.h.

◆ _stateful_allowed

bool MaterialPropertyInterface::_stateful_allowed
protectedinherited

True by default.

If false, this class throws an error if any of the stateful material properties interfaces are used.

Definition at line 536 of file MaterialPropertyInterface.h.

Referenced by MaterialPropertyInterface::getPossiblyConstantGenericMaterialPropertyByName(), and MaterialPropertyInterface::statefulPropertiesAllowed().

◆ _subproblem

SubProblem& UserObject::_subproblem
protectedinherited

◆ _sys

SystemBase& UserObject::_sys
protectedinherited

◆ _t

Real& TransientInterface::_t
protectedinherited

Time.

Definition at line 61 of file TransientInterface.h.

Referenced by FVFunctionDirichletBC::boundaryValue(), AnalyticalIndicator::computeQpIntegral(), FunctionElementIntegral::computeQpIntegral(), ElementL2Error::computeQpIntegral(), ElementHCurlSemiError::computeQpIntegral(), ElementHDivSemiError::computeQpIntegral(), ElementL1Error::computeQpIntegral(), FunctionElementIntegralUserObject::computeQpIntegral(), FunctionSideIntegral::computeQpIntegral(), ElementH1SemiError::computeQpIntegral(), ElementVectorL2Error::computeQpIntegral(), ElementW1pError::computeQpIntegral(), FunctionDiffusion::computeQpJacobian(), VectorFunctionReaction::computeQpJacobian(), ArrayBodyForce::computeQpResidual(), FunctionDiffusion::computeQpResidual(), ConvectiveFluxBC::computeQpResidual(), ADVectorFunctionNeumannBC::computeQpResidual(), FunctionGradientNeumannBC::computeQpResidual(), FunctionDiracSource::computeQpResidual(), ADFunctionNeumannBC::computeQpResidual(), FVFunctionNeumannBC::computeQpResidual(), FunctionNeumannBC::computeQpResidual(), VectorCurlPenaltyDirichletBC::computeQpResidual(), VectorFunctionReaction::computeQpResidual(), VectorDivPenaltyDirichletBC::computeQpResidual(), VectorFunctionDirichletBC::computeQpResidual(), VectorPenaltyDirichletBC::computeQpResidual(), FVBodyForce::computeQpResidual(), ADConservativeAdvectionBC::computeQpResidual(), VectorBodyForce::computeQpResidual(), FVOrthogonalBoundaryDiffusion::computeQpResidual(), UserForcingFunctionNodalKernel::computeQpResidual(), SinDirichletBC::computeQpResidual(), ADFunctionPenaltyDirichletBC::computeQpResidual(), SinNeumannBC::computeQpResidual(), FunctionPenaltyDirichletBC::computeQpResidual(), DGFunctionDiffusionDirichletBC::computeQpResidual(), ADVectorFunctionDirichletBC::computeQpValue(), ADFunctionDirichletBC::computeQpValue(), FunctionDirichletBC::computeQpValue(), TimedSubdomainModifier::computeSubdomainID(), FunctionArrayAux::computeValue(), ForcingFunctionAux::computeValue(), ParsedAux::computeValue(), ParsedVectorAux::computeValue(), ArrayParsedAux::computeValue(), FunctionScalarAux::computeValue(), FunctionAux::computeValue(), VectorFunctionAux::computeValue(), SolutionScalarAux::computeValue(), ElementL2ErrorFunctionAux::computeValue(), SolutionAux::computeValue(), ElementH1ErrorFunctionAux::computeValue(), ConditionalFunctionEnableControl::conditionMet(), TimesEnableControl::conditionMet(), TimePeriod::conditionMet(), PIDChainControl::execute(), SmootherChainControl::execute(), IterationInfo::execute(), LineFunctionSampler::execute(), NodalL2Error::execute(), GetFunctionValueChainControl::execute(), BoolFunctionControl::execute(), ParsedChainControl::execute(), PIDTransientControl::execute(), RealFunctionControl::execute(), LeastSquaresFitHistory::execute(), TimeExtremeValue::execute(), UserForcingFunction::f(), ParsedPostprocessor::finalize(), FunctionValuePostprocessor::getValue(), ScalarL2Error::getValue(), ActivateElementsByPath::isElementActivated(), SolutionUserObject::solutionSampleTime(), SolutionUserObjectBase::updateExodusTimeInterpolation(), and ParsedConvergence::updateFunctionSymbolValues().

◆ _t_old

const Real& TransientInterface::_t_old
protectedinherited

◆ _t_step

int& TransientInterface::_t_step
protectedinherited

◆ _ti_feproblem

FEProblemBase& TransientInterface::_ti_feproblem
protectedinherited

◆ _ti_params

const InputParameters& TransientInterface::_ti_params
protectedinherited

Definition at line 48 of file TransientInterface.h.

◆ _tid

const THREAD_ID UserObject::_tid
protectedinherited

◆ _type

const std::string MooseBase::_type
protectedinherited

◆ _use_interpolated_state

const bool MaterialPropertyInterface::_use_interpolated_state
protectedinherited

◆ _vector_curl_zero

const VectorVariableCurl& Coupleable::_vector_curl_zero
protectedinherited

Zero value of the curl of a vector variable.

Definition at line 1506 of file Coupleable.h.

◆ _vector_zero

const VectorVariableValue& Coupleable::_vector_zero
protectedinherited

Zero value of a vector variable.

Definition at line 1504 of file Coupleable.h.

◆ _zero

const VariableValue& Coupleable::_zero
protectedinherited

Zero value of a variable.

Definition at line 1487 of file Coupleable.h.

◆ default_property_id

constexpr PropertyValue::id_type MaterialPropertyInterface::default_property_id
staticinherited
Initial value:

The material property ID for a default (parsed from input) property.

Definition at line 75 of file MaterialPropertyInterface.h.

Referenced by MaterialPropertyInterface::defaultGenericMaterialProperty().

◆ NAME

constexpr auto MeshMetaDataInterface::NAME = "<empty>"
staticinherited

The data name used when initializing the Restartable interface for non-MeshGenerator objects.

Definition at line 33 of file MeshMetaDataInterface.h.

◆ SYSTEM

constexpr auto MeshMetaDataInterface::SYSTEM = "MeshMetaData"
staticinherited

The system name used when initializing the Restartable interface.

Definition at line 30 of file MeshMetaDataInterface.h.

Referenced by MeshMetaDataInterface::meshPropertyName().

◆ zero_property_id

constexpr PropertyValue::id_type MaterialPropertyInterface::zero_property_id = PropertyValue::invalid_property_id - 2
staticinherited

The material property ID for a zero property.

Definition at line 78 of file MaterialPropertyInterface.h.

Referenced by MaterialBase::getGenericZeroMaterialProperty(), and MaterialPropertyInterface::getGenericZeroMaterialProperty().


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