www.mooseframework.org
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
NodeFaceConstraint Class Referenceabstract

A NodeFaceConstraint is used when you need to create constraints between two surfaces in a mesh. More...

#include <NodeFaceConstraint.h>

Inheritance diagram for NodeFaceConstraint:
[legend]

Public Types

using DataFileParameterType = DataFileName
 The parameter type this interface expects for a data file name. More...
 
enum  ResidualTagType { ResidualTagType::NonReference, ResidualTagType::Reference }
 Enumerate whether a (residual) vector tag is to be of a non-reference or reference tag type. More...
 

Public Member Functions

 NodeFaceConstraint (const InputParameters &parameters)
 
virtual ~NodeFaceConstraint ()
 
virtual void computeSecondaryValue (NumericVector< Number > &current_solution)
 Compute the value the secondary node should have at the beginning of a timestep. More...
 
virtual void computeResidual () override
 Computes the residual Nodal residual. More...
 
virtual void computeJacobian () override
 Computes the jacobian for the current element. More...
 
virtual void computeOffDiagJacobian (unsigned int jvar) override
 Computes d-residual / d-jvar... More...
 
virtual void getConnectedDofIndices (unsigned int var_num)
 Gets the indices for all dofs connected to the constraint. More...
 
virtual bool shouldApply ()
 Whether or not this constraint should be applied. More...
 
virtual bool overwriteSecondaryResidual ()
 Whether or not the secondary's residual should be overwritten. More...
 
virtual bool overwriteSecondaryJacobian ()
 Whether or not the secondary's Jacobian row should be overwritten. More...
 
virtual MooseVariableprimaryVariable ()
 The variable on the Primary side of the domain. More...
 
BoundaryID primaryBoundary () const
 The primary boundary ID for this constraint. More...
 
BoundaryID secondaryBoundary () const
 The secondary boundary ID for this constraint. More...
 
const MooseVariablevariable () const override
 The variable number that this object operates on. More...
 
Real secondaryResidual () const
 
void residualSetup () override
 Gets called just before the residual is computed and before this object is asked to do its job. More...
 
virtual const std::unordered_set< unsigned int > & getMatPropDependencies () const
 
virtual bool isExplicitConstraint () const
 Whether (contact) constraint is of 'explicit dynamics' type. More...
 
virtual void overwriteBoundaryVariables (NumericVector< Number > &, const Node &) const
 Allows for overwriting boundary variables (explicit dynamics contact). More...
 
std::set< SubdomainIDgetSecondaryConnectedBlocks () const
 
virtual bool addCouplingEntriesToJacobian ()
 
virtual void subdomainSetup () override final
 Gets called when the subdomain changes (i.e. More...
 
virtual void residualEnd ()
 
void prepareNeighborShapes (unsigned int var_num)
 Prepare neighbor shape functions. More...
 
virtual void computeResidualAndJacobian ()
 Compute this object's contribution to the residual and Jacobian simultaneously. More...
 
virtual void computeOffDiagJacobianScalar (unsigned int)
 Computes jacobian block with respect to a scalar variable. More...
 
virtual void computeNonlocalJacobian ()
 Compute this object's contribution to the diagonal Jacobian entries corresponding to nonlocal dofs of the variable. More...
 
virtual void computeNonlocalOffDiagJacobian (unsigned int)
 Computes Jacobian entries corresponding to nonlocal dofs of the jvar. More...
 
const SubProblemsubProblem () const
 Returns a reference to the SubProblem for which this Kernel is active. More...
 
virtual void prepareShapes (unsigned int var_num)
 Prepare shape functions. More...
 
virtual bool enabled () const
 Return the enabled status of the object. More...
 
MooseAppgetMooseApp () const
 Get the MooseApp this class is associated with. More...
 
const std::string & type () const
 Get the type of this class. More...
 
virtual const std::string & name () const
 Get the name of the class. More...
 
std::string typeAndName () const
 Get the class's combined type and name; useful in error handling. More...
 
std::string errorPrefix (const std::string &error_type) const
 
void callMooseError (std::string msg, const bool with_prefix) const
 Calls moose error with the message msg. More...
 
MooseObjectParameterName uniqueParameterName (const std::string &parameter_name) const
 The unique parameter name of a valid parameter of this object for accessing parameter controls. More...
 
const InputParametersparameters () const
 Get the parameters of the object. More...
 
MooseObjectName uniqueName () const
 The unique name for accessing input parameters of this object in the InputParameterWarehouse. More...
 
template<typename T >
const T & getParam (const std::string &name) const
 Retrieve a parameter for the object. More...
 
template<typename T1 , typename T2 >
std::vector< std::pair< T1, T2 > > getParam (const std::string &param1, const std::string &param2) const
 Retrieve two parameters and provide pair of parameters for the object. More...
 
template<typename T >
const T & getRenamedParam (const std::string &old_name, const std::string &new_name) const
 Retrieve a renamed parameter for the object. More...
 
template<typename T >
getCheckedPointerParam (const std::string &name, const std::string &error_string="") const
 Verifies that the requested parameter exists and is not NULL and returns it to the caller. More...
 
bool isParamValid (const std::string &name) const
 Test if the supplied parameter is valid. More...
 
bool isParamSetByUser (const std::string &nm) const
 Test if the supplied parameter is set by a user, as opposed to not set or set to default. More...
 
template<typename... Args>
void paramError (const std::string &param, Args... args) const
 Emits an error prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message. More...
 
template<typename... Args>
void paramWarning (const std::string &param, Args... args) const
 Emits a warning prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message. More...
 
template<typename... Args>
void paramInfo (const std::string &param, Args... args) const
 Emits an informational message prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message. More...
 
void connectControllableParams (const std::string &parameter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const
 Connect controllable parameter of this action with the controllable parameters of the objects added by this action. More...
 
template<typename... Args>
void mooseError (Args &&... args) const
 Emits an error prefixed with object name and type. More...
 
template<typename... Args>
void mooseErrorNonPrefixed (Args &&... args) const
 Emits an error without the prefixing included in mooseError(). More...
 
template<typename... Args>
void mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const
 Emits a documented error with object name and type. More...
 
template<typename... Args>
void mooseWarning (Args &&... args) const
 Emits a warning prefixed with object name and type. More...
 
template<typename... Args>
void mooseWarningNonPrefixed (Args &&... args) const
 Emits a warning without the prefixing included in mooseWarning(). More...
 
template<typename... Args>
void mooseDeprecated (Args &&... args) const
 
template<typename... Args>
void mooseInfo (Args &&... args) const
 
const Parallel::Communicator & comm () const
 
processor_id_type n_processors () const
 
processor_id_type processor_id () const
 
std::string getDataFileName (const std::string &param) const
 Returns the path of a data file for a given FileName type parameter, searching (in the following order) More...
 
std::string getDataFileNameByName (const std::string &name, const std::string *param=nullptr) const
 Returns the path of a data file for a given relative file path. More...
 
virtual void initialSetup ()
 Gets called at the beginning of the simulation before this object is asked to do its job. More...
 
virtual void timestepSetup ()
 Gets called at the beginning of the timestep before this object is asked to do its job. More...
 
virtual void jacobianSetup ()
 Gets called just before the Jacobian is computed and before this object is asked to do its job. More...
 
virtual void customSetup (const ExecFlagType &)
 Gets called in FEProblemBase::execute() for execute flags other than initial, timestep_begin, nonlinear, linear and subdomain. More...
 
const ExecFlagEnumgetExecuteOnEnum () const
 Return the execute on MultiMooseEnum for this object. More...
 
const FunctiongetFunction (const std::string &name) const
 Get a function with a given name. More...
 
const FunctiongetFunctionByName (const FunctionName &name) const
 Get a function with a given name. More...
 
bool hasFunction (const std::string &param_name) const
 Determine if the function exists. More...
 
bool hasFunctionByName (const FunctionName &name) const
 Determine if the function exists. More...
 
UserObjectName getUserObjectName (const std::string &param_name) const
 
template<class T >
const T & getUserObject (const std::string &param_name, bool is_dependency=true) const
 Get an user object with a given parameter param_name. More...
 
template<class T >
const T & getUserObjectByName (const UserObjectName &object_name, bool is_dependency=true) const
 Get an user object with the name object_name. More...
 
const UserObjectgetUserObjectBase (const std::string &param_name, bool is_dependency=true) const
 Get an user object with a given parameter param_name. More...
 
const UserObjectgetUserObjectBaseByName (const UserObjectName &object_name, bool is_dependency=true) const
 Get an user object with the name object_name. More...
 
bool isImplicit ()
 
bool isDefaultPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 Determine whether or not the Postprocessor is a default value. More...
 
bool hasPostprocessor (const std::string &param_name, const unsigned int index=0) const
 Determine if the Postprocessor data exists. More...
 
bool hasPostprocessorByName (const PostprocessorName &name) const
 Determine if the Postprocessor data exists. More...
 
std::size_t coupledPostprocessors (const std::string &param_name) const
 Returns number of Postprocessors coupled under parameter name. More...
 
const PostprocessorName & getPostprocessorName (const std::string &param_name, const unsigned int index=0) const
 Get the name of a postprocessor. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name) const
 DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the value of a VectorPostprocessor. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the value of the VectorPostprocessor. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name) const
 DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the old value of a VectorPostprocessor. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast. More...
 
const VectorPostprocessorValuegetVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the old value of a VectorPostprocessor. More...
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name) const
 Return the scatter value for the post processor. More...
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 Return the scatter value for the post processor. More...
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name) const
 Return the old scatter value for the post processor. More...
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 Return the old scatter value for the post processor. More...
 
bool hasVectorPostprocessor (const std::string &param_name, const std::string &vector_name) const
 Determine if the VectorPostprocessor data exists by parameter. More...
 
bool hasVectorPostprocessor (const std::string &param_name) const
 Determine if the VectorPostprocessor exists by parameter. More...
 
bool hasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 Determine if the VectorPostprocessor data exists by name. More...
 
bool hasVectorPostprocessorByName (const VectorPostprocessorName &name) const
 Determine if the VectorPostprocessor exists by name. More...
 
const VectorPostprocessorName & getVectorPostprocessorName (const std::string &param_name) const
 Get the name of a VectorPostprocessor associated with a parameter. More...
 
void setRandomResetFrequency (ExecFlagType exec_flag)
 This interface should be called from a derived class to enable random number generation in this object. More...
 
unsigned long getRandomLong () const
 Returns the next random number (long) from the generator tied to this object (elem/node). More...
 
Real getRandomReal () const
 Returns the next random number (Real) from the generator tied to this object (elem/node). More...
 
unsigned int getSeed (std::size_t id)
 Get the seed for the passed in elem/node id. More...
 
unsigned int getMasterSeed () const
 
bool isNodal () const
 
ExecFlagType getResetOnTime () const
 
void setRandomDataPointer (RandomData *random_data)
 
virtual void meshChanged ()
 Called on this object when the mesh changes. More...
 
void useVectorTag (const TagName &tag_name, VectorTagsKey)
 
void useVectorTag (TagID tag_id, VectorTagsKey)
 
void useMatrixTag (const TagName &tag_name, MatrixTagsKey)
 
void useMatrixTag (TagID tag_id, MatrixTagsKey)
 
bool isVectorTagged ()
 
bool isMatrixTagged ()
 
bool hasVectorTags () const
 
const std::set< TagID > & getVectorTags (VectorTagsKey) const
 
const std::set< TagID > & getMatrixTags (MatrixTagsKey) const
 
virtual const VariableValuecoupledNeighborValue (const std::string &var_name, unsigned int comp=0) const
 
std::vector< const VariableValue * > coupledNeighborValues (const std::string &var_name) const
 
std::vector< const VariableValue * > coupledNeighborValuesOld (const std::string &var_name) const
 
std::vector< const VariableValue * > coupledNeighborValuesOlder (const std::string &var_name) const
 
virtual const ADVariableValueadCoupledNeighborValue (const std::string &var_name, unsigned int comp=0) const
 Get the coupled neighbor variable value for var_name with derivative information for automatic differentiation objects. More...
 
template<bool is_ad>
const auto & coupledGenericNeighborValue (const std::string &var_name, unsigned int comp=0) const
 Retrieve the coupled neighbor variable value whether AD or not. More...
 
template<bool is_ad>
const auto & coupledGenericNeighborGradient (const std::string &var_name, unsigned int comp=0) const
 Retrieve the coupled neighbor variable gradient whether AD or not. More...
 
virtual const ADVariableValueadCoupledNeighborValueDot (const std::string &var_name, unsigned int comp=0) const
 Get the time derivative of the coupled neighbor variable value for var_name with derivative information for automatic differentiation objects. More...
 
std::vector< const ADVariableValue * > adCoupledNeighborValues (const std::string &var_name) const
 
virtual const ADVectorVariableValueadCoupledVectorNeighborValue (const std::string &var_name, unsigned int comp=0) const
 Get the coupled neighbor vector variable value for var_name with derivative information for automatic differentiation objects. More...
 
virtual const VariableValuecoupledNeighborValueDot (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborValueDotDu (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborValueOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborValueOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableGradientcoupledNeighborGradient (const std::string &var_name, unsigned int comp=0) const
 
virtual std::vector< const VariableGradient * > coupledNeighborGradients (const std::string &var_name) const
 
virtual const VariableGradientcoupledNeighborGradientOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableGradientcoupledNeighborGradientOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const ADVariableGradientadCoupledNeighborGradient (const std::string &var_name, unsigned int comp=0) const
 Get the coupled neighbor variable gradient for var_name with derivative information for automatic differentiation objects. More...
 
virtual const VectorVariableGradientcoupledVectorNeighborGradient (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableGradientcoupledVectorNeighborGradientOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VectorVariableGradientcoupledVectorNeighborGradientOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableValuecoupledArrayNeighborValue (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableGradientcoupledArrayNeighborGradient (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableGradientcoupledArrayNeighborGradientOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const ArrayVariableGradientcoupledArrayNeighborGradientOlder (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableSecondcoupledNeighborSecond (const std::string &var_name, unsigned int i=0) const
 
virtual const VariableValuecoupledNeighborDofValues (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborDofValuesOld (const std::string &var_name, unsigned int comp=0) const
 
virtual const VariableValuecoupledNeighborDofValuesOlder (const std::string &var_name, unsigned int comp=0) const
 
const std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > & getCoupledVars () const
 Get the list of coupled variables. More...
 
const std::vector< MooseVariableFieldBase * > & getCoupledMooseVars () const
 Get the list of all coupled variables. More...
 
const std::vector< MooseVariable * > & getCoupledStandardMooseVars () const
 Get the list of standard coupled variables. More...
 
const std::vector< VectorMooseVariable * > & getCoupledVectorMooseVars () const
 Get the list of vector coupled variables. More...
 
const std::vector< ArrayMooseVariable * > & getCoupledArrayMooseVars () const
 Get the list of array coupled variables. More...
 
void addFEVariableCoupleableVectorTag (TagID tag)
 
void addFEVariableCoupleableMatrixTag (TagID tag)
 
std::set< TagID > & getFEVariableCoupleableVectorTags ()
 
const std::set< TagID > & getFEVariableCoupleableVectorTags () const
 
std::set< TagID > & getFEVariableCoupleableMatrixTags ()
 
const std::set< TagID > & getFEVariableCoupleableMatrixTags () const
 
auto & getWritableCoupledVariables () const
 returns a reference to the set of writable coupled variables More...
 
bool hasWritableCoupledVariables () const
 Checks whether the object has any writable coupled variables. More...
 
const ADVariableValuegetADDefaultValue (const std::string &var_name) const
 Helper method to return (and insert if necessary) the default value for Automatic Differentiation for an uncoupled variable. More...
 
const ADVectorVariableValuegetADDefaultVectorValue (const std::string &var_name) const
 Helper method to return (and insert if necessary) the default vector value for Automatic Differentiation for an uncoupled variable. More...
 
const ADVariableGradientgetADDefaultGradient () const
 Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation for an uncoupled variable. More...
 
const ADVectorVariableGradientgetADDefaultVectorGradient () const
 Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation for an uncoupled vector variable. More...
 
const ADVariableSecondgetADDefaultSecond () const
 Helper method to return (and insert if necessary) the default second derivatives for Automatic Differentiation for an uncoupled variable. More...
 
const std::vector< MooseVariableScalar * > & getCoupledMooseScalarVars ()
 Get the list of coupled scalar variables. More...
 
const std::set< TagID > & getScalarVariableCoupleableVectorTags () const
 
const std::set< TagID > & getScalarVariableCoupleableMatrixTags () const
 
const std::set< MooseVariableFieldBase * > & getMooseVariableDependencies () const
 Retrieve the set of MooseVariableFieldBase that this object depends on. More...
 
template<typename DofObjectType >
std::set< MooseVariableFieldBase * > checkAllVariables (const DofObjectType &dof_object, const std::set< MooseVariableFieldBase *> &vars_to_omit={})
 Check whether all of the variable dependencies have degree of freedom indices on the supplied degree of freedom object. More...
 
template<typename DofObjectType >
std::set< MooseVariableFieldBase * > checkVariables (const DofObjectType &dof_object, const std::set< MooseVariableFieldBase *> &vars_to_check)
 Check whether all of the supplied variables have degree of freedom indices on the supplied degree of freedom object. More...
 
MooseVariableBasemooseVariableBase () const
 Get the variable that this object is using. More...
 
MooseVariableField< Real > & mooseVariableField ()
 Return the MooseVariableField object that this interface acts on. More...
 
MooseVariableFE< Real > * mooseVariable () const
 Return the MooseVariableFE object that this interface acts on. More...
 
MooseVariableFV< Real > * mooseVariableFV () const
 Return the MooseVariableFV object that this interface acts on. More...
 
MooseLinearVariableFV< Real > * mooseLinearVariableFV () const
 Return the MooseLinearVariableFV object that this interface acts on. More...
 
bool hasUserObject (const std::string &param_name) const
 
template<class T >
bool hasUserObject (const std::string &param_name) const
 
bool hasUserObjectByName (const UserObjectName &object_name) const
 
template<class T >
bool hasUserObjectByName (const UserObjectName &object_name) const
 
const PostprocessorValuegetPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 doco-normal-methods-begin Retrieve the value of a Postprocessor or one of it's old or older values More...
 
const PostprocessorValuegetPostprocessorValueOld (const std::string &param_name, const unsigned int index=0) const
 
const PostprocessorValuegetPostprocessorValueOlder (const std::string &param_name, const unsigned int index=0) const
 
virtual const PostprocessorValuegetPostprocessorValueByName (const PostprocessorName &name) const
 Retrieve the value of the Postprocessor. More...
 
const PostprocessorValuegetPostprocessorValueOldByName (const PostprocessorName &name) const
 
const PostprocessorValuegetPostprocessorValueOlderByName (const PostprocessorName &name) const
 
bool isVectorPostprocessorDistributed (const std::string &param_name) const
 Return true if the VectorPostprocessor is marked with parallel_type as DISTRIBUTED. More...
 
bool isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const
 

Static Public Member Functions

static InputParameters validParams ()
 

Public Attributes

SparseMatrix< Number > * _jacobian
 
const ConsoleStream _console
 An instance of helper class to write streams to the Console objects. More...
 

Protected Member Functions

virtual Real computeQpSecondaryValue ()=0
 Compute the value the secondary node should have at the beginning of a timestep. More...
 
virtual Real computeQpResidual (Moose::ConstraintType type)=0
 This is the virtual that derived classes should override for computing the residual on neighboring element. More...
 
virtual Real computeQpJacobian (Moose::ConstraintJacobianType type)=0
 This is the virtual that derived classes should override for computing the Jacobian on neighboring element. More...
 
virtual Real computeQpOffDiagJacobian (Moose::ConstraintJacobianType, unsigned int)
 This is the virtual that derived classes should override for computing the off-diag Jacobian. More...
 
virtual const VariableValuecoupledSecondaryValue (const std::string &var_name, unsigned int comp=0)
 coupling interface: More...
 
virtual const VariableValuecoupledSecondaryValueOld (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableValuecoupledSecondaryValueOlder (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableGradientcoupledSecondaryGradient (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableGradientcoupledSecondaryGradientOld (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableGradientcoupledSecondaryGradientOlder (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableSecondcoupledSecondarySecond (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableValuecoupledPrimaryValue (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableValuecoupledPrimaryValueOld (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableValuecoupledPrimaryValueOlder (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableGradientcoupledPrimaryGradient (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableGradientcoupledPrimaryGradientOld (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableGradientcoupledPrimaryGradientOlder (const std::string &var_name, unsigned int comp=0)
 
virtual const VariableSecondcoupledPrimarySecond (const std::string &var_name, unsigned int comp=0)
 
const std::set< BoundaryID > & buildBoundaryIDs ()
 Builds the _boundary_ids data member and returns it. More...
 
virtual void precalculateResidual ()
 
virtual void precalculateJacobian ()
 
virtual void precalculateOffDiagJacobian (unsigned int)
 
const MooseVariableFieldBasegetVariable (unsigned int jvar_num) const
 Retrieve the variable object from our system associated with jvar_num. More...
 
virtual void addUserObjectDependencyHelper (const UserObject &) const
 Helper for deriving classes to override to add dependencies when a UserObject is requested. More...
 
Moose::StateArg determineState () const
 Create a functor state argument that corresponds to the implicit state of this object. More...
 
virtual void addPostprocessorDependencyHelper (const PostprocessorName &) const
 Helper for deriving classes to override to add dependencies when a Postprocessor is requested. More...
 
virtual void addVectorPostprocessorDependencyHelper (const VectorPostprocessorName &) const
 Helper for deriving classes to override to add dependencies when a VectorPostprocessor is requested. More...
 
template<typename T , typename... Args>
T & declareRestartableData (const std::string &data_name, Args &&... args)
 Declare a piece of data as "restartable" and initialize it. More...
 
template<typename T , typename... Args>
ManagedValue< T > declareManagedRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args)
 Declares a piece of "managed" restartable data and initialize it. More...
 
template<typename T , typename... Args>
const T & getRestartableData (const std::string &data_name) const
 Declare a piece of data as "restartable" and initialize it Similar to declareRestartableData but returns a const reference to the object. More...
 
template<typename T , typename... Args>
T & declareRestartableDataWithContext (const std::string &data_name, void *context, Args &&... args)
 Declare a piece of data as "restartable" and initialize it. More...
 
template<typename T , typename... Args>
T & declareRecoverableData (const std::string &data_name, Args &&... args)
 Declare a piece of data as "recoverable" and initialize it. More...
 
template<typename T , typename... Args>
T & declareRestartableDataWithObjectName (const std::string &data_name, const std::string &object_name, Args &&... args)
 Declare a piece of data as "restartable". More...
 
template<typename T , typename... Args>
T & declareRestartableDataWithObjectNameWithContext (const std::string &data_name, const std::string &object_name, void *context, Args &&... args)
 Declare a piece of data as "restartable". More...
 
std::string restartableName (const std::string &data_name) const
 Gets the name of a piece of restartable data given a data name, adding the system name and object name prefix. More...
 
void prepareVectorTag (Assembly &assembly, unsigned int ivar)
 Prepare data for computing element residual according to active tags. More...
 
void prepareVectorTag (Assembly &assembly, unsigned int ivar, ResidualTagType tag_type)
 Prepare vector tags in a reference residual problem context. More...
 
void prepareVectorTagNeighbor (Assembly &assembly, unsigned int ivar)
 Prepare data for computing element residual the according to active tags for DG and interface kernels. More...
 
void prepareVectorTagLower (Assembly &assembly, unsigned int ivar)
 Prepare data for computing the residual according to active tags for mortar constraints. More...
 
void prepareMatrixTag (Assembly &assembly, unsigned int ivar, unsigned int jvar)
 Prepare data for computing element jacobian according to the active tags. More...
 
void prepareMatrixTag (Assembly &assembly, unsigned int ivar, unsigned int jvar, DenseMatrix< Number > &k) const
 
void prepareMatrixTagNonlocal (Assembly &assembly, unsigned int ivar, unsigned int jvar)
 Prepare data for computing nonlocal element jacobian according to the active tags. More...
 
void prepareMatrixTagNeighbor (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type)
 Prepare data for computing element jacobian according to the active tags for DG and interface kernels. More...
 
void prepareMatrixTagNeighbor (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type, DenseMatrix< Number > &k) const
 
void prepareMatrixTagLower (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::ConstraintJacobianType type)
 Prepare data for computing the jacobian according to the active tags for mortar. More...
 
void accumulateTaggedLocalResidual ()
 Local residual blocks will be appended by adding the current local kernel residual. More...
 
void assignTaggedLocalResidual ()
 Local residual blocks will assigned as the current local kernel residual. More...
 
void accumulateTaggedLocalMatrix ()
 Local Jacobian blocks will be appended by adding the current local kernel Jacobian. More...
 
void accumulateTaggedLocalMatrix (Assembly &assembly, unsigned int ivar, unsigned int jvar, const DenseMatrix< Number > &k)
 
void accumulateTaggedLocalMatrix (Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type, const DenseMatrix< Number > &k)
 
void accumulateTaggedNonlocalMatrix ()
 Nonlocal Jacobian blocks will be appended by adding the current nonlocal kernel Jacobian. More...
 
void assignTaggedLocalMatrix ()
 Local Jacobian blocks will assigned as the current local kernel Jacobian. More...
 
template<typename Residuals , typename Indices >
void addResiduals (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 Add the provided incoming residuals corresponding to the provided dof indices. More...
 
template<typename T , typename Indices >
void addResiduals (Assembly &assembly, const DenseVector< T > &residuals, const Indices &dof_indices, Real scaling_factor)
 Add the provided incoming residuals corresponding to the provided dof indices. More...
 
template<typename Residuals , typename Indices >
void addResidualsAndJacobian (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 Add the provided incoming residuals and derivatives for the Jacobian, corresponding to the provided dof indices. More...
 
template<typename Residuals , typename Indices >
void addJacobian (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 Add the provided residual derivatives into the Jacobian for the provided dof indices. More...
 
void addJacobian (Assembly &assembly, DenseMatrix< Real > &local_k, const std::vector< dof_id_type > &row_indices, const std::vector< dof_id_type > &column_indices, Real scaling_factor)
 Add a local Jacobian matrix. More...
 
template<typename Residuals , typename Indices >
void addResidualsWithoutConstraints (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 Add the provided incoming residuals corresponding to the provided dof indices. More...
 
template<typename Residuals , typename Indices >
void addResidualsAndJacobianWithoutConstraints (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 Add the provided incoming residuals and derivatives for the Jacobian, corresponding to the provided dof indices. More...
 
template<typename Residuals , typename Indices >
void addJacobianWithoutConstraints (Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
 Add the provided residual derivatives into the Jacobian for the provided dof indices. More...
 
void addJacobianElement (Assembly &assembly, Real value, dof_id_type row_index, dof_id_type column_index, Real scaling_factor)
 Add into a single Jacobian element. More...
 
template<typename T >
void setResidual (SystemBase &sys, const T &residual, MooseVariableFE< T > &var)
 Set residual using the variables' insertion API. More...
 
void setResidual (SystemBase &sys, Real residual, dof_id_type dof_index)
 Set residual at a specified degree of freedom index. More...
 
template<typename SetResidualFunctor >
void setResidual (SystemBase &sys, SetResidualFunctor set_residual_functor)
 Set residuals using the provided functor. More...
 
PenetrationLocatorgetPenetrationLocator (const BoundaryName &primary, const BoundaryName &secondary, Order order)
 Retrieve the PentrationLocator associated with the two sides. More...
 
PenetrationLocatorgetQuadraturePenetrationLocator (const BoundaryName &primary, const BoundaryName &secondary, Order order)
 Retrieve the Quadrature PentrationLocator associated with the two sides. More...
 
NearestNodeLocatorgetNearestNodeLocator (const BoundaryName &primary, const BoundaryName &secondary)
 Retrieve the PentrationLocator associated with the two sides. More...
 
NearestNodeLocatorgetQuadratureNearestNodeLocator (const BoundaryName &primary, const BoundaryName &secondary)
 Retrieve a Quadrature NearestNodeLocator associated with the two sides. More...
 
bool requiresGeometricSearch () const
 Whether any of this interface's methods have been called, e.g. More...
 
virtual void coupledCallback (const std::string &, bool) const
 A call-back function provided by the derived object for actions before coupling a variable with functions such as coupledValue. More...
 
virtual bool isCoupled (const std::string &var_name, unsigned int i=0) const
 Returns true if a variables has been coupled as name. More...
 
virtual bool isCoupledConstant (const std::string &var_name) const
 Returns true if a variable passed as a coupled value is really a constant. More...
 
unsigned int coupledComponents (const std::string &var_name) const
 Number of coupled components. More...
 
VariableName coupledName (const std::string &var_name, unsigned int comp=0) const
 Names of the variable in the Coupleable interface. More...
 
std::vector< VariableName > coupledNames (const std::string &var_name) const
 Names of the variables in the Coupleable interface. More...
 
virtual unsigned int coupled (const std::string &var_name, unsigned int comp=0) const
 Returns the index for a coupled variable by name. More...
 
std::vector< unsigned intcoupledIndices (const std::string &var_name) const
 Returns the indices for a coupled variable's components. More...
 
virtual const VariableValuecoupledValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled variable. More...
 
std::vector< const VariableValue * > coupledValues (const std::string &var_name) const
 Returns the values for all of a coupled variable components. More...
 
std::vector< const VectorVariableValue * > coupledVectorValues (const std::string &var_name) const
 Returns the values for all of a coupled vector variable's components. More...
 
template<bool is_ad>
const GenericVariableValue< is_ad > & coupledGenericValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled variable for use in templated automatic differentiation classes. More...
 
template<>
const GenericVariableValue< false > & coupledGenericValue (const std::string &var_name, unsigned int comp) const
 
template<>
const GenericVariableValue< true > & coupledGenericValue (const std::string &var_name, unsigned int comp) const
 
template<bool is_ad>
std::vector< const GenericVariableValue< is_ad > * > coupledGenericValues (const std::string &var_name) const
 Returns the values for all of a coupled variable's components for use in templated automatic differentiation classes. More...
 
template<>
std::vector< const GenericVariableValue< false > * > coupledGenericValues (const std::string &var_name) const
 
template<>
std::vector< const GenericVariableValue< true > * > coupledGenericValues (const std::string &var_name) const
 
template<bool is_ad>
const GenericVariableValue< is_ad > & coupledGenericDofValue (const std::string &var_name, unsigned int comp=0) const
 Returns DOF value of a coupled variable for use in templated automatic differentiation classes. More...
 
template<>
const GenericVariableValue< false > & coupledGenericDofValue (const std::string &var_name, unsigned int comp) const
 
template<>
const GenericVariableValue< true > & coupledGenericDofValue (const std::string &var_name, unsigned int comp) const
 
virtual const VariableValuecoupledValueLower (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled lower-dimensional variable. More...
 
const ADVariableValueadCoupledValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled variable for use in Automatic Differentiation. More...
 
std::vector< const ADVariableValue * > adCoupledValues (const std::string &var_name) const
 Returns the values for all of a coupled variable's components for use in Automatic Differentiation. More...
 
const ADVariableValueadCoupledLowerValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled lower-dimensional variable for use in Automatic Differentiation. More...
 
const ADVectorVariableValueadCoupledVectorValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled vector variable for use in Automatic Differentiation. More...
 
std::vector< const ADVectorVariableValue * > adCoupledVectorValues (const std::string &var_name) const
 Returns the values for all of a coupled vector variable's components for use in Automatic Differentiation. More...
 
virtual const VariableValuecoupledVectorTagValue (const std::string &var_names, TagID tag, unsigned int index=0) const
 Returns value of a coupled variable for a given tag. More...
 
virtual const VariableValuecoupledVectorTagValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
std::vector< const VariableValue * > coupledVectorTagValues (const std::string &var_names, TagID tag) const
 Returns the values for all the coupled variables desired for a given tag. More...
 
std::vector< const VariableValue * > coupledVectorTagValues (const std::string &var_names, const std::string &tag_name) const
 
virtual const ArrayVariableValuecoupledVectorTagArrayValue (const std::string &var_names, TagID tag, unsigned int index=0) const
 Returns value of a coupled array variable for a given tag. More...
 
virtual const ArrayVariableValuecoupledVectorTagArrayValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
std::vector< const ArrayVariableValue * > coupledVectorTagArrayValues (const std::string &var_names, TagID tag) const
 Returns the values for all the coupled variables desired for a given tag. More...
 
std::vector< const ArrayVariableValue * > coupledVectorTagArrayValues (const std::string &var_names, const std::string &tag_name) const
 
virtual const VariableGradientcoupledVectorTagGradient (const std::string &var_names, TagID tag, unsigned int index=0) const
 Returns gradient of a coupled variable for a given tag. More...
 
virtual const VariableGradientcoupledVectorTagGradient (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
std::vector< const VariableGradient * > coupledVectorTagGradients (const std::string &var_names, TagID tag) const
 Returns gradients for all the coupled variables desired for a given tag. More...
 
std::vector< const VariableGradient * > coupledVectorTagGradients (const std::string &var_names, const std::string &tag_name) const
 
virtual const ArrayVariableGradientcoupledVectorTagArrayGradient (const std::string &var_names, TagID tag, unsigned int index=0) const
 Returns gradient of a coupled array variable for a given tag. More...
 
virtual const ArrayVariableGradientcoupledVectorTagArrayGradient (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
std::vector< const ArrayVariableGradient * > coupledVectorTagArrayGradients (const std::string &var_names, TagID tag) const
 Returns gradients for all the coupled variables desired for a given tag. More...
 
std::vector< const ArrayVariableGradient * > coupledVectorTagArrayGradients (const std::string &var_names, const std::string &tag_name) const
 
virtual const VariableValuecoupledVectorTagDofValue (const std::string &var_name, TagID tag, unsigned int index=0) const
 Returns dof value of a coupled variable for a given tag. More...
 
virtual const VariableValuecoupledVectorTagDofValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
const ArrayVariableValuecoupledVectorTagArrayDofValue (const std::string &var_name, const std::string &tag_name, unsigned int comp=0) const
 Returns evaluations of a tagged vector at the requested variable's degree of freedom indices. More...
 
std::vector< const VariableValue * > coupledVectorTagDofValues (const std::string &var_names, TagID tag) const
 Returns the dof values for all the coupled variables desired for a given tag. More...
 
std::vector< const VariableValue * > coupledVectorTagDofValues (const std::string &var_names, const std::string &tag_name) const
 
virtual const VariableValuecoupledMatrixTagValue (const std::string &var_names, TagID tag, unsigned int index=0) const
 Returns value of a coupled variable for a given tag. More...
 
virtual const VariableValuecoupledMatrixTagValue (const std::string &var_names, const std::string &tag_name, unsigned int index=0) const
 
std::vector< const VariableValue * > coupledMatrixTagValues (const std::string &var_names, TagID tag) const
 Returns the diagonal matrix values for all the coupled variables desired for a given tag. More...
 
std::vector< const VariableValue * > coupledMatrixTagValues (const std::string &var_names, const std::string &tag_name) const
 
virtual const VectorVariableValuecoupledVectorValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled vector variable. More...
 
virtual const ArrayVariableValuecoupledArrayValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled array variable. More...
 
std::vector< const ArrayVariableValue * > coupledArrayValues (const std::string &var_name) const
 Returns the values for all of a coupled array variable's components. More...
 
MooseWritableVariablewritableVariable (const std::string &var_name, unsigned int comp=0)
 Returns a writable MooseVariable object for a nodal or elemental variable. More...
 
virtual VariableValuewritableCoupledValue (const std::string &var_name, unsigned int comp=0)
 Returns a writable reference to a coupled variable for writing to multiple AuxVariables from a single AuxKernel or a UserObject. More...
 
void checkWritableVar (MooseWritableVariable *var)
 Checks that the passed in variable is only accessed writable by one object in a given subdomain. More...
 
virtual const VariableValuecoupledValueOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from previous time step of a coupled variable. More...
 
std::vector< const VariableValue * > coupledValuesOld (const std::string &var_name) const
 Returns the old values for all of a coupled variable's components. More...
 
virtual const VariableValuecoupledValueOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from two time steps previous of a coupled variable. More...
 
std::vector< const VariableValue * > coupledValuesOlder (const std::string &var_name) const
 Returns the older values for all of a coupled variable's components. More...
 
virtual const VariableValuecoupledValuePreviousNL (const std::string &var_name, unsigned int comp=0) const
 Returns value of previous Newton iterate of a coupled variable. More...
 
virtual const VectorVariableValuecoupledVectorValueOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from previous time step of a coupled vector variable. More...
 
virtual const VectorVariableValuecoupledVectorValueOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from two time steps previous of a coupled vector variable. More...
 
virtual const ArrayVariableValuecoupledArrayValueOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from previous time step of a coupled array variable. More...
 
virtual const ArrayVariableValuecoupledArrayValueOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old value from two time steps previous of a coupled array variable. More...
 
virtual const VariableGradientcoupledGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled variable. More...
 
std::vector< const VariableGradient * > coupledGradients (const std::string &var_name) const
 Returns the gradients for all of a coupled variable's components. More...
 
const ADVariableGradientadCoupledGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled variable for use in Automatic Differentiation. More...
 
const ADVariableGradientadCoupledGradientDot (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled variable's time derivative for use in Automatic Differentiation. More...
 
std::vector< const ADVariableGradient * > adCoupledGradients (const std::string &var_name) const
 Returns the gradients for all of a coupled variable's components for use in Automatic Differentiation. More...
 
template<bool is_ad>
const GenericVariableGradient< is_ad > & coupledGenericGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled variable for use in templated automatic differentiation. More...
 
template<>
const GenericVariableGradient< false > & coupledGenericGradient (const std::string &var_name, unsigned int comp) const
 
template<>
const GenericVariableGradient< true > & coupledGenericGradient (const std::string &var_name, unsigned int comp) const
 
template<bool is_ad>
std::vector< const GenericVariableGradient< is_ad > * > coupledGenericGradients (const std::string &var_name) const
 Returns the gradients for all of a coupled variable's components for use in templated automatic differentiation. More...
 
template<>
std::vector< const GenericVariableGradient< false > * > coupledGenericGradients (const std::string &var_name) const
 
template<>
std::vector< const GenericVariableGradient< true > * > coupledGenericGradients (const std::string &var_name) const
 
const ADVectorVariableGradientadCoupledVectorGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled vector variable for use in Automatic Differentiation. More...
 
const ADVariableSecondadCoupledSecond (const std::string &var_name, unsigned int comp=0) const
 Returns second derivatives of a coupled variable for use in Automatic Differentiation. More...
 
const ADVectorVariableSecondadCoupledVectorSecond (const std::string &var_name, unsigned int comp=0) const
 Returns second derivatives of a coupled vector variable for use in Automatic Differentiation. More...
 
virtual const VariableGradientcoupledGradientOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from previous time step of a coupled variable. More...
 
std::vector< const VariableGradient * > coupledGradientsOld (const std::string &var_name) const
 Returns the old gradients for all of a coupled variable's components. More...
 
virtual const VariableGradientcoupledGradientOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from two time steps previous of a coupled variable. More...
 
virtual const VariableGradientcoupledGradientPreviousNL (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled variable for previous Newton iterate. More...
 
virtual const VariableGradientcoupledGradientDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of the gradient of a coupled variable. More...
 
virtual const VariableGradientcoupledGradientDotDot (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of the gradient of a coupled variable. More...
 
virtual const VectorVariableGradientcoupledVectorGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled vector variable. More...
 
virtual const VectorVariableGradientcoupledVectorGradientOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from previous time step of a coupled vector variable. More...
 
virtual const VectorVariableGradientcoupledVectorGradientOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from two time steps previous of a coupled vector variable. More...
 
virtual const ArrayVariableGradientcoupledArrayGradient (const std::string &var_name, unsigned int comp=0) const
 Returns gradient of a coupled array variable. More...
 
virtual const ArrayVariableGradientcoupledArrayGradientOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from previous time step of a coupled array variable. More...
 
virtual const ArrayVariableGradientcoupledArrayGradientOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old gradient from two time steps previous of a coupled array variable. More...
 
virtual const ArrayVariableGradientcoupledArrayGradientDot (const std::string &var_name, unsigned int comp=0) const
 Retun a gradient of a coupled array variable's time derivative. More...
 
virtual const VectorVariableCurlcoupledCurl (const std::string &var_name, unsigned int comp=0) const
 Returns curl of a coupled variable. More...
 
virtual const VectorVariableCurlcoupledCurlOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old curl from previous time step of a coupled variable. More...
 
virtual const VectorVariableCurlcoupledCurlOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old curl from two time steps previous of a coupled variable. More...
 
virtual const VariableSecondcoupledSecond (const std::string &var_name, unsigned int comp=0) const
 Returns second spatial derivatives of a coupled variable. More...
 
virtual const VariableSecondcoupledSecondOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old second spatial derivatives from previous time step of a coupled variable. More...
 
virtual const VariableSecondcoupledSecondOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old second derivative from two time steps previous of a coupled variable. More...
 
virtual const VariableSecondcoupledSecondPreviousNL (const std::string &var_name, unsigned int comp=0) const
 Returns second derivative of a coupled variable for the previous Newton iterate. More...
 
virtual const VariableValuecoupledDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled variable. More...
 
std::vector< const VariableValue * > coupledDots (const std::string &var_name) const
 Returns the time derivatives for all of a coupled variable's components. More...
 
virtual const VariableValuecoupledDotDot (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledDotOld (const std::string &var_name, unsigned int comp=0) const
 Old time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledDotDotOld (const std::string &var_name, unsigned int comp=0) const
 Old second time derivative of a coupled variable. More...
 
const ADVariableValueadCoupledDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled variable for ad simulations. More...
 
std::vector< const ADVariableValue * > adCoupledDots (const std::string &var_name) const
 Returns the time derivatives for all of a coupled variable's components for ad simulations. More...
 
const ADVariableValueadCoupledDotDot (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled variable for ad simulations. More...
 
const ADVectorVariableValueadCoupledVectorDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a vector coupled variable for ad simulations. More...
 
virtual const VectorVariableValuecoupledVectorDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled vector variable. More...
 
virtual const VectorVariableValuecoupledVectorDotDot (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled vector variable. More...
 
virtual const VectorVariableValuecoupledVectorDotOld (const std::string &var_name, unsigned int comp=0) const
 Old time derivative of a coupled vector variable. More...
 
virtual const VectorVariableValuecoupledVectorDotDotOld (const std::string &var_name, unsigned int comp=0) const
 Old second time derivative of a coupled vector variable. More...
 
virtual const VariableValuecoupledVectorDotDu (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled vector variable with respect to the coefficients. More...
 
virtual const VariableValuecoupledVectorDotDotDu (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled vector variable with respect to the coefficients. More...
 
virtual const ArrayVariableValuecoupledArrayDot (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled array variable. More...
 
virtual const ArrayVariableValuecoupledArrayDotDot (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled array variable. More...
 
virtual const ArrayVariableValuecoupledArrayDotOld (const std::string &var_name, unsigned int comp=0) const
 Old time derivative of a coupled array variable. More...
 
virtual const ArrayVariableValuecoupledArrayDotDotOld (const std::string &var_name, unsigned int comp=0) const
 Old second time derivative of a coupled array variable. More...
 
virtual const VariableValuecoupledDotDu (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled variable with respect to the coefficients. More...
 
virtual const VariableValuecoupledDotDotDu (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a coupled variable with respect to the coefficients. More...
 
const VariableValuecoupledArrayDotDu (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a coupled array variable with respect to the coefficients. More...
 
template<typename T >
const T & coupledNodalValue (const std::string &var_name, unsigned int comp=0) const
 Returns nodal values of a coupled variable. More...
 
template<typename T >
const Moose::ADType< T >::typeadCoupledNodalValue (const std::string &var_name, unsigned int comp=0) const
 Returns AD nodal values of a coupled variable. More...
 
template<typename T >
const T & coupledNodalValueOld (const std::string &var_name, unsigned int comp=0) const
 Returns an old nodal value from previous time step of a coupled variable. More...
 
template<typename T >
const T & coupledNodalValueOlder (const std::string &var_name, unsigned int comp=0) const
 Returns an old nodal value from two time steps previous of a coupled variable. More...
 
template<typename T >
const T & coupledNodalValuePreviousNL (const std::string &var_name, unsigned int comp=0) const
 Returns nodal values of a coupled variable for previous Newton iterate. More...
 
template<typename T >
const T & coupledNodalDot (const std::string &var_name, unsigned int comp=0) const
 Nodal values of time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledNodalDotDot (const std::string &var_name, unsigned int comp=0) const
 Nodal values of second time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledNodalDotOld (const std::string &var_name, unsigned int comp=0) const
 Nodal values of old time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledNodalDotDotOld (const std::string &var_name, unsigned int comp=0) const
 Nodal values of old second time derivative of a coupled variable. More...
 
virtual const VariableValuecoupledDofValues (const std::string &var_name, unsigned int comp=0) const
 Returns DoFs in the current solution vector of a coupled variable for the local element. More...
 
std::vector< const VariableValue * > coupledAllDofValues (const std::string &var_name) const
 Returns DoFs in the current solution vector of all of a coupled variable's components for the local element. More...
 
virtual const VariableValuecoupledDofValuesOld (const std::string &var_name, unsigned int comp=0) const
 Returns DoFs in the old solution vector of a coupled variable for the local element. More...
 
std::vector< const VariableValue * > coupledAllDofValuesOld (const std::string &var_name) const
 Returns DoFs in the old solution vector of all of a coupled variable's components for the local element. More...
 
virtual const VariableValuecoupledDofValuesOlder (const std::string &var_name, unsigned int comp=0) const
 Returns DoFs in the older solution vector of a coupled variable for the local element. More...
 
std::vector< const VariableValue * > coupledAllDofValuesOlder (const std::string &var_name) const
 Returns DoFs in the older solution vector of all of a coupled variable's components for the local element. More...
 
virtual const ArrayVariableValuecoupledArrayDofValues (const std::string &var_name, unsigned int comp=0) const
 Returns DoFs in the current solution vector of a coupled array variable for the local element. More...
 
virtual const ADVariableValueadCoupledDofValues (const std::string &var_name, unsigned int comp=0) const
 Returns DOF value of a coupled variable for use in Automatic Differentiation. More...
 
const ADVariableValueadZeroValue () const
 method that returns _zero to RESIDUAL computing objects and _ad_zero to JACOBIAN computing objects More...
 
const ADVariableGradientadZeroGradient () const
 method that returns _grad_zero to RESIDUAL computing objects and _ad_grad_zero to JACOBIAN computing objects More...
 
const ADVariableSecondadZeroSecond () const
 Retrieve a zero second for automatic differentiation. More...
 
template<bool is_ad>
const GenericVariableValue< is_ad > & genericZeroValue ()
 Returns zero value templated with automatic differentiation boolean. More...
 
template<>
const GenericVariableValue< false > & genericZeroValue ()
 
template<>
const GenericVariableValue< true > & genericZeroValue ()
 
template<bool is_ad>
const GenericVariableGradient< is_ad > & genericZeroGradient ()
 Returns zero gradient templated with automatic differentiation boolean. More...
 
template<>
const GenericVariableGradient< false > & genericZeroGradient ()
 
template<>
const GenericVariableGradient< true > & genericZeroGradient ()
 
template<bool is_ad>
const GenericVariableSecond< is_ad > & genericZeroSecond ()
 Returns zero second derivative templated with automatic differentiation boolean. More...
 
template<>
const GenericVariableSecond< false > & genericZeroSecond ()
 
template<>
const GenericVariableSecond< true > & genericZeroSecond ()
 
bool checkVar (const std::string &var_name, unsigned int comp=0, unsigned int comp_bound=0) const
 Check that the right kind of variable is being coupled in. More...
 
const MooseVariableFieldBasegetFEVar (const std::string &var_name, unsigned int comp) const
 Deprecated method. More...
 
const MooseVariableFieldBasegetFieldVar (const std::string &var_name, unsigned int comp) const
 
MooseVariableFieldBasegetFieldVar (const std::string &var_name, unsigned int comp)
 
template<typename T >
const T * getVarHelper (const std::string &var_name, unsigned int comp) const
 Helper that that be used to retrieve a variable of arbitrary type T. More...
 
template<typename T >
T * getVarHelper (const std::string &var_name, unsigned int comp)
 Helper that can be used to retrieve a variable of arbitrary type T. More...
 
MooseVariablegetVar (const std::string &var_name, unsigned int comp)
 Extract pointer to a coupled variable. More...
 
const MooseVariablegetVar (const std::string &var_name, unsigned int comp) const
 Extract pointer to a coupled variable. More...
 
VectorMooseVariablegetVectorVar (const std::string &var_name, unsigned int comp)
 Extract pointer to a coupled vector variable. More...
 
const VectorMooseVariablegetVectorVar (const std::string &var_name, unsigned int comp) const
 Extract pointer to a coupled vector variable. More...
 
ArrayMooseVariablegetArrayVar (const std::string &var_name, unsigned int comp)
 Extract pointer to a coupled array variable. More...
 
const ArrayMooseVariablegetArrayVar (const std::string &var_name, unsigned int comp) const
 Extract pointer to a coupled array variable. More...
 
void validateExecutionerType (const std::string &name, const std::string &fn_name) const
 Checks to make sure that the current Executioner has set "_is_transient" when old/older values are coupled in. More...
 
template<typename T , typename Func >
std::vector< T > coupledVectorHelper (const std::string &var_name, const Func &func) const
 
bool isCoupledScalar (const std::string &var_name, unsigned int i=0) const
 Returns true if a variables has been coupled_as name. More...
 
unsigned int coupledScalarComponents (const std::string &var_name) const
 Return the number of components to the coupled scalar variable. More...
 
unsigned int coupledScalar (const std::string &var_name, unsigned int comp=0) const
 Returns the index for a scalar coupled variable by name. More...
 
Order coupledScalarOrder (const std::string &var_name, unsigned int comp=0) const
 Returns the order for a scalar coupled variable by name. More...
 
const VariableValuecoupledScalarValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a scalar coupled variable. More...
 
const ADVariableValueadCoupledScalarValue (const std::string &var_name, unsigned int comp=0) const
 Returns AD value of a scalar coupled variable. More...
 
template<bool is_ad>
const GenericVariableValue< is_ad > & coupledGenericScalarValue (const std::string &var_name, unsigned int comp=0) const
 Returns value of a coupled scalar variable for use in templated automatic differentiation classes. More...
 
template<>
const GenericVariableValue< false > & coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const
 
template<>
const GenericVariableValue< true > & coupledGenericScalarValue (const std::string &var_name, const unsigned int comp) const
 
const VariableValuecoupledVectorTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const
 Returns value of a scalar coupled variable. More...
 
const VariableValuecoupledMatrixTagScalarValue (const std::string &var_name, TagID tag, unsigned int comp=0) const
 Returns value of a scalar coupled variable. More...
 
const VariableValuecoupledScalarValueOld (const std::string &var_name, unsigned int comp=0) const
 Returns the old (previous time step) value of a scalar coupled variable. More...
 
const VariableValuecoupledScalarValueOlder (const std::string &var_name, unsigned int comp=0) const
 Returns the older (two time steps previous) value of a scalar coupled variable. More...
 
const VariableValuecoupledScalarDot (const std::string &var_name, unsigned int comp=0) const
 Returns the time derivative of a scalar coupled variable. More...
 
const ADVariableValueadCoupledScalarDot (const std::string &var_name, unsigned int comp=0) const
 Returns the time derivative of a scalar coupled variable, including its dependence on the nonlinear degrees of freedom through automatic differentiation. More...
 
const VariableValuecoupledScalarDotDot (const std::string &var_name, unsigned int comp=0) const
 Returns the second time derivative of a scalar coupled variable. More...
 
const VariableValuecoupledScalarDotOld (const std::string &var_name, unsigned int comp=0) const
 Returns the old time derivative of a scalar coupled variable. More...
 
const VariableValuecoupledScalarDotDotOld (const std::string &var_name, unsigned int comp=0) const
 Returns the old second time derivative of a scalar coupled variable. More...
 
const VariableValuecoupledScalarDotDu (const std::string &var_name, unsigned int comp=0) const
 Time derivative of a scalar coupled variable with respect to the coefficients. More...
 
const VariableValuecoupledScalarDotDotDu (const std::string &var_name, unsigned int comp=0) const
 Second time derivative of a scalar coupled variable with respect to the coefficients. More...
 
const MooseVariableScalargetScalarVar (const std::string &var_name, unsigned int comp) const
 Extract pointer to a scalar coupled variable. More...
 
void addMooseVariableDependency (MooseVariableFieldBase *var)
 Call this function to add the passed in MooseVariableFieldBase as a variable that this object depends on. More...
 
void addMooseVariableDependency (const std::vector< MooseVariableFieldBase *> &vars)
 
virtual const OutputTools< Real >::VariableValueneighborValue ()
 The value of the variable this object is operating on evaluated on the "neighbor" element. More...
 
const VectorVariableValueneighborValue ()
 
virtual const OutputTools< Real >::VariableValueneighborValueOld ()
 The old value of the variable this object is operating on evaluated on the "neighbor" element. More...
 
const VectorVariableValueneighborValueOld ()
 
virtual const OutputTools< Real >::VariableValueneighborValueOlder ()
 The older value of the variable this object is operating on evaluated on the "neighbor" element. More...
 
const VectorVariableValueneighborValueOlder ()
 
virtual const OutputTools< Real >::VariableGradientneighborGradient ()
 The gradient of the variable this object is operating on evaluated on the "neighbor" element. More...
 
virtual const OutputTools< Real >::VariableGradientneighborGradientOld ()
 The old gradient of the variable this object is operating on evaluated on the "neighbor" element. More...
 
virtual const OutputTools< Real >::VariableGradientneighborGradientOlder ()
 The older gradient of the variable this object is operating on evaluated on the "neighbor" element. More...
 
virtual const OutputTools< Real >::VariableSecondneighborSecond ()
 The second derivative of the variable this object is operating on evaluated on the "neighbor" element. More...
 
virtual const OutputTools< Real >::VariableSecondneighborSecondOld ()
 The old second derivative of the variable this object is operating on evaluated on the "neighbor" element. More...
 
virtual const OutputTools< Real >::VariableSecondneighborSecondOlder ()
 The older second derivative of the variable this object is operating on evaluated on the "neighbor" element. More...
 
virtual const OutputTools< Real >::VariableTestSecondneighborSecondTest ()
 The second derivative of the neighbor's test function. More...
 
virtual const OutputTools< Real >::VariablePhiSecondneighborSecondPhi ()
 The second derivative of the neighbor's shape function. More...
 
virtual const OutputTools< Real >::VariableValuevalue ()
 The value of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableValuevalueOld ()
 The old value of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableValuevalueOlder ()
 The older value of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableValuedot ()
 The time derivative of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableValuedotDot ()
 The second time derivative of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableValuedotOld ()
 The old time derivative of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableValuedotDotOld ()
 The old second time derivative of the variable this object is operating on. More...
 
virtual const VariableValuedotDu ()
 The derivative of the time derivative of the variable this object is operating on with respect to this variable's coefficients. More...
 
virtual const VariableValuedotDotDu ()
 The derivative of the second time derivative of the variable this object is operating on with respect to this variable's coefficients. More...
 
virtual const OutputTools< Real >::VariableGradientgradient ()
 The gradient of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableGradientgradientOld ()
 The old gradient of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableGradientgradientOlder ()
 The older gradient of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableSecondsecond ()
 The second derivative of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableSecondsecondOld ()
 The old second derivative of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableSecondsecondOlder ()
 The older second derivative of the variable this object is operating on. More...
 
virtual const OutputTools< Real >::VariableTestSecondsecondTest ()
 The second derivative of the test function. More...
 
virtual const OutputTools< Real >::VariableTestSecondsecondTestFace ()
 The second derivative of the test function on the current face. More...
 
virtual const OutputTools< Real >::VariablePhiSecondsecondPhi ()
 The second derivative of the trial function. More...
 
virtual const OutputTools< Real >::VariablePhiSecondsecondPhiFace ()
 The second derivative of the trial function on the current face. More...
 

Protected Attributes

BoundaryID _secondary
 Boundary ID for the secondary surface. More...
 
BoundaryID _primary
 Boundary ID for the primary surface. More...
 
MooseVariable_var
 
const MooseArray< Point > & _primary_q_point
 
const QBase *const & _primary_qrule
 
std::set< BoundaryID_boundary_ids
 the union of the secondary and primary boundary ids More...
 
PenetrationLocator_penetration_locator
 
const Node *const & _current_node
 current node being processed More...
 
const Elem *const & _current_primary
 
const VariableValue_u_secondary
 Value of the unknown variable this BC is action on. More...
 
VariablePhiValue _phi_secondary
 Shape function on the secondary side. This will always. More...
 
VariableTestValue _test_secondary
 Shape function on the secondary side. This will always only have one entry and that entry will always be "1". More...
 
MooseVariable_primary_var
 Primary side variable. More...
 
unsigned int _primary_var_num
 Number for the primary variable. More...
 
const VariablePhiValue_phi_primary
 Side shape function. More...
 
const VariablePhiGradient_grad_phi_primary
 Gradient of side shape function. More...
 
const VariableTestValue_test_primary
 Side test function. More...
 
const VariableTestGradient_grad_test_primary
 Gradient of side shape function. More...
 
const VariableValue_u_primary
 Holds the current solution at the current quadrature point. More...
 
const VariableGradient_grad_u_primary
 Holds the current solution gradient at the current quadrature point. More...
 
const DofMap & _dof_map
 DOF map. More...
 
const std::map< dof_id_type, std::vector< dof_id_type > > & _node_to_elem_map
 
bool _overwrite_secondary_residual
 Whether or not the secondary's residual should be overwritten. More...
 
const MooseArray< Real > & _primary_JxW
 JxW on the primary face. More...
 
bool _secondary_residual_computed
 Whether the secondary residual has been computed. More...
 
Real _secondary_residual
 The value of the secondary residual. More...
 
const std::unordered_set< unsigned int_empty_mat_prop_deps
 An empty material property dependency set for use with getMatPropDependencies. More...
 
std::vector< dof_id_type_connected_dof_indices
 
DenseMatrix< Number_Kne
 The Jacobian corresponding to the derivatives of the neighbor/primary residual with respect to the elemental/secondary degrees of freedom. More...
 
DenseMatrix< Number_Kee
 The Jacobian corresponding to the derivatives of the elemental/secondary residual with respect to the elemental/secondary degrees of freedom. More...
 
DenseMatrix< Number_Ken
 The Jacobian corresponding to the derivatives of the elemental/secondary residual with respect to the neighbor/primary degrees of freedom. More...
 
unsigned int _i
 
unsigned int _j
 
unsigned int _qp
 
SubProblem_subproblem
 Reference to this kernel's SubProblem. More...
 
FEProblemBase_fe_problem
 Reference to this kernel's FEProblemBase. More...
 
SystemBase_sys
 Reference to the EquationSystem object. More...
 
THREAD_ID _tid
 The thread ID for this kernel. More...
 
Assembly_assembly
 Reference to this Kernel's assembly object. More...
 
MooseMesh_mesh
 Reference to this Kernel's mesh object. More...
 
const bool & _enabled
 Reference to the "enable" InputParameters, used by Controls for toggling on/off MooseObjects. More...
 
MooseApp_app
 The MOOSE application this is associated with. More...
 
const std::string _type
 The type of this class. More...
 
const std::string _name
 The name of this class. More...
 
const InputParameters_pars
 Parameters of this object, references the InputParameters stored in the InputParametersWarehouse. More...
 
Factory_factory
 The Factory associated with the MooseApp. More...
 
ActionFactory_action_factory
 Builds Actions. More...
 
const Parallel::Communicator & _communicator
 
const ExecFlagEnum_execute_enum
 Execute settings for this object. More...
 
const ExecFlagType_current_execute_flag
 Reference to FEProblemBase. More...
 
const InputParameters_ti_params
 
FEProblemBase_ti_feproblem
 
bool _is_implicit
 If the object is using implicit or explicit form. More...
 
Real_t
 Time. More...
 
int_t_step
 The number of the time step. More...
 
Real_dt
 Time step size. More...
 
Real_dt_old
 Size of the old time step. More...
 
bool _is_transient
 
MooseApp_restartable_app
 Reference to the application. More...
 
const std::string _restartable_system_name
 The system name this object is in. More...
 
const THREAD_ID _restartable_tid
 The thread ID for this object. More...
 
const bool _restartable_read_only
 Flag for toggling read only status (see ReporterData) More...
 
FEProblemBase_mci_feproblem
 Reference to FEProblemBase instance. More...
 
DenseVector< Number_local_re
 Holds local residual entries as they are accumulated by this Kernel. More...
 
DenseMatrix< Number_local_ke
 Holds local Jacobian entries as they are accumulated by this Kernel. More...
 
DenseMatrix< Number_nonlocal_ke
 Holds nonlocal Jacobian entries as they are accumulated by this Kernel. More...
 
GeometricSearchData_geometric_search_data
 
bool _requires_geometric_search
 Whether any of this interface's methods have been called, e.g. More...
 
bool _neighbor_nodal
 
const InputParameters_c_parameters
 
const std::string & _c_name
 The name of the object this interface is part of. More...
 
const std::string & _c_type
 The type of the object this interface is part of. More...
 
FEProblemBase_c_fe_problem
 
const SystemBase *const _c_sys
 Pointer to the system object if the moose object this is an interface for has one. More...
 
std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > _coupled_vars
 Coupled vars whose values we provide. More...
 
std::vector< MooseVariableFieldBase * > _coupled_moose_vars
 Vector of all coupled variables. More...
 
std::vector< MooseVariable * > _coupled_standard_moose_vars
 Vector of standard coupled variables. More...
 
std::vector< VectorMooseVariable * > _coupled_vector_moose_vars
 Vector of vector coupled variables. More...
 
std::vector< ArrayMooseVariable * > _coupled_array_moose_vars
 Vector of array coupled variables. More...
 
std::vector< MooseVariableFV< Real > * > _coupled_standard_fv_moose_vars
 Vector of standard finite volume coupled variables. More...
 
std::vector< MooseLinearVariableFV< Real > * > _coupled_standard_linear_fv_moose_vars
 Vector of standard linear finite volume coupled variables. More...
 
const std::unordered_map< std::string, std::string > & _new_to_deprecated_coupled_vars
 map from new to deprecated variable names More...
 
bool _c_nodal
 True if we provide coupling to nodal values. More...
 
bool _c_is_implicit
 True if implicit value is required. More...
 
const bool _c_allow_element_to_nodal_coupling
 
THREAD_ID _c_tid
 Thread ID of the thread using this object. More...
 
std::unordered_map< std::string, std::vector< std::unique_ptr< VariableValue > > > _default_value
 Will hold the default value for optional coupled variables. More...
 
std::unordered_map< std::string, std::unique_ptr< MooseArray< DualReal > > > _ad_default_value
 Will hold the default value for optional coupled variables for automatic differentiation. More...
 
std::unordered_map< std::string, std::unique_ptr< VectorVariableValue > > _default_vector_value
 Will hold the default value for optional vector coupled variables. More...
 
std::unordered_map< std::string, std::unique_ptr< ArrayVariableValue > > _default_array_value
 Will hold the default value for optional array coupled variables. More...
 
std::unordered_map< std::string, std::unique_ptr< MooseArray< ADRealVectorValue > > > _ad_default_vector_value
 Will hold the default value for optional vector coupled variables for automatic differentiation. More...
 
VariableValue _default_value_zero
 This will always be zero because the default values for optionally coupled variables is always constant and this is used for time derivative info. More...
 
VariableGradient _default_gradient
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
MooseArray< ADRealVectorValue_ad_default_gradient
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
MooseArray< ADRealTensorValue_ad_default_vector_gradient
 This will always be zero because the default values for optionally coupled vector variables is always constant. More...
 
VariableSecond _default_second
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
MooseArray< ADRealTensorValue_ad_default_second
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
const VariableValue_zero
 Zero value of a variable. More...
 
const VariablePhiValue_phi_zero
 
const MooseArray< DualReal > & _ad_zero
 
const VariableGradient_grad_zero
 Zero gradient of a variable. More...
 
const MooseArray< ADRealVectorValue > & _ad_grad_zero
 
const VariablePhiGradient_grad_phi_zero
 Zero gradient of trial function. More...
 
const VariableSecond_second_zero
 Zero second derivative of a variable. More...
 
const MooseArray< ADRealTensorValue > & _ad_second_zero
 
const VariablePhiSecond_second_phi_zero
 Zero second derivative of a test function. More...
 
const VectorVariableValue_vector_zero
 Zero value of a vector variable. More...
 
const VectorVariableCurl_vector_curl_zero
 Zero value of the curl of a vector variable. More...
 
VectorVariableValue _default_vector_value_zero
 This will always be zero because the default values for optionally coupled variables is always constant and this is used for time derivative info. More...
 
VectorVariableGradient _default_vector_gradient
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
VectorVariableCurl _default_vector_curl
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
ArrayVariableValue _default_array_value_zero
 This will always be zero because the default values for optionally coupled variables is always constant and this is used for time derivative info. More...
 
ArrayVariableGradient _default_array_gradient
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
ArrayVariableCurl _default_array_curl
 This will always be zero because the default values for optionally coupled variables is always constant. More...
 
bool _coupleable_neighbor
 Whether or not this object is a "neighbor" object: ie all of it's coupled values should be neighbor values. More...
 
FEProblemBase_sc_fe_problem
 
const THREAD_ID _sc_tid
 Thread ID of the thread using this object. More...
 
const Real_real_zero
 Scalar zero. More...
 
const VariableValue_scalar_zero
 Zero value of a scalar variable. More...
 
const Point & _point_zero
 Zero point. More...
 
bool _nodal
 Whether or not this object is acting only at nodes. More...
 
MooseVariableFE< Real > * _variable
 
MooseVariableFV< Real > * _fv_variable
 
MooseLinearVariableFV< Real > * _linear_fv_variable
 
MooseVariableField< Real > * _field_variable
 
Assembly_mvi_assembly
 

Friends

class NonlinearSystemBase
 

Detailed Description

A NodeFaceConstraint is used when you need to create constraints between two surfaces in a mesh.

It works by allowing you to modify the residual and jacobian entries on "this" side (the node side, also referred to as the secondary side) and the "other" side (the face side, also referred to as the primary side)

This is common for contact algorithms and other constraints.

Definition at line 32 of file NodeFaceConstraint.h.

Member Typedef Documentation

◆ DataFileParameterType

using DataFileInterface< MooseObject >::DataFileParameterType = DataFileName
inherited

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

Definition at line 26 of file DataFileInterface.h.

Member Enumeration Documentation

◆ ResidualTagType

enum TaggingInterface::ResidualTagType
stronginherited

Enumerate whether a (residual) vector tag is to be of a non-reference or reference tag type.

Enumerator
NonReference 
Reference 

Definition at line 75 of file TaggingInterface.h.

76  {
77  NonReference,
78  Reference
79  };

Constructor & Destructor Documentation

◆ NodeFaceConstraint()

NodeFaceConstraint::NodeFaceConstraint ( const InputParameters parameters)

Definition at line 43 of file NodeFaceConstraint.C.

45  // The secondary side is at nodes (hence passing 'true'). The neighbor side is the primary side
46  // and it is not at nodes (so passing false)
50  _secondary(_mesh.getBoundaryID(getParam<BoundaryName>("secondary"))),
51  _primary(_mesh.getBoundaryID(getParam<BoundaryName>("primary"))),
52  _var(_sys.getFieldVariable<Real>(_tid, parameters.get<NonlinearVariableName>("variable"))),
53 
56 
58  getPenetrationLocator(getParam<BoundaryName>("primary"),
59  getParam<BoundaryName>("secondary"),
60  Utility::string_to_enum<Order>(getParam<MooseEnum>("order")))),
61 
65  _phi_secondary(1), // One entry
66  _test_secondary(1), // One entry
67 
68  _primary_var(*getVar("primary_variable", 0)),
70 
73 
76 
79 
80  _dof_map(_sys.dofMap()),
82 
85 {
87 
88  if (parameters.isParamValid("tangential_tolerance"))
89  {
90  _penetration_locator.setTangentialTolerance(getParam<Real>("tangential_tolerance"));
91  }
92  if (parameters.isParamValid("normal_smoothing_distance"))
93  {
94  _penetration_locator.setNormalSmoothingDistance(getParam<Real>("normal_smoothing_distance"));
95  }
96  if (parameters.isParamValid("normal_smoothing_method"))
97  {
99  parameters.get<std::string>("normal_smoothing_method"));
100  }
101  // Put a "1" into test_secondary
102  // will always only have one entry that is 1
103  _test_secondary[0].push_back(1);
104 }
MooseMesh & _mesh
Reference to this Kernel&#39;s mesh object.
BoundaryID _secondary
Boundary ID for the secondary surface.
const Node *const & node() const
const VariablePhiGradient & gradPhiFaceNeighbor(const MooseVariableField< Real > &) const
Definition: Assembly.h:1313
const VariableValue & _u_primary
Holds the current solution at the current quadrature point.
unsigned int _primary_var_num
Number for the primary variable.
void setNormalSmoothingDistance(Real normal_smoothing_distance)
MooseVariable & _var
unsigned int number() const
Get variable number coming from libMesh.
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.
MooseVariable & _primary_var
Primary side variable.
const Elem *const & _current_primary
const FieldVariableValue & slnNeighbor() const override
neighbor solutions
const std::map< dof_id_type, std::vector< dof_id_type > > & _node_to_elem_map
const DofMap & _dof_map
DOF map.
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
const VariablePhiValue & phiFaceNeighbor(const MooseVariableField< Real > &) const
Definition: Assembly.h:1309
const MooseArray< Real > & _primary_JxW
JxW on the primary face.
const VariableTestValue & _test_primary
Side test function.
const VariableTestGradient & _grad_test_primary
Gradient of side shape function.
THREAD_ID _tid
The thread ID for this kernel.
void setTangentialTolerance(Real tangential_tolerance)
const Node *const & _current_node
current node being processed
const FieldVariablePhiGradient & gradPhiFaceNeighbor() const override final
Return the gradients of the variable&#39;s shape functions on a neighboring element face.
SystemBase & _sys
Reference to the EquationSystem object.
Constraint(const InputParameters &parameters)
Definition: Constraint.C:33
virtual DofMap & dofMap()
Gets writeable reference to the dof map.
Definition: SystemBase.C:1138
const MooseArray< Point > & _primary_q_point
NeighborCoupleableMooseVariableDependencyIntermediateInterface(const MooseObject *moose_object, bool nodal, bool neighbor_nodal, bool is_fv=false)
const VariableGradient & _grad_u_primary
Holds the current solution gradient at the current quadrature point.
const VariableValue & _u_secondary
Value of the unknown variable this BC is action on.
Assembly & _assembly
Reference to this Kernel&#39;s assembly object.
const FieldVariableGradient & gradSlnNeighbor() const override
neighbor solution gradients
const MooseArray< Real > & JxWNeighbor() const
Returns the reference to the transformed jacobian weights on a current face.
Definition: Assembly.C:257
PenetrationLocator & getPenetrationLocator(const BoundaryName &primary, const BoundaryName &secondary, Order order)
Retrieve the PentrationLocator associated with the two sides.
const Elem *const & neighbor() const
Current neighboring element.
VariableTestValue _test_secondary
Shape function on the secondary side. This will always only have one entry and that entry will always...
const QBase *const & qRuleFace() const
Returns the reference to the current quadrature being used on a current face.
Definition: Assembly.h:286
void addMooseVariableDependency(MooseVariableFieldBase *var)
Call this function to add the passed in MooseVariableFieldBase as a variable that this object depends...
const VariablePhiGradient & _grad_phi_primary
Gradient of side shape function.
MooseVariableFE< T > & getFieldVariable(THREAD_ID tid, const std::string &var_name)
Gets a reference to a variable of with specified name.
Definition: SystemBase.C:107
const DoFValue & dofValues() const override
dof values getters
const MooseArray< Point > & qPointsFace() const
Returns the reference to the current quadrature being used.
Definition: Assembly.h:298
const QBase *const & _primary_qrule
const InputParameters & parameters() const
Get the parameters of the object.
const VariablePhiValue & _phi_primary
Side shape function.
BoundaryID _primary
Boundary ID for the primary surface.
bool _overwrite_secondary_residual
Whether or not the secondary&#39;s residual should be overwritten.
VariablePhiValue _phi_secondary
Shape function on the secondary side. This will always.
void setNormalSmoothingMethod(std::string nsmString)
PenetrationLocator & _penetration_locator
BoundaryID getBoundaryID(const BoundaryName &boundary_name) const
Get the associated BoundaryID for the boundary name.
Definition: MooseMesh.C:1475
const std::map< dof_id_type, std::vector< dof_id_type > > & nodeToElemMap()
If not already created, creates a map from every node to all elements to which they are connected...
Definition: MooseMesh.C:981
const FieldVariablePhiValue & phiFaceNeighbor() const override final
Return the variable&#39;s shape functions on a neighboring element face.
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ ~NodeFaceConstraint()

NodeFaceConstraint::~NodeFaceConstraint ( )
virtual

Definition at line 106 of file NodeFaceConstraint.C.

107 {
108  _phi_secondary.release();
109  _test_secondary.release();
110 }
VariableTestValue _test_secondary
Shape function on the secondary side. This will always only have one entry and that entry will always...
VariablePhiValue _phi_secondary
Shape function on the secondary side. This will always.

Member Function Documentation

◆ accumulateTaggedLocalMatrix() [1/3]

void TaggingInterface::accumulateTaggedLocalMatrix ( )
protectedinherited

Local Jacobian blocks will be appended by adding the current local kernel Jacobian.

It should be called after the local element matrix has been computed.

Definition at line 380 of file TaggingInterface.C.

Referenced by DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), MassLumpedTimeDerivative::computeJacobian(), TimeDerivative::computeJacobian(), VectorTimeDerivative::computeJacobian(), ScalarKernel::computeJacobian(), Kernel::computeJacobian(), ODEKernel::computeJacobian(), VectorKernel::computeJacobian(), ArrayKernel::computeJacobian(), IntegratedBC::computeJacobian(), VectorIntegratedBC::computeJacobian(), EigenKernel::computeJacobian(), ArrayIntegratedBC::computeJacobian(), NonlocalIntegratedBC::computeJacobian(), KernelGrad::computeJacobian(), KernelValue::computeJacobian(), NonlocalKernel::computeJacobian(), MortarConstraint::computeJacobian(), NodeElemConstraint::computeJacobian(), computeJacobian(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayDGLowerDKernel::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), Kernel::computeOffDiagJacobian(), VectorKernel::computeOffDiagJacobian(), EigenKernel::computeOffDiagJacobian(), ArrayKernel::computeOffDiagJacobian(), VectorIntegratedBC::computeOffDiagJacobian(), IntegratedBC::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), NonlocalKernel::computeOffDiagJacobian(), NonlocalIntegratedBC::computeOffDiagJacobian(), KernelGrad::computeOffDiagJacobian(), KernelValue::computeOffDiagJacobian(), NodeElemConstraint::computeOffDiagJacobian(), computeOffDiagJacobian(), ODEKernel::computeOffDiagJacobianScalar(), VectorKernel::computeOffDiagJacobianScalar(), ArrayKernel::computeOffDiagJacobianScalar(), IntegratedBC::computeOffDiagJacobianScalar(), VectorIntegratedBC::computeOffDiagJacobianScalar(), Kernel::computeOffDiagJacobianScalar(), ArrayIntegratedBC::computeOffDiagJacobianScalar(), ScalarLagrangeMultiplier::computeOffDiagJacobianScalar(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), and ConservativeAdvection::fullUpwind().

381 {
382  for (auto & ke : _ke_blocks)
383  *ke += _local_ke;
384 }
DenseMatrix< Number > _local_ke
Holds local Jacobian entries as they are accumulated by this Kernel.
std::vector< DenseMatrix< Number > * > _ke_blocks
Kernel blocks Vectors For each Tag.

◆ accumulateTaggedLocalMatrix() [2/3]

void TaggingInterface::accumulateTaggedLocalMatrix ( Assembly assembly,
unsigned int  ivar,
unsigned int  jvar,
const DenseMatrix< Number > &  k 
)
protectedinherited

Definition at line 387 of file TaggingInterface.C.

391 {
392  _ke_blocks.resize(_matrix_tags.size());
393  mooseAssert(_matrix_tags.size() >= 1, "we need at least one active tag");
394  auto mat_vector = _matrix_tags.begin();
395  for (MooseIndex(_matrix_tags) i = 0; i < _matrix_tags.size(); i++, ++mat_vector)
396  _ke_blocks[i] = &assembly.jacobianBlock(ivar, jvar, Assembly::LocalDataKey{}, *mat_vector);
397  mooseAssert(_ke_blocks[0]->m() == k.m() && _ke_blocks[0]->n() == k.n(),
398  "Passed-in k must match the blocks we are about to sum into");
399  for (auto & ke : _ke_blocks)
400  *ke += k;
401 }
unsigned int m() const
DenseMatrix< Number > & jacobianBlock(unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag)
Get local Jacobian block for a pair of variables and a tag.
Definition: Assembly.h:1092
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
std::vector< DenseMatrix< Number > * > _ke_blocks
Kernel blocks Vectors For each Tag.
unsigned int n() const
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ accumulateTaggedLocalMatrix() [3/3]

void TaggingInterface::accumulateTaggedLocalMatrix ( Assembly assembly,
unsigned int  ivar,
unsigned int  jvar,
Moose::DGJacobianType  type,
const DenseMatrix< Number > &  k 
)
protectedinherited

Definition at line 404 of file TaggingInterface.C.

409 {
410  _ke_blocks.resize(_matrix_tags.size());
411  mooseAssert(_matrix_tags.size() >= 1, "we need at least one active tag");
412  auto mat_vector = _matrix_tags.begin();
413  for (MooseIndex(_matrix_tags) i = 0; i < _matrix_tags.size(); i++, ++mat_vector)
414  _ke_blocks[i] =
415  &assembly.jacobianBlockNeighbor(type, ivar, jvar, Assembly::LocalDataKey{}, *mat_vector);
416  mooseAssert(_ke_blocks[0]->m() == k.m() && _ke_blocks[0]->n() == k.n(),
417  "Passed-in k must match the blocks we are about to sum into");
418  for (auto & ke : _ke_blocks)
419  *ke += k;
420 }
DenseMatrix< Number > & jacobianBlockNeighbor(Moose::DGJacobianType type, unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag)
Get local Jacobian block of a DG Jacobian type for a pair of variables and a tag. ...
Definition: Assembly.C:3108
unsigned int m() const
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
std::vector< DenseMatrix< Number > * > _ke_blocks
Kernel blocks Vectors For each Tag.
unsigned int n() const
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ accumulateTaggedLocalResidual()

void TaggingInterface::accumulateTaggedLocalResidual ( )
protectedinherited

Local residual blocks will be appended by adding the current local kernel residual.

It should be called after the local element vector has been computed.

Definition at line 360 of file TaggingInterface.C.

Referenced by FVInterfaceKernel::addResidual(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), DGLowerDKernel::computeLowerDResidual(), ArrayDGLowerDKernel::computeLowerDResidual(), ScalarKernel::computeResidual(), Kernel::computeResidual(), VectorKernel::computeResidual(), ArrayKernel::computeResidual(), LowerDIntegratedBC::computeResidual(), ODEKernel::computeResidual(), TimeKernel::computeResidual(), ADScalarKernel::computeResidual(), VectorTimeKernel::computeResidual(), ODETimeKernel::computeResidual(), VectorIntegratedBC::computeResidual(), IntegratedBC::computeResidual(), ArrayLowerDIntegratedBC::computeResidual(), ArrayIntegratedBC::computeResidual(), EigenKernel::computeResidual(), ADMortarConstraint::computeResidual(), FVFluxBC::computeResidual(), FVBoundaryScalarLagrangeMultiplierConstraint::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidual(), MortarConstraint::computeResidual(), KernelGrad::computeResidual(), KernelValue::computeResidual(), FVElementalKernel::computeResidual(), NodeElemConstraint::computeResidual(), FVFluxKernel::computeResidual(), computeResidual(), and ConservativeAdvection::fullUpwind().

361 {
362  for (auto & re : _re_blocks)
363  *re += _local_re;
364  for (auto & absre : _absre_blocks)
365  for (const auto i : index_range(_local_re))
366  (*absre)(i) += std::abs(_local_re(i));
367 }
std::vector< DenseVector< Number > * > _absre_blocks
Residual blocks for absolute value residual tags.
std::vector< DenseVector< Number > * > _re_blocks
Residual blocks Vectors For each Tag.
ADRealEigenVector< T, D, asd > abs(const ADRealEigenVector< T, D, asd > &)
DenseVector< Number > _local_re
Holds local residual entries as they are accumulated by this Kernel.
auto index_range(const T &sizable)

◆ accumulateTaggedNonlocalMatrix()

void TaggingInterface::accumulateTaggedNonlocalMatrix ( )
protectedinherited

Nonlocal Jacobian blocks will be appended by adding the current nonlocal kernel Jacobian.

It should be called after the nonlocal element matrix has been computed.

Definition at line 423 of file TaggingInterface.C.

Referenced by NonlocalIntegratedBC::computeNonlocalJacobian(), NonlocalKernel::computeNonlocalJacobian(), NonlocalKernel::computeNonlocalOffDiagJacobian(), and NonlocalIntegratedBC::computeNonlocalOffDiagJacobian().

424 {
425  for (auto & ke : _ke_blocks)
426  *ke += _nonlocal_ke;
427 }
std::vector< DenseMatrix< Number > * > _ke_blocks
Kernel blocks Vectors For each Tag.
DenseMatrix< Number > _nonlocal_ke
Holds nonlocal Jacobian entries as they are accumulated by this Kernel.

◆ adCoupledDofValues()

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

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

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

Definition at line 2004 of file Coupleable.C.

2005 {
2006  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2007 
2008  if (!var)
2009  return *getADDefaultValue(var_name);
2011 
2012  if (!_c_is_implicit)
2013  mooseError("Not implemented");
2014 
2015  if (!_coupleable_neighbor)
2016  return var->adDofValues();
2017  return var->adDofValuesNeighbor();
2018 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for Automatic Differentiation for...
Definition: Coupleable.C:2238
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ adCoupledDot()

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

Time derivative of a coupled variable for ad simulations.

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

Definition at line 2154 of file Coupleable.C.

Referenced by Coupleable::adCoupledDots().

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

◆ adCoupledDotDot()

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

Second time derivative of a coupled variable for ad simulations.

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

Definition at line 2171 of file Coupleable.C.

2172 {
2173  const auto * const var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2174 
2175  if (!var)
2176  return *getADDefaultValue(var_name);
2178 
2179  if (_c_nodal)
2180  mooseError("Not implemented");
2181 
2182  if (!_coupleable_neighbor)
2183  return var->adUDotDot();
2184  return var->adUDotDotNeighbor();
2185 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for Automatic Differentiation for...
Definition: Coupleable.C:2238
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ adCoupledDots()

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

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

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

Definition at line 2636 of file Coupleable.C.

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

◆ adCoupledGradient()

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

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

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

Definition at line 2095 of file Coupleable.C.

Referenced by Coupleable::adCoupledGradients().

2096 {
2097  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2098 
2099  if (!var)
2100  return getADDefaultGradient();
2102 
2103  if (!_c_is_implicit)
2104  mooseError("Not implemented");
2105 
2106  if (!_coupleable_neighbor)
2107  return var->adGradSln();
2108  return var->adGradSlnNeighbor();
2109 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const ADVariableGradient & getADDefaultGradient() const
Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation ...
Definition: Coupleable.C:2269
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ adCoupledGradientDot()

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

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

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

Definition at line 2112 of file Coupleable.C.

2113 {
2114  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2115 
2116  if (!var)
2117  return getADDefaultGradient();
2119 
2120  if (!_c_is_implicit)
2121  mooseError("Not implemented");
2122 
2123  if (!_coupleable_neighbor)
2124  return var->adGradSlnDot();
2125  return var->adGradSlnNeighborDot();
2126 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const ADVariableGradient & getADDefaultGradient() const
Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation ...
Definition: Coupleable.C:2269
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ adCoupledGradients()

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

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

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

Definition at line 2615 of file Coupleable.C.

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

◆ adCoupledLowerValue()

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

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

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

Definition at line 2077 of file Coupleable.C.

2078 {
2079  auto var = getVarHelper<MooseVariableFE<Real>>(var_name, comp);
2080 
2081  if (!var)
2082  return *getADDefaultValue(var_name);
2084 
2085  if (!_c_is_implicit)
2086  mooseError("adCoupledLowerValue cannot be called in a coupleable neighbor object");
2087 
2088  if (_c_nodal)
2089  return var->adDofValues();
2090  else
2091  return var->adSlnLower();
2092 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for Automatic Differentiation for...
Definition: Coupleable.C:2238

◆ adCoupledNeighborGradient()

const ADVariableGradient & NeighborCoupleable::adCoupledNeighborGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Get the coupled neighbor variable gradient for var_name with derivative information for automatic differentiation objects.

Definition at line 224 of file NeighborCoupleable.C.

Referenced by NeighborCoupleable::coupledGenericNeighborGradient().

225 {
226  if (_neighbor_nodal)
227  mooseError("Nodal variables do not have gradients");
228  if (!_c_is_implicit)
229  mooseError(
230  "adCoupledNeighborGradient returns a data structure with derivatives. Explicit schemes "
231  "use old solution data which do not have derivatives so adCoupledNeighborGradient is "
232  "not appropriate. Please use coupledNeighborGradient instead");
233 
234  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
235  return var->adGradSlnNeighbor();
236 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ adCoupledNeighborValue()

const ADVariableValue & NeighborCoupleable::adCoupledNeighborValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Get the coupled neighbor variable value for var_name with derivative information for automatic differentiation objects.

Definition at line 61 of file NeighborCoupleable.C.

Referenced by NeighborCoupleable::adCoupledNeighborValues(), and NeighborCoupleable::coupledGenericNeighborValue().

62 {
63  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
64 
65  if (!var)
66  return *getADDefaultValue(var_name);
67 
68  if (_neighbor_nodal)
69  mooseError("adCoupledNeighborValue cannot be used for nodal compute objects at this time");
70  if (!_c_is_implicit)
71  mooseError("adCoupledNeighborValue returns a data structure with derivatives. Explicit schemes "
72  "use old solution data which do not have derivatives so adCoupledNeighborValue is "
73  "not appropriate. Please use coupledNeighborValue instead");
74 
75  return var->adSlnNeighbor();
76 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for Automatic Differentiation for...
Definition: Coupleable.C:2238

◆ adCoupledNeighborValueDot()

const ADVariableValue & NeighborCoupleable::adCoupledNeighborValueDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Get the time derivative of the coupled neighbor variable value for var_name with derivative information for automatic differentiation objects.

Definition at line 79 of file NeighborCoupleable.C.

80 {
81  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
82 
83  if (!_c_is_implicit)
84  mooseError(
85  "adCoupledNeighborValueDot returns a data structure with derivatives. Explicit schemes "
86  "use old solution data which do not have derivatives so adCoupledNeighborValueDot is "
87  "not appropriate. Please use coupledNeighborValueDot instead");
88 
89  if (_neighbor_nodal)
90  mooseError("adCoupledNeighborValueDot cannot be used for nodal compute objects at this time");
91  else
92  return var->adUDotNeighbor();
93 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ adCoupledNeighborValues()

std::vector< const ADVariableValue * > NeighborCoupleable::adCoupledNeighborValues ( const std::string &  var_name) const
inherited

Definition at line 96 of file NeighborCoupleable.C.

97 {
98  auto func = [this, &var_name](unsigned int comp)
99  { return &adCoupledNeighborValue(var_name, comp); };
100  return coupledVectorHelper<const ADVariableValue *>(var_name, func);
101 }
virtual const ADVariableValue & adCoupledNeighborValue(const std::string &var_name, unsigned int comp=0) const
Get the coupled neighbor variable value for var_name with derivative information for automatic differ...

◆ adCoupledNodalValue()

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

Returns AD nodal values of a coupled variable.

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

Definition at line 2035 of file Coupleable.C.

2036 {
2037  static const typename Moose::ADType<T>::type zero = 0;
2038  if (!isCoupled(var_name))
2039  return zero;
2040 
2041  if (!_c_nodal)
2042  mooseError("The adCoupledNodalValue method should only be called for nodal computing objects");
2044  mooseError(
2045  "The adCoupledNodalValue method shouldn't be called for neighbor computing objects. I "
2046  "don't even know what that would mean, although maybe someone could explain it to me.");
2047  if (!_c_is_implicit)
2048  mooseError("If you're going to use an explicit scheme, then use coupledNodalValue instead of "
2049  "adCoupledNodalValue");
2050 
2051  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
2052 
2053  return var->adNodalValue();
2054 }
virtual bool isCoupled(const std::string &var_name, unsigned int i=0) const
Returns true if a variables has been coupled as name.
Definition: Coupleable.C:128
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const Number zero
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ adCoupledScalarDot()

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

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

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

Definition at line 252 of file ScalarCoupleable.C.

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

◆ adCoupledScalarValue()

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

Returns AD value of a scalar coupled variable.

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

Definition at line 135 of file ScalarCoupleable.C.

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

◆ adCoupledSecond()

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

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

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

Definition at line 2129 of file Coupleable.C.

2130 {
2131  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2132 
2133  if (!var)
2134  return getADDefaultSecond();
2136 
2137  if (!_c_is_implicit)
2138  mooseError("Not implemented");
2139 
2140  if (!_coupleable_neighbor)
2141  return var->adSecondSln();
2142  else
2143  return var->adSecondSlnNeighbor();
2144 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
const ADVariableSecond & getADDefaultSecond() const
Helper method to return (and insert if necessary) the default second derivatives for Automatic Differ...
Definition: Coupleable.C:2283

◆ adCoupledValue()

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

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

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

Definition at line 2057 of file Coupleable.C.

Referenced by Coupleable::adCoupledValues().

2058 {
2059  const auto * const var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
2060 
2061  if (!var)
2062  return *getADDefaultValue(var_name);
2064 
2065  if (!_c_is_implicit)
2066  mooseError("Not implemented");
2067 
2068  if (_c_nodal)
2069  return var->adDofValues();
2070 
2071  if (!_coupleable_neighbor)
2072  return var->adSln();
2073  return var->adSlnNeighbor();
2074 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
const ADVariableValue * getADDefaultValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for Automatic Differentiation for...
Definition: Coupleable.C:2238
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ adCoupledValues()

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

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

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

Definition at line 2426 of file Coupleable.C.

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

◆ adCoupledVectorDot()

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

Time derivative of a vector coupled variable for ad simulations.

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

Definition at line 2188 of file Coupleable.C.

2189 {
2190  const auto * var = getVectorVar(var_name, comp);
2191  if (!var)
2192  return *getADDefaultVectorValue(var_name);
2194 
2195  if (_c_nodal)
2196  mooseError("Not implemented");
2197 
2198  if (!_coupleable_neighbor)
2199  return var->adUDot();
2200  return var->adUDotNeighbor();
2201 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
const ADVectorVariableValue * getADDefaultVectorValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default vector value for Automatic Differentiat...
Definition: Coupleable.C:2252
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ adCoupledVectorGradient()

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

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

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

Definition at line 2222 of file Coupleable.C.

2223 {
2224  const auto * var = getVectorVar(var_name, comp);
2225  if (!var)
2226  return getADDefaultVectorGradient();
2228 
2229  if (!_c_is_implicit)
2230  mooseError("Not implemented");
2231 
2232  if (!_coupleable_neighbor)
2233  return var->adGradSln();
2234  return var->adGradSlnNeighbor();
2235 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
const ADVectorVariableGradient & getADDefaultVectorGradient() const
Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation ...
Definition: Coupleable.C:2276
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ adCoupledVectorNeighborValue()

const ADVectorVariableValue & NeighborCoupleable::adCoupledVectorNeighborValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Get the coupled neighbor vector variable value for var_name with derivative information for automatic differentiation objects.

Definition at line 104 of file NeighborCoupleable.C.

106 {
107  auto var = getVarHelper<MooseVariableField<RealVectorValue>>(var_name, comp);
108 
109  if (!var)
110  return *getADDefaultVectorValue(var_name);
111 
112  if (_neighbor_nodal)
113  mooseError(
114  "adCoupledVectorNeighborValue cannot be used for nodal compute objects at this time");
115  if (!_c_is_implicit)
116  mooseError(
117  "adCoupledVectorNeighborValue returns a data structure with derivatives. Explicit schemes "
118  "use old solution data which do not have derivatives so adCoupledVectorNeighborValue is "
119  "not appropriate. Please use coupledNeighborValue instead");
120 
121  return var->adSlnNeighbor();
122 }
const ADVectorVariableValue * getADDefaultVectorValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default vector value for Automatic Differentiat...
Definition: Coupleable.C:2252
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ adCoupledVectorSecond()

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

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

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

◆ adCoupledVectorValue()

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

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

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

Definition at line 2204 of file Coupleable.C.

Referenced by Coupleable::adCoupledVectorValues().

2205 {
2206  const auto * var = getVectorVar(var_name, comp);
2207  if (!var)
2208  return *getADDefaultVectorValue(var_name);
2210 
2211  if (_c_nodal)
2212  mooseError("Not implemented");
2213  if (!_c_is_implicit)
2214  mooseError("Not implemented");
2215 
2216  if (!_coupleable_neighbor)
2217  return var->adSln();
2218  return var->adSlnNeighbor();
2219 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
const ADVectorVariableValue * getADDefaultVectorValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default vector value for Automatic Differentiat...
Definition: Coupleable.C:2252
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ adCoupledVectorValues()

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

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

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

Definition at line 2433 of file Coupleable.C.

2434 {
2435  auto func = [this, &var_name](unsigned int comp)
2436  { return &adCoupledVectorValue(var_name, comp); };
2437  return coupledVectorHelper<const ADVectorVariableValue *>(var_name, func);
2438 }
const ADVectorVariableValue & adCoupledVectorValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled vector variable for use in Automatic Differentiation.
Definition: Coupleable.C:2204

◆ addCouplingEntriesToJacobian()

virtual bool Constraint::addCouplingEntriesToJacobian ( )
inlinevirtualinherited

Reimplemented in EqualValueEmbeddedConstraint.

Definition at line 26 of file Constraint.h.

26 { return true; }

◆ addFEVariableCoupleableMatrixTag()

void Coupleable::addFEVariableCoupleableMatrixTag ( TagID  tag)
inlineinherited

Definition at line 104 of file Coupleable.h.

Referenced by Coupleable::coupledMatrixTagValue().

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

◆ addFEVariableCoupleableVectorTag()

void Coupleable::addFEVariableCoupleableVectorTag ( TagID  tag)
inlineinherited

◆ addJacobian() [1/2]

template<typename Residuals , typename Indices >
void TaggingInterface::addJacobian ( Assembly assembly,
const Residuals &  residuals,
const Indices &  dof_indices,
Real  scaling_factor 
)
protectedinherited

◆ addJacobian() [2/2]

void TaggingInterface::addJacobian ( Assembly assembly,
DenseMatrix< Real > &  local_k,
const std::vector< dof_id_type > &  row_indices,
const std::vector< dof_id_type > &  column_indices,
Real  scaling_factor 
)
inlineprotectedinherited

Add a local Jacobian matrix.

Definition at line 526 of file TaggingInterface.h.

531 {
532  for (const auto matrix_tag : _matrix_tags)
533  assembly.cacheJacobianBlock(
534  local_k, row_indices, column_indices, scaling_factor, Assembly::LocalDataKey{}, matrix_tag);
535 }
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
void cacheJacobianBlock(DenseMatrix< Number > &jac_block, const std::vector< dof_id_type > &idof_indices, const std::vector< dof_id_type > &jdof_indices, Real scaling_factor, LocalDataKey, TagID tag)
Cache a local Jacobian block with the provided rows (idof_indices) and columns (jdof_indices) for eve...
Definition: Assembly.C:3743
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ addJacobianElement()

void TaggingInterface::addJacobianElement ( Assembly assembly,
Real  value,
dof_id_type  row_index,
dof_id_type  column_index,
Real  scaling_factor 
)
inlineprotectedinherited

Add into a single Jacobian element.

Definition at line 515 of file TaggingInterface.h.

Referenced by ArrayNodalBC::computeJacobian(), VectorNodalBC::computeJacobian(), NodalBC::computeJacobian(), NodalKernel::computeJacobian(), NodalConstraint::computeJacobian(), ArrayNodalBC::computeOffDiagJacobian(), VectorNodalBC::computeOffDiagJacobian(), NodalBC::computeOffDiagJacobian(), NodalKernel::computeOffDiagJacobian(), and MortarConstraintBase::zeroInactiveLMDofs().

520 {
521  assembly.cacheJacobian(
522  row_index, column_index, value * scaling_factor, Assembly::LocalDataKey{}, _matrix_tags);
523 }
void cacheJacobian(GlobalDataKey)
Takes the values that are currently in _sub_Kee and appends them to the cached values.
Definition: Assembly.C:4054
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ addJacobianWithoutConstraints()

template<typename Residuals , typename Indices >
void TaggingInterface::addJacobianWithoutConstraints ( Assembly assembly,
const Residuals &  residuals,
const Indices &  dof_indices,
Real  scaling_factor 
)
protectedinherited

Add the provided residual derivatives into the Jacobian for the provided dof indices.

This API should only be used if the caller knows that no libMesh-level constraints (hanging nodes or periodic boundary conditions) apply to the provided dof indices

Definition at line 505 of file TaggingInterface.h.

Referenced by TaggingInterface::addResidualsAndJacobianWithoutConstraints().

509 {
511  residuals, dof_indices, scaling_factor, Assembly::LocalDataKey{}, _matrix_tags);
512 }
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
void cacheJacobianWithoutConstraints(const Residuals &residuals, const Indices &row_indices, Real scaling_factor, LocalDataKey, const std::set< TagID > &matrix_tags)
Process the derivatives() data of a vector of ADReals.
Definition: Assembly.h:3127
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ addMooseVariableDependency() [1/2]

void MooseVariableDependencyInterface::addMooseVariableDependency ( MooseVariableFieldBase var)
inlineprotectedinherited

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

Definition at line 73 of file MooseVariableDependencyInterface.h.

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

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

◆ addMooseVariableDependency() [2/2]

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

Definition at line 77 of file MooseVariableDependencyInterface.h.

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

◆ addPostprocessorDependencyHelper()

virtual void PostprocessorInterface::addPostprocessorDependencyHelper ( const PostprocessorName &  ) const
inlineprotectedvirtualinherited

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

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

Definition at line 141 of file PostprocessorInterface.h.

Referenced by PostprocessorInterface::getPostprocessorValueByNameInternal().

141 {}

◆ addResiduals() [1/2]

template<typename Residuals , typename Indices >
void TaggingInterface::addResiduals ( Assembly assembly,
const Residuals &  residuals,
const Indices &  dof_indices,
Real  scaling_factor 
)
protectedinherited

Add the provided incoming residuals corresponding to the provided dof indices.

Definition at line 416 of file TaggingInterface.h.

Referenced by TaggingInterface::addResiduals(), TaggingInterface::addResidualsAndJacobian(), FVScalarLagrangeMultiplierInterface::computeResidual(), TimeNodalKernel::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidual(), FVBoundaryScalarLagrangeMultiplierConstraint::computeResidual(), NodalKernel::computeResidual(), ADNodalKernel::computeResidual(), ADKernelScalarBase::computeResidual(), NodalConstraint::computeResidual(), ADMortarScalarBase::computeResidual(), MortarScalarBase::computeResidual(), KernelScalarBase::computeScalarResidual(), and MortarConstraintBase::zeroInactiveLMDofs().

420 {
421  assembly.cacheResiduals(
422  residuals, dof_indices, scaling_factor, Assembly::LocalDataKey{}, _vector_tags);
423  if (!_abs_vector_tags.empty())
424  {
425  _absolute_residuals.resize(residuals.size());
426  for (const auto i : index_range(residuals))
428 
430  dof_indices,
431  scaling_factor,
434  }
435 }
auto raw_value(const Eigen::Map< T > &in)
Definition: ADReal.h:73
std::set< TagID > _abs_vector_tags
The absolute value residual tag ids.
ADRealEigenVector< T, D, asd > abs(const ADRealEigenVector< T, D, asd > &)
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.
void cacheResiduals(const Residuals &residuals, const Indices &row_indices, Real scaling_factor, LocalDataKey, const std::set< TagID > &vector_tags)
Process the supplied residual values.
Definition: Assembly.h:3008
auto index_range(const T &sizable)
std::vector< Real > _absolute_residuals
A container to hold absolute values of residuals passed into addResiduals.
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ addResiduals() [2/2]

template<typename T , typename Indices >
void TaggingInterface::addResiduals ( Assembly assembly,
const DenseVector< T > &  residuals,
const Indices &  dof_indices,
Real  scaling_factor 
)
protectedinherited

Add the provided incoming residuals corresponding to the provided dof indices.

Definition at line 439 of file TaggingInterface.h.

443 {
444  addResiduals(assembly, residuals.get_values(), dof_indices, scaling_factor);
445 }
void addResiduals(Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
Add the provided incoming residuals corresponding to the provided dof indices.

◆ addResidualsAndJacobian()

template<typename Residuals , typename Indices >
void TaggingInterface::addResidualsAndJacobian ( Assembly assembly,
const Residuals &  residuals,
const Indices &  dof_indices,
Real  scaling_factor 
)
protectedinherited

Add the provided incoming residuals and derivatives for the Jacobian, corresponding to the provided dof indices.

Definition at line 472 of file TaggingInterface.h.

Referenced by FVScalarLagrangeMultiplierInterface::computeJacobian(), FVBoundaryScalarLagrangeMultiplierConstraint::computeJacobian(), FVFluxBC::computeJacobian(), ADKernelScalarBase::computeJacobian(), FVFluxKernel::computeJacobian(), FVInterfaceKernel::computeJacobian(), FVScalarLagrangeMultiplierConstraint::computeResidualAndJacobian(), FVElementalKernel::computeResidualAndJacobian(), and ADKernelScalarBase::computeResidualAndJacobian().

476 {
477  addResiduals(assembly, residuals, dof_indices, scaling_factor);
478  addJacobian(assembly, residuals, dof_indices, scaling_factor);
479 }
void addResiduals(Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
Add the provided incoming residuals corresponding to the provided dof indices.
void addJacobian(Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
Add the provided residual derivatives into the Jacobian for the provided dof indices.

◆ addResidualsAndJacobianWithoutConstraints()

template<typename Residuals , typename Indices >
void TaggingInterface::addResidualsAndJacobianWithoutConstraints ( Assembly assembly,
const Residuals &  residuals,
const Indices &  dof_indices,
Real  scaling_factor 
)
protectedinherited

Add the provided incoming residuals and derivatives for the Jacobian, corresponding to the provided dof indices.

This API should only be used if the caller knows that no libMesh-level constraints (hanging nodes or periodic boundary conditions) apply to the provided dof indices

Definition at line 494 of file TaggingInterface.h.

Referenced by ADMortarConstraint::computeJacobian(), and ADMortarScalarBase::computeJacobian().

498 {
499  addResidualsWithoutConstraints(assembly, residuals, dof_indices, scaling_factor);
500  addJacobianWithoutConstraints(assembly, residuals, dof_indices, scaling_factor);
501 }
void addResidualsWithoutConstraints(Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
Add the provided incoming residuals corresponding to the provided dof indices.
void addJacobianWithoutConstraints(Assembly &assembly, const Residuals &residuals, const Indices &dof_indices, Real scaling_factor)
Add the provided residual derivatives into the Jacobian for the provided dof indices.

◆ addResidualsWithoutConstraints()

template<typename Residuals , typename Indices >
void TaggingInterface::addResidualsWithoutConstraints ( Assembly assembly,
const Residuals &  residuals,
const Indices &  dof_indices,
Real  scaling_factor 
)
protectedinherited

Add the provided incoming residuals corresponding to the provided dof indices.

This API should only be used if the caller knows that no libMesh-level constraints (hanging nodes or periodic boundary conditions) apply to the provided dof indices

Definition at line 449 of file TaggingInterface.h.

Referenced by TaggingInterface::addResidualsAndJacobianWithoutConstraints().

453 {
455  residuals, dof_indices, scaling_factor, Assembly::LocalDataKey{}, _vector_tags);
456  if (!_abs_vector_tags.empty())
457  {
458  _absolute_residuals.resize(residuals.size());
459  for (const auto i : index_range(residuals))
461 
463  dof_indices,
464  scaling_factor,
467  }
468 }
auto raw_value(const Eigen::Map< T > &in)
Definition: ADReal.h:73
std::set< TagID > _abs_vector_tags
The absolute value residual tag ids.
ADRealEigenVector< T, D, asd > abs(const ADRealEigenVector< T, D, asd > &)
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.
auto index_range(const T &sizable)
std::vector< Real > _absolute_residuals
A container to hold absolute values of residuals passed into addResiduals.
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812
void cacheResidualsWithoutConstraints(const Residuals &residuals, const Indices &row_indices, Real scaling_factor, LocalDataKey, const std::set< TagID > &vector_tags)
Process the supplied residual values.
Definition: Assembly.h:3048

◆ addUserObjectDependencyHelper()

virtual void UserObjectInterface::addUserObjectDependencyHelper ( const UserObject ) const
inlineprotectedvirtualinherited

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

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

Definition at line 108 of file UserObjectInterface.h.

Referenced by UserObjectInterface::getUserObjectBaseByName().

108 {}

◆ addVectorPostprocessorDependencyHelper()

virtual void VectorPostprocessorInterface::addVectorPostprocessorDependencyHelper ( const VectorPostprocessorName &  ) const
inlineprotectedvirtualinherited

◆ adZeroGradient()

const ADVariableGradient & Coupleable::adZeroGradient ( ) const
protectedinherited

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

Definition at line 2297 of file Coupleable.C.

2298 {
2299  mooseDeprecated("Method adZeroGradient() is deprecated. Use '_ad_grad_zero' instead.");
2300  return _ad_grad_zero;
2301 }
const MooseArray< ADRealVectorValue > & _ad_grad_zero
Definition: Coupleable.h:1406
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:350

◆ adZeroSecond()

const ADVariableSecond & Coupleable::adZeroSecond ( ) const
protectedinherited

Retrieve a zero second for automatic differentiation.

Definition at line 2304 of file Coupleable.C.

2305 {
2306  mooseDeprecated("Method adZeroSecond() is deprecated. Use '_ad_second_zero' instead.");
2307  return _ad_second_zero;
2308 }
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:350
const MooseArray< ADRealTensorValue > & _ad_second_zero
Definition: Coupleable.h:1413

◆ adZeroValue()

const ADVariableValue & Coupleable::adZeroValue ( ) const
protectedinherited

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

Definition at line 2290 of file Coupleable.C.

2291 {
2292  mooseDeprecated("Method adZeroValue() is deprecated. Use '_ad_zero' instead.");
2293  return _ad_zero;
2294 }
const MooseArray< DualReal > & _ad_zero
Definition: Coupleable.h:1402
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:350

◆ assignTaggedLocalMatrix()

void TaggingInterface::assignTaggedLocalMatrix ( )
protectedinherited

Local Jacobian blocks will assigned as the current local kernel Jacobian.

It should be called after the local element matrix has been computed.

Definition at line 430 of file TaggingInterface.C.

Referenced by NodalEqualValueConstraint::computeJacobian().

431 {
432  for (auto & ke : _ke_blocks)
433  *ke = _local_ke;
434 }
DenseMatrix< Number > _local_ke
Holds local Jacobian entries as they are accumulated by this Kernel.
std::vector< DenseMatrix< Number > * > _ke_blocks
Kernel blocks Vectors For each Tag.

◆ assignTaggedLocalResidual()

void TaggingInterface::assignTaggedLocalResidual ( )
protectedinherited

Local residual blocks will assigned as the current local kernel residual.

It should be called after the local element vector has been computed.

Definition at line 370 of file TaggingInterface.C.

Referenced by NodalEqualValueConstraint::computeResidual(), and computeResidual().

371 {
372  for (auto & re : _re_blocks)
373  *re = _local_re;
374  for (auto & absre : _absre_blocks)
375  for (const auto i : index_range(_local_re))
376  (*absre)(i) = std::abs(_local_re(i));
377 }
std::vector< DenseVector< Number > * > _absre_blocks
Residual blocks for absolute value residual tags.
std::vector< DenseVector< Number > * > _re_blocks
Residual blocks Vectors For each Tag.
ADRealEigenVector< T, D, asd > abs(const ADRealEigenVector< T, D, asd > &)
DenseVector< Number > _local_re
Holds local residual entries as they are accumulated by this Kernel.
auto index_range(const T &sizable)

◆ buildBoundaryIDs()

const std::set< BoundaryID > & NodeFaceConstraint::buildBoundaryIDs ( )
protected

Builds the _boundary_ids data member and returns it.

Returns
a set containing the secondary and primary boundary IDs

Definition at line 289 of file NodeFaceConstraint.C.

290 {
291  _boundary_ids.insert(_primary);
292  _boundary_ids.insert(_secondary);
293  return _boundary_ids;
294 }
BoundaryID _secondary
Boundary ID for the secondary surface.
std::set< BoundaryID > _boundary_ids
the union of the secondary and primary boundary ids
BoundaryID _primary
Boundary ID for the primary surface.

◆ callMooseError()

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

Calls moose error with the message msg.

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

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

Definition at line 33 of file MooseBase.C.

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

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

◆ checkAllVariables()

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

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

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

Definition at line 91 of file MooseVariableDependencyInterface.h.

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

◆ checkVar()

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

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

Parameters
var_nameThe name of the coupled variable

Definition at line 208 of file Coupleable.C.

Referenced by Coupleable::getVarHelper().

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

◆ checkVariables()

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

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

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

Definition at line 25 of file MooseVariableDependencyInterface.C.

Referenced by MooseVariableDependencyInterface::checkAllVariables().

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

◆ checkWritableVar()

void Coupleable::checkWritableVar ( MooseWritableVariable var)
protectedinherited

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

Definition at line 936 of file Coupleable.C.

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

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

◆ computeJacobian()

void NodeFaceConstraint::computeJacobian ( )
overridevirtual

Computes the jacobian for the current element.

Implements ResidualObject.

Definition at line 152 of file NodeFaceConstraint.C.

153 {
155 
158 
159  _phi_secondary.resize(_connected_dof_indices.size());
160 
161  _qp = 0;
162 
163  // Fill up _phi_secondary so that it is 1 when j corresponds to this dof and 0 for every other dof
164  // This corresponds to evaluating all of the connected shape functions at _this_ node
165  for (unsigned int j = 0; j < _connected_dof_indices.size(); j++)
166  {
167  _phi_secondary[j].resize(1);
168 
170  _phi_secondary[j][_qp] = 1.0;
171  else
172  _phi_secondary[j][_qp] = 0.0;
173  }
174 
175  for (_i = 0; _i < _test_secondary.size(); _i++)
176  // Loop over the connected dof indices so we can get all the jacobian contributions
177  for (_j = 0; _j < _connected_dof_indices.size(); _j++)
179 
180  // Just do a direct assignment here because the Jacobian coming from assembly has already been
181  // properly sized according to the neighbor _var dof indices. It has also been zeroed
183  if (_Ken.m() && _Ken.n())
184  for (_i = 0; _i < _test_secondary.size(); _i++)
185  for (_j = 0; _j < _phi_primary.size(); _j++)
187  // Don't accumulate here
188 
189  for (_i = 0; _i < _test_primary.size(); _i++)
190  // Loop over the connected dof indices so we can get all the jacobian contributions
191  for (_j = 0; _j < _connected_dof_indices.size(); _j++)
193 
196  if (_local_ke.m() && _local_ke.n())
197  for (_i = 0; _i < _test_primary.size(); _i++)
198  for (_j = 0; _j < _phi_primary.size(); _j++)
201 }
MooseVariable & _var
unsigned int number() const
Get variable number coming from libMesh.
MooseVariable & _primary_var
Primary side variable.
DenseMatrix< Number > _Kne
The Jacobian corresponding to the derivatives of the neighbor/primary residual with respect to the el...
DenseMatrix< Number > _Ken
The Jacobian corresponding to the derivatives of the elemental/secondary residual with respect to the...
unsigned int m() const
unsigned int _i
Definition: Constraint.h:35
const VariableTestValue & _test_primary
Side test function.
DenseMatrix< Number > _local_ke
Holds local Jacobian entries as they are accumulated by this Kernel.
DenseMatrix< Number > _Kee
The Jacobian corresponding to the derivatives of the elemental/secondary residual with respect to the...
void prepareMatrixTagNeighbor(Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type)
Prepare data for computing element jacobian according to the active tags for DG and interface kernels...
unsigned int _j
Definition: Constraint.h:35
virtual void getConnectedDofIndices(unsigned int var_num)
Gets the indices for all dofs connected to the constraint.
void accumulateTaggedLocalMatrix()
Local Jacobian blocks will be appended by adding the current local kernel Jacobian.
Assembly & _assembly
Reference to this Kernel&#39;s assembly object.
VariableTestValue _test_secondary
Shape function on the secondary side. This will always only have one entry and that entry will always...
const dof_id_type & nodalDofIndex() const override
void resize(const unsigned int new_m, const unsigned int new_n)
std::vector< dof_id_type > _connected_dof_indices
const VariablePhiValue & _phi_primary
Side shape function.
VariablePhiValue _phi_secondary
Shape function on the secondary side. This will always.
unsigned int n() const
virtual Real computeQpJacobian(Moose::ConstraintJacobianType type)=0
This is the virtual that derived classes should override for computing the Jacobian on neighboring el...
unsigned int _qp
Definition: Constraint.h:36

◆ computeNonlocalJacobian()

virtual void ResidualObject::computeNonlocalJacobian ( )
inlinevirtualinherited

Compute this object's contribution to the diagonal Jacobian entries corresponding to nonlocal dofs of the variable.

Reimplemented in NonlocalIntegratedBC, and NonlocalKernel.

Definition at line 88 of file ResidualObject.h.

88 {}

◆ computeNonlocalOffDiagJacobian()

virtual void ResidualObject::computeNonlocalOffDiagJacobian ( unsigned int  )
inlinevirtualinherited

Computes Jacobian entries corresponding to nonlocal dofs of the jvar.

Reimplemented in NonlocalIntegratedBC, and NonlocalKernel.

Definition at line 93 of file ResidualObject.h.

93 {}

◆ computeOffDiagJacobian()

void NodeFaceConstraint::computeOffDiagJacobian ( unsigned int  jvar)
overridevirtual

Computes d-residual / d-jvar...

Reimplemented from ResidualObject.

Definition at line 204 of file NodeFaceConstraint.C.

205 {
206  getConnectedDofIndices(jvar_num);
207 
210 
211  _phi_secondary.resize(_connected_dof_indices.size());
212 
213  _qp = 0;
214 
215  auto primary_jsize = getVariable(jvar_num).dofIndicesNeighbor().size();
216 
217  // Fill up _phi_secondary so that it is 1 when j corresponds to this dof and 0 for every other dof
218  // This corresponds to evaluating all of the connected shape functions at _this_ node
219  for (unsigned int j = 0; j < _connected_dof_indices.size(); j++)
220  {
221  _phi_secondary[j].resize(1);
222 
224  _phi_secondary[j][_qp] = 1.0;
225  else
226  _phi_secondary[j][_qp] = 0.0;
227  }
228 
229  for (_i = 0; _i < _test_secondary.size(); _i++)
230  // Loop over the connected dof indices so we can get all the jacobian contributions
231  for (_j = 0; _j < _connected_dof_indices.size(); _j++)
233 
234  // Just do a direct assignment here because the Jacobian coming from assembly has already been
235  // properly sized according to the jvar neighbor dof indices. It has also been zeroed
237  for (_i = 0; _i < _test_secondary.size(); _i++)
238  for (_j = 0; _j < primary_jsize; _j++)
240  // Don't accumulate here
241 
242  if (_Kne.m() && _Kne.n())
243  for (_i = 0; _i < _test_primary.size(); _i++)
244  // Loop over the connected dof indices so we can get all the jacobian contributions
245  for (_j = 0; _j < _connected_dof_indices.size(); _j++)
247 
249  for (_i = 0; _i < _test_primary.size(); _i++)
250  for (_j = 0; _j < primary_jsize; _j++)
253 }
MooseVariable & _var
unsigned int number() const
Get variable number coming from libMesh.
MooseVariable & _primary_var
Primary side variable.
DenseMatrix< Number > _Kne
The Jacobian corresponding to the derivatives of the neighbor/primary residual with respect to the el...
DenseMatrix< Number > _Ken
The Jacobian corresponding to the derivatives of the elemental/secondary residual with respect to the...
unsigned int m() const
unsigned int _i
Definition: Constraint.h:35
const VariableTestValue & _test_primary
Side test function.
DenseMatrix< Number > _local_ke
Holds local Jacobian entries as they are accumulated by this Kernel.
const MooseVariableFieldBase & getVariable(unsigned int jvar_num) const
Retrieve the variable object from our system associated with jvar_num.
DenseMatrix< Number > _Kee
The Jacobian corresponding to the derivatives of the elemental/secondary residual with respect to the...
void prepareMatrixTagNeighbor(Assembly &assembly, unsigned int ivar, unsigned int jvar, Moose::DGJacobianType type)
Prepare data for computing element jacobian according to the active tags for DG and interface kernels...
unsigned int _j
Definition: Constraint.h:35
virtual const std::vector< dof_id_type > & dofIndicesNeighbor() const =0
Get neighbor DOF indices for currently selected element.
virtual void getConnectedDofIndices(unsigned int var_num)
Gets the indices for all dofs connected to the constraint.
void accumulateTaggedLocalMatrix()
Local Jacobian blocks will be appended by adding the current local kernel Jacobian.
Assembly & _assembly
Reference to this Kernel&#39;s assembly object.
VariableTestValue _test_secondary
Shape function on the secondary side. This will always only have one entry and that entry will always...
const dof_id_type & nodalDofIndex() const override
void resize(const unsigned int new_m, const unsigned int new_n)
std::vector< dof_id_type > _connected_dof_indices
VariablePhiValue _phi_secondary
Shape function on the secondary side. This will always.
unsigned int n() const
unsigned int _qp
Definition: Constraint.h:36
virtual Real computeQpOffDiagJacobian(Moose::ConstraintJacobianType, unsigned int)
This is the virtual that derived classes should override for computing the off-diag Jacobian...

◆ computeOffDiagJacobianScalar()

virtual void ResidualObject::computeOffDiagJacobianScalar ( unsigned int  )
inlinevirtualinherited

◆ computeQpJacobian()

virtual Real NodeFaceConstraint::computeQpJacobian ( Moose::ConstraintJacobianType  type)
protectedpure virtual

This is the virtual that derived classes should override for computing the Jacobian on neighboring element.

Implemented in CoupledTiedValueConstraint, and TiedValueConstraint.

Referenced by computeJacobian().

◆ computeQpOffDiagJacobian()

virtual Real NodeFaceConstraint::computeQpOffDiagJacobian ( Moose::ConstraintJacobianType  ,
unsigned int   
)
inlineprotectedvirtual

This is the virtual that derived classes should override for computing the off-diag Jacobian.

Reimplemented in CoupledTiedValueConstraint.

Definition at line 162 of file NodeFaceConstraint.h.

Referenced by computeOffDiagJacobian().

164  {
165  return 0;
166  }

◆ computeQpResidual()

virtual Real NodeFaceConstraint::computeQpResidual ( Moose::ConstraintType  type)
protectedpure virtual

This is the virtual that derived classes should override for computing the residual on neighboring element.

Implemented in CoupledTiedValueConstraint, and TiedValueConstraint.

Referenced by computeResidual().

◆ computeQpSecondaryValue()

virtual Real NodeFaceConstraint::computeQpSecondaryValue ( )
protectedpure virtual

Compute the value the secondary node should have at the beginning of a timestep.

Implemented in CoupledTiedValueConstraint, and TiedValueConstraint.

Referenced by computeSecondaryValue().

◆ computeResidual()

void NodeFaceConstraint::computeResidual ( )
overridevirtual

Computes the residual Nodal residual.

Implements ResidualObject.

Definition at line 135 of file NodeFaceConstraint.C.

136 {
137  _qp = 0;
138 
140  for (_i = 0; _i < _test_primary.size(); _i++)
143 
145  _i = 0;
149 }
bool _secondary_residual_computed
Whether the secondary residual has been computed.
void accumulateTaggedLocalResidual()
Local residual blocks will be appended by adding the current local kernel residual.
MooseVariable & _var
unsigned int number() const
Get variable number coming from libMesh.
virtual Real computeQpResidual(Moose::ConstraintType type)=0
This is the virtual that derived classes should override for computing the residual on neighboring el...
MooseVariable & _primary_var
Primary side variable.
void assignTaggedLocalResidual()
Local residual blocks will assigned as the current local kernel residual.
unsigned int _i
Definition: Constraint.h:35
const VariableTestValue & _test_primary
Side test function.
Real _secondary_residual
The value of the secondary residual.
Assembly & _assembly
Reference to this Kernel&#39;s assembly object.
void prepareVectorTagNeighbor(Assembly &assembly, unsigned int ivar)
Prepare data for computing element residual the according to active tags for DG and interface kernels...
DenseVector< Number > _local_re
Holds local residual entries as they are accumulated by this Kernel.
void prepareVectorTag(Assembly &assembly, unsigned int ivar)
Prepare data for computing element residual according to active tags.
unsigned int _qp
Definition: Constraint.h:36

◆ computeResidualAndJacobian()

void ResidualObject::computeResidualAndJacobian ( )
virtualinherited

Compute this object's contribution to the residual and Jacobian simultaneously.

Reimplemented in InterfaceKernelTempl< T >, ADNodalBCTempl< Real, ADDirichletBCBase >, ADNodalBCTempl< T, ADDirichletBCBase >, ADNodalBCTempl< RealVectorValue, ADDirichletBCBase >, ADKernelScalarBase, FVFluxKernel, ADMortarConstraint, IntegratedBC, FVElementalKernel, ADKernelTempl< T >, FVScalarLagrangeMultiplierConstraint, NodalBC, ADIntegratedBCTempl< T >, Kernel, and ADKernelGradTempl< T >.

Definition at line 66 of file ResidualObject.C.

Referenced by ComputeResidualAndJacobianThread::compute().

67 {
68  mooseError(
69  "This object has not yet implemented 'computeResidualAndJacobian'. If you would like that "
70  "feature for this object, please contact a MOOSE developer.");
71 }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ computeSecondaryValue()

void NodeFaceConstraint::computeSecondaryValue ( NumericVector< Number > &  current_solution)
virtual

Compute the value the secondary node should have at the beginning of a timestep.

Definition at line 113 of file NodeFaceConstraint.C.

114 {
115  const dof_id_type & dof_idx = _var.nodalDofIndex();
116  _qp = 0;
117  current_solution.set(dof_idx, computeQpSecondaryValue());
118 }
MooseVariable & _var
virtual Real computeQpSecondaryValue()=0
Compute the value the secondary node should have at the beginning of a timestep.
const dof_id_type & nodalDofIndex() const override
virtual void set(const numeric_index_type i, const Number value)=0
unsigned int _qp
Definition: Constraint.h:36
uint8_t dof_id_type

◆ connectControllableParams()

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

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

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

Definition at line 33 of file MooseBaseParameterInterface.C.

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

◆ coupled()

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

Returns the index for a coupled variable by name.

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

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

Definition at line 441 of file Coupleable.C.

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

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

◆ coupledAllDofValues()

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

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

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

Definition at line 1943 of file Coupleable.C.

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

◆ coupledAllDofValuesOld()

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

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

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

Definition at line 1963 of file Coupleable.C.

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

◆ coupledAllDofValuesOlder()

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

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

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

Definition at line 1983 of file Coupleable.C.

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

◆ coupledArrayDofValues()

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

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

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

Definition at line 1991 of file Coupleable.C.

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

◆ coupledArrayDot()

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

Time derivative of a coupled array variable.

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

Definition at line 1318 of file Coupleable.C.

1319 {
1320  const auto * var = getArrayVar(var_name, comp);
1321  if (!var)
1324 
1325  if (!_coupleable_neighbor)
1326  {
1327  if (_c_nodal)
1328  return var->dofValuesDot();
1329  return var->uDot();
1330  }
1331  else
1332  {
1333  if (_c_nodal)
1334  return var->dofValuesDotNeighbor();
1335  return var->uDotNeighbor();
1336  }
1337 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableValue _default_array_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1437

◆ coupledArrayDotDot()

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

Second time derivative of a coupled array variable.

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

Definition at line 1340 of file Coupleable.C.

1341 {
1342  const auto * var = getArrayVar(var_name, comp);
1343  if (!var)
1346 
1347  if (!_coupleable_neighbor)
1348  {
1349  if (_c_nodal)
1350  return var->dofValuesDotDot();
1351  return var->uDotDot();
1352  }
1353  else
1354  {
1355  if (_c_nodal)
1356  return var->dofValuesDotDotNeighbor();
1357  return var->uDotDotNeighbor();
1358  }
1359 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableValue _default_array_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1437

◆ coupledArrayDotDotOld()

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

Old second time derivative of a coupled array variable.

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

Definition at line 1384 of file Coupleable.C.

1385 {
1386  const auto * var = getArrayVar(var_name, comp);
1387  if (!var)
1390 
1391  if (!_coupleable_neighbor)
1392  {
1393  if (_c_nodal)
1394  return var->dofValuesDotDotOld();
1395  return var->uDotDotOld();
1396  }
1397  else
1398  {
1399  if (_c_nodal)
1400  return var->dofValuesDotDotOldNeighbor();
1401  return var->uDotDotOldNeighbor();
1402  }
1403 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableValue _default_array_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1437

◆ coupledArrayDotDu()

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

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

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

Definition at line 1456 of file Coupleable.C.

1457 {
1458  const auto * const var = getArrayVar(var_name, comp);
1459  if (!var)
1460  {
1462  return _default_value_zero;
1463  }
1465 
1466  if (!_coupleable_neighbor)
1467  {
1468  if (_c_nodal)
1469  return var->dofValuesDuDotDu();
1470  return var->duDotDu();
1471  }
1472  else
1473  {
1474  if (_c_nodal)
1475  return var->dofValuesDuDotDuNeighbor();
1476  return var->duDotDuNeighbor();
1477  }
1478 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledArrayDotOld()

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

Old time derivative of a coupled array variable.

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

Definition at line 1362 of file Coupleable.C.

1363 {
1364  const auto * var = getArrayVar(var_name, comp);
1365  if (!var)
1368 
1369  if (!_coupleable_neighbor)
1370  {
1371  if (_c_nodal)
1372  return var->dofValuesDotOld();
1373  return var->uDotOld();
1374  }
1375  else
1376  {
1377  if (_c_nodal)
1378  return var->dofValuesDotOldNeighbor();
1379  return var->uDotOldNeighbor();
1380  }
1381 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableValue _default_array_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1437

◆ coupledArrayGradient()

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

Returns gradient of a coupled array variable.

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

Definition at line 1626 of file Coupleable.C.

1627 {
1628  const auto * var = getArrayVar(var_name, comp);
1629  if (!var)
1630  return _default_array_gradient;
1632 
1633  if (!_coupleable_neighbor)
1634  return (_c_is_implicit) ? var->gradSln() : var->gradSlnOld();
1635  return (_c_is_implicit) ? var->gradSlnNeighbor() : var->gradSlnOldNeighbor();
1636 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableGradient _default_array_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1440

◆ coupledArrayGradientDot()

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

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

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

Definition at line 1665 of file Coupleable.C.

1666 {
1667  const auto * const var = getArrayVar(var_name, comp);
1668  if (!var)
1669  return _default_array_gradient;
1671 
1672  if (!_coupleable_neighbor)
1673  return var->gradSlnDot();
1674  return var->gradSlnNeighborDot();
1675 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableGradient _default_array_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1440

◆ coupledArrayGradientOld()

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

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

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

Definition at line 1639 of file Coupleable.C.

1640 {
1641  const auto * var = getArrayVar(var_name, comp);
1642  if (!var)
1643  return _default_array_gradient;
1645 
1646  if (!_coupleable_neighbor)
1647  return (_c_is_implicit) ? var->gradSlnOld() : var->gradSlnOlder();
1648  return (_c_is_implicit) ? var->gradSlnOldNeighbor() : var->gradSlnOlderNeighbor();
1649 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableGradient _default_array_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1440

◆ coupledArrayGradientOlder()

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

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

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

Definition at line 1652 of file Coupleable.C.

1653 {
1654  const auto * var = getArrayVar(var_name, comp);
1655  if (!var)
1656  return _default_array_gradient;
1658 
1659  if (!_coupleable_neighbor)
1660  return var->gradSlnOlder();
1661  return var->gradSlnOlderNeighbor();
1662 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305
ArrayVariableGradient _default_array_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1440

◆ coupledArrayNeighborGradient()

const ArrayVariableGradient & NeighborCoupleable::coupledArrayNeighborGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 287 of file NeighborCoupleable.C.

289 {
290  if (_neighbor_nodal)
291  mooseError("Gradients are non-sensical with nodal compute objects");
292 
293  const auto * var = getArrayVar(var_name, comp);
294  return (_c_is_implicit) ? var->gradSlnNeighbor() : var->gradSlnOldNeighbor();
295 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledArrayNeighborGradientOld()

const ArrayVariableGradient & NeighborCoupleable::coupledArrayNeighborGradientOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 298 of file NeighborCoupleable.C.

300 {
301  if (_neighbor_nodal)
302  mooseError("Gradients are non-sensical with nodal compute objects");
303 
304  validateExecutionerType(var_name, "coupledArrayNeighborGradientOld");
305  const auto * var = getArrayVar(var_name, comp);
306  return (_c_is_implicit) ? var->gradSlnOldNeighbor() : var->gradSlnOlderNeighbor();
307 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
Definition: Coupleable.C:2021
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledArrayNeighborGradientOlder()

const ArrayVariableGradient & NeighborCoupleable::coupledArrayNeighborGradientOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 310 of file NeighborCoupleable.C.

312 {
313  if (_neighbor_nodal)
314  mooseError("Gradients are non-sensical with nodal compute objects");
315 
316  validateExecutionerType(var_name, "coupledArrayNeighborGradientOlder");
317  const auto * var = getArrayVar(var_name, comp);
318  if (_c_is_implicit)
319  return var->gradSlnOlderNeighbor();
320  else
321  mooseError("Older values not available for explicit schemes");
322 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
Definition: Coupleable.C:2021
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledArrayNeighborValue()

const ArrayVariableValue & NeighborCoupleable::coupledArrayNeighborValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 277 of file NeighborCoupleable.C.

278 {
279  const auto * var = getArrayVar(var_name, comp);
280  if (_neighbor_nodal)
281  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
282  else
283  return (_c_is_implicit) ? var->slnNeighbor() : var->slnOldNeighbor();
284 }
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledArrayValue()

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

Returns value of a coupled array variable.

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

Definition at line 834 of file Coupleable.C.

Referenced by Coupleable::coupledArrayValues().

835 {
836  const auto * var = getArrayVar(var_name, comp);
837  if (!var)
838  return *getDefaultArrayValue(var_name);
840 
842  {
843  if (_c_nodal)
844  return (_c_is_implicit) ? var->dofValues() : var->dofValuesOld();
845  return (_c_is_implicit) ? var->sln() : var->slnOld();
846  }
847  else
848  {
849  if (_c_nodal)
850  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
851  return (_c_is_implicit) ? var->slnNeighbor() : var->slnOldNeighbor();
852  }
853 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
const ArrayVariableValue * getDefaultArrayValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled array variable...
Definition: Coupleable.C:396
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledArrayValueOld()

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

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

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

Definition at line 1078 of file Coupleable.C.

1079 {
1080  const auto * var = getArrayVar(var_name, comp);
1081  if (!var)
1082  return *getDefaultArrayValue(var_name);
1084 
1085  if (!_coupleable_neighbor)
1086  {
1087  if (_c_nodal)
1088  return (_c_is_implicit) ? var->dofValuesOld() : var->dofValuesOlder();
1089  return (_c_is_implicit) ? var->slnOld() : var->slnOlder();
1090  }
1091  else
1092  {
1093  if (_c_nodal)
1094  return (_c_is_implicit) ? var->dofValuesOldNeighbor() : var->dofValuesOlderNeighbor();
1095  return (_c_is_implicit) ? var->slnOldNeighbor() : var->slnOlderNeighbor();
1096  }
1097 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
const ArrayVariableValue * getDefaultArrayValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled array variable...
Definition: Coupleable.C:396
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledArrayValueOlder()

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

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

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

Definition at line 1100 of file Coupleable.C.

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

◆ coupledArrayValues()

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

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

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

Definition at line 856 of file Coupleable.C.

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

◆ coupledCallback()

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

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

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

Definition at line 135 of file Coupleable.h.

Referenced by Coupleable::checkFuncType().

135 {}

◆ coupledComponents()

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

Number of coupled components.

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

Definition at line 157 of file Coupleable.C.

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

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

◆ coupledCurl()

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

Returns curl of a coupled variable.

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

Definition at line 1678 of file Coupleable.C.

1679 {
1680  const auto * var = getVectorVar(var_name, comp);
1681  if (!var)
1682  {
1684  return _default_vector_curl;
1685  }
1687 
1688  if (!_coupleable_neighbor)
1689  return (_c_is_implicit) ? var->curlSln() : var->curlSlnOld();
1690  return (_c_is_implicit) ? var->curlSlnNeighbor() : var->curlSlnOldNeighbor();
1691 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorVariableCurl _default_vector_curl
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1431
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledCurlOld()

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

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

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

Definition at line 1694 of file Coupleable.C.

1695 {
1696  const auto * var = getVectorVar(var_name, comp);
1697  if (!var)
1698  {
1700  return _default_vector_curl;
1701  }
1703 
1704  if (!_coupleable_neighbor)
1705  return (_c_is_implicit) ? var->curlSlnOld() : var->curlSlnOlder();
1706  return (_c_is_implicit) ? var->curlSlnOldNeighbor() : var->curlSlnOlderNeighbor();
1707 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorVariableCurl _default_vector_curl
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1431
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledCurlOlder()

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

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

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

Definition at line 1710 of file Coupleable.C.

1711 {
1712  const auto * var = getVectorVar(var_name, comp);
1713  if (!var)
1714  {
1716  return _default_vector_curl;
1717  }
1719 
1720  if (!_coupleable_neighbor)
1721  return var->curlSlnOlder();
1722  return var->curlSlnOlderNeighbor();
1723 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorVariableCurl _default_vector_curl
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1431
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledDofValues()

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

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

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

Definition at line 1930 of file Coupleable.C.

Referenced by Coupleable::coupledAllDofValues().

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

◆ coupledDofValuesOld()

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

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

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

Definition at line 1950 of file Coupleable.C.

Referenced by Coupleable::coupledAllDofValuesOld().

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

◆ coupledDofValuesOlder()

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

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

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

Definition at line 1970 of file Coupleable.C.

Referenced by Coupleable::coupledAllDofValuesOlder().

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

◆ coupledDot()

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

Time derivative of a coupled variable.

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

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

Definition at line 1122 of file Coupleable.C.

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

1123 {
1124  const auto * var = getVar(var_name, comp);
1125  if (!var)
1126  {
1128  return _default_value_zero;
1129  }
1131 
1132  if (!_coupleable_neighbor)
1133  {
1134  if (_c_nodal)
1135  return var->dofValuesDot();
1136  return var->uDot();
1137  }
1138  else
1139  {
1140  if (_c_nodal)
1141  return var->dofValuesDotNeighbor();
1142  return var->uDotNeighbor();
1143  }
1144 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledDotDot()

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

Second time derivative of a coupled variable.

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

Definition at line 1147 of file Coupleable.C.

1148 {
1149  const auto * var = getVar(var_name, comp);
1150  if (!var)
1151  {
1153  return _default_value_zero;
1154  }
1156 
1157  if (!_coupleable_neighbor)
1158  {
1159  if (_c_nodal)
1160  return var->dofValuesDotDot();
1161  return var->uDotDot();
1162  }
1163  else
1164  {
1165  if (_c_nodal)
1166  return var->dofValuesDotDotNeighbor();
1167  return var->uDotDotNeighbor();
1168  }
1169 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledDotDotDu()

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

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

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

Definition at line 1431 of file Coupleable.C.

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

◆ coupledDotDotOld()

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

Old second time derivative of a coupled variable.

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

Definition at line 1197 of file Coupleable.C.

1198 {
1199  const auto * var = getVar(var_name, comp);
1200  if (!var)
1201  {
1203  return _default_value_zero;
1204  }
1206 
1207  if (!_coupleable_neighbor)
1208  {
1209  if (_c_nodal)
1210  return var->dofValuesDotDotOld();
1211  return var->uDotDotOld();
1212  }
1213  else
1214  {
1215  if (_c_nodal)
1216  return var->dofValuesDotDotOldNeighbor();
1217  return var->uDotDotOldNeighbor();
1218  }
1219 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledDotDu()

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

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

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

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

Definition at line 1406 of file Coupleable.C.

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

1407 {
1408  const auto * var = getVar(var_name, comp);
1409  if (!var)
1410  {
1412  return _default_value_zero;
1413  }
1415 
1416  if (!_coupleable_neighbor)
1417  {
1418  if (_c_nodal)
1419  return var->dofValuesDuDotDu();
1420  return var->duDotDu();
1421  }
1422  else
1423  {
1424  if (_c_nodal)
1425  return var->dofValuesDuDotDuNeighbor();
1426  return var->duDotDuNeighbor();
1427  }
1428 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledDotOld()

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

Old time derivative of a coupled variable.

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

Definition at line 1172 of file Coupleable.C.

1173 {
1174  const auto * var = getVar(var_name, comp);
1175  if (!var)
1176  {
1178  return _default_value_zero;
1179  }
1181 
1182  if (!_coupleable_neighbor)
1183  {
1184  if (_c_nodal)
1185  return var->dofValuesDotOld();
1186  return var->uDotOld();
1187  }
1188  else
1189  {
1190  if (_c_nodal)
1191  return var->dofValuesDotOldNeighbor();
1192  return var->uDotOldNeighbor();
1193  }
1194 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledDots()

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

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

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

Definition at line 2629 of file Coupleable.C.

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

◆ coupledGenericDofValue() [1/3]

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

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

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

◆ coupledGenericDofValue() [2/3]

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

Definition at line 574 of file Coupleable.C.

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

◆ coupledGenericDofValue() [3/3]

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

Definition at line 581 of file Coupleable.C.

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

◆ coupledGenericGradient() [1/3]

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

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

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

◆ coupledGenericGradient() [2/3]

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

Definition at line 2354 of file Coupleable.C.

2355 {
2356  return coupledGradient(var_name, comp);
2357 }
virtual const VariableGradient & coupledGradient(const std::string &var_name, unsigned int comp=0) const
Returns gradient of a coupled variable.
Definition: Coupleable.C:1481

◆ coupledGenericGradient() [3/3]

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

Definition at line 2361 of file Coupleable.C.

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

◆ coupledGenericGradients() [1/3]

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

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

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

◆ coupledGenericGradients() [2/3]

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

Definition at line 2608 of file Coupleable.C.

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

◆ coupledGenericGradients() [3/3]

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

Definition at line 2601 of file Coupleable.C.

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

◆ coupledGenericNeighborGradient()

template<bool is_ad>
const auto & NeighborCoupleable::coupledGenericNeighborGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
inherited

Retrieve the coupled neighbor variable gradient whether AD or not.

Definition at line 147 of file NeighborCoupleable.h.

149 {
150  if constexpr (is_ad)
151  return adCoupledNeighborGradient(var_name, comp);
152  else
153  return coupledNeighborGradient(var_name, comp);
154 }
virtual const ADVariableGradient & adCoupledNeighborGradient(const std::string &var_name, unsigned int comp=0) const
Get the coupled neighbor variable gradient for var_name with derivative information for automatic dif...
virtual const VariableGradient & coupledNeighborGradient(const std::string &var_name, unsigned int comp=0) const

◆ coupledGenericNeighborValue()

template<bool is_ad>
const auto & NeighborCoupleable::coupledGenericNeighborValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
inherited

Retrieve the coupled neighbor variable value whether AD or not.

Definition at line 136 of file NeighborCoupleable.h.

138 {
139  if constexpr (is_ad)
140  return adCoupledNeighborValue(var_name, comp);
141  else
142  return coupledNeighborValue(var_name, comp);
143 }
virtual const VariableValue & coupledNeighborValue(const std::string &var_name, unsigned int comp=0) const
virtual const ADVariableValue & adCoupledNeighborValue(const std::string &var_name, unsigned int comp=0) const
Get the coupled neighbor variable value for var_name with derivative information for automatic differ...

◆ coupledGenericScalarValue() [1/3]

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

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

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

◆ coupledGenericScalarValue() [2/3]

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

Definition at line 152 of file ScalarCoupleable.C.

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

◆ coupledGenericScalarValue() [3/3]

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

Definition at line 160 of file ScalarCoupleable.C.

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

◆ coupledGenericValue() [1/3]

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

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

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

◆ coupledGenericValue() [2/3]

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

Definition at line 469 of file Coupleable.C.

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

◆ coupledGenericValue() [3/3]

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

Definition at line 476 of file Coupleable.C.

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

◆ coupledGenericValues() [1/3]

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

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

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

◆ coupledGenericValues() [2/3]

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

Definition at line 2413 of file Coupleable.C.

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

◆ coupledGenericValues() [3/3]

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

Definition at line 2420 of file Coupleable.C.

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

◆ coupledGradient()

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

Returns gradient of a coupled variable.

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

Definition at line 1481 of file Coupleable.C.

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

1482 {
1483  const auto * const var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
1484  if (!var)
1485  {
1487  return _default_gradient;
1488  }
1490 
1491  if (!_coupleable_neighbor)
1492  return (_c_is_implicit) ? var->gradSln() : var->gradSlnOld();
1493  return (_c_is_implicit) ? var->gradSlnNeighbor() : var->gradSlnOldNeighbor();
1494 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1385
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledGradientDot()

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

Time derivative of the gradient of a coupled variable.

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

Definition at line 1546 of file Coupleable.C.

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

◆ coupledGradientDotDot()

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

Second time derivative of the gradient of a coupled variable.

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

Definition at line 1562 of file Coupleable.C.

1563 {
1564  const auto * var = getVar(var_name, comp);
1565  if (!var)
1566  {
1568  return _default_gradient;
1569  }
1571 
1572  if (!_coupleable_neighbor)
1573  return var->gradSlnDotDot();
1574  return var->gradSlnNeighborDotDot();
1575 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1385
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledGradientOld()

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

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

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

Definition at line 1497 of file Coupleable.C.

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

1498 {
1499  const auto * var = getVar(var_name, comp);
1500  if (!var)
1501  {
1503  return _default_gradient;
1504  }
1506 
1507  if (!_coupleable_neighbor)
1508  return (_c_is_implicit) ? var->gradSlnOld() : var->gradSlnOlder();
1509  return (_c_is_implicit) ? var->gradSlnOldNeighbor() : var->gradSlnOlderNeighbor();
1510 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1385
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledGradientOlder()

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

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

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

Definition at line 1513 of file Coupleable.C.

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

1514 {
1515  const auto * var = getVar(var_name, comp);
1516  if (!var)
1517  {
1519  return _default_gradient;
1520  }
1522 
1523  if (!_coupleable_neighbor)
1524  return var->gradSlnOlder();
1525  return var->gradSlnOlderNeighbor();
1526 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1385
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledGradientPreviousNL()

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

Returns gradient of a coupled variable for previous Newton iterate.

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

Definition at line 1529 of file Coupleable.C.

1530 {
1531  const auto * var = getVar(var_name, comp);
1533  if (!var)
1534  {
1536  return _default_gradient;
1537  }
1539 
1540  if (!_coupleable_neighbor)
1541  return var->gradSlnPreviousNL();
1542  return var->gradSlnPreviousNLNeighbor();
1543 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
VariableGradient _default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1385
void needsPreviousNewtonIteration(bool state)
Set a flag that indicated that user required values for the previous Newton iterate.
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledGradients()

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

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

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

Definition at line 2593 of file Coupleable.C.

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

◆ coupledGradientsOld()

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

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

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

Definition at line 2622 of file Coupleable.C.

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

◆ coupledIndices()

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

Returns the indices for a coupled variable's components.

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

Definition at line 2367 of file Coupleable.C.

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

◆ coupledMatrixTagScalarValue()

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

Returns value of a scalar coupled variable.

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

Definition at line 202 of file ScalarCoupleable.C.

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

◆ coupledMatrixTagValue() [1/2]

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

Returns value of a coupled variable for a given tag.

This couples the diag vector of matrix

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

Definition at line 776 of file Coupleable.C.

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

779 {
780  const auto * var = getVarHelper<MooseVariableField<Real>>(var_names, index);
781  if (!var)
782  mooseError(var_names, ": invalid variable name for coupledMatrixTagValue");
784 
785  const_cast<Coupleable *>(this)->addFEVariableCoupleableMatrixTag(tag);
786 
787  if (_c_nodal)
788  return var->nodalMatrixTagValue(tag);
789  return var->matrixTagValue(tag);
790 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
Interface for objects that needs coupling capabilities.
Definition: Coupleable.h:45
void addFEVariableCoupleableMatrixTag(TagID tag)
Definition: Coupleable.h:104

◆ coupledMatrixTagValue() [2/2]

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

Definition at line 793 of file Coupleable.C.

796 {
797  if (!_c_parameters.isParamValid(tag_name))
798  mooseError("Tag name parameter '", tag_name, "' is invalid");
799 
800  TagName tagname = _c_parameters.get<TagName>(tag_name);
801  if (!_c_fe_problem.matrixTagExists(tagname))
802  mooseError("Matrix tag name '", tagname, "' does not exist");
803 
804  TagID tag = _c_fe_problem.getMatrixTagID(tagname);
805  return coupledMatrixTagValue(var_names, tag, index);
806 }
unsigned int TagID
Definition: MooseTypes.h:199
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
virtual const VariableValue & coupledMatrixTagValue(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns value of a coupled variable for a given tag.
Definition: Coupleable.C:776
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
virtual TagID getMatrixTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:320
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
virtual bool matrixTagExists(const TagName &tag_name) const
Check to see if a particular Tag exists.
Definition: SubProblem.C:306
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledMatrixTagValues() [1/2]

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

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

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

Definition at line 2556 of file Coupleable.C.

Referenced by Coupleable::coupledMatrixTagValues().

2557 {
2558  auto func = [this, &var_names, &tag](unsigned int comp)
2559  { return &coupledMatrixTagValue(var_names, tag, comp); };
2560  return coupledVectorHelper<const VariableValue *>(var_names, func);
2561 }
virtual const VariableValue & coupledMatrixTagValue(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns value of a coupled variable for a given tag.
Definition: Coupleable.C:776

◆ coupledMatrixTagValues() [2/2]

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

Definition at line 2564 of file Coupleable.C.

2566 {
2567  if (!_c_parameters.isParamValid(tag_name))
2568  mooseError("Tag name parameter '", tag_name, "' is invalid");
2569 
2570  TagName tagname = _c_parameters.get<TagName>(tag_name);
2571  if (!_c_fe_problem.matrixTagExists(tagname))
2572  mooseError("Matrix tag name '", tagname, "' does not exist");
2573 
2574  TagID tag = _c_fe_problem.getMatrixTagID(tagname);
2575  return coupledMatrixTagValues(var_names, tag);
2576 }
unsigned int TagID
Definition: MooseTypes.h:199
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
virtual TagID getMatrixTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:320
std::vector< const VariableValue * > coupledMatrixTagValues(const std::string &var_names, TagID tag) const
Returns the diagonal matrix values for all the coupled variables desired for a given tag...
Definition: Coupleable.C:2556
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
virtual bool matrixTagExists(const TagName &tag_name) const
Check to see if a particular Tag exists.
Definition: SubProblem.C:306
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledName()

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

Names of the variable in the Coupleable interface.

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

Definition at line 2374 of file Coupleable.C.

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

2375 {
2376  if (getFieldVar(var_name, comp))
2377  return getFieldVar(var_name, comp)->name();
2378  // Detect if we are in the case where a constant was passed in lieu of a variable
2379  else if (isCoupledConstant(var_name))
2381  ": a variable name was queried but a constant was passed for parameter '",
2382  var_name,
2383  "Either pass a true variable or contact a developer to shield the call to "
2384  "'coupledName' with 'isCoupledConstant'");
2385  else
2386  mooseError(
2387  _c_name, ": Variable '", var_name, "' does not exist, yet its coupled name is requested");
2388 }
virtual bool isCoupledConstant(const std::string &var_name) const
Returns true if a variable passed as a coupled value is really a constant.
Definition: Coupleable.C:151
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const std::string & name() const override
Get the variable name.
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314
const MooseVariableFieldBase * getFieldVar(const std::string &var_name, unsigned int comp) const
Definition: Coupleable.C:281

◆ coupledNames()

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

Names of the variables in the Coupleable interface.

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

Definition at line 2391 of file Coupleable.C.

2392 {
2393  auto func = [this, &var_name](unsigned int comp) { return coupledName(var_name, comp); };
2394  return coupledVectorHelper<VariableName>(var_name, func);
2395 }
VariableName coupledName(const std::string &var_name, unsigned int comp=0) const
Names of the variable in the Coupleable interface.
Definition: Coupleable.C:2374

◆ coupledNeighborDofValues()

const VariableValue & NeighborCoupleable::coupledNeighborDofValues ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 335 of file NeighborCoupleable.C.

336 {
337  if (_neighbor_nodal)
338  mooseError("nodal objects should not call coupledDofValues");
339 
340  const auto * var = getVar(var_name, comp);
341  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
342 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledNeighborDofValuesOld()

const VariableValue & NeighborCoupleable::coupledNeighborDofValuesOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 345 of file NeighborCoupleable.C.

347 {
348  if (_neighbor_nodal)
349  mooseError("nodal objects should not call coupledDofValuesOld");
350 
351  validateExecutionerType(var_name, "coupledNeighborDofValuesOld");
352  const auto * var = getVar(var_name, comp);
353  return (_c_is_implicit) ? var->dofValuesOldNeighbor() : var->dofValuesOlderNeighbor();
354 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
Definition: Coupleable.C:2021
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledNeighborDofValuesOlder()

const VariableValue & NeighborCoupleable::coupledNeighborDofValuesOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 357 of file NeighborCoupleable.C.

359 {
360  if (_neighbor_nodal)
361  mooseError("nodal objects should not call coupledDofValuesOlder");
362 
363  validateExecutionerType(var_name, "coupledNeighborDofValuesOlder");
364  const auto * var = getVar(var_name, comp);
365  if (_c_is_implicit)
366  return var->dofValuesOlderNeighbor();
367  else
368  mooseError("Older values not available for explicit schemes");
369 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
Definition: Coupleable.C:2021
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledNeighborGradient()

const VariableGradient & NeighborCoupleable::coupledNeighborGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 179 of file NeighborCoupleable.C.

Referenced by NeighborCoupleable::coupledGenericNeighborGradient(), NeighborCoupleable::coupledNeighborGradients(), NodeElemConstraint::coupledPrimaryGradient(), and coupledPrimaryGradient().

180 {
181  if (_neighbor_nodal)
182  mooseError("Nodal variables do not have gradients");
183 
184  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
185  return (_c_is_implicit) ? var->gradSlnNeighbor() : var->gradSlnOldNeighbor();
186 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledNeighborGradientOld()

const VariableGradient & NeighborCoupleable::coupledNeighborGradientOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 197 of file NeighborCoupleable.C.

Referenced by NodeElemConstraint::coupledPrimaryGradientOld(), and coupledPrimaryGradientOld().

199 {
200  if (_neighbor_nodal)
201  mooseError("Nodal variables do not have gradients");
202 
203  validateExecutionerType(var_name, "coupledNeighborGradientOld");
204  const auto * var = getVar(var_name, comp);
205  return (_c_is_implicit) ? var->gradSlnOldNeighbor() : var->gradSlnOlderNeighbor();
206 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
Definition: Coupleable.C:2021
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledNeighborGradientOlder()

const VariableGradient & NeighborCoupleable::coupledNeighborGradientOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 209 of file NeighborCoupleable.C.

Referenced by NodeElemConstraint::coupledPrimaryGradientOlder(), and coupledPrimaryGradientOlder().

211 {
212  if (_neighbor_nodal)
213  mooseError("Nodal variables do not have gradients");
214 
215  validateExecutionerType(var_name, "coupledNeighborGradientOlder");
216  const auto * var = getVar(var_name, comp);
217  if (_c_is_implicit)
218  return var->gradSlnOlderNeighbor();
219  else
220  mooseError("Older values not available for explicit schemes");
221 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
Definition: Coupleable.C:2021
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledNeighborGradients()

std::vector< const VariableGradient * > NeighborCoupleable::coupledNeighborGradients ( const std::string &  var_name) const
virtualinherited

Definition at line 189 of file NeighborCoupleable.C.

190 {
191  auto func = [this, &var_name](unsigned int comp)
192  { return &coupledNeighborGradient(var_name, comp); };
193  return coupledVectorHelper<const VariableGradient *>(var_name, func);
194 }
virtual const VariableGradient & coupledNeighborGradient(const std::string &var_name, unsigned int comp=0) const

◆ coupledNeighborSecond()

const VariableSecond & NeighborCoupleable::coupledNeighborSecond ( const std::string &  var_name,
unsigned int  i = 0 
) const
virtualinherited

Definition at line 325 of file NeighborCoupleable.C.

Referenced by NodeElemConstraint::coupledPrimarySecond(), and coupledPrimarySecond().

326 {
327  if (_neighbor_nodal)
328  mooseError("Nodal variables do not have second derivatives");
329 
330  const auto * var = getVar(var_name, comp);
331  return (_c_is_implicit) ? var->secondSlnNeighbor() : var->secondSlnOldNeighbor();
332 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledNeighborValue()

const VariableValue & NeighborCoupleable::coupledNeighborValue ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 27 of file NeighborCoupleable.C.

Referenced by NeighborCoupleable::coupledGenericNeighborValue(), NeighborCoupleable::coupledNeighborValues(), NodeElemConstraint::coupledPrimaryValue(), and coupledPrimaryValue().

28 {
29  const auto * var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
30  if (_neighbor_nodal)
31  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
32  else
33  return (_c_is_implicit) ? var->slnNeighbor() : var->slnOldNeighbor();
34 }
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledNeighborValueDot()

const VariableValue & NeighborCoupleable::coupledNeighborValueDot ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 125 of file NeighborCoupleable.C.

126 {
127  const auto * var = getVar(var_name, comp);
128  if (_neighbor_nodal)
129  return var->dofValuesDotNeighbor();
130  else
131  return var->uDotNeighbor();
132 }
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287

◆ coupledNeighborValueDotDu()

const VariableValue & NeighborCoupleable::coupledNeighborValueDotDu ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 135 of file NeighborCoupleable.C.

136 {
137  const auto * var = getVar(var_name, comp);
138  if (_neighbor_nodal)
139  return var->dofValuesDuDotDuNeighbor();
140  else
141  return var->duDotDuNeighbor();
142 }
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287

◆ coupledNeighborValueOld()

const VariableValue & NeighborCoupleable::coupledNeighborValueOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 145 of file NeighborCoupleable.C.

Referenced by NeighborCoupleable::coupledNeighborValuesOld(), NodeElemConstraint::coupledPrimaryValueOld(), and coupledPrimaryValueOld().

146 {
147  validateExecutionerType(var_name, "coupledNeighborValueOld");
148 
149  const auto * var = getVar(var_name, comp);
150  if (_neighbor_nodal)
151  return (_c_is_implicit) ? var->dofValuesOldNeighbor() : var->dofValuesOlderNeighbor();
152  else
153  return (_c_is_implicit) ? var->slnOldNeighbor() : var->slnOlderNeighbor();
154 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
Definition: Coupleable.C:2021
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledNeighborValueOlder()

const VariableValue & NeighborCoupleable::coupledNeighborValueOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 157 of file NeighborCoupleable.C.

Referenced by NeighborCoupleable::coupledNeighborValuesOlder(), NodeElemConstraint::coupledPrimaryValueOlder(), and coupledPrimaryValueOlder().

158 {
159  validateExecutionerType(var_name, "coupledNeighborValueOlder");
160 
161  const auto * var = getVar(var_name, comp);
162  if (_neighbor_nodal)
163  {
164  if (_c_is_implicit)
165  return var->dofValuesOlderNeighbor();
166  else
167  mooseError("Older values not available for explicit schemes");
168  }
169  else
170  {
171  if (_c_is_implicit)
172  return var->slnOlderNeighbor();
173  else
174  mooseError("Older values not available for explicit schemes");
175  }
176 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
Definition: Coupleable.C:2021
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledNeighborValues()

std::vector< const VariableValue * > NeighborCoupleable::coupledNeighborValues ( const std::string &  var_name) const
inherited

Definition at line 37 of file NeighborCoupleable.C.

38 {
39  auto func = [this, &var_name](unsigned int comp)
40  { return &coupledNeighborValue(var_name, comp); };
41  return coupledVectorHelper<const VariableValue *>(var_name, func);
42 }
virtual const VariableValue & coupledNeighborValue(const std::string &var_name, unsigned int comp=0) const

◆ coupledNeighborValuesOld()

std::vector< const VariableValue * > NeighborCoupleable::coupledNeighborValuesOld ( const std::string &  var_name) const
inherited

Definition at line 45 of file NeighborCoupleable.C.

46 {
47  auto func = [this, &var_name](unsigned int comp)
48  { return &coupledNeighborValueOld(var_name, comp); };
49  return coupledVectorHelper<const VariableValue *>(var_name, func);
50 }
virtual const VariableValue & coupledNeighborValueOld(const std::string &var_name, unsigned int comp=0) const

◆ coupledNeighborValuesOlder()

std::vector< const VariableValue * > NeighborCoupleable::coupledNeighborValuesOlder ( const std::string &  var_name) const
inherited

Definition at line 53 of file NeighborCoupleable.C.

54 {
55  auto func = [this, &var_name](unsigned int comp)
56  { return &coupledNeighborValueOlder(var_name, comp); };
57  return coupledVectorHelper<const VariableValue *>(var_name, func);
58 }
virtual const VariableValue & coupledNeighborValueOlder(const std::string &var_name, unsigned int comp=0) const

◆ coupledNodalDot()

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

Nodal values of time derivative of a coupled variable.

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

Definition at line 1868 of file Coupleable.C.

1869 {
1870  static const T zero = 0;
1871  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
1872  if (!var)
1873  return zero;
1875 
1876  if (!_coupleable_neighbor)
1877  return var->nodalValueDot();
1878  mooseError("Neighbor version not implemented");
1879 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const Number zero
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledNodalDotDot()

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

Nodal values of second time derivative of a coupled variable.

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

Definition at line 1882 of file Coupleable.C.

1883 {
1884  const auto * var = getVar(var_name, comp);
1885  if (!var)
1886  {
1888  return _default_value_zero;
1889  }
1891 
1892  if (!_coupleable_neighbor)
1893  return var->dofValuesDotDot();
1894  return var->dofValuesDotDotNeighbor();
1895 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledNodalDotDotOld()

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

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

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

Definition at line 1914 of file Coupleable.C.

1915 {
1916  const auto * var = getVar(var_name, comp);
1917  if (!var)
1918  {
1920  return _default_value_zero;
1921  }
1923 
1924  if (!_coupleable_neighbor)
1925  return var->dofValuesDotDotOld();
1926  return var->dofValuesDotDotOldNeighbor();
1927 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledNodalDotOld()

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

Nodal values of old time derivative of a coupled variable.

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

Definition at line 1898 of file Coupleable.C.

1899 {
1900  const auto * var = getVar(var_name, comp);
1901  if (!var)
1902  {
1904  return _default_value_zero;
1905  }
1907 
1908  if (!_coupleable_neighbor)
1909  return var->dofValuesDotOld();
1910  return var->dofValuesDotOldNeighbor();
1911 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledNodalValue()

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

Returns nodal values of a coupled variable.

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

Definition at line 1792 of file Coupleable.C.

1793 {
1794  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
1795  if (!var)
1796  return getDefaultNodalValue<T>(var_name, comp);
1798 
1799  if (!var->isNodal())
1801  ": Trying to get nodal values of variable '",
1802  var->name(),
1803  "', but it is not nodal.");
1804 
1805  if (!_coupleable_neighbor)
1806  return (_c_is_implicit) ? var->nodalValue() : var->nodalValueOld();
1807  return (_c_is_implicit) ? var->nodalValueNeighbor() : var->nodalValueOldNeighbor();
1808 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledNodalValueOld()

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

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

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

Definition at line 1812 of file Coupleable.C.

1813 {
1814  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
1815  if (!var)
1816  return getDefaultNodalValue<T>(var_name, comp);
1818 
1819  if (!var->isNodal())
1821  ": Trying to get old nodal values of variable '",
1822  var->name(),
1823  "', but it is not nodal.");
1824 
1825  if (!_coupleable_neighbor)
1826  return (_c_is_implicit) ? var->nodalValueOld() : var->nodalValueOlder();
1827  return (_c_is_implicit) ? var->nodalValueOldNeighbor() : var->nodalValueOlderNeighbor();
1828 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledNodalValueOlder()

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

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

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

Definition at line 1832 of file Coupleable.C.

1833 {
1834  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
1835  if (!var)
1836  return getDefaultNodalValue<T>(var_name, comp);
1838 
1839  if (!var->isNodal())
1841  ": Trying to get older nodal values of variable '",
1842  var->name(),
1843  "', but it is not nodal.");
1844 
1845  if (!_coupleable_neighbor)
1846  return var->nodalValueOlder();
1847  return var->nodalValueOlderNeighbor();
1848 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledNodalValuePreviousNL()

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

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

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

Definition at line 1852 of file Coupleable.C.

1853 {
1854  const auto * var = getVarHelper<MooseVariableFE<T>>(var_name, comp);
1855  if (!var)
1856  return getDefaultNodalValue<T>(var_name, comp);
1858 
1860 
1861  if (!_coupleable_neighbor)
1862  return var->nodalValuePreviousNL();
1863  return var->nodalValuePreviousNLNeighbor();
1864 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
void needsPreviousNewtonIteration(bool state)
Set a flag that indicated that user required values for the previous Newton iterate.
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledPostprocessors()

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

Returns number of Postprocessors coupled under parameter name.

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

Definition at line 129 of file PostprocessorInterface.C.

Referenced by FunctionValuePostprocessor::FunctionValuePostprocessor().

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

◆ coupledPrimaryGradient()

virtual const VariableGradient& NodeFaceConstraint::coupledPrimaryGradient ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 223 of file NodeFaceConstraint.h.

225  {
226  return coupledNeighborGradient(var_name, comp);
227  }
virtual const VariableGradient & coupledNeighborGradient(const std::string &var_name, unsigned int comp=0) const

◆ coupledPrimaryGradientOld()

virtual const VariableGradient& NodeFaceConstraint::coupledPrimaryGradientOld ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 228 of file NodeFaceConstraint.h.

230  {
231  return coupledNeighborGradientOld(var_name, comp);
232  }
virtual const VariableGradient & coupledNeighborGradientOld(const std::string &var_name, unsigned int comp=0) const

◆ coupledPrimaryGradientOlder()

virtual const VariableGradient& NodeFaceConstraint::coupledPrimaryGradientOlder ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 233 of file NodeFaceConstraint.h.

235  {
236  return coupledNeighborGradientOlder(var_name, comp);
237  }
virtual const VariableGradient & coupledNeighborGradientOlder(const std::string &var_name, unsigned int comp=0) const

◆ coupledPrimarySecond()

virtual const VariableSecond& NodeFaceConstraint::coupledPrimarySecond ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 239 of file NodeFaceConstraint.h.

241  {
242  return coupledNeighborSecond(var_name, comp);
243  }
virtual const VariableSecond & coupledNeighborSecond(const std::string &var_name, unsigned int i=0) const

◆ coupledPrimaryValue()

virtual const VariableValue& NodeFaceConstraint::coupledPrimaryValue ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 207 of file NodeFaceConstraint.h.

209  {
210  return coupledNeighborValue(var_name, comp);
211  }
virtual const VariableValue & coupledNeighborValue(const std::string &var_name, unsigned int comp=0) const

◆ coupledPrimaryValueOld()

virtual const VariableValue& NodeFaceConstraint::coupledPrimaryValueOld ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 212 of file NodeFaceConstraint.h.

214  {
215  return coupledNeighborValueOld(var_name, comp);
216  }
virtual const VariableValue & coupledNeighborValueOld(const std::string &var_name, unsigned int comp=0) const

◆ coupledPrimaryValueOlder()

virtual const VariableValue& NodeFaceConstraint::coupledPrimaryValueOlder ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 217 of file NodeFaceConstraint.h.

219  {
220  return coupledNeighborValueOlder(var_name, comp);
221  }
virtual const VariableValue & coupledNeighborValueOlder(const std::string &var_name, unsigned int comp=0) const

◆ coupledScalar()

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

Returns the index for a scalar coupled variable by name.

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

Definition at line 93 of file ScalarCoupleable.C.

Referenced by ParsedODEKernel::ParsedODEKernel().

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

◆ coupledScalarComponents()

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

Return the number of components to the coupled scalar variable.

Parameters
var_nameThe of the coupled variable

Definition at line 353 of file ScalarCoupleable.C.

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

◆ coupledScalarDot()

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

Returns the time derivative of a scalar coupled variable.

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

Definition at line 244 of file ScalarCoupleable.C.

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

◆ coupledScalarDotDot()

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

Returns the second time derivative of a scalar coupled variable.

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

Definition at line 260 of file ScalarCoupleable.C.

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

◆ coupledScalarDotDotDu()

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

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

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

Definition at line 292 of file ScalarCoupleable.C.

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

◆ coupledScalarDotDotOld()

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

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

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

Definition at line 276 of file ScalarCoupleable.C.

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

◆ coupledScalarDotDu()

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

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

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

Definition at line 284 of file ScalarCoupleable.C.

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

◆ coupledScalarDotOld()

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

Returns the old time derivative of a scalar coupled variable.

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

Definition at line 268 of file ScalarCoupleable.C.

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

◆ coupledScalarOrder()

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

Returns the order for a scalar coupled variable by name.

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

Definition at line 100 of file ScalarCoupleable.C.

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

◆ coupledScalarValue()

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

Returns value of a scalar coupled variable.

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

Definition at line 124 of file ScalarCoupleable.C.

Referenced by ParsedODEKernel::ParsedODEKernel().

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

◆ coupledScalarValueOld()

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

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

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

Definition at line 216 of file ScalarCoupleable.C.

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

◆ coupledScalarValueOlder()

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

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

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

Definition at line 228 of file ScalarCoupleable.C.

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

◆ coupledSecond()

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

Returns second spatial derivatives of a coupled variable.

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

Definition at line 1726 of file Coupleable.C.

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

1727 {
1728  const auto * var = getVar(var_name, comp);
1729  if (!var)
1730  {
1732  return _default_second;
1733  }
1735 
1736  if (!_coupleable_neighbor)
1737  return (_c_is_implicit) ? var->secondSln() : var->secondSlnOlder();
1738  return (_c_is_implicit) ? var->secondSlnNeighbor() : var->secondSlnOlderNeighbor();
1739 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
VariableSecond _default_second
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1394
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledSecondaryGradient()

virtual const VariableGradient& NodeFaceConstraint::coupledSecondaryGradient ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 185 of file NodeFaceConstraint.h.

187  {
188  return coupledGradient(var_name, comp);
189  }
virtual const VariableGradient & coupledGradient(const std::string &var_name, unsigned int comp=0) const
Returns gradient of a coupled variable.
Definition: Coupleable.C:1481

◆ coupledSecondaryGradientOld()

virtual const VariableGradient& NodeFaceConstraint::coupledSecondaryGradientOld ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 190 of file NodeFaceConstraint.h.

192  {
193  return coupledGradientOld(var_name, comp);
194  }
virtual const VariableGradient & coupledGradientOld(const std::string &var_name, unsigned int comp=0) const
Returns an old gradient from previous time step of a coupled variable.
Definition: Coupleable.C:1497

◆ coupledSecondaryGradientOlder()

virtual const VariableGradient& NodeFaceConstraint::coupledSecondaryGradientOlder ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 195 of file NodeFaceConstraint.h.

197  {
198  return coupledGradientOlder(var_name, comp);
199  }
virtual const VariableGradient & coupledGradientOlder(const std::string &var_name, unsigned int comp=0) const
Returns an old gradient from two time steps previous of a coupled variable.
Definition: Coupleable.C:1513

◆ coupledSecondarySecond()

virtual const VariableSecond& NodeFaceConstraint::coupledSecondarySecond ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 201 of file NodeFaceConstraint.h.

203  {
204  return coupledSecond(var_name, comp);
205  }
virtual const VariableSecond & coupledSecond(const std::string &var_name, unsigned int comp=0) const
Returns second spatial derivatives of a coupled variable.
Definition: Coupleable.C:1726

◆ coupledSecondaryValue()

virtual const VariableValue& NodeFaceConstraint::coupledSecondaryValue ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

coupling interface:

Definition at line 169 of file NodeFaceConstraint.h.

171  {
172  return coupledValue(var_name, comp);
173  }
virtual const VariableValue & coupledValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled variable.
Definition: Coupleable.C:482

◆ coupledSecondaryValueOld()

virtual const VariableValue& NodeFaceConstraint::coupledSecondaryValueOld ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 174 of file NodeFaceConstraint.h.

176  {
177  return coupledValueOld(var_name, comp);
178  }
virtual const VariableValue & coupledValueOld(const std::string &var_name, unsigned int comp=0) const
Returns an old value from previous time step of a coupled variable.
Definition: Coupleable.C:985

◆ coupledSecondaryValueOlder()

virtual const VariableValue& NodeFaceConstraint::coupledSecondaryValueOlder ( const std::string &  var_name,
unsigned int  comp = 0 
)
inlineprotectedvirtual

Definition at line 179 of file NodeFaceConstraint.h.

181  {
182  return coupledValueOlder(var_name, comp);
183  }
virtual const VariableValue & coupledValueOlder(const std::string &var_name, unsigned int comp=0) const
Returns an old value from two time steps previous of a coupled variable.
Definition: Coupleable.C:1007

◆ coupledSecondOld()

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

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

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

Definition at line 1742 of file Coupleable.C.

1743 {
1744  const auto * var = getVar(var_name, comp);
1745  if (!var)
1746  {
1748  return _default_second;
1749  }
1751 
1752  if (!_coupleable_neighbor)
1753  return (_c_is_implicit) ? var->secondSlnOld() : var->secondSlnOlder();
1754  return (_c_is_implicit) ? var->secondSlnOldNeighbor() : var->secondSlnOlderNeighbor();
1755 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
VariableSecond _default_second
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1394
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledSecondOlder()

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

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

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

Definition at line 1758 of file Coupleable.C.

1759 {
1760  const auto * var = getVar(var_name, comp);
1761  if (!var)
1762  {
1764  return _default_second;
1765  }
1767 
1768  if (!_coupleable_neighbor)
1769  return var->secondSlnOlder();
1770  return var->secondSlnOlderNeighbor();
1771 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
VariableSecond _default_second
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1394
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledSecondPreviousNL()

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

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

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

Definition at line 1774 of file Coupleable.C.

1775 {
1776  const auto * var = getVar(var_name, comp);
1778  if (!var)
1779  {
1781  return _default_second;
1782  }
1784 
1785  if (!_coupleable_neighbor)
1786  return var->secondSlnPreviousNL();
1787  return var->secondSlnPreviousNLNeighbor();
1788 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
VariableSecond _default_second
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1394
void needsPreviousNewtonIteration(bool state)
Set a flag that indicated that user required values for the previous Newton iterate.
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledValue()

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

Returns value of a coupled variable.

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

Definition at line 482 of file Coupleable.C.

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

483 {
484  const auto * const var = getVarHelper<MooseVariableField<Real>>(var_name, comp);
485  if (!var)
486  return *getDefaultValue(var_name, comp);
488 
490  {
491  if (_c_nodal)
492  return (_c_is_implicit) ? var->dofValues() : var->dofValuesOld();
493  else
494  return (_c_is_implicit) ? var->sln() : var->slnOld();
495  }
496  else
497  {
498  if (_c_nodal)
499  return (_c_is_implicit) ? var->dofValuesNeighbor() : var->dofValuesOldNeighbor();
500  else
501  return (_c_is_implicit) ? var->slnNeighbor() : var->slnOldNeighbor();
502  }
503 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledValueLower()

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

Returns value of a coupled lower-dimensional variable.

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

Definition at line 587 of file Coupleable.C.

588 {
589  const auto * var = getVar(var_name, comp);
590  if (!var)
591  return *getDefaultValue(var_name, comp);
593 
595  mooseError(_c_name, ":coupledValueLower cannot be called in a coupleable neighbor object");
596 
597  if (_c_nodal)
598  return (_c_is_implicit) ? var->dofValues() : var->dofValuesOld();
599  else
600  return (_c_is_implicit) ? var->slnLower() : var->slnLowerOld();
601 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledValueOld()

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

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

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

Definition at line 985 of file Coupleable.C.

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

986 {
987  const auto * var = getVar(var_name, comp);
988  if (!var)
989  return *getDefaultValue(var_name, comp);
991 
993  {
994  if (_c_nodal)
995  return (_c_is_implicit) ? var->dofValuesOld() : var->dofValuesOlder();
996  return (_c_is_implicit) ? var->slnOld() : var->slnOlder();
997  }
998  else
999  {
1000  if (_c_nodal)
1001  return (_c_is_implicit) ? var->dofValuesOldNeighbor() : var->dofValuesOlderNeighbor();
1002  return (_c_is_implicit) ? var->slnOldNeighbor() : var->slnOlderNeighbor();
1003  }
1004 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledValueOlder()

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

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

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

Definition at line 1007 of file Coupleable.C.

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

1008 {
1009  const auto * var = getVar(var_name, comp);
1010  if (!var)
1011  return *getDefaultValue(var_name, comp);
1013 
1014  if (!_coupleable_neighbor)
1015  {
1016  if (_c_nodal)
1017  return var->dofValuesOlder();
1018  return var->slnOlder();
1019  }
1020  else
1021  {
1022  if (_c_nodal)
1023  return var->dofValuesOlderNeighbor();
1024  return var->slnOlderNeighbor();
1025  }
1026 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledValuePreviousNL()

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

Returns value of previous Newton iterate of a coupled variable.

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

Definition at line 1029 of file Coupleable.C.

1030 {
1031  const auto * var = getVar(var_name, comp);
1032  if (!var)
1033  return *getDefaultValue(var_name, comp);
1035 
1037  if (!_coupleable_neighbor)
1038  {
1039  if (_c_nodal)
1040  return var->dofValuesPreviousNL();
1041  return var->slnPreviousNL();
1042  }
1043  else
1044  {
1045  if (_c_nodal)
1046  return var->dofValuesPreviousNLNeighbor();
1047  return var->slnPreviousNLNeighbor();
1048  }
1049 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
const VariableValue * getDefaultValue(const std::string &var_name, unsigned int comp) const
Helper method to return (and insert if necessary) the default value for an uncoupled variable...
Definition: Coupleable.C:334
void needsPreviousNewtonIteration(bool state)
Set a flag that indicated that user required values for the previous Newton iterate.
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledValues()

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

Returns the values for all of a coupled variable components.

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

Definition at line 2398 of file Coupleable.C.

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

◆ coupledValuesOld()

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

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

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

Definition at line 2579 of file Coupleable.C.

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

◆ coupledValuesOlder()

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

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

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

Definition at line 2586 of file Coupleable.C.

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

◆ coupledVectorDot()

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

Time derivative of a coupled vector variable.

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

Definition at line 1222 of file Coupleable.C.

1223 {
1224  const auto * var = getVectorVar(var_name, comp);
1225  if (!var)
1226  {
1229  }
1231 
1232  if (!_coupleable_neighbor)
1233  return var->uDot();
1234  return var->uDotNeighbor();
1235 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
VectorVariableValue _default_vector_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1425
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledVectorDotDot()

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

Second time derivative of a coupled vector variable.

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

Definition at line 1238 of file Coupleable.C.

1239 {
1240  const auto * var = getVectorVar(var_name, comp);
1241  if (!var)
1242  {
1245  }
1247 
1248  if (!_coupleable_neighbor)
1249  return var->uDotDot();
1250  return var->uDotDotNeighbor();
1251 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
VectorVariableValue _default_vector_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1425
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledVectorDotDotDu()

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

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

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

Definition at line 1302 of file Coupleable.C.

1303 {
1304  const auto * var = getVectorVar(var_name, comp);
1305  if (!var)
1306  {
1308  return _default_value_zero;
1309  }
1311 
1312  if (!_coupleable_neighbor)
1313  return var->duDotDotDu();
1314  return var->duDotDotDuNeighbor();
1315 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledVectorDotDotOld()

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

Old second time derivative of a coupled vector variable.

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

Definition at line 1270 of file Coupleable.C.

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

◆ coupledVectorDotDu()

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

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

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

Definition at line 1286 of file Coupleable.C.

1287 {
1288  const auto * var = getVectorVar(var_name, comp);
1289  if (!var)
1290  {
1292  return _default_value_zero;
1293  }
1295 
1296  if (!_coupleable_neighbor)
1297  return var->duDotDu();
1298  return var->duDotDuNeighbor();
1299 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
VariableValue _default_value_zero
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1382
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
void resize(unsigned int size)
Change the number of elements the array can store.
Definition: MooseArray.h:213
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledVectorDotOld()

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

Old time derivative of a coupled vector variable.

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

Definition at line 1254 of file Coupleable.C.

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

◆ coupledVectorGradient()

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

Returns gradient of a coupled vector variable.

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

Definition at line 1578 of file Coupleable.C.

1579 {
1580  const auto * var = getVectorVar(var_name, comp);
1581  if (!var)
1582  {
1584  return _default_vector_gradient;
1585  }
1587 
1588  if (!_coupleable_neighbor)
1589  return (_c_is_implicit) ? var->gradSln() : var->gradSlnOld();
1590  return (_c_is_implicit) ? var->gradSlnNeighbor() : var->gradSlnOldNeighbor();
1591 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
VectorVariableGradient _default_vector_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1428
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledVectorGradientOld()

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

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

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

Definition at line 1594 of file Coupleable.C.

1595 {
1596  const auto * var = getVectorVar(var_name, comp);
1597  if (!var)
1598  {
1600  return _default_vector_gradient;
1601  }
1603 
1604  if (!_coupleable_neighbor)
1605  return (_c_is_implicit) ? var->gradSlnOld() : var->gradSlnOlder();
1606  return (_c_is_implicit) ? var->gradSlnOldNeighbor() : var->gradSlnOlderNeighbor();
1607 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
VectorVariableGradient _default_vector_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1428
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledVectorGradientOlder()

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

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

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

Definition at line 1610 of file Coupleable.C.

1611 {
1612  const auto * var = getVectorVar(var_name, comp);
1613  if (!var)
1614  {
1616  return _default_vector_gradient;
1617  }
1619 
1620  if (!_coupleable_neighbor)
1621  return var->gradSlnOlder();
1622  return var->gradSlnOlderNeighbor();
1623 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
VectorVariableGradient _default_vector_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1428
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ coupledVectorHelper()

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

Definition at line 1608 of file Coupleable.h.

1609  {
1610  const auto components = coupledComponents(var_name);
1611  std::vector<T> vals(components);
1612  for (MooseIndex(components) comp = 0; comp < components; ++comp)
1613  vals[comp] = func(comp);
1614  return vals;
1615  }
unsigned int coupledComponents(const std::string &var_name) const
Number of coupled components.
Definition: Coupleable.C:157

◆ coupledVectorNeighborGradient()

const VectorVariableGradient & NeighborCoupleable::coupledVectorNeighborGradient ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 239 of file NeighborCoupleable.C.

241 {
242  if (_neighbor_nodal)
243  mooseError("Gradients are non-sensical with nodal compute objects");
244 
245  const auto * var = getVectorVar(var_name, comp);
246  return (_c_is_implicit) ? var->gradSlnNeighbor() : var->gradSlnOldNeighbor();
247 }
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledVectorNeighborGradientOld()

const VectorVariableGradient & NeighborCoupleable::coupledVectorNeighborGradientOld ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 250 of file NeighborCoupleable.C.

252 {
253  if (_neighbor_nodal)
254  mooseError("Gradients are non-sensical with nodal compute objects");
255 
256  validateExecutionerType(var_name, "coupledVectorNeighborGradientOld");
257  const auto * var = getVectorVar(var_name, comp);
258  return (_c_is_implicit) ? var->gradSlnOldNeighbor() : var->gradSlnOlderNeighbor();
259 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
Definition: Coupleable.C:2021
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledVectorNeighborGradientOlder()

const VectorVariableGradient & NeighborCoupleable::coupledVectorNeighborGradientOlder ( const std::string &  var_name,
unsigned int  comp = 0 
) const
virtualinherited

Definition at line 262 of file NeighborCoupleable.C.

264 {
265  if (_neighbor_nodal)
266  mooseError("Gradients are non-sensical with nodal compute objects");
267 
268  validateExecutionerType(var_name, "coupledVectorNeighborGradientOlder");
269  const auto * var = getVectorVar(var_name, comp);
270  if (_c_is_implicit)
271  return var->gradSlnOlderNeighbor();
272  else
273  mooseError("Older values not available for explicit schemes");
274 }
void validateExecutionerType(const std::string &name, const std::string &fn_name) const
Checks to make sure that the current Executioner has set "_is_transient" when old/older values are co...
Definition: Coupleable.C:2021
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352

◆ coupledVectorTagArrayDofValue()

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

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

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

Definition at line 768 of file Coupleable.C.

771 {
772  return vectorTagDofValueHelper<RealEigenVector>(var_name, tag_name, comp);
773 }

◆ coupledVectorTagArrayGradient() [1/2]

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

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

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

Definition at line 674 of file Coupleable.C.

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

677 {
678  const auto * var = getArrayVar(var_names, index);
679  if (!var)
680  mooseError(var_names, ": invalid variable name for coupledVectorTagArrayGradient");
682 
683  if (!_c_fe_problem.vectorTagExists(tag))
684  mooseError("Attempting to couple to vector tag with ID ",
685  tag,
686  "in ",
687  _c_name,
688  ", but a vector tag with that ID does not exist");
689 
690  const_cast<Coupleable *>(this)->addFEVariableCoupleableVectorTag(tag);
691 
692  return var->vectorTagGradient(tag);
693 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
void addFEVariableCoupleableVectorTag(TagID tag)
Definition: Coupleable.h:102
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173
Interface for objects that needs coupling capabilities.
Definition: Coupleable.h:45
ArrayMooseVariable * getArrayVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled array variable.
Definition: Coupleable.C:305

◆ coupledVectorTagArrayGradient() [2/2]

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

Definition at line 696 of file Coupleable.C.

699 {
700  if (!_c_parameters.isParamValid(tag_name))
701  mooseError("Tag name parameter '", tag_name, "' is invalid");
702 
703  TagName tagname = _c_parameters.get<TagName>(tag_name);
704  if (!_c_fe_problem.vectorTagExists(tagname))
705  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
706 
707  TagID tag = _c_fe_problem.getVectorTagID(tagname);
708  return coupledVectorTagArrayGradient(var_names, tag, index);
709 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:181
unsigned int TagID
Definition: MooseTypes.h:199
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
virtual const ArrayVariableGradient & coupledVectorTagArrayGradient(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns gradient of a coupled array variable for a given tag.
Definition: Coupleable.C:674
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagArrayGradients() [1/2]

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

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

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

Definition at line 2510 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagArrayGradients().

2511 {
2512  auto func = [this, &var_names, &tag](unsigned int index)
2513  { return &coupledVectorTagArrayGradient(var_names, tag, index); };
2514  return coupledVectorHelper<const ArrayVariableGradient *>(var_names, func);
2515 }
virtual const ArrayVariableGradient & coupledVectorTagArrayGradient(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns gradient of a coupled array variable for a given tag.
Definition: Coupleable.C:674

◆ coupledVectorTagArrayGradients() [2/2]

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

Definition at line 2518 of file Coupleable.C.

2520 {
2521  if (!_c_parameters.isParamValid(tag_name))
2522  mooseError("Tag name parameter '", tag_name, "' is invalid");
2523 
2524  TagName tagname = _c_parameters.get<TagName>(tag_name);
2525  if (!_c_fe_problem.vectorTagExists(tagname))
2526  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
2527 
2528  TagID tag = _c_fe_problem.getVectorTagID(tagname);
2529  return coupledVectorTagArrayGradients(var_names, tag);
2530 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:181
unsigned int TagID
Definition: MooseTypes.h:199
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173
std::vector< const ArrayVariableGradient * > coupledVectorTagArrayGradients(const std::string &var_names, TagID tag) const
Returns gradients for all the coupled variables desired for a given tag.
Definition: Coupleable.C:2510
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagArrayValue() [1/2]

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

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

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

Definition at line 620 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagArrayValues().

623 {
624  return vectorTagValueHelper<RealEigenVector>(var_names, tag, index);
625 }

◆ coupledVectorTagArrayValue() [2/2]

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

Definition at line 628 of file Coupleable.C.

631 {
632  return vectorTagValueHelper<RealEigenVector>(var_names, tag_name, index);
633 }

◆ coupledVectorTagArrayValues() [1/2]

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

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

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

Definition at line 2464 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagArrayValues().

2465 {
2466  auto func = [this, &var_names, &tag](unsigned int index)
2467  { return &coupledVectorTagArrayValue(var_names, tag, index); };
2468  return coupledVectorHelper<const ArrayVariableValue *>(var_names, func);
2469 }
virtual const ArrayVariableValue & coupledVectorTagArrayValue(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns value of a coupled array variable for a given tag.
Definition: Coupleable.C:620

◆ coupledVectorTagArrayValues() [2/2]

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

Definition at line 2472 of file Coupleable.C.

2474 {
2475  if (!_c_parameters.isParamValid(tag_name))
2476  mooseError("Tag name parameter '", tag_name, "' is invalid");
2477 
2478  TagName tagname = _c_parameters.get<TagName>(tag_name);
2479  if (!_c_fe_problem.vectorTagExists(tagname))
2480  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
2481 
2482  TagID tag = _c_fe_problem.getVectorTagID(tagname);
2483  return coupledVectorTagArrayValues(var_names, tag);
2484 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:181
unsigned int TagID
Definition: MooseTypes.h:199
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
std::vector< const ArrayVariableValue * > coupledVectorTagArrayValues(const std::string &var_names, TagID tag) const
Returns the values for all the coupled variables desired for a given tag.
Definition: Coupleable.C:2464
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagDofValue() [1/2]

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

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

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

Definition at line 752 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagDofValues().

755 {
756  return vectorTagDofValueHelper<Real>(var_name, tag, comp);
757 }

◆ coupledVectorTagDofValue() [2/2]

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

Definition at line 760 of file Coupleable.C.

763 {
764  return vectorTagDofValueHelper<Real>(var_name, tag_name, comp);
765 }

◆ coupledVectorTagDofValues() [1/2]

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

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

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

Definition at line 2533 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagDofValues().

2534 {
2535  auto func = [this, &var_names, &tag](unsigned int comp)
2536  { return &coupledVectorTagDofValue(var_names, tag, comp); };
2537  return coupledVectorHelper<const VariableValue *>(var_names, func);
2538 }
virtual const VariableValue & coupledVectorTagDofValue(const std::string &var_name, TagID tag, unsigned int index=0) const
Returns dof value of a coupled variable for a given tag.
Definition: Coupleable.C:752

◆ coupledVectorTagDofValues() [2/2]

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

Definition at line 2541 of file Coupleable.C.

2543 {
2544  if (!_c_parameters.isParamValid(tag_name))
2545  mooseError("Tag name parameter '", tag_name, "' is invalid");
2546 
2547  TagName tagname = _c_parameters.get<TagName>(tag_name);
2548  if (!_c_fe_problem.vectorTagExists(tagname))
2549  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
2550 
2551  TagID tag = _c_fe_problem.getVectorTagID(tagname);
2552  return coupledVectorTagDofValues(var_names, tag);
2553 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:181
unsigned int TagID
Definition: MooseTypes.h:199
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
std::vector< const VariableValue * > coupledVectorTagDofValues(const std::string &var_names, TagID tag) const
Returns the dof values for all the coupled variables desired for a given tag.
Definition: Coupleable.C:2533
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagGradient() [1/2]

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

Returns gradient of a coupled variable for a given tag.

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

Definition at line 636 of file Coupleable.C.

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

639 {
640  const auto * var = getVar(var_names, index);
641  if (!var)
642  mooseError(var_names, ": invalid variable name for coupledVectorTagGradient");
644 
645  if (!_c_fe_problem.vectorTagExists(tag))
646  mooseError("Attempting to couple to vector tag with ID ",
647  tag,
648  "in ",
649  _c_name,
650  ", but a vector tag with that ID does not exist");
651 
652  const_cast<Coupleable *>(this)->addFEVariableCoupleableVectorTag(tag);
653 
654  return var->vectorTagGradient(tag);
655 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
void addFEVariableCoupleableVectorTag(TagID tag)
Definition: Coupleable.h:102
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173
Interface for objects that needs coupling capabilities.
Definition: Coupleable.h:45

◆ coupledVectorTagGradient() [2/2]

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

Definition at line 658 of file Coupleable.C.

661 {
662  if (!_c_parameters.isParamValid(tag_name))
663  mooseError("Tag name parameter '", tag_name, "' is invalid");
664 
665  TagName tagname = _c_parameters.get<TagName>(tag_name);
666  if (!_c_fe_problem.vectorTagExists(tagname))
667  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
668 
669  TagID tag = _c_fe_problem.getVectorTagID(tagname);
670  return coupledVectorTagGradient(var_names, tag, index);
671 }
virtual const VariableGradient & coupledVectorTagGradient(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns gradient of a coupled variable for a given tag.
Definition: Coupleable.C:636
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:181
unsigned int TagID
Definition: MooseTypes.h:199
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagGradients() [1/2]

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

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

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

Definition at line 2487 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagGradients().

2488 {
2489  auto func = [this, &var_names, &tag](unsigned int index)
2490  { return &coupledVectorTagGradient(var_names, tag, index); };
2491  return coupledVectorHelper<const VariableGradient *>(var_names, func);
2492 }
virtual const VariableGradient & coupledVectorTagGradient(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns gradient of a coupled variable for a given tag.
Definition: Coupleable.C:636

◆ coupledVectorTagGradients() [2/2]

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

Definition at line 2495 of file Coupleable.C.

2497 {
2498  if (!_c_parameters.isParamValid(tag_name))
2499  mooseError("Tag name parameter '", tag_name, "' is invalid");
2500 
2501  TagName tagname = _c_parameters.get<TagName>(tag_name);
2502  if (!_c_fe_problem.vectorTagExists(tagname))
2503  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
2504 
2505  TagID tag = _c_fe_problem.getVectorTagID(tagname);
2506  return coupledVectorTagGradients(var_names, tag);
2507 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:181
unsigned int TagID
Definition: MooseTypes.h:199
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
std::vector< const VariableGradient * > coupledVectorTagGradients(const std::string &var_names, TagID tag) const
Returns gradients for all the coupled variables desired for a given tag.
Definition: Coupleable.C:2487
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorTagScalarValue()

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

Returns value of a scalar coupled variable.

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

Definition at line 181 of file ScalarCoupleable.C.

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

◆ coupledVectorTagValue() [1/2]

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

Returns value of a coupled variable for a given tag.

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

Definition at line 604 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagValues().

607 {
608  return vectorTagValueHelper<Real>(var_names, tag, index);
609 }

◆ coupledVectorTagValue() [2/2]

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

Definition at line 612 of file Coupleable.C.

615 {
616  return vectorTagValueHelper<Real>(var_names, tag_name, index);
617 }

◆ coupledVectorTagValues() [1/2]

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

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

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

Definition at line 2441 of file Coupleable.C.

Referenced by Coupleable::coupledVectorTagValues().

2442 {
2443  auto func = [this, &var_names, &tag](unsigned int comp)
2444  { return &coupledVectorTagValue(var_names, tag, comp); };
2445  return coupledVectorHelper<const VariableValue *>(var_names, func);
2446 }
virtual const VariableValue & coupledVectorTagValue(const std::string &var_names, TagID tag, unsigned int index=0) const
Returns value of a coupled variable for a given tag.
Definition: Coupleable.C:604

◆ coupledVectorTagValues() [2/2]

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

Definition at line 2449 of file Coupleable.C.

2451 {
2452  if (!_c_parameters.isParamValid(tag_name))
2453  mooseError("Tag name parameter '", tag_name, "' is invalid");
2454 
2455  TagName tagname = _c_parameters.get<TagName>(tag_name);
2456  if (!_c_fe_problem.vectorTagExists(tagname))
2457  mooseError("Tagged vector with tag name '", tagname, "' does not exist");
2458 
2459  TagID tag = _c_fe_problem.getVectorTagID(tagname);
2460  return coupledVectorTagValues(var_names, tag);
2461 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:181
unsigned int TagID
Definition: MooseTypes.h:199
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173
std::vector< const VariableValue * > coupledVectorTagValues(const std::string &var_names, TagID tag) const
Returns the values for all the coupled variables desired for a given tag.
Definition: Coupleable.C:2441
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ coupledVectorValue()

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

Returns value of a coupled vector variable.

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

Definition at line 809 of file Coupleable.C.

Referenced by Coupleable::coupledVectorValues().

810 {
811  const auto * var = getVectorVar(var_name, comp);
812  if (!var)
813  return *getDefaultVectorValue(var_name);
815 
817  {
818  if (_c_nodal)
819  return _c_is_implicit ? var->nodalValueArray() : var->nodalValueOldArray();
820  else
821  return _c_is_implicit ? var->sln() : var->slnOld();
822  }
823  else
824  {
825  if (_c_nodal)
826  // Since this is at a node, I don't feel like there should be any "neighbor" logic
827  return _c_is_implicit ? var->nodalValueArray() : var->nodalValueOldArray();
828  else
829  return _c_is_implicit ? var->slnNeighbor() : var->slnOldNeighbor();
830  }
831 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
const VectorVariableValue * getDefaultVectorValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled vector variable...
Definition: Coupleable.C:361
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledVectorValueOld()

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

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

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

Definition at line 1052 of file Coupleable.C.

1053 {
1054  const auto * var = getVectorVar(var_name, comp);
1055  if (!var)
1056  return *getDefaultVectorValue(var_name);
1058 
1059  if (!_coupleable_neighbor)
1060  return (_c_is_implicit) ? var->slnOld() : var->slnOlder();
1061  return (_c_is_implicit) ? var->slnOldNeighbor() : var->slnOlderNeighbor();
1062 }
void checkFuncType(const std::string var_name, VarType t, FuncAge age) const
Definition: Coupleable.C:191
VectorMooseVariable * getVectorVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled vector variable.
Definition: Coupleable.C:293
const VectorVariableValue * getDefaultVectorValue(const std::string &var_name) const
Helper method to return (and insert if necessary) the default value for an uncoupled vector variable...
Definition: Coupleable.C:361
bool _c_is_implicit
True if implicit value is required.
Definition: Coupleable.h:1352
bool _coupleable_neighbor
Whether or not this object is a "neighbor" object: ie all of it&#39;s coupled values should be neighbor v...
Definition: Coupleable.h:1618

◆ coupledVectorValueOlder()

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

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

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

Definition at line 1065 of file Coupleable.C.

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

◆ coupledVectorValues()

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

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

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

Definition at line 2405 of file Coupleable.C.

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

◆ customSetup()

virtual void SetupInterface::customSetup ( const ExecFlagType )
inlinevirtualinherited

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

Reimplemented in Function.

Definition at line 61 of file SetupInterface.h.

61 {}

◆ declareManagedRestartableDataWithContext()

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

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

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

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

See delcareRestartableData and declareRestartableDataWithContext for more information.

Definition at line 276 of file Restartable.h.

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

◆ declareRecoverableData()

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

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

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

Note - this data will NOT be restored on Restart!

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

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

Definition at line 351 of file Restartable.h.

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

◆ declareRestartableData()

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

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

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

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

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

Definition at line 269 of file Restartable.h.

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

◆ declareRestartableDataWithContext()

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

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

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

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

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

Definition at line 294 of file Restartable.h.

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

◆ declareRestartableDataWithObjectName()

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

Declare a piece of data as "restartable".

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

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

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

Definition at line 323 of file Restartable.h.

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

◆ declareRestartableDataWithObjectNameWithContext()

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

Declare a piece of data as "restartable".

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

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

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

Definition at line 333 of file Restartable.h.

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

◆ determineState()

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

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

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

Definition at line 80 of file TransientInterface.h.

Referenced by LinearFVAdvectionDiffusionFunctorDirichletBC::computeBoundaryGradientRHSContribution(), LinearFVDiffusion::computeBoundaryMatrixContribution(), LinearFVAdvectionDiffusionFunctorDirichletBC::computeBoundaryNormalGradient(), LinearFVDiffusion::computeBoundaryRHSContribution(), LinearFVAdvectionDiffusionFunctorDirichletBC::computeBoundaryValue(), LinearFVAdvectionDiffusionOutflowBC::computeBoundaryValue(), LinearFVAdvectionDiffusionFunctorDirichletBC::computeBoundaryValueRHSContribution(), SideIntegralVariablePostprocessor::computeFaceInfoIntegral(), InternalSideIntegralVariablePostprocessor::computeFaceInfoIntegral(), LinearFVDiffusion::computeFluxMatrixContribution(), LinearFVDiffusion::computeFluxRHSContribution(), LinearFVReaction::computeMatrixContribution(), LayeredSideDiffusiveFluxAverage::computeQpIntegral(), SideIntegralFunctorUserObject::computeQpIntegral(), SideIntegralVariableUserObject::computeQpIntegral(), InterfaceIntegralVariableValuePostprocessor::computeQpIntegral(), FVDiffusionInterface::computeQpResidual(), FVOneVarDiffusionInterface::computeQpResidual(), FVTwoVarContinuityConstraint::computeQpResidual(), FVFunctorTimeKernel::computeQpResidual(), FVMatAdvection::computeQpResidual(), FVAdvection::computeQpResidual(), FVConstantScalarOutflowBC::computeQpResidual(), FVAnisotropicDiffusion::computeQpResidual(), FVCoupledForce::computeQpResidual(), FVFunctorNeumannBC::computeQpResidual(), FVMassMatrix::computeQpResidual(), FVDivergence::computeQpResidual(), FVBoundaryIntegralValueConstraint::computeQpResidual(), FVDiffusion::computeQpResidual(), FVBoundedValueConstraint::computeQpResidual(), FVIntegralValueConstraint::computeQpResidual(), FVPointValueConstraint::computeQpResidual(), LinearFVSource::computeRightHandSideContribution(), AdvectiveFluxAux::computeValue(), TimeDerivativeAux::computeValue(), SecondTimeDerivativeAux::computeValue(), FunctorAux::computeValue(), PositionsFunctorValueSampler::execute(), MeshDivisionFunctorReductionVectorPostprocessor::execute(), FunctorPositions::initialize(), and FunctorTimes::initialize().

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

◆ dot()

const OutputTools< Real >::VariableValue & MooseVariableInterface< Real >::dot ( )
protectedvirtualinherited

The time derivative of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 148 of file MooseVariableInterface.C.

149 {
150  if (_nodal)
151  return _variable->dofValuesDot();
152  else
153  return _variable->uDot();
154 }
bool _nodal
Whether or not this object is acting only at nodes.
const FieldVariableValue & uDot() const
element dots
MooseVariableFE< Real > * _variable
const DoFValue & dofValuesDot() const override

◆ dotDot()

const OutputTools< Real >::VariableValue & MooseVariableInterface< Real >::dotDot ( )
protectedvirtualinherited

The second time derivative of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 158 of file MooseVariableInterface.C.

159 {
160  if (_nodal)
161  return _variable->dofValuesDotDot();
162  else
163  return _variable->uDotDot();
164 }
bool _nodal
Whether or not this object is acting only at nodes.
const DoFValue & dofValuesDotDot() const override
const FieldVariableValue & uDotDot() const
MooseVariableFE< Real > * _variable

◆ dotDotDu()

const VariableValue & MooseVariableInterface< Real >::dotDotDu ( )
protectedvirtualinherited

The derivative of the second time derivative of the variable this object is operating on with respect to this variable's coefficients.

This is useful for creating Jacobian entries for residual statements that use _u_dotdot

Returns
The reference to be stored off and used later.

Definition at line 238 of file MooseVariableInterface.C.

239 {
240  if (_nodal)
241  return _variable->dofValuesDuDotDotDu();
242  else
243  return _variable->duDotDotDu();
244 }
const MooseArray< Number > & dofValuesDuDotDotDu() const override
bool _nodal
Whether or not this object is acting only at nodes.
const VariableValue & duDotDotDu() const
MooseVariableFE< Real > * _variable

◆ dotDotOld()

const OutputTools< Real >::VariableValue & MooseVariableInterface< Real >::dotDotOld ( )
protectedvirtualinherited

The old second time derivative of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 178 of file MooseVariableInterface.C.

179 {
180  if (_nodal)
181  return _variable->dofValuesDotDotOld();
182  else
183  return _variable->uDotDotOld();
184 }
bool _nodal
Whether or not this object is acting only at nodes.
const FieldVariableValue & uDotDotOld() const
MooseVariableFE< Real > * _variable
const DoFValue & dofValuesDotDotOld() const override

◆ dotDu()

const VariableValue & MooseVariableInterface< Real >::dotDu ( )
protectedvirtualinherited

The derivative of the time derivative of the variable this object is operating on with respect to this variable's coefficients.

This is useful for creating Jacobian entries for residual statements that use _u_dot

Returns
The reference to be stored off and used later.

Definition at line 228 of file MooseVariableInterface.C.

229 {
230  if (_nodal)
231  return _variable->dofValuesDuDotDu();
232  else
233  return _variable->duDotDu();
234 }
const MooseArray< Number > & dofValuesDuDotDu() const override
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable
const VariableValue & duDotDu() const

◆ dotOld()

const OutputTools< Real >::VariableValue & MooseVariableInterface< Real >::dotOld ( )
protectedvirtualinherited

The old time derivative of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 168 of file MooseVariableInterface.C.

169 {
170  if (_nodal)
171  return _variable->dofValuesDotOld();
172  else
173  return _variable->uDotOld();
174 }
const DoFValue & dofValuesDotOld() const override
const FieldVariableValue & uDotOld() const
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable

◆ enabled()

virtual bool MooseObject::enabled ( ) const
inlinevirtualinherited

Return the enabled status of the object.

Reimplemented in EigenKernel.

Definition at line 49 of file MooseObject.h.

Referenced by EigenKernel::enabled().

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

◆ errorPrefix()

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

Definition at line 43 of file MooseBase.C.

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

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

◆ genericZeroGradient() [1/3]

template<bool is_ad>
const GenericVariableGradient<is_ad>& Coupleable::genericZeroGradient ( )
protectedinherited

Returns zero gradient templated with automatic differentiation boolean.

Returns
Reference to a const GenericVariableValue

◆ genericZeroGradient() [2/3]

template<>
const GenericVariableGradient<false>& Coupleable::genericZeroGradient ( )
protectedinherited

Definition at line 2326 of file Coupleable.C.

2327 {
2328  return _grad_zero;
2329 }
const VariableGradient & _grad_zero
Zero gradient of a variable.
Definition: Coupleable.h:1405

◆ genericZeroGradient() [3/3]

template<>
const GenericVariableGradient<true>& Coupleable::genericZeroGradient ( )
protectedinherited

Definition at line 2333 of file Coupleable.C.

2334 {
2335  return _ad_grad_zero;
2336 }
const MooseArray< ADRealVectorValue > & _ad_grad_zero
Definition: Coupleable.h:1406

◆ genericZeroSecond() [1/3]

template<bool is_ad>
const GenericVariableSecond<is_ad>& Coupleable::genericZeroSecond ( )
protectedinherited

Returns zero second derivative templated with automatic differentiation boolean.

Returns
Reference to a const GenericVariableValue

◆ genericZeroSecond() [2/3]

template<>
const GenericVariableSecond<false>& Coupleable::genericZeroSecond ( )
protectedinherited

Definition at line 2340 of file Coupleable.C.

2341 {
2342  return _second_zero;
2343 }
const VariableSecond & _second_zero
Zero second derivative of a variable.
Definition: Coupleable.h:1412

◆ genericZeroSecond() [3/3]

template<>
const GenericVariableSecond<true>& Coupleable::genericZeroSecond ( )
protectedinherited

Definition at line 2347 of file Coupleable.C.

2348 {
2349  return _ad_second_zero;
2350 }
const MooseArray< ADRealTensorValue > & _ad_second_zero
Definition: Coupleable.h:1413

◆ genericZeroValue() [1/3]

template<bool is_ad>
const GenericVariableValue<is_ad>& Coupleable::genericZeroValue ( )
protectedinherited

Returns zero value templated with automatic differentiation boolean.

Returns
Reference to a const GenericVariableValue

◆ genericZeroValue() [2/3]

template<>
const GenericVariableValue<false>& Coupleable::genericZeroValue ( )
protectedinherited

Definition at line 2312 of file Coupleable.C.

2313 {
2314  return _zero;
2315 }
const VariableValue & _zero
Zero value of a variable.
Definition: Coupleable.h:1400

◆ genericZeroValue() [3/3]

template<>
const GenericVariableValue<true>& Coupleable::genericZeroValue ( )
protectedinherited

Definition at line 2319 of file Coupleable.C.

2320 {
2321  return _ad_zero;
2322 }
const MooseArray< DualReal > & _ad_zero
Definition: Coupleable.h:1402

◆ getADDefaultGradient()

const ADVariableGradient & Coupleable::getADDefaultGradient ( ) const
inherited

Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation for an uncoupled variable.

Parameters
var_namethe name of the variable for which to retrieve a default gradient
Returns
VariableGradient * a pointer to the associated VariableGradient.

Definition at line 2269 of file Coupleable.C.

Referenced by Coupleable::adCoupledGradient(), and Coupleable::adCoupledGradientDot().

2270 {
2272  return _ad_default_gradient;
2273 }
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696
MooseArray< ADRealVectorValue > _ad_default_gradient
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1388

◆ getADDefaultSecond()

const ADVariableSecond & Coupleable::getADDefaultSecond ( ) const
inherited

Helper method to return (and insert if necessary) the default second derivatives for Automatic Differentiation for an uncoupled variable.

Parameters
var_namethe name of the variable for which to retrieve a default second derivative
Returns
VariableSecond * a pointer to the associated VariableSecond.

Definition at line 2283 of file Coupleable.C.

Referenced by Coupleable::adCoupledSecond().

2284 {
2286  return _ad_default_second;
2287 }
MooseArray< ADRealTensorValue > _ad_default_second
This will always be zero because the default values for optionally coupled variables is always consta...
Definition: Coupleable.h:1397
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ getADDefaultValue()

const ADVariableValue * Coupleable::getADDefaultValue ( const std::string &  var_name) const
inherited

Helper method to return (and insert if necessary) the default value for Automatic Differentiation for an uncoupled variable.

Parameters
var_namethe name of the variable for which to retrieve a default value
Returns
VariableValue * a pointer to the associated VarirableValue.

Definition at line 2238 of file Coupleable.C.

Referenced by Coupleable::adCoupledDofValues(), Coupleable::adCoupledDot(), Coupleable::adCoupledDotDot(), Coupleable::adCoupledLowerValue(), NeighborCoupleable::adCoupledNeighborValue(), and Coupleable::adCoupledValue().

2239 {
2240  auto default_value_it = _ad_default_value.find(var_name);
2241  if (default_value_it == _ad_default_value.end())
2242  {
2243  auto value = std::make_unique<ADVariableValue>(_coupleable_max_qps,
2245  default_value_it = _ad_default_value.insert(std::make_pair(var_name, std::move(value))).first;
2246  }
2247 
2248  return default_value_it->second.get();
2249 }
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
Real defaultCoupledValue(const std::string &coupling_name, unsigned int i=0) const
Get the default value for an optionally coupled variable.
std::unordered_map< std::string, std::unique_ptr< MooseArray< DualReal > > > _ad_default_value
Will hold the default value for optional coupled variables for automatic differentiation.
Definition: Coupleable.h:1365
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ getADDefaultVectorGradient()

const ADVectorVariableGradient & Coupleable::getADDefaultVectorGradient ( ) const
inherited

Helper method to return (and insert if necessary) the default gradient for Automatic Differentiation for an uncoupled vector variable.

Parameters
var_namethe name of the vector variable for which to retrieve a default gradient
Returns
VariableGradient * a pointer to the associated VectorVariableGradient.

Definition at line 2276 of file Coupleable.C.

Referenced by Coupleable::adCoupledVectorGradient().

2277 {
2280 }
MooseArray< ADRealTensorValue > _ad_default_vector_gradient
This will always be zero because the default values for optionally coupled vector variables is always...
Definition: Coupleable.h:1391
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ getADDefaultVectorValue()

const ADVectorVariableValue * Coupleable::getADDefaultVectorValue ( const std::string &  var_name) const
inherited

Helper method to return (and insert if necessary) the default vector value for Automatic Differentiation for an uncoupled variable.

Parameters
var_namethe name of the vector variable for which to retrieve a default value
Returns
VariableVectorValue * a pointer to the associated VarirableVectorValue.

Definition at line 2252 of file Coupleable.C.

Referenced by Coupleable::adCoupledVectorDot(), NeighborCoupleable::adCoupledVectorNeighborValue(), and Coupleable::adCoupledVectorValue().

2253 {
2254  auto default_value_it = _ad_default_vector_value.find(var_name);
2255  if (default_value_it == _ad_default_vector_value.end())
2256  {
2257  RealVectorValue default_vec;
2258  for (unsigned int i = 0; i < _c_parameters.numberDefaultCoupledValues(var_name); ++i)
2259  default_vec(i) = _c_parameters.defaultCoupledValue(var_name, i);
2260  auto value = std::make_unique<ADVectorVariableValue>(_coupleable_max_qps, default_vec);
2261  default_value_it =
2262  _ad_default_vector_value.insert(std::make_pair(var_name, std::move(value))).first;
2263  }
2264 
2265  return default_value_it->second.get();
2266 }
std::unordered_map< std::string, std::unique_ptr< MooseArray< ADRealVectorValue > > > _ad_default_vector_value
Will hold the default value for optional vector coupled variables for automatic differentiation.
Definition: Coupleable.h:1376
unsigned int numberDefaultCoupledValues(const std::string &coupling_name) const
Get the number of defaulted coupled value entries.
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
Real defaultCoupledValue(const std::string &coupling_name, unsigned int i=0) const
Get the default value for an optionally coupled variable.
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
unsigned int _coupleable_max_qps
Maximum qps for any element in this system.
Definition: Coupleable.h:1696

◆ getArrayVar() [1/2]

ArrayMooseVariable * Coupleable::getArrayVar ( const std::string &  var_name,
unsigned int  comp 
)
protectedinherited

◆ getArrayVar() [2/2]

const ArrayMooseVariable * Coupleable::getArrayVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Extract pointer to a coupled array variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 328 of file Coupleable.C.

329 {
330  return getVarHelper<ArrayMooseVariable>(var_name, comp);
331 }

◆ getCheckedPointerParam()

template<typename T >
T MooseBaseParameterInterface::getCheckedPointerParam ( const std::string &  name,
const std::string &  error_string = "" 
) const
inherited

Verifies that the requested parameter exists and is not NULL and returns it to the caller.

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

Definition at line 268 of file MooseBaseParameterInterface.h.

270 {
271  return parameters().getCheckedPointerParam<T>(name, error_string);
272 }
std::string name(const ElemQuality q)
T getCheckedPointerParam(const std::string &name, const std::string &error_string="") const
Verifies that the requested parameter exists and is not NULL and returns it to the caller...
const InputParameters & parameters() const
Get the parameters of the object.

◆ getConnectedDofIndices()

void NodeFaceConstraint::getConnectedDofIndices ( unsigned int  var_num)
virtual

Gets the indices for all dofs connected to the constraint.

Definition at line 256 of file NodeFaceConstraint.C.

Referenced by computeJacobian(), and computeOffDiagJacobian().

257 {
258  MooseVariableFEBase & var = _sys.getVariable(0, var_num);
259 
260  _connected_dof_indices.clear();
261  std::set<dof_id_type> unique_dof_indices;
262 
263  auto node_to_elem_pair = _node_to_elem_map.find(_current_node->id());
264  mooseAssert(node_to_elem_pair != _node_to_elem_map.end(), "Missing entry in node to elem map");
265  const std::vector<dof_id_type> & elems = node_to_elem_pair->second;
266 
267  // Get the dof indices from each elem connected to the node
268  for (const auto & cur_elem : elems)
269  {
270  std::vector<dof_id_type> dof_indices;
271 
272  var.getDofIndices(_mesh.elemPtr(cur_elem), dof_indices);
273 
274  for (const auto & dof : dof_indices)
275  unique_dof_indices.insert(dof);
276  }
277 
278  for (const auto & dof : unique_dof_indices)
279  _connected_dof_indices.push_back(dof);
280 }
MooseMesh & _mesh
Reference to this Kernel&#39;s mesh object.
virtual Elem * elemPtr(const dof_id_type i)
Definition: MooseMesh.C:2864
const std::map< dof_id_type, std::vector< dof_id_type > > & _node_to_elem_map
virtual void getDofIndices(const Elem *, std::vector< dof_id_type > &) const
This class provides an interface for common operations on field variables of both FE and FV types wit...
const Node *const & _current_node
current node being processed
SystemBase & _sys
Reference to the EquationSystem object.
std::vector< dof_id_type > _connected_dof_indices
MooseVariableFieldBase & getVariable(THREAD_ID tid, const std::string &var_name) const
Gets a reference to a variable of with specified name.
Definition: SystemBase.C:86

◆ getCoupledArrayMooseVars()

const std::vector<ArrayMooseVariable *>& Coupleable::getCoupledArrayMooseVars ( ) const
inlineinherited

Get the list of array coupled variables.

Returns
The list of array coupled variables

Definition at line 97 of file Coupleable.h.

98  {
100  }
std::vector< ArrayMooseVariable * > _coupled_array_moose_vars
Vector of array coupled variables.
Definition: Coupleable.h:1337

◆ getCoupledMooseScalarVars()

const std::vector<MooseVariableScalar *>& ScalarCoupleable::getCoupledMooseScalarVars ( )
inlineinherited

Get the list of coupled scalar variables.

Returns
The list of coupled variables

Definition at line 45 of file ScalarCoupleable.h.

Referenced by AuxScalarKernel::AuxScalarKernel(), MortarScalarBase::computeJacobian(), and ScalarInitialCondition::ScalarInitialCondition().

46  {
48  }
std::vector< MooseVariableScalar * > _coupled_moose_scalar_vars
Vector of coupled variables.

◆ getCoupledMooseVars()

const std::vector<MooseVariableFieldBase *>& Coupleable::getCoupledMooseVars ( ) const
inlineinherited

◆ getCoupledStandardMooseVars()

const std::vector<MooseVariable *>& Coupleable::getCoupledStandardMooseVars ( ) const
inlineinherited

Get the list of standard coupled variables.

Returns
The list of standard coupled variables

Definition at line 79 of file Coupleable.h.

80  {
82  }
std::vector< MooseVariable * > _coupled_standard_moose_vars
Vector of standard coupled variables.
Definition: Coupleable.h:1331

◆ getCoupledVars()

const std::unordered_map<std::string, std::vector<MooseVariableFieldBase *> >& Coupleable::getCoupledVars ( ) const
inlineinherited

Get the list of coupled variables.

Returns
The list of coupled variables

Definition at line 61 of file Coupleable.h.

Referenced by InitialConditionBase::InitialConditionBase().

62  {
63  return _coupled_vars;
64  }
std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > _coupled_vars
Coupled vars whose values we provide.
Definition: Coupleable.h:1325

◆ getCoupledVectorMooseVars()

const std::vector<VectorMooseVariable *>& Coupleable::getCoupledVectorMooseVars ( ) const
inlineinherited

Get the list of vector coupled variables.

Returns
The list of vector coupled variables

Definition at line 88 of file Coupleable.h.

89  {
91  }
std::vector< VectorMooseVariable * > _coupled_vector_moose_vars
Vector of vector coupled variables.
Definition: Coupleable.h:1334

◆ getDataFileName()

std::string DataFileInterface< MooseObject >::getDataFileName ( const std::string &  param) const
inherited

Returns the path of a data file for a given FileName type parameter, searching (in the following order)

  • relative to the input file directory
  • relative to the running binary (assuming the application is installed)
  • relative to all registered data file directories

Definition at line 24 of file DataFileInterface.C.

25 {
26  // The path from the parameters, which has not been modified because it is a DataFileName
27  const auto & value = _parent.template getParam<DataFileParameterType>(param);
28  if (value.empty())
29  _parent.paramInfo(param, "Data file name is empty");
30 
31  const std::filesystem::path value_path = std::filesystem::path(std::string(value));
32 
33  // If the file is absolute, we should reference that directly and don't need to add
34  // any info beacuse this is not ambiguous
35  if (value_path.is_absolute() && MooseUtils::checkFileReadable(value, false, false, false))
36  return value;
37 
38  // Look relative to the input file
39  const auto base = _parent.parameters().getParamFileBase(param);
40  const std::string relative_to_context = std::filesystem::absolute(base / value_path).c_str();
41  if (MooseUtils::checkFileReadable(relative_to_context, false, false, false))
42  {
43  _parent.paramInfo(param, "Data file '", value, "' found relative to the input file.");
44  return relative_to_context;
45  }
46 
47  // Isn't absolute and couldn't find relative to the input file, so search the data
48  return getDataFileNameByName(value, &param);
49 }
std::string getDataFileNameByName(const std::string &name, const std::string *param=nullptr) const
Returns the path of a data file for a given relative file path.
std::filesystem::path getParamFileBase(const std::string &param_name) const
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)
bool checkFileReadable(const std::string &filename, bool check_line_endings=false, bool throw_on_unreadable=true, bool check_for_git_lfs_pointer=true)
Checks to see if a file is readable (exists and permissions)
Definition: MooseUtils.C:256
const InputParameters & parameters() const
Get the parameters of the object.
void paramInfo(const std::string &param, Args... args) const
Emits an informational message prefixed with the file and line number of the given param (from the in...

◆ getDataFileNameByName()

std::string DataFileInterface< MooseObject >::getDataFileNameByName ( const std::string &  name,
const std::string *  param = nullptr 
) const
inherited

Returns the path of a data file for a given relative file path.

This can be used for hardcoded datafile names and will search the same locations as getDataFileName. The optional param pointer can be used to turn the mooseErrors this function emits into paramErrors

  • relative to the running binary (assuming the application is installed)
  • relative to all registered data file directories

Definition at line 53 of file DataFileInterface.C.

55 {
57  const auto share_dir = MooseUtils::pathjoin(Moose::getExecutablePath(), "..", "share");
58  if (MooseUtils::pathIsDirectory(share_dir))
59  {
60  const auto dirs = MooseUtils::listDir(share_dir, false);
61  for (const auto & data_dir : dirs)
62  {
63  const auto path = MooseUtils::pathjoin(data_dir, "data", relative_path);
64  if (MooseUtils::checkFileReadable(path, false, false, false))
65  {
66  if (param)
68  *param, "Data file '", path, "' found in an installed app distribution.");
69  else
70  mooseInfo("Data file '", path, "' found in an installed app distribution.");
71  return path;
72  }
73  }
74  }
75 
77  for (const auto & data_dir : Registry::getRegistry().getDataFilePaths())
78  {
79  const auto path = MooseUtils::pathjoin(data_dir, relative_path);
80  if (MooseUtils::checkFileReadable(path, false, false, false))
81  {
82  if (param)
83  _parent.paramInfo(*param, "Data file '", path, "' found in a source repository.");
84  else
85  mooseInfo("Data file '", path, "' found in a source repository.");
86  return path;
87  }
88  }
89 
90  mooseException(param ? _parent.parameters().inputLocation(*param) : _parent.name(),
91  ": Unable to find data file '",
92  relative_path,
93  "' anywhere");
94 }
static Registry & getRegistry()
Get the global Registry singleton.
Definition: Registry.C:21
std::string getExecutablePath()
This function returns the PATH of the running executable.
bool pathIsDirectory(const std::string &path)
Definition: MooseUtils.C:247
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
void mooseInfo(Args &&... args)
Emit an informational message with the given stringified, concatenated args.
Definition: MooseError.h:366
bool checkFileReadable(const std::string &filename, bool check_line_endings=false, bool throw_on_unreadable=true, bool check_for_git_lfs_pointer=true)
Checks to see if a file is readable (exists and permissions)
Definition: MooseUtils.C:256
std::string inputLocation(const std::string &param) const
std::filesystem::path pathjoin(const std::filesystem::path &p)
Definition: MooseUtils.C:58
std::list< std::string > listDir(const std::string path, bool files_only=false)
Definition: MooseUtils.C:768
const InputParameters & parameters() const
Get the parameters of the object.
void paramInfo(const std::string &param, Args... args) const
Emits an informational message prefixed with the file and line number of the given param (from the in...

◆ getExecuteOnEnum()

const ExecFlagEnum & SetupInterface::getExecuteOnEnum ( ) const
inherited

◆ getFEVar()

const MooseVariableFieldBase * Coupleable::getFEVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Deprecated method.

Use getFieldVar instead Extract pointer to a base coupled field variable. Could be either a finite volume or finite element variable

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 267 of file Coupleable.C.

268 {
269  mooseDeprecated("Coupleable::getFEVar is deprecated. Please use Coupleable::getFieldVar instead. "
270  "Note that this method could potentially return a finite volume variable");
271  return getFieldVar(var_name, comp);
272 }
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:350
const MooseVariableFieldBase * getFieldVar(const std::string &var_name, unsigned int comp) const
Definition: Coupleable.C:281

◆ getFEVariableCoupleableMatrixTags() [1/2]

std::set<TagID>& Coupleable::getFEVariableCoupleableMatrixTags ( )
inlineinherited

Definition at line 108 of file Coupleable.h.

108 { return _fe_coupleable_matrix_tags; }
std::set< TagID > _fe_coupleable_matrix_tags
Definition: Coupleable.h:1706

◆ getFEVariableCoupleableMatrixTags() [2/2]

const std::set<TagID>& Coupleable::getFEVariableCoupleableMatrixTags ( ) const
inlineinherited

Definition at line 115 of file Coupleable.h.

116  {
118  }
std::set< TagID > _fe_coupleable_matrix_tags
Definition: Coupleable.h:1706

◆ getFEVariableCoupleableVectorTags() [1/2]

std::set<TagID>& Coupleable::getFEVariableCoupleableVectorTags ( )
inlineinherited

◆ getFEVariableCoupleableVectorTags() [2/2]

const std::set<TagID>& Coupleable::getFEVariableCoupleableVectorTags ( ) const
inlineinherited

Definition at line 110 of file Coupleable.h.

111  {
113  }
std::set< TagID > _fe_coupleable_vector_tags
Definition: Coupleable.h:1704

◆ getFieldVar() [1/2]

const MooseVariableFieldBase * Coupleable::getFieldVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

◆ getFieldVar() [2/2]

MooseVariableFieldBase * Coupleable::getFieldVar ( const std::string &  var_name,
unsigned int  comp 
)
protectedinherited

Definition at line 275 of file Coupleable.C.

276 {
277  return getVarHelper<MooseVariableFieldBase>(var_name, comp);
278 }

◆ getFunction()

const Function & FunctionInterface::getFunction ( const std::string &  name) const
inherited

Get a function with a given name.

Parameters
nameThe name of the parameter key of the function to retrieve
Returns
The function with name associated with the parameter 'name'

Definition at line 30 of file FunctionInterface.C.

Referenced by FunctionDT::FunctionDT(), and Output::Output().

31 {
32  return _fni_feproblem.getFunction(_fni_params.get<FunctionName>(name), _fni_tid);
33 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
virtual Function & getFunction(const std::string &name, const THREAD_ID tid=0)
const THREAD_ID _fni_tid
Thread ID.
FEProblemBase & _fni_feproblem
Reference to FEProblemBase instance.
const InputParameters & _fni_params
Parameters of the object with this interface.

◆ getFunctionByName()

const Function & FunctionInterface::getFunctionByName ( const FunctionName &  name) const
inherited

◆ getMasterSeed()

unsigned int RandomInterface::getMasterSeed ( ) const
inlineinherited

Definition at line 66 of file RandomInterface.h.

66 { return _master_seed; }
unsigned int _master_seed

◆ getMatPropDependencies()

const std::unordered_set< unsigned int > & NodeFaceConstraint::getMatPropDependencies ( ) const
inlinevirtual
Returns
material property dependencies

Definition at line 349 of file NodeFaceConstraint.h.

350 {
351  return _empty_mat_prop_deps;
352 }
const std::unordered_set< unsigned int > _empty_mat_prop_deps
An empty material property dependency set for use with getMatPropDependencies.

◆ getMatrixTags()

const std::set<TagID>& TaggingInterface::getMatrixTags ( MatrixTagsKey  ) const
inlineinherited

Definition at line 97 of file TaggingInterface.h.

97 { return _matrix_tags; }
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.

◆ getMooseApp()

MooseApp& MooseBase::getMooseApp ( ) const
inlineinherited

◆ getMooseVariableDependencies()

const std::set<MooseVariableFieldBase *>& MooseVariableDependencyInterface::getMooseVariableDependencies ( ) const
inlineinherited

Retrieve the set of MooseVariableFieldBase that this object depends on.

Returns
The MooseVariableFieldBase that MUST be reinited before evaluating this object

Definition at line 35 of file MooseVariableDependencyInterface.h.

Referenced by ComputeUserObjectsThread::subdomainChanged(), and MooseObjectWarehouseBase< Indicator >::updateVariableDependencyHelper().

36  {
38  }
std::set< MooseVariableFieldBase * > _moose_variable_dependencies

◆ getNearestNodeLocator()

NearestNodeLocator & GeometricSearchInterface::getNearestNodeLocator ( const BoundaryName &  primary,
const BoundaryName &  secondary 
)
inherited

Retrieve the PentrationLocator associated with the two sides.

Definition at line 53 of file GeometricSearchInterface.C.

55 {
57  return _geometric_search_data.getNearestNodeLocator(primary, secondary);
58 }
GeometricSearchData & _geometric_search_data
NearestNodeLocator & getNearestNodeLocator(const BoundaryName &primary, const BoundaryName &secondary)
bool _requires_geometric_search
Whether any of this interface&#39;s methods have been called, e.g.

◆ getParam() [1/2]

template<typename T >
const T & MooseBaseParameterInterface::getParam ( const std::string &  name) const
inherited

Retrieve a parameter for the object.

Parameters
nameThe name of the parameter
Returns
The value of the parameter

Definition at line 204 of file MooseBaseParameterInterface.h.

Referenced by CreateDisplacedProblemAction::act(), AddPeriodicBCAction::act(), ADNodalKernel::ADNodalKernel(), ArrayParsedAux::ArrayParsedAux(), AddPeriodicBCAction::autoTranslationBoundaries(), BicubicSplineFunction::BicubicSplineFunction(), PiecewiseTabularBase::buildFromJSON(), PhysicsBase::checkVectorParamsNoOverlap(), PhysicsBase::checkVectorParamsSameLength(), FEProblemBase::createTagSolutions(), AccumulateReporter::declareLateValues(), DerivativeParsedMaterialTempl< is_ad >::DerivativeParsedMaterialTempl(), DynamicObjectRegistrationAction::DynamicObjectRegistrationAction(), EigenKernel::EigenKernel(), FEProblemBase::FEProblemBase(), FEProblemSolve::FEProblemSolve(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), FVInterfaceKernel::FVInterfaceKernel(), ExtraNodesetGenerator::generate(), FileMeshGenerator::generate(), BreakMeshByBlockGenerator::generate(), CoarsenBlockGenerator::generate(), GeneratedMeshGenerator::generate(), RefineBlockGenerator::generate(), RefineSidesetGenerator::generate(), BlockDeletionGenerator::generate(), MeshExtruderGenerator::generate(), GenericConstantRankTwoTensorTempl< is_ad >::GenericConstantRankTwoTensorTempl(), MooseApp::getCheckpointDirectories(), ExecutorInterface::getExecutor(), GhostingUserObject::GhostingUserObject(), TimeSequenceStepper::init(), IterationAdaptiveDT::init(), AdvancedOutput::init(), AttribThread::initFrom(), AttribSysNum::initFrom(), AttribResidualObject::initFrom(), AttribDisplaced::initFrom(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), Console::initialSetup(), IterationAdaptiveDT::limitDTToPostprocessorValue(), MooseMesh::MooseMesh(), MooseVariableBase::MooseVariableBase(), NestedDivision::NestedDivision(), ConsoleUtils::outputExecutionInformation(), ParsedAux::ParsedAux(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedElementDeletionGenerator::ParsedElementDeletionGenerator(), ParsedGenerateSideset::ParsedGenerateSideset(), ParsedMaterialTempl< is_ad >::ParsedMaterialTempl(), ParsedNodeTransformGenerator::ParsedNodeTransformGenerator(), ParsedODEKernel::ParsedODEKernel(), ParsedPostprocessor::ParsedPostprocessor(), ParsedSubdomainMeshGenerator::ParsedSubdomainMeshGenerator(), PiecewiseByBlockFunctorMaterialTempl< T >::PiecewiseByBlockFunctorMaterialTempl(), PiecewiseConstantByBlockMaterialTempl< is_ad >::PiecewiseConstantByBlockMaterialTempl(), RenameBlockGenerator::RenameBlockGenerator(), RenameBoundaryGenerator::RenameBoundaryGenerator(), Moose::FV::setInterpolationMethod(), SetupMeshAction::setupMesh(), SingleMatrixPreconditioner::SingleMatrixPreconditioner(), TimePeriod::TimePeriod(), UniqueExtraIDMeshGenerator::UniqueExtraIDMeshGenerator(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), and VectorOfPostprocessors::VectorOfPostprocessors().

205 {
206  return InputParameters::getParamHelper(name, _pars, static_cast<T *>(0), &_moose_base);
207 }
const MooseBase & _moose_base
The MooseBase object that inherits this class.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
static const T & getParamHelper(const std::string &name, const InputParameters &pars, const T *the_type, const MooseBase *moose_base=nullptr)

◆ getParam() [2/2]

template<typename T1 , typename T2 >
std::vector< std::pair< T1, T2 > > MooseBaseParameterInterface::getParam ( const std::string &  param1,
const std::string &  param2 
) const
inherited

Retrieve two parameters and provide pair of parameters for the object.

Parameters
param1The name of first parameter
param2The name of second parameter
Returns
Vector of pairs of first and second parameters

Definition at line 261 of file MooseBaseParameterInterface.h.

262 {
263  return _pars.get<T1, T2>(param1, param2);
264 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

◆ getPenetrationLocator()

PenetrationLocator & GeometricSearchInterface::getPenetrationLocator ( const BoundaryName &  primary,
const BoundaryName &  secondary,
Order  order 
)
inherited

Retrieve the PentrationLocator associated with the two sides.

Definition at line 35 of file GeometricSearchInterface.C.

38 {
40  return _geometric_search_data.getPenetrationLocator(primary, secondary, order);
41 }
GeometricSearchData & _geometric_search_data
bool _requires_geometric_search
Whether any of this interface&#39;s methods have been called, e.g.
PenetrationLocator & getPenetrationLocator(const BoundaryName &primary, const BoundaryName &secondary, Order order=FIRST)

◆ getPostprocessorName()

const PostprocessorName & PostprocessorInterface::getPostprocessorName ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Get the name of a postprocessor.

This can only be used if the postprocessor parameter does not have a default value set (see isDefaultPostprocessorValue()), in which case the "name" is actually the default value.

Parameters
param_nameThe name of the Postprocessor parameter
indexThe index of the Postprocessor
Returns
The name of the given Postprocessor

Definition at line 185 of file PostprocessorInterface.C.

Referenced by EigenKernel::EigenKernel().

187 {
188  return getPostprocessorNameInternal(param_name, index, /* allow_default_value = */ false);
189 }
const PostprocessorName & getPostprocessorNameInternal(const std::string &param_name, const unsigned int index, const bool allow_default_value=true) const
Internal method for getting the PostprocessorName associated with a paremeter.

◆ getPostprocessorValue()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValue ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

doco-normal-methods-begin Retrieve the value of a Postprocessor or one of it's old or older values

Parameters
param_nameThe name of the Postprocessor parameter (see below)
indexThe index of the Postprocessor
Returns
A reference to the desired value

The name required by this method is the name that is hard-coded into your source code. For example, if you have a Kernel that requires a Postprocessor you may have an input file with "pp = my_pp", this function requires the "pp" name as input (see .../moose_test/functions/PostprocessorFunction.C)

see getPostprocessorValueByName getPostprocessorValueOldByName getPostprocessorValueOlderByName

Definition at line 36 of file PostprocessorInterface.C.

Referenced by EigenKernel::EigenKernel(), FunctionValuePostprocessor::FunctionValuePostprocessor(), LinearCombinationPostprocessor::LinearCombinationPostprocessor(), ParsedPostprocessor::ParsedPostprocessor(), and PicardSolve::PicardSolve().

38 {
39  return getPostprocessorValueInternal(param_name, index, /* t_index = */ 0);
40 }
const PostprocessorValue & getPostprocessorValueInternal(const std::string &param_name, unsigned int index, std::size_t t_index) const
Internal methods for getting Postprocessor values.

◆ getPostprocessorValueByName()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueByName ( const PostprocessorName &  name) const
virtualinherited

Retrieve the value of the Postprocessor.

Parameters
namePostprocessor name (see below)
Returns
A reference to the desired value

The name required by this method is the name defined in the input file. For example, if you have a Kernel that requires a Postprocessor you may have an input file with "pp = my_pp", this method requires the "my_pp" name as input (see .../moose_test/functions/PostprocessorFunction.C)

see getPostprocessorValue getPostprocessorValueOld getPostprocessorValueOlder

Definition at line 57 of file PostprocessorInterface.C.

Referenced by EigenKernel::EigenKernel(), PIDTransientControl::execute(), IterationAdaptiveDT::IterationAdaptiveDT(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), ParsedODEKernel::ParsedODEKernel(), SecantSolve::savePostprocessorValues(), SteffensenSolve::savePostprocessorValues(), PicardSolve::savePostprocessorValues(), Terminator::Terminator(), SteffensenSolve::transformPostprocessors(), SecantSolve::transformPostprocessors(), PicardSolve::transformPostprocessors(), and VectorOfPostprocessors::VectorOfPostprocessors().

58 {
59  return getPostprocessorValueByNameInternal(name, /* t_index = */ 0);
60 }
const PostprocessorValue & getPostprocessorValueByNameInternal(const PostprocessorName &name, std::size_t t_index) const

◆ getPostprocessorValueOld()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOld ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Definition at line 43 of file PostprocessorInterface.C.

45 {
46  return getPostprocessorValueInternal(param_name, index, /* t_index = */ 1);
47 }
const PostprocessorValue & getPostprocessorValueInternal(const std::string &param_name, unsigned int index, std::size_t t_index) const
Internal methods for getting Postprocessor values.

◆ getPostprocessorValueOldByName()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOldByName ( const PostprocessorName &  name) const
inherited

Definition at line 63 of file PostprocessorInterface.C.

Referenced by EigenKernel::EigenKernel().

64 {
65  return getPostprocessorValueByNameInternal(name, /* t_index = */ 1);
66 }
const PostprocessorValue & getPostprocessorValueByNameInternal(const PostprocessorName &name, std::size_t t_index) const

◆ getPostprocessorValueOlder()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOlder ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Definition at line 50 of file PostprocessorInterface.C.

52 {
53  return getPostprocessorValueInternal(param_name, index, /* t_index = */ 2);
54 }
const PostprocessorValue & getPostprocessorValueInternal(const std::string &param_name, unsigned int index, std::size_t t_index) const
Internal methods for getting Postprocessor values.

◆ getPostprocessorValueOlderByName()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOlderByName ( const PostprocessorName &  name) const
inherited

Definition at line 69 of file PostprocessorInterface.C.

70 {
71  return getPostprocessorValueByNameInternal(name, /* t_index = */ 2);
72 }
const PostprocessorValue & getPostprocessorValueByNameInternal(const PostprocessorName &name, std::size_t t_index) const

◆ getQuadratureNearestNodeLocator()

NearestNodeLocator & GeometricSearchInterface::getQuadratureNearestNodeLocator ( const BoundaryName &  primary,
const BoundaryName &  secondary 
)
inherited

Retrieve a Quadrature NearestNodeLocator associated with the two sides.

A "Quadrature" version means that it's going to find the nearest nodes to each quadrature point on this boundary

Definition at line 61 of file GeometricSearchInterface.C.

63 {
66 }
GeometricSearchData & _geometric_search_data
bool _requires_geometric_search
Whether any of this interface&#39;s methods have been called, e.g.
NearestNodeLocator & getQuadratureNearestNodeLocator(const BoundaryName &primary, const BoundaryName &secondary)

◆ getQuadraturePenetrationLocator()

PenetrationLocator & GeometricSearchInterface::getQuadraturePenetrationLocator ( const BoundaryName &  primary,
const BoundaryName &  secondary,
Order  order 
)
inherited

Retrieve the Quadrature PentrationLocator associated with the two sides.

A "Quadrature" version means that it's going to find the penetration each quadrature point on this boundary

Definition at line 44 of file GeometricSearchInterface.C.

47 {
49  return _geometric_search_data.getQuadraturePenetrationLocator(primary, secondary, order);
50 }
GeometricSearchData & _geometric_search_data
bool _requires_geometric_search
Whether any of this interface&#39;s methods have been called, e.g.
PenetrationLocator & getQuadraturePenetrationLocator(const BoundaryName &primary, const BoundaryName &secondary, Order order=FIRST)

◆ getRandomLong()

unsigned long RandomInterface::getRandomLong ( ) const
inherited

Returns the next random number (long) from the generator tied to this object (elem/node).

Definition at line 69 of file RandomInterface.C.

70 {
71  mooseAssert(_generator, "Random Generator is NULL, did you call setRandomResetFrequency()?");
72 
73  dof_id_type id;
74  if (_is_nodal)
75  id = _curr_node->id();
76  else
77  id = _curr_element->id();
78 
79  return _generator->randl(id);
80 }
static uint32_t randl()
This method returns the next random number (long format) from the generator.
Definition: MooseRandom.h:70
const Node *const & _curr_node
const Elem *const & _curr_element
MooseRandom * _generator
uint8_t dof_id_type

◆ getRandomReal()

Real RandomInterface::getRandomReal ( ) const
inherited

Returns the next random number (Real) from the generator tied to this object (elem/node).

Definition at line 83 of file RandomInterface.C.

84 {
85  mooseAssert(_generator, "Random Generator is NULL, did you call setRandomResetFrequency()?");
86 
87  dof_id_type id;
88  if (_is_nodal)
89  id = _curr_node->id();
90  else
91  id = _curr_element->id();
92 
93  return _generator->rand(id);
94 }
const Node *const & _curr_node
const Elem *const & _curr_element
static Real rand()
This method returns the next random number (Real format) from the generator.
Definition: MooseRandom.h:49
MooseRandom * _generator
uint8_t dof_id_type

◆ getRenamedParam()

template<typename T >
const T & MooseBaseParameterInterface::getRenamedParam ( const std::string &  old_name,
const std::string &  new_name 
) const
inherited

Retrieve a renamed parameter for the object.

This helper makes sure we check both names before erroring, and that only one parameter is passed to avoid silent errors

Parameters
old_namethe old name for the parameter
new_namethe new name for the parameter

Definition at line 211 of file MooseBaseParameterInterface.h.

213 {
214  // this enables having a default on the new parameter but bypassing it with the old one
215  // Most important: accept new parameter
216  if (isParamSetByUser(new_name) && !isParamValid(old_name))
217  return InputParameters::getParamHelper(new_name, _pars, static_cast<T *>(0), &_moose_base);
218  // Second most: accept old parameter
219  else if (isParamValid(old_name) && !isParamSetByUser(new_name))
220  return InputParameters::getParamHelper(old_name, _pars, static_cast<T *>(0), &_moose_base);
221  // Third most: accept default for new parameter
222  else if (isParamValid(new_name) && !isParamValid(old_name))
223  return InputParameters::getParamHelper(new_name, _pars, static_cast<T *>(0), &_moose_base);
224  // Refuse: no default, no value passed
225  else if (!isParamValid(old_name) && !isParamValid(new_name))
226  mooseError(_pars.blockFullpath() + ": parameter '" + new_name +
227  "' is being retrieved without being set.\n"
228  "Did you misspell it?");
229  // Refuse: both old and new parameters set by user
230  else
231  mooseError(_pars.blockFullpath() + ": parameter '" + new_name +
232  "' may not be provided alongside former parameter '" + old_name + "'");
233 }
const MooseBase & _moose_base
The MooseBase object that inherits this class.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool isParamValid(const std::string &name) const
Test if the supplied parameter is valid.
bool isParamSetByUser(const std::string &nm) const
Test if the supplied parameter is set by a user, as opposed to not set or set to default.
std::string blockFullpath() const
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
static const T & getParamHelper(const std::string &name, const InputParameters &pars, const T *the_type, const MooseBase *moose_base=nullptr)

◆ getResetOnTime()

ExecFlagType RandomInterface::getResetOnTime ( ) const
inlineinherited

Definition at line 68 of file RandomInterface.h.

68 { return _reset_on; }
ExecFlagType _reset_on

◆ getRestartableData()

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

Declare a piece of data as "restartable" and initialize it Similar to declareRestartableData but returns a const reference to the object.

Forwarded arguments are not allowed in this case because we assume that the object is restarted and we won't need different constructors to initialize it.

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

Parameters
data_nameThe name of the data (usually just use the same name as the member variable)

Definition at line 287 of file Restartable.h.

288 {
289  return declareRestartableDataHelper<T>(data_name, nullptr).get();
290 }

◆ getScalarVar()

const MooseVariableScalar * ScalarCoupleable::getScalarVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Extract pointer to a scalar coupled variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 321 of file ScalarCoupleable.C.

Referenced by ScalarCoupleable::adCoupledScalarDot(), ScalarCoupleable::adCoupledScalarValue(), ScalarCoupleable::coupledMatrixTagScalarValue(), ScalarCoupleable::coupledScalar(), ScalarCoupleable::coupledScalarDot(), ScalarCoupleable::coupledScalarDotDot(), ScalarCoupleable::coupledScalarDotDotDu(), ScalarCoupleable::coupledScalarDotDotOld(), ScalarCoupleable::coupledScalarDotDu(), ScalarCoupleable::coupledScalarDotOld(), ScalarCoupleable::coupledScalarOrder(), ScalarCoupleable::coupledScalarValue(), ScalarCoupleable::coupledScalarValueOld(), ScalarCoupleable::coupledScalarValueOlder(), ScalarCoupleable::coupledVectorTagScalarValue(), and ParsedODEKernel::ParsedODEKernel().

322 {
323  const auto var_name = _sc_parameters.checkForRename(var_name_in);
324 
325  const auto it = _coupled_scalar_vars.find(var_name);
326  if (it != _coupled_scalar_vars.end())
327  {
328  const auto & entry = it->second;
329  if (comp < entry.size())
330  return entry[comp];
331  else
332  mooseError(_sc_name, ": Trying to get a non-existent component of variable '", var_name, "'");
333  }
334  else
335  mooseError(_sc_name, ": Trying to get a non-existent variable '", var_name, "'");
336 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const std::string & _sc_name
The name of the object this interface is part of.
std::unordered_map< std::string, std::vector< MooseVariableScalar * > > _coupled_scalar_vars
Coupled vars whose values we provide.
const InputParameters & _sc_parameters
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.

◆ getScalarVariableCoupleableMatrixTags()

const std::set<TagID>& ScalarCoupleable::getScalarVariableCoupleableMatrixTags ( ) const
inlineinherited

Definition at line 55 of file ScalarCoupleable.h.

56  {
58  }
std::set< TagID > _sc_coupleable_matrix_tags
The scalar coupleable matrix tags.

◆ getScalarVariableCoupleableVectorTags()

const std::set<TagID>& ScalarCoupleable::getScalarVariableCoupleableVectorTags ( ) const
inlineinherited

Definition at line 50 of file ScalarCoupleable.h.

51  {
53  }
std::set< TagID > _sc_coupleable_vector_tags
The scalar coupleable vector tags.

◆ getScatterVectorPostprocessorValue()

const ScatterVectorPostprocessorValue & VectorPostprocessorInterface::getScatterVectorPostprocessorValue ( const std::string &  param_name,
const std::string &  vector_name 
) const
inherited

Return the scatter value for the post processor.

This is only valid when you expec the vector to be of lenghth "num_procs" In that case - this will return a reference to a value that will be this processor's value from that vector

Parameters
param_nameThe name of the parameter holding the vpp name
vector_nameThe name of the vector
Returns
The reference to the current scatter value

Definition at line 106 of file VectorPostprocessorInterface.C.

108 {
109  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
111  vector_name);
112 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
const ScatterVectorPostprocessorValue & getScatterVectorPostprocessorValueByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Return the scatter value for the post processor.

◆ getScatterVectorPostprocessorValueByName()

const ScatterVectorPostprocessorValue & VectorPostprocessorInterface::getScatterVectorPostprocessorValueByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

Return the scatter value for the post processor.

This is only valid when you expec the vector to be of lenghth "num_procs" In that case - this will return a reference to a value that will be this processor's value from that vector

Parameters
nameThe name of the VectorPostprocessor
vector_nameThe name of the vector
Returns
The reference to the current scatter value

Definition at line 115 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValue().

117 {
118  return getVectorPostprocessorContextByNameHelper(name, vector_name).getScatterValue();
119 }
const VectorPostprocessorContext< VectorPostprocessorValue > & getVectorPostprocessorContextByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name) const
Helper for getting the VPP context that handles scatter values.

◆ getScatterVectorPostprocessorValueOld()

const ScatterVectorPostprocessorValue & VectorPostprocessorInterface::getScatterVectorPostprocessorValueOld ( const std::string &  param_name,
const std::string &  vector_name 
) const
inherited

Return the old scatter value for the post processor.

This is only valid when you expec the vector to be of lenghth "num_procs" In that case - this will return a reference to a value that will be this processor's value from that vector

Parameters
param_nameThe name of the parameter holding the vpp name
vector_nameThe name of the vector
Returns
The reference to the old scatter value

Definition at line 122 of file VectorPostprocessorInterface.C.

124 {
125  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
127  vector_name);
128 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const ScatterVectorPostprocessorValue & getScatterVectorPostprocessorValueOldByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Return the old scatter value for the post processor.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.

◆ getScatterVectorPostprocessorValueOldByName()

const ScatterVectorPostprocessorValue & VectorPostprocessorInterface::getScatterVectorPostprocessorValueOldByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

Return the old scatter value for the post processor.

This is only valid when you expect the vector to be of length "num_procs" In that case - this will return a reference to a value that will be this processor's value from that vector

Parameters
nameThe name of the VectorPostprocessor
vector_nameThe name of the vector
Returns
The reference to the old scatter value

Definition at line 131 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValueOld().

133 {
134  return getVectorPostprocessorContextByNameHelper(name, vector_name).getScatterValueOld();
135 }
const VectorPostprocessorContext< VectorPostprocessorValue > & getVectorPostprocessorContextByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name) const
Helper for getting the VPP context that handles scatter values.

◆ getSecondaryConnectedBlocks()

std::set< SubdomainID > NodeFaceConstraint::getSecondaryConnectedBlocks ( ) const
Returns
IDs of the subdomains that connect to the secondary boundary

Definition at line 297 of file NodeFaceConstraint.C.

298 {
300 }
MooseMesh & _mesh
Reference to this Kernel&#39;s mesh object.
BoundaryID _secondary
Boundary ID for the secondary surface.
std::set< SubdomainID > getBoundaryConnectedBlocks(const BoundaryID bid) const
Get the list of subdomains associated with the given boundary.
Definition: MooseMesh.C:3272

◆ getSeed()

unsigned int RandomInterface::getSeed ( std::size_t  id)
inherited

Get the seed for the passed in elem/node id.

Parameters
id- dof object id
Returns
current seed for this id

Definition at line 61 of file RandomInterface.C.

62 {
63  mooseAssert(_random_data, "RandomData object is NULL!");
64 
65  return _random_data->getSeed(id);
66 }
RandomData * _random_data
unsigned int getSeed(dof_id_type id)
Get the seed for the passed in elem/node id.
Definition: RandomData.C:40

◆ getUserObject()

template<class T >
const T & UserObjectInterface::getUserObject ( const std::string &  param_name,
bool  is_dependency = true 
) const
inherited

Get an user object with a given parameter param_name.

Parameters
param_nameThe name of the parameter key of the user object to retrieve
is_dependencyWhether the user object we are retrieving should be viewed as a dependency, e.g. whether the retrieved user object should be sorted and executed before this object (if we are a user object)
Returns
The user object with name associated with the parameter param_name

Definition at line 160 of file UserObjectInterface.h.

161 {
162  return castUserObject<T>(getUserObjectBase(param_name, is_dependency), param_name);
163 }
const UserObject & getUserObjectBase(const std::string &param_name, bool is_dependency=true) const
Get an user object with a given parameter param_name.

◆ getUserObjectBase()

const UserObject & UserObjectInterface::getUserObjectBase ( const std::string &  param_name,
bool  is_dependency = true 
) const
inherited

Get an user object with a given parameter param_name.

Parameters
param_nameThe name of the parameter key of the user object to retrieve
is_dependencyWhether the user object we are retrieving should be viewed as a dependency, e.g. whether the retrieved user object should be sorted and executed before this object (if we are a user object)
Returns
The user object with name associated with the parameter param_name

Definition at line 79 of file UserObjectInterface.C.

Referenced by UserObjectInterface::getUserObject().

81 {
82  const auto object_name = getUserObjectName(param_name);
83  if (!hasUserObjectByName(object_name))
85  param_name, "The requested UserObject with the name \"", object_name, "\" was not found.");
86 
87  return getUserObjectBaseByName(object_name, is_dependency);
88 }
UserObjectName getUserObjectName(const std::string &param_name) const
const MooseObject & _uoi_moose_object
Moose object using the interface.
void paramError(const std::string &param, Args... args) const
Emits an error prefixed with the file and line number of the given param (from the input file) along ...
const UserObject & getUserObjectBaseByName(const UserObjectName &object_name, bool is_dependency=true) const
Get an user object with the name object_name.
bool hasUserObjectByName(const UserObjectName &object_name) const

◆ getUserObjectBaseByName()

const UserObject & UserObjectInterface::getUserObjectBaseByName ( const UserObjectName &  object_name,
bool  is_dependency = true 
) const
inherited

Get an user object with the name object_name.

Parameters
object_nameThe name of the user object to retrieve
is_dependencyWhether the user object we are retrieving should be viewed as a dependency, e.g. whether the retrieved user object should be sorted and executed before this object (if we are a user object)
Returns
The user object with the name object_name

Definition at line 91 of file UserObjectInterface.C.

Referenced by UserObject::getDependObjects(), UserObjectInterface::getUserObjectBase(), and UserObjectInterface::getUserObjectByName().

93 {
94  if (!hasUserObjectByName(object_name))
96  "The requested UserObject with the name \"", object_name, "\" was not found.");
97 
98  const auto & uo_base_tid0 = _uoi_feproblem.getUserObjectBase(object_name, /* tid = */ 0);
99  if (is_dependency)
100  addUserObjectDependencyHelper(uo_base_tid0);
101 
102  const THREAD_ID tid = uo_base_tid0.needThreadedCopy() ? _uoi_tid : 0;
103  return _uoi_feproblem.getUserObjectBase(object_name, tid);
104 }
const MooseObject & _uoi_moose_object
Moose object using the interface.
const FEProblemBase & _uoi_feproblem
Reference to the FEProblemBase instance.
const THREAD_ID _uoi_tid
Thread ID.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const UserObject & getUserObjectBase(const std::string &name, const THREAD_ID tid=0) const
Get the user object by its name.
virtual void addUserObjectDependencyHelper(const UserObject &) const
Helper for deriving classes to override to add dependencies when a UserObject is requested.
bool hasUserObjectByName(const UserObjectName &object_name) const
unsigned int THREAD_ID
Definition: MooseTypes.h:198

◆ getUserObjectByName()

template<class T >
const T & UserObjectInterface::getUserObjectByName ( const UserObjectName &  object_name,
bool  is_dependency = true 
) const
inherited

Get an user object with the name object_name.

Parameters
object_nameThe name of the user object to retrieve
is_dependencyWhether the user object we are retrieving should be viewed as a dependency, e.g. whether the retrieved user object should be sorted and executed before this object (if we are a user object)
Returns
The user object with the name object_name

Definition at line 167 of file UserObjectInterface.h.

169 {
170  return castUserObject<T>(getUserObjectBaseByName(object_name, is_dependency));
171 }
const UserObject & getUserObjectBaseByName(const UserObjectName &object_name, bool is_dependency=true) const
Get an user object with the name object_name.

◆ getUserObjectName()

UserObjectName UserObjectInterface::getUserObjectName ( const std::string &  param_name) const
inherited
Returns
The name of the user object associated with the parameter param_name

Definition at line 34 of file UserObjectInterface.C.

Referenced by UserObjectInterface::getUserObjectBase(), and UserObjectInterface::hasUserObject().

35 {
36  const auto & params = _uoi_moose_object.parameters();
37 
38  if (!params.isParamValid(param_name))
39  _uoi_moose_object.mooseError("Failed to get a parameter with the name \"",
40  param_name,
41  "\" when getting a UserObjectName.",
42  "\n\nKnown parameters:\n",
44 
45  // Other interfaces will use this interface (PostprocessorInterface, VectorPostprocessorInterface)
46  // to grab UOs with a specialized name, so we need to check them all
47  UserObjectName name;
48  if (params.isType<UserObjectName>(param_name))
49  name = params.get<UserObjectName>(param_name);
50  else if (params.isType<PostprocessorName>(param_name))
51  name = params.get<PostprocessorName>(param_name);
52  else if (params.isType<VectorPostprocessorName>(param_name))
53  name = params.get<VectorPostprocessorName>(param_name);
54  else if (params.isType<std::string>(param_name))
55  name = params.get<std::string>(param_name);
56  else
58  param_name,
59  "Parameter of type \"",
60  params.type(param_name),
61  "\" is not an expected type for getting the name of a UserObject.");
62 
63  return name;
64 }
std::string name(const ElemQuality q)
const MooseObject & _uoi_moose_object
Moose object using the interface.
void paramError(const std::string &param, Args... args) const
Emits an error prefixed with the file and line number of the given param (from the input file) along ...
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const InputParameters & parameters() const
Get the parameters of the object.

◆ getVar() [1/2]

MooseVariable * Coupleable::getVar ( const std::string &  var_name,
unsigned int  comp 
)
protectedinherited

Extract pointer to a coupled variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 287 of file Coupleable.C.

Referenced by Coupleable::coupledDofValuesOld(), Coupleable::coupledDofValuesOlder(), Coupleable::coupledDot(), Coupleable::coupledDotDot(), Coupleable::coupledDotDotDu(), Coupleable::coupledDotDotOld(), Coupleable::coupledDotDu(), Coupleable::coupledDotOld(), Coupleable::coupledGradientDot(), Coupleable::coupledGradientDotDot(), Coupleable::coupledGradientOld(), Coupleable::coupledGradientOlder(), Coupleable::coupledGradientPreviousNL(), NeighborCoupleable::coupledNeighborDofValues(), NeighborCoupleable::coupledNeighborDofValuesOld(), NeighborCoupleable::coupledNeighborDofValuesOlder(), NeighborCoupleable::coupledNeighborGradientOld(), NeighborCoupleable::coupledNeighborGradientOlder(), NeighborCoupleable::coupledNeighborSecond(), NeighborCoupleable::coupledNeighborValueDot(), NeighborCoupleable::coupledNeighborValueDotDu(), NeighborCoupleable::coupledNeighborValueOld(), NeighborCoupleable::coupledNeighborValueOlder(), Coupleable::coupledNodalDotDot(), Coupleable::coupledNodalDotDotOld(), Coupleable::coupledNodalDotOld(), Coupleable::coupledSecond(), Coupleable::coupledSecondOld(), Coupleable::coupledSecondOlder(), Coupleable::coupledSecondPreviousNL(), Coupleable::coupledValueLower(), Coupleable::coupledValueOld(), Coupleable::coupledValueOlder(), Coupleable::coupledValuePreviousNL(), Coupleable::coupledVectorTagGradient(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), and Coupleable::writableCoupledValue().

288 {
289  return const_cast<MooseVariable *>(getVarHelper<MooseVariable>(var_name, comp));
290 }
Class for stuff related to variables.
Definition: Adaptivity.h:31

◆ getVar() [2/2]

const MooseVariable * Coupleable::getVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Extract pointer to a coupled variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 311 of file Coupleable.C.

312 {
313  return getVarHelper<MooseVariable>(var_name, comp);
314 }

◆ getVarHelper() [1/2]

template<typename T >
const T * Coupleable::getVarHelper ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Helper that that be used to retrieve a variable of arbitrary type T.

Definition at line 1777 of file Coupleable.h.

1778 {
1779  return const_cast<Coupleable *>(this)->getVarHelper<T>(var_name, comp);
1780 }
Interface for objects that needs coupling capabilities.
Definition: Coupleable.h:45

◆ getVarHelper() [2/2]

template<typename T >
T * Coupleable::getVarHelper ( const std::string &  var_name,
unsigned int  comp 
)
protectedinherited

Helper that can be used to retrieve a variable of arbitrary type T.

Definition at line 1723 of file Coupleable.h.

1724 {
1725  const auto var_name = _c_parameters.checkForRename(var_name_in);
1726  auto name_to_use = var_name;
1727 
1728  // First check for supplied name
1729  if (!checkVar(var_name, comp, 0))
1730  {
1731  // See if there is an associated deprecated name that the user may have used instead
1732  auto it = _new_to_deprecated_coupled_vars.find(var_name);
1733  if (it == _new_to_deprecated_coupled_vars.end())
1734  return nullptr;
1735  else
1736  {
1737  auto deprecated_name = it->second;
1738  if (checkVar(deprecated_name, comp, 0))
1739  name_to_use = deprecated_name;
1740  else
1741  return nullptr;
1742  }
1743  }
1744 
1745  auto coupled_vars_it = _coupled_vars.find(name_to_use);
1746 
1747  mooseAssert(coupled_vars_it != _coupled_vars.end(),
1748  "Trying to get a coupled var " << name_to_use << " that doesn't exist");
1749 
1750  if (auto coupled_var = dynamic_cast<T *>(coupled_vars_it->second[comp]))
1751  return coupled_var;
1752  else
1753  {
1754  for (auto & var : _coupled_standard_moose_vars)
1755  if (var->name() == name_to_use)
1756  mooseError("The named variable is a standard variable, try a "
1757  "'coupled[Value/Gradient/Dot/etc]...' function instead");
1758  for (auto & var : _coupled_vector_moose_vars)
1759  if (var->name() == name_to_use)
1760  mooseError("The named variable is a vector variable, try a "
1761  "'coupledVector[Value/Gradient/Dot/etc]...' function instead");
1762  for (auto & var : _coupled_array_moose_vars)
1763  if (var->name() == name_to_use)
1764  mooseError("The named variable is an array variable, try a "
1765  "'coupledArray[Value/Gradient/Dot/etc]...' function instead");
1766  for (auto & var : _coupled_standard_fv_moose_vars)
1767  if (var->name() == name_to_use)
1768  mooseError("The named variable is a finite volume variable, which the coupled[...] routine "
1769  "used does not support. Try using the functor system routines instead.");
1770  mooseError(
1771  "Variable '", name_to_use, "' is of a different C++ type than you tried to fetch it as.");
1772  }
1773 }
std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > _coupled_vars
Coupled vars whose values we provide.
Definition: Coupleable.h:1325
std::vector< MooseVariableFV< Real > * > _coupled_standard_fv_moose_vars
Vector of standard finite volume coupled variables.
Definition: Coupleable.h:1340
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::vector< ArrayMooseVariable * > _coupled_array_moose_vars
Vector of array coupled variables.
Definition: Coupleable.h:1337
std::vector< MooseVariable * > _coupled_standard_moose_vars
Vector of standard coupled variables.
Definition: Coupleable.h:1331
std::vector< VectorMooseVariable * > _coupled_vector_moose_vars
Vector of vector coupled variables.
Definition: Coupleable.h:1334
bool checkVar(const std::string &var_name, unsigned int comp=0, unsigned int comp_bound=0) const
Check that the right kind of variable is being coupled in.
Definition: Coupleable.C:208
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.
const InputParameters & _c_parameters
Definition: Coupleable.h:1311
const std::unordered_map< std::string, std::string > & _new_to_deprecated_coupled_vars
map from new to deprecated variable names
Definition: Coupleable.h:1346

◆ getVariable()

const MooseVariableFieldBase& ResidualObject::getVariable ( unsigned int  jvar_num) const
inlineprotectedinherited

Retrieve the variable object from our system associated with jvar_num.

Definition at line 119 of file ResidualObject.h.

Referenced by LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), VectorKernel::computeOffDiagJacobian(), ADDGKernel::computeOffDiagJacobian(), Kernel::computeOffDiagJacobian(), ArrayKernel::computeOffDiagJacobian(), EigenKernel::computeOffDiagJacobian(), IntegratedBC::computeOffDiagJacobian(), VectorIntegratedBC::computeOffDiagJacobian(), ArrayNodalBC::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), NonlocalKernel::computeOffDiagJacobian(), NonlocalIntegratedBC::computeOffDiagJacobian(), KernelValue::computeOffDiagJacobian(), KernelGrad::computeOffDiagJacobian(), ArrayDGKernel::computeOffDiagJacobian(), NodalKernel::computeOffDiagJacobian(), DGLowerDKernel::computeOffDiagJacobian(), ArrayDGLowerDKernel::computeOffDiagJacobian(), computeOffDiagJacobian(), DGKernelBase::computeOffDiagJacobian(), and KernelScalarBase::computeScalarOffDiagJacobian().

120  {
121  return _sys.getVariable(_tid, jvar_num);
122  }
THREAD_ID _tid
The thread ID for this kernel.
SystemBase & _sys
Reference to the EquationSystem object.
MooseVariableFieldBase & getVariable(THREAD_ID tid, const std::string &var_name) const
Gets a reference to a variable of with specified name.
Definition: SystemBase.C:86

◆ getVectorPostprocessorName()

const VectorPostprocessorName & VectorPostprocessorInterface::getVectorPostprocessorName ( const std::string &  param_name) const
inherited

Get the name of a VectorPostprocessor associated with a parameter.

Parameters
param_nameThe name of the VectorPostprocessor parameter
Returns
The name of the given VectorPostprocessor

Definition at line 203 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValue(), VectorPostprocessorInterface::getScatterVectorPostprocessorValueOld(), VectorPostprocessorInterface::getVectorPostprocessorValue(), VectorPostprocessorInterface::getVectorPostprocessorValueOld(), VectorPostprocessorInterface::hasVectorPostprocessor(), VectorPostprocessorInterface::isVectorPostprocessorDistributed(), and VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor().

204 {
205  const auto & params = _vpi_moose_object.parameters();
206 
207  if (!params.isParamValid(param_name))
209  "When getting a VectorPostprocessor, failed to get a parameter with the name \"",
210  param_name,
211  "\".",
212  "\n\nKnown parameters:\n",
214 
215  if (!params.isType<VectorPostprocessorName>(param_name))
217  "Supplied parameter with name \"",
218  param_name,
219  "\" of type \"",
220  params.type(param_name),
221  "\" is not an expected type for getting a VectorPostprocessor.\n\n",
222  "The allowed type is \"VectorPostprocessorName\".");
223 
224  return params.get<VectorPostprocessorName>(param_name);
225 }
const MooseObject & _vpi_moose_object
The MooseObject that uses this interface.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const InputParameters & parameters() const
Get the parameters of the object.

◆ getVectorPostprocessorValue() [1/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValue ( const std::string &  param_name,
const std::string &  vector_name 
) const
inherited

DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast.

Retrieve the value of a VectorPostprocessor

Parameters
param_nameThe name of the VectorPostprocessor parameter (see below)
vector_nameThe name of the particular vector you want.
Returns
A reference to the desired value

The name required by this method is the name that is hard-coded into your source code. For example, if you have a Kernel that requires a VectorPostprocessor you may have an input file with "pp = my_pp", this function requires the "pp" name as input (see .../moose_test/functions/VectorPostprocessorFunction.C)

see getVectorPostprocessorValueOld getVectorPostprocessorValueByName getVectorPostprocessorValueOldByName

Definition at line 36 of file VectorPostprocessorInterface.C.

38 {
39  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
40  return getVectorPostprocessorValueByName(getVectorPostprocessorName(param_name), vector_name);
41 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
const VectorPostprocessorValue & getVectorPostprocessorValueByName(const VectorPostprocessorName &name, const std::string &vector_name) const
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...

◆ getVectorPostprocessorValue() [2/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValue ( const std::string &  param_name,
const std::string &  vector_name,
bool  needs_broadcast 
) const
inherited

Retrieve the value of a VectorPostprocessor.

Parameters
param_nameThe name of the VectorPostprocessor parameter (see below)
vector_nameThe name of the particular vector you want.
need_broadcastWhether or not this object requires the vector to be replicated in parallel
Returns
A reference to the desired value

The name required by this method is the name that is hard-coded into your source code. For example, if you have a Kernel that requires a VectorPostprocessor you may have an input file with "pp = my_pp", this function requires the "pp" name as input (see .../moose_test/functions/VectorPostprocessorFunction.C)

see getVectorPostprocessorValueOld getVectorPostprocessorValueByName getVectorPostprocessorValueOldByName

Definition at line 66 of file VectorPostprocessorInterface.C.

69 {
70  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
72  getVectorPostprocessorName(param_name), vector_name, needs_broadcast);
73 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
const VectorPostprocessorValue & getVectorPostprocessorValueByName(const VectorPostprocessorName &name, const std::string &vector_name) const
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...

◆ getVectorPostprocessorValueByName() [1/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast.

Retrieve the value of the VectorPostprocessor

Parameters
nameVectorPostprocessor name (see below)
vector_nameThe name of the particular vector you want.
Returns
A reference to the desired value

The name required by this method is the name defined in the input file. For example, if you have a Kernel that requires a VectorPostprocessor you may have an input file with "pp = my_pp", this method requires the "my_pp" name as input (see .../moose_test/functions/VectorPostprocessorFunction.C)

see getVectorPostprocessorValue getVectorPostprocessorValueOldByName getVectorPostprocessorValueByName

Definition at line 44 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::getVectorPostprocessorValue().

46 {
47  return getVectorPostprocessorByNameHelper(name, vector_name, _broadcast_by_default, 0);
48 }
const VectorPostprocessorValue & getVectorPostprocessorByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name, bool broadcast, std::size_t t_index) const
Helper function for extracting VPP data from ReporterData object.
const bool _broadcast_by_default
Whether or not to force broadcasting by default.

◆ getVectorPostprocessorValueByName() [2/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name,
bool  needs_broadcast 
) const
inherited

Retrieve the value of the VectorPostprocessor.

Parameters
nameVectorPostprocessor name (see below)
vector_nameThe name of the particular vector you want.
need_broadcastWhether or not this object requires the vector to be replicated in parallel
Returns
A reference to the desired value

The name required by this method is the name defined in the input file. For example, if you have a Kernel that requires a VectorPostprocessor you may have an input file with "pp = my_pp", this method requires the "my_pp" name as input (see .../moose_test/functions/VectorPostprocessorFunction.C)

see getVectorPostprocessorValue getVectorPostprocessorValueOldByName getVectorPostprocessorValueByName

Definition at line 76 of file VectorPostprocessorInterface.C.

80 {
82  name, vector_name, needs_broadcast || _broadcast_by_default, 0);
83 }
const VectorPostprocessorValue & getVectorPostprocessorByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name, bool broadcast, std::size_t t_index) const
Helper function for extracting VPP data from ReporterData object.
const bool _broadcast_by_default
Whether or not to force broadcasting by default.

◆ getVectorPostprocessorValueOld() [1/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueOld ( const std::string &  param_name,
const std::string &  vector_name 
) const
inherited

DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast.

Retrieve the old value of a VectorPostprocessor

Parameters
param_nameThe name of the VectorPostprocessor parameter
vector_nameThe name of the particular vector you want.
Returns
The value of the VectorPostprocessor

see getVectorPostprocessorValue

Definition at line 51 of file VectorPostprocessorInterface.C.

53 {
54  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
56 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
const VectorPostprocessorValue & getVectorPostprocessorValueOldByName(const VectorPostprocessorName &name, const std::string &vector_name) const
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...

◆ getVectorPostprocessorValueOld() [2/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueOld ( const std::string &  param_name,
const std::string &  vector_name,
bool  needs_broadcast 
) const
inherited

Retrieve the old value of a VectorPostprocessor.

Parameters
param_nameThe name of the VectorPostprocessor parameter
vector_nameThe name of the particular vector you want.
need_broadcastWhether or not this object requires the vector to be replicated in parallel
Returns
The value of the VectorPostprocessor

see getVectorPostprocessorValue

Definition at line 86 of file VectorPostprocessorInterface.C.

89 {
90  possiblyCheckHasVectorPostprocessor(param_name, vector_name);
92  getVectorPostprocessorName(param_name), vector_name, needs_broadcast);
93 }
void possiblyCheckHasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Helpers for "possibly" checking if a vpp exists.
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
const VectorPostprocessorValue & getVectorPostprocessorValueOldByName(const VectorPostprocessorName &name, const std::string &vector_name) const
DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast...

◆ getVectorPostprocessorValueOldByName() [1/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueOldByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

DEPRECATED: Use the new version where you need to specify whether or not the vector must be broadcast.

Retrieve the old value of a VectorPostprocessor

Parameters
nameThe name of the VectorPostprocessor
vector_nameThe name of the particular vector you want.
Returns
The value of the VectorPostprocessor

If within the validParams for the object the addVectorPostprocessorParam was called this method will retun a reference to the default value specified in the call to the addVectorPostprocessorParam function if the postVectorPostprocessor does not exist.

see getVectorPostprocessorValueByName

Definition at line 59 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::getVectorPostprocessorValueOld().

61 {
62  return getVectorPostprocessorByNameHelper(name, vector_name, _broadcast_by_default, 1);
63 }
const VectorPostprocessorValue & getVectorPostprocessorByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name, bool broadcast, std::size_t t_index) const
Helper function for extracting VPP data from ReporterData object.
const bool _broadcast_by_default
Whether or not to force broadcasting by default.

◆ getVectorPostprocessorValueOldByName() [2/2]

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorValueOldByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name,
bool  needs_broadcast 
) const
inherited

Retrieve the old value of a VectorPostprocessor.

Parameters
nameThe name of the VectorPostprocessor
vector_nameThe name of the particular vector you want.
need_broadcastWhether or not this object requires the vector to be replicated in parallel
Returns
The value of the VectorPostprocessor

If within the validParams for the object the addVectorPostprocessorParam was called this method will retun a reference to the default value specified in the call to the addVectorPostprocessorParam function if the postVectorPostprocessor does not exist.

see getVectorPostprocessorValueByName

Definition at line 96 of file VectorPostprocessorInterface.C.

100 {
102  name, vector_name, needs_broadcast || _broadcast_by_default, 1);
103 }
const VectorPostprocessorValue & getVectorPostprocessorByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name, bool broadcast, std::size_t t_index) const
Helper function for extracting VPP data from ReporterData object.
const bool _broadcast_by_default
Whether or not to force broadcasting by default.

◆ getVectorTags()

const std::set<TagID>& TaggingInterface::getVectorTags ( VectorTagsKey  ) const
inlineinherited

Definition at line 95 of file TaggingInterface.h.

95 { return _vector_tags; }
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.

◆ getVectorVar() [1/2]

VectorMooseVariable * Coupleable::getVectorVar ( const std::string &  var_name,
unsigned int  comp 
)
protectedinherited

Extract pointer to a coupled vector variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 293 of file Coupleable.C.

Referenced by Coupleable::adCoupledVectorDot(), Coupleable::adCoupledVectorGradient(), Coupleable::adCoupledVectorValue(), Coupleable::coupledCurl(), Coupleable::coupledCurlOld(), Coupleable::coupledCurlOlder(), Coupleable::coupledVectorDot(), Coupleable::coupledVectorDotDot(), Coupleable::coupledVectorDotDotDu(), Coupleable::coupledVectorDotDotOld(), Coupleable::coupledVectorDotDu(), Coupleable::coupledVectorDotOld(), Coupleable::coupledVectorGradient(), Coupleable::coupledVectorGradientOld(), Coupleable::coupledVectorGradientOlder(), NeighborCoupleable::coupledVectorNeighborGradient(), NeighborCoupleable::coupledVectorNeighborGradientOld(), NeighborCoupleable::coupledVectorNeighborGradientOlder(), Coupleable::coupledVectorValue(), Coupleable::coupledVectorValueOld(), and Coupleable::coupledVectorValueOlder().

294 {
295  auto * const var =
296  const_cast<VectorMooseVariable *>(getVarHelper<VectorMooseVariable>(var_name, comp));
297 
298  if (_c_nodal && var && var->feType().family != LAGRANGE_VEC)
299  mooseError(_c_name, ": Only LAGRANGE_VEC vector variables are defined at nodes");
300 
301  return var;
302 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
LAGRANGE_VEC
Class for stuff related to variables.
Definition: Adaptivity.h:31
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314

◆ getVectorVar() [2/2]

const VectorMooseVariable * Coupleable::getVectorVar ( const std::string &  var_name,
unsigned int  comp 
) const
protectedinherited

Extract pointer to a coupled vector variable.

Parameters
var_nameName of parameter desired
compComponent number of multiple coupled variables
Returns
Pointer to the desired variable

Definition at line 317 of file Coupleable.C.

318 {
319  const auto * const var = getVarHelper<VectorMooseVariable>(var_name, comp);
320 
321  if (_c_nodal && var && var->feType().family != LAGRANGE_VEC)
322  mooseError(_c_name, ": Only LAGRANGE_VEC vector variables are defined at nodes");
323 
324  return var;
325 }
bool _c_nodal
True if we provide coupling to nodal values.
Definition: Coupleable.h:1349
LAGRANGE_VEC
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314

◆ getWritableCoupledVariables()

auto& Coupleable::getWritableCoupledVariables ( ) const
inlineinherited

returns a reference to the set of writable coupled variables

Definition at line 123 of file Coupleable.h.

Referenced by Coupleable::hasWritableCoupledVariables().

THREAD_ID _c_tid
Thread ID of the thread using this object.
Definition: Coupleable.h:1358
std::vector< std::set< MooseWritableVariable * > > _writable_coupled_variables
keep a set of allocated writable variable references to make sure only one object can obtain them per...
Definition: Coupleable.h:1718

◆ gradient()

const OutputTools< Real >::VariableGradient & MooseVariableInterface< Real >::gradient ( )
protectedvirtualinherited

The gradient of the variable this object is operating on.

This is computed by default and should already be available as _grad_u

Returns
The reference to be stored off and used later.

Definition at line 248 of file MooseVariableInterface.C.

Referenced by DiffusionFluxAux::computeValue().

249 {
250  if (_nodal)
251  mooseError("gradients are not defined at nodes");
252 
253  return _variable->gradSln();
254 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const FieldVariableGradient & gradSln() const override
element gradients
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable

◆ gradientOld()

const OutputTools< Real >::VariableGradient & MooseVariableInterface< Real >::gradientOld ( )
protectedvirtualinherited

The old gradient of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 258 of file MooseVariableInterface.C.

259 {
260  if (_nodal)
261  mooseError("gradients are not defined at nodes");
262 
263  return _variable->gradSlnOld();
264 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable
const FieldVariableGradient & gradSlnOld() const override

◆ gradientOlder()

const OutputTools< Real >::VariableGradient & MooseVariableInterface< Real >::gradientOlder ( )
protectedvirtualinherited

The older gradient of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 268 of file MooseVariableInterface.C.

269 {
270  if (_nodal)
271  mooseError("gradients are not defined at nodes");
272 
273  return _variable->gradSlnOlder();
274 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable
const FieldVariableGradient & gradSlnOlder() const

◆ hasFunction()

bool FunctionInterface::hasFunction ( const std::string &  param_name) const
inherited

Determine if the function exists.

Parameters
param_nameThe name of the function parameter
indexThe index of the function
Returns
True if the function exists

Definition at line 42 of file FunctionInterface.C.

43 {
44  return hasFunctionByName(_fni_params.get<FunctionName>(param_name));
45 }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
bool hasFunctionByName(const FunctionName &name) const
Determine if the function exists.
const InputParameters & _fni_params
Parameters of the object with this interface.

◆ hasFunctionByName()

bool FunctionInterface::hasFunctionByName ( const FunctionName &  name) const
inherited

Determine if the function exists.

Parameters
nameThe name of the function
Returns
True if the function exists

Definition at line 48 of file FunctionInterface.C.

Referenced by FunctionInterface::hasFunction().

49 {
50  return _fni_feproblem.hasFunction(name, _fni_tid);
51 }
const THREAD_ID _fni_tid
Thread ID.
FEProblemBase & _fni_feproblem
Reference to FEProblemBase instance.
virtual bool hasFunction(const std::string &name, const THREAD_ID tid=0)

◆ hasPostprocessor()

bool PostprocessorInterface::hasPostprocessor ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Determine if the Postprocessor data exists.

Parameters
param_nameThe name of the Postprocessor parameter
indexThe index of the Postprocessor
Returns
True if the Postprocessor exists
See also
hasPostprocessorByName getPostprocessorValue

Definition at line 107 of file PostprocessorInterface.C.

109 {
110  if (!postprocessorsAdded())
112  "Cannot call hasPostprocessor() until all Postprocessors have been constructed.");
113 
114  return hasPostprocessorByName(getPostprocessorNameInternal(param_name, index));
115 }
const PostprocessorName & getPostprocessorNameInternal(const std::string &param_name, const unsigned int index, const bool allow_default_value=true) const
Internal method for getting the PostprocessorName associated with a paremeter.
bool hasPostprocessorByName(const PostprocessorName &name) const
Determine if the Postprocessor data exists.
const MooseObject & _ppi_moose_object
The MooseObject that uses this interface.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ hasPostprocessorByName()

bool PostprocessorInterface::hasPostprocessorByName ( const PostprocessorName &  name) const
inherited

Determine if the Postprocessor data exists.

Parameters
nameThe name of the Postprocessor
Returns
True if the Postprocessor exists
See also
hasPostprocessor getPostprocessorValueByName

Definition at line 118 of file PostprocessorInterface.C.

Referenced by PostprocessorInterface::getPostprocessorValueByNameInternal(), PostprocessorInterface::getPostprocessorValueInternal(), PostprocessorInterface::hasPostprocessor(), AdvancedOutput::initShowHideLists(), TableOutput::outputReporters(), and Exodus::outputReporters().

119 {
120  if (!postprocessorsAdded())
122  "Cannot call hasPostprocessorByName() until all Postprocessors have been constructed.");
123 
126 }
const FEProblemBase & _ppi_feproblem
Reference the the FEProblemBase class.
const ReporterData & getReporterData() const
Provides const access the ReporterData object.
Real PostprocessorValue
various MOOSE typedefs
Definition: MooseTypes.h:191
const MooseObject & _ppi_moose_object
The MooseObject that uses this interface.
A ReporterName that represents a Postprocessor.
Definition: ReporterName.h:134
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
bool hasReporterValue(const ReporterName &reporter_name) const
Return True if a Reporter value with the given type and name have been created.
Definition: ReporterData.h:436

◆ hasUserObject() [1/2]

bool UserObjectInterface::hasUserObject ( const std::string &  param_name) const
inherited
Returns
Whether or not a UserObject exists with the name given by the parameter param_name.

Definition at line 67 of file UserObjectInterface.C.

68 {
69  return hasUserObjectByName(getUserObjectName(param_name));
70 }
UserObjectName getUserObjectName(const std::string &param_name) const
bool hasUserObjectByName(const UserObjectName &object_name) const

◆ hasUserObject() [2/2]

template<class T >
bool UserObjectInterface::hasUserObject ( const std::string &  param_name) const
inherited

Definition at line 175 of file UserObjectInterface.h.

176 {
177  return hasUserObjectByName<T>(getUserObjectName(param_name));
178 }
UserObjectName getUserObjectName(const std::string &param_name) const

◆ hasUserObjectByName() [1/2]

bool UserObjectInterface::hasUserObjectByName ( const UserObjectName &  object_name) const
inherited

Definition at line 73 of file UserObjectInterface.C.

Referenced by UserObjectInterface::getUserObjectBase(), UserObjectInterface::getUserObjectBaseByName(), UserObjectInterface::hasUserObject(), and UserObjectInterface::hasUserObjectByName().

74 {
75  return _uoi_feproblem.hasUserObject(object_name);
76 }
bool hasUserObject(const std::string &name) const
Check if there if a user object of given name.
const FEProblemBase & _uoi_feproblem
Reference to the FEProblemBase instance.

◆ hasUserObjectByName() [2/2]

template<class T >
bool UserObjectInterface::hasUserObjectByName ( const UserObjectName &  object_name) const
inherited

Definition at line 182 of file UserObjectInterface.h.

183 {
184  if (!hasUserObjectByName(object_name))
185  return false;
186  return dynamic_cast<const T *>(&_uoi_feproblem.getUserObjectBase(object_name));
187 }
const FEProblemBase & _uoi_feproblem
Reference to the FEProblemBase instance.
const UserObject & getUserObjectBase(const std::string &name, const THREAD_ID tid=0) const
Get the user object by its name.
bool hasUserObjectByName(const UserObjectName &object_name) const

◆ hasVectorPostprocessor() [1/2]

bool VectorPostprocessorInterface::hasVectorPostprocessor ( const std::string &  param_name,
const std::string &  vector_name 
) const
inherited

Determine if the VectorPostprocessor data exists by parameter.

Parameters
param_nameThe name of the VectorPostprocessor parameter
vector_nameThe vector name within the VectorPostprocessor
Returns
True if the VectorPostprocessor data exists
See also
hasVectorPostprocessorByName getVectorPostprocessorValue

Definition at line 138 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor().

140 {
142  _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessor() until all VectorPostprocessors "
143  "have been constructed.");
144 
145  return hasVectorPostprocessorByName(getVectorPostprocessorName(param_name), vector_name);
146 }
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
bool hasVectorPostprocessorByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Determine if the VectorPostprocessor data exists by name.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.

◆ hasVectorPostprocessor() [2/2]

bool VectorPostprocessorInterface::hasVectorPostprocessor ( const std::string &  param_name) const
inherited

Determine if the VectorPostprocessor exists by parameter.

Parameters
nameThe name of the VectorPostprocessor parameter
Returns
True if the VectorPostprocessor exists

Definition at line 168 of file VectorPostprocessorInterface.C.

169 {
171  _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessor() until all "
172  "VectorPostprocessors have been constructed.");
173 
175 }
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
bool hasVectorPostprocessorByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Determine if the VectorPostprocessor data exists by name.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.

◆ hasVectorPostprocessorByName() [1/2]

bool VectorPostprocessorInterface::hasVectorPostprocessorByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

Determine if the VectorPostprocessor data exists by name.

Parameters
nameThe name of the VectorPostprocessor
vector_nameThe vector name within the VectorPostprocessor
Returns
True if the VectorPostprocessor data exists
See also
hasVectorPostprocessor getVectorPostprocessorValueByName

Definition at line 149 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::hasVectorPostprocessor(), AdvancedOutput::initShowHideLists(), CSV::output(), and VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessorByName().

151 {
153  _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessorByName() until all "
154  "VectorPostprocessors have been constructed.");
155 
157  VectorPostprocessorReporterName(name, vector_name));
158 
159  if (has_vpp)
160  mooseAssert(_vpi_feproblem.hasUserObject(name) && dynamic_cast<const VectorPostprocessor *>(
162  "Has reporter VectorPostprocessor Reporter value but not VectorPostprocessor UO");
163 
164  return has_vpp;
165 }
bool hasUserObject(const std::string &name) const
Check if there if a user object of given name.
A ReporterName that represents a VectorPostprocessor.
Definition: ReporterName.h:143
const ReporterData & getReporterData() const
Provides const access the ReporterData object.
std::vector< Real > VectorPostprocessorValue
Definition: MooseTypes.h:192
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
bool hasReporterValue(const ReporterName &reporter_name) const
Return True if a Reporter value with the given type and name have been created.
Definition: ReporterData.h:436
const UserObject & getUserObjectBase(const std::string &name, const THREAD_ID tid=0) const
Get the user object by its name.
Base class for Postprocessors that produce a vector of values.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.

◆ hasVectorPostprocessorByName() [2/2]

bool VectorPostprocessorInterface::hasVectorPostprocessorByName ( const VectorPostprocessorName &  name) const
inherited

Determine if the VectorPostprocessor exists by name.

Parameters
nameThe name of the VectorPostprocessor
Returns
True if the VectorPostprocessor exists

Definition at line 178 of file VectorPostprocessorInterface.C.

180 {
182  _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessorByName() until all "
183  "VectorPostprocessors have been constructed.");
184 
185  return _vpi_feproblem.hasUserObject(name) &&
186  dynamic_cast<const VectorPostprocessor *>(&_vpi_feproblem.getUserObjectBase(name));
187 }
bool hasUserObject(const std::string &name) const
Check if there if a user object of given name.
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
const UserObject & getUserObjectBase(const std::string &name, const THREAD_ID tid=0) const
Get the user object by its name.
Base class for Postprocessors that produce a vector of values.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.

◆ hasVectorTags()

bool TaggingInterface::hasVectorTags ( ) const
inlineinherited

Definition at line 93 of file TaggingInterface.h.

Referenced by Kernel::computeResidual().

93 { return !_vector_tags.empty(); }
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.

◆ hasWritableCoupledVariables()

bool Coupleable::hasWritableCoupledVariables ( ) const
inlineinherited

Checks whether the object has any writable coupled variables.

Definition at line 128 of file Coupleable.h.

128 { return !getWritableCoupledVariables().empty(); }
auto & getWritableCoupledVariables() const
returns a reference to the set of writable coupled variables
Definition: Coupleable.h:123

◆ initialSetup()

void SetupInterface::initialSetup ( )
virtualinherited

Gets called at the beginning of the simulation before this object is asked to do its job.

Reimplemented in SolutionUserObject, AdvancedOutput, MooseVariableBase, MultiApp, MooseLinearVariableFV< OutputType >, MooseLinearVariableFV< ComputeValueType >, MooseLinearVariableFV< T >, MooseLinearVariableFV< RealEigenVector >, MooseLinearVariableFV< RealVectorValue >, MooseLinearVariableFV< Real >, MooseParsedFunction, MooseParsedGradFunction, DerivativeFunctionMaterialBaseTempl< is_ad >, Transfer, ProjectedStatefulMaterialNodalPatchRecoveryTempl< T, is_ad >, CSV, Exodus, OversampleOutput, Terminator, MultiAppGeneralFieldTransfer, Axisymmetric2D3DSolutionFunction, LibtorchControlValuePostprocessor, MultiAppTransfer, Nemesis, RadialAverage, MooseParsedVectorFunction, ImageFunction, Console, PiecewiseConstantFromCSV, NodalVariableValue, MortarNodalAuxKernelTempl< ComputeValueType >, LibtorchArtificialNeuralNetParameters, TimePeriod, MatDiffusionBase< T >, TransientMultiApp, ElementalVariableValue, GhostingUserObject, InterfaceQpUserObjectBase, MatDiffusionBase< Real >, SolutionAux, MultiAppProjectionTransfer, HistogramVectorPostprocessor, SolutionScalarAux, LinearFVAdvection, LinearFVDiffusion, MultiAppDofCopyTransfer, MultiAppGeneralFieldNearestLocationTransfer, CoarsenedPiecewiseLinear, PiecewiseTabularBase, MatReaction, SideIntegralMaterialPropertyTempl< is_ad >, SideIntegralPostprocessor, MultiAppVariableValueSamplePostprocessorTransfer, NodalPatchRecoveryMaterialProperty, ProjectedStatefulMaterialAuxTempl< T, is_ad >, PiecewiseLinear, FullSolveMultiApp, MultiAppFieldTransfer, MultiAppVariableValueSampleTransfer, PiecewiseLinearBase, MultiAppConservativeTransfer, MultiAppCloneReporterTransfer, MultiAppReporterTransfer, ElementSubdomainModifier, and DerivativeSumMaterialTempl< is_ad >.

Definition at line 40 of file SetupInterface.C.

Referenced by SideIntegralPostprocessor::initialSetup(), ElementalVariableValue::initialSetup(), LibtorchControlValuePostprocessor::initialSetup(), and Positions::meshChanged().

41 {
42 }

◆ isCoupled()

bool Coupleable::isCoupled ( const std::string &  var_name,
unsigned int  i = 0 
) const
protectedvirtualinherited

Returns true if a variables has been coupled as name.

Parameters
var_nameThe name the kernel wants to refer to the variable as.
iBy default 0, in general the index to test in a vector of MooseVariable pointers.
Returns
True if a coupled variable has the supplied name

Definition at line 128 of file Coupleable.C.

Referenced by Coupleable::adCoupledNodalValue(), Coupleable::checkVar(), Coupleable::coupledComponents(), and MatDiffusionBase< Real >::MatDiffusionBase().

129 {
130  const auto var_name = _c_parameters.checkForRename(var_name_in);
131 
132  auto it = _coupled_vars.find(var_name);
133  if (it != _coupled_vars.end())
134  return (i < it->second.size());
135  else
136  {
137  // Make sure the user originally requested this value in the InputParameter syntax
138  if (!_c_parameters.hasCoupledValue(var_name))
140  ": The coupled variable \"",
141  var_name,
142  "\" was never added to this object's "
143  "InputParameters, please double-check your "
144  "spelling");
145 
146  return false;
147  }
148 }
bool hasCoupledValue(const std::string &coupling_name) const
Return whether or not the coupled variable exists.
std::unordered_map< std::string, std::vector< MooseVariableFieldBase * > > _coupled_vars
Coupled vars whose values we provide.
Definition: Coupleable.h:1325
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.
const InputParameters & _c_parameters
Definition: Coupleable.h:1311

◆ isCoupledConstant()

bool Coupleable::isCoupledConstant ( const std::string &  var_name) const
protectedvirtualinherited

Returns true if a variable passed as a coupled value is really a constant.

Parameters
var_nameThe name the kernel wants to refer to the variable as.
Returns
True if the variable is actually a constant

Definition at line 151 of file Coupleable.C.

Referenced by Coupleable::coupledName(), and DerivativeFunctionMaterialBaseTempl< is_ad >::DerivativeFunctionMaterialBaseTempl().

152 {
153  return _c_parameters.hasDefaultCoupledValue(var_name);
154 }
bool hasDefaultCoupledValue(const std::string &coupling_name) const
Return whether or not the requested parameter has a default coupled value.
const InputParameters & _c_parameters
Definition: Coupleable.h:1311

◆ isCoupledScalar()

bool ScalarCoupleable::isCoupledScalar ( const std::string &  var_name,
unsigned int  i = 0 
) const
protectedinherited

Returns true if a variables has been coupled_as name.

Parameters
var_nameThe of the coupled variable
iBy default 0, in general the index to test in a vector of MooseVariable pointers.

Definition at line 70 of file ScalarCoupleable.C.

Referenced by ScalarCoupleable::adCoupledScalarValue(), ScalarCoupleable::coupledMatrixTagScalarValue(), ScalarCoupleable::coupledScalarOrder(), ScalarCoupleable::coupledScalarValue(), ScalarCoupleable::coupledScalarValueOld(), ScalarCoupleable::coupledScalarValueOlder(), and ScalarCoupleable::coupledVectorTagScalarValue().

71 {
72  const auto var_name = _sc_parameters.checkForRename(var_name_in);
73 
74  auto it = _coupled_scalar_vars.find(var_name);
75  if (it != _coupled_scalar_vars.end())
76  return (i < it->second.size());
77  else
78  {
79  // Make sure the user originally requested this value in the InputParameter syntax
80  if (!_sc_parameters.hasCoupledValue(var_name))
82  ": The coupled scalar variable \"",
83  var_name,
84  "\" was never added to this object's "
85  "InputParameters, please double-check "
86  "your spelling");
87 
88  return false;
89  }
90 }
bool hasCoupledValue(const std::string &coupling_name) const
Return whether or not the coupled variable exists.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const std::string & _sc_name
The name of the object this interface is part of.
std::unordered_map< std::string, std::vector< MooseVariableScalar * > > _coupled_scalar_vars
Coupled vars whose values we provide.
const InputParameters & _sc_parameters
std::string checkForRename(const std::string &name) const
Checks whether the provided name is a renamed parameter name.

◆ isDefaultPostprocessorValue()

bool PostprocessorInterface::isDefaultPostprocessorValue ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Determine whether or not the Postprocessor is a default value.

A default value is when the value is either the value set by addParam, or is a user-set value in input instead of a name to a postprocessor.

Parameters
param_nameThe name of the Postprocessor parameter
indexThe index of the postprocessor
Returns
True if the Postprocessor is a default value, false if the Postprocessor is the name of a Postprocessor

Definition at line 75 of file PostprocessorInterface.C.

Referenced by EigenKernel::EigenKernel().

77 {
79 }
bool isDefaultPostprocessorValueByName(const PostprocessorName &name) const
const PostprocessorName & getPostprocessorNameInternal(const std::string &param_name, const unsigned int index, const bool allow_default_value=true) const
Internal method for getting the PostprocessorName associated with a paremeter.

◆ isExplicitConstraint()

virtual bool NodeFaceConstraint::isExplicitConstraint ( ) const
inlinevirtual

Whether (contact) constraint is of 'explicit dynamics' type.

Definition at line 126 of file NodeFaceConstraint.h.

126 { return false; }

◆ isImplicit()

bool TransientInterface::isImplicit ( )
inlineinherited

Definition at line 38 of file TransientInterface.h.

Referenced by ComputeJacobianThread::compute().

38 { return _is_implicit; }
bool _is_implicit
If the object is using implicit or explicit form.

◆ isMatrixTagged()

bool TaggingInterface::isMatrixTagged ( )
inlineinherited

Definition at line 91 of file TaggingInterface.h.

91 { return _matrix_tags.size() > 0; }
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.

◆ isNodal()

bool RandomInterface::isNodal ( ) const
inlineinherited

◆ isParamSetByUser()

bool MooseBaseParameterInterface::isParamSetByUser ( const std::string &  nm) const
inlineinherited

◆ isParamValid()

bool MooseBaseParameterInterface::isParamValid ( const std::string &  name) const
inlineinherited

Test if the supplied parameter is valid.

Parameters
nameThe name of the parameter to test

Definition at line 111 of file MooseBaseParameterInterface.h.

Referenced by CopyNodalVarsAction::act(), SetupMeshAction::act(), ComposeTimeStepperAction::act(), SetupDebugAction::act(), CreateDisplacedProblemAction::act(), SetAdaptivityOptionsAction::act(), CommonOutputAction::act(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), DiffusionCG::addFEBCs(), DiffusionCG::addFEKernels(), DiffusionFV::addFVBCs(), DiffusionFV::addFVKernels(), DiffusionCG::addNonlinearVariables(), AdvectiveFluxAux::AdvectiveFluxAux(), ArrayHFEMDirichletBC::ArrayHFEMDirichletBC(), AddPeriodicBCAction::autoTranslationBoundaries(), BicubicSplineFunction::BicubicSplineFunction(), BlockDeletionGenerator::BlockDeletionGenerator(), PiecewiseTabularBase::buildFromFile(), PiecewiseTabularBase::buildFromJSON(), GeneratedMesh::buildMesh(), CartesianGridDivision::CartesianGridDivision(), CartesianMeshGenerator::CartesianMeshGenerator(), PhysicsBase::checkParamsBothSetOrNotSet(), PhysicsBase::checkVectorParamsSameLength(), LibmeshPartitioner::clone(), OversampleOutput::cloneMesh(), CombinerGenerator::CombinerGenerator(), CSVReaderVectorPostprocessor::CSVReaderVectorPostprocessor(), CutMeshByPlaneGenerator::CutMeshByPlaneGenerator(), ConstantReporter::declareConstantReporterValues(), DGKernelBase::DGKernelBase(), DiffusionFluxAux::DiffusionFluxAux(), DomainUserObject::DomainUserObject(), DynamicObjectRegistrationAction::DynamicObjectRegistrationAction(), Eigenvalue::Eigenvalue(), ElementExtremeFunctorValueTempl< is_ad >::ElementExtremeFunctorValueTempl(), ElementExtremeValue::ElementExtremeValue(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), PIDTransientControl::execute(), MultiAppNearestNodeTransfer::execute(), MultiAppUserObjectTransfer::execute(), Exodus::Exodus(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), FEProblemBase::FEProblemBase(), FEProblemSolve::FEProblemSolve(), FieldSplitPreconditioner::FieldSplitPreconditioner(), FileOutput::FileOutput(), SpatialUserObjectVectorPostprocessor::fillPoints(), CombinerGenerator::fillPositions(), MultiApp::fillPositions(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), FunctionDT::FunctionDT(), FunctionValuePostprocessor::FunctionValuePostprocessor(), FVInterfaceKernel::FVInterfaceKernel(), FVMassMatrix::FVMassMatrix(), ExtraNodesetGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), SubdomainPerElementGenerator::generate(), AddMetaDataGenerator::generate(), BreakBoundaryOnSubdomainGenerator::generate(), FileMeshGenerator::generate(), ParsedSubdomainMeshGenerator::generate(), BlockDeletionGenerator::generate(), GeneratedMeshGenerator::generate(), MeshExtruderGenerator::generate(), XYDelaunayGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), DistributedRectilinearMeshGenerator::generate(), MultiAppNearestNodeTransfer::getLocalEntitiesAndComponents(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), MooseBaseParameterInterface::getRenamedParam(), MultiAppNearestNodeTransfer::getTargetLocalNodes(), Terminator::handleMessage(), HFEMDirichletBC::HFEMDirichletBC(), EigenExecutionerBase::init(), IterationAdaptiveDT::init(), Eigenvalue::init(), AdvancedOutput::initExecutionTypes(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), MultiAppCloneReporterTransfer::initialSetup(), MultiAppVariableValueSampleTransfer::initialSetup(), PiecewiseTabularBase::initialSetup(), SolutionScalarAux::initialSetup(), SolutionAux::initialSetup(), Console::initialSetup(), MooseParsedVectorFunction::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), MooseParsedGradFunction::initialSetup(), MooseParsedFunction::initialSetup(), IterationAdaptiveDT::IterationAdaptiveDT(), LeastSquaresFit::LeastSquaresFit(), LibmeshPartitioner::LibmeshPartitioner(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), MassMatrix::MassMatrix(), MatCoupledForce::MatCoupledForce(), MatDiffusionBase< Real >::MatDiffusionBase(), MooseMesh::MooseMesh(), MoosePreconditioner::MoosePreconditioner(), MooseVariableBase::MooseVariableBase(), MooseVariableFV< Real >::MooseVariableFV(), MortarConstraintBase::MortarConstraintBase(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppCloneReporterTransfer::MultiAppCloneReporterTransfer(), MultiAppGeneralFieldNearestLocationTransfer::MultiAppGeneralFieldNearestLocationTransfer(), MultiAppGeneralFieldShapeEvaluationTransfer::MultiAppGeneralFieldShapeEvaluationTransfer(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppPostprocessorInterpolationTransfer::MultiAppPostprocessorInterpolationTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppReporterTransfer::MultiAppReporterTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSampleTransfer::MultiAppVariableValueSampleTransfer(), NodalExtremeValue::NodalExtremeValue(), EigenExecutionerBase::normalizeSolution(), Output::Output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), ParsedCurveGenerator::ParsedCurveGenerator(), PetscOutput::PetscOutput(), PhysicsBasedPreconditioner::PhysicsBasedPreconditioner(), PicardSolve::PicardSolve(), PIDTransientControl::PIDTransientControl(), PiecewiseTabularBase::PiecewiseTabularBase(), PlaneIDMeshGenerator::PlaneIDMeshGenerator(), MooseMesh::prepare(), MultiApp::readCommandLineArguments(), SolutionUserObject::readExodusII(), RenameBlockGenerator::RenameBlockGenerator(), RenameBoundaryGenerator::RenameBoundaryGenerator(), ReporterPointSource::ReporterPointSource(), MooseMesh::setCoordSystem(), FileOutput::setFileBase(), FileOutput::setFileBaseInternal(), Split::setup(), SideSetsGeneratorBase::setup(), SetupMeshAction::setupMesh(), SideDiffusiveFluxIntegralTempl< is_ad, Real >::SideDiffusiveFluxIntegralTempl(), SideExtremeValue::SideExtremeValue(), SideSetsGeneratorBase::SideSetsGeneratorBase(), SolutionUserObject::SolutionUserObject(), Terminator::Terminator(), TimeIntervalTimes::TimeIntervalTimes(), TimePeriod::TimePeriod(), MultiAppDofCopyTransfer::transfer(), TransformGenerator::TransformGenerator(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), and VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl().

111 { return _pars.isParamValid(name); }
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another, i.e.

◆ isVectorPostprocessorDistributed()

bool VectorPostprocessorInterface::isVectorPostprocessorDistributed ( const std::string &  param_name) const
inherited

Return true if the VectorPostprocessor is marked with parallel_type as DISTRIBUTED.

Definition at line 190 of file VectorPostprocessorInterface.C.

191 {
193 }
const VectorPostprocessorName & getVectorPostprocessorName(const std::string &param_name) const
Get the name of a VectorPostprocessor associated with a parameter.
bool isVectorPostprocessorDistributedByName(const VectorPostprocessorName &name) const

◆ isVectorPostprocessorDistributedByName()

bool VectorPostprocessorInterface::isVectorPostprocessorDistributedByName ( const VectorPostprocessorName &  name) const
inherited

Definition at line 196 of file VectorPostprocessorInterface.C.

Referenced by VectorPostprocessorInterface::isVectorPostprocessorDistributed().

198 {
200 }
const VectorPostprocessor & getVectorPostprocessorObjectByName(const std::string &object_name, const THREAD_ID tid=0) const
Return the VPP object given the name.
bool isDistributed() const
Return true if the VPP is operating in distributed mode.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.

◆ isVectorTagged()

bool TaggingInterface::isVectorTagged ( )
inlineinherited

Definition at line 89 of file TaggingInterface.h.

89 { return _vector_tags.size() > 0; }
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.

◆ jacobianSetup()

void SetupInterface::jacobianSetup ( )
virtualinherited

◆ meshChanged()

virtual void MeshChangedInterface::meshChanged ( )
inlinevirtualinherited

◆ mooseDeprecated()

template<typename... Args>
void MooseBaseErrorInterface::mooseDeprecated ( Args &&...  args) const
inlineinherited

Definition at line 91 of file MooseBaseErrorInterface.h.

Referenced by FEProblemBase::addAuxArrayVariable(), FEProblemBase::addAuxScalarVariable(), FEProblemBase::addAuxVariable(), FEProblemBase::advanceMultiApps(), MultiApp::appProblem(), Executioner::augmentedPicardConvergenceCheck(), MooseMesh::buildSideList(), ChangeOverTimestepPostprocessor::ChangeOverTimestepPostprocessor(), FEProblemBase::computeResidual(), AddVariableAction::determineType(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), MooseMesh::elem(), UserForcingFunction::f(), FaceFaceConstraint::FaceFaceConstraint(), FunctionDT::FunctionDT(), RandomICBase::generateRandom(), MooseMesh::getBoundariesToElems(), Control::getExecuteOptions(), FEProblemBase::getNonlinearSystem(), FEProblemBase::getUserObjects(), FEProblemBase::hasPostprocessor(), MatDiffusionBase< Real >::MatDiffusionBase(), MultiAppNearestNodeTransfer::MultiAppNearestNodeTransfer(), MultiAppShapeEvaluationTransfer::MultiAppShapeEvaluationTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), NodalScalarKernel::NodalScalarKernel(), MooseMesh::node(), FixedPointSolve::numPicardIts(), RelationshipManager::operator>=(), PercentChangePostprocessor::PercentChangePostprocessor(), Executioner::picardSolve(), ReferenceResidualProblem::ReferenceResidualProblem(), MooseMesh::setBoundaryToNormalMap(), Exodus::setOutputDimension(), and UserForcingFunction::UserForcingFunction().

92  {
93  moose::internal::mooseDeprecatedStream(_console, false, true, std::forward<Args>(args)...);
94  }
void mooseDeprecatedStream(S &oss, const bool expired, const bool print_title, Args &&... args)
Definition: MooseError.h:236
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ mooseDocumentedError()

template<typename... Args>
void MooseBaseErrorInterface::mooseDocumentedError ( const std::string &  repo_name,
const unsigned int  issue_num,
Args &&...  args 
) const
inlineinherited

Emits a documented error with object name and type.

Documented errors are errors that have an issue associated with them.

The repository name repo_name links a named repository to a URL and should be registered at the application level with registerRepository(). See Moose.C for an example of the "moose" repository registration.

Parameters
repo_nameThe repository name where the issue resides
issue_numThe number of the issue
argsThe error message to be combined

Definition at line 61 of file MooseBaseErrorInterface.h.

64  {
65  std::ostringstream oss;
66  moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
67  const auto msg = moose::internal::formatMooseDocumentedError(repo_name, issue_num, oss.str());
68  _moose_base.callMooseError(msg, /* with_prefix = */ true);
69  }
void mooseStreamAll(std::ostringstream &ss)
All of the following are not meant to be called directly - they are called by the normal macros (moos...
Definition: MooseError.C:92
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33
std::string formatMooseDocumentedError(const std::string &repo_name, const unsigned int issue_num, const std::string &msg)
Formats a documented error.
Definition: MooseError.C:97

◆ mooseError()

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

Emits an error prefixed with object name and type.

Definition at line 29 of file MooseBaseErrorInterface.h.

Referenced by HierarchicalGridPartitioner::_do_partition(), PetscExternalPartitioner::_do_partition(), MultiAppGeneralFieldTransfer::acceptPointInOriginMesh(), InitProblemAction::act(), AutoCheckpointAction::act(), AddMeshGeneratorAction::act(), CheckFVBCAction::act(), AddBoundsVectorsAction::act(), AddICAction::act(), SetupMeshCompleteAction::act(), CreateExecutionerAction::act(), AddFVICAction::act(), AddVectorPostprocessorAction::act(), CheckIntegrityAction::act(), CreateProblemDefaultAction::act(), CreateProblemAction::act(), SetupMeshAction::act(), SplitMeshAction::act(), AdaptivityAction::act(), DeprecatedBlockAction::act(), SetupTimeStepperAction::act(), SetupPredictorAction::act(), AddTimeStepperAction::act(), MaterialDerivativeTestAction::act(), SetAdaptivityOptionsAction::act(), CreateDisplacedProblemAction::act(), AddPeriodicBCAction::act(), MaterialOutputAction::act(), CommonOutputAction::act(), Action::Action(), FEProblemBase::adaptMesh(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), FEProblemBase::addBoundaryCondition(), FEProblemBase::addConstraint(), FEProblemBase::addDamper(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), DistributedRectilinearMeshGenerator::addElement(), FEProblemBase::addFunction(), SubProblem::addFunctor(), FEProblemBase::addFVInitialCondition(), ADDGKernel::ADDGKernel(), FEProblemBase::addInitialCondition(), FEProblemBase::addInterfaceKernel(), FEProblemBase::addKernel(), FEProblem::addLineSearch(), FEProblemBase::addLineSearch(), MeshGenerator::addMeshSubgenerator(), FEProblemBase::addOutput(), SubProblem::addPiecewiseByBlockLambdaFunctor(), DiracKernelBase::addPoint(), DistributedRectilinearMeshGenerator::addPoint(), DiracKernelBase::addPointWithValidId(), FEProblemBase::addPostprocessor(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), MooseMesh::addQuadratureNode(), Action::addRelationshipManager(), FEProblemBase::addReporter(), FEProblemBase::addScalarKernel(), AddVariableAction::addVariable(), FEProblemBase::addVectorPostprocessor(), SubProblem::addVectorTag(), MooseLinearVariableFV< Real >::adError(), ADInterfaceKernelTempl< T >::ADInterfaceKernelTempl(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), MooseVariableScalar::adUDot(), Output::advancedExecuteOn(), AdvectiveFluxAux::AdvectiveFluxAux(), MooseVariableBase::allDofIndices(), MultiApp::appPostprocessorValue(), MultiApp::appProblem(), MultiApp::appProblemBase(), MultiApp::appUserObjectBase(), ArrayConstantIC::ArrayConstantIC(), ArrayDGKernel::ArrayDGKernel(), ArrayDiffusion::ArrayDiffusion(), ArrayFunctionIC::ArrayFunctionIC(), ArrayParsedAux::ArrayParsedAux(), ArrayReaction::ArrayReaction(), ArrayTimeDerivative::ArrayTimeDerivative(), AddPeriodicBCAction::autoTranslationBoundaries(), AuxKernelTempl< Real >::AuxKernelTempl(), Function::average(), Axisymmetric2D3DSolutionFunction::Axisymmetric2D3DSolutionFunction(), BicubicSplineFunction::BicubicSplineFunction(), BlockDeletionGenerator::BlockDeletionGenerator(), BoundingValueElementDamper::BoundingValueElementDamper(), BoundingValueNodalDamper::BoundingValueNodalDamper(), BreakMeshByBlockGeneratorBase::BreakMeshByBlockGeneratorBase(), MooseMesh::buildCoarseningMap(), MultiApp::buildComm(), DistributedRectilinearMeshGenerator::buildCube(), PiecewiseTabularBase::buildFromFile(), PiecewiseTabularBase::buildFromJSON(), PiecewiseTabularBase::buildFromXY(), PiecewiseLinearBase::buildInterpolation(), MooseMesh::buildLowerDMesh(), TiledMesh::buildMesh(), GeneratedMesh::buildMesh(), SpiralAnnularMesh::buildMesh(), MeshGeneratorMesh::buildMesh(), ImageMeshGenerator::buildMesh3D(), ImageMesh::buildMesh3D(), MooseMesh::buildRefinementMap(), MaterialBase::buildRequiredMaterials(), MooseMesh::buildSideList(), MooseMesh::buildTypedMesh(), MooseMesh::cacheFaceInfoVariableOwnership(), CartesianGridDivision::CartesianGridDivision(), CartesianMeshGenerator::CartesianMeshGenerator(), UserObjectInterface::castUserObject(), ChangeOverFixedPointPostprocessor::ChangeOverFixedPointPostprocessor(), ChangeOverTimePostprocessor::ChangeOverTimePostprocessor(), EigenExecutionerBase::chebyshev(), SubProblem::checkBlockMatProps(), SubProblem::checkBoundaryMatProps(), MooseMesh::checkCoordinateSystems(), FEProblemBase::checkDependMaterialsHelper(), FEProblemBase::checkDisplacementOrders(), FEProblemBase::checkDuplicatePostprocessorVariableNames(), MooseMesh::checkDuplicateSubdomainNames(), FEProblemBase::checkExceptionAndStopSolve(), MaterialBase::checkExecutionStage(), MeshGenerator::checkGetMesh(), ReporterTransferInterface::checkHasReporterValue(), FEProblemBase::checkICRestartError(), Steady::checkIntegrity(), EigenExecutionerBase::checkIntegrity(), Eigenvalue::checkIntegrity(), ExplicitTimeIntegrator::checkLinearConvergence(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), PostprocessorInterface::checkParam(), FEProblemBase::checkProblemIntegrity(), Sampler::checkReinitStatus(), MultiAppPostprocessorToAuxScalarTransfer::checkSiblingsTransferSupported(), MultiAppScalarToAuxScalarTransfer::checkSiblingsTransferSupported(), MultiAppPostprocessorTransfer::checkSiblingsTransferSupported(), MultiAppReporterTransfer::checkSiblingsTransferSupported(), MultiAppCopyTransfer::checkSiblingsTransferSupported(), MultiAppTransfer::checkSiblingsTransferSupported(), MaterialBase::checkStatefulSanity(), FEProblemBase::checkUserObjects(), DomainUserObject::checkVariable(), MultiAppTransfer::checkVariable(), PhysicsBase::checkVectorParamsNoOverlap(), LibmeshPartitioner::clone(), MooseMesh::clone(), CombinerGenerator::CombinerGenerator(), ComparisonPostprocessor::comparisonIsTrue(), ElementSubdomainModifier::complementMovingBoundaryID(), ElementSubdomainModifier::complementMovingBoundaryName(), MooseVariableFieldBase::componentName(), CompositeFunction::CompositeFunction(), ElementH1ErrorFunctionAux::compute(), NodalPatchRecovery::compute(), FEProblemBase::computeBounds(), VariableCondensationPreconditioner::computeDInverseDiag(), CompositionDT::computeDT(), ArrayDGKernel::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighResidual(), InternalSideIntegralPostprocessor::computeFaceInfoIntegral(), SideIntegralPostprocessor::computeFaceInfoIntegral(), MooseVariableFieldBase::computeFaceValues(), TimeSequenceStepperBase::computeFailedDT(), IterationAdaptiveDT::computeFailedDT(), TimeStepper::computeFailedDT(), MooseMesh::computeFiniteVolumeCoords(), HistogramVectorPostprocessor::computeHistogram(), ArrayKernel::computeJacobian(), ArrayIntegratedBC::computeJacobian(), FVFluxKernel::computeJacobian(), NodalConstraint::computeJacobian(), FEProblemBase::computeJacobianTags(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), EigenProblem::computeMatricesTags(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), ArrayKernel::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), FVElementalKernel::computeOffDiagJacobian(), MortarScalarBase::computeOffDiagJacobianScalar(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), MaterialBase::computeProperties(), ScalarKernel::computeQpJacobian(), CoupledTiedValueConstraint::computeQpJacobian(), TiedValueConstraint::computeQpJacobian(), NodalEqualValueConstraint::computeQpJacobian(), LinearNodalConstraint::computeQpJacobian(), EqualValueBoundaryConstraint::computeQpJacobian(), EqualValueEmbeddedConstraint::computeQpJacobian(), CoupledTiedValueConstraint::computeQpOffDiagJacobian(), EqualValueEmbeddedConstraint::computeQpOffDiagJacobian(), ScalarKernel::computeQpResidual(), NodalEqualValueConstraint::computeQpResidual(), KernelValue::computeQpResidual(), InterfaceQpValueUserObject::computeRealValue(), ArrayKernel::computeResidual(), ArrayIntegratedBC::computeResidual(), FVFluxBC::computeResidual(), FVFluxKernel::computeResidual(), NodalConstraint::computeResidual(), FVFluxKernel::computeResidualAndJacobian(), ResidualObject::computeResidualAndJacobian(), FEProblemBase::computeResidualAndJacobian(), FEProblemBase::computeResidualInternal(), FEProblemBase::computeResidualL2Norm(), FEProblemBase::computeResidualTag(), FEProblemBase::computeResidualTags(), FEProblemBase::computeResidualType(), KernelScalarBase::computeScalarOffDiagJacobian(), ADKernelScalarBase::computeScalarQpResidual(), ADMortarScalarBase::computeScalarQpResidual(), MortarScalarBase::computeScalarQpResidual(), KernelScalarBase::computeScalarQpResidual(), TimeStepper::computeStep(), ActuallyExplicitEuler::computeTimeDerivatives(), ExplicitEuler::computeTimeDerivatives(), ImplicitEuler::computeTimeDerivatives(), BDF2::computeTimeDerivatives(), NewmarkBeta::computeTimeDerivatives(), CentralDifference::computeTimeDerivatives(), CrankNicolson::computeTimeDerivatives(), LStableDirk2::computeTimeDerivatives(), LStableDirk3::computeTimeDerivatives(), ImplicitMidpoint::computeTimeDerivatives(), ExplicitTVDRK2::computeTimeDerivatives(), AStableDirk4::computeTimeDerivatives(), LStableDirk4::computeTimeDerivatives(), ExplicitRK2::computeTimeDerivatives(), MultiAppGeometricInterpolationTransfer::computeTransformation(), BuildArrayVariableAux::computeValue(), TagVectorArrayVariableAux::computeValue(), PenetrationAux::computeValue(), ConcentricCircleMesh::ConcentricCircleMesh(), ConditionalEnableControl::ConditionalEnableControl(), TimeStepper::constrainStep(), LibtorchNeuralNetControl::controlNeuralNet(), CoupledForceNodalKernel::CoupledForceNodalKernel(), MultiApp::createApp(), AddVariableAction::createInitialConditionAction(), Function::curl(), MooseVariableFV< Real >::curlPhi(), SidesetInfoVectorPostprocessor::dataHelper(), ReporterTransferInterface::declareClone(), MeshGenerator::declareMeshProperty(), ReporterTransferInterface::declareVectorClone(), FunctorRelationshipManager::delete_remote_elements(), MooseMesh::deleteRemoteElements(), BicubicSplineFunction::derivative(), DerivativeSumMaterialTempl< is_ad >::DerivativeSumMaterialTempl(), MooseMesh::detectPairedSidesets(), FEProblemBase::determineSolverSystem(), DGKernel::DGKernel(), MeshDiagnosticsGenerator::diagnosticsLog(), DistributedPositions::DistributedPositions(), Function::div(), FunctorBinnedValuesDivision::divisionIndex(), MooseVariableFV< Real >::divPhi(), FunctorRelationshipManager::dofmap_reinit(), EigenProblem::doFreeNonlinearPowerIterations(), FEProblemBase::duplicateVariableCheck(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), Eigenvalues::Eigenvalues(), ElementalVariableValue::ElementalVariableValue(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementIntegerAux::ElementIntegerAux(), ElementQualityAux::ElementQualityAux(), ElementUOAux::ElementUOAux(), DistributedRectilinearMeshGenerator::elemId(), ProjectionAux::elemOnNodeVariableIsDefinedOn(), MooseMesh::errorIfDistributedMesh(), SideIntegralPostprocessor::errorNoFaceInfo(), SideIntegralFunctorPostprocessorTempl< is_ad >::errorNoFaceInfo(), SolutionUserObject::evalMeshFunction(), SolutionUserObject::evalMeshFunctionGradient(), SolutionUserObject::evalMultiValuedMeshFunction(), SolutionUserObject::evalMultiValuedMeshFunctionGradient(), MultiAppGeneralFieldTransfer::examineReceivedValueConflicts(), RestartableDataReporter::execute(), DiscreteElementUserObject::execute(), MultiAppPostprocessorToAuxScalarTransfer::execute(), NodalValueSampler::execute(), MultiAppScalarToAuxScalarTransfer::execute(), MultiAppPostprocessorTransfer::execute(), ElementQualityChecker::execute(), PositionsFunctorValueSampler::execute(), MultiAppPostprocessorInterpolationTransfer::execute(), GreaterThanLessThanPostprocessor::execute(), PointValue::execute(), MultiAppVariableValueSampleTransfer::execute(), MultiAppVariableValueSamplePostprocessorTransfer::execute(), FindValueOnLine::execute(), MultiAppNearestNodeTransfer::execute(), MultiAppCopyTransfer::execute(), MultiAppGeometricInterpolationTransfer::execute(), MultiAppUserObjectTransfer::execute(), InterfaceQpUserObjectBase::execute(), LeastSquaresFit::execute(), VectorPostprocessorComparison::execute(), LeastSquaresFitHistory::execute(), TimeExtremeValue::execute(), Eigenvalue::execute(), DomainUserObject::execute(), FEProblemBase::execute(), FEProblemBase::executeControls(), MultiAppVectorPostprocessorTransfer::executeFromMultiapp(), MultiAppVectorPostprocessorTransfer::executeToMultiapp(), Exodus::Exodus(), ExplicitSSPRungeKutta::ExplicitSSPRungeKutta(), MultiAppGeneralFieldTransfer::extractOutgoingPoints(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), FileOutput::FileOutput(), QuadraturePointMultiApp::fillPositions(), CentroidMultiApp::fillPositions(), MultiApp::fillPositions(), MultiAppGeometricInterpolationTransfer::fillSourceInterpolationPoints(), VerifyNodalUniqueID::finalize(), VerifyElementUniqueID::finalize(), DiscreteElementUserObject::finalize(), ElementQualityChecker::finalize(), MemoryUsage::finalize(), PointSamplerBase::finalize(), NearestPointAverage::finalize(), NearestPointIntegralVariablePostprocessor::finalize(), Transfer::find_sys(), BreakMeshByBlockGeneratorBase::findFreeBoundaryId(), FunctionDT::FunctionDT(), FunctionMaterialBase< is_ad >::FunctionMaterialBase(), FunctionScalarAux::FunctionScalarAux(), FunctionScalarIC::FunctionScalarIC(), MaterialOutputAction::functorMaterialOutputHelper(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), FVInitialConditionTempl< T >::FVInitialConditionTempl(), FVMassMatrix::FVMassMatrix(), FVMatAdvection::FVMatAdvection(), FVScalarLagrangeMultiplierInterface::FVScalarLagrangeMultiplierInterface(), GapValueAux::GapValueAux(), WorkBalance::gather(), FileMeshGenerator::generate(), ExtraNodesetGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), MoveNodeGenerator::generate(), PlaneIDMeshGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), SideSetsFromNormalsGenerator::generate(), SmoothMeshGenerator::generate(), SubdomainPerElementGenerator::generate(), TiledMeshGenerator::generate(), BlockToMeshConverterGenerator::generate(), MeshDiagnosticsGenerator::generate(), BreakMeshByBlockGenerator::generate(), CoarsenBlockGenerator::generate(), CutMeshByPlaneGenerator::generate(), FlipSidesetGenerator::generate(), GeneratedMeshGenerator::generate(), MeshRepairGenerator::generate(), SideSetsFromPointsGenerator::generate(), AllSideSetsByNormalsGenerator::generate(), CombinerGenerator::generate(), MeshCollectionGenerator::generate(), SideSetsFromBoundingBoxGenerator::generate(), StackGenerator::generate(), StitchedMeshGenerator::generate(), MeshExtruderGenerator::generate(), SpiralAnnularMeshGenerator::generate(), XYDelaunayGenerator::generate(), XYMeshLineCutter::generate(), PatternedMeshGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), DistributedRectilinearMeshGenerator::generate(), BoundingBoxNodeSetGenerator::generate(), MeshGenerator::generateData(), GeneratedMesh::GeneratedMesh(), GeneratedMeshGenerator::GeneratedMeshGenerator(), MeshGenerator::generateInternal(), CircularBoundaryCorrectionGenerator::generateRadialCorrectionFactor(), RandomICBase::generateRandom(), GenericConstantMaterialTempl< is_ad >::GenericConstantMaterialTempl(), GenericConstantVectorMaterialTempl< is_ad >::GenericConstantVectorMaterialTempl(), GenericFunctionMaterialTempl< is_ad >::GenericFunctionMaterialTempl(), GenericFunctionVectorMaterialTempl< is_ad >::GenericFunctionVectorMaterialTempl(), GenericFunctorGradientMaterialTempl< is_ad >::GenericFunctorGradientMaterialTempl(), GenericFunctorMaterialTempl< is_ad >::GenericFunctorMaterialTempl(), GenericVectorFunctorMaterialTempl< is_ad >::GenericVectorFunctorMaterialTempl(), DisplacedProblem::getActualFieldVariable(), FEProblemBase::getActualFieldVariable(), DisplacedProblem::getArrayVariable(), FEProblemBase::getArrayVariable(), MooseMesh::getAxisymmetricRadialCoord(), MooseMesh::getBlockConnectedBlocks(), VariableOldValueBounds::getBound(), MooseMesh::getBoundaryID(), MultiApp::getBoundingBox(), MooseMesh::getCoarseningMap(), MooseVariableBase::getContinuity(), Control::getControllableParameterByName(), MooseMesh::getCoordSystem(), PhysicsBase::getCoupledPhysics(), PropertyReadFile::getData(), TransfiniteMeshGenerator::getDiscreteEdge(), FEProblemBase::getDistribution(), MooseVariableBase::getDofIndices(), VariableCondensationPreconditioner::getDofToCondense(), TransfiniteMeshGenerator::getEdge(), GhostingUserObject::getElementalValue(), ElementUOProvider::getElementalValueLong(), ElementUOProvider::getElementalValueReal(), PropertyReadFile::getElementData(), MooseMesh::getElementIDIndex(), Material::getElementIDNeighbor(), Material::getElementIDNeighborByName(), MooseMesh::getElemIDMapping(), MooseMesh::getElemIDsOnBlocks(), MultiAppFieldTransfer::getEquationSystem(), MultiApp::getExecutioner(), MultiAppTransfer::getFromMultiApp(), MultiAppTransfer::getFromMultiAppInfo(), FEProblemBase::getFunction(), SubProblem::getFunctor(), MooseMesh::getGeneralAxisymmetricCoordAxis(), DistributedRectilinearMeshGenerator::getGhostNeighbors(), BatchMaterial< Tuple, Output, Input >::getIndex(), DistributedRectilinearMeshGenerator::getIndices(), SolutionUserObject::getLocalVarIndex(), Material::getMaterialByName(), FEProblemBase::getMaterialData(), SubProblem::getMatrixTagID(), AnnularMesh::getMaxInDimension(), GeneratedMesh::getMaxInDimension(), FEProblemBase::getMaxQps(), FEProblemBase::getMeshDivision(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), AnnularMesh::getMinInDimension(), GeneratedMesh::getMinInDimension(), MultiAppTransfer::getMultiApp(), DistributedRectilinearMeshGenerator::getNeighbors(), Times::getNextTime(), MooseMesh::getNodeBlockIds(), PropertyReadFile::getNodeData(), MooseMesh::getNodeList(), EigenProblem::getNonlinearEigenSystem(), FEProblemBase::getNonlinearSystem(), MooseMesh::getPairedBoundaryMapping(), ImageMeshGenerator::GetPixelInfo(), ImageMesh::GetPixelInfo(), PlaneIDMeshGenerator::getPlaneID(), Positions::getPosition(), Positions::getPositions(), FEProblemBase::getPositionsObject(), Positions::getPositionsVector2D(), Positions::getPositionsVector3D(), Positions::getPositionsVector4D(), PostprocessorInterface::getPostprocessorValueByNameInternal(), Times::getPreviousTime(), InterfaceQpUserObjectBase::getQpValue(), MooseMesh::getRefinementMap(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), FEProblemBase::getSampler(), JSONFileReader::getScalar(), DisplacedProblem::getScalarVariable(), FEProblemBase::getScalarVariable(), InterfaceQpUserObjectBase::getSideAverageValue(), DisplacedProblem::getStandardVariable(), FEProblemBase::getStandardVariable(), MooseMesh::getSubdomainBoundaryIds(), DisplacedProblem::getSystem(), FEProblemBase::getSystem(), Times::getTimeAtIndex(), FEProblemBase::getTimeFromStateArg(), Transient::getTimeIntegratorName(), Times::getTimes(), MultiAppTransfer::getToMultiApp(), MultiAppTransfer::getToMultiAppInfo(), MooseMesh::getUniqueCoordSystem(), FEProblemBase::getUserObject(), FEProblemBase::getUserObjectBase(), UserObjectInterface::getUserObjectBaseByName(), UserObjectInterface::getUserObjectName(), VectorPostprocessorComponent::getValue(), NumRelationshipManagers::getValue(), Residual::getValue(), SideAverageValue::getValue(), LineValueSampler::getValue(), FindValueOnLine::getValueAtPoint(), SubProblem::getVariableHelper(), JSONFileReader::getVector(), VectorPostprocessorInterface::getVectorPostprocessorName(), SubProblem::getVectorTag(), SubProblem::getVectorTagID(), DisplacedProblem::getVectorVariable(), FEProblemBase::getVectorVariable(), GhostingAux::GhostingAux(), MultiApp::globalAppToLocal(), MooseParsedVectorFunction::gradient(), Function::gradient(), FEProblemBase::handleException(), Terminator::handleMessage(), MooseVariableBase::hasDoFsOnNodes(), PostprocessorInterface::hasPostprocessor(), PostprocessorInterface::hasPostprocessorByName(), ReporterInterface::hasReporterValue(), ReporterInterface::hasReporterValueByName(), VectorPostprocessorInterface::hasVectorPostprocessor(), VectorPostprocessorInterface::hasVectorPostprocessorByName(), CrankNicolson::init(), CSVTimeSequenceStepper::init(), ExplicitTimeIntegrator::init(), EigenExecutionerBase::init(), IterationAdaptiveDT::init(), Transient::init(), AddAuxVariableAction::init(), Eigenvalue::init(), AddVariableAction::init(), MooseMesh::init(), Sampler::init(), MultiApp::init(), FEProblemBase::init(), FEProblemBase::initialAdaptMesh(), NestedDivision::initialize(), DistributedPositions::initialize(), ReporterPositions::initialize(), TransformedPositions::initialize(), ReporterTimes::initialize(), ElementGroupCentroidPositions::initialize(), FunctorPositions::initialize(), FunctorTimes::initialize(), MultiAppCloneReporterTransfer::initialSetup(), SolutionIC::initialSetup(), IntegralPreservingFunctionIC::initialSetup(), PiecewiseLinearBase::initialSetup(), MultiAppConservativeTransfer::initialSetup(), ReferenceResidualProblem::initialSetup(), FullSolveMultiApp::initialSetup(), PiecewiseLinear::initialSetup(), CoarsenedPiecewiseLinear::initialSetup(), LinearFVDiffusion::initialSetup(), LinearFVAdvection::initialSetup(), SolutionScalarAux::initialSetup(), MultiAppGeneralFieldNearestLocationTransfer::initialSetup(), SolutionAux::initialSetup(), NodalVariableValue::initialSetup(), Axisymmetric2D3DSolutionFunction::initialSetup(), Exodus::initialSetup(), CSV::initialSetup(), MooseParsedFunction::initialSetup(), SolutionUserObject::initialSetup(), FEProblemBase::initialSetup(), SubProblem::initialSetup(), AdvancedOutput::initOutputList(), AdvancedOutput::initShowHideLists(), Function::integral(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceIntegralVariableValuePostprocessor::InterfaceIntegralVariableValuePostprocessor(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), InterfaceTimeKernel::InterfaceTimeKernel(), MultiAppGeometricInterpolationTransfer::interpolateTargetPoints(), EigenExecutionerBase::inversePowerIteration(), InversePowerMethod::InversePowerMethod(), Sampler::isAdaptiveSamplingCompleted(), MooseMesh::isBoundaryFullyExternalToSubdomains(), MooseVariableBase::isNodal(), IterationAdaptiveDT::IterationAdaptiveDT(), LeastSquaresFit::LeastSquaresFit(), LibmeshPartitioner::LibmeshPartitioner(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), LinearCombinationPostprocessor::LinearCombinationPostprocessor(), LinearNodalConstraint::LinearNodalConstraint(), LineMaterialSamplerBase< Real >::LineMaterialSamplerBase(), LineSearch::lineSearch(), LineValueSampler::LineValueSampler(), MultiAppGeneralFieldTransfer::locatePointReceivers(), LowerBoundNodalKernel::LowerBoundNodalKernel(), MooseLinearVariableFV< Real >::lowerDError(), MooseVariableFV< Real >::lowerDError(), PNGOutput::makePNG(), ReporterPointMarker::markerSetup(), MassMatrix::MassMatrix(), Material::Material(), MaterialOutputAction::materialOutputHelper(), MaterialRealTensorValueAux::MaterialRealTensorValueAux(), MaterialRealVectorValueAuxTempl< is_ad >::MaterialRealVectorValueAuxTempl(), MaterialStdVectorRealGradientAux::MaterialStdVectorRealGradientAux(), MaterialVectorPostprocessor::MaterialVectorPostprocessor(), Distribution::median(), FunctorRelationshipManager::mesh_reinit(), SubProblem::meshChanged(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MeshExtruderGenerator::MeshExtruderGenerator(), MeshRepairGenerator::MeshRepairGenerator(), SetupMeshAction::modifyParamsForUseSplit(), MeshMetaDataInterface::mooseErrorInternal(), MooseLinearVariableFV< Real >::MooseLinearVariableFV(), MooseMesh::MooseMesh(), MooseObject::MooseObject(), MooseVariableBase::MooseVariableBase(), MooseVariableConstMonomial::MooseVariableConstMonomial(), MoveNodeGenerator::MoveNodeGenerator(), ElementSubdomainModifier::movingBoundaryID(), ElementSubdomainModifier::movingBoundaryName(), MultiApp::MultiApp(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), NearestNodeDistanceAux::NearestNodeDistanceAux(), NearestNodeValueAux::NearestNodeValueAux(), FEProblemBase::needsPreviousNewtonIteration(), NewmarkBeta::NewmarkBeta(), NodalConstraint::NodalConstraint(), MooseVariableFV< Real >::nodalDofIndex(), MooseVariableFV< Real >::nodalDofIndexNeighbor(), MooseLinearVariableFV< Real >::nodalError(), MooseVariableFV< Real >::nodalMatrixTagValue(), NodalPatchRecoveryBase::nodalPatchRecovery(), NodalPatchRecoveryAuxBase::NodalPatchRecoveryAuxBase(), NodalScalarKernel::NodalScalarKernel(), MooseVariableFV< Real >::nodalValueArray(), MooseVariableFV< Real >::nodalValueOldArray(), MooseVariableFV< Real >::nodalValueOlderArray(), NodalVariableValue::NodalVariableValue(), MooseVariableFV< Real >::nodalVectorTagValue(), DistributedRectilinearMeshGenerator::nodeId(), PhysicsBase::nonlinearVariableExists(), MooseVariableFV< Real >::numberOfDofsNeighbor(), NumDOFs::NumDOFs(), NumFailedTimeSteps::NumFailedTimeSteps(), DistributedRectilinearMeshGenerator::numNeighbors(), NumNonlinearIterations::NumNonlinearIterations(), NumVars::NumVars(), Output::onInterval(), FunctorRelationshipManager::operator()(), RelationshipManager::operator==(), XDA::output(), SolutionHistory::output(), Exodus::output(), Output::Output(), AdvancedOutput::outputElementalVariables(), AdvancedOutput::outputInput(), AdvancedOutput::outputNodalVariables(), AdvancedOutput::outputPostprocessors(), AdvancedOutput::outputReporters(), AdvancedOutput::outputScalarVariables(), Exodus::outputSetup(), AdvancedOutput::outputSystemInformation(), Console::outputVectorPostprocessors(), AdvancedOutput::outputVectorPostprocessors(), DistributedRectilinearMeshGenerator::paritionSquarely(), PiecewiseBilinear::parse(), ParsedAux::ParsedAux(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedGenerateSideset::ParsedGenerateSideset(), ParsedODEKernel::ParsedODEKernel(), ParsedPostprocessor::ParsedPostprocessor(), ParsedSubdomainMeshGenerator::ParsedSubdomainMeshGenerator(), MultiAppConservativeTransfer::performAdjustment(), ExplicitTimeIntegrator::performExplicitSolve(), PetscExternalPartitioner::PetscExternalPartitioner(), MooseVariableFV< Real >::phiLowerSize(), PhysicsBasedPreconditioner::PhysicsBasedPreconditioner(), Executioner::picardSolve(), PIDTransientControl::PIDTransientControl(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), PiecewiseMulticonstant::PiecewiseMulticonstant(), PiecewiseMultiInterpolation::PiecewiseMultiInterpolation(), PiecewiseTabularBase::PiecewiseTabularBase(), CutMeshByPlaneGenerator::pointPairPlaneInterception(), SolutionUserObject::pointValueGradientWrapper(), SolutionUserObject::pointValueWrapper(), ReporterInterface::possiblyCheckHasReporter(), VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessorByName(), LStableDirk2::postResidual(), LStableDirk3::postResidual(), ImplicitMidpoint::postResidual(), ExplicitTVDRK2::postResidual(), AStableDirk4::postResidual(), LStableDirk4::postResidual(), ExplicitRK2::postResidual(), EigenProblem::postScaleEigenVector(), VariableCondensationPreconditioner::preallocateCondensedJacobian(), ADKernelValueTempl< T >::precomputeQpJacobian(), Predictor::Predictor(), Transient::preExecute(), MooseMesh::prepare(), MooseMesh::prepared(), FixedPointSolve::printFixedPointConvergenceReason(), PseudoTimestep::PseudoTimestep(), MultiApp::readCommandLineArguments(), PropertyReadFile::readData(), SolutionUserObject::readExodusII(), SolutionUserObject::readXda(), CoarsenBlockGenerator::recursiveCoarsen(), FunctorRelationshipManager::redistribute(), ReferenceResidualProblem::ReferenceResidualProblem(), Sampler::reinit(), EqualValueEmbeddedConstraint::reinitConstraint(), RelativeSolutionDifferenceNorm::RelativeSolutionDifferenceNorm(), RinglebMesh::RinglebMesh(), RinglebMeshGenerator::RinglebMeshGenerator(), PiecewiseMultiInterpolation::sample(), ScalarComponentIC::ScalarComponentIC(), MortarScalarBase::scalarVariable(), DistributedRectilinearMeshGenerator::scaleNodalPositions(), BicubicSplineFunction::secondDerivative(), MooseVariableFV< Real >::secondPhi(), MooseVariableFV< Real >::secondPhiFace(), MooseVariableFV< Real >::secondPhiFaceNeighbor(), MooseVariableFV< Real >::secondPhiNeighbor(), FunctorRelationshipManager::set_mesh(), MooseVariableBase::setActiveTags(), DistributedRectilinearMeshGenerator::setBoundaryNames(), MooseMesh::setCoordSystem(), FEProblemBase::setCoupling(), PiecewiseBase::setData(), FileOutput::setFileBaseInternal(), MooseMesh::setGeneralAxisymmetricCoordAxes(), FEProblemSolve::setInnerSolve(), MeshGenerator::setMeshProperty(), FVPointValueConstraint::setMyElem(), FEProblemBase::setNonlocalCouplingMatrix(), Sampler::setNumberOfCols(), Sampler::setNumberOfRandomSeeds(), Sampler::setNumberOfRows(), Exodus::setOutputDimensionInExodusWriter(), MultiAppGeneralFieldTransfer::setSolutionVectorValues(), Split::setup(), TransientMultiApp::setupApp(), SetupMeshAction::setupMesh(), TimeSequenceStepperBase::setupSequence(), Transient::setupTimeIntegrator(), TimePeriodBase::setupTimes(), SideAdvectiveFluxIntegralTempl< is_ad >::SideAdvectiveFluxIntegralTempl(), SideDiffusiveFluxIntegralTempl< is_ad, Real >::SideDiffusiveFluxIntegralTempl(), SideSetsFromNormalsGenerator::SideSetsFromNormalsGenerator(), SideSetsFromPointsGenerator::SideSetsFromPointsGenerator(), SingleMatrixPreconditioner::SingleMatrixPreconditioner(), SolutionTimeAdaptiveDT::SolutionTimeAdaptiveDT(), SolutionUserObject::SolutionUserObject(), FullSolveMultiApp::solveStep(), SpatialAverageBase::SpatialAverageBase(), UserObject::spatialPoints(), NearestPointAverage::spatialValue(), NearestPointIntegralVariablePostprocessor::spatialValue(), MeshDivisionFunctorReductionVectorPostprocessor::spatialValue(), UserObject::spatialValue(), SpiralAnnularMesh::SpiralAnnularMesh(), SpiralAnnularMeshGenerator::SpiralAnnularMeshGenerator(), StitchedMesh::StitchedMesh(), MultiAppGeometricInterpolationTransfer::subdomainIDsNode(), Constraint::subdomainSetup(), GeneralUserObject::subdomainSetup(), NodalUserObject::subdomainSetup(), MaterialBase::subdomainSetup(), FEProblemBase::swapBackMaterialsNeighbor(), DisplacedProblem::systemBaseLinear(), Console::systemInfoFlags(), Terminator::Terminator(), CutMeshByPlaneGenerator::tet4ElemCutter(), ThreadedGeneralUserObject::threadJoin(), DiscreteElementUserObject::threadJoin(), GeneralUserObject::threadJoin(), Function::timeDerivative(), TimeExtremeValue::TimeExtremeValue(), MooseLinearVariableFV< Real >::timeIntegratorError(), TimeIntervalTimes::TimeIntervalTimes(), TimePeriodBase::TimePeriodBase(), VectorPostprocessorVisualizationAux::timestepSetup(), MultiAppDofCopyTransfer::transfer(), MultiAppShapeEvaluationTransfer::transferVariable(), TransformedPositions::TransformedPositions(), FEProblemBase::trustUserCouplingMatrix(), MooseVariableScalar::uDot(), MooseVariableScalar::uDotDot(), MooseVariableScalar::uDotDotOld(), FEProblemBase::uDotDotOldRequested(), MooseVariableScalar::uDotOld(), FEProblemBase::uDotOldRequested(), Positions::unrollMultiDPositions(), ScalarKernelBase::uOld(), AuxScalarKernel::uOld(), Checkpoint::updateCheckpointFiles(), EqualValueBoundaryConstraint::updateConstrainedNodes(), SolutionUserObject::updateExodusBracketingTimeIndices(), FEProblemBase::updateMaxQps(), UpperBoundNodalKernel::UpperBoundNodalKernel(), NearestPointAverage::userObjectValue(), NearestPointIntegralVariablePostprocessor::userObjectValue(), BoundingBoxIC::value(), PiecewiseConstantFromCSV::value(), IntegralPreservingFunctionIC::value(), Axisymmetric2D3DSolutionFunction::value(), Function::value(), ValueRangeMarker::ValueRangeMarker(), ValueThresholdMarker::ValueThresholdMarker(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), MultiAppTransfer::variableIntegrityCheck(), VariableTimeIntegrationAux::VariableTimeIntegrationAux(), AddVariableAction::variableType(), VariableValueVolumeHistogram::VariableValueVolumeHistogram(), VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl(), VectorNodalBC::VectorNodalBC(), SubProblem::vectorTagName(), SubProblem::vectorTagType(), MooseParsedGradFunction::vectorValue(), MooseParsedFunction::vectorValue(), Function::vectorValue(), SubProblem::verifyVectorTags(), VTKOutput::VTKOutput(), DOFMapOutput::writeStreamToFile(), and Console::writeStreamToFile().

30  {
31  std::ostringstream oss;
32  moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
33  _moose_base.callMooseError(oss.str(), /* with_prefix = */ true);
34  }
void mooseStreamAll(std::ostringstream &ss)
All of the following are not meant to be called directly - they are called by the normal macros (moos...
Definition: MooseError.C:92
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33

◆ mooseErrorNonPrefixed()

template<typename... Args>
void MooseBaseErrorInterface::mooseErrorNonPrefixed ( Args &&...  args) const
inlineinherited

Emits an error without the prefixing included in mooseError().

Definition at line 40 of file MooseBaseErrorInterface.h.

41  {
42  std::ostringstream oss;
43  moose::internal::mooseStreamAll(oss, std::forward<Args>(args)...);
44  _moose_base.callMooseError(oss.str(), /* with_prefix = */ false);
45  }
void mooseStreamAll(std::ostringstream &ss)
All of the following are not meant to be called directly - they are called by the normal macros (moos...
Definition: MooseError.C:92
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33

◆ mooseInfo()

template<typename... Args>
void MooseBaseErrorInterface::mooseInfo ( Args &&...  args) const
inlineinherited

◆ mooseLinearVariableFV()

MooseLinearVariableFV< Real > * MooseVariableInterface< Real >::mooseLinearVariableFV ( ) const
inherited

Return the MooseLinearVariableFV object that this interface acts on.

Definition at line 68 of file MooseVariableInterface.C.

69 {
71  mooseError(
72  "The variable defined in ", _moose_object.name(), " is not a MooseLinearVariableFV!");
73  return _linear_fv_variable;
74 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseLinearVariableFV< Real > * _linear_fv_variable
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57

◆ mooseVariable()

MooseVariableFE< Real > * MooseVariableInterface< Real >::mooseVariable ( ) const
inherited

Return the MooseVariableFE object that this interface acts on.

Definition at line 78 of file MooseVariableInterface.C.

Referenced by ADDGKernel::ADDGKernel(), DGKernel::DGKernel(), IntegratedBC::IntegratedBC(), Kernel::Kernel(), and NodalBC::NodalBC().

79 {
80  if (!_variable)
81  mooseError(
82  "_variable is null in ", _moose_object.name(), ". Are you using a finite volume variable?");
83  return _variable;
84 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
MooseVariableFE< Real > * _variable

◆ mooseVariableBase()

MooseVariableBase* MooseVariableInterface< Real >::mooseVariableBase ( ) const
inlineinherited

Get the variable that this object is using.

Returns
The variable this object is using.

Definition at line 50 of file MooseVariableInterface.h.

Referenced by ElementLpNormAux::ElementLpNormAux(), and VolumeAux::VolumeAux().

50 { return _var; };
MooseVariableBase * _var
The variable this object is acting on.

◆ mooseVariableField()

MooseVariableField< Real > & MooseVariableInterface< Real >::mooseVariableField ( )
inherited

◆ mooseVariableFV()

MooseVariableFV< Real > * MooseVariableInterface< Real >::mooseVariableFV ( ) const
inherited

Return the MooseVariableFV object that this interface acts on.

Definition at line 57 of file MooseVariableInterface.C.

58 {
59  if (!_fv_variable)
60  mooseError("_fv_variable is null in ",
62  ". Did you forget to set fv = true in the Variables block?");
63  return _fv_variable;
64 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariableFV< Real > * _fv_variable
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57

◆ mooseWarning()

template<typename... Args>
void MooseBaseErrorInterface::mooseWarning ( Args &&...  args) const
inlineinherited

Emits a warning prefixed with object name and type.

Definition at line 75 of file MooseBaseErrorInterface.h.

Referenced by AddKernelAction::act(), SetupMeshAction::act(), MeshOnlyAction::act(), AddFunctionAction::act(), MaterialOutputAction::act(), CommonOutputAction::act(), DiracKernelBase::addPoint(), BoundaryMarker::BoundaryMarker(), BoundsBase::BoundsBase(), DistributedRectilinearMeshGenerator::buildCube(), MultiAppVariableValueSamplePostprocessorTransfer::cacheElemToPostprocessorData(), CartesianMeshGenerator::CartesianMeshGenerator(), CheckOutputAction::checkConsoleOutput(), MultiAppTransfer::checkMultiAppExecuteOn(), PhysicsBase::checkRequiredTasks(), OversampleOutput::cloneMesh(), GapValueAux::computeValue(), MultiApp::createApp(), MeshDiagnosticsGenerator::diagnosticsLog(), CartesianGridDivision::divisionIndex(), CylindricalGridDivision::divisionIndex(), SphericalGridDivision::divisionIndex(), Postprocessor::evaluateDotWarning(), MeshDivisionFunctorReductionVectorPostprocessor::execute(), ElementQualityChecker::finalize(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), FixedPointSolve::FixedPointSolve(), SubdomainPerElementGenerator::generate(), ParsedGenerateSideset::generate(), MultiAppTransfer::getAppInfo(), FunctorBinnedValuesDivision::getBinIndex(), PointSamplerBase::getLocalElemContainingPoint(), FEProblemBase::getMaterial(), Positions::getNearestPositionIndex(), LineValueSampler::getValue(), Terminator::handleMessage(), CartesianGridDivision::initialize(), SphericalGridDivision::initialize(), ElementGroupCentroidPositions::initialize(), CylindricalGridDivision::initialize(), ReferenceResidualProblem::initialSetup(), MultiAppGeneralFieldNearestLocationTransfer::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), FEProblemBase::initialSetup(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), MaterialBase::initStatefulProperties(), LeastSquaresFit::LeastSquaresFit(), IterationAdaptiveDT::limitDTToPostprocessorValue(), MaterialVectorPostprocessor::MaterialVectorPostprocessor(), FEProblemBase::mesh(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), NewmarkBeta::NewmarkBeta(), NodalPatchRecovery::NodalPatchRecovery(), NonlocalIntegratedBC::NonlocalIntegratedBC(), NonlocalKernel::NonlocalKernel(), Output::Output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), PiecewiseConstantFromCSV::PiecewiseConstantFromCSV(), Executioner::problem(), PropertyReadFile::readData(), TestSourceStepper::rejectStep(), MaterialBase::resetQpProperties(), SecondTimeDerivativeAux::SecondTimeDerivativeAux(), MooseMesh::setCoordSystem(), FEProblemBase::sizeZeroes(), TransientMultiApp::solveStep(), Tecplot::Tecplot(), TimeDerivativeAux::TimeDerivativeAux(), Checkpoint::updateCheckpointFiles(), PiecewiseConstantFromCSV::value(), and VariableCondensationPreconditioner::VariableCondensationPreconditioner().

76  {
78  _console, _moose_base.errorPrefix("warning"), std::forward<Args>(args)...);
79  }
std::string errorPrefix(const std::string &error_type) const
Definition: MooseBase.C:43
void mooseWarningStream(S &oss, Args &&... args)
Definition: MooseError.h:181
const MooseBase & _moose_base
The MooseBase class deriving from this interface.
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ mooseWarningNonPrefixed()

template<typename... Args>
void MooseBaseErrorInterface::mooseWarningNonPrefixed ( Args &&...  args) const
inlineinherited

Emits a warning without the prefixing included in mooseWarning().

Definition at line 85 of file MooseBaseErrorInterface.h.

86  {
87  moose::internal::mooseWarningStream(_console, std::forward<Args>(args)...);
88  }
void mooseWarningStream(S &oss, Args &&... args)
Definition: MooseError.h:181
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.

◆ name()

virtual const std::string& MooseBase::name ( ) const
inlinevirtualinherited

Get the name of the class.

Returns
The name of the class

Reimplemented in MooseVariableBase.

Definition at line 57 of file MooseBase.h.

Referenced by HierarchicalGridPartitioner::_do_partition(), CopyNodalVarsAction::act(), AddElementalFieldAction::act(), AdaptivityAction::act(), AddTimeStepperAction::act(), DeprecatedBlockAction::act(), DisplayGhostingAction::act(), AddVariableAction::act(), AddPeriodicBCAction::act(), MaterialOutputAction::act(), FEProblemBase::addAnyRedistributers(), Executioner::addAttributeReporter(), FEProblemBase::addAuxKernel(), FEProblemBase::addAuxScalarKernel(), DisplacedProblem::addAuxVariable(), FEProblemBase::addBoundaryCondition(), FEProblemBase::addConstraint(), FEProblemBase::addDamper(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), MooseApp::addExecutor(), MooseApp::addExecutorParams(), FEProblemBase::addFunction(), SubProblem::addFunctor(), FEProblemBase::addFunctorMaterial(), FunctorMaterial::addFunctorProperty(), FunctorMaterial::addFunctorPropertyByBlocks(), FEProblemBase::addFVBC(), FEProblemBase::addFVInitialCondition(), FEProblemBase::addFVInterfaceKernel(), FEProblemBase::addFVKernel(), ADDGKernel::ADDGKernel(), FEProblemBase::addIndicator(), FEProblemBase::addInitialCondition(), FEProblemBase::addInterfaceKernel(), FEProblemBase::addInterfaceMaterial(), FEProblemBase::addKernel(), FEProblemBase::addLinearFVBC(), FEProblemBase::addLinearFVKernel(), FEProblemBase::addMarker(), FEProblemBase::addMaterial(), FEProblemBase::addMaterialHelper(), FEProblemBase::addMeshDivision(), MooseApp::addMeshGenerator(), MeshGenerator::addMeshSubgenerator(), FEProblemBase::addMultiApp(), FEProblemBase::addNodalKernel(), FEProblemBase::addObject(), SubProblem::addPiecewiseByBlockLambdaFunctor(), FEProblemBase::addPostprocessor(), InitialConditionBase::addPostprocessorDependencyHelper(), UserObject::addPostprocessorDependencyHelper(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), Action::addRelationshipManager(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addScalarKernel(), FEProblemBase::addTimeIntegrator(), FEProblemBase::addTransfer(), FEProblemBase::addUserObject(), InitialConditionBase::addUserObjectDependencyHelper(), UserObject::addUserObjectDependencyHelper(), AuxKernelTempl< Real >::addUserObjectDependencyHelper(), DisplacedProblem::addVariable(), FEProblemBase::addVectorPostprocessor(), UserObject::addVectorPostprocessorDependencyHelper(), FVFluxKernel::adjustRMGhostLayers(), Output::advancedExecuteOn(), AdvancedExtruderGenerator::AdvancedExtruderGenerator(), MooseApp::appBinaryName(), MooseApp::appendMeshGenerator(), MultiApp::appPostprocessorValue(), MultiApp::appProblem(), MultiApp::appProblemBase(), MultiApp::appUserObjectBase(), ArrayDGKernel::ArrayDGKernel(), ArrayParsedAux::ArrayParsedAux(), AStableDirk4::AStableDirk4(), AuxKernelTempl< Real >::AuxKernelTempl(), Function::average(), MultiApp::backup(), Moose::Builder::build(), CoarsenedPiecewiseLinear::buildCoarsenedGrid(), PiecewiseTabularBase::buildFromFile(), MultiAppVariableValueSamplePostprocessorTransfer::cacheElemToPostprocessorData(), MooseBase::callMooseError(), ChangeOverFixedPointPostprocessor::ChangeOverFixedPointPostprocessor(), ChangeOverTimePostprocessor::ChangeOverTimePostprocessor(), FEProblemBase::checkDependMaterialsHelper(), ReporterTransferInterface::checkHasReporterValue(), FEProblemBase::checkICRestartError(), Material::checkMaterialProperty(), MooseApp::checkMetaDataIntegrity(), Damper::checkMinDamping(), FEProblemBase::checkNonlinearConvergence(), Coupleable::checkWritableVar(), CompositeFunction::CompositeFunction(), MaterialBase::computeProperties(), FEProblemBase::computeUserObjectByName(), VectorPostprocessorVisualizationAux::computeValue(), MooseBaseParameterInterface::connectControllableParams(), BatchMaterial< Tuple, Output, Input >::construct(), MultiApp::createApp(), MooseApp::createExecutors(), AddVariableAction::createInitialConditionAction(), MultiApp::createLocalApp(), MeshGeneratorSystem::createMeshGeneratorOrder(), MooseApp::createRecoverablePerfGraph(), MaterialBase::declareADProperty(), MeshGenerator::declareMeshesForSubByName(), MeshGenerator::declareNullMeshName(), MaterialBase::declareProperty(), DOFMapOutput::demangle(), DerivativeSumMaterialTempl< is_ad >::DerivativeSumMaterialTempl(), DGKernel::DGKernel(), DGKernelBase::DGKernelBase(), DomainUserObject::DomainUserObject(), DumpObjectsProblem::dumpObjectHelper(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementValueSampler::ElementValueSampler(), MooseMesh::errorIfDistributedMesh(), MooseBase::errorPrefix(), SolutionUserObject::evalMeshFunction(), SolutionUserObject::evalMeshFunctionGradient(), SolutionUserObject::evalMultiValuedMeshFunction(), SolutionUserObject::evalMultiValuedMeshFunctionGradient(), RestartableDataReporter::execute(), PointValue::execute(), MultiAppNearestNodeTransfer::execute(), ActionWarehouse::executeActionsWithAction(), Exodus::Exodus(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), MultiApp::fillPositions(), PointSamplerBase::finalize(), FunctionDT::FunctionDT(), FVFunctionIC::functionName(), FunctionIC::functionName(), FunctorPositions::FunctorPositions(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), FVOneVarDiffusionInterface::FVOneVarDiffusionInterface(), MooseServer::gatherDocumentSymbols(), BoundaryDeletionGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), BreakMeshByBlockGenerator::generate(), GeneratedMeshGenerator::generate(), ParsedSubdomainMeshGenerator::generate(), StitchedMeshGenerator::generate(), XYDelaunayGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), MeshGenerator::generateInternal(), InterfaceMaterial::getADMaterialProperty(), Material::getADMaterialProperty(), MultiAppTransfer::getAppInfo(), MultiApp::getBoundingBox(), MooseApp::getCheckpointDirectories(), Control::getControllableParameterByName(), Control::getControllableValue(), Control::getControllableValueByName(), UserObject::getDependObjects(), DistributionInterface::getDistribution(), FEProblemBase::getDistribution(), DistributionInterface::getDistributionByName(), ElementUOProvider::getElementalValueLong(), ElementUOProvider::getElementalValueReal(), MultiApp::getExecutioner(), MooseApp::getExecutor(), FEProblemBase::getExecutor(), OutputWarehouse::getFileNumbers(), FEProblemBase::getFunction(), SubProblem::getFunctor(), NodalPatchRecovery::getGenericMaterialProperty(), InterfaceMaterial::getGenericMaterialProperty(), Material::getGenericMaterialProperty(), AuxKernelTempl< Real >::getGenericMaterialProperty(), InterfaceMaterial::getGenericNeighborMaterialProperty(), InterfaceMaterial::getGenericNeighborMaterialPropertyByName(), Material::getGenericOptionalMaterialProperty(), MaterialBase::getGenericZeroMaterialProperty(), BatchMaterial< Tuple, Output, Input >::getIndex(), SolutionUserObject::getLocalVarIndex(), Marker::getMarkerValue(), Material::getMaterial(), FEProblemBase::getMaterial(), Material::getMaterialByName(), NodalPatchRecovery::getMaterialProperty(), InterfaceMaterial::getMaterialProperty(), Material::getMaterialProperty(), AuxKernelTempl< Real >::getMaterialProperty(), SubProblem::getMaterialPropertyBlockNames(), SubProblem::getMaterialPropertyBoundaryNames(), NodalPatchRecovery::getMaterialPropertyOld(), InterfaceMaterial::getMaterialPropertyOld(), Material::getMaterialPropertyOld(), AuxKernelTempl< Real >::getMaterialPropertyOld(), NodalPatchRecovery::getMaterialPropertyOlder(), InterfaceMaterial::getMaterialPropertyOlder(), Material::getMaterialPropertyOlder(), AuxKernelTempl< Real >::getMaterialPropertyOlder(), MeshGenerator::getMesh(), FEProblemBase::getMeshDivision(), MeshGenerator::getMeshesByName(), MooseApp::getMeshGenerator(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), ActionWarehouse::getMooseAppName(), MultiAppTransfer::getMultiApp(), InterfaceMaterial::getNeighborADMaterialProperty(), InterfaceMaterial::getNeighborMaterialProperty(), InterfaceMaterial::getNeighborMaterialPropertyOld(), InterfaceMaterial::getNeighborMaterialPropertyOlder(), MooseServer::getObjectParameters(), Material::getOptionalADMaterialProperty(), Material::getOptionalMaterialProperty(), Material::getOptionalMaterialPropertyOld(), Material::getOptionalMaterialPropertyOlder(), OutputWarehouse::getOutput(), MooseApp::getParam(), FEProblemBase::getPositionsObject(), FEProblemBase::getPostprocessorValueByName(), ReporterData::getReporterInfo(), MooseApp::getRestartableDataMap(), MooseApp::getRestartableDataMapName(), MooseApp::getRestartableMetaData(), FEProblemBase::getSampler(), Transient::getTimeStepperName(), ProjectedStatefulMaterialStorageAction::getTypeEnum(), FEProblemBase::getUserObject(), FEProblemBase::getUserObjectBase(), Terminator::handleMessage(), FEProblemBase::hasFunction(), SubProblem::hasFunctor(), SubProblem::hasFunctorWithType(), MooseApp::hasMeshGenerator(), AdvancedOutput::hasOutputHelper(), FEProblemBase::hasPostprocessor(), FEProblemBase::hasPostprocessorValueByName(), MooseApp::hasRelationshipManager(), MooseApp::hasRestartableDataMap(), MooseApp::hasRestartableMetaData(), FEProblemBase::hasUserObject(), IterationAdaptiveDT::init(), AdvancedOutput::init(), FEProblemBase::init(), AdvancedOutput::initExecutionTypes(), AttribName::initFrom(), NestedDivision::initialize(), TransformedPositions::initialize(), SolutionScalarAux::initialSetup(), MultiAppProjectionTransfer::initialSetup(), NodalVariableValue::initialSetup(), Console::initialSetup(), SolutionUserObject::initialSetup(), AdvancedOutput::initOutputList(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), MaterialBase::initStatefulProperties(), Function::integral(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), MeshGenerator::isChildMeshGenerator(), MeshGenerator::isNullMeshName(), MooseApp::isParamValid(), MeshGenerator::isParentMeshGenerator(), LinearCombinationFunction::LinearCombinationFunction(), FEProblemBase::logAdd(), Marker::Marker(), MatDiffusionBase< Real >::MatDiffusionBase(), Material::Material(), MaterialDerivativeTestKernelBase< Real >::MaterialDerivativeTestKernelBase(), MaterialVectorPostprocessor::MaterialVectorPostprocessor(), Distribution::median(), MemoryUsageReporter::MemoryUsageReporter(), MeshGenerator::meshPropertyPrefix(), MooseApp::MooseApp(), OutputWarehouse::mooseConsole(), MooseVariableInterface< Real >::MooseVariableInterface(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), NodalPatchRecoveryAuxBase::NodalPatchRecoveryAuxBase(), NodalValueSampler::NodalValueSampler(), PhysicsBase::nonlinearVariableExists(), Registry::objData(), MeshGenerator::Comparator::operator()(), ProgressOutput::output(), DOFMapOutput::output(), Output::Output(), AdvancedOutput::outputElementalVariables(), ConsoleUtils::outputExecutionInformation(), AdvancedOutput::outputInput(), AdvancedOutput::outputNodalVariables(), Nemesis::outputPostprocessors(), Exodus::outputPostprocessors(), AdvancedOutput::outputPostprocessors(), TableOutput::outputReporter(), AdvancedOutput::outputReporters(), AdvancedOutput::outputScalarVariables(), AdvancedOutput::outputSystemInformation(), AdvancedOutput::outputVectorPostprocessors(), ParsedAux::ParsedAux(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedGenerateSideset::ParsedGenerateSideset(), MooseServer::parseDocumentForDiagnostics(), ParsedODEKernel::ParsedODEKernel(), ParsedSubdomainMeshGenerator::ParsedSubdomainMeshGenerator(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseByBlockFunctorMaterialTempl< T >::PiecewiseByBlockFunctorMaterialTempl(), PointVariableSamplerBase::PointVariableSamplerBase(), MooseApp::possiblyLoadRestartableMetaData(), PhysicsBase::prefix(), PerfGraphLivePrint::printStats(), MultiApp::readCommandLineArguments(), Receiver::Receiver(), Executor::Result::record(), Registry::registerObjectsTo(), FEProblemBase::registerRandomInterface(), MooseApp::registerRestartableDataMapName(), MooseApp::registerRestartableNameWithFilter(), GlobalParamsAction::remove(), MaterialBase::resetQpProperties(), MultiApp::restore(), MooseApp::runInputFile(), ScalarComponentIC::ScalarComponentIC(), MultiApp::setAppOutputFileBase(), MooseMesh::setBoundaryName(), Control::setControllableValue(), Control::setControllableValueByName(), GlobalParamsAction::setDoubleIndexParam(), OutputWarehouse::setFileNumbers(), GlobalParamsAction::setParam(), FEProblemBase::setPostprocessorValueByName(), GlobalParamsAction::setScalarParam(), MooseMesh::setSubdomainName(), GlobalParamsAction::setTripleIndexParam(), Split::setup(), SideSetsGeneratorBase::setup(), TransientMultiApp::setupApp(), GlobalParamsAction::setVectorParam(), FullSolveMultiApp::showStatusMessage(), SideSetExtruderGenerator::SideSetExtruderGenerator(), SideValueSampler::SideValueSampler(), TransientMultiApp::solveStep(), UserObject::spatialValue(), StitchedMesh::StitchedMesh(), SubProblem::storeBoundaryDelayedCheckMatProp(), SubProblem::storeBoundaryMatPropName(), SubProblem::storeBoundaryZeroMatProp(), SubProblem::storeSubdomainDelayedCheckMatProp(), SubProblem::storeSubdomainMatPropName(), SubProblem::storeSubdomainZeroMatProp(), MaterialBase::subdomainSetup(), TaggingInterface::TaggingInterface(), VectorPostprocessorVisualizationAux::timestepSetup(), to_json(), MultiAppDofCopyTransfer::transfer(), TransientMultiApp::TransientMultiApp(), MooseServer::traverseParseTreeAndFillSymbols(), MooseBase::typeAndName(), MooseBaseParameterInterface::uniqueParameterName(), FVFluxBC::uOnGhost(), FVFluxBC::uOnUSub(), UserObject::UserObject(), UserObjectInterface::userObjectName(), MultiAppTransfer::variableIntegrityCheck(), VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl(), AdvancedOutput::wantOutput(), Coupleable::writableCoupledValue(), Coupleable::writableVariable(), Console::write(), and MooseApp::writeRestartableMetaData().

57 { return _name; }
const std::string _name
The name of this class.
Definition: MooseBase.h:90

◆ neighborGradient()

const OutputTools< Real >::VariableGradient & NeighborMooseVariableInterface< Real >::neighborGradient ( )
protectedvirtualinherited

The gradient of the variable this object is operating on evaluated on the "neighbor" element.

Returns
The reference to be stored off and used later.

Definition at line 97 of file NeighborMooseVariableInterface.C.

98 {
99  if (this->_nodal)
100  mooseError("Nodal variables do not have gradients");
101 
102  return this->_variable->gradSlnNeighbor();
103 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable
const FieldVariableGradient & gradSlnNeighbor() const override
neighbor solution gradients

◆ neighborGradientOld()

const OutputTools< Real >::VariableGradient & NeighborMooseVariableInterface< Real >::neighborGradientOld ( )
protectedvirtualinherited

The old gradient of the variable this object is operating on evaluated on the "neighbor" element.

Returns
The reference to be stored off and used later.

Definition at line 107 of file NeighborMooseVariableInterface.C.

108 {
109  if (this->_nodal)
110  mooseError("Nodal variables do not have gradients");
111 
112  return this->_variable->gradSlnOldNeighbor();
113 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable
const FieldVariableGradient & gradSlnOldNeighbor() const override

◆ neighborGradientOlder()

const OutputTools< Real >::VariableGradient & NeighborMooseVariableInterface< Real >::neighborGradientOlder ( )
protectedvirtualinherited

The older gradient of the variable this object is operating on evaluated on the "neighbor" element.

Returns
The reference to be stored off and used later.

Definition at line 117 of file NeighborMooseVariableInterface.C.

118 {
119  if (this->_nodal)
120  mooseError("Nodal variables do not have gradients");
121 
122  return this->_variable->gradSlnOlderNeighbor();
123 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
const FieldVariableGradient & gradSlnOlderNeighbor() const
MooseVariableFE< Real > * _variable

◆ neighborSecond()

const OutputTools< Real >::VariableSecond & NeighborMooseVariableInterface< Real >::neighborSecond ( )
protectedvirtualinherited

The second derivative of the variable this object is operating on evaluated on the "neighbor" element.

Returns
The reference to be stored off and used later.

Definition at line 127 of file NeighborMooseVariableInterface.C.

128 {
129  if (this->_nodal)
130  mooseError("Nodal variables do not have second derivatives");
131 
132  return this->_variable->secondSlnNeighbor();
133 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
const FieldVariableSecond & secondSlnNeighbor() const
neighbor solution seconds
MooseVariableFE< Real > * _variable

◆ neighborSecondOld()

const OutputTools< Real >::VariableSecond & NeighborMooseVariableInterface< Real >::neighborSecondOld ( )
protectedvirtualinherited

The old second derivative of the variable this object is operating on evaluated on the "neighbor" element.

Returns
The reference to be stored off and used later.

Definition at line 137 of file NeighborMooseVariableInterface.C.

138 {
139  if (this->_nodal)
140  mooseError("Nodal variables do not have second derivatives");
141 
142  return this->_variable->secondSlnOldNeighbor();
143 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
const FieldVariableSecond & secondSlnOldNeighbor() const
MooseVariableFE< Real > * _variable

◆ neighborSecondOlder()

const OutputTools< Real >::VariableSecond & NeighborMooseVariableInterface< Real >::neighborSecondOlder ( )
protectedvirtualinherited

The older second derivative of the variable this object is operating on evaluated on the "neighbor" element.

Returns
The reference to be stored off and used later.

Definition at line 147 of file NeighborMooseVariableInterface.C.

148 {
149  if (this->_nodal)
150  mooseError("Nodal variables do not have second derivatives");
151 
152  return this->_variable->secondSlnOlderNeighbor();
153 }
const FieldVariableSecond & secondSlnOlderNeighbor() const
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable

◆ neighborSecondPhi()

const OutputTools< Real >::VariablePhiSecond & NeighborMooseVariableInterface< Real >::neighborSecondPhi ( )
protectedvirtualinherited

The second derivative of the neighbor's shape function.

Returns
The reference to be stored off and used later.

Definition at line 167 of file NeighborMooseVariableInterface.C.

168 {
169  if (this->_nodal)
170  mooseError("Nodal variables do not have second derivatives");
171 
172  return this->_mvi_assembly->secondPhiFaceNeighbor(*this->_variable);
173 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable
const VariablePhiSecond & secondPhiFaceNeighbor(const MooseVariableField< Real > &) const
Definition: Assembly.h:1317

◆ neighborSecondTest()

const OutputTools< Real >::VariableTestSecond & NeighborMooseVariableInterface< Real >::neighborSecondTest ( )
protectedvirtualinherited

The second derivative of the neighbor's test function.

Returns
The reference to be stored off and used later.

Definition at line 157 of file NeighborMooseVariableInterface.C.

158 {
159  if (this->_nodal)
160  mooseError("Nodal variables do not have second derivatives");
161 
162  return this->_variable->secondPhiFaceNeighbor();
163 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable
const FieldVariablePhiSecond & secondPhiFaceNeighbor() const override final
Return the rank-2 tensor of second derivatives of the variable&#39;s shape functions on a neighboring ele...

◆ neighborValue() [1/2]

const OutputTools< Real >::VariableValue & NeighborMooseVariableInterface< Real >::neighborValue ( )
protectedvirtualinherited

The value of the variable this object is operating on evaluated on the "neighbor" element.

Returns
The reference to be stored off and used later.

Definition at line 37 of file NeighborMooseVariableInterface.C.

38 {
39  if (this->_nodal)
40  return this->_variable->dofValuesNeighbor();
41  else
42  return this->_variable->slnNeighbor();
43 }
const FieldVariableValue & slnNeighbor() const override
neighbor solutions
const DoFValue & dofValuesNeighbor() const override
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable

◆ neighborValue() [2/2]

const VectorVariableValue & NeighborMooseVariableInterface< RealVectorValue >::neighborValue ( )
protectedinherited

Definition at line 47 of file NeighborMooseVariableInterface.C.

48 {
49  if (this->_nodal)
50  mooseError("Dofs are scalars while vector variables have vector values. Mismatch");
51  else
52  return this->_variable->slnNeighbor();
53 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const FieldVariableValue & slnNeighbor() const override
neighbor solutions
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable

◆ neighborValueOld() [1/2]

const OutputTools< Real >::VariableValue & NeighborMooseVariableInterface< Real >::neighborValueOld ( )
protectedvirtualinherited

The old value of the variable this object is operating on evaluated on the "neighbor" element.

Returns
The reference to be stored off and used later.

Definition at line 57 of file NeighborMooseVariableInterface.C.

58 {
59  if (this->_nodal)
60  return this->_variable->dofValuesOldNeighbor();
61  else
62  return this->_variable->slnOldNeighbor();
63 }
bool _nodal
Whether or not this object is acting only at nodes.
const DoFValue & dofValuesOldNeighbor() const override
MooseVariableFE< Real > * _variable
const FieldVariableValue & slnOldNeighbor() const override

◆ neighborValueOld() [2/2]

const VectorVariableValue & NeighborMooseVariableInterface< RealVectorValue >::neighborValueOld ( )
protectedinherited

Definition at line 67 of file NeighborMooseVariableInterface.C.

68 {
69  if (this->_nodal)
70  mooseError("Dofs are scalars while vector variables have vector values. Mismatch");
71  else
72  return this->_variable->slnOldNeighbor();
73 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable
const FieldVariableValue & slnOldNeighbor() const override

◆ neighborValueOlder() [1/2]

const OutputTools< Real >::VariableValue & NeighborMooseVariableInterface< Real >::neighborValueOlder ( )
protectedvirtualinherited

The older value of the variable this object is operating on evaluated on the "neighbor" element.

Returns
The reference to be stored off and used later.

Definition at line 77 of file NeighborMooseVariableInterface.C.

78 {
79  if (this->_nodal)
80  return this->_variable->dofValuesOlderNeighbor();
81  else
82  return this->_variable->slnOlderNeighbor();
83 }
const DoFValue & dofValuesOlderNeighbor() const override
const FieldVariableValue & slnOlderNeighbor() const
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable

◆ neighborValueOlder() [2/2]

const VectorVariableValue & NeighborMooseVariableInterface< RealVectorValue >::neighborValueOlder ( )
protectedinherited

Definition at line 87 of file NeighborMooseVariableInterface.C.

88 {
89  if (this->_nodal)
90  mooseError("Dofs are scalars while vector variables have vector values. Mismatch");
91  else
92  return this->_variable->slnOlderNeighbor();
93 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const FieldVariableValue & slnOlderNeighbor() const
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable

◆ overwriteBoundaryVariables()

virtual void NodeFaceConstraint::overwriteBoundaryVariables ( NumericVector< Number > &  ,
const Node &   
) const
inlinevirtual

Allows for overwriting boundary variables (explicit dynamics contact).

Definition at line 131 of file NodeFaceConstraint.h.

133  {
134  }

◆ overwriteSecondaryJacobian()

virtual bool NodeFaceConstraint::overwriteSecondaryJacobian ( )
inlinevirtual

Whether or not the secondary's Jacobian row should be overwritten.

When this returns true the secondary's Jacobian row as computed by the constraint will replace the residual previously at that node for that variable.

Definition at line 88 of file NodeFaceConstraint.h.

88 { return overwriteSecondaryResidual(); };
virtual bool overwriteSecondaryResidual()
Whether or not the secondary&#39;s residual should be overwritten.

◆ overwriteSecondaryResidual()

bool NodeFaceConstraint::overwriteSecondaryResidual ( )
virtual

Whether or not the secondary's residual should be overwritten.

When this returns true the secondary's residual as computed by the constraint will replace the residual previously at that node for that variable.

Definition at line 283 of file NodeFaceConstraint.C.

Referenced by overwriteSecondaryJacobian().

284 {
286 }
bool _overwrite_secondary_residual
Whether or not the secondary&#39;s residual should be overwritten.

◆ paramError()

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

Emits an error prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message.

If this object's parameters were not created directly by the Parser, then this function falls back to the normal behavior of mooseError - only printing a message using the given args.

Definition at line 237 of file MooseBaseParameterInterface.h.

Referenced by HierarchicalGridPartitioner::_do_partition(), SetupDebugAction::act(), ADConservativeAdvectionBC::ADConservativeAdvectionBC(), DiffusionCG::addFEKernels(), DiffusionFV::addFVKernels(), ADDGKernel::ADDGKernel(), DiffusionCG::addNonlinearVariables(), ReporterPointSource::addPoints(), ADIntegratedBCTempl< T >::ADIntegratedBCTempl(), ADKernelTempl< T >::ADKernelTempl(), ADNodalKernel::ADNodalKernel(), ADPenaltyPeriodicSegmentalConstraint::ADPenaltyPeriodicSegmentalConstraint(), ADPeriodicSegmentalConstraint::ADPeriodicSegmentalConstraint(), AdvancedExtruderGenerator::AdvancedExtruderGenerator(), AdvectiveFluxAux::AdvectiveFluxAux(), ADVectorFunctionDirichletBC::ADVectorFunctionDirichletBC(), AnnularMesh::AnnularMesh(), AnnularMeshGenerator::AnnularMeshGenerator(), ArrayBodyForce::ArrayBodyForce(), ArrayDGKernel::ArrayDGKernel(), ArrayDGLowerDKernel::ArrayDGLowerDKernel(), ArrayDirichletBC::ArrayDirichletBC(), ArrayHFEMDirichletBC::ArrayHFEMDirichletBC(), ArrayIntegratedBC::ArrayIntegratedBC(), ArrayKernel::ArrayKernel(), ArrayLowerDIntegratedBC::ArrayLowerDIntegratedBC(), ArrayParsedAux::ArrayParsedAux(), ArrayPenaltyDirichletBC::ArrayPenaltyDirichletBC(), ArrayVacuumBC::ArrayVacuumBC(), AuxKernelTempl< Real >::AuxKernelTempl(), BlockDeletionGenerator::BlockDeletionGenerator(), BlockWeightedPartitioner::BlockWeightedPartitioner(), BoundsBase::BoundsBase(), BreakMeshByBlockGenerator::BreakMeshByBlockGenerator(), BuildArrayVariableAux::BuildArrayVariableAux(), PiecewiseTabularBase::buildFromFile(), CartesianGridDivision::CartesianGridDivision(), UserObjectInterface::castUserObject(), checkComponent(), MeshGenerator::checkGetMesh(), PostprocessorInterface::checkParam(), PhysicsBase::checkParamsBothSetOrNotSet(), Checkpoint::Checkpoint(), PhysicsBase::checkSecondParamSetOnlyIfFirstOneTrue(), Coupleable::checkVar(), MultiAppTransfer::checkVariable(), PhysicsBase::checkVectorParamsSameLength(), CircularBoundaryCorrectionGenerator::CircularBoundaryCorrectionGenerator(), CircularBoundaryCorrectionGenerator::circularCenterCalculator(), MultiAppGeneralFieldTransfer::closestToPosition(), CoarsenBlockGenerator::CoarsenBlockGenerator(), CombinerGenerator::CombinerGenerator(), CompositionDT::CompositionDT(), ConcentricCircleMeshGenerator::ConcentricCircleMeshGenerator(), LibtorchNeuralNetControl::conditionalParameterError(), ConstantVectorPostprocessor::ConstantVectorPostprocessor(), ContainsPointAux::ContainsPointAux(), CopyValueAux::CopyValueAux(), Coupleable::Coupleable(), CoupledForceTempl< is_ad >::CoupledForceTempl(), CoupledValueFunctionMaterialTempl< is_ad >::CoupledValueFunctionMaterialTempl(), MultiApp::createApp(), MeshGeneratorSystem::createMeshGenerator(), CylindricalGridDivision::CylindricalGridDivision(), ConstantReporter::declareConstantReporterValues(), AccumulateReporter::declareLateValues(), DGKernel::DGKernel(), DGKernelBase::DGKernelBase(), DGLowerDKernel::DGLowerDKernel(), DiffusionFluxAux::DiffusionFluxAux(), DomainUserObject::DomainUserObject(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), ElementExtremeFunctorValueTempl< is_ad >::ElementExtremeFunctorValueTempl(), ElementExtremeValue::ElementExtremeValue(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementLengthAux::ElementLengthAux(), ElementLpNormAux::ElementLpNormAux(), ElementValueSampler::ElementValueSampler(), ElementVectorL2Error::ElementVectorL2Error(), ReporterPointSource::errorCheck(), MultiAppNearestNodeTransfer::execute(), MultiAppUserObjectTransfer::execute(), ExtraElementIDAux::ExtraElementIDAux(), ExtraElementIntegerDivision::ExtraElementIntegerDivision(), FEProblemSolve::FEProblemSolve(), FillBetweenCurvesGenerator::FillBetweenCurvesGenerator(), FillBetweenSidesetsGenerator::FillBetweenSidesetsGenerator(), ReporterPointSource::fillPoint(), SpatialUserObjectVectorPostprocessor::fillPoints(), CombinerGenerator::fillPositions(), MultiApp::fillPositions(), InternalSideIndicator::finalize(), FixedPointSolve::FixedPointSolve(), ForcingFunctionAux::ForcingFunctionAux(), FunctionArrayAux::FunctionArrayAux(), FunctionValuePostprocessor::FunctionValuePostprocessor(), FunctorADConverterTempl< T >::FunctorADConverterTempl(), FunctorAux::FunctorAux(), FunctorBinnedValuesDivision::FunctorBinnedValuesDivision(), FunctorElementalGradientAuxTempl< is_ad >::FunctorElementalGradientAuxTempl(), FunctorPositions::FunctorPositions(), FunctorVectorElementalAuxTempl< is_ad >::FunctorVectorElementalAuxTempl(), FVFluxBC::FVFluxBC(), FVInterfaceKernel::FVInterfaceKernel(), FVOneVarDiffusionInterface::FVOneVarDiffusionInterface(), FVTwoVarContinuityConstraint::FVTwoVarContinuityConstraint(), BoundaryDeletionGenerator::generate(), ElementsToTetrahedronsConverter::generate(), ExtraNodesetGenerator::generate(), FillBetweenSidesetsGenerator::generate(), PlaneIDMeshGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), AddMetaDataGenerator::generate(), FillBetweenCurvesGenerator::generate(), BlockToMeshConverterGenerator::generate(), BreakBoundaryOnSubdomainGenerator::generate(), CutMeshByPlaneGenerator::generate(), FlipSidesetGenerator::generate(), GeneratedMeshGenerator::generate(), CoarsenBlockGenerator::generate(), ParsedSubdomainMeshGenerator::generate(), RefineBlockGenerator::generate(), RefineSidesetGenerator::generate(), BlockDeletionGenerator::generate(), BreakMeshByBlockGenerator::generate(), CombinerGenerator::generate(), MeshCollectionGenerator::generate(), MeshExtruderGenerator::generate(), ParsedCurveGenerator::generate(), StackGenerator::generate(), StitchedMeshGenerator::generate(), AdvancedExtruderGenerator::generate(), BreakMeshByElementGenerator::generate(), CircularBoundaryCorrectionGenerator::generate(), XYDelaunayGenerator::generate(), XYMeshLineCutter::generate(), PatternedMeshGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), GenericFunctorGradientMaterialTempl< is_ad >::GenericFunctorGradientMaterialTempl(), GenericFunctorMaterialTempl< is_ad >::GenericFunctorMaterialTempl(), GenericVectorFunctorMaterialTempl< is_ad >::GenericVectorFunctorMaterialTempl(), PropertyReadFile::getBlockData(), PropertyReadFile::getData(), Sampler::getGlobalSamples(), MultiAppNearestNodeTransfer::getLocalEntitiesAndComponents(), Sampler::getLocalSamples(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), Sampler::getNextLocalRow(), PostprocessorInterface::getPostprocessorNameInternal(), PostprocessorInterface::getPostprocessorValueInternal(), MultiAppNearestNodeTransfer::getTargetLocalNodes(), UserObjectInterface::getUserObjectBase(), UserObjectInterface::getUserObjectName(), HFEMDirichletBC::HFEMDirichletBC(), MultiApp::init(), DistributedPositions::initialize(), BlockWeightedPartitioner::initialize(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), PhysicsBase::initializePhysics(), MultiAppCloneReporterTransfer::initialSetup(), ReferenceResidualProblem::initialSetup(), MultiAppVariableValueSamplePostprocessorTransfer::initialSetup(), MultiAppGeneralFieldNearestLocationTransfer::initialSetup(), MultiAppDofCopyTransfer::initialSetup(), HistogramVectorPostprocessor::initialSetup(), PiecewiseConstantFromCSV::initialSetup(), LibtorchControlValuePostprocessor::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), AddMetaDataGenerator::inputChecker(), IntegratedBC::IntegratedBC(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceValueUserObjectAux::InterfaceValueUserObjectAux(), InterpolatedStatefulMaterialTempl< T >::InterpolatedStatefulMaterialTempl(), InversePowerMethod::InversePowerMethod(), IterationAdaptiveDT::IterationAdaptiveDT(), MultiApp::keepSolutionDuringRestore(), Kernel::Kernel(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), LinearCombinationFunction::LinearCombinationFunction(), LowerDIntegratedBC::LowerDIntegratedBC(), PNGOutput::makeMeshFunc(), MatCoupledForce::MatCoupledForce(), MaterialADConverterTempl< T >::MaterialADConverterTempl(), MaterialFunctorConverterTempl< T >::MaterialFunctorConverterTempl(), PatternedMeshGenerator::mergeSubdomainNameMaps(), MeshCollectionGenerator::MeshCollectionGenerator(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MeshDivisionAux::MeshDivisionAux(), MeshGenerator::MeshGenerator(), MooseLinearVariableFV< Real >::MooseLinearVariableFV(), MoosePreconditioner::MoosePreconditioner(), MooseVariableBase::MooseVariableBase(), MortarConstraintBase::MortarConstraintBase(), MortarNodalAuxKernelTempl< ComputeValueType >::MortarNodalAuxKernelTempl(), MultiApp::moveApp(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppCloneReporterTransfer::MultiAppCloneReporterTransfer(), MultiAppGeneralFieldNearestLocationTransfer::MultiAppGeneralFieldNearestLocationTransfer(), MultiAppGeneralFieldShapeEvaluationTransfer::MultiAppGeneralFieldShapeEvaluationTransfer(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppGeometricInterpolationTransfer::MultiAppGeometricInterpolationTransfer(), MultiAppNearestNodeTransfer::MultiAppNearestNodeTransfer(), MultiAppPostprocessorInterpolationTransfer::MultiAppPostprocessorInterpolationTransfer(), MultiAppPostprocessorToAuxScalarTransfer::MultiAppPostprocessorToAuxScalarTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppProjectionTransfer::MultiAppProjectionTransfer(), MultiAppReporterTransfer::MultiAppReporterTransfer(), MultiAppScalarToAuxScalarTransfer::MultiAppScalarToAuxScalarTransfer(), MultiAppShapeEvaluationTransfer::MultiAppShapeEvaluationTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), MultiAppVariableValueSampleTransfer::MultiAppVariableValueSampleTransfer(), MultiAppVectorPostprocessorTransfer::MultiAppVectorPostprocessorTransfer(), NestedDivision::NestedDivision(), NodalBC::NodalBC(), NodalEqualValueConstraint::NodalEqualValueConstraint(), NodalKernel::NodalKernel(), NodalPatchRecoveryAux::NodalPatchRecoveryAux(), NodalValueSampler::NodalValueSampler(), Output::Output(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedElementDeletionGenerator::ParsedElementDeletionGenerator(), ParsedFunctorMaterialTempl< is_ad >::ParsedFunctorMaterialTempl(), ParsedNodeTransformGenerator::ParsedNodeTransformGenerator(), PatchMeshGenerator::PatchMeshGenerator(), PatternedMeshGenerator::PatternedMeshGenerator(), PenaltyPeriodicSegmentalConstraint::PenaltyPeriodicSegmentalConstraint(), PeriodicSegmentalConstraint::PeriodicSegmentalConstraint(), PIDTransientControl::PIDTransientControl(), PlaneDeletionGenerator::PlaneDeletionGenerator(), PlaneIDMeshGenerator::PlaneIDMeshGenerator(), PointwiseRenormalizeVector::PointwiseRenormalizeVector(), PolyLineMeshGenerator::PolyLineMeshGenerator(), ReporterInterface::possiblyCheckHasReporter(), VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor(), LibmeshPartitioner::prepareBlocksForSubdomainPartitioner(), ProjectedMaterialPropertyNodalPatchRecoveryAux::ProjectedMaterialPropertyNodalPatchRecoveryAux(), PropertyReadFile::PropertyReadFile(), RandomIC::RandomIC(), MultiApp::readCommandLineArguments(), PropertyReadFile::readData(), SolutionUserObject::readXda(), ReferenceResidualProblem::ReferenceResidualProblem(), RefineBlockGenerator::RefineBlockGenerator(), RefineSidesetGenerator::RefineSidesetGenerator(), RenameBlockGenerator::RenameBlockGenerator(), RenameBoundaryGenerator::RenameBoundaryGenerator(), ReporterPointSource::ReporterPointSource(), SecondTimeDerivativeAux::SecondTimeDerivativeAux(), MooseMesh::setPartitioner(), SideSetsGeneratorBase::setup(), TimeSequenceStepperBase::setupSequence(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), SingleRankPartitioner::SingleRankPartitioner(), SphericalGridDivision::SphericalGridDivision(), SymmetryTransformGenerator::SymmetryTransformGenerator(), Terminator::Terminator(), TimeDerivativeAux::TimeDerivativeAux(), Transfer::Transfer(), TransformGenerator::TransformGenerator(), TransientMultiApp::TransientMultiApp(), ParsedCurveGenerator::tSectionSpaceDefiner(), UniqueExtraIDMeshGenerator::UniqueExtraIDMeshGenerator(), UserObject::UserObject(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), VectorBodyForce::VectorBodyForce(), VectorFunctionDirichletBC::VectorFunctionDirichletBC(), VectorFunctionIC::VectorFunctionIC(), VolumeAux::VolumeAux(), XYDelaunayGenerator::XYDelaunayGenerator(), and XYMeshLineCutter::XYMeshLineCutter().

238 {
239  Moose::show_trace = false;
240  _moose_base.callMooseError(paramErrorMsg(param, std::forward<Args>(args)...),
241  /* with_prefix = */ false);
242  Moose::show_trace = true;
243 }
bool show_trace
Set to true (the default) to print the stack trace with error and warning messages - false to omit it...
Definition: Moose.C:649
const MooseBase & _moose_base
The MooseBase object that inherits this class.
std::string paramErrorMsg(const std::string &param, Args... args) const
void callMooseError(std::string msg, const bool with_prefix) const
Calls moose error with the message msg.
Definition: MooseBase.C:33

◆ parameters()

const InputParameters& MooseBaseParameterInterface::parameters ( ) const
inlineinherited

Get the parameters of the object.

Returns
The parameters of the object

Definition at line 62 of file MooseBaseParameterInterface.h.

Referenced by SetupDebugAction::act(), CommonOutputAction::act(), Action::Action(), FEProblemBase::addAnyRedistributers(), FEProblemBase::addAuxKernel(), FEProblemBase::addAuxScalarKernel(), DisplacedProblem::addAuxVariable(), FEProblemBase::addBoundaryCondition(), FEProblemBase::addConstraint(), FEProblemBase::addDamper(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), FEProblemBase::addFunction(), FEProblemBase::addFunctorMaterial(), FEProblemBase::addFVBC(), FEProblemBase::addFVInitialCondition(), FEProblemBase::addFVInterfaceKernel(), FEProblemBase::addFVKernel(), FEProblemBase::addIndicator(), FEProblemBase::addInitialCondition(), FEProblemBase::addInterfaceKernel(), FEProblemBase::addInterfaceMaterial(), FEProblemBase::addKernel(), FEProblemBase::addLinearFVBC(), FEProblemBase::addLinearFVKernel(), FEProblem::addLineSearch(), FEProblemBase::addMarker(), FEProblemBase::addMaterial(), FEProblemBase::addMaterialHelper(), FEProblemBase::addMeshDivision(), FEProblemBase::addMultiApp(), FEProblemBase::addNodalKernel(), FEProblemBase::addObject(), FEProblemBase::addObjectParamsHelper(), FEProblemBase::addOutput(), FEProblemBase::addPostprocessor(), FEProblemBase::addPredictor(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addScalarKernel(), FEProblemBase::addTimeIntegrator(), FEProblemBase::addTransfer(), FEProblemBase::addUserObject(), DisplacedProblem::addVariable(), FEProblemBase::addVectorPostprocessor(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), AdvancedOutput::AdvancedOutput(), ADVectorFunctionDirichletBC::ADVectorFunctionDirichletBC(), AnnularMesh::AnnularMesh(), AnnularMeshGenerator::AnnularMeshGenerator(), assemble_l2(), Moose::assemble_matrix(), PhysicsBase::assertParamDefined(), Action::associateWithParameter(), AuxKernelTempl< Real >::AuxKernelTempl(), AuxScalarKernel::AuxScalarKernel(), BoundsBase::BoundsBase(), MooseMesh::buildTypedMesh(), UserObjectInterface::castUserObject(), PostprocessorInterface::checkParam(), PhysicsBase::checkSecondParamSetOnlyIfFirstOneTrue(), OversampleOutput::cloneMesh(), Moose::compute_bounds(), Moose::compute_jacobian(), Moose::compute_nearnullspace(), Moose::compute_nullspace(), Moose::compute_postcheck(), Moose::compute_transpose_nullspace(), LibtorchNeuralNetControl::conditionalParameterError(), Console::Console(), CommonOutputAction::create(), MultiApp::createApp(), Postprocessor::declareValue(), DumpObjectsProblem::deduceNecessaryParameters(), DumpObjectsProblem::dumpObjectHelper(), EigenProblem::EigenProblem(), Eigenvalue::Eigenvalue(), Executor::Executor(), Exodus::Exodus(), FEProblem::FEProblem(), FEProblemBase::FEProblemBase(), FixedPointSolve::FixedPointSolve(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), GapValueAux::GapValueAux(), ParsedSubdomainMeshGenerator::generate(), MooseBaseParameterInterface::getCheckedPointerParam(), ActionWarehouse::getCurrentActionName(), ExecutorInterface::getExecutor(), Material::getMaterial(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), UserObjectInterface::getUserObjectName(), VectorPostprocessorInterface::getVectorPostprocessorName(), GhostingUserObject::GhostingUserObject(), AttribSystem::initFrom(), AttribDisplaced::initFrom(), BlockRestrictable::initializeBlockRestrictable(), FullSolveMultiApp::initialSetup(), FEProblemBase::initNullSpaceVectors(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceIntegralVariableValuePostprocessor::InterfaceIntegralVariableValuePostprocessor(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), isValid(), IterationAdaptiveDT::IterationAdaptiveDT(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), MaterialVectorPostprocessor::MaterialVectorPostprocessor(), MooseObject::MooseObject(), MooseVariableInterface< Real >::MooseVariableInterface(), MultiApp::MultiApp(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), NodeFaceConstraint(), OverlayMeshGenerator::OverlayMeshGenerator(), PatchMeshGenerator::PatchMeshGenerator(), PenetrationAux::PenetrationAux(), PicardSolve::PicardSolve(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), ProjectedStatefulMaterialStorageAction::processProperty(), PropertyReadFile::PropertyReadFile(), PseudoTimestep::PseudoTimestep(), RandomIC::RandomIC(), InputParameterWarehouse::removeInputParameters(), OutputWarehouse::resetFileBase(), FEProblem::setInputParametersFEProblem(), FEProblemBase::setInputParametersFEProblem(), SideSetsGeneratorBase::setup(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), SteffensenSolve::SteffensenSolve(), DumpObjectsProblem::stringifyParameters(), TaggingInterface::TaggingInterface(), Transfer::Transfer(), Transient::Transient(), VectorBodyForce::VectorBodyForce(), VectorFunctionDirichletBC::VectorFunctionDirichletBC(), VectorFunctionIC::VectorFunctionIC(), and VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl().

62 { return _pars; }
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

◆ paramInfo()

template<typename... Args>
void MooseBaseParameterInterface::paramInfo ( const std::string &  param,
Args...  args 
) const
inherited

Emits an informational message prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message.

If this object's parameters were not created directly by the Parser, then this function falls back to the normal behavior of mooseInfo - only printing a message using the given args.

Definition at line 254 of file MooseBaseParameterInterface.h.

Referenced by TransientMultiApp::TransientMultiApp().

255 {
256  mooseInfo(paramErrorMsg(param, std::forward<Args>(args)...));
257 }
void mooseInfo(Args &&... args)
Emit an informational message with the given stringified, concatenated args.
Definition: MooseError.h:366
std::string paramErrorMsg(const std::string &param, Args... args) const

◆ paramWarning()

template<typename... Args>
void MooseBaseParameterInterface::paramWarning ( const std::string &  param,
Args...  args 
) const
inherited

Emits a warning prefixed with the file and line number of the given param (from the input file) along with the full parameter path+name followed by the given args as the message.

If this object's parameters were not created directly by the Parser, then this function falls back to the normal behavior of mooseWarning - only printing a message using the given args.

Definition at line 247 of file MooseBaseParameterInterface.h.

Referenced by MultiAppNearestNodeTransfer::execute(), FEProblemSolve::FEProblemSolve(), UniqueExtraIDMeshGenerator::generate(), PlaneIDMeshGenerator::generate(), Terminator::initialSetup(), and MooseMesh::MooseMesh().

248 {
249  mooseWarning(paramErrorMsg(param, std::forward<Args>(args)...));
250 }
void mooseWarning(Args &&... args)
Emit a warning message with the given stringified, concatenated args.
Definition: MooseError.h:333
std::string paramErrorMsg(const std::string &param, Args... args) const

◆ precalculateJacobian()

virtual void ResidualObject::precalculateJacobian ( )
inlineprotectedvirtualinherited

◆ precalculateOffDiagJacobian()

virtual void ResidualObject::precalculateOffDiagJacobian ( unsigned  int)
inlineprotectedvirtualinherited

◆ precalculateResidual()

virtual void ResidualObject::precalculateResidual ( )
inlineprotectedvirtualinherited

◆ prepareMatrixTag() [1/2]

void TaggingInterface::prepareMatrixTag ( Assembly assembly,
unsigned int  ivar,
unsigned int  jvar 
)
protectedinherited

Prepare data for computing element jacobian according to the active tags.

Jacobian blocks for different tags will be extracted from Assembly. A local Jacobian will be zeroed. It should be called right before the local element matrix is computed.

Definition at line 276 of file TaggingInterface.C.

Referenced by DGKernel::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), TimeDerivative::computeJacobian(), VectorTimeDerivative::computeJacobian(), ScalarKernel::computeJacobian(), MassLumpedTimeDerivative::computeJacobian(), ODEKernel::computeJacobian(), Kernel::computeJacobian(), VectorKernel::computeJacobian(), ArrayKernel::computeJacobian(), VectorIntegratedBC::computeJacobian(), IntegratedBC::computeJacobian(), ArrayIntegratedBC::computeJacobian(), EigenKernel::computeJacobian(), NodalEqualValueConstraint::computeJacobian(), NonlocalIntegratedBC::computeJacobian(), KernelGrad::computeJacobian(), KernelValue::computeJacobian(), NonlocalKernel::computeJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), VectorKernel::computeOffDiagJacobian(), Kernel::computeOffDiagJacobian(), ArrayKernel::computeOffDiagJacobian(), EigenKernel::computeOffDiagJacobian(), VectorIntegratedBC::computeOffDiagJacobian(), IntegratedBC::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), NonlocalIntegratedBC::computeOffDiagJacobian(), NonlocalKernel::computeOffDiagJacobian(), KernelValue::computeOffDiagJacobian(), KernelGrad::computeOffDiagJacobian(), ODEKernel::computeOffDiagJacobianScalar(), VectorKernel::computeOffDiagJacobianScalar(), ArrayKernel::computeOffDiagJacobianScalar(), VectorIntegratedBC::computeOffDiagJacobianScalar(), IntegratedBC::computeOffDiagJacobianScalar(), Kernel::computeOffDiagJacobianScalar(), ArrayIntegratedBC::computeOffDiagJacobianScalar(), ScalarLagrangeMultiplier::computeOffDiagJacobianScalar(), and ConservativeAdvection::fullUpwind().

277 {
278  _ke_blocks.resize(_matrix_tags.size());
279  mooseAssert(_matrix_tags.size() >= 1, "we need at least one active tag");
280  auto mat_vector = _matrix_tags.begin();
281  for (MooseIndex(_matrix_tags) i = 0; i < _matrix_tags.size(); i++, ++mat_vector)
282  _ke_blocks[i] = &assembly.jacobianBlock(ivar, jvar, Assembly::LocalDataKey{}, *mat_vector);
283 
284  _local_ke.resize(_ke_blocks[0]->m(), _ke_blocks[0]->n());
285 }
DenseMatrix< Number > & jacobianBlock(unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag)
Get local Jacobian block for a pair of variables and a tag.
Definition: Assembly.h:1092
DenseMatrix< Number > _local_ke
Holds local Jacobian entries as they are accumulated by this Kernel.
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
void resize(const unsigned int new_m, const unsigned int new_n)
std::vector< DenseMatrix< Number > * > _ke_blocks
Kernel blocks Vectors For each Tag.
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ prepareMatrixTag() [2/2]

void TaggingInterface::prepareMatrixTag ( Assembly assembly,
unsigned int  ivar,
unsigned int  jvar,
DenseMatrix< Number > &  k 
) const
protectedinherited

Definition at line 288 of file TaggingInterface.C.

292 {
293  mooseAssert(!_matrix_tags.empty(), "No matrix tags exist");
294  const auto & ij_mat =
295  assembly.jacobianBlock(ivar, jvar, Assembly::LocalDataKey{}, *_matrix_tags.begin());
296  k.resize(ij_mat.m(), ij_mat.n());
297 }
DenseMatrix< Number > & jacobianBlock(unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag)
Get local Jacobian block for a pair of variables and a tag.
Definition: Assembly.h:1092
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
void resize(const unsigned int new_m, const unsigned int new_n)
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ prepareMatrixTagLower()

void TaggingInterface::prepareMatrixTagLower ( Assembly assembly,
unsigned int  ivar,
unsigned int  jvar,
Moose::ConstraintJacobianType  type 
)
protectedinherited

Prepare data for computing the jacobian according to the active tags for mortar.

Jacobian blocks for different tags will be extracted from Assembly. A local Jacobian will be zeroed. It should be called right before the local element matrix is computed.

Definition at line 344 of file TaggingInterface.C.

Referenced by MortarConstraint::computeJacobian(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayDGLowerDKernel::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), DGLowerDKernel::computeOffDiagLowerDJacobian(), and ArrayDGLowerDKernel::computeOffDiagLowerDJacobian().

348 {
349  _ke_blocks.resize(_matrix_tags.size());
350  mooseAssert(_matrix_tags.size() >= 1, "we need at least one active tag");
351  auto mat_vector = _matrix_tags.begin();
352  for (MooseIndex(_matrix_tags) i = 0; i < _matrix_tags.size(); i++, ++mat_vector)
353  _ke_blocks[i] =
354  &assembly.jacobianBlockMortar(type, ivar, jvar, Assembly::LocalDataKey{}, *mat_vector);
355 
356  _local_ke.resize(_ke_blocks[0]->m(), _ke_blocks[0]->n());
357 }
DenseMatrix< Number > _local_ke
Holds local Jacobian entries as they are accumulated by this Kernel.
DenseMatrix< Number > & jacobianBlockMortar(Moose::ConstraintJacobianType type, unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag)
Returns the jacobian block for the given mortar Jacobian type.
Definition: Assembly.C:3149
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
void resize(const unsigned int new_m, const unsigned int new_n)
std::vector< DenseMatrix< Number > * > _ke_blocks
Kernel blocks Vectors For each Tag.
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ prepareMatrixTagNeighbor() [1/2]

void TaggingInterface::prepareMatrixTagNeighbor ( Assembly assembly,
unsigned int  ivar,
unsigned int  jvar,
Moose::DGJacobianType  type 
)
protectedinherited

Prepare data for computing element jacobian according to the active tags for DG and interface kernels.

Jacobian blocks for different tags will be extracted from Assembly. A local Jacobian will be zeroed. It should be called right before the local element matrix is computed.

Definition at line 315 of file TaggingInterface.C.

Referenced by DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), NodeElemConstraint::computeJacobian(), computeJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), NodeElemConstraint::computeOffDiagJacobian(), and computeOffDiagJacobian().

319 {
320  _ke_blocks.resize(_matrix_tags.size());
321  mooseAssert(_matrix_tags.size() >= 1, "we need at least one active tag");
322  auto mat_vector = _matrix_tags.begin();
323  for (MooseIndex(_matrix_tags) i = 0; i < _matrix_tags.size(); i++, ++mat_vector)
324  _ke_blocks[i] =
325  &assembly.jacobianBlockNeighbor(type, ivar, jvar, Assembly::LocalDataKey{}, *mat_vector);
326 
327  _local_ke.resize(_ke_blocks[0]->m(), _ke_blocks[0]->n());
328 }
DenseMatrix< Number > & jacobianBlockNeighbor(Moose::DGJacobianType type, unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag)
Get local Jacobian block of a DG Jacobian type for a pair of variables and a tag. ...
Definition: Assembly.C:3108
DenseMatrix< Number > _local_ke
Holds local Jacobian entries as they are accumulated by this Kernel.
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
void resize(const unsigned int new_m, const unsigned int new_n)
std::vector< DenseMatrix< Number > * > _ke_blocks
Kernel blocks Vectors For each Tag.
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ prepareMatrixTagNeighbor() [2/2]

void TaggingInterface::prepareMatrixTagNeighbor ( Assembly assembly,
unsigned int  ivar,
unsigned int  jvar,
Moose::DGJacobianType  type,
DenseMatrix< Number > &  k 
) const
protectedinherited

Definition at line 331 of file TaggingInterface.C.

336 {
337  mooseAssert(!_matrix_tags.empty(), "No matrix tags exist");
338  const auto & ij_mat = assembly.jacobianBlockNeighbor(
339  type, ivar, jvar, Assembly::LocalDataKey{}, *_matrix_tags.begin());
340  k.resize(ij_mat.m(), ij_mat.n());
341 }
DenseMatrix< Number > & jacobianBlockNeighbor(Moose::DGJacobianType type, unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag)
Get local Jacobian block of a DG Jacobian type for a pair of variables and a tag. ...
Definition: Assembly.C:3108
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
void resize(const unsigned int new_m, const unsigned int new_n)
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ prepareMatrixTagNonlocal()

void TaggingInterface::prepareMatrixTagNonlocal ( Assembly assembly,
unsigned int  ivar,
unsigned int  jvar 
)
protectedinherited

Prepare data for computing nonlocal element jacobian according to the active tags.

Jacobian blocks for different tags will be extracted from Assembly. A nonlocal Jacobian will be zeroed. It should be called right before the nonlocal element matrix is computed.

Definition at line 300 of file TaggingInterface.C.

Referenced by NonlocalIntegratedBC::computeNonlocalJacobian(), NonlocalKernel::computeNonlocalJacobian(), NonlocalKernel::computeNonlocalOffDiagJacobian(), and NonlocalIntegratedBC::computeNonlocalOffDiagJacobian().

303 {
304  _ke_blocks.resize(_matrix_tags.size());
305  mooseAssert(_matrix_tags.size() >= 1, "we need at least one active tag");
306  auto mat_vector = _matrix_tags.begin();
307  for (MooseIndex(_matrix_tags) i = 0; i < _matrix_tags.size(); i++, ++mat_vector)
308  _ke_blocks[i] =
309  &assembly.jacobianBlockNonlocal(ivar, jvar, Assembly::LocalDataKey{}, *mat_vector);
310 
311  _nonlocal_ke.resize(_ke_blocks[0]->m(), _ke_blocks[0]->n());
312 }
DenseMatrix< Number > & jacobianBlockNonlocal(unsigned int ivar, unsigned int jvar, LocalDataKey, TagID tag)
Get local Jacobian block from non-local contribution for a pair of variables and a tag...
Definition: Assembly.h:1103
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
void resize(const unsigned int new_m, const unsigned int new_n)
std::vector< DenseMatrix< Number > * > _ke_blocks
Kernel blocks Vectors For each Tag.
DenseMatrix< Number > _nonlocal_ke
Holds nonlocal Jacobian entries as they are accumulated by this Kernel.
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ prepareNeighborShapes()

void NeighborResidualObject::prepareNeighborShapes ( unsigned int  var_num)
inherited

Prepare neighbor shape functions.

Parameters
var_numThe variable number whose neighbor shape functions should be prepared

Definition at line 24 of file NeighborResidualObject.C.

Referenced by ComputeJacobianThread::compute().

25 {
27 }
virtual void prepareNeighborShapes(unsigned int var, const THREAD_ID tid)=0
THREAD_ID _tid
The thread ID for this kernel.
SubProblem & _subproblem
Reference to this kernel&#39;s SubProblem.

◆ prepareShapes()

void ResidualObject::prepareShapes ( unsigned int  var_num)
virtualinherited

Prepare shape functions.

Parameters
var_numThe variable number whose shape functions should be prepared

Reimplemented in DGKernelBase, InterfaceKernelBase, and IntegratedBCBase.

Definition at line 60 of file ResidualObject.C.

Referenced by ComputeJacobianThread::compute(), ComputeFullJacobianThread::computeOnElement(), and Kernel::computeResidualAndJacobian().

61 {
62  _subproblem.prepareShapes(var_num, _tid);
63 }
virtual void prepareShapes(unsigned int var, const THREAD_ID tid)=0
THREAD_ID _tid
The thread ID for this kernel.
SubProblem & _subproblem
Reference to this kernel&#39;s SubProblem.

◆ prepareVectorTag() [1/2]

void TaggingInterface::prepareVectorTag ( Assembly assembly,
unsigned int  ivar 
)
protectedinherited

Prepare data for computing element residual according to active tags.

Residual blocks for different tags will be extracted from Assembly. A local residual will be zeroed. It should be called right before the local element vector is computed.

Definition at line 189 of file TaggingInterface.C.

Referenced by FVInterfaceKernel::addResidual(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), ScalarKernel::computeResidual(), Kernel::computeResidual(), VectorKernel::computeResidual(), ArrayKernel::computeResidual(), TimeKernel::computeResidual(), ODETimeKernel::computeResidual(), ODEKernel::computeResidual(), ADScalarKernel::computeResidual(), VectorTimeKernel::computeResidual(), IntegratedBC::computeResidual(), VectorIntegratedBC::computeResidual(), EigenKernel::computeResidual(), ArrayIntegratedBC::computeResidual(), NodalEqualValueConstraint::computeResidual(), ADMortarConstraint::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidual(), FVFluxBC::computeResidual(), FVBoundaryScalarLagrangeMultiplierConstraint::computeResidual(), MortarConstraint::computeResidual(), KernelGrad::computeResidual(), KernelValue::computeResidual(), FVElementalKernel::computeResidual(), NodeElemConstraint::computeResidual(), FVFluxKernel::computeResidual(), computeResidual(), and ConservativeAdvection::fullUpwind().

190 {
192 }
std::set< TagID > _abs_vector_tags
The absolute value residual tag ids.
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.
void prepareVectorTagInternal(Assembly &assembly, unsigned int ivar, const std::set< TagID > &vector_tags, const std::set< TagID > &absolute_value_vector_tags)
Prepare data for computing element residual according to the specified tags Residual blocks for diffe...

◆ prepareVectorTag() [2/2]

void TaggingInterface::prepareVectorTag ( Assembly assembly,
unsigned int  ivar,
ResidualTagType  tag_type 
)
protectedinherited

Prepare vector tags in a reference residual problem context.

Parameters
AssemblyThe assembly object that we obtain the local residual blocks from
ivarThe variable which we are retrieving the local residual blocks for
ref_problemA pointer to a reference residual problem. This can be a nullptr
tag_typeWhat type of tags to prepare

Definition at line 195 of file TaggingInterface.C.

198 {
199  if (tag_type == ResidualTagType::NonReference)
201  else
203 }
std::set< TagID > _ref_abs_vector_tags
A set of either size 1 or 0.
std::set< TagID > _ref_vector_tags
A set of either size 1 or 0.
std::set< TagID > _non_ref_abs_vector_tags
A set to hold absolute value vector tags excluding the reference residual tag.
std::set< TagID > _non_ref_vector_tags
A set to hold vector tags excluding the reference residual tag.
void prepareVectorTagInternal(Assembly &assembly, unsigned int ivar, const std::set< TagID > &vector_tags, const std::set< TagID > &absolute_value_vector_tags)
Prepare data for computing element residual according to the specified tags Residual blocks for diffe...

◆ prepareVectorTagLower()

void TaggingInterface::prepareVectorTagLower ( Assembly assembly,
unsigned int  ivar 
)
protectedinherited

Prepare data for computing the residual according to active tags for mortar constraints.

Residual blocks for different tags will be extracted from Assembly. A local residual will be zeroed. It should be called right before the local element vector is computed.

Definition at line 254 of file TaggingInterface.C.

Referenced by DGLowerDKernel::computeLowerDResidual(), ArrayDGLowerDKernel::computeLowerDResidual(), LowerDIntegratedBC::computeResidual(), ArrayLowerDIntegratedBC::computeResidual(), ADMortarConstraint::computeResidual(), and MortarConstraint::computeResidual().

255 {
256  _re_blocks.resize(_vector_tags.size());
257  mooseAssert(_vector_tags.size() >= 1, "we need at least one active tag");
258  auto vector_tag = _vector_tags.begin();
259  for (MooseIndex(_vector_tags) i = 0; i < _vector_tags.size(); i++, ++vector_tag)
260  {
261  const VectorTag & tag = _subproblem.getVectorTag(*vector_tag);
262  _re_blocks[i] = &assembly.residualBlockLower(ivar, Assembly::LocalDataKey{}, tag._type_id);
263  }
264  _local_re.resize(_re_blocks[0]->size());
265 
266  _absre_blocks.resize(_abs_vector_tags.size());
267  vector_tag = _abs_vector_tags.begin();
268  for (MooseIndex(_abs_vector_tags) i = 0; i < _abs_vector_tags.size(); i++, ++vector_tag)
269  {
270  const VectorTag & tag = _subproblem.getVectorTag(*vector_tag);
272  }
273 }
SubProblem & _subproblem
SubProblem that contains tag info.
void resize(const unsigned int n)
TagTypeID _type_id
The index for this tag into a vector that contains tags of only its type ordered by ID...
Definition: VectorTag.h:45
std::vector< DenseVector< Number > * > _absre_blocks
Residual blocks for absolute value residual tags.
std::vector< DenseVector< Number > * > _re_blocks
Residual blocks Vectors For each Tag.
std::set< TagID > _abs_vector_tags
The absolute value residual tag ids.
DenseVector< Number > & residualBlockLower(unsigned int var_num, LocalDataKey, TagID tag_id)
Get residual block for lower.
Definition: Assembly.h:1083
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.
DenseVector< Number > _local_re
Holds local residual entries as they are accumulated by this Kernel.
Storage for all of the information pretaining to a vector tag.
Definition: VectorTag.h:15
virtual const VectorTag & getVectorTag(const TagID tag_id) const
Get a VectorTag from a TagID.
Definition: SubProblem.C:139
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ prepareVectorTagNeighbor()

void TaggingInterface::prepareVectorTagNeighbor ( Assembly assembly,
unsigned int  ivar 
)
protectedinherited

Prepare data for computing element residual the according to active tags for DG and interface kernels.

Residual blocks for different tags will be extracted from Assembly. A local residual will be zeroed. It should be called right before the local element vector is computed.

Definition at line 231 of file TaggingInterface.C.

Referenced by FVInterfaceKernel::addResidual(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), ADMortarConstraint::computeResidual(), FVFluxBC::computeResidual(), MortarConstraint::computeResidual(), NodeElemConstraint::computeResidual(), FVFluxKernel::computeResidual(), and computeResidual().

232 {
233  _re_blocks.resize(_vector_tags.size());
234  mooseAssert(_vector_tags.size() >= 1, "we need at least one active tag");
235  auto vector_tag = _vector_tags.begin();
236  for (MooseIndex(_vector_tags) i = 0; i < _vector_tags.size(); i++, ++vector_tag)
237  {
238  const VectorTag & tag = _subproblem.getVectorTag(*vector_tag);
240  }
241  _local_re.resize(_re_blocks[0]->size());
242 
243  _absre_blocks.resize(_abs_vector_tags.size());
244  vector_tag = _abs_vector_tags.begin();
245  for (MooseIndex(_abs_vector_tags) i = 0; i < _abs_vector_tags.size(); i++, ++vector_tag)
246  {
247  const VectorTag & tag = _subproblem.getVectorTag(*vector_tag);
248  _absre_blocks[i] =
249  &assembly.residualBlockNeighbor(ivar, Assembly::LocalDataKey{}, tag._type_id);
250  }
251 }
SubProblem & _subproblem
SubProblem that contains tag info.
void resize(const unsigned int n)
TagTypeID _type_id
The index for this tag into a vector that contains tags of only its type ordered by ID...
Definition: VectorTag.h:45
std::vector< DenseVector< Number > * > _absre_blocks
Residual blocks for absolute value residual tags.
std::vector< DenseVector< Number > * > _re_blocks
Residual blocks Vectors For each Tag.
std::set< TagID > _abs_vector_tags
The absolute value residual tag ids.
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.
DenseVector< Number > & residualBlockNeighbor(unsigned int var_num, LocalDataKey, TagID tag_id)
Get local neighbor residual block for a variable and a tag.
Definition: Assembly.h:1074
DenseVector< Number > _local_re
Holds local residual entries as they are accumulated by this Kernel.
Storage for all of the information pretaining to a vector tag.
Definition: VectorTag.h:15
virtual const VectorTag & getVectorTag(const TagID tag_id) const
Get a VectorTag from a TagID.
Definition: SubProblem.C:139
Key structure for APIs adding/caching local element residuals/Jacobians.
Definition: Assembly.h:812

◆ primaryBoundary()

BoundaryID NodeFaceConstraint::primaryBoundary ( ) const
inline

The primary boundary ID for this constraint.

Definition at line 98 of file NodeFaceConstraint.h.

98 { return _primary; }
BoundaryID _primary
Boundary ID for the primary surface.

◆ primaryVariable()

virtual MooseVariable& NodeFaceConstraint::primaryVariable ( )
inlinevirtual

The variable on the Primary side of the domain.

Definition at line 93 of file NodeFaceConstraint.h.

93 { return _primary_var; }
MooseVariable & _primary_var
Primary side variable.

◆ requiresGeometricSearch()

bool GeometricSearchInterface::requiresGeometricSearch ( ) const
inlineinherited

Whether any of this interface's methods have been called, e.g.

whether the object that this interface is for requires geometric search data

Definition at line 65 of file GeometricSearchInterface.h.

bool _requires_geometric_search
Whether any of this interface&#39;s methods have been called, e.g.

◆ residualEnd()

virtual void Constraint::residualEnd ( )
inlinevirtualinherited

Reimplemented in EqualValueEmbeddedConstraint.

Definition at line 32 of file Constraint.h.

32 {}

◆ residualSetup()

void NodeFaceConstraint::residualSetup ( )
overridevirtual

Gets called just before the residual is computed and before this object is asked to do its job.

Reimplemented from SetupInterface.

Definition at line 121 of file NodeFaceConstraint.C.

122 {
124 }
bool _secondary_residual_computed
Whether the secondary residual has been computed.

◆ restartableName()

std::string Restartable::restartableName ( const std::string &  data_name) const
protectedinherited

Gets the name of a piece of restartable data given a data name, adding the system name and object name prefix.

This should only be used in this interface and in testing.

Definition at line 66 of file Restartable.C.

Referenced by Restartable::declareRecoverableData(), and Restartable::declareRestartableDataHelper().

67 {
68  return _restartable_system_name + "/" + _restartable_name + "/" + data_name;
69 }
std::string _restartable_name
The name of the object.
Definition: Restartable.h:243
const std::string _restartable_system_name
The system name this object is in.
Definition: Restartable.h:230

◆ second()

const OutputTools< Real >::VariableSecond & MooseVariableInterface< Real >::second ( )
protectedvirtualinherited

The second derivative of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 278 of file MooseVariableInterface.C.

Referenced by ProjectionAux::elemOnNodeVariableIsDefinedOn().

279 {
280  if (_nodal)
281  mooseError("second derivatives are not defined at nodes");
282 
283  return _variable->secondSln();
284 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable
const FieldVariableSecond & secondSln() const
element seconds

◆ secondaryBoundary()

BoundaryID NodeFaceConstraint::secondaryBoundary ( ) const
inline

The secondary boundary ID for this constraint.

Definition at line 103 of file NodeFaceConstraint.h.

103 { return _secondary; }
BoundaryID _secondary
Boundary ID for the secondary surface.

◆ secondaryResidual()

Real NodeFaceConstraint::secondaryResidual ( ) const

Definition at line 127 of file NodeFaceConstraint.C.

128 {
129  mooseAssert(_secondary_residual_computed,
130  "The secondary residual has not yet been computed, so the value will be garbage!");
131  return _secondary_residual;
132 }
bool _secondary_residual_computed
Whether the secondary residual has been computed.
Real _secondary_residual
The value of the secondary residual.

◆ secondOld()

const OutputTools< Real >::VariableSecond & MooseVariableInterface< Real >::secondOld ( )
protectedvirtualinherited

The old second derivative of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 288 of file MooseVariableInterface.C.

289 {
290  if (_nodal)
291  mooseError("second derivatives are not defined at nodes");
292 
293  return _variable->secondSlnOld();
294 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const FieldVariableSecond & secondSlnOld() const
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable

◆ secondOlder()

const OutputTools< Real >::VariableSecond & MooseVariableInterface< Real >::secondOlder ( )
protectedvirtualinherited

The older second derivative of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 298 of file MooseVariableInterface.C.

299 {
300  if (_nodal)
301  mooseError("second derivatives are not defined at nodes");
302 
303  return _variable->secondSlnOlder();
304 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
const FieldVariableSecond & secondSlnOlder() const
MooseVariableFE< Real > * _variable

◆ secondPhi()

const OutputTools< Real >::VariablePhiSecond & MooseVariableInterface< Real >::secondPhi ( )
protectedvirtualinherited

The second derivative of the trial function.

Returns
The reference to be stored off and used later.

Definition at line 328 of file MooseVariableInterface.C.

329 {
330  if (_nodal)
331  mooseError("second derivatives are not defined at nodes");
332 
334  mooseError("second order shape function derivatives not available for linear FV variables");
335 
337 }
const VariablePhiSecond & secondPhi() const
Definition: Assembly.h:1278
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseLinearVariableFV< Real > * _linear_fv_variable
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable

◆ secondPhiFace()

const OutputTools< Real >::VariablePhiSecond & MooseVariableInterface< Real >::secondPhiFace ( )
protectedvirtualinherited

The second derivative of the trial function on the current face.

This should be called in e.g. IntegratedBC when you need second derivatives of the trial function function on the boundary.

Returns
The reference to be stored off and used later.

Definition at line 341 of file MooseVariableInterface.C.

342 {
343  if (_nodal)
344  mooseError("second derivatives are not defined at nodes");
345 
347  mooseError("second order shape function derivatives not available for linear FV variables");
348 
350 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseLinearVariableFV< Real > * _linear_fv_variable
bool _nodal
Whether or not this object is acting only at nodes.
const VariablePhiSecond & secondPhiFace(const MooseVariableField< Real > &) const
Definition: Assembly.h:1291
MooseVariableFE< Real > * _variable

◆ secondTest()

const OutputTools< Real >::VariableTestSecond & MooseVariableInterface< Real >::secondTest ( )
protectedvirtualinherited

The second derivative of the test function.

Returns
The reference to be stored off and used later.

Definition at line 308 of file MooseVariableInterface.C.

309 {
310  if (_nodal)
311  mooseError("second derivatives are not defined at nodes");
312 
313  return _variable->secondPhi();
314 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
const FieldVariablePhiSecond & secondPhi() const override final
Return the rank-2 tensor of second derivatives of the variable&#39;s elemental shape functions.
bool _nodal
Whether or not this object is acting only at nodes.
MooseVariableFE< Real > * _variable

◆ secondTestFace()

const OutputTools< Real >::VariableTestSecond & MooseVariableInterface< Real >::secondTestFace ( )
protectedvirtualinherited

The second derivative of the test function on the current face.

This should be called in e.g. IntegratedBC when you need second derivatives of the test function function on the boundary.

Returns
The reference to be stored off and used later.

Definition at line 318 of file MooseVariableInterface.C.

319 {
320  if (_nodal)
321  mooseError("second derivatives are not defined at nodes");
322 
323  return _variable->secondPhiFace();
324 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
bool _nodal
Whether or not this object is acting only at nodes.
const FieldVariablePhiSecond & secondPhiFace() const override final
Return the rank-2 tensor of second derivatives of the variable&#39;s shape functions on an element face...
MooseVariableFE< Real > * _variable

◆ setRandomDataPointer()

void RandomInterface::setRandomDataPointer ( RandomData random_data)
inherited

Definition at line 54 of file RandomInterface.C.

Referenced by FEProblemBase::registerRandomInterface().

55 {
56  _random_data = random_data;
58 }
RandomData * _random_data
MooseRandom * _generator
MooseRandom & getGenerator()
Return the underlying MooseRandom generator object for this data instance.
Definition: RandomData.h:41

◆ setRandomResetFrequency()

void RandomInterface::setRandomResetFrequency ( ExecFlagType  exec_flag)
inherited

This interface should be called from a derived class to enable random number generation in this object.

Definition at line 47 of file RandomInterface.C.

48 {
49  _reset_on = exec_flag;
51 }
void registerRandomInterface(RandomInterface &random_interface, const std::string &name)
ExecFlagType _reset_on
const std::string _ri_name
FEProblemBase & _ri_problem

◆ setResidual() [1/3]

template<typename T >
void TaggingInterface::setResidual ( SystemBase sys,
const T &  residual,
MooseVariableFE< T > &  var 
)
protectedinherited

Set residual using the variables' insertion API.

Definition at line 539 of file TaggingInterface.h.

Referenced by ArrayNodalBC::computeResidual(), VectorNodalBC::computeResidual(), and NodalBC::computeResidual().

540 {
541  for (const auto tag_id : _vector_tags)
542  if (sys.hasVector(tag_id))
543  var.insertNodalValue(sys.getVector(tag_id), residual);
544 }
bool hasVector(const std::string &tag_name) const
Check if the named vector exists in the system.
Definition: SystemBase.C:880
void insertNodalValue(NumericVector< Number > &residual, const OutputData &v)
Write a nodal value to the passed-in solution vector.
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.
virtual NumericVector< Number > & getVector(const std::string &name)
Get a raw NumericVector by name.
Definition: SystemBase.C:889

◆ setResidual() [2/3]

void TaggingInterface::setResidual ( SystemBase sys,
Real  residual,
dof_id_type  dof_index 
)
inlineprotectedinherited

Set residual at a specified degree of freedom index.

Definition at line 547 of file TaggingInterface.h.

548 {
549  for (const auto tag_id : _vector_tags)
550  if (sys.hasVector(tag_id))
551  sys.getVector(tag_id).set(dof_index, residual);
552 }
bool hasVector(const std::string &tag_name) const
Check if the named vector exists in the system.
Definition: SystemBase.C:880
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.
virtual void set(const numeric_index_type i, const Number value)=0
virtual NumericVector< Number > & getVector(const std::string &name)
Get a raw NumericVector by name.
Definition: SystemBase.C:889

◆ setResidual() [3/3]

template<typename SetResidualFunctor >
void TaggingInterface::setResidual ( SystemBase sys,
SetResidualFunctor  set_residual_functor 
)
protectedinherited

Set residuals using the provided functor.

Definition at line 556 of file TaggingInterface.h.

557 {
558  for (const auto tag_id : _vector_tags)
559  if (sys.hasVector(tag_id))
560  set_residual_functor(sys.getVector(tag_id));
561 }
bool hasVector(const std::string &tag_name) const
Check if the named vector exists in the system.
Definition: SystemBase.C:880
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.
virtual NumericVector< Number > & getVector(const std::string &name)
Get a raw NumericVector by name.
Definition: SystemBase.C:889

◆ shouldApply()

virtual bool NodeFaceConstraint::shouldApply ( )
inlinevirtual

Whether or not this constraint should be applied.

Get's called once per secondary node.

Definition at line 72 of file NodeFaceConstraint.h.

72 { return true; }

◆ subdomainSetup()

virtual void Constraint::subdomainSetup ( )
inlinefinaloverridevirtualinherited

Gets called when the subdomain changes (i.e.

in a Jacobian or residual loop) and before this object is asked to do its job

Reimplemented from SetupInterface.

Definition at line 27 of file Constraint.h.

28  {
29  mooseError("subdomain setup for constraints is not implemented");
30  }
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.

◆ subProblem()

const SubProblem& ResidualObject::subProblem ( ) const
inlineinherited

Returns a reference to the SubProblem for which this Kernel is active.

Definition at line 103 of file ResidualObject.h.

103 { return _subproblem; }
SubProblem & _subproblem
Reference to this kernel&#39;s SubProblem.

◆ timestepSetup()

void SetupInterface::timestepSetup ( )
virtualinherited

◆ type()

const std::string& MooseBase::type ( ) const
inlineinherited

Get the type of this class.

Returns
the name of the type of this class

Definition at line 51 of file MooseBase.h.

Referenced by CreateProblemDefaultAction::act(), SetupDebugAction::act(), MaterialDerivativeTestAction::act(), MaterialOutputAction::act(), FEProblemBase::addAuxArrayVariable(), FEProblemBase::addAuxScalarVariable(), FEProblemBase::addAuxVariable(), FEProblemBase::addDistribution(), MooseApp::addExecutor(), MooseApp::addExecutorParams(), FEProblemBase::addFunction(), FEProblemBase::addMeshDivision(), MooseApp::addMeshGenerator(), MeshGenerator::addMeshSubgenerator(), FEProblemBase::addObject(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addTimeIntegrator(), MooseServer::addValuesToList(), DisplacedProblem::addVectorTag(), SubProblem::addVectorTag(), FEProblemBase::advanceMultiApps(), MooseApp::appendMeshGenerator(), PhysicsBase::assertParamDefined(), AuxKernelTempl< Real >::AuxKernelTempl(), FEProblemBase::backupMultiApps(), BoundaryPreservedMarker::BoundaryPreservedMarker(), DistributedRectilinearMeshGenerator::buildCube(), MooseMesh::buildHRefinementAndCoarseningMaps(), MooseMesh::buildPRefinementAndCoarseningMaps(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), PhysicsBase::checkRequiredTasks(), FEProblemBase::computeAuxiliaryKernels(), ADDGKernel::computeElemNeighJacobian(), DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayDGLowerDKernel::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayHFEMDirichletBC::computeLowerDQpJacobian(), ArrayHFEMDiffusion::computeLowerDQpJacobian(), HFEMDirichletBC::computeLowerDQpJacobian(), HFEMDiffusion::computeLowerDQpJacobian(), ArrayHFEMDirichletBC::computeLowerDQpOffDiagJacobian(), HFEMDirichletBC::computeLowerDQpOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDQpOffDiagJacobian(), ArrayDGLowerDKernel::computeLowerDQpOffDiagJacobian(), FEProblemBase::computeMultiAppsDT(), ADDGKernel::computeOffDiagElemNeighJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), DGConvection::computeQpJacobian(), ScalarKernel::computeQpJacobian(), InterfaceDiffusion::computeQpJacobian(), InterfaceReaction::computeQpJacobian(), ArrayDGDiffusion::computeQpJacobian(), CoupledTiedValueConstraint::computeQpJacobian(), TiedValueConstraint::computeQpJacobian(), DGDiffusion::computeQpJacobian(), LinearNodalConstraint::computeQpJacobian(), EqualValueBoundaryConstraint::computeQpJacobian(), EqualValueEmbeddedConstraint::computeQpJacobian(), CoupledTiedValueConstraint::computeQpOffDiagJacobian(), HFEMTestJump::computeQpOffDiagJacobian(), HFEMTrialJump::computeQpOffDiagJacobian(), EqualValueEmbeddedConstraint::computeQpOffDiagJacobian(), ArrayDGKernel::computeQpOffDiagJacobian(), ArrayHFEMDiffusion::computeQpResidual(), DGConvection::computeQpResidual(), HFEMDiffusion::computeQpResidual(), ScalarKernel::computeQpResidual(), InterfaceDiffusion::computeQpResidual(), InterfaceReaction::computeQpResidual(), ADDGAdvection::computeQpResidual(), ArrayDGDiffusion::computeQpResidual(), CoupledTiedValueConstraint::computeQpResidual(), TiedValueConstraint::computeQpResidual(), LinearNodalConstraint::computeQpResidual(), DGDiffusion::computeQpResidual(), ADDGDiffusion::computeQpResidual(), HFEMTrialJump::computeQpResidual(), EqualValueBoundaryConstraint::computeQpResidual(), HFEMTestJump::computeQpResidual(), EqualValueEmbeddedConstraint::computeQpResidual(), FEProblemBase::computeUserObjectByName(), FEProblemBase::computeUserObjects(), FEProblemBase::computeUserObjectsInternal(), BatchMaterial< Tuple, Output, Input >::construct(), DisplacedProblem::createQRules(), FEProblemBase::createQRules(), MooseApp::createRecoverablePerfGraph(), DumpObjectsProblem::deduceNecessaryParameters(), DumpObjectsProblem::dumpObjectHelper(), FEProblemBase::duplicateVariableCheck(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), MooseBase::errorPrefix(), AB2PredictorCorrector::estimateTimeError(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), FEProblemBase::execTransfers(), ActionWarehouse::executeActionsWithAction(), FEProblemBase::finishMultiAppStep(), FVScalarLagrangeMultiplierInterface::FVScalarLagrangeMultiplierInterface(), SubdomainPerElementGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), PatternedMeshGenerator::generate(), MeshGenerator::generateInternal(), MultiAppTransfer::getAppInfo(), TransfiniteMeshGenerator::getEdge(), ElementGenerator::getElemType(), MooseServer::getInputLookupDefinitionNodes(), FEProblemBase::getMaterial(), FEProblemBase::getMaterialData(), MaterialOutputAction::getParams(), ReporterData::getReporterInfo(), Transient::getTimeIntegratorName(), FEProblemBase::getTransfers(), DisplacedProblem::getVectorTags(), SubProblem::getVectorTags(), CommonOutputAction::hasConsole(), FEProblemBase::hasMultiApps(), AdvancedOutput::hasOutput(), FEProblemBase::incrementMultiAppTStep(), AdvancedOutput::initAvailableLists(), FunctorPositions::initialize(), FunctorTimes::initialize(), MultiAppConservativeTransfer::initialSetup(), LinearFVDiffusion::initialSetup(), LinearFVAdvection::initialSetup(), ArrayDGDiffusion::initQpResidual(), AdvancedOutput::initShowHideLists(), RelationshipManager::isType(), FEProblemBase::logAdd(), MaterialFunctorConverterTempl< T >::MaterialFunctorConverterTempl(), MooseObject::MooseObject(), DisplacedProblem::numVectorTags(), SubProblem::numVectorTags(), Console::output(), AdvancedOutput::output(), OversampleOutput::outputStep(), Output::outputStep(), FEProblemBase::outputStep(), MooseServer::parseDocumentForDiagnostics(), ProjectedStatefulMaterialStorageAction::processProperty(), MooseApp::recursivelyCreateExecutors(), SolutionInvalidInterface::registerInvalidSolutionInternal(), FEProblemBase::restoreMultiApps(), MeshRepairGenerator::separateSubdomainsByElementType(), FEProblemBase::setCoupling(), MooseApp::setupOptions(), MooseBase::typeAndName(), ScalarKernelBase::uOld(), AuxScalarKernel::uOld(), DisplacedProblem::updateGeomSearch(), FEProblemBase::updateGeomSearch(), UserObjectInterface::userObjectType(), and AdvancedOutput::wantOutput().

51 { return _type; }
const std::string _type
The type of this class.
Definition: MooseBase.h:87

◆ typeAndName()

std::string MooseBase::typeAndName ( ) const
inherited

Get the class's combined type and name; useful in error handling.

Returns
The type and name of this class in the form '<type()> "<name()>"'.

Definition at line 27 of file MooseBase.C.

Referenced by MaterialPropertyStorage::addProperty(), MeshGeneratorSystem::dataDrivenError(), ReporterContext< std::vector< T > >::finalize(), and ReporterData::getReporterInfo().

28 {
29  return type() + std::string(" \"") + name() + std::string("\"");
30 }
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const std::string & type() const
Get the type of this class.
Definition: MooseBase.h:51

◆ uniqueName()

MooseObjectName MooseBaseParameterInterface::uniqueName ( ) const
inlineinherited

The unique name for accessing input parameters of this object in the InputParameterWarehouse.

Definition at line 67 of file MooseBaseParameterInterface.h.

Referenced by MooseBaseParameterInterface::connectControllableParams(), and Action::uniqueActionName().

68  {
69  return MooseObjectName(_pars.get<std::string>("_unique_name"));
70  }
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
A class for storing the names of MooseObject by tag and object name.

◆ uniqueParameterName()

MooseObjectParameterName MooseBaseParameterInterface::uniqueParameterName ( const std::string &  parameter_name) const
inlineinherited

The unique parameter name of a valid parameter of this object for accessing parameter controls.

Definition at line 52 of file MooseBaseParameterInterface.h.

53  {
55  _pars.get<std::string>("_moose_base"), _moose_base.name(), parameter_name);
56  }
const MooseBase & _moose_base
The MooseBase object that inherits this class.
std::vector< std::pair< R1, R2 > > get(const std::string &param1, const std::string &param2) const
Combine two vector parameters into a single vector of pairs.
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
const InputParameters & _pars
Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.
A class for storing an input parameter name.

◆ useMatrixTag() [1/2]

void TaggingInterface::useMatrixTag ( const TagName &  tag_name,
MatrixTagsKey   
)
inherited

Definition at line 162 of file TaggingInterface.C.

163 {
164  if (!_subproblem.matrixTagExists(tag_name))
165  mooseError("Matrix tag ", tag_name, " does not exist in system");
166 
167  _matrix_tags.insert(_subproblem.getMatrixTagID(tag_name));
168 }
SubProblem & _subproblem
SubProblem that contains tag info.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
virtual TagID getMatrixTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:320
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
virtual bool matrixTagExists(const TagName &tag_name) const
Check to see if a particular Tag exists.
Definition: SubProblem.C:306

◆ useMatrixTag() [2/2]

void TaggingInterface::useMatrixTag ( TagID  tag_id,
MatrixTagsKey   
)
inherited

Definition at line 180 of file TaggingInterface.C.

181 {
182  if (!_subproblem.matrixTagExists(tag_id))
183  mooseError("Matrix tag ", tag_id, " does not exist in system");
184 
185  _matrix_tags.insert(tag_id);
186 }
SubProblem & _subproblem
SubProblem that contains tag info.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::set< TagID > _matrix_tags
The matrices this Kernel will contribute to.
virtual bool matrixTagExists(const TagName &tag_name) const
Check to see if a particular Tag exists.
Definition: SubProblem.C:306

◆ useVectorTag() [1/2]

void TaggingInterface::useVectorTag ( const TagName &  tag_name,
VectorTagsKey   
)
inherited

Definition at line 153 of file TaggingInterface.C.

154 {
155  if (!_subproblem.vectorTagExists(tag_name))
156  mooseError("Vector tag ", tag_name, " does not exist in system");
157 
158  _vector_tags.insert(_subproblem.getVectorTagID(tag_name));
159 }
virtual TagID getVectorTagID(const TagName &tag_name) const
Get a TagID from a TagName.
Definition: SubProblem.C:181
SubProblem & _subproblem
SubProblem that contains tag info.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173

◆ useVectorTag() [2/2]

void TaggingInterface::useVectorTag ( TagID  tag_id,
VectorTagsKey   
)
inherited

Definition at line 171 of file TaggingInterface.C.

172 {
173  if (!_subproblem.vectorTagExists(tag_id))
174  mooseError("Vector tag ", tag_id, " does not exist in system");
175 
176  _vector_tags.insert(tag_id);
177 }
SubProblem & _subproblem
SubProblem that contains tag info.
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
std::set< TagID > _vector_tags
The residual tag ids this Kernel will contribute to.
virtual bool vectorTagExists(const TagID tag_id) const
Check to see if a particular Tag exists.
Definition: SubProblem.h:173

◆ validateExecutionerType()

void Coupleable::validateExecutionerType ( const std::string &  name,
const std::string &  fn_name 
) const
protectedinherited

Checks to make sure that the current Executioner has set "_is_transient" when old/older values are coupled in.

Parameters
namethe name of the variable
fn_nameThe name of the function that called this method - used in the error message

Definition at line 2021 of file Coupleable.C.

Referenced by Coupleable::checkFuncType(), NeighborCoupleable::coupledArrayNeighborGradientOld(), NeighborCoupleable::coupledArrayNeighborGradientOlder(), NeighborCoupleable::coupledNeighborDofValuesOld(), NeighborCoupleable::coupledNeighborDofValuesOlder(), NeighborCoupleable::coupledNeighborGradientOld(), NeighborCoupleable::coupledNeighborGradientOlder(), NeighborCoupleable::coupledNeighborValueOld(), NeighborCoupleable::coupledNeighborValueOlder(), NeighborCoupleable::coupledVectorNeighborGradientOld(), and NeighborCoupleable::coupledVectorNeighborGradientOlder().

2022 {
2023  if (!_c_fe_problem.isTransient())
2025  ": Calling \"",
2026  fn_name,
2027  "\" on variable \"",
2028  name,
2029  "\" when using a \"Steady\" executioner is not allowed. This value is available "
2030  "only in transient simulations.");
2031 }
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
const std::string & _c_name
The name of the object this interface is part of.
Definition: Coupleable.h:1314
virtual bool isTransient() const override

◆ validParams()

InputParameters NodeFaceConstraint::validParams ( )
static

Definition at line 23 of file NodeFaceConstraint.C.

Referenced by CoupledTiedValueConstraint::validParams(), and TiedValueConstraint::validParams().

24 {
25  MooseEnum orders("FIRST SECOND THIRD FOURTH", "FIRST");
27  params.addParam<BoundaryName>("secondary", "The boundary ID associated with the secondary side");
28  params.addParam<BoundaryName>("primary", "The boundary ID associated with the primary side");
29  params.addParam<Real>("tangential_tolerance",
30  "Tangential distance to extend edges of contact surfaces");
31  params.addParam<Real>(
32  "normal_smoothing_distance",
33  "Distance from edge in parametric coordinates over which to smooth contact normal");
34  params.addParam<std::string>("normal_smoothing_method",
35  "Method to use to smooth normals (edge_based|nodal_normal_based)");
36  params.addParam<MooseEnum>("order", orders, "The finite element order used for projections");
37 
38  params.addCoupledVar("primary_variable", "The variable on the primary side of the domain");
39 
40  return params;
41 }
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system...
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Definition: MooseEnum.h:31
void addCoupledVar(const std::string &name, const std::string &doc_string)
This method adds a coupled variable name pair.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void addParam(const std::string &name, const S &value, const std::string &doc_string)
These methods add an option parameter and a documentation string to the InputParameters object...
static InputParameters validParams()
Definition: Constraint.C:15

◆ value()

const OutputTools< Real >::VariableValue & MooseVariableInterface< Real >::value ( )
protectedvirtualinherited

The value of the variable this object is operating on.

This is computed by default and should already be available as _u

Returns
The reference to be stored off and used later.

Definition at line 88 of file MooseVariableInterface.C.

Referenced by KernelGrad::computeJacobian(), KernelValue::computeJacobian(), NodalConstraint::computeJacobian(), ConvectiveFluxBC::computeQpResidual(), SinDirichletBC::computeQpResidual(), SinNeumannBC::computeQpResidual(), KernelValue::computeResidual(), KernelGrad::computeResidual(), MeshDivisionAux::computeValue(), ElementUOAux::computeValue(), InternalSideIndicator::finalize(), and LineValueSampler::getValue().

89 {
90  if (_nodal)
91  return _variable->dofValues();
92  else
93  return _variable->sln();
94 }
bool _nodal
Whether or not this object is acting only at nodes.
const FieldVariableValue & sln() const override
element solutions
MooseVariableFE< Real > * _variable
const DoFValue & dofValues() const override
dof values getters

◆ valueOld()

const OutputTools< Real >::VariableValue & MooseVariableInterface< Real >::valueOld ( )
protectedvirtualinherited

The old value of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 108 of file MooseVariableInterface.C.

109 {
110  if (_nodal)
111  return _variable->dofValuesOld();
112  else
113  return _variable->slnOld();
114 }
bool _nodal
Whether or not this object is acting only at nodes.
const DoFValue & dofValuesOld() const override
MooseVariableFE< Real > * _variable
const FieldVariableValue & slnOld() const override

◆ valueOlder()

const OutputTools< Real >::VariableValue & MooseVariableInterface< Real >::valueOlder ( )
protectedvirtualinherited

The older value of the variable this object is operating on.

Returns
The reference to be stored off and used later.

Definition at line 128 of file MooseVariableInterface.C.

129 {
130  if (_nodal)
131  return _variable->dofValuesOlder();
132  else
133  return _variable->slnOlder();
134 }
bool _nodal
Whether or not this object is acting only at nodes.
const DoFValue & dofValuesOlder() const override
MooseVariableFE< Real > * _variable
const FieldVariableValue & slnOlder() const override

◆ variable()

const MooseVariable& NodeFaceConstraint::variable ( ) const
inlineoverridevirtual

The variable number that this object operates on.

Implements ResidualObject.

Definition at line 108 of file NodeFaceConstraint.h.

108 { return _var; }
MooseVariable & _var

◆ writableCoupledValue()

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

Returns a writable reference to a coupled variable for writing to multiple AuxVariables from a single AuxKernel or a UserObject.

Only one object can obtain a writable reference in a simulation.

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

Definition at line 898 of file Coupleable.C.

899 {
900  mooseDeprecated("Coupleable::writableCoupledValue is deprecated, please use "
901  "Coupleable::writableVariable instead. ");
902 
903  // check if the variable exists
904  auto * const var = getVar(var_name, comp);
905  if (!var)
906  mooseError(
907  "Unable to create a writable reference for '", var_name, "', is it a constant expression?");
908 
909  // is the requested variable an AuxiliaryVariable?
910  if (!_c_fe_problem.getAuxiliarySystem().hasVariable(var->name()))
911  mooseError(
912  "'", var->name(), "' must be an auxiliary variable in Coupleable::writableCoupledValue");
913 
914  // check that the variable type (elemental/nodal) is compatible with the object type
915  const auto * aux = dynamic_cast<const AuxKernel *>(this);
916 
917  if (!aux)
918  mooseError("writableCoupledValue() can only be called from AuxKernels, but '",
919  _obj->name(),
920  "' is not an AuxKernel.");
921 
922  if (!aux->isNodal() && var->isNodal())
923  mooseError("The elemental AuxKernel '",
924  _obj->name(),
925  "' cannot obtain a writable reference to the nodal variable '",
926  var->name(),
927  "'.");
928 
929  // make sure only one object can access a variable
930  checkWritableVar(var);
931 
932  return const_cast<VariableValue &>(coupledValue(var_name, comp));
933 }
void checkWritableVar(MooseWritableVariable *var)
Checks that the passed in variable is only accessed writable by one object in a given subdomain...
Definition: Coupleable.C:936
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
MooseVariable * getVar(const std::string &var_name, unsigned int comp)
Extract pointer to a coupled variable.
Definition: Coupleable.C:287
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
FEProblemBase & _c_fe_problem
Definition: Coupleable.h:1319
virtual const VariableValue & coupledValue(const std::string &var_name, unsigned int comp=0) const
Returns value of a coupled variable.
Definition: Coupleable.C:482
void mooseDeprecated(Args &&... args)
Emit a deprecated code/feature message with the given stringified, concatenated args.
Definition: MooseError.h:350
AuxiliarySystem & getAuxiliarySystem()
virtual bool hasVariable(const std::string &var_name) const
Query a system for a variable.
Definition: SystemBase.C:807
const MooseObject *const _obj
Definition: Coupleable.h:1711
OutputTools< Real >::VariableValue VariableValue
Definition: MooseTypes.h:302

◆ writableVariable()

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

Returns a writable MooseVariable object for a nodal or elemental variable.

Use var.setNodalValue(val[, idx]) in both cases (!) to set the solution DOF values. Only one object can obtain a writable reference in a simulation. Note that the written values will not ba available in the same system loop! E.g. values written using this API by a nodal AuxKernel will not be updated for other nodal AuxKernels during the same iteration over all nodes.

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

Definition at line 863 of file Coupleable.C.

864 {
865  auto * var = getVarHelper<MooseWritableVariable>(var_name, comp);
866 
867  const auto * aux = dynamic_cast<const AuxKernel *>(this);
868  const auto * euo = dynamic_cast<const ElementUserObject *>(this);
869  const auto * nuo = dynamic_cast<const NodalUserObject *>(this);
870  const auto * nfc = dynamic_cast<const NodeFaceConstraint *>(this);
871 
872  if (!aux && !euo && !nuo && !nfc)
873  mooseError("writableVariable() can only be called from AuxKernels, ElementUserObjects, "
874  "NodalUserObjects, or NodeFaceConstraints. '",
875  _obj->name(),
876  "' is none of those.");
877 
878  if (aux && !aux->isNodal() && var->isNodal())
879  mooseError("The elemental AuxKernel '",
880  _obj->name(),
881  "' cannot obtain a writable reference to the nodal variable '",
882  var->name(),
883  "'.");
884  if (euo && var->isNodal())
885  mooseError("The ElementUserObject '",
886  _obj->name(),
887  "' cannot obtain a writable reference to the nodal variable '",
888  var->name(),
889  "'.");
890 
891  // make sure only one object can access a variable
892  checkWritableVar(var);
893 
894  return *var;
895 }
void checkWritableVar(MooseWritableVariable *var)
Checks that the passed in variable is only accessed writable by one object in a given subdomain...
Definition: Coupleable.C:936
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application...
Definition: MooseError.h:299
virtual const std::string & name() const
Get the name of the class.
Definition: MooseBase.h:57
A user object that runs over all the nodes and does an aggregation step to compute a single value...
A NodeFaceConstraint is used when you need to create constraints between two surfaces in a mesh...
const MooseObject *const _obj
Definition: Coupleable.h:1711

Friends And Related Function Documentation

◆ NonlinearSystemBase

friend class NonlinearSystemBase
friend

Definition at line 345 of file NodeFaceConstraint.h.

Member Data Documentation

◆ _action_factory

ActionFactory& MooseBaseParameterInterface::_action_factory
protectedinherited

◆ _ad_default_gradient

MooseArray<ADRealVectorValue> Coupleable::_ad_default_gradient
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1388 of file Coupleable.h.

Referenced by Coupleable::getADDefaultGradient().

◆ _ad_default_second

MooseArray<ADRealTensorValue> Coupleable::_ad_default_second
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1397 of file Coupleable.h.

Referenced by Coupleable::getADDefaultSecond().

◆ _ad_default_value

std::unordered_map<std::string, std::unique_ptr<MooseArray<DualReal> > > Coupleable::_ad_default_value
mutableprotectedinherited

Will hold the default value for optional coupled variables for automatic differentiation.

Definition at line 1365 of file Coupleable.h.

Referenced by Coupleable::getADDefaultValue().

◆ _ad_default_vector_gradient

MooseArray<ADRealTensorValue> Coupleable::_ad_default_vector_gradient
mutableprotectedinherited

This will always be zero because the default values for optionally coupled vector variables is always constant.

Definition at line 1391 of file Coupleable.h.

Referenced by Coupleable::getADDefaultVectorGradient().

◆ _ad_default_vector_value

std::unordered_map<std::string, std::unique_ptr<MooseArray<ADRealVectorValue> > > Coupleable::_ad_default_vector_value
mutableprotectedinherited

Will hold the default value for optional vector coupled variables for automatic differentiation.

Definition at line 1376 of file Coupleable.h.

Referenced by Coupleable::getADDefaultVectorValue().

◆ _ad_grad_zero

const MooseArray<ADRealVectorValue>& Coupleable::_ad_grad_zero
protectedinherited

Definition at line 1406 of file Coupleable.h.

Referenced by Coupleable::adZeroGradient().

◆ _ad_second_zero

const MooseArray<ADRealTensorValue>& Coupleable::_ad_second_zero
protectedinherited

Definition at line 1413 of file Coupleable.h.

Referenced by Coupleable::adZeroSecond().

◆ _ad_zero

const MooseArray<DualReal>& Coupleable::_ad_zero
protectedinherited

Definition at line 1402 of file Coupleable.h.

Referenced by Coupleable::adZeroValue().

◆ _app

MooseApp& MooseBase::_app
protectedinherited

The MOOSE application this is associated with.

Definition at line 84 of file MooseBase.h.

◆ _assembly

Assembly& ResidualObject::_assembly
protectedinherited

Reference to this Kernel's assembly object.

Definition at line 138 of file ResidualObject.h.

Referenced by ADScalarKernel::computeADJacobian(), ADDGKernel::computeElemNeighJacobian(), DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), MassLumpedTimeDerivative::computeJacobian(), TimeDerivative::computeJacobian(), VectorTimeDerivative::computeJacobian(), ScalarKernel::computeJacobian(), ODEKernel::computeJacobian(), VectorKernel::computeJacobian(), Kernel::computeJacobian(), ArrayKernel::computeJacobian(), VectorIntegratedBC::computeJacobian(), IntegratedBC::computeJacobian(), EigenKernel::computeJacobian(), ArrayIntegratedBC::computeJacobian(), NodalEqualValueConstraint::computeJacobian(), NonlocalIntegratedBC::computeJacobian(), KernelGrad::computeJacobian(), KernelValue::computeJacobian(), NonlocalKernel::computeJacobian(), ADMortarConstraint::computeJacobian(), MortarConstraint::computeJacobian(), FVElementalKernel::computeJacobian(), ADKernelScalarBase::computeJacobian(), NodalKernel::computeJacobian(), ADNodalKernel::computeJacobian(), FVFluxKernel::computeJacobian(), NodeElemConstraint::computeJacobian(), computeJacobian(), ADMortarScalarBase::computeJacobian(), NodalConstraint::computeJacobian(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayDGLowerDKernel::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), DGLowerDKernel::computeLowerDResidual(), ArrayDGLowerDKernel::computeLowerDResidual(), NonlocalIntegratedBC::computeNonlocalJacobian(), NonlocalKernel::computeNonlocalJacobian(), NonlocalIntegratedBC::computeNonlocalOffDiagJacobian(), NonlocalKernel::computeNonlocalOffDiagJacobian(), ADDGKernel::computeOffDiagElemNeighJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), Kernel::computeOffDiagJacobian(), VectorKernel::computeOffDiagJacobian(), ArrayKernel::computeOffDiagJacobian(), EigenKernel::computeOffDiagJacobian(), IntegratedBC::computeOffDiagJacobian(), VectorIntegratedBC::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), FVScalarLagrangeMultiplierConstraint::computeOffDiagJacobian(), NonlocalIntegratedBC::computeOffDiagJacobian(), NonlocalKernel::computeOffDiagJacobian(), KernelValue::computeOffDiagJacobian(), KernelGrad::computeOffDiagJacobian(), NodeElemConstraint::computeOffDiagJacobian(), NodalKernel::computeOffDiagJacobian(), computeOffDiagJacobian(), ODEKernel::computeOffDiagJacobianScalar(), VectorKernel::computeOffDiagJacobianScalar(), ArrayKernel::computeOffDiagJacobianScalar(), IntegratedBC::computeOffDiagJacobianScalar(), VectorIntegratedBC::computeOffDiagJacobianScalar(), ArrayIntegratedBC::computeOffDiagJacobianScalar(), Kernel::computeOffDiagJacobianScalar(), ScalarLagrangeMultiplier::computeOffDiagJacobianScalar(), MortarScalarBase::computeOffDiagJacobianScalar(), KernelScalarBase::computeOffDiagJacobianScalarLocal(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), ScalarKernel::computeResidual(), Kernel::computeResidual(), VectorKernel::computeResidual(), LowerDIntegratedBC::computeResidual(), ArrayKernel::computeResidual(), ODEKernel::computeResidual(), TimeKernel::computeResidual(), ODETimeKernel::computeResidual(), VectorTimeKernel::computeResidual(), ADScalarKernel::computeResidual(), IntegratedBC::computeResidual(), ArrayLowerDIntegratedBC::computeResidual(), VectorIntegratedBC::computeResidual(), ArrayIntegratedBC::computeResidual(), EigenKernel::computeResidual(), NodalEqualValueConstraint::computeResidual(), TimeNodalKernel::computeResidual(), ADMortarConstraint::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidual(), MortarConstraint::computeResidual(), KernelValue::computeResidual(), NodalKernel::computeResidual(), KernelGrad::computeResidual(), ADNodalKernel::computeResidual(), FVElementalKernel::computeResidual(), ADKernelScalarBase::computeResidual(), NodeElemConstraint::computeResidual(), FVFluxKernel::computeResidual(), NodalConstraint::computeResidual(), computeResidual(), ADMortarScalarBase::computeResidual(), MortarScalarBase::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidualAndJacobian(), FVElementalKernel::computeResidualAndJacobian(), ADKernelScalarBase::computeResidualAndJacobian(), MortarScalarBase::computeScalarJacobian(), KernelScalarBase::computeScalarJacobian(), MortarScalarBase::computeScalarOffDiagJacobian(), KernelScalarBase::computeScalarOffDiagJacobian(), KernelScalarBase::computeScalarOffDiagJacobianScalar(), MortarScalarBase::computeScalarOffDiagJacobianScalar(), KernelScalarBase::computeScalarResidual(), ConservativeAdvection::fullUpwind(), InterfaceKernelBase::getNeighborElemVolume(), DGKernelBase::getNeighborElemVolume(), MortarConstraintBase::MortarConstraintBase(), NodalScalarKernel::reinit(), and MortarConstraintBase::zeroInactiveLMDofs().

◆ _boundary_ids

std::set<BoundaryID> NodeFaceConstraint::_boundary_ids
protected

the union of the secondary and primary boundary ids

Definition at line 262 of file NodeFaceConstraint.h.

Referenced by buildBoundaryIDs().

◆ _c_allow_element_to_nodal_coupling

const bool Coupleable::_c_allow_element_to_nodal_coupling
protectedinherited

Definition at line 1355 of file Coupleable.h.

Referenced by Coupleable::checkVar().

◆ _c_fe_problem

FEProblemBase& Coupleable::_c_fe_problem
protectedinherited

◆ _c_is_implicit

bool Coupleable::_c_is_implicit
protectedinherited

True if implicit value is required.

Definition at line 1352 of file Coupleable.h.

Referenced by Coupleable::adCoupledDofValues(), Coupleable::adCoupledGradient(), Coupleable::adCoupledGradientDot(), Coupleable::adCoupledLowerValue(), NeighborCoupleable::adCoupledNeighborGradient(), NeighborCoupleable::adCoupledNeighborValue(), NeighborCoupleable::adCoupledNeighborValueDot(), Coupleable::adCoupledNodalValue(), Coupleable::adCoupledSecond(), Coupleable::adCoupledValue(), Coupleable::adCoupledVectorGradient(), NeighborCoupleable::adCoupledVectorNeighborValue(), Coupleable::adCoupledVectorValue(), Coupleable::checkFuncType(), Coupleable::coupledArrayDofValues(), Coupleable::coupledArrayGradient(), Coupleable::coupledArrayGradientOld(), NeighborCoupleable::coupledArrayNeighborGradient(), NeighborCoupleable::coupledArrayNeighborGradientOld(), NeighborCoupleable::coupledArrayNeighborGradientOlder(), NeighborCoupleable::coupledArrayNeighborValue(), Coupleable::coupledArrayValue(), Coupleable::coupledArrayValueOld(), Coupleable::coupledCurl(), Coupleable::coupledCurlOld(), Coupleable::coupledDofValues(), Coupleable::coupledDofValuesOld(), Coupleable::coupledGradient(), Coupleable::coupledGradientOld(), NeighborCoupleable::coupledNeighborDofValues(), NeighborCoupleable::coupledNeighborDofValuesOld(), NeighborCoupleable::coupledNeighborDofValuesOlder(), NeighborCoupleable::coupledNeighborGradient(), NeighborCoupleable::coupledNeighborGradientOld(), NeighborCoupleable::coupledNeighborGradientOlder(), NeighborCoupleable::coupledNeighborSecond(), NeighborCoupleable::coupledNeighborValue(), NeighborCoupleable::coupledNeighborValueOld(), NeighborCoupleable::coupledNeighborValueOlder(), Coupleable::coupledNodalValue(), Coupleable::coupledNodalValueOld(), Coupleable::coupledSecond(), Coupleable::coupledSecondOld(), Coupleable::coupledValue(), Coupleable::coupledValueLower(), Coupleable::coupledValueOld(), Coupleable::coupledVectorGradient(), Coupleable::coupledVectorGradientOld(), NeighborCoupleable::coupledVectorNeighborGradient(), NeighborCoupleable::coupledVectorNeighborGradientOld(), NeighborCoupleable::coupledVectorNeighborGradientOlder(), Coupleable::coupledVectorValue(), and Coupleable::coupledVectorValueOld().

◆ _c_name

const std::string& Coupleable::_c_name
protectedinherited

◆ _c_nodal

bool Coupleable::_c_nodal
protectedinherited

◆ _c_parameters

const InputParameters& Coupleable::_c_parameters
protectedinherited

◆ _c_sys

const SystemBase* const Coupleable::_c_sys
protectedinherited

Pointer to the system object if the moose object this is an interface for has one.

Definition at line 1322 of file Coupleable.h.

Referenced by Coupleable::coupled().

◆ _c_tid

THREAD_ID Coupleable::_c_tid
protectedinherited

Thread ID of the thread using this object.

Definition at line 1358 of file Coupleable.h.

Referenced by Coupleable::checkWritableVar(), Coupleable::Coupleable(), and Coupleable::getWritableCoupledVariables().

◆ _c_type

const std::string& Coupleable::_c_type
protectedinherited

The type of the object this interface is part of.

Definition at line 1316 of file Coupleable.h.

◆ _connected_dof_indices

std::vector<dof_id_type> NodeFaceConstraint::_connected_dof_indices
protected

◆ _console

const ConsoleStream ConsoleStreamInterface::_console
inherited

An instance of helper class to write streams to the Console objects.

Definition at line 31 of file ConsoleStreamInterface.h.

Referenced by IterationAdaptiveDT::acceptStep(), MeshOnlyAction::act(), SetupDebugAction::act(), MaterialOutputAction::act(), Adaptivity::adaptMesh(), FEProblemBase::adaptMesh(), PerfGraph::addToExecutionList(), SimplePredictor::apply(), SystemBase::applyScalingFactors(), MultiApp::backup(), FEProblemBase::backupMultiApps(), CoarsenedPiecewiseLinear::buildCoarsenedGrid(), MeshDiagnosticsGenerator::checkElementOverlap(), MeshDiagnosticsGenerator::checkElementTypes(), MeshDiagnosticsGenerator::checkElementVolumes(), FEProblemBase::checkExceptionAndStopSolve(), SolverSystem::checkInvalidSolution(), MeshDiagnosticsGenerator::checkLocalJacobians(), MeshDiagnosticsGenerator::checkNonConformalMesh(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), MeshDiagnosticsGenerator::checkNonPlanarSides(), FEProblemBase::checkProblemIntegrity(), ReferenceResidualProblem::checkRelativeConvergence(), MeshDiagnosticsGenerator::checkSidesetsOrientation(), IterationAdaptiveDT::computeAdaptiveDT(), Transient::computeConstrainedDT(), FixedPointSolve::computeCustomConvergencePostprocessor(), NonlinearSystemBase::computeDamping(), IterationAdaptiveDT::computeDT(), IterationAdaptiveDT::computeFailedDT(), IterationAdaptiveDT::computeInitialDT(), IterationAdaptiveDT::computeInterpolationDT(), FEProblemBase::computeLinearSystemTags(), NonlinearSystemBase::computeScaling(), Problem::console(), IterationAdaptiveDT::constrainStep(), TimeStepper::constrainStep(), MultiApp::createApp(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), MessageFromInput::execute(), Steady::execute(), Eigenvalue::execute(), ActionWarehouse::executeActionsWithAction(), ActionWarehouse::executeAllActions(), ElementQualityChecker::finalize(), FEProblemBase::finishMultiAppStep(), MeshRepairGenerator::fixOverlappingNodes(), CoarsenBlockGenerator::generate(), MeshGenerator::generateInternal(), VariableCondensationPreconditioner::getDofToCondense(), InversePowerMethod::init(), NonlinearEigen::init(), FEProblemBase::initialAdaptMesh(), EigenExecutionerBase::inversePowerIteration(), FEProblemBase::joinAndFinalize(), Transient::keepGoing(), IterationAdaptiveDT::limitDTByFunction(), IterationAdaptiveDT::limitDTToPostprocessorValue(), FEProblemBase::logAdd(), EigenExecutionerBase::makeBXConsistent(), Console::meshChanged(), MooseBaseErrorInterface::mooseDeprecated(), MooseBaseErrorInterface::mooseInfo(), MooseBaseErrorInterface::mooseWarning(), MooseBaseErrorInterface::mooseWarningNonPrefixed(), ReferenceResidualProblem::nonlinearConvergenceSetup(), ReporterDebugOutput::output(), PerfGraphOutput::output(), MaterialPropertyDebugOutput::output(), DOFMapOutput::output(), VariableResidualNormsDebugOutput::output(), Console::output(), ControlOutput::outputActiveObjects(), ControlOutput::outputChangedControls(), ControlOutput::outputControls(), Console::outputInput(), Console::outputPostprocessors(), PseudoTimestep::outputPseudoTimestep(), Console::outputReporters(), Console::outputScalarVariables(), Console::outputSystemInformation(), FEProblemBase::possiblyRebuildGeomSearchPatches(), EigenExecutionerBase::postExecute(), AB2PredictorCorrector::postSolve(), ActionWarehouse::printActionDependencySets(), SolutionInvalidity::printDebug(), EigenExecutionerBase::printEigenvalue(), SecantSolve::printFixedPointConvergenceHistory(), SteffensenSolve::printFixedPointConvergenceHistory(), PicardSolve::printFixedPointConvergenceHistory(), FixedPointSolve::printFixedPointConvergenceReason(), PerfGraphLivePrint::printLiveMessage(), MaterialPropertyDebugOutput::printMaterialMap(), PerfGraphLivePrint::printStats(), AutomaticMortarGeneration::projectPrimaryNodesSinglePair(), AutomaticMortarGeneration::projectSecondaryNodesSinglePair(), CoarsenBlockGenerator::recursiveCoarsen(), SolutionTimeAdaptiveDT::rejectStep(), MultiApp::restore(), FEProblemBase::restoreMultiApps(), SimplePredictor::shouldApply(), Checkpoint::shouldOutput(), SubProblem::showFunctorRequestors(), SubProblem::showFunctors(), FullSolveMultiApp::showStatusMessage(), FEProblemSolve::solve(), FixedPointSolve::solve(), NonlinearSystem::solve(), EigenProblem::solve(), LStableDirk2::solve(), LStableDirk3::solve(), ImplicitMidpoint::solve(), ExplicitTVDRK2::solve(), AStableDirk4::solve(), LStableDirk4::solve(), ExplicitRK2::solve(), TransientMultiApp::solveStep(), FixedPointSolve::solveStep(), PerfGraphLivePrint::start(), AB2PredictorCorrector::step(), NonlinearEigen::takeStep(), Transient::takeStep(), Console::writeTimestepInformation(), Console::writeVariableNorms(), and FEProblemBase::~FEProblemBase().

◆ _coupleable_neighbor

bool Coupleable::_coupleable_neighbor
protectedinherited

Whether or not this object is a "neighbor" object: ie all of it's coupled values should be neighbor values.

Definition at line 1618 of file Coupleable.h.

Referenced by Coupleable::adCoupledDofValues(), Coupleable::adCoupledDot(), Coupleable::adCoupledDotDot(), Coupleable::adCoupledGradient(), Coupleable::adCoupledGradientDot(), Coupleable::adCoupledNodalValue(), Coupleable::adCoupledSecond(), Coupleable::adCoupledValue(), Coupleable::adCoupledVectorDot(), Coupleable::adCoupledVectorGradient(), Coupleable::adCoupledVectorValue(), Coupleable::coupledArrayDofValues(), Coupleable::coupledArrayDot(), Coupleable::coupledArrayDotDot(), Coupleable::coupledArrayDotDotOld(), Coupleable::coupledArrayDotDu(), Coupleable::coupledArrayDotOld(), Coupleable::coupledArrayGradient(), Coupleable::coupledArrayGradientDot(), Coupleable::coupledArrayGradientOld(), Coupleable::coupledArrayGradientOlder(), Coupleable::coupledArrayValue(), Coupleable::coupledArrayValueOld(), Coupleable::coupledArrayValueOlder(), Coupleable::coupledCurl(), Coupleable::coupledCurlOld(), Coupleable::coupledCurlOlder(), Coupleable::coupledDofValues(), Coupleable::coupledDofValuesOld(), Coupleable::coupledDofValuesOlder(), Coupleable::coupledDot(), Coupleable::coupledDotDot(), Coupleable::coupledDotDotDu(), Coupleable::coupledDotDotOld(), Coupleable::coupledDotDu(), Coupleable::coupledDotOld(), Coupleable::coupledGradient(), Coupleable::coupledGradientDot(), Coupleable::coupledGradientDotDot(), Coupleable::coupledGradientOld(), Coupleable::coupledGradientOlder(), Coupleable::coupledGradientPreviousNL(), Coupleable::coupledNodalDot(), Coupleable::coupledNodalDotDot(), Coupleable::coupledNodalDotDotOld(), Coupleable::coupledNodalDotOld(), Coupleable::coupledNodalValue(), Coupleable::coupledNodalValueOld(), Coupleable::coupledNodalValueOlder(), Coupleable::coupledNodalValuePreviousNL(), Coupleable::coupledSecond(), Coupleable::coupledSecondOld(), Coupleable::coupledSecondOlder(), Coupleable::coupledSecondPreviousNL(), Coupleable::coupledValue(), Coupleable::coupledValueLower(), Coupleable::coupledValueOld(), Coupleable::coupledValueOlder(), Coupleable::coupledValuePreviousNL(), Coupleable::coupledVectorDot(), Coupleable::coupledVectorDotDot(), Coupleable::coupledVectorDotDotDu(), Coupleable::coupledVectorDotDotOld(), Coupleable::coupledVectorDotDu(), Coupleable::coupledVectorDotOld(), Coupleable::coupledVectorGradient(), Coupleable::coupledVectorGradientOld(), Coupleable::coupledVectorGradientOlder(), Coupleable::coupledVectorValue(), Coupleable::coupledVectorValueOld(), and Coupleable::coupledVectorValueOlder().

◆ _coupled_array_moose_vars

std::vector<ArrayMooseVariable *> Coupleable::_coupled_array_moose_vars
protectedinherited

Vector of array coupled variables.

Definition at line 1337 of file Coupleable.h.

Referenced by Coupleable::Coupleable(), Coupleable::getCoupledArrayMooseVars(), and Coupleable::getVarHelper().

◆ _coupled_moose_vars

std::vector<MooseVariableFieldBase *> Coupleable::_coupled_moose_vars
protectedinherited

◆ _coupled_standard_fv_moose_vars

std::vector<MooseVariableFV<Real> *> Coupleable::_coupled_standard_fv_moose_vars
protectedinherited

Vector of standard finite volume coupled variables.

Definition at line 1340 of file Coupleable.h.

Referenced by Coupleable::Coupleable(), ElementValueSampler::execute(), and Coupleable::getVarHelper().

◆ _coupled_standard_linear_fv_moose_vars

std::vector<MooseLinearVariableFV<Real> *> Coupleable::_coupled_standard_linear_fv_moose_vars
protectedinherited

Vector of standard linear finite volume coupled variables.

Definition at line 1343 of file Coupleable.h.

Referenced by Coupleable::Coupleable().

◆ _coupled_standard_moose_vars

std::vector<MooseVariable *> Coupleable::_coupled_standard_moose_vars
protectedinherited

◆ _coupled_vars

std::unordered_map<std::string, std::vector<MooseVariableFieldBase *> > Coupleable::_coupled_vars
protectedinherited

◆ _coupled_vector_moose_vars

std::vector<VectorMooseVariable *> Coupleable::_coupled_vector_moose_vars
protectedinherited

Vector of vector coupled variables.

Definition at line 1334 of file Coupleable.h.

Referenced by Coupleable::Coupleable(), Coupleable::getCoupledVectorMooseVars(), and Coupleable::getVarHelper().

◆ _current_execute_flag

const ExecFlagType& SetupInterface::_current_execute_flag
protectedinherited

Reference to FEProblemBase.

Definition at line 78 of file SetupInterface.h.

Referenced by PseudoTimestep::execute().

◆ _current_node

const Node* const& NodeFaceConstraint::_current_node
protected

◆ _current_primary

const Elem* const& NodeFaceConstraint::_current_primary
protected

Definition at line 268 of file NodeFaceConstraint.h.

◆ _default_array_curl

ArrayVariableCurl Coupleable::_default_array_curl
protectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1443 of file Coupleable.h.

◆ _default_array_gradient

ArrayVariableGradient Coupleable::_default_array_gradient
protectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1440 of file Coupleable.h.

Referenced by Coupleable::coupledArrayGradient(), Coupleable::coupledArrayGradientDot(), Coupleable::coupledArrayGradientOld(), and Coupleable::coupledArrayGradientOlder().

◆ _default_array_value

std::unordered_map<std::string, std::unique_ptr<ArrayVariableValue> > Coupleable::_default_array_value
mutableprotectedinherited

Will hold the default value for optional array coupled variables.

Definition at line 1372 of file Coupleable.h.

Referenced by Coupleable::getDefaultArrayValue().

◆ _default_array_value_zero

ArrayVariableValue Coupleable::_default_array_value_zero
protectedinherited

This will always be zero because the default values for optionally coupled variables is always constant and this is used for time derivative info.

Definition at line 1437 of file Coupleable.h.

Referenced by Coupleable::coupledArrayDot(), Coupleable::coupledArrayDotDot(), Coupleable::coupledArrayDotDotOld(), and Coupleable::coupledArrayDotOld().

◆ _default_gradient

VariableGradient Coupleable::_default_gradient
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1385 of file Coupleable.h.

Referenced by Coupleable::coupledGradient(), Coupleable::coupledGradientDot(), Coupleable::coupledGradientDotDot(), Coupleable::coupledGradientOld(), Coupleable::coupledGradientOlder(), and Coupleable::coupledGradientPreviousNL().

◆ _default_second

VariableSecond Coupleable::_default_second
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1394 of file Coupleable.h.

Referenced by Coupleable::coupledSecond(), Coupleable::coupledSecondOld(), Coupleable::coupledSecondOlder(), and Coupleable::coupledSecondPreviousNL().

◆ _default_value

std::unordered_map<std::string, std::vector<std::unique_ptr<VariableValue> > > Coupleable::_default_value
mutableprotectedinherited

Will hold the default value for optional coupled variables.

Definition at line 1362 of file Coupleable.h.

Referenced by Coupleable::getDefaultValue().

◆ _default_value_zero

VariableValue Coupleable::_default_value_zero
mutableprotectedinherited

◆ _default_vector_curl

VectorVariableCurl Coupleable::_default_vector_curl
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1431 of file Coupleable.h.

Referenced by Coupleable::coupledCurl(), Coupleable::coupledCurlOld(), and Coupleable::coupledCurlOlder().

◆ _default_vector_gradient

VectorVariableGradient Coupleable::_default_vector_gradient
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant.

Definition at line 1428 of file Coupleable.h.

Referenced by Coupleable::coupledVectorGradient(), Coupleable::coupledVectorGradientOld(), and Coupleable::coupledVectorGradientOlder().

◆ _default_vector_value

std::unordered_map<std::string, std::unique_ptr<VectorVariableValue> > Coupleable::_default_vector_value
mutableprotectedinherited

Will hold the default value for optional vector coupled variables.

Definition at line 1369 of file Coupleable.h.

Referenced by Coupleable::getDefaultVectorValue().

◆ _default_vector_value_zero

VectorVariableValue Coupleable::_default_vector_value_zero
mutableprotectedinherited

This will always be zero because the default values for optionally coupled variables is always constant and this is used for time derivative info.

Definition at line 1425 of file Coupleable.h.

Referenced by Coupleable::coupledVectorDot(), Coupleable::coupledVectorDotDot(), Coupleable::coupledVectorDotDotOld(), and Coupleable::coupledVectorDotOld().

◆ _dof_map

const DofMap& NodeFaceConstraint::_dof_map
protected

DOF map.

Definition at line 299 of file NodeFaceConstraint.h.

◆ _dt

Real& TransientInterface::_dt
protectedinherited

◆ _dt_old

Real& TransientInterface::_dt_old
protectedinherited

Size of the old time step.

Definition at line 70 of file TransientInterface.h.

Referenced by VariableTimeIntegrationAux::getIntegralValue().

◆ _empty_mat_prop_deps

const std::unordered_set<unsigned int> NodeFaceConstraint::_empty_mat_prop_deps
protected

An empty material property dependency set for use with getMatPropDependencies.

Definition at line 321 of file NodeFaceConstraint.h.

Referenced by getMatPropDependencies().

◆ _enabled

const bool& MooseObject::_enabled
protectedinherited

Reference to the "enable" InputParameters, used by Controls for toggling on/off MooseObjects.

Definition at line 53 of file MooseObject.h.

Referenced by MooseObject::enabled().

◆ _execute_enum

const ExecFlagEnum& SetupInterface::_execute_enum
protectedinherited

◆ _factory

Factory& MooseBaseParameterInterface::_factory
protectedinherited

◆ _fe_problem

FEProblemBase& ResidualObject::_fe_problem
protectedinherited

◆ _field_variable

MooseVariableField<Real >* MooseVariableInterface< Real >::_field_variable
protectedinherited

◆ _fv_variable

MooseVariableFV<Real >* MooseVariableInterface< Real >::_fv_variable
protectedinherited

◆ _geometric_search_data

GeometricSearchData& GeometricSearchInterface::_geometric_search_data
protectedinherited

◆ _grad_phi_primary

const VariablePhiGradient& NodeFaceConstraint::_grad_phi_primary
protected

Gradient of side shape function.

Definition at line 286 of file NodeFaceConstraint.h.

◆ _grad_phi_zero

const VariablePhiGradient& Coupleable::_grad_phi_zero
protectedinherited

Zero gradient of trial function.

Definition at line 1409 of file Coupleable.h.

◆ _grad_test_primary

const VariableTestGradient& NodeFaceConstraint::_grad_test_primary
protected

Gradient of side shape function.

Definition at line 291 of file NodeFaceConstraint.h.

◆ _grad_u_primary

const VariableGradient& NodeFaceConstraint::_grad_u_primary
protected

Holds the current solution gradient at the current quadrature point.

Definition at line 296 of file NodeFaceConstraint.h.

◆ _grad_zero

const VariableGradient& Coupleable::_grad_zero
protectedinherited

Zero gradient of a variable.

Definition at line 1405 of file Coupleable.h.

◆ _i

unsigned int Constraint::_i
protectedinherited

◆ _is_implicit

bool TransientInterface::_is_implicit
protectedinherited

If the object is using implicit or explicit form.

This does NOT mean time scheme, but which values are going to be used in the object - either from current time or old time. Note that even explicit schemes have implicit form (it is the time derivative "kernel")

Definition at line 58 of file TransientInterface.h.

Referenced by EigenKernel::computeJacobian(), EigenKernel::computeOffDiagJacobian(), Kernel::computeResidualAndJacobian(), NodalBC::computeResidualAndJacobian(), IntegratedBC::computeResidualAndJacobian(), TransientInterface::determineState(), EigenKernel::EigenKernel(), EigenKernel::enabled(), and TransientInterface::isImplicit().

◆ _is_transient

bool TransientInterface::_is_transient
protectedinherited

Definition at line 73 of file TransientInterface.h.

Referenced by InterfaceTimeKernel::InterfaceTimeKernel().

◆ _j

unsigned int Constraint::_j
protectedinherited

◆ _jacobian

SparseMatrix<Number>* NodeFaceConstraint::_jacobian

Definition at line 112 of file NodeFaceConstraint.h.

◆ _Kee

DenseMatrix<Number> NodeFaceConstraint::_Kee
protected

The Jacobian corresponding to the derivatives of the elemental/secondary residual with respect to the elemental/secondary degrees of freedom.

We want to manually manipulate Kee because of the dependence of the secondary/primary residuals on // dofs from all elements connected to the secondary node (e.g. those held by _connected_dof_indices) // and because when we're overwriting the secondary residual we traditionally want to use a different // scaling factor from the one associated with interior physics

Definition at line 337 of file NodeFaceConstraint.h.

Referenced by computeJacobian(), and computeOffDiagJacobian().

◆ _Ken

DenseMatrix<Number> NodeFaceConstraint::_Ken
protected

The Jacobian corresponding to the derivatives of the elemental/secondary residual with respect to the neighbor/primary degrees of freedom.

We want to manually manipulate Ken because when we're overwriting the secondary residual we traditionally want to use a different scaling factor from the one associated with interior physics

Definition at line 343 of file NodeFaceConstraint.h.

Referenced by computeJacobian(), and computeOffDiagJacobian().

◆ _Kne

DenseMatrix<Number> NodeFaceConstraint::_Kne
protected

The Jacobian corresponding to the derivatives of the neighbor/primary residual with respect to the elemental/secondary degrees of freedom.

We want to manually manipulate Kne because of the dependence of the primary residuals on dofs from all elements connected to the secondary node (e.g. those held by _connected_dof_indices)

Definition at line 329 of file NodeFaceConstraint.h.

Referenced by computeJacobian(), and computeOffDiagJacobian().

◆ _linear_fv_variable

MooseLinearVariableFV<Real >* MooseVariableInterface< Real >::_linear_fv_variable
protectedinherited

Definition at line 229 of file MooseVariableInterface.h.

◆ _local_ke

DenseMatrix<Number> TaggingInterface::_local_ke
protectedinherited

Holds local Jacobian entries as they are accumulated by this Kernel.

Definition at line 335 of file TaggingInterface.h.

Referenced by TaggingInterface::accumulateTaggedLocalMatrix(), TaggingInterface::assignTaggedLocalMatrix(), ADDGKernel::computeElemNeighJacobian(), DGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), VectorTimeDerivative::computeJacobian(), ScalarKernel::computeJacobian(), MassLumpedTimeDerivative::computeJacobian(), TimeDerivative::computeJacobian(), VectorKernel::computeJacobian(), Kernel::computeJacobian(), ODEKernel::computeJacobian(), ArrayKernel::computeJacobian(), IntegratedBC::computeJacobian(), VectorIntegratedBC::computeJacobian(), EigenKernel::computeJacobian(), ArrayIntegratedBC::computeJacobian(), NodalEqualValueConstraint::computeJacobian(), NonlocalIntegratedBC::computeJacobian(), KernelGrad::computeJacobian(), KernelValue::computeJacobian(), NonlocalKernel::computeJacobian(), MortarConstraint::computeJacobian(), NodeElemConstraint::computeJacobian(), computeJacobian(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayDGLowerDKernel::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), Kernel::computeOffDiagJacobian(), VectorKernel::computeOffDiagJacobian(), ArrayKernel::computeOffDiagJacobian(), EigenKernel::computeOffDiagJacobian(), VectorIntegratedBC::computeOffDiagJacobian(), IntegratedBC::computeOffDiagJacobian(), ArrayIntegratedBC::computeOffDiagJacobian(), NonlocalKernel::computeOffDiagJacobian(), NonlocalIntegratedBC::computeOffDiagJacobian(), KernelValue::computeOffDiagJacobian(), KernelGrad::computeOffDiagJacobian(), NodeElemConstraint::computeOffDiagJacobian(), computeOffDiagJacobian(), ODEKernel::computeOffDiagJacobianScalar(), VectorKernel::computeOffDiagJacobianScalar(), ArrayKernel::computeOffDiagJacobianScalar(), IntegratedBC::computeOffDiagJacobianScalar(), VectorIntegratedBC::computeOffDiagJacobianScalar(), Kernel::computeOffDiagJacobianScalar(), ArrayIntegratedBC::computeOffDiagJacobianScalar(), ScalarLagrangeMultiplier::computeOffDiagJacobianScalar(), MortarScalarBase::computeOffDiagJacobianScalar(), KernelScalarBase::computeOffDiagJacobianScalarLocal(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), MortarScalarBase::computeScalarJacobian(), KernelScalarBase::computeScalarJacobian(), MortarScalarBase::computeScalarOffDiagJacobian(), KernelScalarBase::computeScalarOffDiagJacobian(), KernelScalarBase::computeScalarOffDiagJacobianScalar(), MortarScalarBase::computeScalarOffDiagJacobianScalar(), ConservativeAdvection::fullUpwind(), TaggingInterface::prepareMatrixTag(), TaggingInterface::prepareMatrixTagLower(), and TaggingInterface::prepareMatrixTagNeighbor().

◆ _local_re

DenseVector<Number> TaggingInterface::_local_re
protectedinherited

Holds local residual entries as they are accumulated by this Kernel.

Definition at line 332 of file TaggingInterface.h.

Referenced by TaggingInterface::accumulateTaggedLocalResidual(), FVInterfaceKernel::addResidual(), TaggingInterface::assignTaggedLocalResidual(), ADDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), DGLowerDKernel::computeLowerDResidual(), ArrayDGLowerDKernel::computeLowerDResidual(), ScalarKernel::computeResidual(), VectorKernel::computeResidual(), Kernel::computeResidual(), LowerDIntegratedBC::computeResidual(), ArrayKernel::computeResidual(), ODETimeKernel::computeResidual(), VectorTimeKernel::computeResidual(), ADScalarKernel::computeResidual(), TimeKernel::computeResidual(), ODEKernel::computeResidual(), ArrayLowerDIntegratedBC::computeResidual(), VectorIntegratedBC::computeResidual(), IntegratedBC::computeResidual(), ArrayIntegratedBC::computeResidual(), EigenKernel::computeResidual(), NodalEqualValueConstraint::computeResidual(), ADMortarConstraint::computeResidual(), FVBoundaryScalarLagrangeMultiplierConstraint::computeResidual(), FVScalarLagrangeMultiplierConstraint::computeResidual(), FVFluxBC::computeResidual(), MortarConstraint::computeResidual(), KernelGrad::computeResidual(), KernelValue::computeResidual(), FVElementalKernel::computeResidual(), NodeElemConstraint::computeResidual(), FVFluxKernel::computeResidual(), computeResidual(), ConservativeAdvection::fullUpwind(), TaggingInterface::prepareVectorTagInternal(), TaggingInterface::prepareVectorTagLower(), and TaggingInterface::prepareVectorTagNeighbor().

◆ _mci_feproblem

FEProblemBase& MeshChangedInterface::_mci_feproblem
protectedinherited

Reference to FEProblemBase instance.

Definition at line 38 of file MeshChangedInterface.h.

Referenced by MeshChangedInterface::MeshChangedInterface().

◆ _mesh

MooseMesh& ResidualObject::_mesh
protectedinherited

◆ _mvi_assembly

Assembly* MooseVariableInterface< Real >::_mvi_assembly
protectedinherited

Definition at line 233 of file MooseVariableInterface.h.

◆ _name

const std::string MooseBase::_name
protectedinherited

The name of this class.

Definition at line 90 of file MooseBase.h.

Referenced by AddBCAction::act(), AddDamperAction::act(), AddInterfaceKernelAction::act(), AddDGKernelAction::act(), AddFunctorMaterialAction::act(), AddKernelAction::act(), AddMultiAppAction::act(), AddIndicatorAction::act(), AddPostprocessorAction::act(), AddMarkerAction::act(), AddFVInterfaceKernelAction::act(), AddDiracKernelAction::act(), ReadExecutorParamsAction::act(), AddConstraintAction::act(), AddFVInitialConditionAction::act(), AddVectorPostprocessorAction::act(), AddMeshGeneratorAction::act(), AddInitialConditionAction::act(), AddMaterialAction::act(), AddTransferAction::act(), AddNodalKernelAction::act(), PartitionerAction::act(), AddScalarKernelAction::act(), AddUserObjectAction::act(), AddReporterAction::act(), AddFieldSplitAction::act(), AddTimesAction::act(), AddPositionsAction::act(), AddFVBCAction::act(), AddFVKernelAction::act(), AddFunctionAction::act(), AddMeshDivisionAction::act(), AddTimeStepperAction::act(), AddDistributionAction::act(), SetupPreconditionerAction::act(), SetupTimeIntegratorAction::act(), AddLinearFVBCAction::act(), AddLinearFVKernelAction::act(), AddSamplerAction::act(), AddOutputAction::act(), AddPeriodicBCAction::act(), AddControlAction::act(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), PiecewiseTabularBase::buildFromFile(), PiecewiseTabularBase::buildFromXY(), PiecewiseLinearBase::buildInterpolation(), CombinerGenerator::CombinerGenerator(), Executor::Executor(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), QuadraturePointMultiApp::fillPositions(), CentroidMultiApp::fillPositions(), MultiApp::fillPositions(), FunctionDT::FunctionDT(), FillBetweenPointVectorsGenerator::generate(), FillBetweenSidesetsGenerator::generate(), FillBetweenCurvesGenerator::generate(), NearestPointBase< LayeredSideDiffusiveFluxAverage, SideIntegralVariableUserObject >::name(), ParsedFunctorMaterialTempl< is_ad >::ParsedFunctorMaterialTempl(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), PiecewiseBase::setData(), and Split::setup().

◆ _neighbor_nodal

bool NeighborCoupleable::_neighbor_nodal
protectedinherited

◆ _new_to_deprecated_coupled_vars

const std::unordered_map<std::string, std::string>& Coupleable::_new_to_deprecated_coupled_vars
protectedinherited

map from new to deprecated variable names

Definition at line 1346 of file Coupleable.h.

Referenced by Coupleable::getVarHelper().

◆ _nodal

bool MooseVariableInterface< Real >::_nodal
protectedinherited

Whether or not this object is acting only at nodes.

Definition at line 223 of file MooseVariableInterface.h.

◆ _node_to_elem_map

const std::map<dof_id_type, std::vector<dof_id_type> >& NodeFaceConstraint::_node_to_elem_map
protected

Definition at line 301 of file NodeFaceConstraint.h.

Referenced by getConnectedDofIndices().

◆ _nonlocal_ke

DenseMatrix<Number> TaggingInterface::_nonlocal_ke
protectedinherited

◆ _overwrite_secondary_residual

bool NodeFaceConstraint::_overwrite_secondary_residual
protected

Whether or not the secondary's residual should be overwritten.

When this is true the secondary's residual as computed by the constraint will replace the residual previously at that node for that variable.

Definition at line 309 of file NodeFaceConstraint.h.

Referenced by overwriteSecondaryResidual().

◆ _pars

const InputParameters& MooseBaseParameterInterface::_pars
protectedinherited

Parameters of this object, references the InputParameters stored in the InputParametersWarehouse.

Definition at line 162 of file MooseBaseParameterInterface.h.

Referenced by AddFVICAction::act(), AddICAction::act(), CreateProblemAction::act(), CreateProblemDefaultAction::act(), SetupMeshAction::act(), ComposeTimeStepperAction::act(), SetupDebugAction::act(), AddAuxKernelAction::act(), AddVariableAction::act(), AddPeriodicBCAction::act(), CommonOutputAction::act(), FunctorMaterial::addFunctorPropertyByBlocks(), FVFluxKernel::adjustRMGhostLayers(), BreakMeshByBlockGeneratorBase::BreakMeshByBlockGeneratorBase(), PiecewiseTabularBase::buildFromFile(), PNGOutput::calculateRescalingValues(), MooseBaseParameterInterface::connectControllableParams(), Console::Console(), AddVariableAction::createInitialConditionAction(), MaterialBase::declareADProperty(), MaterialBase::declareProperty(), FEProblemSolve::FEProblemSolve(), FunctionMaterialBase< is_ad >::FunctionMaterialBase(), FVAdvection::FVAdvection(), FVAnisotropicDiffusion::FVAnisotropicDiffusion(), FVDiffusion::FVDiffusion(), FileMeshGenerator::generate(), MaterialBase::getGenericZeroMaterialProperty(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), MooseBaseParameterInterface::getParam(), MooseBaseParameterInterface::getRenamedParam(), MeshGenerator::hasGenerateData(), AddVariableAction::init(), AdvancedOutput::initExecutionTypes(), Console::initialSetup(), MooseBaseParameterInterface::isParamSetByUser(), MooseBaseParameterInterface::isParamValid(), MultiApp::keepSolutionDuringRestore(), MooseBaseParameterInterface::MooseBaseParameterInterface(), MooseBaseParameterInterface::paramErrorMsg(), GlobalParamsAction::parameters(), MooseBaseParameterInterface::parameters(), MooseMesh::prepare(), Eigenvalue::prepareSolverOptions(), MooseMesh::setCoordSystem(), MooseMesh::setPartitionerHelper(), SetupMeshAction::setupMesh(), Transient::setupTimeIntegrator(), MooseBaseParameterInterface::uniqueName(), and MooseBaseParameterInterface::uniqueParameterName().

◆ _penetration_locator

PenetrationLocator& NodeFaceConstraint::_penetration_locator
protected

Definition at line 264 of file NodeFaceConstraint.h.

Referenced by NodeFaceConstraint().

◆ _phi_primary

const VariablePhiValue& NodeFaceConstraint::_phi_primary
protected

◆ _phi_secondary

VariablePhiValue NodeFaceConstraint::_phi_secondary
protected

Shape function on the secondary side. This will always.

Definition at line 273 of file NodeFaceConstraint.h.

Referenced by computeJacobian(), computeOffDiagJacobian(), CoupledTiedValueConstraint::computeQpJacobian(), TiedValueConstraint::computeQpJacobian(), and ~NodeFaceConstraint().

◆ _phi_zero

const VariablePhiValue& Coupleable::_phi_zero
protectedinherited

Definition at line 1401 of file Coupleable.h.

◆ _point_zero

const Point& ScalarCoupleable::_point_zero
protectedinherited

◆ _primary

BoundaryID NodeFaceConstraint::_primary
protected

Boundary ID for the primary surface.

Definition at line 254 of file NodeFaceConstraint.h.

Referenced by buildBoundaryIDs(), and primaryBoundary().

◆ _primary_JxW

const MooseArray<Real>& NodeFaceConstraint::_primary_JxW
protected

JxW on the primary face.

Definition at line 312 of file NodeFaceConstraint.h.

◆ _primary_q_point

const MooseArray<Point>& NodeFaceConstraint::_primary_q_point
protected

Definition at line 258 of file NodeFaceConstraint.h.

◆ _primary_qrule

const QBase* const& NodeFaceConstraint::_primary_qrule
protected

Definition at line 259 of file NodeFaceConstraint.h.

◆ _primary_var

MooseVariable& NodeFaceConstraint::_primary_var
protected

Primary side variable.

Definition at line 278 of file NodeFaceConstraint.h.

Referenced by computeJacobian(), computeOffDiagJacobian(), computeResidual(), and primaryVariable().

◆ _primary_var_num

unsigned int NodeFaceConstraint::_primary_var_num
protected

Number for the primary variable.

Definition at line 281 of file NodeFaceConstraint.h.

Referenced by CoupledTiedValueConstraint::computeQpOffDiagJacobian().

◆ _qp

unsigned int Constraint::_qp
protectedinherited

Definition at line 36 of file Constraint.h.

Referenced by ElemElemConstraint::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighResidual(), ADMortarConstraint::computeJacobian(), MortarConstraint::computeJacobian(), computeJacobian(), ADMortarScalarBase::computeJacobian(), computeOffDiagJacobian(), MortarScalarBase::computeOffDiagJacobianScalar(), OldEqualValueConstraint::computeQpJacobian(), TiedValueConstraint::computeQpJacobian(), CoupledTiedValueConstraint::computeQpJacobian(), EqualValueEmbeddedConstraint::computeQpJacobian(), CoupledTiedValueConstraint::computeQpOffDiagJacobian(), EqualValueEmbeddedConstraint::computeQpOffDiagJacobian(), PeriodicSegmentalConstraint::computeQpOffDiagJacobianScalar(), PenaltyPeriodicSegmentalConstraint::computeQpOffDiagJacobianScalar(), EqualGradientConstraint::computeQpResidual(), EqualValueConstraint::computeQpResidual(), OldEqualValueConstraint::computeQpResidual(), CoupledTiedValueConstraint::computeQpResidual(), TiedValueConstraint::computeQpResidual(), ADPeriodicSegmentalConstraint::computeQpResidual(), PeriodicSegmentalConstraint::computeQpResidual(), EqualValueEmbeddedConstraint::computeQpResidual(), ADPenaltyPeriodicSegmentalConstraint::computeQpResidual(), PenaltyPeriodicSegmentalConstraint::computeQpResidual(), CoupledTiedValueConstraint::computeQpSecondaryValue(), TiedValueConstraint::computeQpSecondaryValue(), EqualValueEmbeddedConstraint::computeQpSecondaryValue(), ADMortarConstraint::computeResidual(), MortarConstraint::computeResidual(), NodeElemConstraint::computeResidual(), computeResidual(), ADMortarScalarBase::computeResidual(), MortarScalarBase::computeResidual(), MortarScalarBase::computeScalarJacobian(), MortarScalarBase::computeScalarOffDiagJacobian(), MortarScalarBase::computeScalarOffDiagJacobianScalar(), PenaltyPeriodicSegmentalConstraint::computeScalarQpJacobian(), PeriodicSegmentalConstraint::computeScalarQpOffDiagJacobian(), PenaltyPeriodicSegmentalConstraint::computeScalarQpOffDiagJacobian(), ADPeriodicSegmentalConstraint::computeScalarQpResidual(), ADPenaltyPeriodicSegmentalConstraint::computeScalarQpResidual(), PenaltyPeriodicSegmentalConstraint::computeScalarQpResidual(), PeriodicSegmentalConstraint::computeScalarQpResidual(), NodeElemConstraint::computeSecondaryValue(), computeSecondaryValue(), NodeElemConstraint::getConnectedDofIndices(), ADPenaltyPeriodicSegmentalConstraint::precalculateMaterial(), and PenaltyPeriodicSegmentalConstraint::precalculateMaterial().

◆ _real_zero

const Real& ScalarCoupleable::_real_zero
protectedinherited

Scalar zero.

Definition at line 238 of file ScalarCoupleable.h.

◆ _requires_geometric_search

bool GeometricSearchInterface::_requires_geometric_search
protectedinherited

Whether any of this interface's methods have been called, e.g.

whether the object that this interface is for requires geometric search data

Definition at line 72 of file GeometricSearchInterface.h.

Referenced by GeometricSearchInterface::getNearestNodeLocator(), GeometricSearchInterface::getPenetrationLocator(), GeometricSearchInterface::getQuadratureNearestNodeLocator(), GeometricSearchInterface::getQuadraturePenetrationLocator(), and GeometricSearchInterface::requiresGeometricSearch().

◆ _restartable_app

MooseApp& Restartable::_restartable_app
protectedinherited

Reference to the application.

Definition at line 227 of file Restartable.h.

Referenced by Restartable::registerRestartableDataOnApp(), and Restartable::registerRestartableNameWithFilterOnApp().

◆ _restartable_read_only

const bool Restartable::_restartable_read_only
protectedinherited

Flag for toggling read only status (see ReporterData)

Definition at line 236 of file Restartable.h.

Referenced by Restartable::registerRestartableDataOnApp().

◆ _restartable_system_name

const std::string Restartable::_restartable_system_name
protectedinherited

The system name this object is in.

Definition at line 230 of file Restartable.h.

Referenced by Restartable::restartableName().

◆ _restartable_tid

const THREAD_ID Restartable::_restartable_tid
protectedinherited

The thread ID for this object.

Definition at line 233 of file Restartable.h.

Referenced by Restartable::declareRestartableDataHelper().

◆ _sc_fe_problem

FEProblemBase& ScalarCoupleable::_sc_fe_problem
protectedinherited

◆ _sc_tid

const THREAD_ID ScalarCoupleable::_sc_tid
protectedinherited

Thread ID of the thread using this object.

Definition at line 235 of file ScalarCoupleable.h.

Referenced by ScalarCoupleable::ScalarCoupleable().

◆ _scalar_zero

const VariableValue& ScalarCoupleable::_scalar_zero
protectedinherited

Zero value of a scalar variable.

Definition at line 241 of file ScalarCoupleable.h.

◆ _second_phi_zero

const VariablePhiSecond& Coupleable::_second_phi_zero
protectedinherited

Zero second derivative of a test function.

Definition at line 1415 of file Coupleable.h.

◆ _second_zero

const VariableSecond& Coupleable::_second_zero
protectedinherited

Zero second derivative of a variable.

Definition at line 1412 of file Coupleable.h.

◆ _secondary

BoundaryID NodeFaceConstraint::_secondary
protected

Boundary ID for the secondary surface.

Definition at line 252 of file NodeFaceConstraint.h.

Referenced by buildBoundaryIDs(), getSecondaryConnectedBlocks(), and secondaryBoundary().

◆ _secondary_residual

Real NodeFaceConstraint::_secondary_residual
protected

The value of the secondary residual.

Definition at line 318 of file NodeFaceConstraint.h.

Referenced by computeResidual(), and secondaryResidual().

◆ _secondary_residual_computed

bool NodeFaceConstraint::_secondary_residual_computed
protected

Whether the secondary residual has been computed.

Definition at line 315 of file NodeFaceConstraint.h.

Referenced by computeResidual(), residualSetup(), and secondaryResidual().

◆ _subproblem

SubProblem& ResidualObject::_subproblem
protectedinherited

◆ _sys

SystemBase& ResidualObject::_sys
protectedinherited

Reference to the EquationSystem object.

Definition at line 132 of file ResidualObject.h.

Referenced by ADDGKernel::ADDGKernel(), ADKernelTempl< T >::ADKernelTempl(), ArrayDGKernel::ArrayDGKernel(), ArrayKernel::ArrayKernel(), Kernel::computeJacobian(), ODEKernel::computeJacobian(), VectorKernel::computeJacobian(), EigenKernel::computeJacobian(), ArrayNodalBC::computeJacobian(), VectorNodalBC::computeJacobian(), NodalBC::computeJacobian(), MortarScalarBase::computeJacobian(), NonlocalKernel::computeNonlocalOffDiagJacobian(), NonlocalIntegratedBC::computeNonlocalOffDiagJacobian(), ArrayNodalBC::computeOffDiagJacobian(), VectorNodalBC::computeOffDiagJacobian(), NodalBC::computeOffDiagJacobian(), NodalKernel::computeOffDiagJacobian(), ODEKernel::computeOffDiagJacobianScalar(), VectorKernel::computeOffDiagJacobianScalar(), ArrayKernel::computeOffDiagJacobianScalar(), VectorIntegratedBC::computeOffDiagJacobianScalar(), IntegratedBC::computeOffDiagJacobianScalar(), ArrayIntegratedBC::computeOffDiagJacobianScalar(), Kernel::computeOffDiagJacobianScalar(), ScalarLagrangeMultiplier::computeOffDiagJacobianScalar(), MortarScalarBase::computeOffDiagJacobianScalar(), KernelScalarBase::computeOffDiagJacobianScalarLocal(), EqualValueEmbeddedConstraint::computeQpJacobian(), EqualValueEmbeddedConstraint::computeQpOffDiagJacobian(), ArrayNodalBC::computeResidual(), VectorNodalBC::computeResidual(), NodalBC::computeResidual(), Kernel::computeResidualAndJacobian(), NodalBC::computeResidualAndJacobian(), IntegratedBC::computeResidualAndJacobian(), KernelScalarBase::computeScalarOffDiagJacobianScalar(), MortarScalarBase::computeScalarOffDiagJacobianScalar(), DGKernel::DGKernel(), NodeElemConstraint::getConnectedDofIndices(), getConnectedDofIndices(), ResidualObject::getVariable(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), Kernel::Kernel(), EqualValueEmbeddedConstraint::reinitConstraint(), ScalarKernelBase::uOld(), and MortarConstraintBase::zeroInactiveLMDofs().

◆ _t

Real& TransientInterface::_t
protectedinherited

Time.

Definition at line 61 of file TransientInterface.h.

Referenced by FVFunctionDirichletBC::boundaryValue(), AnalyticalIndicator::computeQpIntegral(), FunctionElementIntegral::computeQpIntegral(), ElementL2Error::computeQpIntegral(), ElementHCurlSemiError::computeQpIntegral(), ElementHDivSemiError::computeQpIntegral(), ElementL1Error::computeQpIntegral(), FunctionElementIntegralUserObject::computeQpIntegral(), FunctionSideIntegral::computeQpIntegral(), ElementH1SemiError::computeQpIntegral(), ElementVectorL2Error::computeQpIntegral(), ElementW1pError::computeQpIntegral(), FunctionDiffusion::computeQpJacobian(), VectorFunctionReaction::computeQpJacobian(), ArrayBodyForce::computeQpResidual(), FunctionDiffusion::computeQpResidual(), ConvectiveFluxBC::computeQpResidual(), ADFunctionNeumannBC::computeQpResidual(), ADVectorFunctionNeumannBC::computeQpResidual(), FunctionDiracSource::computeQpResidual(), FVFunctionNeumannBC::computeQpResidual(), FunctionGradientNeumannBC::computeQpResidual(), FunctionNeumannBC::computeQpResidual(), VectorFunctionReaction::computeQpResidual(), VectorCurlPenaltyDirichletBC::computeQpResidual(), VectorDivPenaltyDirichletBC::computeQpResidual(), VectorFunctionDirichletBC::computeQpResidual(), VectorPenaltyDirichletBC::computeQpResidual(), VectorBodyForce::computeQpResidual(), ADConservativeAdvectionBC::computeQpResidual(), FVOrthogonalBoundaryDiffusion::computeQpResidual(), FVBodyForce::computeQpResidual(), UserForcingFunctionNodalKernel::computeQpResidual(), SinDirichletBC::computeQpResidual(), ADFunctionPenaltyDirichletBC::computeQpResidual(), SinNeumannBC::computeQpResidual(), FunctionPenaltyDirichletBC::computeQpResidual(), DGFunctionDiffusionDirichletBC::computeQpResidual(), ADVectorFunctionDirichletBC::computeQpValue(), ADFunctionDirichletBC::computeQpValue(), FunctionDirichletBC::computeQpValue(), FunctionArrayAux::computeValue(), ForcingFunctionAux::computeValue(), ParsedAux::computeValue(), ParsedVectorAux::computeValue(), ArrayParsedAux::computeValue(), FunctionScalarAux::computeValue(), VectorFunctionAux::computeValue(), FunctionAux::computeValue(), SolutionScalarAux::computeValue(), ElementL2ErrorFunctionAux::computeValue(), SolutionAux::computeValue(), ElementH1ErrorFunctionAux::computeValue(), ConditionalFunctionEnableControl::conditionMet(), TimePeriod::conditionMet(), NodalL2Error::execute(), IterationInfo::execute(), LineFunctionSampler::execute(), BoolFunctionControl::execute(), PIDTransientControl::execute(), RealFunctionControl::execute(), LeastSquaresFitHistory::execute(), TimeExtremeValue::execute(), UserForcingFunction::f(), ParsedPostprocessor::finalize(), FunctionValuePostprocessor::getValue(), ScalarL2Error::getValue(), ActivateElementsByPath::isElementActivated(), and SolutionUserObject::timestepSetup().

◆ _t_step

int& TransientInterface::_t_step
protectedinherited

◆ _test_primary

const VariableTestValue& NodeFaceConstraint::_test_primary
protected

◆ _test_secondary

VariableTestValue NodeFaceConstraint::_test_secondary
protected

◆ _ti_feproblem

FEProblemBase& TransientInterface::_ti_feproblem
protectedinherited

◆ _ti_params

const InputParameters& TransientInterface::_ti_params
protectedinherited

Definition at line 48 of file TransientInterface.h.

◆ _tid

THREAD_ID ResidualObject::_tid
protectedinherited

The thread ID for this kernel.

Definition at line 135 of file ResidualObject.h.

Referenced by ADDGKernel::ADDGKernel(), ADIntegratedBCTempl< T >::ADIntegratedBCTempl(), ADKernelTempl< T >::ADKernelTempl(), ArrayDGKernel::ArrayDGKernel(), ArrayIntegratedBC::ArrayIntegratedBC(), ArrayKernel::ArrayKernel(), ODEKernel::computeJacobian(), NonlocalKernel::computeNonlocalOffDiagJacobian(), NonlocalIntegratedBC::computeNonlocalOffDiagJacobian(), ODEKernel::computeOffDiagJacobianScalar(), VectorKernel::computeOffDiagJacobianScalar(), ArrayKernel::computeOffDiagJacobianScalar(), IntegratedBC::computeOffDiagJacobianScalar(), VectorIntegratedBC::computeOffDiagJacobianScalar(), Kernel::computeOffDiagJacobianScalar(), ArrayIntegratedBC::computeOffDiagJacobianScalar(), ScalarLagrangeMultiplier::computeOffDiagJacobianScalar(), MortarScalarBase::computeOffDiagJacobianScalar(), KernelScalarBase::computeOffDiagJacobianScalarLocal(), Kernel::computeResidualAndJacobian(), NodalBC::computeResidualAndJacobian(), IntegratedBC::computeResidualAndJacobian(), KernelScalarBase::computeScalarOffDiagJacobianScalar(), MortarScalarBase::computeScalarOffDiagJacobianScalar(), DGKernel::DGKernel(), FVAdvection::FVAdvection(), FVAnisotropicDiffusion::FVAnisotropicDiffusion(), FVDiffusion::FVDiffusion(), ResidualObject::getVariable(), IntegratedBC::IntegratedBC(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), Kernel::Kernel(), NodalBC::NodalBC(), NodalKernel::NodalKernel(), NeighborResidualObject::prepareNeighborShapes(), IntegratedBCBase::prepareShapes(), InterfaceKernelBase::prepareShapes(), DGKernelBase::prepareShapes(), ResidualObject::prepareShapes(), and NodalScalarKernel::reinit().

◆ _type

const std::string MooseBase::_type
protectedinherited

◆ _u_primary

const VariableValue& NodeFaceConstraint::_u_primary
protected

◆ _u_secondary

const VariableValue& NodeFaceConstraint::_u_secondary
protected

Value of the unknown variable this BC is action on.

Definition at line 271 of file NodeFaceConstraint.h.

Referenced by CoupledTiedValueConstraint::computeQpResidual(), and TiedValueConstraint::computeQpResidual().

◆ _var

MooseVariable& NodeFaceConstraint::_var
protected

◆ _variable

MooseVariableFE<Real >* MooseVariableInterface< Real >::_variable
protectedinherited

Definition at line 227 of file MooseVariableInterface.h.

◆ _vector_curl_zero

const VectorVariableCurl& Coupleable::_vector_curl_zero
protectedinherited

Zero value of the curl of a vector variable.

Definition at line 1419 of file Coupleable.h.

◆ _vector_zero

const VectorVariableValue& Coupleable::_vector_zero
protectedinherited

Zero value of a vector variable.

Definition at line 1417 of file Coupleable.h.

◆ _zero

const VariableValue& Coupleable::_zero
protectedinherited

Zero value of a variable.

Definition at line 1400 of file Coupleable.h.


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