https://mooseframework.inl.gov
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
InputParameters Class Reference

The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system. More...

#include <InputParameters.h>

Inheritance diagram for InputParameters:
[legend]

Classes

struct  CommandLineMetadata
 Structure for storing information about a command line parameter. More...
 
class  CommandLineParamSetKey
 Class that is used as a parameter to commandLineParamSet() that allows only the CommandLine to set that a parmeter is set by the command line. More...
 
struct  isValidCommandLineType
 Determines whether or not the given type is a type that is supported for a command line parameter. More...
 
struct  Metadata
 
class  SetHitNodeKey
 Class that is used as a parameter to setHitNode() that allows only relevant classes to set the hit node. More...
 
class  SetParamHitNodeKey
 Class that is used as a parameter to setHitNode(param) that allows only relevant classes to set the hit node. More...
 

Public Types

typedef std::map< std::string, std::unique_ptr< Value >, std::less<> > map_type
 
typedef map_type::iterator iterator
 
typedef map_type::const_iterator const_iterator
 

Public Member Functions

 InputParameters (const InputParameters &rhs)
 
 InputParameters (const Parameters &rhs)
 
virtual ~InputParameters ()=default
 
virtual void clear () override
 
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.
 
std::string getClassDescription () const
 Returns the class description.
 
virtual void set_attributes (const std::string &name, bool inserted_only) override
 Override from libMesh to set user-defined attributes on our parameter.
 
std::optional< std::string > queryDeprecatedParamMessage (const std::string &name) const
 
template<typename T >
void setHelper (const std::string &name)
 This functions is called in set as a 'callback' to avoid code duplication.
 
template<typename T >
T & set (const std::string &name, bool quiet_mode=false)
 Returns a writable reference to the named parameters.
 
template<typename T , typename... Ts>
void setParameters (const std::string &name, const T &value, Ts... extra_input_parameters)
 Given a series of parameters names and values, sets each name to the corresponding value.
 
template<typename T >
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.
 
template<typename T >
void addRequiredParam (const std::string &name, const std::string &doc_string)
 This method adds a parameter and documentation string to the InputParameters object that will be extracted from the input file.
 
template<typename T >
void addRequiredParam (const std::string &name, const T &moose_enum, const std::string &doc_string)
 This version of addRequiredParam is here for a consistent use with MooseEnums.
 
template<typename T >
void addParam (const std::string &name, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
 Enable support for initializer lists as default arguments for container type.
 
template<typename T >
void addRequiredCustomTypeParam (const std::string &name, const std::string &custom_type, const std::string &doc_string)
 These methods add an option parameter and with a customer type to the InputParameters object.
 
template<typename T >
void addCustomTypeParam (const std::string &name, const T &value, const std::string &custom_type, const std::string &doc_string)
 
template<typename T >
void addCustomTypeParam (const std::string &name, const std::string &custom_type, const std::string &doc_string)
 
template<typename T >
void addDeprecatedCustomTypeParam (const std::string &name, const std::string &custom_type, const std::string &doc_string, const std::string &deprecation_msg)
 
template<typename T >
void addPrivateParam (const std::string &name, const T &value)
 These method add a parameter to the InputParameters object which can be retrieved like any other parameter.
 
template<typename T >
void addPrivateParam (const std::string &name)
 
template<typename T >
void addRequiredCommandLineParam (const std::string &name, const std::string &syntax, const std::string &doc_string)
 Add parameters for retrieval from the command line.
 
template<typename T >
void addCommandLineParam (const std::string &name, const std::string &syntax, const std::string &doc_string)
 
template<typename T >
void addCommandLineParam (const std::string &name, const std::string &syntax, const T &value, const std::string &doc_string)
 
template<typename T >
void addCommandLineParam (const std::string &name, const std::string &syntax, const std::initializer_list< typename T::value_type > &value, const std::string &doc_string)
 
template<typename T >
void addOptionalValuedCommandLineParam (const std::string &name, const std::string &syntax, const T &value, const std::string &doc_string)
 Add a command line parameter with an optional value.
 
void setGlobalCommandLineParam (const std::string &name)
 Sets the command line parameter with name as global.
 
template<typename T >
void addDeprecatedParam (const std::string &name, const T &value, const std::string &doc_string, const std::string &deprecation_message)
 
template<typename T >
void addDeprecatedParam (const std::string &name, const std::string &doc_string, const std::string &deprecation_message)
 
template<typename T >
void checkConsistentType (const std::string &name) const
 This method checks to make sure that we aren't adding a parameter with the same name but a different type.
 
bool isCommandLineParameter (const std::string &name) const
 
std::optional< InputParameters::CommandLineMetadata > queryCommandLineMetadata (const std::string &name) const
 
const InputParameters::CommandLineMetadata & getCommandLineMetadata (const std::string &name) const
 
void commandLineParamSet (const std::string &name, const CommandLineParamSetKey)
 Marks the command line parameter name as set by the CommandLine.
 
const std::string & getDescription (const std::string &name) const
 Get the documentation string for a parameter.
 
void addParamNamesToGroup (const std::string &space_delim_names, const std::string group_name)
 This method takes a space delimited list of parameter names and adds them to the specified group name.
 
void moveParamToGroup (const std::string &name, const std::string &group_name)
 This method moves a single parameter to a different group than the one it is already assigned to (for example, in a derived class intentionally re-grouping a base class's parameter).
 
void renameParameterGroup (const std::string &old_name, const std::string &new_name)
 This method renames a parameter group.
 
std::string getGroupName (const std::string &param_name) const
 This method retrieves the group name for the passed parameter name if one exists.
 
template<typename T >
void suppressParameter (const std::string &name)
 This method suppresses an inherited parameter so that it isn't required or valid in the derived class.
 
template<typename T >
void makeParamRequired (const std::string &name)
 Changes the parameter to be required.
 
template<typename T >
void makeParamNotRequired (const std::string &name)
 Changes the parameter to not be required.
 
void addCoupledVar (const std::string &name, const std::string &doc_string)
 This method adds a coupled variable name pair.
 
void addDeprecatedCoupledVar (const std::string &old_name, const std::string &new_name, const std::string &removal_date="")
 This method adds a deprecated coupled variable name pair.
 
void addCoupledVar (const std::string &name, const Real value, const std::string &doc_string)
 This method adds a coupled variable name pair.
 
void addCoupledVar (const std::string &name, const std::vector< Real > &value, const std::string &doc_string)
 This method adds a coupled variable name pair.
 
std::string getMooseType (const std::string &name) const
 Utility functions for retrieving one of the MooseTypes variables into the common "string" base class.
 
std::vector< std::string > getVecMooseType (const std::string &name) const
 
bool isMooseBaseObject () const
 
const std::string * queryObjectType () const
 
const std::string & getObjectType () const
 
const std::string & getObjectName () const
 
void addRequiredCoupledVar (const std::string &name, const std::string &doc_string)
 This method adds a coupled variable name pair.
 
std::string getDocString (const std::string &name) const
 Returns the documentation string for the specified parameter name.
 
void setDocString (const std::string &name, const std::string &doc)
 Set the doc string of a parameter.
 
std::string getDocUnit (const std::string &name) const
 Returns the documentation unit string for the specified parameter name.
 
void setDocUnit (const std::string &name, const std::string &doc_unit)
 Set the unit string of a parameter.
 
bool isParamRequired (const std::string &name) const
 Returns a boolean indicating whether the specified parameter is required or not.
 
void makeParamNotRequired (const std::string &name)
 Forces parameter of given name to be not required regardless of type.
 
bool isParamValid (const std::string &name) const
 This method returns parameters that have been initialized in one fashion or another, i.e.
 
bool isParamSetByAddParam (const std::string &name) const
 Returns whether or not the parameter was set due to addParam.
 
bool isParamDeprecated (const std::string &name) const
 Returns True if the parameters is deprecated.
 
bool isKokkosObject () const
 Returns whether this InputParameters belongs to a Kokkos object Checks whether MooseBase::kokkos_object_param is valid.
 
bool areAllRequiredParamsValid () const
 This method returns true if all of the parameters in this object are valid (i.e.
 
std::string type (const std::string &name) const
 Prints the type of the requested parameter by name.
 
bool isPrivate (const std::string &name) const
 Returns a Boolean indicating whether the specified parameter is private or not.
 
void declareControllable (const std::string &name, std::set< ExecFlagType > execute_flags={})
 Declare the given parameters as controllable.
 
void markControlled (const std::string &name)
 Marker a parameter that has been changed by the Control system (this is for output purposes)
 
bool isControllable (const std::string &name) const
 Returns a Boolean indicating whether the specified parameter is controllable.
 
const std::set< ExecFlagType > & getControllableExecuteOnTypes (const std::string &name) const
 Return the allowed execute flags for a controllable parameter.
 
void registerBase (const std::string &value)
 This method must be called from every base "Moose System" to create linkage with the Action System.
 
bool hasBase () const
 
const std::string & getBase () const
 
void registerSystemAttributeName (const std::string &value)
 This method is used to define the MOOSE system name that is used by the TheWarehouse object for storing objects to be retrieved for execution.
 
const std::string & getSystemAttributeName () const
 Get the system attribute name if it was registered.
 
void registerBuildableTypes (const std::string &names)
 This method is here to indicate which Moose types a particular Action may build.
 
void addRelationshipManager (const std::string &name, Moose::RelationshipManagerType rm_type, Moose::RelationshipManagerInputParameterCallback input_parameter_callback=nullptr)
 Tells MOOSE about a RelationshipManager that this object needs.
 
void clearRelationshipManagers ()
 Clears all currently registered RelationshipManagers.
 
const std::vector< std::string > & getBuildableTypes () const
 Returns the list of buildable types as a std::vector<std::string>
 
const std::vector< std::tuple< std::string, Moose::RelationshipManagerType, Moose::RelationshipManagerInputParameterCallback > > & getBuildableRelationshipManagerTypes () const
 Returns the list of buildable (or required) RelationshipManager object types for this object.
 
void checkParams (const std::string &parsing_syntax)
 This function checks parameters stored in the object to make sure they are in the correct state as the user expects: Required parameters are verified as valid meaning that they were either initialized when they were created, or were read from an input file or some other valid source.
 
std::vector< std::string > missingRequiredParamErrors (const std::string &parsing_syntax, const std::set< std::string > &skip_required_params={}, bool skip_private=false) const
 Return errors for missing required parameters.
 
std::optional< std::pair< bool, std::string > > parameterRangeCheck (const Parameters::Value &value, const std::string &long_name, const std::string &short_name, const bool include_param_path)
 Performs a range check on the parameter (which must have a range check)
 
void finalize (const std::string &parsing_syntax)
 Finalizes the parameters, which must be done before constructing any objects with these parameters (to be called in the corresponding factories).
 
std::filesystem::path getFileBase (const std::optional< std::string > &param_name=std::optional< std::string >()) const
 
std::set< std::string >::const_iterator coupledVarsBegin () const
 Methods returning iterators to the coupled variables names stored in this InputParameters object.
 
std::set< std::string >::const_iterator coupledVarsEnd () const
 
const std::set< std::string > & getCoupledVariableParamNames () const
 Return the coupled variable parameter names.
 
const std::unordered_map< std::string, std::string > & getNewToDeprecatedVarMap () const
 Return the new to deprecated variable name map.
 
bool isRangeChecked (const std::string &param_name) const
 Return whether a parameter has a range check.
 
std::string rangeCheckedFunction (const std::string &name) const
 Return the range check function for any parameter (empty string if it is not range checked)
 
bool hasDefault (const std::string &param_name) const
 Return whether a parameter has a default.
 
bool hasCoupledVar (const std::string &coupling_name) const
 Return whether or not the coupled variable exists.
 
bool hasCoupledValue (const std::string &coupling_name) const
 Return whether or not the coupled variable exists.
 
void setCoupledVar (const std::string &coupling_name, const std::string &value)
 Set a coupled variable parameter to a single variable name.
 
void setCoupledVar (const std::string &coupling_name, const std::vector< VariableName > &values)
 Set a coupled variable parameter to multiple variable names.
 
const std::vector< VariableName > & getCoupledVar (const std::string &coupling_name) const
 Get a coupled variable parameter.
 
bool hasDefaultCoupledValue (const std::string &coupling_name) const
 Return whether or not the requested parameter has a default coupled value.
 
Real defaultCoupledValue (const std::string &coupling_name, unsigned int i=0) const
 Get the default value for an optionally coupled variable.
 
unsigned int numberDefaultCoupledValues (const std::string &coupling_name) const
 Get the number of defaulted coupled value entries.
 
void defaultCoupledValue (const std::string &coupling_name, Real value, unsigned int i=0)
 Set the default value for an optionally coupled variable (called by the Parser).
 
std::map< std::string, std::pair< std::string, std::string > > getAutoBuildVectors () const
 Returns the auto build vectors for all parameters.
 
void applyParameters (const InputParameters &common, const std::vector< std::string > &exclude={}, const bool allow_private=false)
 Method for applying common parameters.
 
void applyCommonUserSetParameters (const InputParameters &common, const std::vector< std::string > &exclude={}, const bool allow_private=false)
 Variant of applyParameters that only applies parameters explicitly set by the user in common (i.e.
 
void applySpecificParameters (const InputParameters &common, const std::vector< std::string > &include, bool allow_private=false)
 Method for applying common parameters.
 
void applyParameter (const InputParameters &common, const std::string &common_name, bool allow_private=false)
 Apply values from a single parameter in common, to a single parameter stored in this object.
 
void applyCoupledVar (const InputParameters &common, const std::string &var_name)
 Apply properties of a single coupled variable in common, to a single coupled variable stored in this object.
 
bool paramSetByUser (const std::string &name) const
 Deprecated method.
 
bool isParamSetByUser (const std::string &name) const
 Method returns true if the parameter was set by the user.
 
bool isParamDefined (const std::string &name) const
 Method returns true if the parameter is defined for any type.
 
template<typename T >
const T * queryParam (const std::string &name) const
 Query a parameter.
 
template<typename R1 , typename R2 , typename V1 = typename std::conditional<std::is_same<R1, MooseEnumItem>::value, MultiMooseEnum, std::vector<R1>>::type, typename V2 = typename std::conditional<std::is_same<R2, MooseEnumItem>::value, MultiMooseEnum, std::vector<R2>>::type>
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::set< std::string > getParametersList () const
 
std::set< std::string > getControllableParameters () const
 Return list of controllable parameters.
 
std::set< std::string > getGroupParameters (const std::string &group) const
 Return names of parameters within a group.
 
void setReservedValues (const std::string &name, const std::set< std::string > &reserved)
 Provide a set of reserved values for a parameter.
 
std::set< std::string > reservedValues (const std::string &name) const
 Get a set of reserved parameter values.
 
std::string blockLocation () const
 
std::string blockFullpath () const
 
const hit::Node * getHitNode (const std::string &param) const
 
void setHitNode (const std::string &param, const hit::Node &node, const SetParamHitNodeKey)
 Sets the hit node associated with the parameter param to node.
 
std::string inputLocation (const std::string &param) const
 
std::string paramFullpath (const std::string &param) const
 
std::string paramLocationPrefix (const std::string &param) const
 Returns a prefix containing the parameter name and location (if available)
 
template<typename... Args>
std::string paramMessage (const std::string &param, Args... args) const
 
template<typename... Args>
void mooseError (Args &&... args) const
 Emits an error prefixed with the object information, if available.
 
template<typename... Args>
void paramError (const std::string &param, Args... args) const
 Emits a parameter error prefixed with the parameter location and object information if available.
 
std::string rawParamVal (const std::string &param) const
 
template<typename T >
void ignoreParameter (const std::string &name)
 Informs this object that values for this parameter set from the input file or from the command line should be ignored.
 
bool shouldIgnore (const std::string &name)
 Whether to ignore the value of an input parameter set in the input file or from the command line.
 
template<typename T >
bool isType (const std::string &name) const
 
std::string varName (const std::string &var_param_name, const std::string &moose_object_with_var_param_name) const
 Determine the actual variable name from the given variable \emph parameter name.
 
void renameParam (const std::string &old_name, const std::string &new_name, const std::string &new_docstring)
 Rename a parameter and provide a new documentation string.
 
void renameCoupledVar (const std::string &old_name, const std::string &new_name, const std::string &new_docstring)
 Rename a coupled variable and provide a new documentation string.
 
void deprecateParam (const std::string &old_name, const std::string &new_name, const std::string &removal_date)
 
void deprecateCoupledVar (const std::string &old_name, const std::string &new_name, const std::string &removal_date)
 
const std::string & checkForRename (const std::string &name) const
 Checks whether the provided name is a renamed parameter name.
 
template<typename T >
const T & get (std::string_view name) const
 A wrapper around the Parameters base class method.
 
template<typename T >
bool have_parameter (std::string_view name) const
 A wrapper around the Parameters base class method.
 
template<typename T >
void transferParam (const InputParameters &source_param, const std::string &name, const std::string &new_name="", const std::string &new_description="")
 A routine to transfer a parameter from one class' validParams to another.
 
std::vector< std::string > paramAliases (const std::string &param_name) const
 Return all the aliased names associated with param_name.
 
const hit::Node * getHitNode () const
 
void setHitNode (const hit::Node &node, const SetHitNodeKey)
 Sets the hit node that represents the syntax responsible for creating these parameters.
 
bool isFinalized () const
 
std::optional< Moose::DataFileUtils::Path > queryDataFileNamePath (const std::string &name) const
 
std::optional< std::string > setupVariableNames (std::vector< VariableName > &names, const hit::Node &node, const Moose::PassKey< Moose::Builder >)
 Entrypoint for the Builder to setup a std::vector<VariableName> parameter, which will setup the default variable names if appropriate.
 
template<>
void addRequiredParam (const std::string &name, const MooseEnum &moose_enum, const std::string &doc_string)
 
template<>
void addRequiredParam (const std::string &name, const MultiMooseEnum &moose_enum, const std::string &doc_string)
 
template<>
void addParam (const std::string &, const std::string &)
 
template<>
void addParam (const std::string &, const std::string &)
 
template<>
void addPrivateParam (const std::string &)
 
template<>
void addPrivateParam (const std::string &)
 
template<>
void addDeprecatedParam (const std::string &, const std::string &, const std::string &)
 
template<>
void addDeprecatedParam (const std::string &, const std::string &, const std::string &)
 
template<>
void addRequiredParam (const std::string &name, const MooseEnum &moose_enum, const std::string &doc_string)
 
template<>
void addRequiredParam (const std::string &name, const MultiMooseEnum &moose_enum, const std::string &doc_string)
 
template<>
void addParam (const std::string &, const std::string &)
 
template<>
void addParam (const std::string &, const std::string &)
 
template<>
void addPrivateParam (const std::string &)
 
template<>
void addPrivateParam (const std::string &)
 
template<>
void addDeprecatedParam (const std::string &, const std::string &, const std::string &)
 
template<>
void addDeprecatedParam (const std::string &, const std::string &, const std::string &)
 
virtual Parameters & operator+= (const Parameters &source)
 
void insert (const std::string &)
 
T & set (const std::string &)
 
void remove (std::string_view)
 
std::size_t n_parameters () const
 
unsigned int n_parameters () const
 
void print (std::ostream &os=libMesh::out) const
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
template<typename T , typename UP_T >
std::optional< std::pair< bool, std::string > > rangeCheck (const std::string &full_name, const std::string &short_name, const InputParameters::Parameter< T > &param, const bool include_param_path=true)
 Runs a range on the supplied parameter if it exists and throws an error if that check fails.
 
template<typename T , typename UP_T >
std::optional< std::pair< bool, std::string > > rangeCheck (const std::string &full_name, const std::string &short_name, const InputParameters::Parameter< std::vector< T > > &param, const bool include_param_path=true)
 
template<typename T , typename S >
void addParam (const std::string &name, const S &value, const std::string &doc_string)
 These methods add an optional parameter and a documentation string to the InputParameters object.
 
template<typename T >
void addParam (const std::string &name, const std::string &doc_string)
 
template<typename T >
void addRequiredRangeCheckedParam (const std::string &name, const std::string &parsed_function, const std::string &doc_string)
 These methods add an range checked parameters.
 
template<typename T >
void addRangeCheckedParam (const std::string &name, const T &value, const std::string &parsed_function, const std::string &doc_string)
 
template<typename T >
void addRangeCheckedParam (const std::string &name, const std::string &parsed_function, const std::string &doc_string)
 
void addCoupledVarWithAutoBuild (const std::string &name, const std::string &base_name, const std::string &num_name, const std::string &doc_string)
 These methods add a coupled variable name pair.
 
void addRequiredCoupledVarWithAutoBuild (const std::string &name, const std::string &base_name, const std::string &num_name, const std::string &doc_string)
 
void collapseSyntaxNesting (bool collapse)
 Mutators for controlling whether or not the outermost level of syntax will be collapsed when printed.
 
bool collapseSyntaxNesting () const
 
void mooseObjectSyntaxVisibility (bool visibility)
 Mutators for controlling whether or not the outermost level of syntax will be collapsed when printed.
 
bool mooseObjectSyntaxVisibility () const
 
InputParameters & operator= (const InputParameters &rhs)
 
InputParameters & operator+= (const InputParameters &rhs)
 

Static Public Member Functions

template<>
const MooseEnum & getParamHelper (const std::string &name, const InputParameters &pars)
 
template<>
const MultiMooseEnum & getParamHelper (const std::string &name, const InputParameters &pars)
 
template<>
const MooseEnum & getParamHelper (const std::string &name_in, const InputParameters &pars)
 
template<>
const MultiMooseEnum & getParamHelper (const std::string &name_in, const InputParameters &pars)
 
template<typename T >
static const T & getParamHelper (const std::string &name, const InputParameters &pars)
 

Protected Attributes

map_type _values
 

Private Member Functions

 InputParameters ()
 
void setParameters ()
 Method to terminate the recursive setParameters definition.
 
template<typename T >
std::string appendFunctorDescription (const std::string &doc_string) const
 Appends description of what a functor is to a doc string.
 
void setDeprecatedVarDocString (const std::string &new_name, const std::string &doc_string)
 Private method for setting deprecated coupled variable documentation strings.
 
void renameParamInternal (const std::string &old_name, const std::string &new_name, const std::string &docstring, const std::string &removal_date)
 
void renameCoupledVarInternal (const std::string &old_name, const std::string &new_name, const std::string &docstring, const std::string &removal_date)
 
std::pair< std::string, const hit::Node * > paramMessageContext (const std::string &param) const
 Get the context associated with a parameter for a message.
 
std::string paramMessagePrefix (const std::string &param) const
 Get a prefix for messages associated with a parameter.
 
Metadata & at (const std::string &param_name)
 
const Metadata & at (const std::string &param_name) const
 
void allowCopy (bool status)
 Toggle the availability of the copy constructor.
 
void checkParamName (const std::string &name) const
 Make sure the parameter name doesn't have any invalid characters.
 
template<typename T , typename S >
void setParamHelper (const std::string &name, T &l_value, const S &r_value)
 This method is called when adding a Parameter with a default value, can be specialized for non-matching types.
 
template<typename T >
void addCommandLineParamHelper (const std::string &name, const std::string &syntax, const bool required, const bool value_required)
 Helper for all of the addCommandLineParam() calls, which sets up _cl_data in the metadata.
 
void callMooseError (std::string msg, const bool with_prefix=true, const hit::Node *node=nullptr, const bool show_trace=true) const
 Internal helper for calling back to mooseError(), ideally from the underlying MooseBase object if it is available (for more context)
 
template<>
void setParamHelper (const std::string &name, PostprocessorName &l_value, const Real &r_value)
 
template<>
void setParamHelper (const std::string &name, PostprocessorName &l_value, const int &r_value)
 
template<>
void setParamHelper (const std::string &, FunctionName &l_value, const Real &r_value)
 
template<>
void setParamHelper (const std::string &, FunctionName &l_value, const int &r_value)
 
template<>
void setParamHelper (const std::string &, MaterialPropertyName &l_value, const Real &r_value)
 
template<>
void setParamHelper (const std::string &, MaterialPropertyName &l_value, const int &r_value)
 
template<>
void setParamHelper (const std::string &, MooseFunctorName &l_value, const Real &r_value)
 
template<>
void setParamHelper (const std::string &, MooseFunctorName &l_value, const int &r_value)
 
template<>
void setParamHelper (const std::string &, PostprocessorName &l_value, const Real &r_value)
 
template<>
void setParamHelper (const std::string &, PostprocessorName &l_value, const int &r_value)
 
template<>
void setParamHelper (const std::string &, FunctionName &l_value, const Real &r_value)
 
template<>
void setParamHelper (const std::string &, FunctionName &l_value, const int &r_value)
 
template<>
void setParamHelper (const std::string &, MaterialPropertyName &l_value, const Real &r_value)
 
template<>
void setParamHelper (const std::string &, MaterialPropertyName &l_value, const int &r_value)
 
template<>
void setParamHelper (const std::string &, MooseFunctorName &l_value, const Real &r_value)
 
template<>
void setParamHelper (const std::string &, MooseFunctorName &l_value, const int &r_value)
 

Static Private Member Functions

template<typename T >
static constexpr bool isFunctorNameType ()
 

Private Attributes

std::map< std::string, Metadata > _params
 The actual parameter data.
 
std::set< std::string > _coupled_vars
 The coupled variables set.
 
std::string _class_description
 The class description for the owning object.
 
std::vector< std::string > _buildable_types
 The parameter is used to restrict types that can be built.
 
std::vector< std::tuple< std::string, Moose::RelationshipManagerType, Moose::RelationshipManagerInputParameterCallback > > _buildable_rm_types
 The RelationshipManagers that this object may either build or require.
 
bool _collapse_nesting
 This parameter collapses one level of nesting in the syntax blocks.
 
bool _moose_object_syntax_visibility
 This parameter hides derived MOOSE object types from appearing in syntax dumps.
 
bool _show_deprecated_message
 Flag for disabling deprecated parameters message, this is used by applyParameters to avoid dumping messages.
 
bool _allow_copy
 A flag for toggling the error message in the copy constructor.
 
std::unordered_map< std::string, std::string > _new_to_deprecated_coupled_vars
 A map from deprecated coupled variable names to the new blessed name.
 
std::map< std::string, std::pair< std::string, std::string > > _old_to_new_name_and_dep
 A map from base-class/deprecated parameter names to derived-class/blessed parameter names and the deprecation messages in the case that the "old" parameter name is a deprecated parameter name.
 
std::multimap< std::string, std::string > _new_to_old_names
 A map from derived-class/blessed parameter names to associated base-class/deprecated parameter names.
 
const hit::Node * _hit_node
 The hit node representing the syntax that created these parameters, if any.
 
bool _finalized
 Whether or not we've called finalize() on these parameters yet.
 

Friends

class InputParameterWarehouse
 
class Parser
 
class ActionWarehouse
 
InputParameters emptyInputParameters ()
 

Detailed Description

The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.

Definition at line 67 of file InputParameters.h.

Constructor & Destructor Documentation

◆ InputParameters() [1/3]

InputParameters::InputParameters ( const InputParameters &  rhs)

Definition at line 48 of file InputParameters.C.

50{
51 *this = rhs;
52}
bool _show_deprecated_message
Flag for disabling deprecated parameters message, this is used by applyParameters to avoid dumping me...
bool _allow_copy
A flag for toggling the error message in the copy constructor.

◆ InputParameters() [2/3]

InputParameters::InputParameters ( const Parameters &  rhs)

Definition at line 54 of file InputParameters.C.

56{
57 _params.clear();
58 Parameters::operator=(rhs);
59 _collapse_nesting = false;
61}
bool _collapse_nesting
This parameter collapses one level of nesting in the syntax blocks.
bool _moose_object_syntax_visibility
This parameter hides derived MOOSE object types from appearing in syntax dumps.
std::map< std::string, Metadata > _params
The actual parameter data.

◆ ~InputParameters()

virtual InputParameters::~InputParameters ( )
virtualdefault

◆ InputParameters() [3/3]

InputParameters::InputParameters ( )
private

Definition at line 37 of file InputParameters.C.

38 : Parameters(),
39 _collapse_nesting(false),
42 _allow_copy(true),
43 _hit_node(nullptr),
44 _finalized(false)
45{
46}
bool _finalized
Whether or not we've called finalize() on these parameters yet.
const hit::Node * _hit_node
The hit node representing the syntax that created these parameters, if any.

Member Function Documentation

◆ addClassDescription()

void InputParameters::addClassDescription ( const std::string &  doc_string)

This method adds a description of the class that will be displayed in the input file syntax dump.

Definition at line 81 of file InputParameters.C.

82{
83 _class_description = doc_string;
84}
std::string _class_description
The class description for the owning object.

Referenced by ConservativeAdvectionTempl< is_ad >::generalParams(), ActionComponent::validParams(), ComponentJunction::validParams(), CylinderComponent::validParams(), MeshGeneratorComponent::validParams(), AdaptivityAction::validParams(), AddActionComponentAction::validParams(), AddAuxVariableAction::validParams(), AddBCAction::validParams(), AddBoundsVectorsAction::validParams(), AddChainControlAction::validParams(), AddConstraintAction::validParams(), AddControlAction::validParams(), AddConvergenceAction::validParams(), AddCorrectorAction::validParams(), AddDamperAction::validParams(), AddDefaultConvergenceAction::validParams(), AddDGKernelAction::validParams(), AddDiracKernelAction::validParams(), AddDistributionAction::validParams(), AddElementalFieldAction::validParams(), AddFieldSplitAction::validParams(), AddFunctionAction::validParams(), AddFunctorMaterialAction::validParams(), AddFVBCAction::validParams(), AddFVGradientMethodAction::validParams(), AddFVInitialConditionAction::validParams(), AddFVInterfaceKernelAction::validParams(), AddFVInterpolationMethodAction::validParams(), AddFVKernelAction::validParams(), AddHDGKernelAction::validParams(), AddIndicatorAction::validParams(), AddInitialConditionAction::validParams(), AddInterfaceKernelAction::validParams(), AddKernelAction::validParams(), AddLinearFVBCAction::validParams(), AddLinearFVKernelAction::validParams(), AddMarkerAction::validParams(), AddMaterialAction::validParams(), AddMeshDivisionAction::validParams(), AddMeshGeneratorAction::validParams(), AddMeshModifiersAction::validParams(), AddMultiAppAction::validParams(), AddNodalKernelAction::validParams(), AddNodalNormalsAction::validParams(), AddOutputAction::validParams(), AddPeriodicBCAction::validParams(), AddPositionsAction::validParams(), AddPostprocessorAction::validParams(), AddReporterAction::validParams(), AddSamplerAction::validParams(), AddScalarKernelAction::validParams(), AddTimesAction::validParams(), AddTimeStepperAction::validParams(), AddTransferAction::validParams(), AddUserObjectAction::validParams(), AddVectorPostprocessorAction::validParams(), AutoCheckpointAction::validParams(), BatchMeshGeneratorAction::validParams(), ChainControlSetupAction::validParams(), CheckFVBCAction::validParams(), CombineComponentsMeshes::validParams(), CommonOutputAction::validParams(), ComposeTimeStepperAction::validParams(), CopyNodalVarsAction::validParams(), CreateApplicationBlockAction::validParams(), CreateDisplacedProblemAction::validParams(), CreateExecutionerAction::validParams(), CreateMeshSetupActionsForComponents::validParams(), CreateProblemAction::validParams(), DeprecatedBlockAction::validParams(), DisplayGhostingAction::validParams(), DynamicObjectRegistrationAction::validParams(), ElementIDOutputAction::validParams(), GlobalParamsAction::validParams(), MaterialOutputAction::validParams(), MooseObjectAction::validParams(), PartitionerAction::validParams(), ProjectedStatefulMaterialStorageAction::validParams(), ReadExecutorParamsAction::validParams(), SetAdaptivityOptionsAction::validParams(), SetupDebugAction::validParams(), SetupMeshAction::validParams(), SetupMeshCompleteAction::validParams(), SetupPreconditionerAction::validParams(), SetupPredictorAction::validParams(), SetupQuadratureAction::validParams(), SetupResidualDebugAction::validParams(), SetupTimeIntegratorAction::validParams(), SetupTimeStepperAction::validParams(), StartWebServerControlAction::validParams(), AdvectiveFluxAux::validParams(), ArrayParsedAux::validParams(), ArrayVariableComponent::validParams(), ArrayVarReductionAux::validParams(), BuildArrayVariableAux::validParams(), ConstantAux::validParams(), ContainsPointAux::validParams(), CopyValueAux::validParams(), DebugResidualAux::validParams(), DiffusionFluxAux::validParams(), DivergenceAuxTempl< is_ad >::validParams(), ElementAdaptivityLevelAux::validParams(), ElementH1ErrorFunctionAux::validParams(), ElementIDAux::validParams(), ElementIntegerAux::validParams(), ElementL2ErrorFunctionAux::validParams(), ElementLengthAux::validParams(), ElementLpNormAux::validParams(), ElementNormalAux::validParams(), ElementQualityAux::validParams(), ElementUOAux::validParams(), ExtraElementIDAux::validParams(), ForcingFunctionAux::validParams(), FunctionArrayAux::validParams(), FunctionAux::validParams(), FunctorAux::validParams(), FunctorCoordinatesFunctionAux::validParams(), FunctorElementalGradientAuxTempl< is_ad >::validParams(), FunctorVectorElementalAuxTempl< is_ad >::validParams(), GapValueAux::validParams(), GhostingFromUOAux::validParams(), HardwareIDAux::validParams(), InterfaceValueUserObjectAux::validParams(), MaterialRankFourTensorAuxTempl< is_ad >::validParams(), MaterialRankTwoTensorAuxTempl< T, is_ad >::validParams(), MaterialRateRealAuxTempl< is_ad >::validParams(), MaterialRealAuxTempl< is_ad, is_functor >::validParams(), MaterialRealDenseMatrixAux::validParams(), MaterialRealTensorValueAuxTempl< is_ad >::validParams(), MaterialRealVectorValueAuxTempl< T, is_ad, is_functor >::validParams(), MaterialStdVectorAuxTempl< is_ad >::validParams(), MaterialStdVectorRealGradientAux::validParams(), MeshDivisionAux::validParams(), NearestNodeDistanceAux::validParams(), NearestNodeValueAux::validParams(), NodalPatchRecoveryAuxBase::validParams(), NormalizationAux::validParams(), ParsedAux::validParams(), ParsedVectorAux::validParams(), PenetrationAux::validParams(), ProcessorIDAux::validParams(), ProjectionAux::validParams(), QuotientAux::validParams(), SecondTimeDerivativeAux::validParams(), SolutionAux::validParams(), SpatialUserObjectAux::validParams(), TagMatrixAux::validParams(), TagVectorArrayVariableAux::validParams(), TagVectorArrayVariableValueAux::validParams(), TagVectorAux::validParams(), TimeDerivativeAux::validParams(), VariableGradientComponent::validParams(), VariableTimeIntegrationAux::validParams(), VectorFunctionAux::validParams(), VectorMagnitudeAux::validParams(), VectorPostprocessorVisualizationAux::validParams(), VectorVariableComponentAux::validParams(), VectorVariableMagnitudeAux::validParams(), VolumeAux::validParams(), WeightedGapAux::validParams(), ConstantScalarAux::validParams(), FunctionScalarAux::validParams(), QuotientScalarAux::validParams(), ScalarTagMatrixAux::validParams(), ScalarTagVectorAux::validParams(), SolutionScalarAux::validParams(), ADArrayDirichletBC::validParams(), ADDirichletBC::validParams(), ADFunctionDirichletBC::validParams(), ADFunctionNeumannBC::validParams(), ADFunctionPenaltyDirichletBC::validParams(), ADPenaltyDirichletBC::validParams(), ADRobinBC::validParams(), ADVectorFunctionDirichletBC::validParams(), ADVectorFunctionNeumannBC::validParams(), ADVectorMatchedValueBC::validParams(), ADVectorRobinBC::validParams(), ArrayDirichletBC::validParams(), ArrayHFEMDirichletBC::validParams(), ArrayNeumannBC::validParams(), ArrayPenaltyDirichletBC::validParams(), ArrayVacuumBC::validParams(), BoundaryIntegralValueConstraint::validParams(), CoupledVarNeumannBCTempl< is_ad >::validParams(), DGFunctionDiffusionDirichletBC::validParams(), DiffusionFluxBC::validParams(), DirectionalNeumannBC::validParams(), DirichletBC::validParams(), EigenArrayDirichletBC::validParams(), EigenDirichletBC::validParams(), FunctionDirichletBC::validParams(), FunctionGradientNeumannBC::validParams(), FunctionNeumannBC::validParams(), FunctionPenaltyDirichletBC::validParams(), FunctorDirichletBC::validParams(), FunctorNeumannBC::validParams(), HFEMDirichletBC::validParams(), MatchedValueBCTempl< is_ad >::validParams(), MatNeumannBCTempl< is_ad >::validParams(), NeumannBCTempl< is_ad >::validParams(), OneDEqualValueConstraintBC::validParams(), PenaltyDirichletBC::validParams(), PostprocessorDirichletBC::validParams(), PostprocessorNeumannBC::validParams(), SinDirichletBC::validParams(), SinNeumannBC::validParams(), VacuumBC::validParams(), VectorCurlPenaltyDirichletBC::validParams(), VectorDirichletBC::validParams(), VectorDivPenaltyDirichletBC::validParams(), VectorFunctionDirichletBC::validParams(), VectorPenaltyDirichletBC::validParams(), WeakGradientBC::validParams(), ConstantBounds::validParams(), VariableOldValueBounds::validParams(), GetFunctionValueChainControl::validParams(), GetPostprocessorChainControl::validParams(), LimitChainControl::validParams(), ParsedChainControl::validParams(), PIDChainControl::validParams(), RealToBoolChainControl::validParams(), ScaleOldChainControl::validParams(), SetValueChainControlTempl< T >::validParams(), SmootherChainControl::validParams(), TerminateChainControl::validParams(), UnitTripChainControl::validParams(), ADPenaltyPeriodicSegmentalConstraint::validParams(), ADPeriodicSegmentalConstraint::validParams(), CoupledTiedValueConstraint::validParams(), EqualGradientConstraint::validParams(), EqualValueBoundaryConstraint::validParams(), EqualValueConstraint::validParams(), EqualValueEmbeddedConstraintTempl< is_ad >::validParams(), LinearNodalConstraint::validParams(), OldEqualValueConstraint::validParams(), PenaltyEqualValueConstraintTempl< is_ad >::validParams(), PenaltyPeriodicSegmentalConstraint::validParams(), PeriodicSegmentalConstraint::validParams(), TiedValueConstraint::validParams(), BoolFunctionControl::validParams(), ConditionalFunctionEnableControl::validParams(), PIDTransientControl::validParams(), RealFunctionControl::validParams(), TimePeriod::validParams(), TimePeriodBase::validParams(), TimesEnableControl::validParams(), WebServerControl::validParams(), DefaultMultiAppFixedPointConvergence::validParams(), DefaultNonlinearConvergence::validParams(), DefaultSteadyStateConvergence::validParams(), IterationCountConvergence::validParams(), MultiPostprocessorConvergence::validParams(), ParsedConvergence::validParams(), PostprocessorConvergence::validParams(), PostprocessorSteadyStateConvergence::validParams(), ReferenceResidualConvergence::validParams(), FunctorNodalCorrector::validParams(), PointwiseRenormalizeVector::validParams(), BoundingValueElementDamper::validParams(), BoundingValueNodalDamper::validParams(), ConstantDamper::validParams(), MaxIncrement::validParams(), ADDGAdvection::validParams(), ADDGDiffusion::validParams(), ADDGKernel::validParams(), ArrayDGDiffusion::validParams(), ArrayHFEMDiffusion::validParams(), DGConvection::validParams(), DGDiffusion::validParams(), HFEMDiffusion::validParams(), HFEMTestJump::validParams(), HFEMTrialJump::validParams(), ConstantPointSource::validParams(), FunctionDiracSource::validParams(), FunctorDiracKernel::validParams(), ReporterPointSource::validParams(), VectorConstantPointSource::validParams(), EigenExecutionerBase::validParams(), EigenProblemSolve::validParams(), Eigenvalue::validParams(), InversePowerMethod::validParams(), Steady::validParams(), Transient::validParams(), TransientBase::validParams(), NullExecutor::validParams(), Axisymmetric2D3DSolutionFunction::validParams(), BicubicSplineFunction::validParams(), CoarsenedPiecewiseLinear::validParams(), CompositeFunction::validParams(), ConstantFunction::validParams(), ImageFunction::validParams(), LinearCombinationFunction::validParams(), MooseParsedFunction::validParams(), MooseParsedGradFunction::validParams(), MooseParsedVectorFunction::validParams(), PeriodicFunction::validParams(), PiecewiseBilinear::validParams(), PiecewiseConstant::validParams(), PiecewiseConstantFromCSV::validParams(), PiecewiseFunction::validParams(), PiecewiseLinear::validParams(), PiecewiseLinearBase::validParams(), PiecewiseLinearFromVectorPostprocessor::validParams(), PiecewiseMulticonstant::validParams(), PiecewiseMultilinear::validParams(), SplineFunction::validParams(), FunctorADConverterTempl< T >::validParams(), FunctorChangeFunctorMaterialTempl< is_ad >::validParams(), FunctorSmootherTempl< T >::validParams(), GenericFunctorGradientMaterialTempl< is_ad >::validParams(), GenericFunctorMaterialTempl< is_ad >::validParams(), GenericFunctorTimeDerivativeMaterialTempl< is_ad >::validParams(), GenericVectorFunctorMaterialTempl< is_ad >::validParams(), ParsedFunctorMaterialTempl< is_ad >::validParams(), VectorMagnitudeFunctorMaterialTempl< is_ad >::validParams(), FVBoundaryIntegralValueConstraint::validParams(), FVBoundaryScalarLagrangeMultiplierConstraint::validParams(), FVConstantScalarOutflowBC::validParams(), FVDirichletBC::validParams(), FVDirichletBCBase::validParams(), FVFunctionDirichletBC::validParams(), FVFunctionNeumannBC::validParams(), FVFunctorDirichletBCTempl< is_ad >::validParams(), FVFunctorNeumannBC::validParams(), FVNeumannBC::validParams(), FVOrthogonalBoundaryDiffusion::validParams(), FVPostprocessorDirichletBC::validParams(), FVGradientMethod::validParams(), FVGreenGaussGradient::validParams(), FVConstantIC::validParams(), FVFunctionIC::validParams(), FVDiffusionInterface::validParams(), FVOneVarDiffusionInterface::validParams(), FVScalarLagrangeMultiplierInterface::validParams(), FVTwoVarContinuityConstraint::validParams(), FVAdvectedMinmodWeightBased::validParams(), FVAdvectedMUSCLDeferredCorrection::validParams(), FVAdvectedUpwind::validParams(), FVAdvectedVanLeerWeightBased::validParams(), FVGeometricAverage::validParams(), FVHarmonicAverage::validParams(), FVInterpolationMethod::validParams(), FVAdvection::validParams(), FVAnisotropicDiffusion::validParams(), FVBodyForce::validParams(), FVBoundedValueConstraint::validParams(), FVCoupledForce::validParams(), FVDiffusion::validParams(), FVDivergence::validParams(), FVFunctorTimeKernel::validParams(), FVIntegralValueConstraint::validParams(), FVMassMatrix::validParams(), FVMatAdvection::validParams(), FVOrthogonalDiffusion::validParams(), FVPointValueConstraint::validParams(), FVReaction::validParams(), FVScalarLagrangeMultiplierConstraint::validParams(), FVTimeKernel::validParams(), ArrayConstantIC::validParams(), ArrayFunctionIC::validParams(), BoundingBoxIC::validParams(), ConstantIC::validParams(), FunctionIC::validParams(), FunctionScalarIC::validParams(), FunctorIC::validParams(), IntegralPreservingFunctionIC::validParams(), RandomIC::validParams(), RandomICBase::validParams(), ScalarComponentIC::validParams(), ScalarConstantIC::validParams(), ScalarSolutionIC::validParams(), SolutionIC::validParams(), VectorConstantIC::validParams(), VectorFunctionIC::validParams(), AnalyticalIndicator::validParams(), GradientJumpIndicator::validParams(), LaplacianJumpIndicator::validParams(), ValueJumpIndicatorTempl< ComputeValueType >::validParams(), ADMatInterfaceReaction::validParams(), InterfaceDiffusion::validParams(), InterfaceReaction::validParams(), PenaltyInterfaceDiffusionTempl< T, is_ad >::validParams(), OutputInterface::validParams(), ADArrayDiffusion::validParams(), ADArrayReaction::validParams(), ADFluxDivergence::validParams(), ADKernelCurl::validParams(), ADMatCoupledForce::validParams(), ADTimeDerivative::validParams(), ADVectorDiffusion::validParams(), ADVectorTimeDerivative::validParams(), AnisotropicDiffusion::validParams(), ArrayBodyForce::validParams(), ArrayCoupledForce::validParams(), ArrayCoupledTimeDerivative::validParams(), ArrayDiffusion::validParams(), ArrayReaction::validParams(), ArrayTimeDerivative::validParams(), BodyForceTempl< is_ad >::validParams(), CoefReactionTempl< is_ad >::validParams(), CoupledForceTempl< is_ad >::validParams(), CoupledTimeDerivative::validParams(), Diffusion::validParams(), DivDivField::validParams(), DivField::validParams(), FunctionDiffusion::validParams(), FunctorKernel::validParams(), GradField::validParams(), KernelCurl::validParams(), MassEigenKernel::validParams(), MassLumpedTimeDerivative::validParams(), MassMatrix::validParams(), MatBodyForceTempl< is_ad, Parent >::validParams(), MatCoupledForce::validParams(), MatDiffusionTempl< is_ad >::validParams(), MaterialPropertyValueTempl< is_ad >::validParams(), MatReactionTempl< is_ad >::validParams(), NullKernel::validParams(), ReactionTempl< is_ad >::validParams(), ScalarLagrangeMultiplier::validParams(), ScalarLMKernelTempl< is_ad >::validParams(), TimeDerivative::validParams(), VectorBodyForce::validParams(), VectorCoupledTimeDerivative::validParams(), VectorDiffusion::validParams(), VectorFunctionReaction::validParams(), VectorTimeDerivative::validParams(), KokkosIntegralMaterialProperty< Base >::validParams(), LibtorchNeuralNetControl::validParams(), TorchScriptMaterial::validParams(), LibtorchControlValuePostprocessor::validParams(), LibtorchArtificialNeuralNetParameters::validParams(), TorchScriptUserObject::validParams(), LinearFVAdvectionDiffusionExtrapolatedBC::validParams(), LinearFVAdvectionDiffusionFunctorDirichletBC::validParams(), LinearFVAdvectionDiffusionFunctorNeumannBC::validParams(), LinearFVAdvectionDiffusionFunctorRobinBC::validParams(), LinearFVAdvectionDiffusionOutflowBC::validParams(), LinearFVAdvectionDiffusionScalarSymmetryBC::validParams(), LinearFVAnisotropicDiffusionFunctorNeumannBC::validParams(), LinearFVAdvection::validParams(), LinearFVAnisotropicDiffusion::validParams(), LinearFVDiffusion::validParams(), LinearFVReaction::validParams(), LinearFVSource::validParams(), LinearFVTimeDerivative::validParams(), BoundaryMarker::validParams(), BoundaryPreservedMarker::validParams(), BoxMarker::validParams(), ComboMarker::validParams(), ErrorFractionMarker::validParams(), ErrorToleranceMarker::validParams(), OrientedBoxMarker::validParams(), ReporterPointMarker::validParams(), UniformMarker::validParams(), ValueRangeMarker::validParams(), ValueThresholdMarker::validParams(), ADFluxFromGradientMaterial::validParams(), ADPiecewiseLinearInterpolationMaterial::validParams(), CoupledGradientMaterialTempl< is_ad >::validParams(), CoupledValueFunctionMaterialTempl< is_ad >::validParams(), DerivativeParsedMaterialTempl< is_ad >::validParams(), DerivativeParsedMaterialHelperTempl< is_ad >::validParams(), DerivativeSumMaterialTempl< is_ad >::validParams(), GenericConstant2DArrayTempl< is_ad >::validParams(), GenericConstantArray::validParams(), GenericConstantMaterialTempl< is_ad >::validParams(), GenericConstantRankTwoTensorTempl< is_ad >::validParams(), GenericConstantRealVectorValueTempl< is_ad >::validParams(), GenericConstantStdVectorMaterialTempl< is_ad >::validParams(), GenericConstantSymmetricRankTwoTensorTempl< is_ad >::validParams(), GenericConstantVectorMaterialTempl< is_ad >::validParams(), GenericFunctionMaterialTempl< is_ad >::validParams(), GenericFunctionRankTwoTensorTempl< is_ad >::validParams(), GenericFunctionVectorMaterialTempl< is_ad >::validParams(), InterpolatedStatefulMaterialTempl< T >::validParams(), MaterialADConverterTempl< T >::validParams(), MaterialFunctorConverterTempl< T >::validParams(), ParsedMaterialTempl< is_ad >::validParams(), ParsedMaterialHelper< is_ad >::validParams(), PiecewiseLinearInterpolationMaterial::validParams(), RankTwoTensorFromComponentProperties::validParams(), VectorFromComponentVariablesMaterialTempl< is_ad >::validParams(), AnnularMesh::validParams(), ConcentricCircleMesh::validParams(), FileMesh::validParams(), GeneratedMesh::validParams(), ImageMesh::validParams(), MeshGeneratorMesh::validParams(), PatternedMesh::validParams(), RinglebMesh::validParams(), SpiralAnnularMesh::validParams(), StitchedMesh::validParams(), TiledMesh::validParams(), CartesianGridDivision::validParams(), CylindricalGridDivision::validParams(), ExtraElementIntegerDivision::validParams(), FunctorBinnedValuesDivision::validParams(), MeshDivision::validParams(), NearestPositionsDivision::validParams(), NestedDivision::validParams(), SphericalGridDivision::validParams(), SubdomainsDivision::validParams(), AddMetaDataGenerator::validParams(), AdvancedExtruderGenerator::validParams(), AnnularMeshGenerator::validParams(), BlockDeletionGenerator::validParams(), BlockToMeshConverterGenerator::validParams(), Boundary2DDelaunayGenerator::validParams(), BoundaryDeletionGenerator::validParams(), BoundaryElementConversionGenerator::validParams(), BoundaryLayerSubdomainGenerator::validParams(), BoundingBoxNodeSetGenerator::validParams(), BreakBoundaryOnSubdomainGenerator::validParams(), BreakMeshByBlockGenerator::validParams(), BreakMeshByElementGenerator::validParams(), BSplineCurveGenerator::validParams(), CartesianMeshGenerator::validParams(), CircularBoundaryCorrectionGenerator::validParams(), CoarsenBlockGenerator::validParams(), CoarsenSurfaceMeshAlongSidesetGenerator::validParams(), CombinerGenerator::validParams(), ConcentricCircleMeshGenerator::validParams(), CutMeshByLevelSetGenerator::validParams(), CutMeshByLevelSetGeneratorBase::validParams(), CutMeshByPlaneGenerator::validParams(), DeleteElementsNearMeshGenerator::validParams(), DistributedRectilinearMeshGenerator::validParams(), ElementGenerator::validParams(), ElementOrderConversionGenerator::validParams(), ElementsToSimplicesConverter::validParams(), ElementsToTetrahedronsConverter::validParams(), ExamplePatchMeshGenerator::validParams(), ExtraNodesetGenerator::validParams(), FileMeshGenerator::validParams(), FillBetweenCurvesGenerator::validParams(), FillBetweenPointVectorsGenerator::validParams(), FillBetweenSidesetsGenerator::validParams(), FlattenRefinementGenerator::validParams(), FlipSidesetGenerator::validParams(), GeneratedMeshGenerator::validParams(), ImageMeshGenerator::validParams(), ImageSubdomainGenerator::validParams(), LowerDBlockFromSidesetGenerator::validParams(), ManifoldSubdomainGenerator::validParams(), MeshCollectionGenerator::validParams(), MeshDiagnosticsGenerator::validParams(), MeshExtruderGenerator::validParams(), MeshRepairGenerator::validParams(), MoveBoundaryNodesToCurveGenerator::validParams(), MoveNodeGenerator::validParams(), NodeSetsFromSideSetsGenerator::validParams(), OrientedSubdomainBoundingBoxGenerator::validParams(), OrientSurfaceMeshGenerator::validParams(), OverlayMeshGenerator::validParams(), ParsedCurveGenerator::validParams(), ParsedElementDeletionGenerator::validParams(), ParsedExtraElementIDGenerator::validParams(), ParsedGenerateNodeset::validParams(), ParsedGenerateSideset::validParams(), ParsedNodeTransformGenerator::validParams(), ParsedSubdomainGeneratorBase::validParams(), ParsedSubdomainIDsGenerator::validParams(), ParsedSubdomainMeshGenerator::validParams(), PatternedMeshGenerator::validParams(), PlaneDeletionGenerator::validParams(), PlaneIDMeshGenerator::validParams(), PolyLineMeshFollowingNodeSetGenerator::validParams(), PolyLineMeshGenerator::validParams(), ProjectSideSetOntoLevelSetGenerator::validParams(), RBBMappingConverter::validParams(), RefineBlockGenerator::validParams(), RefineSidesetGenerator::validParams(), RenameBlockGenerator::validParams(), RenameBoundaryGenerator::validParams(), RenumberBySubdomainGenerator::validParams(), RinglebMeshGenerator::validParams(), SideSetExtruderGenerator::validParams(), SideSetsAroundSubdomainGenerator::validParams(), SideSetsBetweenSubdomainsGenerator::validParams(), SideSetsFromAllNormalsGenerator::validParams(), SideSetsFromBoundingBoxGenerator::validParams(), SideSetsFromNodeSetsGenerator::validParams(), SideSetsFromNormalsGenerator::validParams(), SideSetsFromPointsGenerator::validParams(), SmoothMeshGenerator::validParams(), SphereMeshGenerator::validParams(), SpiralAnnularMeshGenerator::validParams(), StackGenerator::validParams(), StitchBoundaryMeshGenerator::validParams(), StitchMeshGenerator::validParams(), SubdomainBoundingBoxGenerator::validParams(), SubdomainIDGenerator::validParams(), SubdomainPerElementGenerator::validParams(), SubdomainsFromPartitionerGenerator::validParams(), SurfaceDelaunayGeneratorBase::validParams(), SurfaceSubdomainsDelaunayRemesher::validParams(), SurfaceSubdomainsFromAllNormalsGenerator::validParams(), SymmetryTransformGenerator::validParams(), TiledMeshGenerator::validParams(), TransfiniteMeshGenerator::validParams(), TransformGenerator::validParams(), TriToQuadConverter::validParams(), UniqueExtraIDMeshGenerator::validParams(), XYDelaunayGenerator::validParams(), XYFrontalDelaunayGenerator::validParams(), XYMeshLineCutter::validParams(), XYQuadrilateralMeshFromBoundaryCurve::validParams(), XYTriangleBoundaryLayerGenerator::validParams(), XYZDelaunayGenerator::validParams(), ActivateElementsUserObjectBase::validParams(), CoupledVarThresholdElementSubdomainModifier::validParams(), MoveNodesByParsedExpressionModifier::validParams(), MoveNodesToGeometryModifierBase::validParams(), MoveNodesToSphere::validParams(), SidesetAroundSubdomainUpdater::validParams(), TimedSubdomainModifier::validParams(), VariableValueElementSubdomainModifier::validParams(), AddMFEMComplexBCComponentAction::validParams(), AddMFEMComplexKernelComponentAction::validParams(), AddMFEMFESpaceAction::validParams(), AddMFEMFESpaceHierarchyAction::validParams(), AddMFEMProblemComposerAction::validParams(), AddMFEMSolverAction::validParams(), AddMFEMSubMeshAction::validParams(), AddMFEMWeakFormAction::validParams(), ResolveMFEMSolversAction::validParams(), SetMFEMEquationSystemsAction::validParams(), SetMFEMMeshFESpaceAction::validParams(), SetMFEMProblemOperatorsAction::validParams(), MFEMAuxKernel::validParams(), MFEMComplexAuxKernel::validParams(), MFEMComplexCurlAux::validParams(), MFEMComplexDivAux::validParams(), MFEMComplexExteriorProductAux::validParams(), MFEMComplexGradAux::validParams(), MFEMComplexInnerProductAux::validParams(), MFEMComplexScalarProjectionAux::validParams(), MFEMComplexSumAux::validParams(), MFEMComplexVectorProjectionAux::validParams(), MFEMCrossProductAux::validParams(), MFEMCurlAux::validParams(), MFEMDivAux::validParams(), MFEMGradAux::validParams(), MFEMInnerProductAux::validParams(), MFEMMeridionalCurlAux::validParams(), MFEMNDtoRTAux::validParams(), MFEMScalarProjectionAux::validParams(), MFEMScalarTimeAverageAux::validParams(), MFEMSumAux::validParams(), MFEMVectorProjectionAux::validParams(), MFEMExecutedObject::validParams(), MFEMObject::validParams(), MFEMBoundaryCondition::validParams(), MFEMBoundaryIntegratedBC::validParams(), MFEMBoundaryNormalIntegratedBC::validParams(), MFEMComplexScalarDirichletBC::validParams(), MFEMComplexVectorNormalDirichletBC::validParams(), MFEMComplexVectorTangentialDirichletBC::validParams(), MFEMConvectiveHeatFluxBC::validParams(), MFEMDGDiffusionBC::validParams(), MFEMNLConvectiveHeatFluxBC::validParams(), MFEMRWTE10IntegratedBC::validParams(), MFEMScalarDirichletBC::validParams(), MFEMVectorBoundaryIntegratedBC::validParams(), MFEMVectorDirichletBC::validParams(), MFEMVectorFEBoundaryFluxIntegratedBC::validParams(), MFEMVectorFEBoundaryTangentIntegratedBC::validParams(), MFEMVectorFEMassIntegratedBC::validParams(), MFEMVectorNormalDirichletBC::validParams(), MFEMVectorTangentialDirichletBC::validParams(), MFEMProblemSolve::validParams(), MFEMSteady::validParams(), MFEMTransient::validParams(), MFEMFESpaceHierarchy::validParams(), MFEMGenericFESpace::validParams(), MFEMScalarFESpace::validParams(), MFEMSimplifiedFESpace::validParams(), MFEMVectorFESpace::validParams(), MFEMCoordinateTransformations::validParams(), MFEMParsedFunction::validParams(), MFEMScalarQuadratureFunction::validParams(), MFEMVectorQuadratureFunction::validParams(), MFEMFunctorMaterial::validParams(), MFEMGenericFunctorMaterial::validParams(), MFEMGenericFunctorMatrixMaterial::validParams(), MFEMGenericFunctorVectorMaterial::validParams(), MFEMComplexKernel::validParams(), MFEMCurlCurlKernel::validParams(), MFEMDGDiffusionKernel::validParams(), MFEMDiffusionKernel::validParams(), MFEMDivDivKernel::validParams(), MFEMDomainLFKernel::validParams(), MFEMLinearElasticityKernel::validParams(), MFEMMassKernel::validParams(), MFEMMixedBilinearFormKernel::validParams(), MFEMMixedGradGradKernel::validParams(), MFEMMixedScalarCurlKernel::validParams(), MFEMMixedScalarWeakCurlKernel::validParams(), MFEMMixedSesquilinearFormKernel::validParams(), MFEMMixedVectorGradientKernel::validParams(), MFEMMixedVectorMassKernel::validParams(), MFEMMixedVectorWeakDivergenceKernel::validParams(), MFEMNLCurlCurlKernel::validParams(), MFEMNLDiffusionKernel::validParams(), MFEMTimeDerivativeMassKernel::validParams(), MFEMTimeDerivativeVectorFEMassKernel::validParams(), MFEMVectorDomainLFKernel::validParams(), MFEMVectorFEDivergenceKernel::validParams(), MFEMVectorFEDomainLFKernel::validParams(), MFEMVectorFEMassKernel::validParams(), MFEMVectorFEWeakDivergenceKernel::validParams(), MFEMFileMesh::validParams(), MFEMMeshGeneratorMesh::validParams(), MFEMGeneratedMeshGenerator::validParams(), MFEMConduitDataCollection::validParams(), MFEMDataCollection::validParams(), MFEMParaViewDataCollection::validParams(), MFEMVisItDataCollection::validParams(), MFEMComplexL2Error::validParams(), MFEMComplexVectorL2Error::validParams(), MFEMComplexVectorPeriodAveragedPostprocessor::validParams(), MFEMElementAverageValue::validParams(), MFEML2Error::validParams(), MFEMVectorBoundaryFluxIntegralPostprocessor::validParams(), MFEMVectorFEInnerProductIntegralPostprocessor::validParams(), MFEMVectorL2Error::validParams(), MFEMEigenproblem::validParams(), MFEMProblem::validParams(), MFEMComplexWeakFormProblemComposer::validParams(), MFEMEigenWeakFormProblemComposer::validParams(), MFEMTimeDependentWeakFormProblemComposer::validParams(), MFEMWeakFormProblemComposer::validParams(), MFEMCGSolver::validParams(), Moose::MFEM::EigensolverBase::validParams(), MFEMGeometricMultigridSolver::validParams(), MFEMGMRESSolver::validParams(), MFEMHypreADS::validParams(), MFEMHypreAME::validParams(), MFEMHypreAMS::validParams(), MFEMHypreBoomerAMG::validParams(), MFEMHypreFGMRES::validParams(), MFEMHypreGMRES::validParams(), MFEMHypreLOBPCG::validParams(), MFEMHyprePCG::validParams(), Moose::MFEM::LinearSolverBase::validParams(), MFEMMatrixFreeAMS::validParams(), MFEMMUMPS::validParams(), MFEMNewtonNonlinearSolver::validParams(), Moose::MFEM::NonlinearSolverBase::validParams(), MFEMOperatorChebyshevSmoother::validParams(), MFEMOperatorJacobiSmoother::validParams(), MFEMPetscNonlinearSolver::validParams(), Moose::MFEM::SolverBase::validParams(), MFEMSuperLU::validParams(), MFEMBoundarySubMesh::validParams(), MFEMCutTransitionSubMesh::validParams(), MFEMDomainSubMesh::validParams(), MFEMSubMeshTransfer::validParams(), MultiApplibMeshToMFEMShapeEvaluationTransfer::validParams(), MultiAppMFEMCopyTransfer::validParams(), MultiAppMFEMShapeEvaluationTransfer::validParams(), MultiAppMFEMTolibMeshShapeEvaluationTransfer::validParams(), MFEMComplexVariable::validParams(), MFEMVariable::validParams(), MFEMComplexVariableLineValueSampler::validParams(), MFEMComplexVariablePointValueSampler::validParams(), MFEMEigenvaluesPostprocessor::validParams(), MFEMScalarCoefficientPointValueSampler::validParams(), MFEMVariableLineValueSampler::validParams(), MFEMVariablePointValueSampler::validParams(), MFEMComplexWeakForm::validParams(), MFEMEigenproblemWeakForm::validParams(), MFEMTimeDependentWeakForm::validParams(), MFEMWeakForm::validParams(), MFEMWeakFormBase::validParams(), CentroidMultiApp::validParams(), FullSolveMultiApp::validParams(), QuadraturePointMultiApp::validParams(), TransientMultiApp::validParams(), NEML2Action::validParams(), NEML2Assembly::validParams(), NEML2FEInterpolation::validParams(), ArrayReactionNodalKernelTempl< is_ad >::validParams(), ArrayTimeDerivativeNodalKernel::validParams(), ConstantRate::validParams(), CoupledForceNodalKernel::validParams(), LowerBoundNodalKernel::validParams(), PenaltyDirichletNodalKernel::validParams(), ReactionNodalKernel::validParams(), TimeDerivativeNodalKernel::validParams(), UpperBoundNodalKernel::validParams(), UserForcingFunctionNodalKernel::validParams(), UserForcingFunctorNodalKernel::validParams(), BlockRestrictionDebugOutput::validParams(), Checkpoint::validParams(), Console::validParams(), ControlOutput::validParams(), CSV::validParams(), DOFMapOutput::validParams(), Exodus::validParams(), FileOutput::validParams(), GMVOutput::validParams(), Gnuplot::validParams(), JSONOutput::validParams(), MaterialPropertyDebugOutput::validParams(), Nemesis::validParams(), PerfGraphOutput::validParams(), PNGOutput::validParams(), ReporterDebugOutput::validParams(), SolutionHistory::validParams(), SolutionInvalidityOutput::validParams(), Tecplot::validParams(), TopResidualDebugOutput::validParams(), VariableResidualNormsDebugOutput::validParams(), VTKOutput::validParams(), XDA::validParams(), XMLOutput::validParams(), BlockWeightedPartitioner::validParams(), CopyMeshPartitioner::validParams(), GridPartitioner::validParams(), LibmeshPartitioner::validParams(), PetscExternalPartitioner::validParams(), RandomPartitioner::validParams(), SingleRankPartitioner::validParams(), DiffusionCG::validParams(), DiffusionFV::validParams(), DiffusionPhysicsBase::validParams(), PhysicsBase::validParams(), DistributedPositions::validParams(), ElementCentroidPositions::validParams(), ElementGroupCentroidPositions::validParams(), FilePositions::validParams(), FunctorExtremaPositions::validParams(), FunctorPositions::validParams(), InputPositions::validParams(), MultiAppPositions::validParams(), NodePositions::validParams(), ParsedDownSelectionPositions::validParams(), QuadraturePointsPositions::validParams(), ReporterPositions::validParams(), TransformedPositions::validParams(), AreaPostprocessor::validParams(), AverageElementSize::validParams(), AverageNodalVariableValue::validParams(), AverageVariableChange::validParams(), AxisymmetricCenterlineAverageValue::validParams(), BoundaryLinearFVFluxIntegral::validParams(), ChainControlDataPostprocessor::validParams(), ChangeOverFixedPointPostprocessor::validParams(), ChangeOverTimePostprocessor::validParams(), ConstantPostprocessor::validParams(), CumulativeValuePostprocessor::validParams(), DifferencePostprocessor::validParams(), DiscreteVariableResidualNorm::validParams(), ElementalVariableValue::validParams(), ElementArrayL2Norm::validParams(), ElementAverageMaterialPropertyTempl< is_ad >::validParams(), ElementAverageSecondTimeDerivative::validParams(), ElementAverageTimeDerivative::validParams(), ElementAverageValue::validParams(), ElementExtremeFunctorValueTempl< is_ad >::validParams(), ElementExtremeMaterialPropertyTempl< is_ad >::validParams(), ElementExtremeValue::validParams(), ElementH1Error::validParams(), ElementH1SemiError::validParams(), ElementHCurlError::validParams(), ElementHCurlSemiError::validParams(), ElementHDivError::validParams(), ElementHDivSemiError::validParams(), ElementIntegralArrayVariablePostprocessor::validParams(), ElementIntegralFunctorPostprocessorTempl< is_ad >::validParams(), ElementIntegralMaterialPropertyTempl< is_ad >::validParams(), ElementIntegralVariablePostprocessor::validParams(), ElementL1Error::validParams(), ElementL2Difference::validParams(), ElementL2Error::validParams(), ElementL2FunctorErrorTempl< is_ad >::validParams(), ElementMaxLevelPostProcessor::validParams(), ElementSidesL2Norm::validParams(), ElementVectorL2Error::validParams(), ElementW1pError::validParams(), EmptyPostprocessor::validParams(), FindValueOnLine::validParams(), FunctionElementAverage::validParams(), FunctionElementIntegral::validParams(), FunctionSideAverage::validParams(), FunctionSideIntegral::validParams(), FunctionValuePostprocessor::validParams(), GreaterThanLessThanPostprocessor::validParams(), InterfaceAverageVariableValuePostprocessor::validParams(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::validParams(), InterfaceIntegralPostprocessor::validParams(), InterfaceIntegralVariableValuePostprocessor::validParams(), InterfacePostprocessor::validParams(), InternalSideIntegralVariablePostprocessor::validParams(), LinearCombinationPostprocessor::validParams(), MatrixSymmetryCheck::validParams(), MemoryUsage::validParams(), NearestNodeNumber::validParams(), NodalExtremeValue::validParams(), NodalL2Error::validParams(), NodalL2Norm::validParams(), NodalMaxValue::validParams(), NodalMaxValueId::validParams(), NodalSum::validParams(), NodalVariableValue::validParams(), NumDOFs::validParams(), NumElements::validParams(), NumFailedTimeSteps::validParams(), NumFixedPointIterations::validParams(), NumLinearIterations::validParams(), NumMeshDivisions::validParams(), NumNodes::validParams(), NumNonlinearIterations::validParams(), NumPositions::validParams(), NumRelationshipManagers::validParams(), NumResidualEvaluations::validParams(), NumTimeSteps::validParams(), NumVars::validParams(), ParsedPostprocessor::validParams(), PercentChangePostprocessor::validParams(), PerfGraphData::validParams(), PointValue::validParams(), PostprocessorComparison::validParams(), PseudoTimestep::validParams(), Receiver::validParams(), RelativeDifferencePostprocessor::validParams(), RelativeSolutionDifferenceNorm::validParams(), Residual::validParams(), ScalarL2Error::validParams(), ScalarVariable::validParams(), ScalePostprocessor::validParams(), SideAdvectiveFluxIntegralTempl< is_ad >::validParams(), SideAverageFunctorPostprocessor::validParams(), SideAverageMaterialPropertyTempl< is_ad >::validParams(), SideAverageValue::validParams(), SideDiffusiveFluxAverageTempl< is_ad >::validParams(), SideExtremeValue::validParams(), SideFVFluxBCIntegral::validParams(), SideIntegralMaterialPropertyTempl< is_ad >::validParams(), SideIntegralVariablePostprocessor::validParams(), SumPostprocessor::validParams(), TagVectorSum::validParams(), TimeExtremeValue::validParams(), TimeIntegratedPostprocessor::validParams(), TimePostprocessor::validParams(), TimestepSize::validParams(), VariableResidual::validParams(), VectorPostprocessorComparison::validParams(), VectorPostprocessorComponent::validParams(), VectorPostprocessorReductionValue::validParams(), VolumePostprocessor::validParams(), FieldSplitPreconditionerTempl< Base >::validParams(), FiniteDifferencePreconditioner::validParams(), MooseStaticCondensationPreconditioner::validParams(), PhysicsBasedPreconditioner::validParams(), SingleMatrixPreconditioner::validParams(), VariableCondensationPreconditioner::validParams(), AdamsPredictor::validParams(), SimplePredictor::validParams(), DisplacedProblem::validParams(), DumpObjectsProblem::validParams(), EigenProblem::validParams(), ExternalProblem::validParams(), FEProblem::validParams(), ReferenceResidualProblem::validParams(), GhostBoundary::validParams(), GhostPrimaryFace::validParams(), AccumulateReporter::validParams(), ConstantReporter::validParams(), ElementExtremeMaterialPropertyReporterTempl< is_ad >::validParams(), ElementVariableStatistics::validParams(), ExtraIDIntegralReporter::validParams(), IterationInfo::validParams(), MeshInfo::validParams(), MortarSegmentMeshReporter::validParams(), NodalVariableStatistics::validParams(), ParsedScalarReporter::validParams(), ParsedVectorRealReductionReporter::validParams(), ParsedVectorReporter::validParams(), ParsedVectorVectorRealReductionReporter::validParams(), PerfGraphReporter::validParams(), RestartableDataReporter::validParams(), SolutionInvalidityReporter::validParams(), Sampler::validParams(), ADScalarTimeDerivative::validParams(), AverageValueConstraint::validParams(), CoupledODETimeDerivative::validParams(), NodalEqualValueConstraint::validParams(), NullScalarKernel::validParams(), ODETimeDerivative::validParams(), ParsedODEKernel::validParams(), Split::validParams(), ActuallyExplicitEuler::validParams(), AStableDirk4::validParams(), BDF2::validParams(), CentralDifference::validParams(), CrankNicolson::validParams(), ExplicitEuler::validParams(), ExplicitMidpoint::validParams(), ExplicitSSPRungeKutta::validParams(), ExplicitTVDRK2::validParams(), Heun::validParams(), ImplicitEuler::validParams(), ImplicitMidpoint::validParams(), LStableDirk2::validParams(), LStableDirk3::validParams(), LStableDirk4::validParams(), NewmarkBeta::validParams(), Ralston::validParams(), ControllableInputTimes::validParams(), CSVFileTimes::validParams(), ExodusFileTimes::validParams(), FunctorTimes::validParams(), InputTimes::validParams(), ReporterTimes::validParams(), SimulationTimes::validParams(), TimeIntervalTimes::validParams(), AB2PredictorCorrector::validParams(), CompositionDT::validParams(), ConstantDT::validParams(), CSVTimeSequenceStepper::validParams(), ExodusTimeSequenceStepper::validParams(), FixedPointIterationAdaptiveDT::validParams(), FunctionDT::validParams(), IterationAdaptiveDT::validParams(), LogConstantDT::validParams(), PostprocessorDT::validParams(), SolutionTimeAdaptiveDT::validParams(), TimeSequenceFromTimes::validParams(), TimeSequenceStepper::validParams(), MultiAppCloneReporterTransfer::validParams(), MultiAppCopyTransfer::validParams(), MultiAppDofCopyTransfer::validParams(), MultiAppGeneralFieldFunctorTransfer::validParams(), MultiAppGeneralFieldNearestLocationTransfer::validParams(), MultiAppGeneralFieldShapeEvaluationTransfer::validParams(), MultiAppGeneralFieldUserObjectTransfer::validParams(), MultiAppGeometricInterpolationTransfer::validParams(), MultiAppNearestNodeTransfer::validParams(), MultiAppPostprocessorInterpolationTransfer::validParams(), MultiAppPostprocessorToAuxScalarTransfer::validParams(), MultiAppPostprocessorTransfer::validParams(), MultiAppProjectionTransfer::validParams(), MultiAppReporterTransfer::validParams(), MultiAppScalarToAuxScalarTransfer::validParams(), MultiAppShapeEvaluationTransfer::validParams(), MultiAppUserObjectTransfer::validParams(), MultiAppVariableValueSamplePostprocessorTransfer::validParams(), MultiAppVariableValueSampleTransfer::validParams(), MultiAppVectorPostprocessorTransfer::validParams(), BoundaryMeshBuilder::validParams(), ElementIntegralUserObject::validParams(), ElementIntegralVariableUserObject::validParams(), ElementQualityChecker::validParams(), ElemSideNeighborLayersGeomTester::validParams(), ElemSideNeighborLayersTester::validParams(), FunctionElementIntegralUserObject::validParams(), FunctionLayeredIntegral::validParams(), GhostingUserObject::validParams(), InterfaceQpMaterialPropertyBaseUserObject< T >::validParams(), InterfaceQpMaterialPropertyRealUO::validParams(), InterfaceQpUserObjectBase::validParams(), InterfaceQpValueUserObject::validParams(), InterfaceUserObject::validParams(), InterfaceUserObjectBase::validParams(), InterfaceValueUserObject::validParams(), JSONFileReader::validParams(), LayeredAverage::validParams(), LayeredAverageFunctor::validParams(), LayeredExtremumMaterialProperty::validParams(), LayeredSideAverage::validParams(), LayeredSideAverageFunctor::validParams(), LayeredSideDiffusiveFluxAverage::validParams(), LayeredSideIntegral::validParams(), LayeredSideIntegralFunctor::validParams(), MessageFromInput::validParams(), NearestNodeNumberUO::validParams(), NearestPointAverage::validParams(), NearestPointIntegralVariablePostprocessor::validParams(), NearestPointLayeredAverage::validParams(), NearestPointLayeredIntegral::validParams(), NearestPointLayeredSideAverage::validParams(), NearestPointLayeredSideAverageFunctor::validParams(), NearestPointLayeredSideDiffusiveFluxAverage::validParams(), NearestPointLayeredSideIntegral::validParams(), NearestPointLayeredSideIntegralFunctor::validParams(), NearestRadiusLayeredAverage::validParams(), NodalNormalsCorner::validParams(), NodalNormalsEvaluator::validParams(), NodalNormalsPreprocessor::validParams(), NodalPatchRecoveryMaterialProperty::validParams(), NodalPatchRecoveryVariable::validParams(), PointInPolyhedronBaseUO::validParams(), PointInPolyhedronCheckUO::validParams(), PointInSignedFunctionCheckUO::validParams(), PointInUnionCheckUO::validParams(), PostprocessorSpatialUserObject::validParams(), ProjectedStatefulMaterialNodalPatchRecoveryBase::validParams(), PropertyReadFile::validParams(), RadialAverage::validParams(), SolutionUserObjectBase::validParams(), Terminator::validParams(), VerifyElementUniqueID::validParams(), VerifyNodalUniqueID::validParams(), MooseVariableBase::validParams(), ArrayVariableValueVolumeHistogram::validParams(), CombinedVectorPostprocessor::validParams(), ConstantVectorPostprocessor::validParams(), CSVReaderVectorPostprocessor::validParams(), CylindricalAverage::validParams(), Eigenvalues::validParams(), ElementMaterialSampler::validParams(), ElementsAlongLine::validParams(), ElementsAlongPlane::validParams(), ElementValueSampler::validParams(), ElementVariablesDifferenceMax::validParams(), ExtraIDIntegralVectorPostprocessor::validParams(), HistogramVectorPostprocessor::validParams(), IntersectionPointsAlongLine::validParams(), LeastSquaresFit::validParams(), LeastSquaresFitHistory::validParams(), LineFunctionSampler::validParams(), LineMaterialRealSampler::validParams(), LineValueSampler::validParams(), MeshDivisionFunctorReductionVectorPostprocessor::validParams(), NodalValueSampler::validParams(), PointValueSampler::validParams(), PositionsFunctorValueSampler::validParams(), SidesetInfoVectorPostprocessor::validParams(), SideValueSampler::validParams(), SpatialUserObjectVectorPostprocessor::validParams(), SphericalAverage::validParams(), VariableValueVolumeHistogram::validParams(), VectorMemoryUsage::validParams(), VectorOfPostprocessors::validParams(), and WorkBalance::validParams().

◆ addCommandLineParam() [1/3]

template<typename T >
void InputParameters::addCommandLineParam ( const std::string &  name,
const std::string &  syntax,
const std::initializer_list< typename T::value_type > &  value,
const std::string &  doc_string 
)
inline

Definition at line 352 of file InputParameters.h.

356 {
357 addCommandLineParam<T>(name, syntax, T{value}, doc_string);
358 }
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)

◆ addCommandLineParam() [2/3]

template<typename T >
void InputParameters::addCommandLineParam ( const std::string &  name,
const std::string &  syntax,
const std::string &  doc_string 
)

Definition at line 2072 of file InputParameters.h.

2075{
2076 static_assert(!std::is_same_v<T, MooseEnum>,
2077 "addCommandLineParam() without a value cannot be used with a MooseEnum because a "
2078 "MooseEnum requires initialization");
2079
2080 auto constexpr is_bool = std::is_same_v<T, bool>;
2081 if constexpr (is_bool)
2082 addParam<T>(name, false, doc_string);
2083 else
2084 addParam<T>(name, doc_string);
2085
2086 addCommandLineParamHelper<T>(
2087 name, syntax, /* required = */ false, /* value_required = */ !is_bool);
2088}

Referenced by MooseApp::addAppParam(), MooseApp::addInputParam(), and MooseApp::validParams().

◆ addCommandLineParam() [3/3]

template<typename T >
void InputParameters::addCommandLineParam ( const std::string &  name,
const std::string &  syntax,
const T &  value,
const std::string &  doc_string 
)

Definition at line 2092 of file InputParameters.h.

2096{
2097 if constexpr (std::is_same_v<T, bool>)
2098 mooseAssert(!value, "Default for bool must be false");
2099
2100 addParam<T>(name, value, doc_string);
2101 addCommandLineParamHelper<T>(name, syntax, /* required = */ false, /* value_required = */ true);
2102}

◆ addCommandLineParamHelper()

template<typename T >
void InputParameters::addCommandLineParamHelper ( const std::string &  name,
const std::string &  syntax,
const bool  required,
const bool  value_required 
)
private

Helper for all of the addCommandLineParam() calls, which sets up _cl_data in the metadata.

Parameters
nameThe parameter name
syntaxThe parameter syntax
requiredWhether or not the parameter is required
value_requiredWhethre or not the parameter requires a value

Definition at line 1897 of file InputParameters.h.

1901{
1903 "This type is not a supported command line parameter type. See "
1904 "CommandLine::populateCommandLineParams to add it as a supported type.");
1905
1906 auto & cl_data = at(name)._cl_data;
1907 cl_data = CommandLineMetadata();
1908
1909 // Split up the syntax by whitespace
1910 std::vector<std::string> syntax_split;
1911 MooseUtils::tokenize(syntax, syntax_split, 1, " \t\n\v\f\r");
1912
1913 // Set the single syntax string as the combined syntax with removed whitespace
1914 cl_data->syntax = MooseUtils::stringJoin(syntax_split);
1915 mooseAssert(cl_data->syntax.size(), "Empty token");
1916
1917 // Set the switches; only parse those that begin with "-" as we also
1918 // provide examples within the syntax
1919 for (const auto & val : syntax_split)
1920 if (val.rfind("-", 0) == 0)
1921 {
1922 if (!std::regex_search(val, std::regex("^\\-+[a-zA-Z]")))
1923 mooseError("The switch '",
1924 val,
1925 "' for the command line parameter '",
1926 name,
1927 "' is invalid. It must begin with an alphabetical character.");
1928
1929 cl_data->switches.push_back(val);
1931 }
1932
1933 cl_data->required = required;
1934 cl_data->global = false;
1935
1936 // No arguments needed for a boolean parameter
1937 if constexpr (std::is_same_v<T, bool>)
1938 {
1939 (void)value_required; // purposely unused; doesn't take a value
1940 cl_data->argument_type = CommandLineMetadata::ArgumentType::NONE;
1941 }
1942 // MooseEnums require a value
1943 else if constexpr (std::is_same_v<T, MooseEnum>)
1944 {
1945 (void)value_required; // purposely unused; always required
1946 cl_data->argument_type = CommandLineMetadata::ArgumentType::REQUIRED;
1947 }
1948 // The user didn't specify a default, so a value is required
1949 else if (value_required)
1950 cl_data->argument_type = CommandLineMetadata::ArgumentType::REQUIRED;
1951 // Otherwise, it's optional (user specified a default)
1952 else
1953 cl_data->argument_type = CommandLineMetadata::ArgumentType::OPTIONAL;
1954}
if(!dmm->_nl) SETERRQ(PETSC_COMM_WORLD
void mooseError(Args &&... args) const
Emits an error prefixed with the object information, if available.
Metadata & at(const std::string &param_name)
void tokenize(const std::string &str, std::vector< T > &elements, unsigned int min_len=1, const std::string &delims="/")
This function will split the passed in string on a set of delimiters appending the substrings to the ...
std::string stringJoin(const std::vector< std::string > &values, const std::string &separator=" ")
Concatenates value into a single string separated by separator.
void add_command_line_name(const std::string &name)
std::optional< CommandLineMetadata > _cl_data
The data pertaining to a command line parameter (empty if not a command line param)

◆ addCoupledVar() [1/3]

void InputParameters::addCoupledVar ( const std::string &  name,
const Real  value,
const std::string &  doc_string 
)

This method adds a coupled variable name pair.

The parser will look for variable name pair in the input file and can return a reference to the storage location for the coupled variable if found

Also - you can provide a default value for this variable in the case that an actual variable is not provided.

Definition at line 224 of file InputParameters.C.

225{
226 addParam<std::vector<VariableName>>(name, doc_string);
227 _coupled_vars.insert(name);
228 auto & metadata = _params[name];
229 metadata._coupled_default.assign(1, value);
230 metadata._have_coupled_default = true;
231
232 // Set the doc string for any associated deprecated coupled var
233 setDeprecatedVarDocString(name, doc_string);
234}
void setDeprecatedVarDocString(const std::string &new_name, const std::string &doc_string)
Private method for setting deprecated coupled variable documentation strings.
std::set< std::string > _coupled_vars
The coupled variables set.
std::string name(const ElemQuality q)

◆ addCoupledVar() [2/3]

void InputParameters::addCoupledVar ( const std::string &  name,
const std::string &  doc_string 
)

This method adds a coupled variable name pair.

The parser will look for variable name pair in the input file and can return a reference to the storage location for the coupled variable if found

Definition at line 253 of file InputParameters.C.

254{
255 addParam<std::vector<VariableName>>(name, doc_string);
256 _coupled_vars.insert(name);
257
258 // Set the doc string for any associated deprecated coupled var
259 setDeprecatedVarDocString(name, doc_string);
260}

Referenced by applyCoupledVar(), ConservativeAdvectionTempl< is_ad >::generalParams(), transferParam(), ArrayParsedAux::validParams(), BuildArrayVariableAux::validParams(), ParsedAux::validParams(), ParsedVectorAux::validParams(), PenetrationAux::validParams(), QuotientAux::validParams(), VectorMagnitudeAux::validParams(), QuotientScalarAux::validParams(), ArrayHFEMDirichletBC::validParams(), CoupledVarNeumannBCTempl< is_ad >::validParams(), HFEMDirichletBC::validParams(), NodalNormalBC::validParams(), ADMortarScalarBase::validParams(), MortarScalarBase::validParams(), NodeFaceConstraint::validParams(), PointwiseRenormalizeVector::validParams(), FVBoundaryCondition::validParams(), FVInterfaceKernel::validParams(), ADKernelScalarBase::validParams(), ADKernelSUPGTempl< T >::validParams(), FunctionDiffusion::validParams(), KernelScalarBase::validParams(), MatDiffusionBaseTempl< T, is_ad >::validParams(), MatReactionTempl< is_ad >::validParams(), MatReaction::validParams(), CoupledValueFunctionMaterialTempl< is_ad >::validParams(), DerivativeSumMaterialTempl< is_ad >::validParams(), ParsedMaterialBase::validParams(), VectorFromComponentVariablesMaterialTempl< is_ad >::validParams(), ElementExtremeValue::validParams(), ElementVectorL2Error::validParams(), FindValueOnLine::validParams(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::validParams(), InterfaceIntegralVariableValuePostprocessor::validParams(), NodalExtremeValue::validParams(), SideAdvectiveFluxIntegralTempl< is_ad >::validParams(), SideExtremeValue::validParams(), ParsedODEKernel::validParams(), InterfaceQpValueUserObject::validParams(), ArrayVariableValueVolumeHistogram::validParams(), SpatialAverageBase::validParams(), VariableValueVolumeHistogram::validParams(), and ConservativeAdvectionTempl< is_ad >::validParams().

◆ addCoupledVar() [3/3]

void InputParameters::addCoupledVar ( const std::string &  name,
const std::vector< Real > &  value,
const std::string &  doc_string 
)

This method adds a coupled variable name pair.

The parser will look for variable name pair in the input file and can return a reference to the storage location for the coupled variable if found

Also - you can provide a vector of values for this variable in the case that an actual variable is not provided.

Definition at line 237 of file InputParameters.C.

240{
241 // std::vector<VariableName>(1, Moose::stringify(value)),
242 addParam<std::vector<VariableName>>(name, doc_string);
243 _coupled_vars.insert(name);
244 auto & metadata = _params[name];
245 metadata._coupled_default = value;
246 metadata._have_coupled_default = true;
247
248 // Set the doc string for any associated deprecated coupled var
249 setDeprecatedVarDocString(name, doc_string);
250}

◆ addCoupledVarWithAutoBuild()

void InputParameters::addCoupledVarWithAutoBuild ( const std::string &  name,
const std::string &  base_name,
const std::string &  num_name,
const std::string &  doc_string 
)

These methods add a coupled variable name pair.

The parser will look for variable name pair in the input file and can return a reference to the storage location for the coupled variable if found.

This version of the method will build a vector if the given the base_name and num_name parameters exist in the input file: e.g. [./foo] ... some_base = base_ some_num = 5 [../]

The coupling parameter will be passed this vector: "base_0 base_1 base_2 base_3 base_4"

Definition at line 291 of file InputParameters.C.

295{
296 addParam<std::vector<VariableName>>(name, doc_string);
297 _coupled_vars.insert(name);
298 _params[name]._autobuild_vecs = std::make_pair(base_name, num_name);
299
300 // Additionally there are two more parameters that need to be added:
301 addParam<std::string>(base_name, doc_string + " (base_name)");
302 addParam<unsigned int>(num_name, doc_string + " (num_name)");
303}

Referenced by addRequiredCoupledVarWithAutoBuild().

◆ addCustomTypeParam() [1/2]

template<typename T >
void InputParameters::addCustomTypeParam ( const std::string &  name,
const std::string &  custom_type,
const std::string &  doc_string 
)

Definition at line 2010 of file InputParameters.h.

2013{
2014 addParam<T>(name, doc_string);
2015 _params[name]._custom_type = custom_type;
2016}

◆ addCustomTypeParam() [2/2]

template<typename T >
void InputParameters::addCustomTypeParam ( const std::string &  name,
const T &  value,
const std::string &  custom_type,
const std::string &  doc_string 
)

Definition at line 1999 of file InputParameters.h.

2003{
2004 addParam<T>(name, value, doc_string);
2005 _params[name]._custom_type = custom_type;
2006}

Referenced by ParsedVectorAux::validParams(), ParsedConvergence::validParams(), ParsedMaterialBase::validParams(), and SolutionUserObject::validParams().

◆ addDeprecatedCoupledVar()

void InputParameters::addDeprecatedCoupledVar ( const std::string &  old_name,
const std::string &  new_name,
const std::string &  removal_date = "" 
)

This method adds a deprecated coupled variable name pair.

The parser will look for variable name pair in the input file and can return a reference to the storage location for the coupled variable if found. The doc string for the deprecated variable will be constructed from the doc string for the new variable. A deprecation message will also be automatically generated

Definition at line 263 of file InputParameters.C.

266{
267 mooseDeprecated("Please use 'deprecateCoupledVar'");
268
270
271 // Set the doc string if we are adding the deprecated var after the new var has already been added
272 auto params_it = _params.find(new_name);
273 std::string doc_string;
274 if (params_it != _params.end())
275 doc_string = params_it->second._doc_string;
276
277 addParam<std::vector<VariableName>>(old_name, doc_string);
278 _coupled_vars.insert(old_name);
279 _new_to_deprecated_coupled_vars.emplace(new_name, old_name);
280
281 std::string deprecation_message =
282 "The coupled variable parameter '" + old_name + "' has been deprecated";
283 if (!removal_date.empty())
284 deprecation_message += " and will be removed " + removal_date;
285 deprecation_message += ". Please use the '" + new_name + "' coupled variable parameter instead.";
286 _params[old_name]._deprecation_message = deprecation_message;
288}
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition MooseError.h:363
std::unordered_map< std::string, std::string > _new_to_deprecated_coupled_vars
A map from deprecated coupled variable names to the new blessed name.

◆ addDeprecatedCustomTypeParam()

template<typename T >
void InputParameters::addDeprecatedCustomTypeParam ( const std::string &  name,
const std::string &  custom_type,
const std::string &  doc_string,
const std::string &  deprecation_msg 
)

Definition at line 2020 of file InputParameters.h.

2024{
2026 addParam<T>(name, doc_string);
2027 auto & metadata = _params[name];
2028 metadata._custom_type = custom_type;
2029
2030 metadata._deprecation_message = deprecation_message;
2032}

Referenced by ParsedMaterialBase::validParams().

◆ addDeprecatedParam() [1/6]

template<>
void InputParameters::addDeprecatedParam ( const std::string &  ,
const std::string &  ,
const std::string &   
)

◆ addDeprecatedParam() [2/6]

template<>
void InputParameters::addDeprecatedParam ( const std::string &  ,
const std::string &  ,
const std::string &   
)

◆ addDeprecatedParam() [3/6]

template<>
void InputParameters::addDeprecatedParam ( const std::string &  ,
const std::string &  ,
const std::string &   
)

Definition at line 1479 of file InputParameters.C.

1483{
1484 mooseError("You must supply a MooseEnum object and the deprecation string when using "
1485 "addDeprecatedParam, even if the parameter is not required!");
1486}

◆ addDeprecatedParam() [4/6]

template<>
void InputParameters::addDeprecatedParam ( const std::string &  ,
const std::string &  ,
const std::string &   
)

Definition at line 1489 of file InputParameters.C.

1493{
1494 mooseError("You must supply a MultiMooseEnum object and the deprecation string when using "
1495 "addDeprecatedParam, even if the parameter is not required!");
1496}

◆ addDeprecatedParam() [5/6]

template<typename T >
void InputParameters::addDeprecatedParam ( const std::string &  name,
const std::string &  doc_string,
const std::string &  deprecation_message 
)

Definition at line 2208 of file InputParameters.h.

2211{
2213 mooseAssert(!_old_to_new_name_and_dep.count(name),
2214 "Attempting to deprecate via addDeprecatedParam the parameter, '"
2215 << name << "', already deprecated via deprecateParam or renamed via renameParam");
2216 addParam<T>(name, doc_string);
2217
2218 _params[name]._deprecation_message = deprecation_message;
2220}
std::map< std::string, std::pair< std::string, std::string > > _old_to_new_name_and_dep
A map from base-class/deprecated parameter names to derived-class/blessed parameter names and the dep...

◆ addDeprecatedParam() [6/6]

template<typename T >
void InputParameters::addDeprecatedParam ( const std::string &  name,
const T &  value,
const std::string &  doc_string,
const std::string &  deprecation_message 
)
Parameters
nameThe name of the parameter
valueThe default value of this parameter if it requires one
doc_stringDocumentation. This will be shown for –help
deprecation_messageThe message that will will print about why this param was deprecated. It might mention the "new way".

Definition at line 2191 of file InputParameters.h.

2195{
2197 mooseAssert(!_old_to_new_name_and_dep.count(name),
2198 "Attempting to deprecate via addDeprecatedParam the parameter, '"
2199 << name << "', already deprecated via deprecateParam or renamed via renameParam");
2200 addParam<T>(name, value, doc_string);
2201
2202 _params[name]._deprecation_message = deprecation_message;
2204}

Referenced by Moose::commonAdaptivityParams(), AdaptivityAction::validParams(), CommonOutputAction::validParams(), SetupDebugAction::validParams(), TagAuxBase< T >::validParams(), VectorFunctionDirichletBC::validParams(), Executioner::validParams(), FixedPointSolve::validParams(), MooseParsedGradFunction::validParams(), AnnularMesh::validParams(), FileMesh::validParams(), AnnularMeshGenerator::validParams(), BlockDeletionGenerator::validParams(), ParsedSubdomainGeneratorBase::validParams(), PolyLineMeshGenerator::validParams(), RenameBlockGenerator::validParams(), MultiApp::validParams(), Console::validParams(), Exodus::validParams(), Output::validParams(), SampledOutput::validParams(), FEProblemBase::validParams(), PostprocessorDT::validParams(), MultiAppTransfer::validParams(), MultiAppUserObjectTransfer::validParams(), Transfer::validParams(), PropertyReadFile::validParams(), and DerivativeKernelInterface< T >::validParams().

◆ addOptionalValuedCommandLineParam()

template<typename T >
void InputParameters::addOptionalValuedCommandLineParam ( const std::string &  name,
const std::string &  syntax,
const T &  value,
const std::string &  doc_string 
)

Add a command line parameter with an optional value.

This is a deprecated option and only remains for two parameters: "mesh_only" and "recover". There are issues with command line parameters with optional values because if a value following one of these is a hit cli parameter, we don't know if we should apply it to the optional option or as a hit parameter.

It is also allowed for "run" as we take all arguments past –run and pass to python.

Parameters
nameThe name of the parameer
syntaxSpace separated list of command-line switch syntax that can set this option
valueThe default value to assign
doc_stringDocumentation. This will be shown for –help

Definition at line 2106 of file InputParameters.h.

2110{
2111 mooseAssert(name == "citations" || name == "csg_only" || name == "mesh_only" ||
2112 name == "recover" || name == "run",
2113 "Not supported for new parameters");
2114 static_assert(!std::is_same_v<T, bool>, "Cannot be used for a bool (does not take a value)");
2115 addParam<T>(name, value, doc_string);
2116 addCommandLineParamHelper<T>(name, syntax, /* required = */ false, /* value_required = */ false);
2117}

Referenced by MooseApp::validParams().

◆ addParam() [1/7]

template<>
void InputParameters::addParam ( const std::string &  ,
const std::string &   
)

◆ addParam() [2/7]

template<>
void InputParameters::addParam ( const std::string &  ,
const std::string &   
)

◆ addParam() [3/7]

template<>
void InputParameters::addParam ( const std::string &  ,
const std::string &   
)

Definition at line 1418 of file InputParameters.C.

1421{
1422 mooseError("You must supply a MooseEnum object when using addParam, even if the parameter is not "
1423 "required!");
1424}

◆ addParam() [4/7]

template<>
void InputParameters::addParam ( const std::string &  ,
const std::string &   
)

Definition at line 1427 of file InputParameters.C.

1430{
1431 mooseError("You must supply a MultiMooseEnum object when using addParam, even if the parameter "
1432 "is not required!");
1433}

◆ addParam() [5/7]

template<typename T , typename S >
void InputParameters::addParam ( const std::string &  name,
const S &  value,
const std::string &  doc_string 
)

These methods add an optional parameter and a documentation string to the InputParameters object.

The first version of this function takes a default value which is used if the parameter is not found in the input file. The second method will leave the parameter uninitialized but can be checked with "isParamValid" before use.

Definition at line 1853 of file InputParameters.h.

1854{
1855 checkParamName(name);
1856 checkConsistentType<T>(name);
1857
1858 T & l_value = InputParameters::set<T>(name);
1859 auto & metadata = _params[name];
1860 if constexpr (isFunctorNameType<T>())
1861 metadata._doc_string = appendFunctorDescription<T>(doc_string);
1862 else
1863 metadata._doc_string = doc_string;
1864
1865 // Set the parameter now
1866 setParamHelper(name, l_value, value);
1867
1868 /* Indicate the default value, as set via addParam, is being used. The parameter is removed from
1869 the list whenever
1870 it changes, see set_attributes */
1871 metadata._set_by_add_param = true;
1872}
void checkParamName(const std::string &name) const
Make sure the parameter name doesn't have any invalid characters.
void setParamHelper(const std::string &name, T &l_value, const S &r_value)
This method is called when adding a Parameter with a default value, can be specialized for non-matchi...

Referenced by MFEMExecutedObject::addDependencyParam(), ConstantReporter::addReporterTypeParams(), MultiAppTransfer::addSkipCoordCollapsingParam(), MultiAppTransfer::addUserObjectExecutionCheckParam(), AdvancedOutput::addValidParams(), SurfaceDelaunayGeneratorBase::boundaryAndHolesParams(), Moose::commonAdaptivityParams(), TransientBase::defaultSteadyStateConvergenceParams(), FEProblemSolve::feProblemDefaultConvergenceParams(), FixedPointSolve::fixedPointDefaultConvergenceParams(), ConservativeAdvectionTempl< is_ad >::generalParams(), Moose::PetscSupport::getPetscValidParams(), Moose::SlepcSupport::getSlepcEigenProblemValidParams(), MortarConsumerInterface::triangulationParams(), ActionComponent::validParams(), ComponentJunction::validParams(), CylinderComponent::validParams(), MeshGeneratorComponent::validParams(), Action::validParams(), AdaptivityAction::validParams(), AddActionComponentAction::validParams(), AddFieldSplitAction::validParams(), AddNodalNormalsAction::validParams(), AddPeriodicBCAction::validParams(), AutoCheckpointAction::validParams(), BatchMeshGeneratorAction::validParams(), CombineComponentsMeshes::validParams(), CommonOutputAction::validParams(), CopyNodalVarsAction::validParams(), CreateApplicationBlockAction::validParams(), CreateDisplacedProblemAction::validParams(), CreateExecutionerAction::validParams(), CreateProblemAction::validParams(), DeprecatedBlockAction::validParams(), DisplayGhostingAction::validParams(), DynamicObjectRegistrationAction::validParams(), MaterialOutputAction::validParams(), MooseObjectAction::validParams(), ProjectedStatefulMaterialStorageAction::validParams(), ReadExecutorParamsAction::validParams(), SetAdaptivityOptionsAction::validParams(), SetupDebugAction::validParams(), SetupMeshAction::validParams(), SetupMeshCompleteAction::validParams(), SetupQuadratureAction::validParams(), SetupResidualDebugAction::validParams(), AdvectiveFluxAux::validParams(), ArrayParsedAux::validParams(), ArrayVariableComponent::validParams(), ArrayVarReductionAux::validParams(), AuxKernelBase::validParams(), ConstantAux::validParams(), CopyValueAux::validParams(), DivergenceAuxTempl< is_ad >::validParams(), ElementIntegerAux::validParams(), ElementNormalAux::validParams(), ElementUOAux::validParams(), FunctorAux::validParams(), FunctorCoordinatesFunctionAux::validParams(), FunctorElementalGradientAuxTempl< is_ad >::validParams(), FunctorVectorElementalAuxTempl< is_ad >::validParams(), GapValueAux::validParams(), GhostingFromUOAux::validParams(), InterfaceValueUserObjectAux::validParams(), MaterialAuxBaseTempl< T, is_ad, is_functor, RT >::validParams(), MaterialRealTensorValueAuxTempl< is_ad >::validParams(), MeshDivisionAux::validParams(), MortarNodalAuxKernelTempl< ComputeValueType >::validParams(), NodalPatchRecovery::validParams(), NormalizationAux::validParams(), ParsedAux::validParams(), ParsedVectorAux::validParams(), PenetrationAux::validParams(), ProjectionAux::validParams(), SecondTimeDerivativeAux::validParams(), SolutionAux::validParams(), TagMatrixAux::validParams(), TagVectorAux::validParams(), TimeDerivativeAux::validParams(), VariableGradientComponent::validParams(), VariableTimeIntegrationAux::validParams(), VectorPostprocessorVisualizationAux::validParams(), AuxScalarKernel::validParams(), ScalarTagMatrixAux::validParams(), ScalarTagVectorAux::validParams(), SolutionScalarAux::validParams(), MooseApp::validParams(), MooseObject::validParams(), ADDirichletBCBase::validParams(), ADDirichletBCBaseTempl< T >::validParams(), ADFunctionDirichletBC::validParams(), ADPenaltyDirichletBC::validParams(), ADRobinBC::validParams(), ADVectorFunctionDirichletBC::validParams(), ADVectorFunctionNeumannBC::validParams(), ADVectorRobinBC::validParams(), ArrayHFEMDirichletBC::validParams(), ArrayNeumannBC::validParams(), ArrayPenaltyDirichletBC::validParams(), ArrayVacuumBC::validParams(), BoundaryCondition::validParams(), BoundaryIntegralValueConstraint::validParams(), ConservativeAdvectionBCTempl< is_ad >::validParams(), CoupledVarNeumannBCTempl< is_ad >::validParams(), DGFunctionDiffusionDirichletBC::validParams(), DirectionalNeumannBC::validParams(), DirichletBCBase::validParams(), FunctionGradientNeumannBC::validParams(), FunctorDirichletBC::validParams(), FunctorNeumannBC::validParams(), HFEMDirichletBC::validParams(), IntegratedBCBase::validParams(), MatchedValueBCTempl< is_ad >::validParams(), NeumannBCTempl< is_ad >::validParams(), NodalBCBase::validParams(), PenaltyDirichletBC::validParams(), PostprocessorNeumannBC::validParams(), SinNeumannBC::validParams(), VacuumBC::validParams(), VectorCurlPenaltyDirichletBC::validParams(), VectorDivPenaltyDirichletBC::validParams(), VectorFunctionDirichletBC::validParams(), VectorPenaltyDirichletBC::validParams(), BoundsBase::validParams(), GetFunctionValueChainControl::validParams(), GetPostprocessorChainControl::validParams(), LimitChainControl::validParams(), ParsedChainControl::validParams(), PIDChainControl::validParams(), ScaleOldChainControl::validParams(), TerminateChainControl::validParams(), UnitTripChainControl::validParams(), ADMortarScalarBase::validParams(), ADPenaltyPeriodicSegmentalConstraint::validParams(), Constraint::validParams(), CoupledTiedValueConstraint::validParams(), ElemElemConstraint::validParams(), EqualValueBoundaryConstraint::validParams(), EqualValueConstraint::validParams(), EqualValueEmbeddedConstraintTempl< is_ad >::validParams(), LinearNodalConstraint::validParams(), MortarScalarBase::validParams(), NodalConstraint::validParams(), NodeFaceConstraint::validParams(), PenaltyPeriodicSegmentalConstraint::validParams(), TiedValueConstraint::validParams(), ConditionalEnableControl::validParams(), Control::validParams(), PIDTransientControl::validParams(), TimePeriod::validParams(), TimesEnableControl::validParams(), WebServerControl::validParams(), Convergence::validParams(), IterationCountConvergence::validParams(), MultiPostprocessorConvergence::validParams(), ParsedConvergence::validParams(), FunctorNodalCorrector::validParams(), PointwiseRenormalizeVector::validParams(), BoundingValueElementDamper::validParams(), BoundingValueNodalDamper::validParams(), Damper::validParams(), MaxIncrement::validParams(), ADDGAdvection::validParams(), ADDGDiffusion::validParams(), ArrayDGDiffusion::validParams(), DGDiffusion::validParams(), DGKernelBase::validParams(), DiracKernelBase::validParams(), ReporterPointSource::validParams(), EigenExecutionerBase::validParams(), EigenProblemSolve::validParams(), Eigenvalue::validParams(), Executioner::validParams(), FEProblemSolve::validParams(), FixedPointSolve::validParams(), InversePowerMethod::validParams(), MultiSystemSolveObject::validParams(), NonlinearEigen::validParams(), SteadyBase::validParams(), TransientBase::validParams(), Executor::validParams(), Axisymmetric2D3DSolutionFunction::validParams(), BicubicSplineFunction::validParams(), CoarsenedPiecewiseLinear::validParams(), CompositeFunction::validParams(), ConstantFunction::validParams(), MooseParsedFunctionBase::validParams(), MooseParsedGradFunction::validParams(), MooseParsedVectorFunction::validParams(), PiecewiseBilinear::validParams(), PiecewiseConstant::validParams(), PiecewiseLinear::validParams(), PiecewiseLinearFromVectorPostprocessor::validParams(), PiecewiseMulticonstant::validParams(), PiecewiseMultiInterpolation::validParams(), PiecewiseMultilinear::validParams(), PiecewiseTabularBase::validParams(), PiecewiseTabularInterface::validParams(), SplineFunction::validParams(), FunctorADConverterTempl< T >::validParams(), GenericFunctorGradientMaterialTempl< is_ad >::validParams(), GenericFunctorMaterialTempl< is_ad >::validParams(), GenericFunctorTimeDerivativeMaterialTempl< is_ad >::validParams(), ParsedFunctorMaterialTempl< is_ad >::validParams(), VectorMagnitudeFunctorMaterialTempl< is_ad >::validParams(), FVBoundaryCondition::validParams(), FVBoundaryScalarLagrangeMultiplierConstraint::validParams(), FVFunctionNeumannBC::validParams(), FVFunctorDirichletBCTempl< is_ad >::validParams(), FVFunctorNeumannBC::validParams(), FVNeumannBC::validParams(), FVOrthogonalBoundaryDiffusion::validParams(), FVGradientMethod::validParams(), FVFunctionIC::validParams(), FVDiffusionInterface::validParams(), FVInterfaceKernel::validParams(), FVOneVarDiffusionInterface::validParams(), FVAdvectedMinmodWeightBased::validParams(), FVAdvectedMUSCLDeferredCorrection::validParams(), FVAdvectedVanLeerWeightBased::validParams(), FVAnisotropicDiffusion::validParams(), FVBodyForce::validParams(), FVCoupledForce::validParams(), FVDiffusion::validParams(), FVDiffusionInterpolationInterface::validParams(), FVFluxKernel::validParams(), FVFunctorTimeKernel::validParams(), FVMassMatrix::validParams(), FVMatAdvection::validParams(), FVOrthogonalDiffusion::validParams(), FVReaction::validParams(), FVScalarLagrangeMultiplierConstraint::validParams(), GeometricSearchInterface::validParams(), BoundingBoxIC::validParams(), FunctionIC::validParams(), FunctorIC::validParams(), InitialConditionBase::validParams(), InitialConditionInterface::validParams(), RandomIC::validParams(), RandomICBase::validParams(), ScalarInitialCondition::validParams(), SolutionIC::validParams(), VectorConstantIC::validParams(), VectorFunctionIC::validParams(), ElementIndicator::validParams(), GradientJumpIndicator::validParams(), Indicator::validParams(), InternalSideIndicatorBase::validParams(), ADMatInterfaceReaction::validParams(), InterfaceDiffusion::validParams(), InterfaceKernelBase::validParams(), PenaltyInterfaceDiffusionTempl< T, is_ad >::validParams(), BlockRestrictable::validParams(), BoundaryRestrictable::validParams(), FVRelationshipManagerInterface::validParams(), MortarConsumerInterface::validParams(), OutputInterface::validParams(), RandomInterface::validParams(), ReferenceResidualInterface::validParams(), SetupInterface::validParams(), TaggingInterface::validParams(), TransientInterface::validParams(), ADFluxDivergence::validParams(), ADKernelScalarBase::validParams(), ADKernelSUPGTempl< T >::validParams(), ADMatCoupledForce::validParams(), ArrayCoupledForce::validParams(), ArrayTimeDerivative::validParams(), BodyForceTempl< is_ad >::validParams(), CoefReactionTempl< is_ad >::validParams(), CoefTimeDerivative::validParams(), CoupledForceTempl< is_ad >::validParams(), DivDivField::validParams(), DivField::validParams(), EigenKernel::validParams(), FunctionDiffusion::validParams(), FunctorKernel::validParams(), GradField::validParams(), KernelScalarBase::validParams(), MassEigenKernel::validParams(), MassMatrix::validParams(), MatCoupledForce::validParams(), MatDiffusionBaseTempl< T, is_ad >::validParams(), MaterialPropertyValueTempl< is_ad >::validParams(), NodalScalarKernel::validParams(), NullKernel::validParams(), ReactionTempl< is_ad >::validParams(), TimeDerivative::validParams(), VectorBodyForce::validParams(), VectorFunctionReaction::validParams(), VectorTimeDerivative::validParams(), LibtorchNeuralNetControl::validParams(), LibtorchControlValuePostprocessor::validParams(), TorchScriptUserObject::validParams(), LinearFVAdvectionDiffusionExtrapolatedBC::validParams(), LinearFVAdvectionDiffusionFunctorNeumannBC::validParams(), LinearFVAdvectionDiffusionFunctorRobinBC::validParams(), LinearFVAdvectionDiffusionScalarSymmetryBC::validParams(), LinearFVAnisotropicDiffusionFunctorNeumannBC::validParams(), LinearFVAnisotropicDiffusion::validParams(), LinearFVDiffusion::validParams(), LinearFVFluxKernel::validParams(), LinearFVReaction::validParams(), LinearFVSource::validParams(), LinearFVTimeDerivative::validParams(), BoundaryMarker::validParams(), ErrorFractionMarker::validParams(), ErrorToleranceMarker::validParams(), QuadraturePointMarker::validParams(), ValueRangeMarker::validParams(), ValueThresholdMarker::validParams(), ADFluxFromGradientMaterial::validParams(), ADPiecewiseLinearInterpolationMaterial::validParams(), CoupledGradientMaterialTempl< is_ad >::validParams(), CoupledValueFunctionMaterialTempl< is_ad >::validParams(), DerivativeParsedMaterialHelperTempl< is_ad >::validParams(), DerivativeSumMaterialTempl< is_ad >::validParams(), GenericFunctionMaterialTempl< is_ad >::validParams(), GenericFunctionVectorMaterialTempl< is_ad >::validParams(), Material::validParams(), MaterialADConverterTempl< T >::validParams(), MaterialBase::validParams(), MaterialFunctorConverterTempl< T >::validParams(), MaterialPropertyInterface::validParams(), ParsedMaterialBase::validParams(), ParsedMaterialHelper< is_ad >::validParams(), PiecewiseLinearInterpolationMaterial::validParams(), RankTwoTensorFromComponentProperties::validParams(), AnnularMesh::validParams(), ConcentricCircleMesh::validParams(), FileMesh::validParams(), GeneratedMesh::validParams(), ImageMesh::validParams(), MeshGeneratorMesh::validParams(), MooseMesh::validParams(), PatternedMesh::validParams(), RinglebMesh::validParams(), SpiralAnnularMesh::validParams(), StitchedMesh::validParams(), TiledMesh::validParams(), CartesianGridDivision::validParams(), CylindricalGridDivision::validParams(), FunctorBinnedValuesDivision::validParams(), SphericalGridDivision::validParams(), AddMetaDataGenerator::validParams(), AdvancedExtruderGenerator::validParams(), AnnularMeshGenerator::validParams(), BlockDeletionGenerator::validParams(), Boundary2DDelaunayGenerator::validParams(), BoundaryDeletionGenerator::validParams(), BoundaryElementConversionGenerator::validParams(), BoundaryLayerSubdomainGenerator::validParams(), BoundingBoxNodeSetGenerator::validParams(), BreakBoundaryOnSubdomainGenerator::validParams(), BreakMeshByBlockGenerator::validParams(), BreakMeshByElementGenerator::validParams(), BSplineCurveGenerator::validParams(), CartesianMeshGenerator::validParams(), CircularBoundaryCorrectionGenerator::validParams(), CoarsenBlockGenerator::validParams(), CoarsenSurfaceMeshAlongSidesetGenerator::validParams(), CombinerGenerator::validParams(), ConcentricCircleMeshGenerator::validParams(), CutMeshByLevelSetGenerator::validParams(), CutMeshByLevelSetGeneratorBase::validParams(), DeleteElementsNearMeshGenerator::validParams(), DistributedRectilinearMeshGenerator::validParams(), ElementDeletionGeneratorBase::validParams(), ElementGenerator::validParams(), ElementOrderConversionGenerator::validParams(), ExamplePatchMeshGenerator::validParams(), ExtraNodesetGenerator::validParams(), FileMeshGenerator::validParams(), FillBetweenCurvesGenerator::validParams(), FillBetweenPointVectorsGenerator::validParams(), FillBetweenSidesetsGenerator::validParams(), FlattenRefinementGenerator::validParams(), GeneratedMeshGenerator::validParams(), ImageMeshGenerator::validParams(), LevelSetMeshingHelper::validParams(), LowerDBlockFromSidesetGenerator::validParams(), ManifoldSubdomainGenerator::validParams(), MeshDiagnosticsGenerator::validParams(), MeshExtruderGenerator::validParams(), MeshGenerator::validParams(), MeshRepairGenerator::validParams(), MoveNodeGenerator::validParams(), NodeSetsGeneratorBase::validParams(), OrientedSubdomainBoundingBoxGenerator::validParams(), OrientSurfaceMeshGenerator::validParams(), ParsedCurveGenerator::validParams(), ParsedElementDeletionGenerator::validParams(), ParsedExtraElementIDGenerator::validParams(), ParsedGenerateNodeset::validParams(), ParsedGenerateSideset::validParams(), ParsedNodeTransformGenerator::validParams(), ParsedSubdomainGeneratorBase::validParams(), ParsedSubdomainMeshGenerator::validParams(), PatternedMeshGenerator::validParams(), PlaneIDMeshGenerator::validParams(), PolyLineMeshFollowingNodeSetGenerator::validParams(), PolyLineMeshGenerator::validParams(), ProjectSideSetOntoLevelSetGenerator::validParams(), RefineBlockGenerator::validParams(), RefineSidesetGenerator::validParams(), RenameBlockGenerator::validParams(), RenumberBySubdomainGenerator::validParams(), RinglebMeshGenerator::validParams(), SideSetExtruderGenerator::validParams(), SideSetsFromBoundingBoxGenerator::validParams(), SideSetsFromNodeSetsGenerator::validParams(), SideSetsGeneratorBase::validParams(), SmoothMeshGenerator::validParams(), SphereMeshGenerator::validParams(), SpiralAnnularMeshGenerator::validParams(), StackGenerator::validParams(), StitchMeshGenerator::validParams(), StitchMeshGeneratorBase::validParams(), SubdomainBoundingBoxGenerator::validParams(), SubdomainPerElementGenerator::validParams(), SubdomainsFromPartitionerGenerator::validParams(), SurfaceDelaunayGeneratorBase::validParams(), SurfaceMeshGeneratorBase::validParams(), SurfaceSubdomainsDelaunayRemesher::validParams(), SurfaceSubdomainsFromAllNormalsGenerator::validParams(), TiledMeshGenerator::validParams(), TransfiniteMeshGenerator::validParams(), TransformGenerator::validParams(), TriToQuadConverter::validParams(), UniqueExtraIDMeshGenerator::validParams(), XYDelaunayGenerator::validParams(), XYFrontalDelaunayGenerator::validParams(), XYMeshLineCutter::validParams(), XYQuadrilateralMeshFromBoundaryCurve::validParams(), XYTriangleBoundaryLayerGenerator::validParams(), XYZDelaunayGenerator::validParams(), ActivateElementsByPath::validParams(), ActivateElementsCoupled::validParams(), ActivateElementsUserObjectBase::validParams(), ElementSubdomainModifierBase::validParams(), MoveNodesByParsedExpressionModifier::validParams(), MoveNodesToGeometryModifierBase::validParams(), MoveNodesToSphere::validParams(), SidesetAroundSubdomainUpdater::validParams(), ThresholdElementSubdomainModifier::validParams(), TimedSubdomainModifier::validParams(), MFEMComplexCurlAux::validParams(), MFEMComplexDivAux::validParams(), MFEMComplexExteriorProductAux::validParams(), MFEMComplexGradAux::validParams(), MFEMComplexInnerProductAux::validParams(), MFEMComplexSumAux::validParams(), MFEMComplexVectorProjectionAux::validParams(), MFEMCrossProductAux::validParams(), MFEMCurlAux::validParams(), MFEMDivAux::validParams(), MFEMGradAux::validParams(), MFEMInnerProductAux::validParams(), MFEMNDtoRTAux::validParams(), MFEMScalarTimeAverageAux::validParams(), MFEMSumAux::validParams(), MFEMVectorProjectionAux::validParams(), MFEMBoundaryCondition::validParams(), MFEMBoundaryIntegratedBC::validParams(), MFEMBoundaryNormalIntegratedBC::validParams(), MFEMComplexScalarDirichletBC::validParams(), MFEMComplexVectorDirichletBCBase::validParams(), MFEMConvectiveHeatFluxBC::validParams(), MFEMDGDiffusionBC::validParams(), MFEMNLConvectiveHeatFluxBC::validParams(), MFEMRWTE10IntegratedBC::validParams(), MFEMScalarDirichletBC::validParams(), MFEMVectorBoundaryIntegratedBC::validParams(), MFEMVectorDirichletBCBase::validParams(), MFEMVectorFEBoundaryFluxIntegratedBC::validParams(), MFEMVectorFEBoundaryTangentIntegratedBC::validParams(), MFEMVectorFEMassIntegratedBC::validParams(), MFEMProblemSolve::validParams(), MFEMSteady::validParams(), MFEMFESpace::validParams(), MFEMGenericFESpace::validParams(), MFEMScalarFESpace::validParams(), MFEMSimplifiedFESpace::validParams(), MFEMVectorFESpace::validParams(), MFEMCoordinateTransformations::validParams(), MFEMQuadratureFunctionBase::validParams(), MFEML2ZienkiewiczZhuIndicator::validParams(), MFEMBlockRestrictable::validParams(), MFEMBoundaryRestrictable::validParams(), MFEMCurlCurlKernel::validParams(), MFEMDGDiffusionKernel::validParams(), MFEMDiffusionKernel::validParams(), MFEMDivDivKernel::validParams(), MFEMDomainLFKernel::validParams(), MFEMKernel::validParams(), MFEMLinearElasticityKernel::validParams(), MFEMMassKernel::validParams(), MFEMMixedBilinearFormKernel::validParams(), MFEMMixedGradGradKernel::validParams(), MFEMMixedScalarCurlKernel::validParams(), MFEMMixedScalarWeakCurlKernel::validParams(), MFEMMixedSesquilinearFormKernel::validParams(), MFEMMixedVectorGradientKernel::validParams(), MFEMMixedVectorMassKernel::validParams(), MFEMMixedVectorWeakDivergenceKernel::validParams(), MFEMNLCurlCurlKernel::validParams(), MFEMNLDiffusionKernel::validParams(), MFEMVectorDomainLFKernel::validParams(), MFEMVectorFEDivergenceKernel::validParams(), MFEMVectorFEDomainLFKernel::validParams(), MFEMVectorFEMassKernel::validParams(), MFEMVectorFEWeakDivergenceKernel::validParams(), MFEMRefinementMarker::validParams(), MFEMMesh::validParams(), MFEMGeneratedMeshGenerator::validParams(), MFEMConduitDataCollection::validParams(), MFEMDataCollection::validParams(), MFEMParaViewDataCollection::validParams(), MFEMVisItDataCollection::validParams(), MFEMComplexL2Error::validParams(), MFEMComplexVectorL2Error::validParams(), MFEMComplexVectorPeriodAveragedPostprocessor::validParams(), MFEML2Error::validParams(), MFEMVectorBoundaryFluxIntegralPostprocessor::validParams(), MFEMVectorFEInnerProductIntegralPostprocessor::validParams(), MFEMVectorL2Error::validParams(), MFEMEigenproblem::validParams(), MFEMProblem::validParams(), MFEMWeakFormProblemComposerBase::validParams(), MFEMCGSolver::validParams(), Moose::MFEM::EigensolverBase::validParams(), MFEMGeometricMultigridSolver::validParams(), MFEMGMRESSolver::validParams(), MFEMHypreADS::validParams(), MFEMHypreAMS::validParams(), MFEMHypreBoomerAMG::validParams(), MFEMHypreFGMRES::validParams(), MFEMHypreGMRES::validParams(), MFEMHypreLOBPCG::validParams(), MFEMHyprePCG::validParams(), Moose::MFEM::LinearSolverBase::validParams(), Moose::MFEM::LORLinearSolverBase< MFEMSolverType >::validParams(), MFEMMatrixFreeAMS::validParams(), MFEMMUMPS::validParams(), MFEMNewtonNonlinearSolver::validParams(), Moose::MFEM::NonlinearSolverBase::validParams(), MFEMOperatorChebyshevSmoother::validParams(), MFEMOperatorJacobiSmoother::validParams(), MFEMPetscNonlinearSolver::validParams(), Moose::MFEM::SolverBase::validParams(), MFEMBoundarySubMesh::validParams(), MFEMDomainSubMesh::validParams(), MFEMVariable::validParams(), MFEMSamplerBase::validParams(), MFEMVariableSamplerBase::validParams(), MFEMWeakFormBase::validParams(), FullSolveMultiApp::validParams(), MultiApp::validParams(), TransientMultiApp::validParams(), NEML2Action::validParams(), NEML2ModelInterface< T >::validParams(), CoupledForceNodalKernel::validParams(), LowerBoundNodalKernel::validParams(), NodalKernelBase::validParams(), PenaltyDirichletNodalKernel::validParams(), ReactionNodalKernel::validParams(), UpperBoundNodalKernel::validParams(), BlockRestrictionDebugOutput::validParams(), Checkpoint::validParams(), Console::validParams(), ControlOutput::validParams(), CSV::validParams(), DOFMapOutput::validParams(), Exodus::validParams(), FileOutput::validParams(), GMVOutput::validParams(), Gnuplot::validParams(), JSONOutput::validParams(), Nemesis::validParams(), Output::validParams(), PerfGraphOutput::validParams(), PetscOutput::validParams(), PNGOutput::validParams(), SampledOutput::validParams(), SolutionHistory::validParams(), SolutionInvalidityOutput::validParams(), TableOutput::validParams(), Tecplot::validParams(), TopResidualDebugOutput::validParams(), VariableResidualNormsDebugOutput::validParams(), VTKOutput::validParams(), Moose::Builder::validParams(), GridPartitioner::validParams(), LibmeshPartitioner::validParams(), PetscExternalPartitioner::validParams(), RandomPartitioner::validParams(), SingleRankPartitioner::validParams(), DiffusionCG::validParams(), DiffusionFV::validParams(), DiffusionPhysicsBase::validParams(), PhysicsBase::validParams(), ElementGroupCentroidPositions::validParams(), FunctorExtremaPositions::validParams(), MultiAppPositions::validParams(), ParsedDownSelectionPositions::validParams(), Positions::validParams(), QuadraturePointsPositions::validParams(), TransformedPositions::validParams(), ChangeOverFixedPointPostprocessor::validParams(), ChangeOverTimePostprocessor::validParams(), ComparisonPostprocessor::validParams(), ConstantPostprocessor::validParams(), DiscreteVariableResidualNorm::validParams(), ElementExtremeFunctorValueTempl< is_ad >::validParams(), ElementIntegralArrayVariablePostprocessor::validParams(), ElementIntegralFunctorPostprocessorTempl< is_ad >::validParams(), ElementIntegralVariablePostprocessor::validParams(), ElementVectorL2Error::validParams(), FindValueOnLine::validParams(), FunctionSideIntegral::validParams(), FunctionValuePostprocessor::validParams(), GreaterThanLessThanPostprocessor::validParams(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::validParams(), InterfaceIntegralVariableValuePostprocessor::validParams(), LinearCombinationPostprocessor::validParams(), MatrixSymmetryCheck::validParams(), MemoryUsage::validParams(), NodalVariableValue::validParams(), NumDOFs::validParams(), NumElements::validParams(), NumFixedPointIterations::validParams(), NumNonlinearIterations::validParams(), NumRelationshipManagers::validParams(), NumVars::validParams(), ParsedPostprocessor::validParams(), PerfGraphData::validParams(), PseudoTimestep::validParams(), Receiver::validParams(), RelativeSolutionDifferenceNorm::validParams(), Residual::validParams(), ScalarVariable::validParams(), ScalePostprocessor::validParams(), SideAdvectiveFluxIntegralTempl< is_ad >::validParams(), SideIntegralFunctorPostprocessorTempl< is_ad >::validParams(), TimeExtremeValue::validParams(), TimeIntegratedPostprocessor::validParams(), VectorPostprocessorReductionValue::validParams(), FieldSplitPreconditionerTempl< Base >::validParams(), FiniteDifferencePreconditioner::validParams(), MoosePreconditioner::validParams(), MooseStaticCondensationPreconditioner::validParams(), SingleMatrixPreconditioner::validParams(), VariableCondensationPreconditioner::validParams(), AdamsPredictor::validParams(), Predictor::validParams(), DumpObjectsProblem::validParams(), EigenProblem::validParams(), FEProblemBase::validParams(), SubProblem::validParams(), ElementSideNeighborLayers::validParams(), RelationshipManager::validParams(), ElementExtremeMaterialPropertyReporterTempl< is_ad >::validParams(), ElementStatistics::validParams(), ExtraIDIntegralReporter::validParams(), IterationInfo::validParams(), MeshInfo::validParams(), NodalStatistics::validParams(), ParsedReporterBase::validParams(), RestartableDataReporter::validParams(), Sampler::validParams(), NullScalarKernel::validParams(), ParsedODEKernel::validParams(), ScalarKernelBase::validParams(), Split::validParams(), ActuallyExplicitEuler::validParams(), AStableDirk4::validParams(), ExplicitTimeIntegrator::validParams(), NewmarkBeta::validParams(), TimeIntegrator::validParams(), CSVFileTimes::validParams(), FunctorTimes::validParams(), TimeIntervalTimes::validParams(), Times::validParams(), AB2PredictorCorrector::validParams(), CSVTimeSequenceStepper::validParams(), FunctionDT::validParams(), IterationAdaptiveDT::validParams(), PostprocessorDT::validParams(), SolutionTimeAdaptiveDT::validParams(), TimeSequenceStepperBase::validParams(), TimeStepper::validParams(), MultiAppCloneReporterTransfer::validParams(), MultiAppConservativeTransfer::validParams(), MultiAppDofCopyTransfer::validParams(), MultiAppGeneralFieldFunctorTransfer::validParams(), MultiAppGeneralFieldKDTreeTransferBase::validParams(), MultiAppGeneralFieldNearestLocationTransfer::validParams(), MultiAppGeneralFieldTransfer::validParams(), MultiAppGeometricInterpolationTransfer::validParams(), MultiAppNearestNodeTransfer::validParams(), MultiAppPostprocessorInterpolationTransfer::validParams(), MultiAppPostprocessorTransfer::validParams(), MultiAppProjectionTransfer::validParams(), MultiAppReporterTransfer::validParams(), MultiAppShapeEvaluationTransfer::validParams(), MultiAppTransfer::validParams(), MultiAppUserObjectTransfer::validParams(), MultiAppVariableValueSamplePostprocessorTransfer::validParams(), Transfer::validParams(), BoundaryMeshBuilder::validParams(), DomainUserObject::validParams(), ElementQualityChecker::validParams(), ElemSideNeighborLayersTester::validParams(), GhostingUserObject::validParams(), InterfaceQpMaterialPropertyBaseUserObject< T >::validParams(), InterfaceQpUserObjectBase::validParams(), InterfaceValueUserObject::validParams(), LayeredBase::validParams(), NearestPointBase< UserObjectType, BaseType >::validParams(), NodalNormalsPreprocessor::validParams(), NodalUserObject::validParams(), PointInPolyhedronBaseUO::validParams(), PointInSignedFunctionCheckUO::validParams(), PropertyReadFile::validParams(), ShapeUserObject< T >::validParams(), SolutionUserObjectBase::validParams(), Terminator::validParams(), UserObjectBase::validParams(), DerivativeKernelInterface< T >::validParams(), FileRangeBuilder::validParams(), ImageSampler::validParams(), MeshBaseImageSampler::validParams(), NestedSolveTempl< is_ad >::validParams(), MooseLinearVariableFV< OutputType >::validParams(), MooseVariableBase::validParams(), ArrayVariableValueVolumeHistogram::validParams(), CombinedVectorPostprocessor::validParams(), ConstantVectorPostprocessor::validParams(), CSVReaderVectorPostprocessor::validParams(), Eigenvalues::validParams(), ElementMaterialSampler::validParams(), ElementVariablesDifferenceMax::validParams(), ExtraIDIntegralVectorPostprocessor::validParams(), LeastSquaresFit::validParams(), LeastSquaresFitHistory::validParams(), PointSamplerBase::validParams(), PointVariableSamplerBase::validParams(), SidesetInfoVectorPostprocessor::validParams(), SpatialAverageBase::validParams(), SpatialUserObjectVectorPostprocessor::validParams(), VariableValueVolumeHistogram::validParams(), VectorMemoryUsage::validParams(), VectorPostprocessor::validParams(), WorkBalance::validParams(), ADNodalBCTempl< T, Base >::validParams(), and ConservativeAdvectionTempl< is_ad >::validParams().

◆ addParam() [6/7]

template<typename T >
void InputParameters::addParam ( const std::string &  name,
const std::initializer_list< typename T::value_type > &  value,
const std::string &  doc_string 
)
inline

Enable support for initializer lists as default arguments for container type.

Definition at line 266 of file InputParameters.h.

269 {
270 addParam<T>(name, T{value}, doc_string);
271 }

◆ addParam() [7/7]

template<typename T >
void InputParameters::addParam ( const std::string &  name,
const std::string &  doc_string 
)

Definition at line 1876 of file InputParameters.h.

1877{
1878 checkParamName(name);
1879 checkConsistentType<T>(name);
1880
1881 InputParameters::insert<T>(name);
1882 if constexpr (isFunctorNameType<T>())
1883 _params[name]._doc_string = appendFunctorDescription<T>(doc_string);
1884 else
1885 _params[name]._doc_string = doc_string;
1886}

◆ addParamNamesToGroup()

void InputParameters::addParamNamesToGroup ( const std::string &  space_delim_names,
const std::string  group_name 
)

This method takes a space delimited list of parameter names and adds them to the specified group name.

This information is used in the GUI to group parameters into logical sections.

Definition at line 1043 of file InputParameters.C.

1045{
1046 std::vector<std::string> elements;
1047 MooseUtils::tokenize(space_delim_names, elements, 1, " \t\n\v\f\r"); // tokenize on whitespace
1048
1049 // Since we don't require types (templates) for this method, we need
1050 // to get a raw list of parameter names to compare against.
1051 std::set<std::string> param_names;
1052 for (const auto & it : *this)
1053 param_names.insert(it.first);
1054
1055 for (const auto & param_name : elements)
1056 if (_params.count(param_name) > 0)
1057 {
1058 std::string & group = _params[param_name]._group;
1059 if (!group.empty() && group == group_name)
1060 mooseError(
1061 "The parameter '", param_name, "' has already been added to the group '", group, "'.");
1062 group = group_name;
1063 }
1064 else
1065 mooseError("Unable to find a parameter with name: ",
1066 param_name,
1067 " when adding to group ",
1068 group_name,
1069 '.');
1070}
unsigned int count
Definition MortarUtils.C:53
void insert(const std::string &)

Referenced by MultiAppTransfer::addSkipCoordCollapsingParam(), AdvancedOutput::addValidParams(), TransientBase::defaultSteadyStateConvergenceParams(), FEProblemSolve::feProblemDefaultConvergenceParams(), FixedPointSolve::fixedPointDefaultConvergenceParams(), Moose::PetscSupport::getPetscValidParams(), Moose::SlepcSupport::getSlepcEigenProblemValidParams(), ComponentJunction::validParams(), CylinderComponent::validParams(), Action::validParams(), AddActionComponentAction::validParams(), BatchMeshGeneratorAction::validParams(), CopyNodalVarsAction::validParams(), SetAdaptivityOptionsAction::validParams(), SetupMeshAction::validParams(), AuxKernelBase::validParams(), MaterialAuxBaseTempl< T, is_ad, is_functor, RT >::validParams(), NodalPatchRecovery::validParams(), AuxScalarKernel::validParams(), MooseObject::validParams(), BoundaryCondition::validParams(), IntegratedBCBase::validParams(), NodalBCBase::validParams(), Constraint::validParams(), DGKernelBase::validParams(), DiracKernelBase::validParams(), EigenExecutionerBase::validParams(), EigenProblemSolve::validParams(), Executioner::validParams(), FEProblemSolve::validParams(), FixedPointSolve::validParams(), MultiSystemSolveObject::validParams(), TransientBase::validParams(), FVBoundaryCondition::validParams(), FVInterfaceKernel::validParams(), FVFluxKernel::validParams(), GeometricSearchInterface::validParams(), InitialConditionBase::validParams(), Indicator::validParams(), InterfaceKernelBase::validParams(), FVRelationshipManagerInterface::validParams(), OutputInterface::validParams(), RandomInterface::validParams(), ReferenceResidualInterface::validParams(), TaggingInterface::validParams(), TransientInterface::validParams(), DerivativeSumMaterialTempl< is_ad >::validParams(), MaterialBase::validParams(), MaterialPropertyInterface::validParams(), GeneratedMesh::validParams(), MooseMesh::validParams(), AdvancedExtruderGenerator::validParams(), BSplineCurveGenerator::validParams(), FileMeshGenerator::validParams(), LevelSetMeshingHelper::validParams(), MeshGenerator::validParams(), NodeSetsGeneratorBase::validParams(), ParsedGenerateNodeset::validParams(), ProjectSideSetOntoLevelSetGenerator::validParams(), SideSetsGeneratorBase::validParams(), SurfaceDelaunayGeneratorBase::validParams(), SurfaceMeshGeneratorBase::validParams(), SurfaceSubdomainsDelaunayRemesher::validParams(), SurfaceSubdomainsFromAllNormalsGenerator::validParams(), TransfiniteMeshGenerator::validParams(), TriToQuadConverter::validParams(), XYDelaunayGenerator::validParams(), XYFrontalDelaunayGenerator::validParams(), XYQuadrilateralMeshFromBoundaryCurve::validParams(), TimedSubdomainModifier::validParams(), MultiApp::validParams(), TransientMultiApp::validParams(), NodalKernelBase::validParams(), Console::validParams(), CSV::validParams(), Exodus::validParams(), FileOutput::validParams(), GMVOutput::validParams(), Output::validParams(), PetscOutput::validParams(), PNGOutput::validParams(), SampledOutput::validParams(), TableOutput::validParams(), Tecplot::validParams(), VTKOutput::validParams(), DiffusionFV::validParams(), DiffusionPhysicsBase::validParams(), PhysicsBase::validParams(), Positions::validParams(), EigenProblem::validParams(), FEProblemBase::validParams(), SubProblem::validParams(), ScalarKernelBase::validParams(), Split::validParams(), Times::validParams(), MultiAppConservativeTransfer::validParams(), Transfer::validParams(), LayeredBase::validParams(), NearestPointBase< UserObjectType, BaseType >::validParams(), NodalPatchRecoveryBase::validParams(), ProjectedStatefulMaterialNodalPatchRecoveryTempl< T, is_ad >::validParams(), RadialAverage::validParams(), ShapeUserObject< T >::validParams(), SolutionUserObjectBase::validParams(), UserObjectBase::validParams(), ImageSampler::validParams(), MeshBaseImageSampler::validParams(), MooseVariableBase::validParams(), and LeastSquaresFitHistory::validParams().

◆ addPrivateParam() [1/6]

template<>
void InputParameters::addPrivateParam ( const std::string &  )

◆ addPrivateParam() [2/6]

template<>
void InputParameters::addPrivateParam ( const std::string &  )

◆ addPrivateParam() [3/6]

template<>
void InputParameters::addPrivateParam ( const std::string &  )

Definition at line 1463 of file InputParameters.C.

1465{
1466 mooseError("You must supply a MooseEnum object when using addPrivateParam, even if the parameter "
1467 "is not required!");
1468}

◆ addPrivateParam() [4/6]

template<>
void InputParameters::addPrivateParam ( const std::string &  )

Definition at line 1471 of file InputParameters.C.

1473{
1474 mooseError("You must supply a MultiMooseEnum object when using addPrivateParam, even if the "
1475 "parameter is not required!");
1476}

◆ addPrivateParam() [5/6]

template<typename T >
void InputParameters::addPrivateParam ( const std::string &  name)

Definition at line 2036 of file InputParameters.h.

2037{
2038 checkParamName(name);
2039 checkConsistentType<T>(name);
2040
2041 InputParameters::insert<T>(name);
2042 _params[name]._is_private = true;
2043}

◆ addPrivateParam() [6/6]

template<typename T >
void InputParameters::addPrivateParam ( const std::string &  name,
const T &  value 
)

These method add a parameter to the InputParameters object which can be retrieved like any other parameter.

This parameter however is not printed in the Input file syntax dump or web page dump so does not take a documentation string. The first version of this function takes an optional default value.

Definition at line 2047 of file InputParameters.h.

2048{
2049 checkParamName(name);
2050 checkConsistentType<T>(name);
2051
2052 InputParameters::set<T>(name) = value;
2053 auto & metadata = _params[name];
2054 metadata._is_private = true;
2055 metadata._set_by_add_param = true;
2056}

Referenced by AddControlAction::act(), FEProblemBase::addOutput(), ActionFactory::create(), ActionFactory::getValidParams(), AppFactory::storeAppParams(), Action::validParams(), CreateProblemDefaultAction::validParams(), GlobalParamsAction::validParams(), MooseApp::validParams(), MooseBase::validParams(), MooseObject::validParams(), ADMortarConstraint::validParams(), DefaultConvergenceBase::validParams(), DefaultNonlinearConvergence::validParams(), FunctorNodalCorrector::validParams(), EigenExecutionerBase::validParams(), EigenProblemSolve::validParams(), Executioner::validParams(), InternalSideIndicatorBase::validParams(), BlockRestrictable::validParams(), BoundaryRestrictable::validParams(), BoundaryRestrictableRequired::validParams(), MaterialBase::validParams(), MaterialPropertyInterface::validParams(), MooseMesh::validParams(), MeshGenerator::validParams(), StitchMeshGenerator::validParams(), SurfaceSubdomainsFromAllNormalsGenerator::validParams(), MFEMExecutedObject::validParams(), MFEMFunctorMaterial::validParams(), MFEMMeshGenerator::validParams(), MultiApp::validParams(), FileOutput::validParams(), Output::validParams(), XDA::validParams(), CopyMeshPartitioner::validParams(), MoosePartitioner::validParams(), MoosePreconditioner::validParams(), DisplacedProblem::validParams(), FEProblemBase::validParams(), RelationshipManager::validParams(), ElementReporter::validParams(), GeneralReporter::validParams(), NodalReporter::validParams(), NodalNormalsPreprocessor::validParams(), MooseVariableBase::validParams(), and VectorPostprocessor::validParams().

◆ addRangeCheckedParam() [1/2]

template<typename T >
void InputParameters::addRangeCheckedParam ( const std::string &  name,
const std::string &  parsed_function,
const std::string &  doc_string 
)

Definition at line 1979 of file InputParameters.h.

1982{
1983 addParam<T>(name, doc_string);
1984 _params[name]._range_function = parsed_function;
1985}

◆ addRangeCheckedParam() [2/2]

template<typename T >
void InputParameters::addRangeCheckedParam ( const std::string &  name,
const T &  value,
const std::string &  parsed_function,
const std::string &  doc_string 
)

Definition at line 1968 of file InputParameters.h.

1972{
1973 addParam<T>(name, value, doc_string);
1974 _params[name]._range_function = parsed_function;
1975}

Referenced by MultiAppTransfer::addBBoxFactorParam(), SurfaceDelaunayGeneratorBase::boundaryAndHolesParams(), Moose::commonAdaptivityParams(), FixedPointSolve::fixedPointDefaultConvergenceParams(), ComponentJunction::validParams(), CylinderComponent::validParams(), ElementLpNormAux::validParams(), EqualValueConstraint::validParams(), PIDTransientControl::validParams(), FEProblemSolve::validParams(), FixedPointSolve::validParams(), MultiSystemSolveObject::validParams(), PeriodicFunction::validParams(), FVAdvectedMinmodWeightBased::validParams(), FVAdvectedMUSCLDeferredCorrection::validParams(), FVAdvectedVanLeerWeightBased::validParams(), LibtorchNeuralNetControl::validParams(), ErrorFractionMarker::validParams(), AnnularMesh::validParams(), ConcentricCircleMesh::validParams(), GeneratedMesh::validParams(), ImageMesh::validParams(), PatternedMesh::validParams(), CylindricalGridDivision::validParams(), SphericalGridDivision::validParams(), AdvancedExtruderGenerator::validParams(), AnnularMeshGenerator::validParams(), BreakMeshByElementGenerator::validParams(), BSplineCurveGenerator::validParams(), CircularBoundaryCorrectionGenerator::validParams(), CoarsenBlockGenerator::validParams(), CoarsenSurfaceMeshAlongSidesetGenerator::validParams(), ConcentricCircleMeshGenerator::validParams(), DistributedRectilinearMeshGenerator::validParams(), FillBetweenCurvesGenerator::validParams(), FillBetweenPointVectorsGenerator::validParams(), FillBetweenSidesetsGenerator::validParams(), GeneratedMeshGenerator::validParams(), ImageMeshGenerator::validParams(), ManifoldSubdomainGenerator::validParams(), MoveBoundaryNodesToCurveGenerator::validParams(), ParsedCurveGenerator::validParams(), PatternedMeshGenerator::validParams(), SideSetsGeneratorBase::validParams(), SmoothMeshGenerator::validParams(), SurfaceDelaunayGeneratorBase::validParams(), SurfaceMeshGeneratorBase::validParams(), SurfaceSubdomainsDelaunayRemesher::validParams(), TransfiniteMeshGenerator::validParams(), TriToQuadConverter::validParams(), XYDelaunayGenerator::validParams(), XYQuadrilateralMeshFromBoundaryCurve::validParams(), XYTriangleBoundaryLayerGenerator::validParams(), XYZDelaunayGenerator::validParams(), MFEMRefinementMarker::validParams(), MFEMNewtonNonlinearSolver::validParams(), MultiApp::validParams(), Exodus::validParams(), Output::validParams(), PNGOutput::validParams(), ElementW1pError::validParams(), ElementPointNeighborLayers::validParams(), ElementSideNeighborLayers::validParams(), NewmarkBeta::validParams(), ConstantDT::validParams(), FixedPointIterationAdaptiveDT::validParams(), IterationAdaptiveDT::validParams(), LogConstantDT::validParams(), TimeStepper::validParams(), MultiAppGeneralFieldTransfer::validParams(), LayeredBase::validParams(), RadialAverage::validParams(), and MooseVariableBase::validParams().

◆ addRelationshipManager()

void InputParameters::addRelationshipManager ( const std::string &  name,
Moose::RelationshipManagerType  rm_type,
Moose::RelationshipManagerInputParameterCallback  input_parameter_callback = nullptr 
)

Tells MOOSE about a RelationshipManager that this object needs.

RelationshipManagers handle element "ghosting", "non-local DOF access" and "sparsity pattern" relationships.

Basically: if this object needs non-local (ie non-current-element) data access then you probably need a relationship manager

Parameters
nameThe name of the RelationshipManager type
rm_typeThe type (GEOMETRIC/ALGEBRAIC) of the RelationshipManger. Note: You can use boolean logic to to "or" RelationshipManagerTypes together to make a RelationshipManager that is multi-typed.
input_parameter_callbackThis is a function pointer that will get called to fill in the RelationShipManager's InputParameters. See MooseTypes.h for the signature of this function.

Definition at line 537 of file InputParameters.C.

541{
542 _buildable_rm_types.emplace_back(name, rm_type, input_parameter_callback);
543}
std::vector< std::tuple< std::string, Moose::RelationshipManagerType, Moose::RelationshipManagerInputParameterCallback > > _buildable_rm_types
The RelationshipManagers that this object may either build or require.

Referenced by AuxKernelBase::validParams(), FunctorElementalGradientAuxTempl< is_ad >::validParams(), ProjectionAux::validParams(), MortarConstraintBase::validParams(), NodeFaceConstraint::validParams(), DGKernelBase::validParams(), FVFunctorDirichletBCTempl< is_ad >::validParams(), FVInterfaceKernel::validParams(), FVAdvection::validParams(), FVAnisotropicDiffusion::validParams(), FVDiffusion::validParams(), GradientJumpIndicator::validParams(), InterfaceKernelBase::validParams(), FVRelationshipManagerInterface::validParams(), MortarConsumerInterface::validParams(), InterfaceMaterial::validParams(), BreakMeshByBlockGenerator::validParams(), DistributedRectilinearMeshGenerator::validParams(), Exodus::validParams(), GMVOutput::validParams(), Tecplot::validParams(), MultiAppProjectionTransfer::validParams(), DomainUserObject::validParams(), ElemSideNeighborLayersGeomTester::validParams(), ElemSideNeighborLayersTester::validParams(), InterfaceUserObjectBase::validParams(), InternalSideUserObject::validParams(), NodalPatchRecoveryBase::validParams(), ProjectedStatefulMaterialNodalPatchRecoveryBase::validParams(), ProjectedStatefulMaterialNodalPatchRecoveryTempl< T, is_ad >::validParams(), RadialAverage::validParams(), SideUserObject::validParams(), and MooseVariableFV< OutputType >::validParams().

◆ addRequiredCommandLineParam()

template<typename T >
void InputParameters::addRequiredCommandLineParam ( const std::string &  name,
const std::string &  syntax,
const std::string &  doc_string 
)

Add parameters for retrieval from the command line.

NOTE: This ONLY works for App objects! This is not valid for normal MOOSE objects!

Parameters
nameThe name of the parameter
syntaxSpace separated list of command-line switch syntax that can set this option
doc_stringDocumentation. This will be shown for –help

Definition at line 2060 of file InputParameters.h.

2063{
2064 static_assert(!std::is_same_v<T, bool>, "Cannot be used for a bool");
2065
2066 addRequiredParam<T>(name, doc_string);
2067 addCommandLineParamHelper<T>(name, syntax, /* required = */ true, /* value_required = */ true);
2068}

◆ addRequiredCoupledVar()

void InputParameters::addRequiredCoupledVar ( const std::string &  name,
const std::string &  doc_string 
)

This method adds a coupled variable name pair.

The parser will look for variable name pair in the input file and can return a reference to the storage location for the coupled variable. If the coupled variable is not supplied in the input file, and error is thrown.

Version 2: An auto built vector will be built from the base_name and num_name param. See addCoupledVar for an example

Definition at line 317 of file InputParameters.C.

318{
319 addRequiredParam<std::vector<VariableName>>(name, doc_string);
320 _coupled_vars.insert(name);
321}

Referenced by transferParam(), ArrayVariableComponent::validParams(), ArrayVarReductionAux::validParams(), CopyValueAux::validParams(), DiffusionFluxAux::validParams(), ElementLpNormAux::validParams(), NearestNodeValueAux::validParams(), NormalizationAux::validParams(), ProjectionAux::validParams(), SecondTimeDerivativeAux::validParams(), TagAuxBase< T >::validParams(), VariableGradientComponent::validParams(), VariableTimeIntegrationAux::validParams(), VectorMagnitudeAux::validParams(), VectorVariableComponentAux::validParams(), VectorVariableMagnitudeAux::validParams(), ScalarTagMatrixAux::validParams(), ADVectorMatchedValueBC::validParams(), ArrayLowerDIntegratedBC::validParams(), BoundaryIntegralValueConstraint::validParams(), CoupledVarNeumannBCTempl< is_ad >::validParams(), LowerDIntegratedBC::validParams(), MatchedValueBCTempl< is_ad >::validParams(), OneDEqualValueConstraintBC::validParams(), ADPenaltyPeriodicSegmentalConstraint::validParams(), ADPeriodicSegmentalConstraint::validParams(), NodeElemConstraintBase::validParams(), PenaltyPeriodicSegmentalConstraint::validParams(), PeriodicSegmentalConstraint::validParams(), FunctorNodalCorrector::validParams(), ArrayDGLowerDKernel::validParams(), DGLowerDKernel::validParams(), HFEMTestJump::validParams(), HFEMTrialJump::validParams(), FVBoundaryScalarLagrangeMultiplierConstraint::validParams(), FVScalarLagrangeMultiplierInterface::validParams(), FVScalarLagrangeMultiplierConstraint::validParams(), InterfaceKernelBase::validParams(), ArrayCoupledForce::validParams(), ArrayCoupledTimeDerivative::validParams(), CoupledForceTempl< is_ad >::validParams(), CoupledTimeDerivative::validParams(), DivField::validParams(), GradField::validParams(), MatCoupledForce::validParams(), ScalarLagrangeMultiplier::validParams(), VectorCoupledTimeDerivative::validParams(), ADFluxFromGradientMaterial::validParams(), ADPiecewiseLinearInterpolationMaterial::validParams(), CompositeTensorBase< T, U >::validParams(), CoupledGradientMaterialTempl< is_ad >::validParams(), DerivativeSumMaterialTempl< is_ad >::validParams(), InterpolatedStatefulMaterialTempl< T >::validParams(), PiecewiseLinearInterpolationMaterial::validParams(), VectorFromComponentVariablesMaterialTempl< is_ad >::validParams(), ActivateElementsCoupled::validParams(), CoupledVarThresholdElementSubdomainModifier::validParams(), VariableValueElementSubdomainModifier::validParams(), CoupledForceNodalKernel::validParams(), LowerBoundNodalKernel::validParams(), UpperBoundNodalKernel::validParams(), ElementHCurlSemiError::validParams(), ElementHDivSemiError::validParams(), ElementIntegralArrayVariablePostprocessor::validParams(), ElementIntegralVariablePostprocessor::validParams(), ElementL2Difference::validParams(), ElementVariablePostprocessor::validParams(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::validParams(), InterfaceIntegralVariableValuePostprocessor::validParams(), InternalSideIntegralVariablePostprocessor::validParams(), NodalVariablePostprocessor::validParams(), SideIntegralVariablePostprocessor::validParams(), SideVariablePostprocessor::validParams(), VariableInnerProduct::validParams(), ElementVariableStatistics::validParams(), NodalVariableStatistics::validParams(), CoupledODETimeDerivative::validParams(), NodalEqualValueConstraint::validParams(), ElementIntegralVariableUserObject::validParams(), InterfaceQpValueUserObject::validParams(), NodalPatchRecoveryVariable::validParams(), SideIntegralVariableUserObject::validParams(), ElementVariablesDifferenceMax::validParams(), ElementVariableVectorPostprocessor::validParams(), NodalVariableVectorPostprocessor::validParams(), PointVariableSamplerBase::validParams(), and SideValueSampler::validParams().

◆ addRequiredCoupledVarWithAutoBuild()

void InputParameters::addRequiredCoupledVarWithAutoBuild ( const std::string &  name,
const std::string &  base_name,
const std::string &  num_name,
const std::string &  doc_string 
)

Definition at line 306 of file InputParameters.C.

310{
311 addRequiredParam<std::vector<VariableName>>(name, doc_string);
312
313 addCoupledVarWithAutoBuild(name, base_name, num_name, doc_string);
314}
void addCoupledVarWithAutoBuild(const std::string &name, const std::string &base_name, const std::string &num_name, const std::string &doc_string)
These methods add a coupled variable name pair.

◆ addRequiredCustomTypeParam()

template<typename T >
void InputParameters::addRequiredCustomTypeParam ( const std::string &  name,
const std::string &  custom_type,
const std::string &  doc_string 
)

These methods add an option parameter and with a customer type to the InputParameters object.

The custom type will be output in YAML dumps and can be used within the GUI application.

Definition at line 1989 of file InputParameters.h.

1992{
1993 addRequiredParam<T>(name, doc_string);
1994 _params[name]._custom_type = custom_type;
1995}

Referenced by ArrayParsedAux::validParams(), ParsedAux::validParams(), ParsedVectorAux::validParams(), ParsedChainControl::validParams(), ParsedConvergence::validParams(), MooseParsedFunction::validParams(), ParsedFunctorMaterialTempl< is_ad >::validParams(), ParsedDownSelectionPositions::validParams(), ParsedPostprocessor::validParams(), ParsedReporterBase::validParams(), ParsedODEKernel::validParams(), and Terminator::validParams().

◆ addRequiredParam() [1/6]

template<>
void InputParameters::addRequiredParam ( const std::string &  name,
const MooseEnum &  moose_enum,
const std::string &  doc_string 
)

◆ addRequiredParam() [2/6]

template<>
void InputParameters::addRequiredParam ( const std::string &  name,
const MooseEnum &  moose_enum,
const std::string &  doc_string 
)

Definition at line 1358 of file InputParameters.C.

1362{
1363 InputParameters::set<MooseEnum>(name) = moose_enum; // valid parameter is set by set_attributes
1364 auto & metadata = _params[name];
1365 metadata._required = true;
1366 metadata._doc_string = doc_string;
1367}

◆ addRequiredParam() [3/6]

template<>
void InputParameters::addRequiredParam ( const std::string &  name,
const MultiMooseEnum &  moose_enum,
const std::string &  doc_string 
)

◆ addRequiredParam() [4/6]

template<>
void InputParameters::addRequiredParam ( const std::string &  name,
const MultiMooseEnum &  moose_enum,
const std::string &  doc_string 
)

Definition at line 1370 of file InputParameters.C.

1374{
1375 InputParameters::set<MultiMooseEnum>(name) =
1376 moose_enum; // valid parameter is set by set_attributes
1377 auto & metadata = _params[name];
1378 metadata._required = true;
1379 metadata._doc_string = doc_string;
1380}

◆ addRequiredParam() [5/6]

template<typename T >
void InputParameters::addRequiredParam ( const std::string &  name,
const std::string &  doc_string 
)

This method adds a parameter and documentation string to the InputParameters object that will be extracted from the input file.

If the parameter is missing in the input file, an error will be thrown

Definition at line 1827 of file InputParameters.h.

1828{
1829 checkParamName(name);
1830 checkConsistentType<T>(name);
1831
1832 InputParameters::insert<T>(name);
1833 auto & metadata = _params[name];
1834 metadata._required = true;
1835 if constexpr (isFunctorNameType<T>())
1836 metadata._doc_string = appendFunctorDescription<T>(doc_string);
1837 else
1838 metadata._doc_string = doc_string;
1839}

Referenced by MFEMExecutedObject::addRequiredDependencyParam(), SurfaceDelaunayGeneratorBase::boundaryAndHolesParams(), ComponentJunction::validParams(), CylinderComponent::validParams(), MeshGeneratorComponent::validParams(), AddActionComponentAction::validParams(), BatchMeshGeneratorAction::validParams(), MooseObjectAction::validParams(), AdvectiveFluxAux::validParams(), AuxKernelBase::validParams(), ContainsPointAux::validParams(), DebugResidualAux::validParams(), DiffusionFluxAux::validParams(), DivergenceAuxTempl< is_ad >::validParams(), ElementAdaptivityLevelAux::validParams(), ElementL2ErrorFunctionAux::validParams(), ElementLengthAux::validParams(), ElementNormalAux::validParams(), ElementQualityAux::validParams(), ElementUOAux::validParams(), ExtraElementIDAux::validParams(), FunctionArrayAux::validParams(), FunctionAux::validParams(), FunctorAux::validParams(), FunctorCoordinatesFunctionAux::validParams(), FunctorElementalGradientAuxTempl< is_ad >::validParams(), FunctorVectorElementalAuxTempl< is_ad >::validParams(), GapValueAux::validParams(), GhostingFromUOAux::validParams(), InterfaceValueUserObjectAux::validParams(), MaterialAuxBaseTempl< T, is_ad, is_functor, RT >::validParams(), MaterialRankFourTensorAuxTempl< is_ad >::validParams(), MaterialRankTwoTensorAuxTempl< T, is_ad >::validParams(), MaterialRealDenseMatrixAux::validParams(), MaterialRealVectorValueAuxTempl< T, is_ad, is_functor >::validParams(), MaterialStdVectorAuxBaseTempl< T, is_ad >::validParams(), MaterialStdVectorRealGradientAux::validParams(), MeshDivisionAux::validParams(), NearestNodeDistanceAux::validParams(), NearestNodeValueAux::validParams(), NodalPatchRecoveryAuxBase::validParams(), PenetrationAux::validParams(), ProjectedMaterialPropertyNodalPatchRecoveryAux::validParams(), SolutionAux::validParams(), SpatialUserObjectAux::validParams(), TagVectorArrayVariableAux::validParams(), TagVectorArrayVariableValueAux::validParams(), TagVectorAux::validParams(), VectorFunctionAux::validParams(), VectorPostprocessorVisualizationAux::validParams(), VectorVariableComponentAux::validParams(), AuxNodalScalarKernel::validParams(), AuxScalarKernel::validParams(), ConstantScalarAux::validParams(), FunctionScalarAux::validParams(), SolutionScalarAux::validParams(), ADArrayDirichletBC::validParams(), ADDirichletBC::validParams(), ADFunctionNeumannBC::validParams(), ADFunctionPenaltyDirichletBC::validParams(), ADPenaltyDirichletBC::validParams(), ArrayDirichletBC::validParams(), ArrayPenaltyDirichletBC::validParams(), DGFunctionDiffusionDirichletBC::validParams(), DirichletBC::validParams(), FunctionDirichletBC::validParams(), FunctionGradientNeumannBC::validParams(), FunctionNeumannBC::validParams(), FunctionPenaltyDirichletBC::validParams(), FunctorDirichletBC::validParams(), FunctorNeumannBC::validParams(), MatNeumannBCTempl< is_ad >::validParams(), OneDEqualValueConstraintBC::validParams(), PenaltyDirichletBC::validParams(), PostprocessorDirichletBC::validParams(), VectorCurlPenaltyDirichletBC::validParams(), VectorDirichletBC::validParams(), VectorDivPenaltyDirichletBC::validParams(), VectorPenaltyDirichletBC::validParams(), BoundsBase::validParams(), ConstantBounds::validParams(), GetFunctionValueChainControl::validParams(), GetPostprocessorChainControl::validParams(), LimitChainControl::validParams(), PIDChainControl::validParams(), RealToBoolChainControl::validParams(), ScaleOldChainControl::validParams(), SetValueChainControlTempl< T >::validParams(), SmootherChainControl::validParams(), TerminateChainControl::validParams(), UnitTripChainControl::validParams(), EqualGradientConstraint::validParams(), EqualValueBoundaryConstraint::validParams(), EqualValueEmbeddedConstraintTempl< is_ad >::validParams(), LinearNodalConstraint::validParams(), NodeElemConstraintBase::validParams(), BoolFunctionControl::validParams(), ConditionalFunctionEnableControl::validParams(), PIDTransientControl::validParams(), RealFunctionControl::validParams(), TimesEnableControl::validParams(), MultiPostprocessorConvergence::validParams(), PostprocessorConvergence::validParams(), PostprocessorSteadyStateConvergence::validParams(), FunctorNodalCorrector::validParams(), ConstantDamper::validParams(), ElementDamper::validParams(), NodalDamper::validParams(), ADDGAdvection::validParams(), ADDGDiffusion::validParams(), ArrayDGDiffusion::validParams(), DGConvection::validParams(), DGDiffusion::validParams(), ConstantPointSource::validParams(), FunctionDiracSource::validParams(), FunctorDiracKernel::validParams(), ReporterPointSource::validParams(), VectorConstantPointSource::validParams(), Distribution::validParams(), EigenExecutionerBase::validParams(), Axisymmetric2D3DSolutionFunction::validParams(), BicubicSplineFunction::validParams(), CoarsenedPiecewiseLinear::validParams(), LinearCombinationFunction::validParams(), PeriodicFunction::validParams(), PiecewiseConstantFromCSV::validParams(), PiecewiseFunction::validParams(), PiecewiseLinearFromVectorPostprocessor::validParams(), SplineFunction::validParams(), FunctorChangeFunctorMaterialTempl< is_ad >::validParams(), FunctorSmootherTempl< T >::validParams(), GenericVectorFunctorMaterialTempl< is_ad >::validParams(), ParsedFunctorMaterialTempl< is_ad >::validParams(), VectorMagnitudeFunctorMaterialTempl< is_ad >::validParams(), FVBoundaryCondition::validParams(), FVConstantScalarOutflowBC::validParams(), FVDirichletBC::validParams(), FVFunctionDirichletBC::validParams(), FVFunctionNeumannBC::validParams(), FVFunctorDirichletBCTempl< is_ad >::validParams(), FVFunctorNeumannBC::validParams(), FVOrthogonalBoundaryDiffusion::validParams(), FVPostprocessorDirichletBC::validParams(), FVConstantIC::validParams(), FVFunctionIC::validParams(), FVInitialConditionBase::validParams(), FVDiffusionInterface::validParams(), FVInterfaceKernel::validParams(), FVOneVarDiffusionInterface::validParams(), FVAdvection::validParams(), FVAnisotropicDiffusion::validParams(), FVBoundedValueConstraint::validParams(), FVCoupledForce::validParams(), FVDiffusion::validParams(), FVDivergence::validParams(), FVMatAdvection::validParams(), FVOrthogonalDiffusion::validParams(), FVPointValueConstraint::validParams(), ArrayConstantIC::validParams(), ArrayFunctionIC::validParams(), BoundingBoxIC::validParams(), ConstantIC::validParams(), FunctionIC::validParams(), FunctionScalarIC::validParams(), FunctorIC::validParams(), InitialConditionBase::validParams(), IntegralPreservingFunctionIC::validParams(), ScalarComponentIC::validParams(), ScalarConstantIC::validParams(), ScalarSolutionIC::validParams(), SolutionIC::validParams(), VectorConstantIC::validParams(), AnalyticalIndicator::validParams(), ElementIndicator::validParams(), InternalSideIndicatorTempl< ComputeValueType >::validParams(), InternalSideIndicatorBase::validParams(), InterfaceReaction::validParams(), PenaltyInterfaceDiffusionTempl< T, is_ad >::validParams(), BoundaryRestrictableRequired::validParams(), MortarConsumerInterface::validParams(), OrientedBoxInterface::validParams(), ADArrayReaction::validParams(), AnisotropicDiffusion::validParams(), ArrayBodyForce::validParams(), ArrayCoupledForce::validParams(), ArrayDiffusion::validParams(), ArrayReaction::validParams(), FunctorKernel::validParams(), MatBodyForceTempl< is_ad, Parent >::validParams(), MaterialPropertyValueTempl< is_ad >::validParams(), ScalarLMKernelTempl< is_ad >::validParams(), KokkosIntegralMaterialProperty< Base >::validParams(), LibtorchNeuralNetControl::validParams(), TorchScriptMaterial::validParams(), LibtorchControlValuePostprocessor::validParams(), LibtorchArtificialNeuralNetParameters::validParams(), TorchScriptUserObject::validParams(), LinearFVAdvectionDiffusionFunctorDirichletBC::validParams(), LinearFVAdvectionDiffusionFunctorNeumannBC::validParams(), LinearFVAnisotropicDiffusionFunctorNeumannBC::validParams(), LinearFVBoundaryCondition::validParams(), LinearFVAdvection::validParams(), LinearFVAnisotropicDiffusion::validParams(), BoundaryMarker::validParams(), BoundaryPreservedMarker::validParams(), BoxMarker::validParams(), ComboMarker::validParams(), IndicatorMarker::validParams(), OrientedBoxMarker::validParams(), QuadraturePointMarker::validParams(), ReporterPointMarker::validParams(), UniformMarker::validParams(), ValueRangeMarker::validParams(), ADFluxFromGradientMaterial::validParams(), ADPiecewiseLinearInterpolationMaterial::validParams(), CompositeTensorBase< T, U >::validParams(), CoupledGradientMaterialTempl< is_ad >::validParams(), CoupledValueFunctionMaterialTempl< is_ad >::validParams(), GenericConstant2DArrayTempl< is_ad >::validParams(), GenericConstantArray::validParams(), GenericConstantMaterialTempl< is_ad >::validParams(), GenericConstantRankTwoTensorTempl< is_ad >::validParams(), GenericConstantRealVectorValueTempl< is_ad >::validParams(), GenericConstantStdVectorMaterialTempl< is_ad >::validParams(), GenericConstantSymmetricRankTwoTensorTempl< is_ad >::validParams(), GenericConstantVectorMaterialTempl< is_ad >::validParams(), GenericFunctionRankTwoTensorTempl< is_ad >::validParams(), InterpolatedStatefulMaterialTempl< T >::validParams(), PiecewiseLinearInterpolationMaterial::validParams(), RankTwoTensorFromComponentProperties::validParams(), VectorFromComponentVariablesMaterialTempl< is_ad >::validParams(), AnnularMesh::validParams(), ConcentricCircleMesh::validParams(), FileMesh::validParams(), GeneratedMesh::validParams(), PatternedMesh::validParams(), RinglebMesh::validParams(), StitchedMesh::validParams(), TiledMesh::validParams(), CylindricalGridDivision::validParams(), ExtraElementIntegerDivision::validParams(), FunctorBinnedValuesDivision::validParams(), NearestPositionsDivision::validParams(), NestedDivision::validParams(), AdvancedExtruderGenerator::validParams(), AnnularMeshGenerator::validParams(), BlockToMeshConverterGenerator::validParams(), Boundary2DDelaunayGenerator::validParams(), BoundaryDeletionGenerator::validParams(), BoundaryElementConversionGenerator::validParams(), BoundaryLayerSubdomainGenerator::validParams(), BoundingBoxNodeSetGenerator::validParams(), BreakBoundaryOnSubdomainGenerator::validParams(), BreakMeshByBlockGenerator::validParams(), BreakMeshByElementGenerator::validParams(), CartesianMeshGenerator::validParams(), CircularBoundaryCorrectionGenerator::validParams(), CoarsenBlockGenerator::validParams(), CoarsenSurfaceMeshAlongSidesetGenerator::validParams(), CombinerGenerator::validParams(), ConcentricCircleMeshGenerator::validParams(), CutMeshByLevelSetGenerator::validParams(), CutMeshByLevelSetGeneratorBase::validParams(), CutMeshByPlaneGenerator::validParams(), DeleteElementsNearMeshGenerator::validParams(), DistributedRectilinearMeshGenerator::validParams(), ElementDeletionGeneratorBase::validParams(), ElementGenerator::validParams(), ElementOrderConversionGenerator::validParams(), ElementsToSimplicesConverter::validParams(), ElementsToTetrahedronsConverter::validParams(), ExtraNodesetGenerator::validParams(), FileMeshGenerator::validParams(), FillBetweenCurvesGenerator::validParams(), FillBetweenPointVectorsGenerator::validParams(), FillBetweenSidesetsGenerator::validParams(), FlattenRefinementGenerator::validParams(), FlipSidesetGenerator::validParams(), GeneratedMeshGenerator::validParams(), ImageSubdomainGenerator::validParams(), LowerDBlockFromSidesetGenerator::validParams(), ManifoldSubdomainGenerator::validParams(), MeshCollectionGenerator::validParams(), MeshDiagnosticsGenerator::validParams(), MeshExtruderGenerator::validParams(), MeshRepairGenerator::validParams(), MoveBoundaryNodesToCurveGenerator::validParams(), MoveNodeGenerator::validParams(), NodeSetsFromSideSetsGenerator::validParams(), NodeSetsGeneratorBase::validParams(), OrientedSubdomainBoundingBoxGenerator::validParams(), OverlayMeshGenerator::validParams(), ParsedCurveGenerator::validParams(), ParsedElementDeletionGenerator::validParams(), ParsedExtraElementIDGenerator::validParams(), ParsedGenerateNodeset::validParams(), ParsedGenerateSideset::validParams(), ParsedNodeTransformGenerator::validParams(), ParsedSubdomainGeneratorBase::validParams(), ParsedSubdomainMeshGenerator::validParams(), PatternedMeshGenerator::validParams(), PlaneDeletionGenerator::validParams(), PlaneIDMeshGenerator::validParams(), PolyLineMeshFollowingNodeSetGenerator::validParams(), ProjectSideSetOntoLevelSetGenerator::validParams(), RBBMappingConverter::validParams(), RefineBlockGenerator::validParams(), RefineSidesetGenerator::validParams(), RenameBlockGenerator::validParams(), RenameBoundaryGenerator::validParams(), RenumberBySubdomainGenerator::validParams(), RinglebMeshGenerator::validParams(), SideSetExtruderGenerator::validParams(), SideSetsFromBoundingBoxGenerator::validParams(), SideSetsFromNodeSetsGenerator::validParams(), SideSetsFromNormalsGenerator::validParams(), SideSetsFromPointsGenerator::validParams(), SideSetsGeneratorBase::validParams(), SmoothMeshGenerator::validParams(), StackGenerator::validParams(), StitchBoundaryMeshGenerator::validParams(), StitchMeshGenerator::validParams(), StitchMeshGeneratorBase::validParams(), SubdomainBoundingBoxGenerator::validParams(), SubdomainIDGenerator::validParams(), SubdomainPerElementGenerator::validParams(), SubdomainsFromPartitionerGenerator::validParams(), SurfaceMeshGeneratorBase::validParams(), SurfaceSubdomainsDelaunayRemesher::validParams(), SymmetryTransformGenerator::validParams(), TiledMeshGenerator::validParams(), TransfiniteMeshGenerator::validParams(), TransformGenerator::validParams(), TriToQuadConverter::validParams(), UniqueExtraIDMeshGenerator::validParams(), XYMeshLineCutter::validParams(), XYQuadrilateralMeshFromBoundaryCurve::validParams(), XYTriangleBoundaryLayerGenerator::validParams(), XYZDelaunayGenerator::validParams(), ActivateElementsCoupled::validParams(), ActivateElementsUserObjectBase::validParams(), SidesetAroundSubdomainUpdater::validParams(), ThresholdElementSubdomainModifier::validParams(), MFEMAuxKernel::validParams(), MFEMComplexAuxKernel::validParams(), MFEMComplexScalarProjectionAux::validParams(), MFEMComplexVectorProjectionAux::validParams(), MFEMCrossProductAux::validParams(), MFEMInnerProductAux::validParams(), MFEMScalarProjectionAux::validParams(), MFEMScalarTimeAverageAux::validParams(), MFEMVectorProjectionAux::validParams(), MFEMFESpaceHierarchy::validParams(), MFEMGenericFESpace::validParams(), MFEMCoordinateTransformations::validParams(), MFEMScalarQuadratureFunction::validParams(), MFEMVectorQuadratureFunction::validParams(), MFEMGenericFunctorMaterial::validParams(), MFEMGenericFunctorMatrixMaterial::validParams(), MFEMGenericFunctorVectorMaterial::validParams(), MFEMIndicator::validParams(), MFEMRefinementMarker::validParams(), MFEMFileMesh::validParams(), MFEMGeneratedMeshGenerator::validParams(), MFEMVectorBoundaryFluxIntegralPostprocessor::validParams(), MFEMGeometricMultigridSolver::validParams(), MFEMCutTransitionSubMesh::validParams(), MFEMMultiAppTransfer::validParams(), MFEMSubMeshTransfer::validParams(), MFEMComplexVariable::validParams(), MFEMComplexVariableLineValueSampler::validParams(), MFEMComplexVariablePointValueSampler::validParams(), MFEMScalarCoefficientPointValueSampler::validParams(), MFEMVariableLineValueSampler::validParams(), MFEMVariablePointValueSampler::validParams(), MultiApp::validParams(), NEML2FEInterpolation::validParams(), NEML2Kernel::validParams(), NEML2PostKernel::validParams(), ArrayReactionNodalKernelTempl< is_ad >::validParams(), ConstantRate::validParams(), PenaltyDirichletNodalKernel::validParams(), UserForcingFunctionNodalKernel::validParams(), UserForcingFunctorNodalKernel::validParams(), PNGOutput::validParams(), BlockWeightedPartitioner::validParams(), LibmeshPartitioner::validParams(), DiffusionFV::validParams(), DistributedPositions::validParams(), FilePositions::validParams(), FunctorExtremaPositions::validParams(), FunctorPositions::validParams(), InputPositions::validParams(), MultiAppPositions::validParams(), ParsedDownSelectionPositions::validParams(), Positions::validParams(), ReporterPositions::validParams(), TransformedPositions::validParams(), AverageVariableChange::validParams(), BoundaryLinearFVFluxIntegral::validParams(), ChainControlDataPostprocessor::validParams(), ChangeOverFixedPointPostprocessor::validParams(), ChangeOverTimePostprocessor::validParams(), ComparisonPostprocessor::validParams(), CumulativeValuePostprocessor::validParams(), DifferencePostprocessor::validParams(), DiscreteVariableResidualNorm::validParams(), ElementalVariableValue::validParams(), ElementExtremeFunctorValueTempl< is_ad >::validParams(), ElementExtremeMaterialPropertyTempl< is_ad >::validParams(), ElementH1SemiError::validParams(), ElementHCurlSemiError::validParams(), ElementHDivSemiError::validParams(), ElementIntegralFunctorPostprocessorTempl< is_ad >::validParams(), ElementIntegralMaterialPropertyTempl< is_ad >::validParams(), ElementL1Error::validParams(), ElementL2Error::validParams(), ElementL2FunctorErrorTempl< is_ad >::validParams(), ElementMaxLevelPostProcessor::validParams(), ElementW1pError::validParams(), FunctionElementIntegral::validParams(), FunctionValuePostprocessor::validParams(), GreaterThanLessThanPostprocessor::validParams(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::validParams(), LinearCombinationPostprocessor::validParams(), NearestNodeNumber::validParams(), NodalL2Error::validParams(), NodalVariableValue::validParams(), NumMeshDivisions::validParams(), NumPositions::validParams(), PercentChangePostprocessor::validParams(), PerfGraphData::validParams(), PointValue::validParams(), PostprocessorComparison::validParams(), PseudoTimestep::validParams(), RelativeDifferencePostprocessor::validParams(), ScalarL2Error::validParams(), ScalarVariable::validParams(), ScalePostprocessor::validParams(), SideAdvectiveFluxIntegralTempl< is_ad >::validParams(), SideFVFluxBCIntegral::validParams(), SideIntegralFunctorPostprocessorTempl< is_ad >::validParams(), SumPostprocessor::validParams(), TagVectorSum::validParams(), TimeExtremeValue::validParams(), VariableResidual::validParams(), VectorPostprocessorComparison::validParams(), VectorPostprocessorComponent::validParams(), VectorPostprocessorReductionValue::validParams(), FieldSplitPreconditionerTempl< Base >::validParams(), PhysicsBasedPreconditioner::validParams(), VariableCondensationPreconditioner::validParams(), Predictor::validParams(), GhostBoundary::validParams(), GhostPrimaryFace::validParams(), ProxyRelationshipManager::validParams(), RelationshipManager::validParams(), AccumulateReporter::validParams(), ElementExtremeMaterialPropertyReporterTempl< is_ad >::validParams(), ExtraIDIntegralReporter::validParams(), ParsedVectorRealReductionReporter::validParams(), ParsedVectorReporter::validParams(), ParsedVectorVectorRealReductionReporter::validParams(), AverageValueConstraint::validParams(), ExplicitSSPRungeKutta::validParams(), ControllableInputTimes::validParams(), CSVFileTimes::validParams(), ExodusFileTimes::validParams(), FunctorTimes::validParams(), InputTimes::validParams(), ReporterTimes::validParams(), Times::validParams(), AB2PredictorCorrector::validParams(), ConstantDT::validParams(), CSVTimeSequenceStepper::validParams(), ExodusTimeSequenceStepper::validParams(), IterationAdaptiveDT::validParams(), PostprocessorDT::validParams(), SolutionTimeAdaptiveDT::validParams(), TimeSequenceFromTimes::validParams(), TimeSequenceStepper::validParams(), MultiAppCloneReporterTransfer::validParams(), MultiAppConservativeTransfer::validParams(), MultiAppCopyTransfer::validParams(), MultiAppGeneralFieldFunctorTransfer::validParams(), MultiAppGeneralFieldUserObjectTransfer::validParams(), MultiAppPostprocessorInterpolationTransfer::validParams(), MultiAppPostprocessorToAuxScalarTransfer::validParams(), MultiAppPostprocessorTransfer::validParams(), MultiAppReporterTransfer::validParams(), MultiAppScalarToAuxScalarTransfer::validParams(), MultiAppUserObjectTransfer::validParams(), MultiAppVariableValueSamplePostprocessorTransfer::validParams(), MultiAppVariableValueSampleTransfer::validParams(), MultiAppVectorPostprocessorTransfer::validParams(), BoundaryMeshBuilder::validParams(), ElementIntegralFunctorUserObject::validParams(), ElementQualityChecker::validParams(), ElemSideNeighborLayersGeomTester::validParams(), ElemSideNeighborLayersTester::validParams(), FunctionElementIntegralUserObject::validParams(), InterfaceQpMaterialPropertyBaseUserObject< T >::validParams(), JSONFileReader::validParams(), LayeredBase::validParams(), LayeredSideDiffusiveFluxAverage::validParams(), MessageFromInput::validParams(), NearestNodeNumberUO::validParams(), NodalNormalsCorner::validParams(), NodalNormalsPreprocessor::validParams(), NodalPatchRecoveryBase::validParams(), PointInPolyhedronCheckUO::validParams(), PointInSignedFunctionCheckUO::validParams(), PointInUnionCheckUO::validParams(), PostprocessorSpatialUserObject::validParams(), ProjectedStatefulMaterialNodalPatchRecoveryTempl< T, is_ad >::validParams(), PropertyReadFile::validParams(), RadialAverage::validParams(), SideIntegralFunctorUserObject::validParams(), SolutionUserObjectBase::validParams(), ArrayVariableValueVolumeHistogram::validParams(), CombinedVectorPostprocessor::validParams(), ConstantVectorPostprocessor::validParams(), CSVReaderVectorPostprocessor::validParams(), CylindricalAverage::validParams(), ElementsAlongLine::validParams(), ElementsAlongPlane::validParams(), ExtraIDIntegralVectorPostprocessor::validParams(), HistogramVectorPostprocessor::validParams(), IntersectionPointsAlongLine::validParams(), LeastSquaresFit::validParams(), LeastSquaresFitHistory::validParams(), LineFunctionSampler::validParams(), LineMaterialSamplerBase< T >::validParams(), LineValueSampler::validParams(), MeshDivisionFunctorReductionVectorPostprocessor::validParams(), PointValueSampler::validParams(), PositionsFunctorValueSampler::validParams(), SamplerBase::validParams(), SpatialAverageBase::validParams(), SpatialUserObjectVectorPostprocessor::validParams(), VariableValueVolumeHistogram::validParams(), and VectorOfPostprocessors::validParams().

◆ addRequiredParam() [6/6]

template<typename T >
void InputParameters::addRequiredParam ( const std::string &  name,
const T &  moose_enum,
const std::string &  doc_string 
)

This version of addRequiredParam is here for a consistent use with MooseEnums.

Use of this function for any other type will throw an error.

Definition at line 1843 of file InputParameters.h.

1846{
1847 mooseError("You cannot call addRequiredParam and supply a default value for this type, please "
1848 "use addParam instead");
1849}

◆ addRequiredRangeCheckedParam()

template<typename T >
void InputParameters::addRequiredRangeCheckedParam ( const std::string &  name,
const std::string &  parsed_function,
const std::string &  doc_string 
)

◆ allowCopy()

void InputParameters::allowCopy ( bool  status)
inlineprivate

Toggle the availability of the copy constructor.

When MooseObject is created via the Factory this flag is set to false, so when a MooseObject is created if the constructor is not a const reference an error is produced. This method allows the InputParameterWarehouse to disable copying.

Definition at line 1506 of file InputParameters.h.

1506{ _allow_copy = status; }
MPI_Status status

Referenced by ActionWarehouse::printInputFile().

◆ appendFunctorDescription()

template<typename T >
std::string InputParameters::appendFunctorDescription ( const std::string &  doc_string) const
private

Appends description of what a functor is to a doc string.

Definition at line 2624 of file InputParameters.h.

2625{
2626 auto numeric_value_type = []()
2627 {
2629 Moose::internal::getNullptrExample<T>()))
2630 return "number";
2632 Moose::internal::getNullptrExample<T>()))
2633 return "numeric vector value (enclosed in curly braces)";
2634 else
2635 {
2636 mooseAssert(false, "We control instantiations of this method");
2637 return "";
2638 }
2639 };
2640
2641 return MooseUtils::trim(doc_string, ". ") + ". A functor is any of the following: a variable, " +
2642 (
2643#ifdef MOOSE_MFEM_ENABLED
2644 Moose::internal::isMFEMFunctorNameTypeHelper(Moose::internal::getNullptrExample<T>())
2645 ? "an MFEM"
2646 :
2647#endif
2648 "a functor") +
2649 " material property, a function, a postprocessor or a " + numeric_value_type() + ".";
2650}
std::string trim(const std::string &str, const std::string &white_space=" \t\n\v\f\r")
Standard scripting language trim function.
constexpr bool isVectorFunctorNameTypeHelper(T *)
constexpr bool isMFEMFunctorNameTypeHelper(T *)
constexpr bool isScalarFunctorNameTypeHelper(T *)

◆ applyCommonUserSetParameters()

void InputParameters::applyCommonUserSetParameters ( const InputParameters &  common,
const std::vector< std::string > &  exclude = {},
const bool  allow_private = false 
)

Variant of applyParameters that only applies parameters explicitly set by the user in common (i.e.

isParamSetByUser() is true). Object-type defaults are therefore never overridden by common-block defaults, only by values the user actually wrote.

Definition at line 1180 of file InputParameters.C.

1183{
1184 for (const auto & it : common)
1185 {
1186 const std::string & common_name = it.first;
1187 if (std::find(exclude.begin(), exclude.end(), common_name) != exclude.end())
1188 continue;
1189 if (!common.isParamSetByUser(common_name))
1190 continue;
1191 applyParameter(common, common_name, allow_private);
1192 }
1193
1194 for (const auto & var_name : common._coupled_vars)
1195 {
1196 if (std::find(exclude.begin(), exclude.end(), var_name) != exclude.end())
1197 continue;
1198 if (!common.isParamSetByUser(var_name))
1199 continue;
1200 applyCoupledVar(common, var_name);
1201 }
1202}
bool isParamSetByUser(const std::string &name) const
Method returns true if the parameter was set by the user.
void applyParameter(const InputParameters &common, const std::string &common_name, bool allow_private=false)
Apply values from a single parameter in common, to a single parameter stored in this object.
void applyCoupledVar(const InputParameters &common, const std::string &var_name)
Apply properties of a single coupled variable in common, to a single coupled variable stored in this ...

Referenced by FEProblemBase::addOutput().

◆ applyCoupledVar()

void InputParameters::applyCoupledVar ( const InputParameters &  common,
const std::string &  var_name 
)

Apply properties of a single coupled variable in common, to a single coupled variable stored in this object.

Parameters
commonThe set of InputParameters from which to extract the coupled variable's properties
var_nameThe name of the coupled variable whose properties are to be applied

In order to apply the properties, both the local parameters and the common parameters must have a coupled variable with name var_name

Definition at line 1239 of file InputParameters.C.

1240{
1241 // Disable the display of deprecated message when applying common parameters, this avoids a dump
1242 // of messages
1244
1245 // If the local parameters has a coupled variable, populate it with the value from the common
1246 // parameters, if the common parameters has the coupled variable too
1247 if (hasCoupledVar(var_name))
1248 {
1249 if (common.hasDefaultCoupledValue(var_name))
1250 {
1251 // prepare a vector of default coupled values
1252 std::vector<Real> defaults(common.numberDefaultCoupledValues(var_name));
1253 for (unsigned int j = 0; j < common.numberDefaultCoupledValues(var_name); ++j)
1254 defaults[j] = common.defaultCoupledValue(var_name, j);
1255 addCoupledVar(var_name, defaults, common.getDocString(var_name));
1256 }
1257 else if (common.hasCoupledVar(var_name))
1258 addCoupledVar(var_name, common.getDocString(var_name));
1259 }
1260
1261 // Enable deprecated message printing
1263}
unsigned int numberDefaultCoupledValues(const std::string &coupling_name) const
Get the number of defaulted coupled value entries.
bool hasCoupledVar(const std::string &coupling_name) const
Return whether or not the coupled variable exists.
std::string getDocString(const std::string &name) const
Returns the documentation string for the specified parameter name.
void addCoupledVar(const std::string &name, const std::string &doc_string)
This method adds a coupled variable name pair.
bool hasDefaultCoupledValue(const std::string &coupling_name) const
Return whether or not the requested parameter has a default coupled value.
Real defaultCoupledValue(const std::string &coupling_name, unsigned int i=0) const
Get the default value for an optionally coupled variable.

Referenced by applyCommonUserSetParameters(), applyParameters(), and applySpecificParameters().

◆ applyParameter()

void InputParameters::applyParameter ( const InputParameters &  common,
const std::string &  common_name,
bool  allow_private = false 
)

Apply values from a single parameter in common, to a single parameter stored in this object.

Parameters
commonThe set of InputParameters from which to extract parameters from
common_nameThe name within common from which to get the parameter values

In order to apply common parameter 4 statements must be satisfied (1) A local parameter must exist with the same name as common parameter (2) Common parameter must valid (3) Local parameter must be invalid OR not have been set from its default (4) Both cannot be private

Definition at line 1266 of file InputParameters.C.

1269{
1270 // Disable the display of deprecated message when applying common parameters, this avoids a dump
1271 // of messages
1273
1274 const auto & local_name = checkForRename(common_name);
1275
1276 // Extract the properties from the local parameter for the current common parameter name
1277 const bool local_exist = _values.find(local_name) != _values.end();
1278 const bool local_set = _params.count(local_name) > 0 && !_params[local_name]._set_by_add_param;
1279 const bool local_priv = allow_private ? false : isPrivate(local_name);
1280 const bool local_valid = isParamValid(local_name);
1281
1282 // Extract the properties from the common parameter
1283 const bool common_exist = common._values.find(common_name) != common._values.end();
1284 const bool common_priv = allow_private ? false : common.isPrivate(common_name);
1285 const bool common_valid = common.isParamValid(common_name);
1286
1287 /* In order to apply a common parameter 4 statements must be satisfied
1288 * (1) A local parameter must exist with the same name as the common parameter
1289 * (2) Common parameter must be valid and exist
1290 * (3) Local parameter must be invalid OR not have been set from its default
1291 * (4) Both cannot be private
1292 */
1293 if (local_exist && common_exist && common_valid && (!local_valid || !local_set) &&
1294 (!common_priv || !local_priv))
1295 {
1296 remove(local_name);
1297 _values[local_name] = common._values.find(common_name)->second->clone();
1298 set_attributes(local_name, false);
1299 _params[local_name]._set_by_add_param =
1300 libmesh_map_find(common._params, common_name)._set_by_add_param;
1301 // Keep track of where this param came from if we can. This will enable us to
1302 // produce param errors from objects created within an action that link to
1303 // the parameter in the action
1304 at(local_name)._hit_node = common.getHitNode(common_name);
1305 }
1306 else if (!local_exist && !common_exist)
1307 mooseError("InputParameters::applyParameter(): Attempted to apply invalid parameter \"",
1308 common_name,
1309 "\"");
1310
1311 // Enable deprecated message printing
1313}
bool isPrivate(const std::string &name) const
Returns a Boolean indicating whether the specified parameter is private or not.
virtual void set_attributes(const std::string &name, bool inserted_only) override
Override from libMesh to set user-defined attributes on our parameter.
const hit::Node * getHitNode(const std::string &param) const
const std::string & checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another,...
void remove(std::string_view)
const hit::Node * _hit_node
Original location of parameter node; used for error messages.

Referenced by ComposeTimeStepperAction::act(), applyCommonUserSetParameters(), applyParameters(), and applySpecificParameters().

◆ applyParameters()

void InputParameters::applyParameters ( const InputParameters &  common,
const std::vector< std::string > &  exclude = {},
const bool  allow_private = false 
)

Method for applying common parameters.

Parameters
commonThe set of parameters to apply to the parameters stored in this object
excludeA vector of parameters to exclude

In order to apply common parameter 4 statements must be satisfied (1) A local parameter must exist with the same name as common parameter (2) Common parameter must be valid (3) Local parameter must be invalid OR not have been set from its default (4) Both cannot be private (unless allow_private = true)

Output objects have a set of common parameters that are passed down to each of the output objects created. This method is used for applying those common parameters.

See also
CommonOutputAction AddOutputAction

Definition at line 1148 of file InputParameters.C.

1151{
1152 // If we're applying all of the things, also associate the top level hit node
1153 if (exclude.empty() && !getHitNode() && common.getHitNode())
1154 setHitNode(*common.getHitNode(), {});
1155
1156 // Loop through the common parameters
1157 for (const auto & it : common)
1158 {
1159 // Common parameter name
1160 const std::string & common_name = it.first;
1161 // Continue to next parameter, if the current is in list of excluded parameters
1162 if (std::find(exclude.begin(), exclude.end(), common_name) != exclude.end())
1163 continue;
1164
1165 applyParameter(common, common_name, allow_private);
1166 }
1167
1168 // Loop through the coupled variables
1169 for (const auto & var_name : common._coupled_vars)
1170 {
1171 // Continue to next variable, if the current is in list of excluded parameters
1172 if (std::find(exclude.begin(), exclude.end(), var_name) != exclude.end())
1173 continue;
1174
1175 applyCoupledVar(common, var_name);
1176 }
1177}
const hit::Node * getHitNode() const
void setHitNode(const std::string &param, const hit::Node &node, const SetParamHitNodeKey)
Sets the hit node associated with the parameter param to node.

Referenced by AddActionComponentAction::act(), FEProblemBase::addDefaultMultiAppFixedPointConvergence(), FEProblemBase::addDefaultNonlinearConvergence(), ReferenceResidualProblem::addDefaultNonlinearConvergence(), FEProblemBase::addDefaultSteadyStateConvergence(), SampledOutput::cloneMesh(), DumpObjectsProblem::DumpObjectsProblem(), and ProjectedStatefulMaterialStorageAction::processProperty().

◆ applySpecificParameters()

void InputParameters::applySpecificParameters ( const InputParameters &  common,
const std::vector< std::string > &  include,
bool  allow_private = false 
)

Method for applying common parameters.

Parameters
commonThe set of parameters to apply to the parameters stored in this object
includeA vector of parameters to apply

In order to apply common parameter 4 statements must be satisfied (1) A local parameter must exist with the same name as common parameter (2) Common parameter must valid (3) Local parameter must be invalid OR not have been set from its default (4) Both cannot be private

Output objects have a set of common parameters that are passed down to each of the output objects created. This method is used for applying those common parameters.

See also
CommonOutputAction AddOutputAction

Definition at line 1205 of file InputParameters.C.

1208{
1209 // Loop through the common parameters
1210 for (const auto & it : common)
1211 {
1212 // Common parameter name
1213 const std::string & common_name = it.first;
1214
1215 // Continue to next parameter, if the current is not in list of included parameters
1216 if (std::find(include.begin(), include.end(), common_name) == include.end())
1217 continue;
1218
1219 applyParameter(common, common_name, allow_private);
1220 }
1221
1222 // Loop through the coupled variables
1223 for (std::set<std::string>::const_iterator it = common.coupledVarsBegin();
1224 it != common.coupledVarsEnd();
1225 ++it)
1226 {
1227 // Variable name
1228 const std::string var_name = *it;
1229
1230 // Continue to next variable, if the current is not in list of included parameters
1231 if (std::find(include.begin(), include.end(), var_name) == include.end())
1232 continue;
1233
1234 applyCoupledVar(common, var_name);
1235 }
1236}
std::set< std::string >::const_iterator coupledVarsEnd() const
std::set< std::string >::const_iterator coupledVarsBegin() const
Methods returning iterators to the coupled variables names stored in this InputParameters object.

Referenced by AddVariableAction::init(), OverlayMeshGenerator::OverlayMeshGenerator(), and ProjectedStatefulMaterialStorageAction::processProperty().

◆ areAllRequiredParamsValid()

bool InputParameters::areAllRequiredParamsValid ( ) const

This method returns true if all of the parameters in this object are valid (i.e.

isParamValid(name) == true - for all parameters)

Definition at line 440 of file InputParameters.C.

441{
442 for (const auto & it : *this)
443 if (isParamRequired(it.first) && !isParamValid(it.first))
444 return false;
445 return true;
446}
bool isParamRequired(const std::string &name) const
Returns a boolean indicating whether the specified parameter is required or not.

Referenced by ActionWarehouse::buildBuildableActions().

◆ at() [1/2]

Metadata & InputParameters::at ( const std::string &  param_name)
inlineprivate

Definition at line 1482 of file InputParameters.h.

1483 {
1484 const auto & param = checkForRename(param_name);
1485 if (_params.count(param) == 0)
1486 mooseError("param '", param, "' not present in InputParams");
1487 return _params[param];
1488 }

Referenced by addCommandLineParamHelper(), applyParameter(), commandLineParamSet(), finalize(), getCommandLineMetadata(), getControllableExecuteOnTypes(), getHitNode(), isCommandLineParameter(), queryCommandLineMetadata(), queryDataFileNamePath(), setGlobalCommandLineParam(), and setHitNode().

◆ at() [2/2]

const Metadata & InputParameters::at ( const std::string &  param_name) const
inlineprivate

Definition at line 1489 of file InputParameters.h.

1490 {
1491 const auto & param = checkForRename(param_name);
1492 if (_params.count(param) == 0)
1493 mooseError("param '", param, "' not present in InputParams");
1494 return _params.at(param);
1495 }

◆ blockFullpath()

std::string InputParameters::blockFullpath ( ) const
Returns
A string representing the full HIT parameter path from the input file (e.g. "Mesh/foo") for the block containing parameters for this object.

Definition at line 1650 of file InputParameters.C.

1651{
1652 if (const auto hit_node = getHitNode())
1653 return hit_node->fullpath();
1654 return "";
1655}

Referenced by AddAuxKernelAction::act(), AddFVICAction::act(), AddICAction::act(), AddMFEMComplexBCComponentAction::act(), AddMFEMComplexKernelComponentAction::act(), AddActionComponentAction::AddActionComponentAction(), checkParams(), missingRequiredParamErrors(), MooseObjectAction::MooseObjectAction(), FVRelationshipManagerInterface::parameterError(), and NEML2Action::printSummary().

◆ blockLocation()

std::string InputParameters::blockLocation ( ) const
Returns
A string representing the location (i.e. filename,linenum) in the input text for the block containing parameters for this object.

Definition at line 1642 of file InputParameters.C.

1643{
1644 if (const auto hit_node = getHitNode())
1645 return hit_node->fileLocation(/* with_column = */ false);
1646 return "";
1647}

◆ callMooseError()

void InputParameters::callMooseError ( std::string  msg,
const bool  with_prefix = true,
const hit::Node *  node = nullptr,
const bool  show_trace = true 
) const
private

Internal helper for calling back to mooseError(), ideally from the underlying MooseBase object if it is available (for more context)

Definition at line 1971 of file InputParameters.C.

1975{
1976 // Find the context of the app if we can. This will let our errors be
1977 // prefixed by the multiapp name (if applicable) and will flush the
1978 // console before outputting an error
1979 MooseApp * app = nullptr;
1980 if (isMooseBaseObject() && have_parameter<MooseApp *>(MooseBase::app_param))
1981 app = get<MooseApp *>(MooseBase::app_param);
1982
1983 MooseBase::callMooseError(app, *this, msg, with_prefix, node, show_trace);
1984}
bool isMooseBaseObject() const
Base class for MOOSE-based applications.
Definition MooseApp.h:110
void callMooseError(std::string msg, const bool with_prefix, const hit::Node *node=nullptr, const bool show_trace=true) const
External method for calling moose error with added object context.
Definition MooseBase.C:105
static const std::string app_param
The name of the parameter that contains the MooseApp.
Definition MooseBase.h:59

Referenced by mooseError(), and paramError().

◆ checkConsistentType()

template<typename T >
void InputParameters::checkConsistentType ( const std::string &  name) const

This method checks to make sure that we aren't adding a parameter with the same name but a different type.

It throws a MooseError if an inconsistent type is detected. While this state is supported by libMesh it brings nothing but blood and tears for those who try ;)

Parameters
namethe name of the parameter

Definition at line 2121 of file InputParameters.h.

2122{
2123 const auto & name = checkForRename(name_in);
2124
2125 // If we don't currently have the Parameter, can't be any inconsistency
2127 if (it == _values.end())
2128 return;
2129
2130 // Now, if we already have the Parameter, but it doesn't have the
2131 // right type, throw an error.
2132 if (!this->Parameters::have_parameter<T>(name))
2133 mooseError("Attempting to set parameter \"",
2134 name,
2135 "\" with type (",
2136 libMesh::demangle(typeid(T).name()),
2137 ")\nbut the parameter already exists as type (",
2138 it->second->type(),
2139 ")");
2140}
map_type::const_iterator const_iterator
std::string demangle(const char *name)

◆ checkForRename()

const std::string & InputParameters::checkForRename ( const std::string &  name) const

Checks whether the provided name is a renamed parameter name.

If so we return the 'new' name. If not we return the incoming name

Parameters
nameThe name to check for whether it is a renamed name
Returns
The new name if the incoming name is a renamed name, else name

Definition at line 1868 of file InputParameters.C.

1869{
1870 if (auto it = _old_to_new_name_and_dep.find(name); it != _old_to_new_name_and_dep.end())
1871 return it->second.first;
1872 else
1873 return name;
1874}

Referenced by applyParameter(), at(), at(), checkConsistentType(), ScalarCoupleable::checkVar(), Coupleable::checkVar(), commandLineParamSet(), Coupleable::coupledComponents(), ScalarCoupleable::coupledScalarComponents(), declareControllable(), defaultCoupledValue(), get(), get(), getCheckedPointerParam(), getCommandLineMetadata(), getControllableExecuteOnTypes(), getCoupledVar(), getDescription(), getDocString(), getDocUnit(), getGroupName(), getMooseType(), getParamHelper(), getParamHelper(), ScalarCoupleable::getScalarVar(), Coupleable::getVarHelper(), getVecMooseType(), hasDefault(), have_parameter(), ignoreParameter(), isCommandLineParameter(), isControllable(), Coupleable::isCoupled(), ScalarCoupleable::isCoupledScalar(), isParamDefined(), isParamDeprecated(), isParamRequired(), isParamSetByAddParam(), isParamSetByUser(), isParamValid(), isPrivate(), isRangeChecked(), isType(), makeParamNotRequired(), makeParamRequired(), missingRequiredParamErrors(), queryCommandLineMetadata(), queryDataFileNamePath(), queryDeprecatedParamMessage(), rangeCheckedFunction(), reservedValues(), set(), set_attributes(), setCoupledVar(), setDocString(), setDocUnit(), setGlobalCommandLineParam(), setReservedValues(), shouldIgnore(), suppressParameter(), transferParam(), and type().

◆ checkParamName()

void InputParameters::checkParamName ( const std::string &  name) const
private

Make sure the parameter name doesn't have any invalid characters.

Definition at line 1689 of file InputParameters.C.

1690{
1691 const static pcrecpp::RE valid("[\\w:/]+");
1692 if (!valid.FullMatch(name))
1693 mooseError("Invalid parameter name: '", name, "'");
1694}
std::vector< ElemQuality > valid(const ElemType t)

Referenced by addParam(), addParam(), addPrivateParam(), addPrivateParam(), addRequiredParam(), and set().

◆ checkParams()

void InputParameters::checkParams ( const std::string &  parsing_syntax)

This function checks parameters stored in the object to make sure they are in the correct state as the user expects: Required parameters are verified as valid meaning that they were either initialized when they were created, or were read from an input file or some other valid source.

Definition at line 589 of file InputParameters.C.

590{
591 const std::string parampath = blockFullpath() != "" ? blockFullpath() : parsing_syntax;
592
593 // Required parameters
594 const auto required_param_errors = missingRequiredParamErrors(parsing_syntax);
595
596 if (required_param_errors.size())
597 mooseError(MooseUtils::stringJoin(required_param_errors, "\n"));
598
599 // Range checked parameters
600 for (const auto & [name, param_ptr] : *this)
601 {
602 if (const auto error = parameterRangeCheck(*param_ptr, parampath + "/" + name, name, false))
603 {
604 if (error->first)
605 paramError(name, error->second);
606 else
607 mooseError("For range checked parameter '" + name + "': " + error->second);
608 }
609 }
610
611 // Controllable parameters
612 for (const auto & param_name : getControllableParameters())
613 {
614 if (isPrivate(param_name))
615 paramError(param_name,
616 "private parameter '" + paramFullpath(param_name) + "' marked controllable");
617
618 std::optional<std::string> error;
619 checkMooseType(NonlinearVariableName, param_name);
620 checkMooseType(AuxVariableName, param_name);
621 checkMooseType(VariableName, param_name);
622 checkMooseType(BoundaryName, param_name);
623 checkMooseType(SubdomainName, param_name);
624 checkMooseType(PostprocessorName, param_name);
625 checkMooseType(VectorPostprocessorName, param_name);
626 checkMooseType(UserObjectName, param_name);
627 checkMooseType(MaterialPropertyName, param_name);
628 if (error)
629 paramError(param_name, *error);
630 }
631}
std::optional< std::pair< bool, std::string > > parameterRangeCheck(const Parameters::Value &value, const std::string &long_name, const std::string &short_name, const bool include_param_path)
Performs a range check on the parameter (which must have a range check)
std::string blockFullpath() const
std::set< std::string > getControllableParameters() const
Return list of controllable parameters.
void paramError(const std::string &param, Args... args) const
Emits a parameter error prefixed with the parameter location and object information if available.
std::string paramFullpath(const std::string &param) const
std::vector< std::string > missingRequiredParamErrors(const std::string &parsing_syntax, const std::set< std::string > &skip_required_params={}, bool skip_private=false) const
Return errors for missing required parameters.

Referenced by FEProblemBase::addFVInitialCondition(), FEProblemBase::addInitialCondition(), and finalize().

◆ clear()

void InputParameters::clear ( )
overridevirtual

Reimplemented from libMesh::Parameters.

Definition at line 64 of file InputParameters.C.

65{
66 Parameters::clear();
67 _params.clear();
68 _coupled_vars.clear();
70 _collapse_nesting = false;
73 _allow_copy = true;
75 _new_to_old_names.clear();
76 _hit_node = nullptr;
77 _finalized = false;
78}
std::multimap< std::string, std::string > _new_to_old_names
A map from derived-class/blessed parameter names to associated base-class/deprecated parameter names.

◆ clearRelationshipManagers()

void InputParameters::clearRelationshipManagers ( )
inline

Clears all currently registered RelationshipManagers.

Definition at line 797 of file InputParameters.h.

797{ _buildable_rm_types.clear(); }

Referenced by ElemSideNeighborLayersGeomTester::validParams().

◆ collapseSyntaxNesting() [1/2]

bool InputParameters::collapseSyntaxNesting ( ) const

Definition at line 566 of file InputParameters.C.

567{
568 return _collapse_nesting;
569}

◆ collapseSyntaxNesting() [2/2]

void InputParameters::collapseSyntaxNesting ( bool  collapse)

Mutators for controlling whether or not the outermost level of syntax will be collapsed when printed.

Definition at line 560 of file InputParameters.C.

561{
562 _collapse_nesting = collapse;
563}

Referenced by Moose::Builder::buildFullTree(), and Moose::Builder::buildJsonSyntaxTree().

◆ commandLineParamSet()

void InputParameters::commandLineParamSet ( const std::string &  name,
const CommandLineParamSetKey   
)

Marks the command line parameter name as set by the CommandLine.

Protected by the CommandLineParamSetKey so that only the CommandLine can call this.

Definition at line 1127 of file InputParameters.C.

1128{
1129 auto & cl_data = at(checkForRename(name))._cl_data;
1130 if (!cl_data)
1131 mooseError("InputParameters::commandLineParamSet: The parameter '",
1132 name,
1133 "' is not a command line parameter");
1134 cl_data->set_by_command_line = true;
1135}

Referenced by CommandLine::populateCommandLineParams().

◆ coupledVarsBegin()

std::set< std::string >::const_iterator InputParameters::coupledVarsBegin ( ) const
inline

Methods returning iterators to the coupled variables names stored in this InputParameters object.

Definition at line 903 of file InputParameters.h.

904 {
905 return _coupled_vars.begin();
906 }

Referenced by applySpecificParameters(), Coupleable::Coupleable(), LazyCoupleable::LazyCoupleable(), and ScalarCoupleable::ScalarCoupleable().

◆ coupledVarsEnd()

std::set< std::string >::const_iterator InputParameters::coupledVarsEnd ( ) const
inline

◆ declareControllable()

void InputParameters::declareControllable ( const std::string &  name,
std::set< ExecFlagType >  execute_flags = {} 
)

Declare the given parameters as controllable.

Definition at line 456 of file InputParameters.C.

458{
459 std::vector<std::string> names;
460 MooseUtils::tokenize<std::string>(input_names, names, 1, " ");
461 for (auto & name_in : names)
462 {
463 const auto & name = checkForRename(name_in);
464 auto map_iter = _params.find(name);
465 if (map_iter != _params.end()) // error is handled by checkParams method
466 {
467 map_iter->second._controllable = true;
468 map_iter->second._controllable_flags = execute_flags;
469 }
470 else
471 mooseError("The input parameter '",
472 name,
473 "' does not exist, thus cannot be marked as controllable.");
474 }
475}
ExecFlagEnum execute_flags
Storage for the registered execute flags.

Referenced by Moose::commonAdaptivityParams(), AuxKernelBase::validParams(), ConstantAux::validParams(), AuxScalarKernel::validParams(), ConstantScalarAux::validParams(), ADArrayDirichletBC::validParams(), ADDirichletBC::validParams(), ADPenaltyDirichletBC::validParams(), ArrayDirichletBC::validParams(), DirichletBC::validParams(), NeumannBCTempl< is_ad >::validParams(), PenaltyDirichletBC::validParams(), VectorDirichletBC::validParams(), Damper::validParams(), ConstantPointSource::validParams(), DiracKernelBase::validParams(), VectorConstantPointSource::validParams(), ConstantFunction::validParams(), PiecewiseTabularBase::validParams(), FVBoundaryCondition::validParams(), FVInterfaceKernel::validParams(), FVBodyForce::validParams(), InterfaceKernelBase::validParams(), BodyForceTempl< is_ad >::validParams(), ReactionTempl< is_ad >::validParams(), VectorBodyForce::validParams(), TorchScriptUserObject::validParams(), LinearFVBoundaryCondition::validParams(), GenericConstant2DArrayTempl< is_ad >::validParams(), GenericConstantArray::validParams(), GenericConstantMaterialTempl< is_ad >::validParams(), GenericConstantVectorMaterialTempl< is_ad >::validParams(), MaterialBase::validParams(), PiecewiseLinearInterpolationMaterial::validParams(), MultiApp::validParams(), ConstantRate::validParams(), PenaltyDirichletNodalKernel::validParams(), Output::validParams(), ConstantPostprocessor::validParams(), FunctionValuePostprocessor::validParams(), ParsedPostprocessor::validParams(), FEProblemBase::validParams(), ControllableInputTimes::validParams(), IterationAdaptiveDT::validParams(), TimeStepper::validParams(), Transfer::validParams(), and UserObjectBase::validParams().

◆ defaultCoupledValue() [1/2]

void InputParameters::defaultCoupledValue ( const std::string &  coupling_name,
Real  value,
unsigned int  i = 0 
)

Set the default value for an optionally coupled variable (called by the Parser).

Parameters
coupling_nameThe name of the coupling parameter to get the default value for.
valueDefault value to set.
iBy default 0, in general the index of the requested coupled default value.

Definition at line 883 of file InputParameters.C.

884{
885 const auto & actual_name = checkForRename(coupling_name);
886 _params[actual_name]._coupled_default.resize(i + 1);
887 _params[actual_name]._coupled_default[i] = value;
888 _params[actual_name]._have_coupled_default = true;
889}

◆ defaultCoupledValue() [2/2]

Real InputParameters::defaultCoupledValue ( const std::string &  coupling_name,
unsigned int  i = 0 
) const

Get the default value for an optionally coupled variable.

Parameters
coupling_nameThe name of the coupling parameter to get the default value for.
iBy default 0, in general the index of the requested coupled default value.

Definition at line 892 of file InputParameters.C.

893{
894 auto value_it = _params.find(coupling_name);
895
896 if (value_it == _params.end() || !value_it->second._have_coupled_default)
897 mooseError("Attempted to retrieve default value for coupled variable '",
898 coupling_name,
899 "' when none was provided. \n\nThere are three reasons why this may have "
900 "occurred:\n 1. The other version of params.addCoupledVar() should be used in order "
901 "to provide a default value. \n 2. This should have been a required coupled "
902 "variable added with params.addRequiredCoupledVar() \n 3. The call to get the "
903 "coupled value should have been properly guarded with isCoupled()\n");
904
905 return value_it->second._coupled_default.at(i);
906}

Referenced by MooseServer::addParametersToList(), applyCoupledVar(), Coupleable::getADDefaultValue(), ScalarCoupleable::getADDefaultValue(), Coupleable::getADDefaultVectorValue(), Coupleable::getDefaultArrayValue(), ScalarCoupleable::getDefaultValue(), Coupleable::getDefaultValue(), Coupleable::getDefaultVectorValue(), InputFileFormatter::printParams(), YAMLFormatter::printParams(), JsonSyntaxTree::setParams(), setupVariableNames(), and transferParam().

◆ deprecateCoupledVar()

void InputParameters::deprecateCoupledVar ( const std::string &  old_name,
const std::string &  new_name,
const std::string &  removal_date 
)

Definition at line 1860 of file InputParameters.C.

1863{
1864 renameCoupledVarInternal(old_name, new_name, "", removal_date);
1865}
void renameCoupledVarInternal(const std::string &old_name, const std::string &new_name, const std::string &docstring, const std::string &removal_date)

Referenced by CoupledGradientMaterialTempl< is_ad >::validParams(), and ConservativeAdvectionTempl< is_ad >::validParams().

◆ deprecateParam()

void InputParameters::deprecateParam ( const std::string &  old_name,
const std::string &  new_name,
const std::string &  removal_date 
)

Definition at line 1852 of file InputParameters.C.

1855{
1856 renameParamInternal(old_name, new_name, "", removal_date);
1857}
void renameParamInternal(const std::string &old_name, const std::string &new_name, const std::string &docstring, const std::string &removal_date)

Referenced by CoupledGradientMaterialTempl< is_ad >::validParams(), and ConservativeAdvectionTempl< is_ad >::validParams().

◆ finalize()

void InputParameters::finalize ( const std::string &  parsing_syntax)

Finalizes the parameters, which must be done before constructing any objects with these parameters (to be called in the corresponding factories).

typed parameters.

This calls checkParams() and sets up the absolute paths for all file name.

Definition at line 690 of file InputParameters.C.

691{
692 mooseAssert(!isFinalized(), "Already finalized");
693
694 checkParams(parsing_syntax);
695
696 // Set parameters that represent file types
697 for (const auto & name_value : *this)
698 {
699 const auto & param_name = name_value.first;
700 const auto & param_value = name_value.second;
701
702 // Helper for setting a file typed parameter value
703 const auto set_filename = [&](auto & value)
704 {
705 constexpr bool is_data_file_name =
706 std::is_same_v<std::decay_t<decltype(value)>, DataFileName>;
707
708 // We have behavior (which is gross) that requires that for
709 // everything but DataFileName, if the value is empty we
710 // don't bother looking for it
711 if constexpr (!is_data_file_name)
712 {
713 if (value.empty())
714 return;
715 }
716
717 // Setup options for searching for the path
719 // Associate relative path searches with the folder
720 // that input file that has this parameter is located
721 options.base = getFileBase(param_name);
722 // If we don't explicitly have a DataFileName parameter,
723 // we only want to augment cases where a data name is
724 // explicitly set (like moose:file). We don't want to
725 // search all other data. To presere previous behavior,
726 // we also don't want to error if nothing is found; for
727 // example if a relative or absolute path is not found.
728 // The only time we'll error is if the data name is
729 // explicitly set and the path doesn't exist in the data
730 // or if that data name isn't registered.
731 if constexpr (!is_data_file_name)
732 {
733 options.search_all_data = false;
734 options.graceful = true;
735 }
736
738 try
739 {
740 Moose::ScopedThrowOnError scoped_throw_on_error;
741 path = Moose::DataFileUtils::getPath(value, options);
742 }
743 catch (std::exception & e)
744 {
745 paramError(param_name, e.what());
746 }
747
748 value = path.path;
749 at(param_name)._data_file_name_path = path;
750 };
751
752#define set_if_filename(type) \
753 else if (auto type_value = dynamic_cast<Parameters::Parameter<type> *>(param_value.get())) \
754 set_filename(type_value->set()); \
755 else if (auto type_values = dynamic_cast<Parameters::Parameter<std::vector<type>> *>( \
756 param_value.get())) for (auto & value : type_values->set()) set_filename(value)
757
758 if (false)
759 ;
760 set_if_filename(FileName);
761 set_if_filename(FileNameNoExtension);
762 set_if_filename(MeshFileName);
763 set_if_filename(MatrixFileName);
764 set_if_filename(DataFileName);
765#undef set_if_filename
766 }
767
768 _finalized = true;
769}
std::filesystem::path getFileBase(const std::optional< std::string > &param_name=std::optional< std::string >()) const
bool isFinalized() const
void checkParams(const std::string &parsing_syntax)
This function checks parameters stored in the object to make sure they are in the correct state as th...
Scoped helper for setting Moose::_throw_on_error during this scope.
Definition Moose.h:308
Path getPath(std::string path, const GetPathOptions &options={})
Get the data path for a given path, searching the registered data.
std::optional< Moose::DataFileUtils::Path > _data_file_name_path
The searched path information pertaining to a DataFileName parameter.
Options to be passed to getPath().
bool graceful
Whether or not to error whenever a path is not found.
std::optional< std::string > base
The base path by which to search for relative paths.
bool search_all_data
Whether or not to search all registered data.
Representation of a data file path.

Referenced by Factory::initialize().

◆ get() [1/2]

template<typename R1 , typename R2 , typename V1 , typename V2 >
std::vector< std::pair< R1, R2 > > InputParameters::get ( const std::string &  param1,
const std::string &  param2 
) const

Combine two vector parameters into a single vector of pairs.

Definition at line 2363 of file InputParameters.h.

2364{
2365 const auto & param1 = checkForRename(param1_in);
2366 const auto & param2 = checkForRename(param2_in);
2367
2368 const auto & v1 = get<V1>(param1);
2369 const auto & v2 = get<V2>(param2);
2370
2371 auto controllable = getControllableParameters();
2372 if (controllable.count(param1) || controllable.count(param2))
2373 mooseError("Parameters ",
2374 param1,
2375 " and/or ",
2376 param2 + " are controllable parameters and cannot be retireved using "
2377 "the MooseObject::getParam/InputParameters::get methods for pairs");
2378
2379 if (v1.size() != v2.size())
2380 paramError(param1,
2381 "Vector parameters ",
2382 param1,
2383 "(size: ",
2384 v1.size(),
2385 ") and " + param2,
2386 "(size: ",
2387 v2.size(),
2388 ") are of different lengths \n");
2389
2390 std::vector<std::pair<R1, R2>> parameter_pairs;
2391 auto i1 = v1.begin();
2392 auto i2 = v2.begin();
2393 for (; i1 != v1.end() && i2 != v2.end(); ++i1, ++i2)
2394 parameter_pairs.emplace_back(std::make_pair(*i1, *i2));
2395 return parameter_pairs;
2396}

Referenced by ElementIDOutputAction::act(), AddMaterialAction::act(), CSGOnlyAction::act(), MaterialOutputAction::act(), MeshOnlyAction::act(), SetupDebugAction::act(), SetupMeshAction::act(), SplitMeshAction::act(), FEProblemBase::addAuxScalarKernel(), FEProblemBase::addAuxVariable(), NonlinearSystemBase::addBoundaryCondition(), FEProblemBase::addConstraint(), FEProblemBase::addDGKernel(), NonlinearSystemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FunctorMaterial::addFunctorPropertyByBlocks(), FEProblemBase::addFVInitialCondition(), FEProblemBase::addFVKernel(), FEProblemBase::addIndicator(), FEProblemBase::addInitialCondition(), FEProblemBase::addInterfaceKernel(), MooseEigenSystem::addKernel(), NonlinearSystemBase::addKernel(), FEProblem::addLineSearch(), FEProblemBase::addMarker(), FEProblemBase::addMaterialHelper(), MFEMProblem::addMFEMFESpaceFromMOOSEVariable(), FEProblemBase::addMultiApp(), FEProblemBase::addNodalKernel(), NonlinearSystemBase::addNodalKernel(), MooseObjectWarehouseBase< T >::addObject(), FEProblemBase::addObjectParamsHelper(), FEProblemBase::addOutput(), FEProblemBase::addScalarKernel(), FEProblemBase::addTransfer(), FEProblemBase::addUserObject(), MooseServer::addValuesToList(), AddVariableAction::addVariable(), SystemBase::addVariable(), FEProblemBase::addVariable(), assemble_l2(), Moose::assemble_matrix(), AuxKernelBase::AuxKernelBase(), AuxScalarKernel::AuxScalarKernel(), BoundsBase::BoundsBase(), PiecewiseTabularInterface::buildFromFile(), PiecewiseTabularInterface::buildFromJSON(), PiecewiseTabularInterface::buildFromXandY(), PiecewiseTabularInterface::buildFromXY(), Moose::Builder::buildFullTree(), Moose::Builder::buildJsonSyntaxTree(), PostprocessorInterface::checkParam(), Moose::SlepcSupport::clearFreeNonlinearPowerIterations(), Moose::compute_bounds(), Moose::compute_jacobian(), Moose::compute_nearnullspace(), Moose::compute_nullspace(), Moose::compute_postcheck(), Moose::compute_transpose_nullspace(), ADMortarScalarBase::computeResidual(), MooseBase::connectControllableParams(), ScalarCoupleable::coupledMatrixTagScalarValue(), Coupleable::coupledMatrixTagValue(), Coupleable::coupledMatrixTagValues(), PostprocessorInterface::coupledPostprocessors(), Coupleable::coupledVectorTagArrayGradient(), Coupleable::coupledVectorTagArrayGradients(), Coupleable::coupledVectorTagArrayValues(), Coupleable::coupledVectorTagDofValues(), Coupleable::coupledVectorTagGradient(), Coupleable::coupledVectorTagGradients(), ScalarCoupleable::coupledVectorTagScalarValue(), Coupleable::coupledVectorTagValues(), ActionFactory::create(), AppFactory::create(), AddVariableAction::createInitialConditionAction(), MaterialBase::declareADProperty(), Moose::Kokkos::MaterialBase::declareKokkosOnDemandProperty(), Moose::Kokkos::MaterialBase::declareKokkosProperty(), MaterialBase::declareProperty(), Postprocessor::declareValue(), FunctorInterface::deduceFunctorName(), Moose::Builder::extractParams(), ElementSubdomainModifierBase::extrapolatePolynomial(), FileRangeBuilder::FileRangeBuilder(), GapValueAux::GapValueAux(), ParsedSubdomainGeneratorBase::generate(), MooseServer::getActionParameters(), AppFactory::getAppParamsID(), MooseApp::getCheckpointDirectories(), DistributionInterface::getDistribution(), ElementIDInterface::getElementID(), ElementIDInterface::getElementIDByName(), ElementIDInterface::getElementIDIndex(), ElementIDInterface::getElementIDNeighbor(), ElementIDInterface::getElementIDNeighborByName(), FunctionInterface::getFunction(), MaterialBase::getGenericZeroMaterialProperty(), MooseServer::getHoverDisplayText(), FunctionInterface::getKokkosFunction(), MaterialPropertyInterface::getMaterial(), MaterialPropertyInterface::getMaterialDataType(), MaterialPropertyInterface::getMaterialPropertyName(), MooseServer::getObjectParameters(), MooseBase::getParam(), getParamHelper(), getParamHelper(), PostprocessorInterface::getPostprocessorNameInternal(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), SamplerInterface::getSampler(), AddVariableAction::getSubdomainIDs(), AuxKernelBase::getVariableHelper(), CommonOutputAction::hasConsole(), MeshGeneratorSystem::hasDataDrivenAllowed(), FunctionInterface::hasFunction(), MeshGenerator::hasGenerateCSG(), MeshGenerator::hasGenerateData(), ImageSampler::ImageSampler(), MultiAppGeneralFieldKDTreeTransferBase::inBlocks(), AddVariableAction::init(), FullSolveMultiApp::initialSetup(), FEProblemBase::initNullSpaceVectors(), isParamValid(), isValid(), IterationAdaptiveDT::IterationAdaptiveDT(), LayeredBase::LayeredBase(), LevelSetMeshingHelper::LevelSetMeshingHelper(), SetupMeshAction::modifyParamsForUseSplit(), MooseVariableInterface< T >::MooseVariableInterface(), NodeFaceConstraint::NodeFaceConstraint(), OrientedBoxInterface::OrientedBoxInterface(), ConsoleUtils::outputLegacyInformation(), InputParametersChecksUtils< C >::parameterConsistent(), ParsedMaterialBase::ParsedMaterialBase(), PenetrationAux::PenetrationAux(), PiecewiseTabularInterface::PiecewiseTabularInterface(), InputFileFormatter::printParams(), YAMLFormatter::printParams(), NEML2Action::printSummary(), ProjectedStatefulMaterialStorageAction::ProjectedStatefulMaterialStorageAction(), InputParameterWarehouse::removeInputParameters(), FEProblemBase::setAuxKernelParamsAndLog(), Moose::SlepcSupport::setEigenProblemSolverParams(), Moose::PetscSupport::setLineSearchFromParams(), Moose::PetscSupport::setMFFDTypeFromParams(), Moose::SlepcSupport::setNewtonPetscOptions(), MooseMesh::setPartitioner(), FEProblemBase::setResidualObjectParamsAndLog(), FVRelationshipManagerInterface::setRMParams(), FVRelationshipManagerInterface::setRMParamsAdvection(), FVRelationshipManagerInterface::setRMParamsDiffusion(), Moose::SlepcSupport::setSlepcEigenSolverTolerances(), Moose::PetscSupport::setSolveTypeFromParams(), Moose::PeriodicBCHelper::setupAutoPeriodicBoundaries(), CreateExecutionerAction::setupAutoPreconditioning(), ReadExecutorParamsAction::setupAutoPreconditioning(), MeshBaseImageSampler::setupImageSampler(), ImageSampler::setupImageSampler(), NonlinearSystemBase::shouldEvaluatePreSMOResidual(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), Moose::SlepcSupport::storeSolveType(), DumpObjectsProblem::stringifyParameters(), TaggingInterface::TaggingInterface(), transferParam(), MooseBase::uniqueName(), FunctorElementalGradientAuxTempl< is_ad >::validParams(), ProjectionAux::validParams(), NodeFaceConstraint::validParams(), FVFunctorDirichletBCTempl< is_ad >::validParams(), FVInterfaceKernel::validParams(), GradientJumpIndicator::validParams(), FVRelationshipManagerInterface::validParams(), MortarConsumerInterface::validParams(), DistributedRectilinearMeshGenerator::validParams(), ElemSideNeighborLayersGeomTester::validParams(), ElemSideNeighborLayersTester::validParams(), NearestRadiusLayeredAverage::validParams(), MooseVariableFV< OutputType >::validParams(), MooseUtils::variableFEType(), Coupleable::vectorTagDofValueHelper(), Coupleable::vectorTagValueHelper(), MeshBaseImageSampler::vtkFlip(), ImageSampler::vtkShiftAndScale(), MeshBaseImageSampler::vtkShiftAndScale(), ImageSampler::vtkThreshold(), MeshBaseImageSampler::vtkThreshold(), and Moose::Builder::walkRaw().

◆ get() [2/2]

template<typename T >
const T & InputParameters::get ( std::string_view  name) const

A wrapper around the Parameters base class method.

Checks for parameter rename before calling the base class method

Parameters
nameThe name to query the parameter values map with
Returns
The parameter value corresponding to the (possibly renamed) name

Definition at line 2413 of file InputParameters.h.

2414{
2415 const std::string name_str(name_in);
2416 const auto & name = checkForRename(name_str);
2417
2418 return Parameters::get<T>(name);
2419}

◆ getAutoBuildVectors()

std::map< std::string, std::pair< std::string, std::string > > InputParameters::getAutoBuildVectors ( ) const

Returns the auto build vectors for all parameters.

Definition at line 920 of file InputParameters.C.

921{
922 std::map<std::string, std::pair<std::string, std::string>> abv;
923 for (auto it = _params.begin(); it != _params.end(); ++it)
924 {
925 if (!it->second._autobuild_vecs.first.empty())
926 abv[it->first] = it->second._autobuild_vecs;
927 }
928 return abv;
929}

Referenced by Moose::Builder::extractParams().

◆ getBase()

const std::string & InputParameters::getBase ( ) const
Returns
The base system of the object these parameters are for, if any

Set via registerBase().

Definition at line 505 of file InputParameters.C.

506{
507 if (!have_parameter<std::string>(MooseBase::moose_base_param))
508 mooseError("InputParameters::getBase(): Parameters do not have base; one needs to be set with "
509 "registerBase()");
510 return get<std::string>(MooseBase::moose_base_param);
511}
static const std::string moose_base_param
The name of the parameter that contains the moose system base.
Definition MooseBase.h:61

Referenced by ActionWarehouse::addActionBlock(), AuxiliarySystem::addKernel(), FEProblemBase::addMaterialHelper(), JsonSyntaxTree::addParameters(), AddActionComponentAction::addRelationshipManagers(), MFEMProblem::addTransfer(), MooseServer::addValuesToList(), MooseBase::getBase(), MooseServer::getHoverDisplayText(), MooseServer::getObjectParameters(), and MooseBase::messagePrefix().

◆ getBuildableRelationshipManagerTypes()

const std::vector< std::tuple< std::string, Moose::RelationshipManagerType, Moose::RelationshipManagerInputParameterCallback > > & InputParameters::getBuildableRelationshipManagerTypes ( ) const

Returns the list of buildable (or required) RelationshipManager object types for this object.

Definition at line 554 of file InputParameters.C.

555{
556 return _buildable_rm_types;
557}

Referenced by Action::addRelationshipManagers().

◆ getBuildableTypes()

const std::vector< std::string > & InputParameters::getBuildableTypes ( ) const

Returns the list of buildable types as a std::vector<std::string>

Definition at line 546 of file InputParameters.C.

547{
548 return _buildable_types;
549}
std::vector< std::string > _buildable_types
The parameter is used to restrict types that can be built.

Referenced by Moose::Builder::buildFullTree(), and Moose::Builder::buildJsonSyntaxTree().

◆ getCheckedPointerParam()

template<typename T >
T InputParameters::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.

The template parameter must be a pointer or an error will be thrown.

Definition at line 1811 of file InputParameters.h.

1813{
1814 const auto & name = checkForRename(name_in);
1815
1816 T param = this->get<T>(name);
1817
1818 // Note: You will receive a compile error on this line if you attempt to pass a non-pointer
1819 // template type to this method
1820 if (!param)
1821 mooseError("Parameter ", name, " is NULL.\n", error_string);
1822 return param;
1823}

Referenced by Coupleable::Coupleable(), Postprocessor::declareValue(), MooseBase::getCheckedPointerParam(), ElementIDInterface::getElementID(), ElementIDInterface::getElementIDByName(), ElementIDInterface::getElementIDNeighbor(), ElementIDInterface::getElementIDNeighborByName(), AuxKernelBase::getVariableHelper(), MooseVariableInterface< T >::MooseVariableInterface(), ScalarCoupleable::ScalarCoupleable(), and TaggingInterface::TaggingInterface().

◆ getClassDescription()

std::string InputParameters::getClassDescription ( ) const

Returns the class description.

Definition at line 129 of file InputParameters.C.

130{
131 return _class_description;
132}

Referenced by JsonSyntaxTree::addParameters(), MooseServer::addValuesToList(), and MooseServer::getHoverDisplayText().

◆ getCommandLineMetadata()

const InputParameters::CommandLineMetadata & InputParameters::getCommandLineMetadata ( const std::string &  name) const
Returns
The command line metadata for the parameter name.

Definition at line 1116 of file InputParameters.C.

1117{
1118 const auto & cl_data = at(checkForRename(name))._cl_data;
1119 if (!cl_data)
1120 mooseError("InputParameters::getCommandLineMetadata: The parameter '",
1121 name,
1122 "' is not a command line parameter");
1123 return *cl_data;
1124}

Referenced by MooseApp::copyInputs(), and MooseApp::showInputs().

◆ getControllableExecuteOnTypes()

const std::set< ExecFlagType > & InputParameters::getControllableExecuteOnTypes ( const std::string &  name) const

Return the allowed execute flags for a controllable parameter.

Definition at line 485 of file InputParameters.C.

486{
487 const auto & name = checkForRename(name_in);
488 return at(name)._controllable_flags;
489}
std::set< ExecFlagType > _controllable_flags
Controllable execute flag restriction.

◆ getControllableParameters()

std::set< std::string > InputParameters::getControllableParameters ( ) const

Return list of controllable parameters.

Definition at line 1726 of file InputParameters.C.

1727{
1728 std::set<std::string> controllable;
1729 for (auto it = _params.begin(); it != _params.end(); ++it)
1730 if (it->second._controllable)
1731 controllable.emplace(it->first);
1732 return controllable;
1733}

Referenced by checkParams(), and get().

◆ getCoupledVar()

const std::vector< VariableName > & InputParameters::getCoupledVar ( const std::string &  coupling_name) const

Get a coupled variable parameter.

Parameters
coupling_nameThe name of the coupling parameter to get.

Definition at line 863 of file InputParameters.C.

864{
865 const auto & actual_name = checkForRename(coupling_name);
866
867 if (!hasCoupledVar(actual_name))
868 mooseError("Unable to get coupled variable parameter '",
869 coupling_name,
870 "' because it was not added with addCoupledVar or addRequiredCoupledVar.");
871
872 return get<std::vector<VariableName>>(actual_name);
873}

◆ getCoupledVariableParamNames()

const std::set< std::string > & InputParameters::getCoupledVariableParamNames ( ) const
inline

Return the coupled variable parameter names.

Definition at line 915 of file InputParameters.h.

915{ return _coupled_vars; }

◆ getDescription()

const std::string & InputParameters::getDescription ( const std::string &  name) const

Get the documentation string for a parameter.

Definition at line 1348 of file InputParameters.C.

1349{
1350 const auto & name = checkForRename(name_in);
1351 auto it = _params.find(name);
1352 if (it == _params.end())
1353 mooseError("No parameter exists with the name ", name);
1354 return it->second._doc_string;
1355}

Referenced by transferParam().

◆ getDocString()

std::string InputParameters::getDocString ( const std::string &  name) const

Returns the documentation string for the specified parameter name.

Definition at line 324 of file InputParameters.C.

325{
326 const auto & name = checkForRename(name_in);
327
328 std::string doc_string;
329 auto it = _params.find(name);
330 if (it != _params.end())
331 for (const auto & ch : it->second._doc_string)
332 {
333 if (ch == '\n')
334 doc_string += " ... ";
335 else
336 doc_string += ch;
337 }
338
339 return doc_string;
340}

Referenced by MooseServer::addParametersToList(), applyCoupledVar(), MooseServer::getHoverDisplayText(), missingRequiredParamErrors(), CommandLine::populateCommandLineParams(), InputFileFormatter::printParams(), YAMLFormatter::printParams(), and JsonSyntaxTree::setParams().

◆ getDocUnit()

std::string InputParameters::getDocUnit ( const std::string &  name) const

Returns the documentation unit string for the specified parameter name.

Definition at line 356 of file InputParameters.C.

357{
358 const auto & name = checkForRename(name_in);
359 return _params.at(name)._doc_unit;
360}

Referenced by MooseServer::getHoverDisplayText(), YAMLFormatter::printParams(), and JsonSyntaxTree::setParams().

◆ getFileBase()

std::filesystem::path InputParameters::getFileBase ( const std::optional< std::string > &  param_name = std::optional<std::string>()) const
Returns
A file base to associate with these parameters.

Optionally, an input parameter can be provided via param_name.

If the parameter is provided, we have the following options:

  • The parameter itself has a hit node set (context for that parameter)
  • The InputParameters object has a hit node set (context for all parameters)
  • Neither of the above and we die

In the event that a the parameter is set via command line, this will attempt to look at the parameter's parents to find a suitable context.

Definition at line 772 of file InputParameters.C.

773{
774 mooseAssert(!have_parameter<std::string>("_app_name"),
775 "Not currently setup to work with app FileName parameters");
776
777 const hit::Node * hit_node = nullptr;
778
779 // Context from the individual parameter
780 if (param_name)
781 hit_node = getHitNode(*param_name);
782 // Context from the parameters
783 if (!hit_node)
784 hit_node = getHitNode();
785 // No hit node, so use the cwd (no input files)
786 if (!hit_node)
787 return std::filesystem::current_path();
788
789 // Find any context that isn't command line arguments
790 while (hit_node && hit_node->filename() == "CLI_ARGS")
791 hit_node = hit_node->parent();
792
793 // Failed to find a node up the tree that isn't a command line argument
794 if (!hit_node)
795 {
796 const std::string error = "Input context was set via a command-line argument and does not have "
797 "sufficient context for determining a file path.";
798 if (param_name)
799 paramError(*param_name, error);
800 else
801 mooseError(error);
802 }
803
804 return std::filesystem::absolute(std::filesystem::path(hit_node->filename()).parent_path());
805}

Referenced by finalize().

◆ getGroupName()

std::string InputParameters::getGroupName ( const std::string &  param_name) const

This method retrieves the group name for the passed parameter name if one exists.

Otherwise an empty string is returned.

Definition at line 1138 of file InputParameters.C.

1139{
1140 const auto & param_name = checkForRename(param_name_in);
1141 auto it = _params.find(param_name);
1142 if (it != _params.end())
1143 return it->second._group;
1144 return std::string();
1145}

Referenced by InputFileFormatter::printParams(), YAMLFormatter::printParams(), and JsonSyntaxTree::setParams().

◆ getGroupParameters()

std::set< std::string > InputParameters::getGroupParameters ( const std::string &  group) const

Return names of parameters within a group.

Definition at line 1707 of file InputParameters.C.

1708{
1709 std::set<std::string> names;
1710 for (auto it = _params.begin(); it != _params.end(); ++it)
1711 if (it->second._group == group)
1712 names.emplace(it->first);
1713 return names;
1714}

◆ getHitNode() [1/2]

const hit::Node * InputParameters::getHitNode ( ) const
inline
Returns
The hit node that represents the syntax responsible for creating these parameters, if any

Definition at line 1357 of file InputParameters.h.

1357{ return _hit_node; }

Referenced by applyParameters(), blockFullpath(), blockLocation(), getFileBase(), inputLocation(), paramFullpath(), paramMessageContext(), and rawParamVal().

◆ getHitNode() [2/2]

const hit::Node * InputParameters::getHitNode ( const std::string &  param) const
Returns
The hit node associated with setting the parameter param, if any

Definition at line 1658 of file InputParameters.C.

1659{
1660 return at(param)._hit_node;
1661}

Referenced by FEProblemBase::addAnyRedistributers(), applyParameter(), applyParameters(), Action::associateWithParameter(), ActionWarehouse::getCurrentActionName(), MooseBase::getHitNode(), and Factory::initialize().

◆ getMooseType()

std::string InputParameters::getMooseType ( const std::string &  name) const

Utility functions for retrieving one of the MooseTypes variables into the common "string" base class.

Scalar and Vector versions are supplied

Definition at line 946 of file InputParameters.C.

947{
948 const auto & name = checkForRename(name_in);
949 std::string var;
950
951 if (have_parameter<VariableName>(name))
952 var = get<VariableName>(name);
953 else if (have_parameter<NonlinearVariableName>(name))
954 var = get<NonlinearVariableName>(name);
955 else if (have_parameter<LinearVariableName>(name))
956 var = get<LinearVariableName>(name);
957 else if (have_parameter<AuxVariableName>(name))
958 var = get<AuxVariableName>(name);
959 else if (have_parameter<PostprocessorName>(name))
960 var = get<PostprocessorName>(name);
961 else if (have_parameter<VectorPostprocessorName>(name))
962 var = get<VectorPostprocessorName>(name);
963 else if (have_parameter<FunctionName>(name))
964 var = get<FunctionName>(name);
965 else if (have_parameter<UserObjectName>(name))
966 var = get<UserObjectName>(name);
967 else if (have_parameter<MaterialPropertyName>(name))
968 var = get<MaterialPropertyName>(name);
969 else if (have_parameter<std::string>(name))
970 var = get<std::string>(name);
971
972 return var;
973}

Referenced by MooseObjectWarehouseBase< T >::addObject(), BlockRestrictable::initializeBlockRestrictable(), isValid(), and varName().

◆ getNewToDeprecatedVarMap()

const std::unordered_map< std::string, std::string > & InputParameters::getNewToDeprecatedVarMap ( ) const
inline

Return the new to deprecated variable name map.

Definition at line 920 of file InputParameters.h.

921 {
923 }

◆ getObjectName()

const std::string & InputParameters::getObjectName ( ) const
Returns
The underlying owning object name, for MooseBase objects with parameters

Definition at line 1035 of file InputParameters.C.

1036{
1037 if (!have_parameter<std::string>(MooseBase::name_param))
1038 ::mooseError("InputParameters::getObjectName(): Missing '", MooseBase::name_param, "' param");
1039 return get<std::string>(MooseBase::name_param);
1040}
static const std::string name_param
The name of the parameter that contains the object name.
Definition MooseBase.h:55

Referenced by FEProblemBase::addConstraint(), MooseBase::messagePrefix(), operator=(), OrientedBoxInterface::OrientedBoxInterface(), OutputInterface::OutputInterface(), and InputParametersChecksUtils< C >::warnInconsistent().

◆ getObjectType()

const std::string & InputParameters::getObjectType ( ) const
Returns
The underlying owning object type, for MooseBase objects with parameters

Will error if a type does not exist

Definition at line 1027 of file InputParameters.C.

1028{
1029 if (const auto type_ptr = queryObjectType())
1030 return *type_ptr;
1031 ::mooseError("InputParameters::getObjectType(): Missing '", MooseBase::type_param, "' param");
1032}
const std::string * queryObjectType() const
static const std::string type_param
The name of the parameter that contains the object type.
Definition MooseBase.h:53

Referenced by MooseBase::messagePrefix(), operator=(), and InputParametersChecksUtils< C >::warnInconsistent().

◆ getParametersList()

std::set< std::string > InputParameters::getParametersList ( ) const
Returns
list of all parameters

Definition at line 1717 of file InputParameters.C.

1718{
1719 std::set<std::string> param_set;
1720 for (auto it = _params.begin(); it != _params.end(); ++it)
1721 param_set.emplace(it->first);
1722 return param_set;
1723}

Referenced by MooseServer::gatherDocumentCompletionItems(), MooseServer::getFileNameTypeValues(), and MooseServer::getHoverDisplayText().

◆ getParamHelper() [1/5]

template<typename T >
const T & InputParameters::getParamHelper ( const std::string &  name,
const InputParameters &  pars 
)
static

Definition at line 2339 of file InputParameters.h.

2340{
2341 const auto & name = pars.checkForRename(name_in);
2342
2343 if (!pars.isParamValid(name))
2344 pars.mooseError("The parameter \"", name, "\" is being retrieved before being set.");
2345
2346 return pars.get<T>(name);
2347}
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.

◆ getParamHelper() [2/5]

template<>
const MooseEnum & InputParameters::getParamHelper ( const std::string &  name,
const InputParameters &  pars 
)
static

◆ getParamHelper() [3/5]

template<>
const MultiMooseEnum & InputParameters::getParamHelper ( const std::string &  name,
const InputParameters &  pars 
)
static

◆ getParamHelper() [4/5]

template<>
const MooseEnum & InputParameters::getParamHelper ( const std::string &  name_in,
const InputParameters &  pars 
)
static

Definition at line 1606 of file InputParameters.C.

1609{
1610 const auto & name = pars.checkForRename(name_in);
1611 return pars.get<MooseEnum>(name);
1612}
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Definition MooseEnum.h:55

◆ getParamHelper() [5/5]

template<>
const MultiMooseEnum & InputParameters::getParamHelper ( const std::string &  name_in,
const InputParameters &  pars 
)
static

Definition at line 1615 of file InputParameters.C.

1618{
1619 const auto & name = pars.checkForRename(name_in);
1620 return pars.get<MultiMooseEnum>(name);
1621}
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type.

◆ getSystemAttributeName()

const std::string & InputParameters::getSystemAttributeName ( ) const

Get the system attribute name if it was registered.

Otherwise throw an error. See the AttribSystem object for use Attribute.h/C.

Definition at line 521 of file InputParameters.C.

522{
523 mooseAssert(have_parameter<std::string>("_moose_warehouse_system_name"),
524 "SystemAttributeName is not available! Call 'registerSystemAttributeName' (usually "
525 "in the validParams function) before you try accessing it!");
526 return Parameters::get<std::string>("_moose_warehouse_system_name");
527}

Referenced by MFEMProblem::addPostprocessor(), MFEMProblem::addVectorPostprocessor(), and AttribSystem::initFrom().

◆ getVecMooseType()

std::vector< std::string > InputParameters::getVecMooseType ( const std::string &  name) const

Definition at line 976 of file InputParameters.C.

977{
978 const auto & name = checkForRename(name_in);
979 std::vector<std::string> svars;
980
981 if (have_parameter<std::vector<VariableName>>(name))
982 {
983 std::vector<VariableName> vars = get<std::vector<VariableName>>(name);
984 std::copy(vars.begin(), vars.end(), std::back_inserter(svars));
985 }
986 else if (have_parameter<std::vector<NonlinearVariableName>>(name))
987 {
988 std::vector<NonlinearVariableName> vars = get<std::vector<NonlinearVariableName>>(name);
989 std::copy(vars.begin(), vars.end(), std::back_inserter(svars));
990 }
991 else if (have_parameter<std::vector<AuxVariableName>>(name))
992 {
993 std::vector<AuxVariableName> vars = get<std::vector<AuxVariableName>>(name);
994 std::copy(vars.begin(), vars.end(), std::back_inserter(svars));
995 }
996 else if (have_parameter<std::vector<MaterialPropertyName>>(name))
997 {
998 std::vector<MaterialPropertyName> vars = get<std::vector<MaterialPropertyName>>(name);
999 std::copy(vars.begin(), vars.end(), std::back_inserter(svars));
1000 }
1001 else if (have_parameter<std::vector<std::string>>(name))
1002 {
1003 std::vector<std::string> vars = get<std::vector<std::string>>(name);
1004 std::copy(vars.begin(), vars.end(), std::back_inserter(svars));
1005 }
1006
1007 return svars;
1008}
char ** vars
bool have_parameter(std::string_view name) const
A wrapper around the Parameters base class method.

Referenced by MooseObjectWarehouseBase< T >::addObject(), Coupleable::Coupleable(), isValid(), ScalarCoupleable::ScalarCoupleable(), and varName().

◆ hasBase()

bool InputParameters::hasBase ( ) const
Returns
Whether or not the object has a registered base

The base is registered with registerBase()

Definition at line 499 of file InputParameters.C.

500{
501 return have_parameter<std::string>(MooseBase::moose_base_param);
502}

Referenced by ActionWarehouse::addActionBlock(), JsonSyntaxTree::addParameters(), MooseServer::addValuesToList(), MooseServer::getHoverDisplayText(), MooseServer::getObjectParameters(), MooseBase::hasBase(), and MooseBase::messagePrefix().

◆ hasCoupledValue()

bool InputParameters::hasCoupledValue ( const std::string &  coupling_name) const
inline

Return whether or not the coupled variable exists.

Parameters
coupling_nameThe name of the coupled variable to test for
Returns
True if the variable exists in the coupled variables for this InputParameters object

Definition at line 946 of file InputParameters.h.

947 {
948 mooseDeprecated("InputParameters::hasCoupledValue() is deprecated. Use "
949 "InputParameters::hasCoupledVar() instead.");
950 return hasCoupledVar(coupling_name);
951 }

◆ hasCoupledVar()

bool InputParameters::hasCoupledVar ( const std::string &  coupling_name) const

Return whether or not the coupled variable exists.

Parameters
coupling_nameThe name of the coupled variable to test for
Returns
True if the variable exists in the coupled variables for this InputParameters object

Definition at line 837 of file InputParameters.C.

838{
839 return _coupled_vars.find(coupling_name) != _coupled_vars.end();
840}

Referenced by applyCoupledVar(), getCoupledVar(), hasCoupledValue(), Coupleable::isCoupled(), ScalarCoupleable::isCoupledScalar(), setCoupledVar(), and transferParam().

◆ hasDefault()

bool InputParameters::hasDefault ( const std::string &  param_name) const

Return whether a parameter has a default.

Definition at line 822 of file InputParameters.C.

823{
824 const auto & name = checkForRename(param_name);
825 if (hasDefaultCoupledValue(name))
826 return true;
827 // If it has a default, it's already valid
828 else if (isParamSetByAddParam(name))
829 return true;
830 else if (isParamValid(name))
831 mooseError("No way to know if the parameter '", param_name, "' has a default");
832 else
833 return false;
834}
bool isParamSetByAddParam(const std::string &name) const
Returns whether or not the parameter was set due to addParam.

Referenced by transferParam().

◆ hasDefaultCoupledValue()

bool InputParameters::hasDefaultCoupledValue ( const std::string &  coupling_name) const

Return whether or not the requested parameter has a default coupled value.

Parameters
coupling_nameThe name of the coupling parameter to get the default value for.

Definition at line 876 of file InputParameters.C.

877{
878 return _params.count(coupling_name) > 0 && _params.at(coupling_name)._have_coupled_default &&
879 _coupled_vars.count(coupling_name) > 0;
880}

Referenced by MooseServer::addParametersToList(), applyCoupledVar(), Coupleable::coupledComponents(), hasDefault(), Coupleable::isCoupledConstant(), InputFileFormatter::printParams(), YAMLFormatter::printParams(), JsonSyntaxTree::setParams(), and transferParam().

◆ have_parameter()

template<typename T >
bool InputParameters::have_parameter ( std::string_view  name) const

A wrapper around the Parameters base class method.

Checks for parameter rename before calling the base class method. This method tells whether a parameter with a known type is defined. If the type is unknown, use isParamDefined().

Parameters
nameThe name to query the parameter values map with
Returns
Whether there is a key in the parameter values map corresponding to the (possibly renamed) name

Definition at line 2423 of file InputParameters.h.

2424{
2425 const std::string name_str(name_in);
2426 const auto & name = checkForRename(name_str);
2427
2428 return Parameters::have_parameter<T>(name);
2429}

Referenced by FEProblemBase::addAuxScalarKernel(), FEProblemBase::addConstraint(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FunctorMaterial::addFunctorPropertyByBlocks(), FEProblemBase::addIndicator(), FEProblemBase::addInterfaceKernel(), MooseEigenSystem::addKernel(), FEProblemBase::addMarker(), FEProblemBase::addMaterialHelper(), AddMFEMComplexBCComponentAction::AddMFEMComplexBCComponentAction(), AddMFEMComplexKernelComponentAction::AddMFEMComplexKernelComponentAction(), FEProblemBase::addMultiApp(), FEProblemBase::addNodalKernel(), NonlinearSystemBase::addNodalKernel(), FEProblemBase::addObjectParamsHelper(), FEProblemBase::addScalarKernel(), FEProblemBase::addTransfer(), MooseServer::addValuesToList(), MeshGeneratorSystem::appendMeshGenerator(), Moose::Builder::buildFullTree(), Moose::Builder::buildJsonSyntaxTree(), Coupleable::checkVar(), MaterialBase::declareADProperty(), Moose::Kokkos::MaterialBase::declareKokkosOnDemandProperty(), Moose::Kokkos::MaterialBase::declareKokkosProperty(), MaterialBase::declareProperty(), FunctorInterface::deduceFunctorName(), MooseServer::getActionParameters(), AppFactory::getAppParamsID(), MooseServer::getCompletionItemKind(), MaterialBase::getGenericZeroMaterialProperty(), MooseServer::getHoverDisplayText(), MaterialPropertyInterface::getMaterialPropertyName(), MooseServer::getObjectParameters(), MaterialOutputAction::getParams(), getVecMooseType(), AdvancedOutput::initExecutionTypes(), AttribDisplaced::initFrom(), isParamValid(), MooseApp::MooseApp(), MooseApp::outputMachineReadableData(), OutputOnWarehouse::OutputOnWarehouse(), InputParametersChecksUtils< C >::parameterConsistent(), FVRelationshipManagerInterface::parameterError(), ParsedMaterialHelper< is_ad >::ParsedMaterialHelper(), InputFileFormatter::printParams(), YAMLFormatter::printParams(), NEML2Action::printSummary(), FEProblemBase::setAuxKernelParamsAndLog(), FEProblemBase::setResidualObjectParamsAndLog(), DumpObjectsProblem::stringifyParameters(), transferParam(), MooseBase::uniqueName(), BlockRestrictable::validParams(), and Moose::Builder::walkRaw().

◆ ignoreParameter()

template<typename T >
void InputParameters::ignoreParameter ( const std::string &  name)

Informs this object that values for this parameter set from the input file or from the command line should be ignored.

Definition at line 2158 of file InputParameters.h.

2159{
2160 const auto & name = checkForRename(name_in);
2161 suppressParameter<T>(name);
2162 _params[name]._ignore = true;
2163}

Referenced by AddElementalFieldAction::validParams().

◆ inputLocation()

std::string InputParameters::inputLocation ( const std::string &  param) const
Returns
A string representing the location in the input text the parameter originated from (i.e. filename,linenum) for the given param

Definition at line 1673 of file InputParameters.C.

1674{
1675 if (const auto hit_node = getHitNode(param))
1676 return hit_node->fileLocation(/* with_column = */ false);
1677 return "";
1678}

Referenced by paramLocationPrefix().

◆ isCommandLineParameter()

bool InputParameters::isCommandLineParameter ( const std::string &  name) const
Returns
Whether or not the parameter name is a command line parameter

Definition at line 1101 of file InputParameters.C.

1102{
1103 return at(checkForRename(name))._cl_data.has_value();
1104}

◆ isControllable()

bool InputParameters::isControllable ( const std::string &  name) const

Returns a Boolean indicating whether the specified parameter is controllable.

Definition at line 478 of file InputParameters.C.

479{
480 const auto & name = checkForRename(name_in);
481 return _params.count(name) > 0 && _params.at(name)._controllable;
482}

Referenced by JsonSyntaxTree::setParams(), and transferParam().

◆ isFinalized()

bool InputParameters::isFinalized ( ) const
inline
Returns
Whether or not finalize() has been called

Definition at line 1370 of file InputParameters.h.

1370{ return _finalized; }

Referenced by finalize(), and MooseBase::MooseBase().

◆ isFunctorNameType()

template<typename T >
constexpr bool InputParameters::isFunctorNameType ( )
staticconstexprprivate

Definition at line 2617 of file InputParameters.h.

2618{
2619 return Moose::internal::isFunctorNameTypeHelper(Moose::internal::getNullptrExample<T>());
2620}
constexpr bool isFunctorNameTypeHelper(T *ex)

◆ isKokkosObject()

bool InputParameters::isKokkosObject ( ) const

◆ isMooseBaseObject()

bool InputParameters::isMooseBaseObject ( ) const
Returns
Whether or not these parameters are for a MooseBase object, that is, one with a name and type.

Needed so that we can produce richer errors from within InputParameters that have the context of the underlying object, if possible.

Definition at line 1011 of file InputParameters.C.

1012{
1013 return have_parameter<std::string>(MooseBase::type_param) &&
1014 get<std::string>(MooseBase::type_param).size() &&
1015 have_parameter<std::string>(MooseBase::name_param);
1016}

Referenced by callMooseError(), and MooseBase::messagePrefix().

◆ isParamDefined()

bool InputParameters::isParamDefined ( const std::string &  name) const

Method returns true if the parameter is defined for any type.

If the type is known, use have_parameter<T>() instead.

Parameters
nameThe parameter name

Definition at line 1341 of file InputParameters.C.

1342{
1343 const auto & name = checkForRename(name_in);
1344 return _params.count(name) > 0;
1345}

Referenced by FEProblemBase::addOutput(), and MooseMeshUtils::copyIntoMesh().

◆ isParamDeprecated()

bool InputParameters::isParamDeprecated ( const std::string &  name) const

Returns True if the parameters is deprecated.

Definition at line 425 of file InputParameters.C.

426{
427 const auto & name = checkForRename(name_in);
428 return _params.count(name) > 0 && !_params.at(name)._deprecation_message.empty();
429}

Referenced by MooseServer::addParametersToList(), MooseServer::getRequiredParamsText(), and JsonSyntaxTree::setParams().

◆ isParamRequired()

bool InputParameters::isParamRequired ( const std::string &  name) const

Returns a boolean indicating whether the specified parameter is required or not.

Definition at line 370 of file InputParameters.C.

371{
372 const auto & name = checkForRename(name_in);
373 return _params.count(name) > 0 && _params.at(name)._required;
374}

Referenced by areAllRequiredParamsValid(), MooseServer::getCompletionItemKind(), MooseServer::getRequiredParamsText(), missingRequiredParamErrors(), InputFileFormatter::printParams(), YAMLFormatter::printParams(), JsonSyntaxTree::setParams(), and transferParam().

◆ isParamSetByAddParam()

bool InputParameters::isParamSetByAddParam ( const std::string &  name) const

Returns whether or not the parameter was set due to addParam.

If not then it was either set programmatically or was read through the input file.

Definition at line 418 of file InputParameters.C.

419{
420 const auto & name = checkForRename(name_in);
421 return _params.count(name) > 0 && _params.at(name)._set_by_add_param;
422}

Referenced by MultiApp::createApp(), DefaultMultiAppFixedPointConvergence::DefaultMultiAppFixedPointConvergence(), hasDefault(), and TransientBase::TransientBase().

◆ isParamSetByUser()

bool InputParameters::isParamSetByUser ( const std::string &  name) const

Method returns true if the parameter was set by the user.

Parameters
nameThe parameter name

Definition at line 1324 of file InputParameters.C.

1325{
1326 const auto & name = checkForRename(name_in);
1327 // Invalid; for sure not set by the user
1328 if (!isParamValid(name))
1329 return false;
1330 // Parameter is not located in the list (called Parameters::set)
1331 if (!_params.count(name))
1332 return false;
1333 // Special case for a command line option, which is a private parameter
1334 if (const auto cl_data = queryCommandLineMetadata(name))
1335 return cl_data->set_by_command_line;
1336 // Not a command line option, not set by addParam and not private
1337 return !_params.at(name)._set_by_add_param && !_params.at(name)._is_private;
1338}
std::optional< InputParameters::CommandLineMetadata > queryCommandLineMetadata(const std::string &name) const

Referenced by CreateProblemAction::act(), MeshOnlyAction::act(), SetupDebugAction::act(), SetupMeshAction::act(), SplitMeshAction::act(), FEProblemBase::addOutput(), ADVectorFunctionDirichletBC::ADVectorFunctionDirichletBC(), AnnularMesh::AnnularMesh(), AnnularMeshGenerator::AnnularMeshGenerator(), applyCommonUserSetParameters(), BreakMeshByBlockGenerator::BreakMeshByBlockGenerator(), PiecewiseTabularInterface::buildFromFile(), LibtorchNeuralNetControl::conditionalParameterError(), Console::Console(), DumpObjectsProblem::deduceNecessaryParameters(), DefaultMultiAppFixedPointConvergence::DefaultMultiAppFixedPointConvergence(), ExamplePatchMeshGenerator::ExamplePatchMeshGenerator(), Executor::Executor(), Exodus::Exodus(), FEProblemSolve::FEProblemSolve(), FileMeshGenerator::generate(), AddVariableAction::init(), Console::initialSetup(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceIntegralVariableValuePostprocessor::InterfaceIntegralVariableValuePostprocessor(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), MooseBase::isParamSetByUser(), MultiApp::keepSolutionDuringRestore(), LayeredBase::LayeredBase(), MultiApp::MultiApp(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), MultiSystemSolveObject::MultiSystemSolveObject(), NearestPointBase< UserObjectType, BaseType >::NearestPointBase(), paramSetByUser(), PiecewiseTabularInterface::PiecewiseTabularInterface(), MooseMesh::prepare(), PropertyReadFile::PropertyReadFile(), RandomIC::RandomIC(), MooseMesh::setCoordSystem(), TransientBase::setupTimeIntegrator(), Transfer::Transfer(), TransientBase::TransientBase(), MooseUtils::variableFEType(), VectorBodyForce::VectorBodyForce(), vectorFunctionDim(), VectorFunctionDirichletBC::VectorFunctionDirichletBC(), VectorFunctionIC::VectorFunctionIC(), and VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl().

◆ isParamValid()

bool InputParameters::isParamValid ( const std::string &  name) const

This method returns parameters that have been initialized in one fashion or another, i.e.

The value was supplied as a default argument or read and properly converted from the input file

Definition at line 386 of file InputParameters.C.

387{
388 const auto & name = checkForRename(name_in);
389 if (have_parameter<MooseEnum>(name))
390 return get<MooseEnum>(name).isValid();
391 else if (have_parameter<std::vector<MooseEnum>>(name))
392 {
393 for (auto it = get<std::vector<MooseEnum>>(name).begin();
394 it != get<std::vector<MooseEnum>>(name).end();
395 ++it)
396 if (!it->isValid())
397 return false;
398 return true;
399 }
400 else if (have_parameter<MultiMooseEnum>(name))
401 return get<MultiMooseEnum>(name).isValid();
402 else if (have_parameter<std::vector<MultiMooseEnum>>(name))
403 {
404 for (auto it = get<std::vector<MultiMooseEnum>>(name).begin();
405 it != get<std::vector<MultiMooseEnum>>(name).end();
406 ++it)
407 if (!it->isValid())
408 return false;
409 return true;
410 }
411 else if (have_parameter<ExecFlagEnum>(name))
412 return get<ExecFlagEnum>(name).isValid();
413 else
414 return _params.count(name) > 0 && _params.at(name)._valid;
415}

Referenced by ElementIDOutputAction::act(), CreateExecutionerAction::act(), CreateProblemDefaultAction::act(), MaterialOutputAction::act(), MeshOnlyAction::act(), ReadExecutorParamsAction::act(), SetupMeshAction::act(), FEProblemBase::addConstraint(), FEProblemBase::addDamper(), FunctorMaterial::addFunctorPropertyByBlocks(), FEProblem::addLineSearch(), MooseObjectWarehouseBase< T >::addObject(), FEProblemBase::addObjectParamsHelper(), MooseServer::addParametersToList(), FEProblemBase::addTransfer(), AddVariableAction::addVariable(), ADInterfaceKernelTempl< T >::ADInterfaceKernelTempl(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), applyParameter(), areAllRequiredParamsValid(), PiecewiseTabularInterface::buildFromFile(), PiecewiseTabularInterface::buildFromJSON(), PNGOutput::calculateRescalingValues(), PostprocessorInterface::checkParam(), Moose::PeriodicBCHelper::checkPeriodicParams(), OutputWarehouse::commonFileBaseSet(), ScalarCoupleable::coupledMatrixTagScalarValue(), Coupleable::coupledMatrixTagValue(), Coupleable::coupledMatrixTagValues(), Coupleable::coupledVectorTagArrayGradient(), Coupleable::coupledVectorTagArrayGradients(), Coupleable::coupledVectorTagArrayValues(), Coupleable::coupledVectorTagDofValues(), Coupleable::coupledVectorTagGradient(), Coupleable::coupledVectorTagGradients(), ScalarCoupleable::coupledVectorTagScalarValue(), Coupleable::coupledVectorTagValues(), FunctorInterface::deduceFunctorName(), ElementMaterialSampler::ElementMaterialSampler(), Moose::Builder::extractParams(), FileRangeBuilder::FileRangeBuilder(), GapValueAux::GapValueAux(), MooseServer::getCompletionItemKind(), MaterialPropertyInterface::getMaterialDataType(), MaterialPropertyInterface::getMaterialPropertyName(), getParamHelper(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), MooseServer::getRequiredParamsText(), GhostingUserObject::GhostingUserObject(), hasDefault(), MultiAppGeneralFieldKDTreeTransferBase::inBlocks(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), isKokkosObject(), isParamSetByUser(), MooseBase::isParamValid(), isValid(), LayeredBase::LayeredBase(), LayeredIntegralBase< UserObjectType >::LayeredIntegralBase(), LevelSetMeshingHelper::LevelSetMeshingHelper(), missingRequiredParamErrors(), UserObjectInterface::mooseObjectError(), MultiApp::MultiApp(), NodeFaceConstraint::NodeFaceConstraint(), InputParametersChecksUtils< C >::parameterConsistent(), ParsedReporterBase::ParsedReporterBase(), ParsedScalarReporter::ParsedScalarReporter(), PenetrationAux::PenetrationAux(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), PiecewiseTabularInterface::PiecewiseTabularInterface(), ReporterInterface::possiblyCheckHasReporter(), InputFileFormatter::printParams(), YAMLFormatter::printParams(), PseudoTimestep::PseudoTimestep(), queryParam(), rangeCheck(), rangeCheck(), ReferenceResidualConvergence::ReferenceResidualConvergence(), Moose::PetscSupport::setLineSearchFromParams(), Moose::PetscSupport::setMFFDTypeFromParams(), JsonSyntaxTree::setParams(), MooseMesh::setPartitioner(), Moose::PetscSupport::setSolveTypeFromParams(), SideSetsGeneratorBase::setup(), MeshBaseImageSampler::setupImageSampler(), ImageSampler::setupImageSampler(), SetupMeshAction::setupMesh(), Moose::PeriodicBCHelper::setupPeriodicBoundaries(), Moose::SlepcSupport::storeSolveType(), DumpObjectsProblem::stringifyParameters(), BoundaryRestrictable::validParams(), BoundaryRestrictableRequired::validParams(), MooseUtils::variableFEType(), Coupleable::vectorTagDofValueHelper(), Coupleable::vectorTagValueHelper(), ImageSampler::vtkMagnitude(), MeshBaseImageSampler::vtkMagnitude(), ImageSampler::vtkThreshold(), and MeshBaseImageSampler::vtkThreshold().

◆ isPrivate()

bool InputParameters::isPrivate ( const std::string &  name) const

◆ isRangeChecked()

bool InputParameters::isRangeChecked ( const std::string &  param_name) const

Return whether a parameter has a range check.

Definition at line 808 of file InputParameters.C.

809{
810 const auto & name = checkForRename(param_name);
811 return !_params.find(name)->second._range_function.empty();
812}

Referenced by Moose::Builder::extractParams(), MooseServer::getHoverDisplayText(), YAMLFormatter::printParams(), JsonSyntaxTree::setParams(), and transferParam().

◆ isType()

template<typename T >
bool InputParameters::isType ( const std::string &  name) const
Returns
True if the parameter with name name is of type T.

Definition at line 2402 of file InputParameters.h.

2403{
2404 const auto & name = checkForRename(name_in);
2405
2406 if (!_params.count(name))
2407 mooseError("Parameter \"", name, "\" is not valid.");
2408 return have_parameter<T>(name);
2409}

Referenced by BatchMeshGeneratorAction::checkInputParameterType(), PostprocessorInterface::checkParam(), PostprocessorInterface::coupledPostprocessors(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), PostprocessorInterface::getPostprocessorNameInternal(), ReporterInterface::getReporterName(), and Reporter::getReporterValueName().

◆ makeParamNotRequired() [1/2]

template<typename T >
void InputParameters::makeParamNotRequired ( const std::string &  name)

Changes the parameter to not be required.

Parameters
nameThe parameter name

Definition at line 2179 of file InputParameters.h.

2180{
2181 const auto & name = checkForRename(name_in);
2182
2183 if (!this->have_parameter<T>(name))
2184 mooseError("Unable to un-require nonexistent parameter: ", name);
2185
2186 _params[name]._required = false;
2187}

Referenced by MooseServer::getObjectParameters(), ControllableInputTimes::validParams(), and ExtraIDIntegralVectorPostprocessor::validParams().

◆ makeParamNotRequired() [2/2]

void InputParameters::makeParamNotRequired ( const std::string &  name)

Forces parameter of given name to be not required regardless of type.

Definition at line 377 of file InputParameters.C.

378{
379 const auto & name = checkForRename(name_in);
380
381 if (_params.count(name))
382 _params[name]._required = false;
383}

◆ makeParamRequired()

template<typename T >
void InputParameters::makeParamRequired ( const std::string &  name)

Changes the parameter to be required.

Parameters
nameThe parameter name

Definition at line 2167 of file InputParameters.h.

2168{
2169 const auto & name = checkForRename(name_in);
2170
2171 if (!this->have_parameter<T>(name))
2172 mooseError("Unable to require nonexistent parameter: ", name);
2173
2174 _params[name]._required = true;
2175}

Referenced by SideSetsAroundSubdomainGenerator::validParams(), and SideSetsBetweenSubdomainsGenerator::validParams().

◆ markControlled()

void InputParameters::markControlled ( const std::string &  name)

Marker a parameter that has been changed by the Control system (this is for output purposes)

◆ missingRequiredParamErrors()

std::vector< std::string > InputParameters::missingRequiredParamErrors ( const std::string &  parsing_syntax,
const std::set< std::string > &  skip_required_params = {},
bool  skip_private = false 
) const

Return errors for missing required parameters.

Parameters
parsing_syntaxThe parsing syntax to use in the error if this object has no block
skip_required_paramsNames of required parameters to skip the check for
skip_privateWhether to skip the check for private parameters

Definition at line 634 of file InputParameters.C.

637{
638 const std::string parampath = blockFullpath() != "" ? blockFullpath() : parsing_syntax;
639
640 // Required parameters
641 std::vector<std::string> required_param_errors;
642 for (const auto & it : *this)
643 {
644 const auto param_name = checkForRename(it.first);
645 if (skip_required_params.count(param_name) || (skip_private && isPrivate(param_name)))
646 continue;
647
648 if (!isParamValid(param_name) && isParamRequired(param_name))
649 {
650 // check if an old, deprecated name exists for this parameter that may be specified
651 auto oit = _new_to_deprecated_coupled_vars.find(param_name);
652 if (oit != _new_to_deprecated_coupled_vars.end() && isParamValid(oit->second))
653 continue;
654
655 required_param_errors.push_back("missing required parameter '" + parampath + "/" +
656 param_name + "'\n\tDoc String: \"" +
657 getDocString(param_name) + "\"");
658 }
659 }
660
661 return required_param_errors;
662}

Referenced by checkParams(), and Moose::Builder::extractParams().

◆ mooseError()

template<typename... Args>
void InputParameters::mooseError ( Args &&...  args) const

Emits an error prefixed with the object information, if available.

Definition at line 2514 of file InputParameters.h.

2515{
2516 std::ostringstream oss;
2517 moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
2518 callMooseError(oss.str());
2519}
void callMooseError(std::string msg, const bool with_prefix=true, const hit::Node *node=nullptr, const bool show_trace=true) const
Internal helper for calling back to mooseError(), ideally from the underlying MooseBase object if it ...
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:135

Referenced by addCommandLineParamHelper(), addDeprecatedParam(), addParam(), addParamNamesToGroup(), addPrivateParam(), addRequiredParam(), applyParameter(), at(), at(), checkConsistentType(), checkParamName(), checkParams(), commandLineParamSet(), declareControllable(), defaultCoupledValue(), get(), getBase(), getCheckedPointerParam(), getCommandLineMetadata(), getCoupledVar(), getDescription(), getFileBase(), getObjectName(), getObjectType(), getParamHelper(), hasDefault(), isType(), makeParamNotRequired(), makeParamRequired(), moveParamToGroup(), numberDefaultCoupledValues(), operator=(), renameCoupledVarInternal(), renameParamInternal(), setCoupledVar(), setDeprecatedVarDocString(), setDocString(), setGlobalCommandLineParam(), shouldIgnore(), suppressParameter(), transferParam(), type(), and varName().

◆ mooseObjectSyntaxVisibility() [1/2]

bool InputParameters::mooseObjectSyntaxVisibility ( ) const

Definition at line 578 of file InputParameters.C.

579{
581}

◆ mooseObjectSyntaxVisibility() [2/2]

void InputParameters::mooseObjectSyntaxVisibility ( bool  visibility)

Mutators for controlling whether or not the outermost level of syntax will be collapsed when printed.

Definition at line 572 of file InputParameters.C.

573{
575}

Referenced by Moose::Builder::buildFullTree(), and Moose::Builder::buildJsonSyntaxTree().

◆ moveParamToGroup()

void InputParameters::moveParamToGroup ( const std::string &  name,
const std::string &  group_name 
)

This method moves a single parameter to a different group than the one it is already assigned to (for example, in a derived class intentionally re-grouping a base class's parameter).

Parameters
namename of the parameter to move
group_namename of the group to move the parameter to

Definition at line 1073 of file InputParameters.C.

1074{
1075 if (_params.count(name) == 0)
1076 mooseError(
1077 "Unable to find a parameter with name: ", name, " when moving to group ", group_name, '.');
1078 _params[name]._group = group_name;
1079}

◆ numberDefaultCoupledValues()

unsigned int InputParameters::numberDefaultCoupledValues ( const std::string &  coupling_name) const

Get the number of defaulted coupled value entries.

Parameters
coupling_nameThe name of the coupling parameter to get the default value for.

Definition at line 909 of file InputParameters.C.

910{
911 auto value_it = _params.find(coupling_name);
912 if (value_it == _params.end())
913 mooseError("Attempted to retrieve default value for coupled variable '",
914 coupling_name,
915 "' when none was provided.");
916 return value_it->second._coupled_default.size();
917}

Referenced by applyCoupledVar(), Coupleable::Coupleable(), Coupleable::coupledComponents(), Coupleable::getADDefaultVectorValue(), Coupleable::getDefaultArrayValue(), Coupleable::getDefaultValue(), and transferParam().

◆ operator+=()

InputParameters & InputParameters::operator+= ( const InputParameters &  rhs)

Definition at line 180 of file InputParameters.C.

181{
182 Parameters::operator+=(rhs);
183
184 // TODO: this is not a proper merge - if a particular parameter exists in both this and rhs,
185 // then we should actually smartly merge both metadata structs before storing in this.
186 for (auto it = rhs._params.begin(); it != rhs._params.end(); ++it)
187 _params[it->first] = it->second;
188
189 _buildable_types.insert(
190 _buildable_types.end(), rhs._buildable_types.begin(), rhs._buildable_types.end());
191 _buildable_rm_types.insert(
192 _buildable_rm_types.end(), rhs._buildable_rm_types.begin(), rhs._buildable_rm_types.end());
193
194 // Collapse nesting and moose object syntax hiding are not modified with +=
195 _coupled_vars.insert(rhs._coupled_vars.begin(), rhs._coupled_vars.end());
198
200 rhs._old_to_new_name_and_dep.end());
201 _new_to_old_names.insert(rhs._new_to_old_names.begin(), rhs._new_to_old_names.end());
202 return *this;
203}

◆ operator=()

InputParameters & InputParameters::operator= ( const InputParameters &  rhs)

Definition at line 135 of file InputParameters.C.

136{
137 // An error to help minimize the segmentation faults that occure when MooseObjects do not have the
138 // correct constructor
139 if (!rhs._allow_copy)
140 {
141 // If _allow_parameter_copy is set, these should be too (see
142 // InputParameterWarehouse::addInputParameters)
143 const std::string & name = rhs.getObjectName();
144 const std::string & type = rhs.getObjectType(); // could be empty
145 const std::string name_example = type.size() ? type : "the " + name + " object";
146 const std::string type_example = type.size() ? type : "MyObject";
148 "Copying of the InputParameters object for ",
149 name_example,
150 " is not allowed.\n\nThe likely cause for this error ",
151 "is having a constructor that does not use a const reference, all constructors\nfor "
152 "MooseObject based classes should be as follows:\n\n",
153 " ",
154 type_example,
155 "::",
156 type_example,
157 "(const InputParameters & parameters);");
158 }
159
160 Parameters::operator=(rhs);
161
162 _params = rhs._params;
163
173 _hit_node = rhs._hit_node;
174 _finalized = false;
175
176 return *this;
177}
std::string type(const std::string &name) const
Prints the type of the requested parameter by name.
const std::string & getObjectType() const
const std::string & getObjectName() const

◆ paramAliases()

std::vector< std::string > InputParameters::paramAliases ( const std::string &  param_name) const

Return all the aliased names associated with param_name.

The returned container will always contain param_name itself. Other aliases in addition to param_name will include the base class parameter name if param_name is the derived class parameter name, or deprecated names that param_name is meant to replace.

Parameters
param_nameThe name of the parameter that we want to lookup aliases for. This parameter name must exist in our metadata and parameter names to values map, e.g. this parameter must represent the derived class parameter name if a base class parameter has been renamed or the blessed parameter name in situations where associated parameter names have been deprecated
Returns
All aliases which logically resolve-to/are-associated-with param_name, including param_name itself

Definition at line 1877 of file InputParameters.C.

1878{
1879 mooseAssert(_values.find(param_name) != _values.end(),
1880 "The parameter we are searching for aliases for should exist in our parameter map");
1881 std::vector<std::string> aliases = {param_name};
1882
1883 for (const auto & pr : as_range(_new_to_old_names.equal_range(param_name)))
1884 aliases.push_back(pr.second);
1885
1886 return aliases;
1887}
SimpleRange< IndexType > as_range(const std::pair< IndexType, IndexType > &p)

Referenced by Moose::Builder::extractParams().

◆ paramError()

template<typename... Args>
void InputParameters::paramError ( const std::string &  param,
Args...  args 
) const

Emits a parameter error prefixed with the parameter location and object information if available.

Definition at line 2532 of file InputParameters.h.

2533{
2534 std::ostringstream oss;
2535 moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
2536 const auto [prefix, node] = paramMessageContext(param);
2537 callMooseError(prefix + oss.str(), false, node, /* show_trace = */ false);
2538}
std::pair< std::string, const hit::Node * > paramMessageContext(const std::string &param) const
Get the context associated with a parameter for a message.

Referenced by MFEMBoundaryRestrictable::boundariesToAttributes(), PiecewiseTabularInterface::buildFromFile(), checkParams(), Moose::PeriodicBCHelper::checkPeriodicParams(), finalize(), get(), getFileBase(), MooseBase::paramError(), Moose::PeriodicBCHelper::setupAutoPeriodicBoundaries(), Moose::PeriodicBCHelper::setupManualPeriodicBoundaries(), MFEMBlockRestrictable::subdomainsToAttributes(), and MooseUtils::variableFEType().

◆ parameterRangeCheck()

std::optional< std::pair< bool, std::string > > InputParameters::parameterRangeCheck ( const Parameters::Value &  value,
const std::string &  long_name,
const std::string &  short_name,
const bool  include_param_path 
)

Performs a range check on the parameter (which must have a range check)

Parameters
valueThe parameter value
long_nameThe full path to the parameter
short_nameThe name of the parameter
include_param_pathWhether or not to include the parameter path in errors
Returns
An error, if any; first is whether or not it is a user error and second is the message

Definition at line 665 of file InputParameters.C.

669{
670#define dynamicCastRangeCheck(type, up_type, long_name, short_name) \
671 do \
672 { \
673 if (const auto scalar_p = dynamic_cast<const InputParameters::Parameter<type> *>(&value)) \
674 return rangeCheck<type, up_type>(long_name, short_name, *scalar_p, include_param_path); \
675 if (const auto vector_p = \
676 dynamic_cast<const InputParameters::Parameter<std::vector<type>> *>(&value)) \
677 return rangeCheck<type, up_type>(long_name, short_name, *vector_p, include_param_path); \
678 } while (0)
679
680 dynamicCastRangeCheck(Real, Real, long_name, short_name);
681 dynamicCastRangeCheck(int, long, long_name, short_name);
682 dynamicCastRangeCheck(long, long, long_name, short_name);
683 dynamicCastRangeCheck(unsigned int, long, long_name, short_name);
684#undef dynamicCastRangeCheck
685
686 return {};
687}

Referenced by checkParams(), and Moose::Builder::extractParams().

◆ paramFullpath()

std::string InputParameters::paramFullpath ( const std::string &  param) const
Returns
A string representing the full HIT parameter path from the input file (e.g. "Mesh/foo/bar" for param "bar") for the given param.

Definition at line 1681 of file InputParameters.C.

1682{
1683 if (const auto hit_node = getHitNode(param))
1684 return hit_node->fullpath();
1685 return "";
1686}

Referenced by checkParams(), and paramLocationPrefix().

◆ paramLocationPrefix()

std::string InputParameters::paramLocationPrefix ( const std::string &  param) const

Returns a prefix containing the parameter name and location (if available)

Definition at line 1736 of file InputParameters.C.

1737{
1738 auto prefix = param + ":";
1739 if (!inputLocation(param).empty())
1740 prefix = inputLocation(param) + ": (" + paramFullpath(param) + ")";
1741 return prefix;
1742}
std::string inputLocation(const std::string &param) const

Referenced by MaterialPropertyInterface::checkBlockAndBoundaryCompatibility().

◆ paramMessage()

template<typename... Args>
std::string InputParameters::paramMessage ( const std::string &  param,
Args...  args 
) const
Returns
A message used as a prefix for output relating to a parameter.

Will first prefix with a path to the parameter, or the parameter that resulted in the creation of these parameters, if available. The message will then be prefixed with the block path to the parameter, if available.

Definition at line 2523 of file InputParameters.h.

2524{
2525 std::ostringstream oss;
2526 moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
2527 return paramMessagePrefix(param) + oss.str();
2528}
std::string paramMessagePrefix(const std::string &param) const
Get a prefix for messages associated with a parameter.

Referenced by MooseBase::paramInfo(), and MooseBase::paramWarning().

◆ paramMessageContext()

std::pair< std::string, const hit::Node * > InputParameters::paramMessageContext ( const std::string &  param) const
private

Get the context associated with a parameter for a message.

Parameters
paramThe parameter name
Returns
Pair that is the string prefix for the parameter (fullpath) and a pointer to the best hit node that can be associated with the parameter (if any)

Definition at line 1937 of file InputParameters.C.

1938{
1939 const hit::Node * node = nullptr;
1940
1941 std::string fullpath;
1942 // First try to find the parameter
1943 if (const hit::Node * param_node = getHitNode(param))
1944 {
1945 fullpath = param_node->fullpath();
1946 node = param_node;
1947 }
1948 // If no parameter node, hope for a block node
1949 else if (const hit::Node * block_node = getHitNode())
1950 {
1951 node = block_node;
1952 fullpath = block_node->fullpath() + "/" + param;
1953 }
1954 // Didn't find anything, at least use the parameter
1955 else
1956 fullpath = param;
1957
1958 return {fullpath + ": ", node};
1959}

Referenced by paramError(), and paramMessagePrefix().

◆ paramMessagePrefix()

std::string InputParameters::paramMessagePrefix ( const std::string &  param) const
private

Get a prefix for messages associated with a parameter.

Will include the best file path possible for the parameter and the parameter's fullpath.

Definition at line 1962 of file InputParameters.C.

1963{
1964 auto [prefix, node] = paramMessageContext(param);
1965 if (node)
1966 prefix = Moose::hitMessagePrefix(*node) + prefix;
1967 return prefix;
1968}
std::string hitMessagePrefix(const hit::Node &node)
Get the prefix to be associated with a hit node for a message.
Definition Moose.C:913

Referenced by paramMessage(), and queryDeprecatedParamMessage().

◆ paramSetByUser()

bool InputParameters::paramSetByUser ( const std::string &  name) const

Deprecated method.

Use isParamSetByUser() instead.

Definition at line 1317 of file InputParameters.C.

1318{
1319 mooseDeprecated("paramSetByUser() is deprecated. Use isParamSetByUser() instead.");
1320 return isParamSetByUser(name);
1321}

◆ queryCommandLineMetadata()

std::optional< InputParameters::CommandLineMetadata > InputParameters::queryCommandLineMetadata ( const std::string &  name) const
Returns
Queries for the command line metadata for the parameter name

Will return an empty optional if the parameter is not a command line param.

Definition at line 1107 of file InputParameters.C.

1108{
1109 const auto & cl_data = at(checkForRename(name))._cl_data;
1110 if (!cl_data)
1111 return {};
1112 return *cl_data;
1113}

Referenced by isParamSetByUser(), and CommandLine::populateCommandLineParams().

◆ queryDataFileNamePath()

std::optional< Moose::DataFileUtils::Path > InputParameters::queryDataFileNamePath ( const std::string &  name) const
Returns
The DataFileName path for the parameter name (if any).

Definition at line 1890 of file InputParameters.C.

1891{
1893}

◆ queryDeprecatedParamMessage()

std::optional< std::string > InputParameters::queryDeprecatedParamMessage ( const std::string &  name) const
Returns
The deprecated parameter message for the given parameter, if any

Definition at line 109 of file InputParameters.C.

110{
111 const auto & name = checkForRename(name_in);
113 {
114 auto deprecation_message = [this](const auto & name, const auto & message) -> std::string
115 { return paramMessagePrefix(name) + message; };
116
117 if (_params.count(name) && !libmesh_map_find(_params, name)._deprecation_message.empty())
118 return deprecation_message(name,
119 "The parameter '" + name + "' is deprecated.\n" +
120 libmesh_map_find(_params, name)._deprecation_message);
121 else if (auto it = _old_to_new_name_and_dep.find(name_in);
122 it != _old_to_new_name_and_dep.end() && !it->second.second.empty())
123 return deprecation_message(name_in, it->second.second);
124 }
125 return {};
126}

Referenced by Moose::Builder::extractParams().

◆ queryObjectType()

const std::string * InputParameters::queryObjectType ( ) const
Returns
The object type represented by these parameters, if any

Definition at line 1019 of file InputParameters.C.

1020{
1021 return have_parameter<std::string>(MooseBase::type_param)
1022 ? &get<std::string>(MooseBase::type_param)
1023 : nullptr;
1024}

Referenced by Moose::Builder::extractParams(), and getObjectType().

◆ queryParam()

template<typename T >
const T * InputParameters::queryParam ( const std::string &  name) const

Query a parameter.

If a parameter of the given name and type does not exist or if the parameter is not valid, nullptr will be returned

Parameters
nameThe name of the parameter
Returns
A pointer to the parameter value, if it exists

Definition at line 2332 of file InputParameters.h.

2333{
2334 return have_parameter<T>(name) && isParamValid(name) ? &getParamHelper<T>(name, *this) : nullptr;
2335}

Referenced by MooseBase::queryParam(), and Moose::PeriodicBCHelper::setupManualPeriodicBoundaries().

◆ rangeCheck() [1/2]

template<typename T , typename UP_T >
std::optional< std::pair< bool, std::string > > InputParameters::rangeCheck ( const std::string &  full_name,
const std::string &  short_name,
const InputParameters::Parameter< std::vector< T > > &  param,
const bool  include_param_path = true 
)

Automatically detect the variables used in the range checking expression. We allow the following variables (where snam is the short_name of the parameter)

snam : tests every component in the vector 'snam > 0' snam_size : the size of the vector 'snam_size = 5' snam_i : where i is a number from 0 to sname_size-1 tests a specific component 'snam_0 > snam_1'

Definition at line 1646 of file InputParameters.h.

1650{
1651 if (!isParamValid(short_name))
1652 return {};
1653
1654 const auto & range_function = _params[short_name]._range_function;
1655 if (range_function.empty())
1656 return {};
1657
1670 std::vector<std::string> vars;
1671 if (fp.ParseAndDeduceVariables(range_function, vars) != -1) // -1 for success
1672 return {{false,
1673 "Error parsing expression '" + range_function + "' for parameter " + short_name + ""}};
1674
1675 // Fparser parameter buffer
1676 std::vector<UP_T> parbuf(vars.size());
1677
1678 // parameter vector
1679 const std::vector<T> & value = param.get();
1680
1681 // iterate over all vector values (maybe ;)
1682 bool need_to_iterate = false;
1683 unsigned int i = 0;
1684 do
1685 {
1686 // set parameters
1687 for (unsigned int j = 0; j < vars.size(); j++)
1688 {
1689 if (vars[j] == short_name)
1690 {
1691 if (value.size() == 0)
1692 {
1693 std::ostringstream oss;
1694 oss << "Range checking empty vector";
1695 if (include_param_path)
1696 oss << " parameter " << full_name;
1697 oss << "; expression = '" << range_function << "'";
1698 return {{true, oss.str()}};
1699 }
1700
1701 parbuf[j] = value[i];
1702 need_to_iterate = true;
1703 }
1704 else if (vars[j] == short_name + "_size")
1705 parbuf[j] = value.size();
1706 else
1707 {
1708 if (vars[j].substr(0, short_name.size() + 1) != short_name + "_")
1709 return {{false, "Error parsing expression '" + range_function + "'"}};
1710 std::istringstream iss(vars[j]);
1711 iss.seekg(short_name.size() + 1);
1712
1713 size_t index;
1714 if (iss >> index && iss.eof())
1715 {
1716 if (index >= value.size())
1717 {
1718 std::ostringstream oss;
1719 oss << "Error parsing expression '" + range_function + "'";
1720 if (include_param_path)
1721 oss << " for parameter " << full_name;
1722 oss << "; out of range variable '" + vars[j] << "'";
1723 return {{true, oss.str()}};
1724 }
1725 parbuf[j] = value[index];
1726 }
1727 else
1728 return {{false,
1729 "Error parsing expression '" + range_function + "'; invalid variable '" +
1730 vars[j] + "'"}};
1731 }
1732 }
1733
1734 // ensure range-checked input file parameter comparison functions
1735 // do absolute floating point comparisons instead of using a default epsilon.
1736 auto tmp_eps = fp.epsilon();
1737 fp.setEpsilon(0);
1738 UP_T result = fp.Eval(&parbuf[0]);
1739 fp.setEpsilon(tmp_eps);
1740
1741 // test function using the parameters determined above
1742 if (fp.EvalError())
1743 return {{false, "Error evaluating expression '" + range_function + "'"}};
1744
1745 if (!result)
1746 {
1747 std::ostringstream oss;
1748 oss << "Range check failed";
1749 if (include_param_path)
1750 oss << " for parameter " << full_name;
1751 oss << "; expression = '" << range_function << "'";
1752 if (need_to_iterate)
1753 oss << ", component " << i;
1754 return {{true, oss.str()}};
1755 }
1756
1757 } while (need_to_iterate && ++i < value.size());
1758
1759 return {};
1760}

◆ rangeCheck() [2/2]

template<typename T , typename UP_T >
std::optional< std::pair< bool, std::string > > InputParameters::rangeCheck ( const std::string &  full_name,
const std::string &  short_name,
const InputParameters::Parameter< T > &  param,
const bool  include_param_path = true 
)

Runs a range on the supplied parameter if it exists and throws an error if that check fails.

Returns
Optional of whether or not the error is a user error (false = developer error) and the associated error

If include_param_path = true, include the parameter path in the error message

Definition at line 1764 of file InputParameters.h.

1768{
1769 if (!isParamValid(short_name))
1770 return {};
1771
1772 const auto & range_function = _params[short_name]._range_function;
1773 if (range_function.empty())
1774 return {};
1775
1776 // Parse the expression
1778 if (fp.Parse(range_function, short_name) != -1) // -1 for success
1779 return {{false,
1780 "Error parsing expression '" + range_function + "'" + " for parameter " + short_name}};
1781
1782 // ensure range-checked input file parameter comparison functions
1783 // do absolute floating point comparisons instead of using a default epsilon.
1784 auto tmp_eps = fp.epsilon();
1785 fp.setEpsilon(0);
1786 // We require a non-const value for the implicit upscaling of the parameter type
1787 std::vector<UP_T> value(1, param.get());
1788 UP_T result = fp.Eval(&value[0]);
1789 fp.setEpsilon(tmp_eps);
1790
1791 if (fp.EvalError())
1792 return {{true,
1793 "Error evaluating expression '" + range_function + "' for parameter " + short_name +
1794 "; perhaps you used the wrong variable name?"}};
1795
1796 if (!result)
1797 {
1798 std::ostringstream oss;
1799 oss << "Range check failed";
1800 if (include_param_path)
1801 oss << " for parameter " << full_name;
1802 oss << "; expression = '" << range_function << "', value = " << value[0];
1803 return {{true, oss.str()}};
1804 }
1805
1806 return {};
1807}

◆ rangeCheckedFunction()

std::string InputParameters::rangeCheckedFunction ( const std::string &  name) const

Return the range check function for any parameter (empty string if it is not range checked)

Definition at line 815 of file InputParameters.C.

816{
817 const auto & name = checkForRename(param_name);
818 return _params.at(name)._range_function;
819}

Referenced by MooseServer::getHoverDisplayText(), YAMLFormatter::printParams(), JsonSyntaxTree::setParams(), and transferParam().

◆ rawParamVal()

std::string InputParameters::rawParamVal ( const std::string &  param) const
Returns
A string representing the raw, unmodified token text for the given param. This is only set if this parameter is parsed from hit

Definition at line 1745 of file InputParameters.C.

1746{
1747 if (const auto hit_node = getHitNode(param))
1748 return hit_node->strVal();
1749 return "";
1750}

◆ registerBase()

void InputParameters::registerBase ( const std::string &  value)

This method must be called from every base "Moose System" to create linkage with the Action System.

See "Moose.C" for the registerMooseObjectTask() calls.

Definition at line 492 of file InputParameters.C.

493{
494 InputParameters::set<std::string>(MooseBase::moose_base_param) = value;
495 _params[MooseBase::moose_base_param]._is_private = true;
496}

Referenced by Action::validParams(), AuxKernelBase::validParams(), AuxScalarKernel::validParams(), MooseApp::validParams(), BoundaryCondition::validParams(), BoundsBase::validParams(), ChainControl::validParams(), Constraint::validParams(), Control::validParams(), Convergence::validParams(), FunctorNodalCorrector::validParams(), PointwiseRenormalizeVector::validParams(), Damper::validParams(), DGKernelBase::validParams(), ADDiracKernel::validParams(), DiracKernelTempl< T >::validParams(), Distribution::validParams(), Executioner::validParams(), Executor::validParams(), Moose::FunctionBase::validParams(), FVBoundaryCondition::validParams(), FVGradientMethod::validParams(), FVInitialConditionBase::validParams(), FVInterfaceKernel::validParams(), FVInterpolationMethod::validParams(), FVKernel::validParams(), HDGKernel::validParams(), InitialConditionBase::validParams(), ScalarInitialCondition::validParams(), Indicator::validParams(), ADInterfaceKernelTempl< T >::validParams(), InterfaceKernelTempl< T >::validParams(), InterfaceKernelBase::validParams(), ADArrayKernel::validParams(), ArrayKernel::validParams(), EigenKernel::validParams(), Kernel::validParams(), VectorKernel::validParams(), LinearFVBoundaryCondition::validParams(), LinearFVKernel::validParams(), LineSearch::validParams(), Marker::validParams(), MaterialBase::validParams(), MooseMesh::validParams(), MeshDivision::validParams(), MeshGenerator::validParams(), ActivateElementsUserObjectBase::validParams(), ElementSubdomainModifierBase::validParams(), SidesetAroundSubdomainUpdater::validParams(), MFEMAuxKernel::validParams(), MFEMComplexAuxKernel::validParams(), MFEMBoundaryCondition::validParams(), MFEMFESpace::validParams(), MFEMFESpaceHierarchy::validParams(), MFEMFunctorMaterial::validParams(), MFEMIndicator::validParams(), MFEMKernel::validParams(), MFEMRefinementMarker::validParams(), MFEMProblemComposer::validParams(), Moose::MFEM::SolverBase::validParams(), MFEMSubMesh::validParams(), MFEMSubMeshTransfer::validParams(), MFEMComplexVariable::validParams(), MFEMVariable::validParams(), MFEMWeakFormBase::validParams(), MultiApp::validParams(), NodalKernelBase::validParams(), Output::validParams(), MoosePartitioner::validParams(), Positions::validParams(), Postprocessor::validParams(), MoosePreconditioner::validParams(), Predictor::validParams(), Problem::validParams(), RelationshipManager::validParams(), Reporter::validParams(), Sampler::validParams(), ScalarKernelBase::validParams(), Split::validParams(), TimeIntegrator::validParams(), Times::validParams(), TimeStepper::validParams(), Transfer::validParams(), LayeredExtremumMaterialProperty::validParams(), NearestPointAverage::validParams(), NearestPointIntegralVariablePostprocessor::validParams(), UserObjectBase::validParams(), MooseVariableBase::validParams(), and VectorPostprocessor::validParams().

◆ registerBuildableTypes()

void InputParameters::registerBuildableTypes ( const std::string &  names)

This method is here to indicate which Moose types a particular Action may build.

It takes a space delimited list of registered MooseObjects. TODO: For now we aren't actually checking this list when we build objects. Since individual actions can do whatever they want it's not exactly trivial to check this without changing the user API. This function properly restricts the syntax and YAML dumps.

Definition at line 530 of file InputParameters.C.

531{
532 _buildable_types.clear();
533 MooseUtils::tokenize(names, _buildable_types, 1, " \t\n\v\f\r"); // tokenize on whitespace
534}

◆ registerSystemAttributeName()

void InputParameters::registerSystemAttributeName ( const std::string &  value)

This method is used to define the MOOSE system name that is used by the TheWarehouse object for storing objects to be retrieved for execution.

The base class of every object class that will be called for execution (e.g., UserObject objects) should call this method.

This is different from registerBase because the name supplied to registerBase is used to associate syntax, but the objects created often go to the same objects for execution, as is the case for Postprocessor object which are executed with UserObjects.

See the AttribSystem object for use Attribute.h/C.

Definition at line 514 of file InputParameters.C.

515{
516 InputParameters::set<std::string>("_moose_warehouse_system_name") = value;
517 _params["_moose_warehouse_system_name"]._is_private = true;
518}

Referenced by BoundaryCondition::validParams(), Constraint::validParams(), Damper::validParams(), DGKernelBase::validParams(), DiracKernelBase::validParams(), Distribution::validParams(), FVDirichletBCBase::validParams(), FVFluxBC::validParams(), FVGradientMethod::validParams(), FVInterfaceKernel::validParams(), FVInterpolationMethod::validParams(), FVElementalKernel::validParams(), FVFluxKernel::validParams(), InterfaceKernelBase::validParams(), LinearFVBoundaryCondition::validParams(), LinearFVElementalKernel::validParams(), LinearFVFluxKernel::validParams(), MFEMExecutedObject::validParams(), MFEMBoundaryCondition::validParams(), MFEMFESpace::validParams(), MFEMFESpaceHierarchy::validParams(), MFEMFunctorMaterial::validParams(), MFEMIndicator::validParams(), MFEMKernel::validParams(), MFEMRefinementMarker::validParams(), MFEMProblemComposer::validParams(), Moose::MFEM::SolverBase::validParams(), MFEMSubMesh::validParams(), MFEMComplexVariable::validParams(), MFEMVariable::validParams(), MFEMWeakFormBase::validParams(), NodalKernelBase::validParams(), Sampler::validParams(), ScalarKernelBase::validParams(), Split::validParams(), TimeStepper::validParams(), and UserObject::validParams().

◆ renameCoupledVar()

void InputParameters::renameCoupledVar ( const std::string &  old_name,
const std::string &  new_name,
const std::string &  new_docstring 
)

Rename a coupled variable and provide a new documentation string.

Parameters
old_nameThe old name of the coupled variable
new_nameThe new name of the coupled variable
new_docstringThe new documentation string for the coupled variable

Definition at line 1844 of file InputParameters.C.

1847{
1848 renameCoupledVarInternal(old_name, new_name, new_docstring, "");
1849}

Referenced by ADPenaltyPeriodicSegmentalConstraint::validParams(), ADPeriodicSegmentalConstraint::validParams(), PenaltyPeriodicSegmentalConstraint::validParams(), PeriodicSegmentalConstraint::validParams(), and ScalarLMKernelTempl< is_ad >::validParams().

◆ renameCoupledVarInternal()

void InputParameters::renameCoupledVarInternal ( const std::string &  old_name,
const std::string &  new_name,
const std::string &  docstring,
const std::string &  removal_date 
)
private

Definition at line 1818 of file InputParameters.C.

1822{
1823 auto coupled_vars_it = _coupled_vars.find(old_name);
1824 if (coupled_vars_it == _coupled_vars.end())
1825 mooseError("Requested to rename coupled variable '",
1826 old_name,
1827 "' but that coupled variable name doesn't exist in the parameters object.");
1828
1829 _coupled_vars.insert(new_name);
1830 _coupled_vars.erase(coupled_vars_it);
1831
1832 renameParamInternal(old_name, new_name, docstring, removal_date);
1833}

Referenced by deprecateCoupledVar(), and renameCoupledVar().

◆ renameParam()

void InputParameters::renameParam ( const std::string &  old_name,
const std::string &  new_name,
const std::string &  new_docstring 
)

Rename a parameter and provide a new documentation string.

Parameters
old_nameThe old name of the parameter
new_nameThe new name of the parameter
new_docstringThe new documentation string for the parameter If left empty, uses the old docstring for the renamed parameter

Definition at line 1836 of file InputParameters.C.

1839{
1840 renameParamInternal(old_name, new_name, new_docstring, "");
1841}

Referenced by OrientSurfaceMeshGenerator::validParams(), ParsedSubdomainMeshGenerator::validParams(), SideSetsAroundSubdomainGenerator::validParams(), SideSetsBetweenSubdomainsGenerator::validParams(), StitchBoundaryMeshGenerator::validParams(), SurfaceSubdomainsFromAllNormalsGenerator::validParams(), XYZDelaunayGenerator::validParams(), SidesetAroundSubdomainUpdater::validParams(), MultiAppGeneralFieldFunctorTransfer::validParams(), and MultiAppGeneralFieldNearestLocationTransfer::validParams().

◆ renameParameterGroup()

void InputParameters::renameParameterGroup ( const std::string &  old_name,
const std::string &  new_name 
)

This method renames a parameter group.

Parameters
old_nameprevious name of the parameter group
new_namenew name of the parameter group

Definition at line 1082 of file InputParameters.C.

1083{
1084 for (auto & param : _params)
1085 if (param.second._group == old_name)
1086 param.second._group = new_name;
1087}

Referenced by LevelSetMeshingHelper::validParams(), and SurfaceSubdomainsDelaunayRemesher::validParams().

◆ renameParamInternal()

void InputParameters::renameParamInternal ( const std::string &  old_name,
const std::string &  new_name,
const std::string &  docstring,
const std::string &  removal_date 
)
private

Definition at line 1784 of file InputParameters.C.

1788{
1789 auto params_it = _params.find(old_name);
1790 if (params_it == _params.end())
1791 mooseError("Requested to rename parameter '",
1792 old_name,
1793 "' but that parameter name doesn't exist in the parameters object.");
1794 mooseAssert(params_it->second._deprecation_message.empty(),
1795 "Attempting to rename the parameter, '" << old_name << "', that is deprecated");
1796
1797 auto new_metadata = std::move(params_it->second);
1798 if (!docstring.empty())
1799 new_metadata._doc_string = docstring;
1800 _params.emplace(new_name, std::move(new_metadata));
1801 _params.erase(params_it);
1802
1803 auto values_it = _values.find(old_name);
1804 auto new_value = std::move(values_it->second);
1805 _values.emplace(new_name, std::move(new_value));
1806 _values.erase(values_it);
1807
1808 std::string deprecation_message;
1809 if (!removal_date.empty())
1810 deprecation_message = "'" + old_name + "' has been deprecated and will be removed on " +
1811 removal_date + ". Please use '" + new_name + "' instead.";
1812
1813 _old_to_new_name_and_dep.emplace(old_name, std::make_pair(new_name, deprecation_message));
1814 _new_to_old_names.emplace(new_name, old_name);
1815}
std::string docstring(const std::string &desc)
Augment docstring if NEML2 is not enabled.
Definition NEML2Utils.C:71

Referenced by deprecateParam(), renameCoupledVarInternal(), and renameParam().

◆ reservedValues()

std::set< std::string > InputParameters::reservedValues ( const std::string &  name) const

Get a set of reserved parameter values.

Returns a set by value since we can return an empty set.

Definition at line 1632 of file InputParameters.C.

1633{
1634 const auto & name = checkForRename(name_in);
1635 auto it = _params.find(name);
1636 if (it == _params.end())
1637 return std::set<std::string>();
1638 return it->second._reserved_values;
1639}

Referenced by JsonSyntaxTree::setParams().

◆ set()

template<typename T >
T & InputParameters::set ( const std::string &  name,
bool  quiet_mode = false 
)

Returns a writable reference to the named parameters.

Note: This is not a virtual function! Use caution when comparing to the parent class implementation

Parameters
nameThe name of the parameter to set
quiet_modeWhen true the parameter is kept with set_by_add_param=true, this is generally not needed.

"quite_mode" returns a writable reference to the named parameter, without setting set_by_add_param to false. Using this method of set will make the parameter to continue to behave if its value where set ONLY by addParam and not by any other method.

This was added for handling parameters in the Output objects that have behavior dependent on whether the user modified the parameters.

Definition at line 1617 of file InputParameters.h.

1618{
1619 const auto & name = checkForRename(name_in);
1620
1621 checkParamName(name);
1622 checkConsistentType<T>(name);
1623
1624 T & result = this->Parameters::set<T>(name);
1625
1626 if (quiet_mode)
1627 _params[name]._set_by_add_param = true;
1628
1629 setHelper<T>(name);
1630
1631 return result;
1632}

Referenced by AB2PredictorCorrector::AB2PredictorCorrector(), ElementIDOutputAction::act(), AdaptivityAction::act(), AddActionComponentAction::act(), AddAuxKernelAction::act(), AddFVICAction::act(), AddICAction::act(), AddNodalNormalsAction::act(), AddPeriodicBCAction::act(), AddTimeStepperAction::act(), AutoCheckpointAction::act(), CombineComponentsMeshes::act(), CommonOutputAction::act(), CreateDisplacedProblemAction::act(), CreateExecutionerAction::act(), CreateProblemAction::act(), DisplayGhostingAction::act(), MaterialOutputAction::act(), PartitionerAction::act(), SetAdaptivityOptionsAction::act(), SetupDebugAction::act(), SetupPredictorAction::act(), SetupResidualDebugAction::act(), SetupTimeStepperAction::act(), FEProblemBase::addAnyRedistributers(), FEProblemBase::addAuxArrayVariable(), FEProblemBase::addAuxScalarKernel(), FEProblemBase::addAuxScalarVariable(), FEProblemBase::addAuxVariable(), DiffusionCG::addBoundaryConditionsFromComponents(), FEProblemBase::addConstraint(), FEProblemBase::addDamper(), FEProblemBase::addDefaultMultiAppFixedPointConvergence(), FEProblemBase::addDefaultNonlinearConvergence(), ReferenceResidualProblem::addDefaultNonlinearConvergence(), FEProblemBase::addDefaultSteadyStateConvergence(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), DiffusionCG::addFEBCs(), DiffusionCG::addFEKernels(), FEProblemBase::addFunction(), MFEMProblem::addFunction(), FEProblemBase::addFunctorMaterial(), DiffusionFV::addFVBCs(), FEProblemBase::addFVInitialCondition(), DiffusionFV::addFVKernels(), MFEMProblem::addImagComponentToBC(), MFEMProblem::addImagComponentToKernel(), FEProblemBase::addIndicator(), FEProblemBase::addInitialCondition(), DiffusionPhysicsBase::addInitialConditions(), DiffusionPhysicsBase::addInitialConditionsFromComponents(), FEProblemBase::addInterfaceKernel(), MooseEigenSystem::addKernel(), FEProblem::addLineSearch(), FEProblemBase::addMarker(), FEProblemBase::addMaterialHelper(), ComponentMaterialPropertyInterface::addMaterials(), FEProblemBase::addMeshDivision(), ComponentJunction::addMeshGenerators(), ComponentMeshTransformHelper::addMeshGenerators(), CylinderComponent::addMeshGenerators(), MeshGenerator::addMeshSubgenerator(), MFEMProblem::addMFEMFESpaceFromMOOSEVariable(), FEProblemBase::addMultiApp(), TableOutput::addMultiAppFixedPointIterationEndExecFlag(), FEProblemBase::addNodalKernel(), FEProblemBase::addObjectParamsHelper(), FEProblemBase::addOutput(), DiffusionPhysicsBase::addPostprocessors(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), MFEMProblem::addRealComponentToBC(), MFEMProblem::addRealComponentToKernel(), AddActionComponentAction::addRelationshipManagers(), FEProblemBase::addScalarKernel(), DiffusionCG::addSolverVariables(), DiffusionFV::addSolverVariables(), FEProblemBase::addTimeIntegrator(), SystemBase::addTimeIntegrator(), FEProblemBase::addTransfer(), FEProblemBase::addVariable(), MFEMExecutedObject::appendDependencyParam(), MeshGeneratorSystem::appendMeshGenerator(), PhysicsBase::assignBlocks(), AStableDirk4::AStableDirk4(), ActionWarehouse::buildBuildableActions(), ActionUnitTest::buildMinimalObjects(), MooseObjectUnitTest::buildObjects(), SampledOutput::cloneMesh(), ADMortarScalarBase::computeResidual(), BatchMeshGeneratorAction::convertAndSetCompoundRealScalarVector(), BatchMeshGeneratorAction::convertAndSetNumericVector(), BatchMeshGeneratorAction::convertAndSetStringLikeVector(), ActionFactory::create(), AppFactory::create(), CommonOutputAction::create(), AppFactory::create(), MultiApp::createApp(), AppFactory::createAppShared(), AddVariableAction::createInitialConditionAction(), MooseApp::createMinimalApp(), Moose::Builder::extractParams(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), FEProblemBase::getFunction(), FEProblemBase::getKokkosFunction(), MaterialOutputAction::getParams(), Moose::SlepcSupport::getSlepcValidParams(), MultiAppGeneralFieldKDTreeTransferBase::inBlocks(), AddElementalFieldAction::init(), Factory::initialize(), SetupMeshAction::modifyParamsForUseSplit(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MooseServer::parseDocumentForDiagnostics(), AuxiliarySystem::registerFVGradient(), FEProblemBase::setAuxKernelParamsAndLog(), MeshGenerator::setHasGenerateCSG(), MeshGenerator::setHasGenerateData(), FEProblemBase::setInputParametersFEProblem(), FEProblem::setInputParametersFEProblem(), MassMatrix::setMassMatrixParams(), FEProblemBase::setResidualObjectParamsAndLog(), FVRelationshipManagerInterface::setRMParams(), BatchMeshGeneratorAction::setScalarParams(), CreateExecutionerAction::setupAutoPreconditioning(), ReadExecutorParamsAction::setupAutoPreconditioning(), BatchMeshGeneratorAction::setVectorParams(), SideSetExtruderGenerator::SideSetExtruderGenerator(), AddAuxKernelAction::validParams(), AddFVICAction::validParams(), AddICAction::validParams(), AddOutputAction::validParams(), BatchMeshGeneratorAction::validParams(), AuxKernelBase::validParams(), ElementUOAux::validParams(), FunctorElementalGradientAuxTempl< is_ad >::validParams(), GapValueAux::validParams(), GhostingFromUOAux::validParams(), MortarNodalAuxKernelTempl< ComputeValueType >::validParams(), NearestNodeDistanceAux::validParams(), NearestNodeValueAux::validParams(), PenetrationAux::validParams(), ProjectionAux::validParams(), TagAuxBase< T >::validParams(), WeightedGapAux::validParams(), EigenArrayDirichletBC::validParams(), EigenDirichletBC::validParams(), IntegratedBCBase::validParams(), NodalBCBase::validParams(), NodalNormalBC::validParams(), SinDirichletBC::validParams(), CoupledTiedValueConstraint::validParams(), EqualValueEmbeddedConstraintTempl< is_ad >::validParams(), NodeFaceConstraint::validParams(), TiedValueConstraint::validParams(), Control::validParams(), FunctorNodalCorrector::validParams(), ReporterPointSource::validParams(), InversePowerMethod::validParams(), NonlinearEigen::validParams(), TransientBase::validParams(), PiecewiseConstantFromCSV::validParams(), FunctorChangeFunctorMaterialTempl< is_ad >::validParams(), GenericFunctorGradientMaterialTempl< is_ad >::validParams(), GenericFunctorMaterialTempl< is_ad >::validParams(), GenericFunctorTimeDerivativeMaterialTempl< is_ad >::validParams(), GenericVectorFunctorMaterialTempl< is_ad >::validParams(), VectorMagnitudeFunctorMaterialTempl< is_ad >::validParams(), FVFluxBC::validParams(), FVFunctorDirichletBCTempl< is_ad >::validParams(), FVInterfaceKernel::validParams(), FVOneVarDiffusionInterface::validParams(), FVAnisotropicDiffusion::validParams(), FVDiffusion::validParams(), FVFunctorTimeKernel::validParams(), FVMassMatrix::validParams(), FVTimeKernel::validParams(), GradientJumpIndicator::validParams(), InterfaceTimeKernel::validParams(), MortarConsumerInterface::validParams(), ADTimeKernelTempl< T >::validParams(), ADTimeKernelGradTempl< T >::validParams(), ADTimeKernelValueTempl< T >::validParams(), ArrayTimeKernel::validParams(), KernelBase::validParams(), ODETimeKernel::validParams(), TimeKernel::validParams(), VectorTimeKernel::validParams(), TorchScriptUserObject::validParams(), LinearFVBoundaryCondition::validParams(), Marker::validParams(), GenericConstant2DArrayTempl< is_ad >::validParams(), GenericConstantArray::validParams(), GenericConstantMaterialTempl< is_ad >::validParams(), GenericConstantRankTwoTensorTempl< is_ad >::validParams(), GenericConstantRealVectorValueTempl< is_ad >::validParams(), GenericConstantStdVectorMaterialTempl< is_ad >::validParams(), GenericConstantSymmetricRankTwoTensorTempl< is_ad >::validParams(), GenericConstantVectorMaterialTempl< is_ad >::validParams(), InterfaceMaterial::validParams(), MaterialBase::validParams(), ThreeMaterialPropertyInterface::validParams(), TwoMaterialPropertyInterface::validParams(), MeshGeneratorMesh::validParams(), BreakMeshByBlockGenerator::validParams(), DistributedRectilinearMeshGenerator::validParams(), OrientSurfaceMeshGenerator::validParams(), ElementSubdomainModifierBase::validParams(), MoveNodesByParsedExpressionModifier::validParams(), MoveNodesToGeometryModifierBase::validParams(), MFEMExecutedObject::validParams(), MFEMMeshGeneratorMesh::validParams(), MFEMCGSolver::validParams(), MFEMGMRESSolver::validParams(), Moose::MFEM::NonlinearSolverBase::validParams(), MFEMPetscNonlinearSolver::validParams(), MultiApp::validParams(), NEML2Assembly::validParams(), NEML2FEInterpolation::validParams(), NEML2PostKernel::validParams(), NEML2PreKernel::validParams(), ArrayTimeDerivativeNodalKernel::validParams(), TimeNodalKernel::validParams(), BlockRestrictionDebugOutput::validParams(), Checkpoint::validParams(), Console::validParams(), ControlOutput::validParams(), DOFMapOutput::validParams(), Exodus::validParams(), JSONOutput::validParams(), MaterialPropertyDebugOutput::validParams(), Output::validParams(), PerfGraphOutput::validParams(), ReporterDebugOutput::validParams(), SolutionInvalidityOutput::validParams(), TopResidualDebugOutput::validParams(), VariableResidualNormsDebugOutput::validParams(), VTKOutput::validParams(), BlockWeightedPartitioner::validParams(), DistributedPositions::validParams(), ElementCentroidPositions::validParams(), ElementGroupCentroidPositions::validParams(), FilePositions::validParams(), FunctorExtremaPositions::validParams(), FunctorPositions::validParams(), InputPositions::validParams(), MultiAppPositions::validParams(), NodePositions::validParams(), ParsedDownSelectionPositions::validParams(), Positions::validParams(), QuadraturePointsPositions::validParams(), ReporterPositions::validParams(), TransformedPositions::validParams(), NodalL2Norm::validParams(), NodalSum::validParams(), PseudoTimestep::validParams(), MooseStaticCondensationPreconditioner::validParams(), ExternalProblem::validParams(), GhostAllPointNeighbors::validParams(), GhostEverything::validParams(), GhostHigherDLowerDPointNeighbors::validParams(), GhostLowerDElems::validParams(), AccumulateReporter::validParams(), ParsedVectorRealReductionReporter::validParams(), ParsedVectorVectorRealReductionReporter::validParams(), Sampler::validParams(), ADScalarTimeKernel::validParams(), ControllableInputTimes::validParams(), CSVFileTimes::validParams(), ExodusFileTimes::validParams(), FunctorTimes::validParams(), InputTimes::validParams(), ReporterTimes::validParams(), SimulationTimes::validParams(), TimeIntervalTimes::validParams(), MultiAppGeneralFieldNearestLocationTransfer::validParams(), MultiAppGeneralFieldUserObjectTransfer::validParams(), MultiAppTransfer::validParams(), MultiAppUserObjectTransfer::validParams(), Transfer::validParams(), DiscreteElementUserObject::validParams(), ElementQualityChecker::validParams(), ElemSideNeighborLayersGeomTester::validParams(), ElemSideNeighborLayersTester::validParams(), GhostingUserObject::validParams(), InterfaceQpUserObjectBase::validParams(), JSONFileReader::validParams(), MessageFromInput::validParams(), NearestRadiusLayeredAverage::validParams(), NodalNormalsEvaluator::validParams(), NodalPatchRecoveryBase::validParams(), ProjectedStatefulMaterialNodalPatchRecoveryBase::validParams(), ProjectedStatefulMaterialNodalPatchRecoveryTempl< T, is_ad >::validParams(), PropertyReadFile::validParams(), RadialAverage::validParams(), UserObjectBase::validParams(), MooseLinearVariableFV< OutputType >::validParams(), MooseVariableFV< OutputType >::validParams(), CombinedVectorPostprocessor::validParams(), CSVReaderVectorPostprocessor::validParams(), ElementVariablesDifferenceMax::validParams(), LeastSquaresFitHistory::validParams(), SamplerBase::validParams(), VectorOfPostprocessors::validParams(), Moose::Builder::walkRaw(), XYQuadrilateralMeshFromBoundaryCurve::XYQuadrilateralMeshFromBoundaryCurve(), and RelationshipManager::zeroLayerGhosting().

◆ set_attributes()

void InputParameters::set_attributes ( const std::string &  name,
bool  inserted_only 
)
overridevirtual

Override from libMesh to set user-defined attributes on our parameter.

"._set_by_add_param" and ".deprecated_params" are not populated until after the default value has already been set in libMesh (first callback to this method). Therefore if a variable is in/not in one of these sets, you can be assured it was put there outside of the "addParam*()" calls.

Reimplemented from libMesh::Parameters.

Definition at line 87 of file InputParameters.C.

88{
89 const auto & name = checkForRename(name_in);
90
91 if (!inserted_only)
92 {
93 auto & metadata = _params[name];
100 metadata._set_by_add_param = false;
101
102 // valid_params don't make sense for MooseEnums
103 if (!have_parameter<MooseEnum>(name) && !have_parameter<MultiMooseEnum>(name))
104 metadata._valid = true;
105 }
106}

Referenced by applyParameter(), and Moose::Builder::extractParams().

◆ setCoupledVar() [1/2]

void InputParameters::setCoupledVar ( const std::string &  coupling_name,
const std::string &  value 
)

Set a coupled variable parameter to a single variable name.

Parameters
coupling_nameThe name of the coupling parameter to set.
valueThe variable name to set.

Definition at line 843 of file InputParameters.C.

844{
845 setCoupledVar(coupling_name, std::vector<VariableName>{value});
846}
void setCoupledVar(const std::string &coupling_name, const std::string &value)
Set a coupled variable parameter to a single variable name.

Referenced by setCoupledVar().

◆ setCoupledVar() [2/2]

void InputParameters::setCoupledVar ( const std::string &  coupling_name,
const std::vector< VariableName > &  values 
)

Set a coupled variable parameter to multiple variable names.

Parameters
coupling_nameThe name of the coupling parameter to set.
valuesThe variable names to set.

Definition at line 849 of file InputParameters.C.

851{
852 const auto & actual_name = checkForRename(coupling_name);
853
854 if (!hasCoupledVar(actual_name))
855 mooseError("Unable to set coupled variable parameter '",
856 coupling_name,
857 "' because it was not added with addCoupledVar or addRequiredCoupledVar.");
858
859 set<std::vector<VariableName>>(actual_name) = values;
860}
std::array< Real, 2 > values
Definition MortarUtils.C:52

◆ setDeprecatedVarDocString()

void InputParameters::setDeprecatedVarDocString ( const std::string &  new_name,
const std::string &  doc_string 
)
private

Private method for setting deprecated coupled variable documentation strings.

Definition at line 206 of file InputParameters.C.

208{
209 auto coupled_vars_it = _new_to_deprecated_coupled_vars.find(new_name);
210 if (coupled_vars_it != _new_to_deprecated_coupled_vars.end())
211 {
212 auto params_it = _params.find(coupled_vars_it->second);
213 if (params_it == _params.end())
214 mooseError("There must have been a mistake in the construction of the new to deprecated "
215 "coupled vars map because the old name ",
216 coupled_vars_it->second,
217 " doesn't exist in the parameters data.");
218
219 params_it->second._doc_string = doc_string;
220 }
221}

Referenced by addCoupledVar(), addCoupledVar(), and addCoupledVar().

◆ setDocString()

void InputParameters::setDocString ( const std::string &  name,
const std::string &  doc 
)

Set the doc string of a parameter.

This method is generally used from within the validParams function to modify the documentation for an existing parameter, such as a parameter that is supplied from an interface class.

Definition at line 343 of file InputParameters.C.

344{
345 const auto & name = checkForRename(name_in);
346
347 auto it = _params.find(name);
348 if (it == _params.end())
349 mooseError("Unable to set the documentation string (using setDocString) for the \"",
350 name,
351 "\" parameter, the parameter does not exist.");
352 it->second._doc_string = doc;
353}

Referenced by TableOutput::addMultiAppFixedPointIterationEndExecFlag(), Moose::SlepcSupport::getSlepcValidParams(), AuxKernelBase::validParams(), FVBoundedValueConstraint::validParams(), FVIntegralValueConstraint::validParams(), FVPointValueConstraint::validParams(), OrientSurfaceMeshGenerator::validParams(), MultiApp::validParams(), Output::validParams(), MultiAppTransfer::validParams(), and PropertyReadFile::validParams().

◆ setDocUnit()

void InputParameters::setDocUnit ( const std::string &  name,
const std::string &  doc_unit 
)

Set the unit string of a parameter.

This method is only used within MooseDocs and the input syntax dump in order to provide a developer-expected unit for software quality assurance purposes.

Definition at line 363 of file InputParameters.C.

364{
365 const auto & name = checkForRename(name_in);
366 _params[name]._doc_unit = doc_unit;
367}

Referenced by Output::validParams().

◆ setGlobalCommandLineParam()

void InputParameters::setGlobalCommandLineParam ( const std::string &  name)

Sets the command line parameter with name as global.

Global here means that it will be passed to all child MultiApps.

Definition at line 1090 of file InputParameters.C.

1091{
1092 auto & cl_data = at(checkForRename(name))._cl_data;
1093 if (!cl_data)
1094 mooseError("InputParameters::setGlobalCommandLineParam: The parameter '",
1095 name,
1096 "' is not a command line parameter");
1097 cl_data->global = true;
1098}

Referenced by MooseApp::validParams().

◆ setHelper()

template<typename T >
void InputParameters::setHelper ( const std::string &  name)

This functions is called in set as a 'callback' to avoid code duplication.

Definition at line 1610 of file InputParameters.h.

1611{
1612}

◆ setHitNode() [1/2]

void InputParameters::setHitNode ( const hit::Node &  node,
const SetHitNodeKey   
)
inline

Sets the hit node that represents the syntax responsible for creating these parameters.

Is protected to be called by only the ActionFactory, Builder, and Factory via the SetHitNodeKey.

Definition at line 1365 of file InputParameters.h.

1365{ _hit_node = &node; }

◆ setHitNode() [2/2]

void InputParameters::setHitNode ( const std::string &  param,
const hit::Node &  node,
const SetParamHitNodeKey   
)

Sets the hit node associated with the parameter param to node.

Is protected to be called by only the Builder via the SetParamHitNodeKey.

Definition at line 1664 of file InputParameters.C.

1667{
1668 mooseAssert(node.type() == hit::NodeType::Field, "Must be a field");
1669 at(param)._hit_node = &node;
1670}

Referenced by FEProblemBase::addAnyRedistributers(), applyParameters(), Action::associateWithParameter(), Factory::clone(), ActionFactory::create(), Moose::Builder::extractParams(), Factory::initialize(), and Moose::Builder::walkRaw().

◆ setParameters() [1/2]

void InputParameters::setParameters ( )
inlineprivate

Method to terminate the recursive setParameters definition.

Definition at line 1396 of file InputParameters.h.

1396{}

Referenced by setParameters().

◆ setParameters() [2/2]

template<typename T , typename... Ts>
void InputParameters::setParameters ( const std::string &  name,
const T &  value,
Ts...  extra_input_parameters 
)

Given a series of parameters names and values, sets each name to the corresponding value.

Any number of name, value pairs can be supplied.

Note that each value must be of the correct type for the parameter of that name, not merely of a type convertible to the correct type.

Parameters
nameThe name of the first parameter to set

Definition at line 1636 of file InputParameters.h.

1639{
1640 this->set<T>(name) = value;
1641 this->setParameters(extra_input_parameters...);
1642}
void setParameters()
Method to terminate the recursive setParameters definition.

Referenced by MeshGenerator::addMeshSubgenerator(), SideSetsFromAllNormalsGenerator::validParams(), SideSetsFromNormalsGenerator::validParams(), SideSetsFromPointsGenerator::validParams(), and MFEMMatrixFreeAMS::validParams().

◆ setParamHelper() [1/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
FunctionName &  l_value,
const int &  r_value 
)
private

◆ setParamHelper() [2/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
FunctionName &  l_value,
const int &  r_value 
)
private

Definition at line 1546 of file InputParameters.C.

1550{
1551 // Assign the default value so that it appears in the dump
1552 std::ostringstream oss;
1553 oss << r_value;
1554 l_value = oss.str();
1555}

◆ setParamHelper() [3/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
FunctionName &  l_value,
const Real &  r_value 
)
private

◆ setParamHelper() [4/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
FunctionName &  l_value,
const Real &  r_value 
)
private

Definition at line 1534 of file InputParameters.C.

1538{
1539 // Assign the default value so that it appears in the dump
1540 std::ostringstream oss;
1541 oss << r_value;
1542 l_value = oss.str();
1543}

◆ setParamHelper() [5/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
MaterialPropertyName &  l_value,
const int &  r_value 
)
private

◆ setParamHelper() [6/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
MaterialPropertyName &  l_value,
const int &  r_value 
)
private

Definition at line 1570 of file InputParameters.C.

1574{
1575 // Assign the default value so that it appears in the dump
1576 std::ostringstream oss;
1577 oss << r_value;
1578 l_value = oss.str();
1579}

◆ setParamHelper() [7/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
MaterialPropertyName &  l_value,
const Real &  r_value 
)
private

◆ setParamHelper() [8/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
MaterialPropertyName &  l_value,
const Real &  r_value 
)
private

Definition at line 1558 of file InputParameters.C.

1562{
1563 // Assign the default value so that it appears in the dump
1564 std::ostringstream oss;
1565 oss << r_value;
1566 l_value = oss.str();
1567}

◆ setParamHelper() [9/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
MooseFunctorName &  l_value,
const int &  r_value 
)
private

◆ setParamHelper() [10/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
MooseFunctorName &  l_value,
const int &  r_value 
)
private

Definition at line 1594 of file InputParameters.C.

1598{
1599 // Assign the default value so that it appears in the dump
1600 std::ostringstream oss;
1601 oss << r_value;
1602 l_value = oss.str();
1603}

◆ setParamHelper() [11/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
MooseFunctorName &  l_value,
const Real &  r_value 
)
private

◆ setParamHelper() [12/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
MooseFunctorName &  l_value,
const Real &  r_value 
)
private

Definition at line 1582 of file InputParameters.C.

1586{
1587 // Assign the default value so that it appears in the dump
1588 std::ostringstream oss;
1589 oss << r_value;
1590 l_value = oss.str();
1591}

◆ setParamHelper() [13/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
PostprocessorName &  l_value,
const int &  r_value 
)
private

Definition at line 1522 of file InputParameters.C.

1526{
1527 // Assign the default value so that it appears in the dump
1528 std::ostringstream oss;
1529 oss << r_value;
1530 l_value = oss.str();
1531}

◆ setParamHelper() [14/17]

template<>
void InputParameters::setParamHelper ( const std::string &  ,
PostprocessorName &  l_value,
const Real &  r_value 
)
private

Definition at line 1510 of file InputParameters.C.

1514{
1515 // Assign the default value so that it appears in the dump
1516 std::ostringstream oss;
1517 oss << r_value;
1518 l_value = oss.str();
1519}

◆ setParamHelper() [15/17]

template<>
void InputParameters::setParamHelper ( const std::string &  name,
PostprocessorName &  l_value,
const int &  r_value 
)
private

◆ setParamHelper() [16/17]

template<>
void InputParameters::setParamHelper ( const std::string &  name,
PostprocessorName &  l_value,
const Real &  r_value 
)
private

◆ setParamHelper() [17/17]

template<typename T , typename S >
void InputParameters::setParamHelper ( const std::string &  name,
T &  l_value,
const S &  r_value 
)
private

This method is called when adding a Parameter with a default value, can be specialized for non-matching types.

Definition at line 1890 of file InputParameters.h.

1891{
1892 l_value = r_value;
1893}

Referenced by addParam().

◆ setReservedValues()

void InputParameters::setReservedValues ( const std::string &  name,
const std::set< std::string > &  reserved 
)

Provide a set of reserved values for a parameter.

These are values that are in addition to the normal set of values the parameter can take.

Definition at line 1624 of file InputParameters.C.

1626{
1627 const auto & name = checkForRename(name_in);
1628 _params[name]._reserved_values = reserved;
1629}

Referenced by OutputInterface::validParams().

◆ setupVariableNames()

std::optional< std::string > InputParameters::setupVariableNames ( std::vector< VariableName > &  names,
const hit::Node &  node,
const Moose::PassKey< Moose::Builder >   
)

Entrypoint for the Builder to setup a std::vector<VariableName> parameter, which will setup the default variable names if appropriate.

Parameters
namesThe variable names
nodeThe hit node that produced this parameter
Returns
An error message, if any

Definition at line 1896 of file InputParameters.C.

1899{
1900 // Whether or not a name was found
1901 bool has_name = false;
1902 // Whether or not a default value (real) was found
1903 bool has_default = false;
1904
1905 // Search through the names for values that convert to Real values,
1906 // which are default values. If defaults are found, set appropriately
1907 // in the InputParameters object. Keep track of if names or defaults
1908 // were found because we don't allow having both
1909 for (const auto i : index_range(names))
1910 {
1911 auto & name = names[i];
1912 Real real_value;
1913 if (MooseUtils::convert<Real>(name, real_value, false))
1914 {
1915 has_default = true;
1916 defaultCoupledValue(node.path(), real_value, i);
1917 }
1918 else
1919 has_name = true;
1920 }
1921
1922 if (has_default)
1923 {
1924 if (has_name)
1925 return {"invalid value for '" + node.fullpath() +
1926 "': coupled vectors where some parameters are reals and others are variables are not "
1927 "supported"};
1928
1929 // Don't actually use the names if these don't represent names
1930 names.clear();
1931 }
1932
1933 return {};
1934}
auto index_range(const T &sizable)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

Referenced by Moose::Builder::extractParams().

◆ shouldIgnore()

bool InputParameters::shouldIgnore ( const std::string &  name)

Whether to ignore the value of an input parameter set in the input file or from the command line.

Definition at line 1697 of file InputParameters.C.

1698{
1699 const auto & name = checkForRename(name_in);
1700 auto it = _params.find(name);
1701 if (it != _params.end())
1702 return it->second._ignore;
1703 mooseError("Parameter ", name, " does not exist");
1704}

Referenced by Moose::Builder::extractParams().

◆ suppressParameter()

template<typename T >
void InputParameters::suppressParameter ( const std::string &  name)

This method suppresses an inherited parameter so that it isn't required or valid in the derived class.

The parameter is added to the private parameter list. Suppressing a parameter can have dire consequences. Use at your own risk!

Definition at line 2144 of file InputParameters.h.

2145{
2146 const auto & name = checkForRename(name_in);
2147 if (!this->have_parameter<T>(name))
2148 mooseError("Unable to suppress nonexistent parameter: ", name);
2149
2150 auto & metadata = _params[name];
2151 metadata._required = false;
2152 metadata._is_private = true;
2153 metadata._controllable = false;
2154}

Referenced by AddMFEMComplexBCComponentAction::AddMFEMComplexBCComponentAction(), AddMFEMComplexKernelComponentAction::AddMFEMComplexKernelComponentAction(), MassMatrix::setMassMatrixParams(), ActionComponent::validParams(), MooseObjectAction::validParams(), MortarNodalAuxKernelTempl< ComputeValueType >::validParams(), TagAuxBase< T >::validParams(), Convergence::validParams(), ReporterPointSource::validParams(), Executioner::validParams(), Moose::FunctionBase::validParams(), FVMassMatrix::validParams(), LinearFVAnisotropicDiffusionFunctorNeumannBC::validParams(), Marker::validParams(), MeshGenerator::validParams(), OrientSurfaceMeshGenerator::validParams(), ParsedGenerateNodeset::validParams(), ParsedGenerateSideset::validParams(), SideSetsAroundSubdomainGenerator::validParams(), SideSetsBetweenSubdomainsGenerator::validParams(), SideSetsFromAllNormalsGenerator::validParams(), SideSetsFromBoundingBoxGenerator::validParams(), SideSetsFromNormalsGenerator::validParams(), SideSetsFromPointsGenerator::validParams(), SurfaceSubdomainsFromAllNormalsGenerator::validParams(), ElementSubdomainModifierBase::validParams(), Moose::MFEM::EigensolverBase::validParams(), MFEMHypreBoomerAMG::validParams(), MFEMMatrixFreeAMS::validParams(), CentroidMultiApp::validParams(), QuadraturePointMultiApp::validParams(), NEML2Assembly::validParams(), NEML2FEInterpolation::validParams(), NEML2PostKernel::validParams(), NEML2PreKernel::validParams(), CSV::validParams(), VariableResidualNormsDebugOutput::validParams(), DiffusionFV::validParams(), FunctorExtremaPositions::validParams(), NodePositions::validParams(), ElementHCurlSemiError::validParams(), ElementHDivSemiError::validParams(), NumNonlinearIterations::validParams(), PseudoTimestep::validParams(), TimestepSize::validParams(), MooseStaticCondensationPreconditioner::validParams(), ExternalProblem::validParams(), AccumulateReporter::validParams(), ParsedScalarReporter::validParams(), ParsedVectorRealReductionReporter::validParams(), ParsedVectorVectorRealReductionReporter::validParams(), SolutionInvalidityReporter::validParams(), Times::validParams(), MultiAppCloneReporterTransfer::validParams(), MultiAppGeneralFieldFunctorTransfer::validParams(), MultiAppGeneralFieldNearestLocationTransfer::validParams(), MultiAppGeneralFieldShapeEvaluationTransfer::validParams(), MultiAppGeneralFieldUserObjectTransfer::validParams(), MultiAppUserObjectTransfer::validParams(), MultiAppVariableValueSamplePostprocessorTransfer::validParams(), DiscreteElementUserObject::validParams(), NearestRadiusLayeredAverage::validParams(), MooseLinearVariableFV< OutputType >::validParams(), MooseVariableFV< OutputType >::validParams(), and CSVReaderVectorPostprocessor::validParams().

◆ transferParam()

template<typename T >
void InputParameters::transferParam ( const InputParameters &  source_param,
const std::string &  name,
const std::string &  new_name = "",
const std::string &  new_description = "" 
)

A routine to transfer a parameter from one class' validParams to another.

Parameters
source_paramThe parameters list holding the param we would like to transfer
nameThe name of the parameter to transfer
new_descriptionA new description of the parameter. If unspecified, uses the source_params'

Definition at line 2433 of file InputParameters.h.

2437{
2438 const auto & name = source_params.checkForRename(name_in);
2439 const auto p_name = new_name.empty() ? name_in : new_name;
2440 if (!source_params.have_parameter<T>(name) && !source_params.hasCoupledVar(name))
2441 mooseError("The '",
2442 name_in,
2443 "' parameter could not be transferred because it does not exist with type '",
2444 MooseUtils::prettyCppType<T>(),
2445 "' in the source parameters");
2446 if (name != name_in)
2447 mooseWarning("The transferred parameter " + name_in + " is deprecated in favor of " + name +
2448 " in the source parameters. The new name should likely be used for the parameter "
2449 "transfer instead.");
2450 const std::string description =
2451 new_description.empty() ? source_params.getDescription(name) : new_description;
2452
2453 if (source_params.isParamRequired(name))
2454 {
2455 // Check for a variable parameter
2456 if (source_params.hasCoupledVar(name))
2457 addRequiredCoupledVar(p_name, description);
2458 // Enums parameters have a default list of options
2459 else if constexpr (std::is_same_v<MooseEnum, T> || std::is_same_v<MultiMooseEnum, T>)
2460 addRequiredParam<T>(p_name, source_params.get<T>(name), description);
2461 else if (source_params.isRangeChecked(name))
2462 addRequiredRangeCheckedParam<T>(
2463 p_name, source_params.rangeCheckedFunction(name), description);
2464 else
2465 addRequiredParam<T>(p_name, description);
2466 }
2467 else
2468 {
2469 // Check for a variable parameter
2470 if (source_params.hasCoupledVar(name))
2471 {
2472 if (!source_params.hasDefaultCoupledValue(name))
2473 addCoupledVar(p_name, description);
2474 else if (source_params.numberDefaultCoupledValues(name) == 1)
2475 addCoupledVar(p_name, source_params.defaultCoupledValue(name), description);
2476 else
2477 {
2478 std::vector<Real> coupled_values;
2479 for (const auto i : libMesh::make_range(source_params.numberDefaultCoupledValues(name)))
2480 coupled_values.push_back(source_params.defaultCoupledValue(name, i));
2481 addCoupledVar(p_name, coupled_values, description);
2482 }
2483 }
2484 else if (source_params.isRangeChecked(name))
2485 {
2486 if (source_params.hasDefault(name))
2487 addRangeCheckedParam<T>(p_name,
2488 source_params.get<T>(name),
2489 source_params.rangeCheckedFunction(name),
2490 description);
2491 else
2492 addRangeCheckedParam<T>(p_name, source_params.rangeCheckedFunction(name), description);
2493 }
2494 else if constexpr (std::is_same_v<MooseEnum, T> || std::is_same_v<MultiMooseEnum, T>)
2495 addParam<T>(p_name, source_params.get<T>(name), description);
2496 else
2497 {
2498 if (source_params.hasDefault(name))
2499 addParam<T>(p_name, source_params.get<T>(name), description);
2500 else
2501 addParam<T>(p_name, description);
2502 }
2503 }
2504
2505 // Copy other attributes
2506 if (source_params.isPrivate(name))
2507 _params[p_name]._is_private = true;
2508 if (source_params.isControllable(name))
2509 _params[p_name]._controllable = true;
2510}
void mooseWarning(Args &&... args)
Emit a warning message with the given stringified, concatenated args.
Definition MooseError.h:345
void addRequiredCoupledVar(const std::string &name, const std::string &doc_string)
This method adds a coupled variable name pair.
The following methods are specializations for using the libMesh::Parallel::packed_range_* routines fo...
IntRange< T > make_range(T beg, T end)

Referenced by DiffusionCG::validParams(), and MooseVariableBase::validParams().

◆ type()

std::string InputParameters::type ( const std::string &  name) const

Prints the type of the requested parameter by name.

Definition at line 932 of file InputParameters.C.

933{
934 const auto & name = checkForRename(name_in);
935 if (!_values.count(name))
936 mooseError("Parameter \"", name, "\" not found.\n\n", *this);
937
938 if (_coupled_vars.find(name) != _coupled_vars.end())
939 return "std::vector<VariableName>";
940 else if (_params.count(name) > 0 && !_params.at(name)._custom_type.empty())
941 return _params.at(name)._custom_type;
942 return _values.at(name)->type();
943}

Referenced by MooseServer::addParametersToList(), MooseServer::addValuesToList(), BatchMeshGeneratorAction::checkInputParameterType(), PostprocessorInterface::checkParam(), MooseServer::gatherDocumentDefinitionLocations(), MooseServer::getFileNameTypeValues(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), MooseServer::getNodesByValueAndTypes(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), operator=(), YAMLFormatter::printParams(), and JsonSyntaxTree::setParams().

◆ varName()

std::string InputParameters::varName ( const std::string &  var_param_name,
const std::string &  moose_object_with_var_param_name 
) const

Determine the actual variable name from the given variable \emph parameter name.

Parameters
var_param_namethe name of the variable parameter, e.g. 'variable'
moose_object_with_var_param_namethe name of the moose object holding the variable parameter. Used for potential error messaging

Definition at line 1753 of file InputParameters.C.

1755{
1756 // Try the scalar version first
1757 std::string variable_name = getMooseType(var_param_name);
1758 if (variable_name == "")
1759 {
1760 auto vec = getVecMooseType(var_param_name);
1761
1762 // Catch the (very unlikely) case where a user specifies
1763 // variable = '' (the empty string)
1764 // in their input file. This could happen if e.g. something goes
1765 // wrong with dollar bracket expression expansion.
1766 if (vec.empty())
1767 mooseError("Error constructing object '",
1768 moose_object_with_var_param_name,
1769 "' while retrieving value for '",
1770 var_param_name,
1771 "' parameter! Did you forget to set '",
1772 var_param_name,
1773 "' or set it to '' (empty string) by accident?");
1774
1775 // When using vector variables, we are only going to use the first one in the list at the
1776 // interface level...
1777 variable_name = vec[0];
1778 }
1779
1780 return variable_name;
1781}
std::string getMooseType(const std::string &name) const
Utility functions for retrieving one of the MooseTypes variables into the common "string" base class.
std::vector< std::string > getVecMooseType(const std::string &name) const

Referenced by FEProblemBase::addBoundaryCondition(), FEProblemBase::addConstraint(), FEProblemBase::addDamper(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addHDGKernel(), FEProblemBase::addInterfaceKernel(), FEProblemBase::addKernel(), FEProblemBase::addNodalKernel(), FEProblemBase::addObjectParamsHelper(), FEProblemBase::addScalarKernel(), and MooseVariableInterface< T >::MooseVariableInterface().

Friends And Related Symbol Documentation

◆ ActionWarehouse

friend class ActionWarehouse
friend

Definition at line 1605 of file InputParameters.h.

◆ emptyInputParameters

InputParameters emptyInputParameters ( )
friend

Definition at line 31 of file InputParameters.C.

32{
33 InputParameters params;
34 return params;
35}
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.

◆ InputParameterWarehouse

friend class InputParameterWarehouse
friend

Definition at line 1602 of file InputParameters.h.

◆ Parser

friend class Parser
friend

Definition at line 1603 of file InputParameters.h.

Member Data Documentation

◆ _allow_copy

bool InputParameters::_allow_copy
private

A flag for toggling the error message in the copy constructor.

Definition at line 1579 of file InputParameters.h.

Referenced by allowCopy(), clear(), and operator=().

◆ _buildable_rm_types

std::vector<std::tuple<std::string, Moose::RelationshipManagerType, Moose::RelationshipManagerInputParameterCallback> > InputParameters::_buildable_rm_types
private

The RelationshipManagers that this object may either build or require.

The optional second argument may be supplied to "downgrade" the functionality of the corresponding relationship manager (e.g. An AlgebraicRelationshipManager could be only used as a GeometricRelationshipManager for a given simulation).

Definition at line 1565 of file InputParameters.h.

Referenced by addRelationshipManager(), clearRelationshipManagers(), getBuildableRelationshipManagerTypes(), operator+=(), and operator=().

◆ _buildable_types

std::vector<std::string> InputParameters::_buildable_types
private

The parameter is used to restrict types that can be built.

Typically this is used for MooseObjectAction derived Actions.

Definition at line 1556 of file InputParameters.h.

Referenced by getBuildableTypes(), operator+=(), operator=(), and registerBuildableTypes().

◆ _class_description

std::string InputParameters::_class_description
private

The class description for the owning object.

This string is used in many places including mouse-over events, and external documentation produced from the source code.

Definition at line 1552 of file InputParameters.h.

Referenced by addClassDescription(), and getClassDescription().

◆ _collapse_nesting

bool InputParameters::_collapse_nesting
private

This parameter collapses one level of nesting in the syntax blocks.

It is used in conjunction with MooseObjectAction derived Actions.

Definition at line 1569 of file InputParameters.h.

Referenced by clear(), collapseSyntaxNesting(), collapseSyntaxNesting(), InputParameters(), and operator=().

◆ _coupled_vars

std::set<std::string> InputParameters::_coupled_vars
private

◆ _finalized

bool InputParameters::_finalized
private

Whether or not we've called finalize() on these parameters yet.

Definition at line 1598 of file InputParameters.h.

Referenced by clear(), finalize(), isFinalized(), and operator=().

◆ _hit_node

const hit::Node* InputParameters::_hit_node
private

The hit node representing the syntax that created these parameters, if any.

Definition at line 1595 of file InputParameters.h.

Referenced by clear(), getHitNode(), operator=(), and setHitNode().

◆ _moose_object_syntax_visibility

bool InputParameters::_moose_object_syntax_visibility
private

This parameter hides derived MOOSE object types from appearing in syntax dumps.

Definition at line 1572 of file InputParameters.h.

Referenced by clear(), InputParameters(), mooseObjectSyntaxVisibility(), mooseObjectSyntaxVisibility(), and operator=().

◆ _new_to_deprecated_coupled_vars

std::unordered_map<std::string, std::string> InputParameters::_new_to_deprecated_coupled_vars
private

A map from deprecated coupled variable names to the new blessed name.

Definition at line 1582 of file InputParameters.h.

Referenced by addDeprecatedCoupledVar(), clear(), getNewToDeprecatedVarMap(), missingRequiredParamErrors(), operator+=(), operator=(), and setDeprecatedVarDocString().

◆ _new_to_old_names

std::multimap<std::string, std::string> InputParameters::_new_to_old_names
private

A map from derived-class/blessed parameter names to associated base-class/deprecated parameter names.

Definition at line 1592 of file InputParameters.h.

Referenced by clear(), operator+=(), operator=(), paramAliases(), and renameParamInternal().

◆ _old_to_new_name_and_dep

std::map<std::string, std::pair<std::string, std::string> > InputParameters::_old_to_new_name_and_dep
private

A map from base-class/deprecated parameter names to derived-class/blessed parameter names and the deprecation messages in the case that the "old" parameter name is a deprecated parameter name.

The deprecation message will be empty if the "old" parameter name represents a base class parameter name

Definition at line 1588 of file InputParameters.h.

Referenced by addDeprecatedParam(), addDeprecatedParam(), checkForRename(), clear(), operator+=(), operator=(), queryDeprecatedParamMessage(), and renameParamInternal().

◆ _params

std::map<std::string, Metadata> InputParameters::_params
private

The actual parameter data.

Each Metadata object contains attributes for the corresponding parameter.

Definition at line 1545 of file InputParameters.h.

Referenced by addCoupledVar(), addCoupledVar(), addCoupledVarWithAutoBuild(), addCustomTypeParam(), addCustomTypeParam(), addDeprecatedCoupledVar(), addDeprecatedCustomTypeParam(), addDeprecatedParam(), addDeprecatedParam(), addParam(), addParam(), addParamNamesToGroup(), addPrivateParam(), addPrivateParam(), addRangeCheckedParam(), addRangeCheckedParam(), addRequiredCustomTypeParam(), addRequiredParam(), addRequiredParam(), addRequiredParam(), addRequiredRangeCheckedParam(), applyParameter(), at(), at(), clear(), declareControllable(), defaultCoupledValue(), defaultCoupledValue(), getAutoBuildVectors(), getControllableParameters(), getDescription(), getDocString(), getDocUnit(), getGroupName(), getGroupParameters(), getParametersList(), hasDefaultCoupledValue(), ignoreParameter(), InputParameters(), isControllable(), isParamDefined(), isParamDeprecated(), isParamRequired(), isParamSetByAddParam(), isParamSetByUser(), isParamValid(), isPrivate(), isRangeChecked(), isType(), makeParamNotRequired(), makeParamRequired(), moveParamToGroup(), numberDefaultCoupledValues(), operator+=(), operator=(), queryDeprecatedParamMessage(), rangeCheck(), rangeCheck(), rangeCheckedFunction(), registerBase(), registerSystemAttributeName(), renameParameterGroup(), renameParamInternal(), reservedValues(), set(), set_attributes(), setDeprecatedVarDocString(), setDocString(), setDocUnit(), setReservedValues(), shouldIgnore(), suppressParameter(), transferParam(), and type().

◆ _show_deprecated_message

bool InputParameters::_show_deprecated_message
private

Flag for disabling deprecated parameters message, this is used by applyParameters to avoid dumping messages.

Definition at line 1576 of file InputParameters.h.

Referenced by addDeprecatedCoupledVar(), addDeprecatedCustomTypeParam(), addDeprecatedParam(), addDeprecatedParam(), applyCoupledVar(), applyParameter(), clear(), and queryDeprecatedParamMessage().


The documentation for this class was generated from the following files: