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

#include <SetupInterface.h>

Inheritance diagram for SetupInterface:
[legend]

Public Member Functions

 SetupInterface (const MooseObject *moose_object)
 
 SetupInterface (const SetupInterface &object, const Moose::Kokkos::FunctorCopy &key)
 Special constructor used for Kokkos functor copy during parallel dispatch.
 
virtual ~SetupInterface ()
 
virtual void initialSetup ()
 Gets called at the beginning of the simulation before this object is asked to do its job.
 
virtual void timestepSetup ()
 Gets called at the beginning of the timestep before this object is asked to do its job.
 
virtual void jacobianSetup ()
 Gets called just before the Jacobian is computed and before this object is asked to do its job.
 
virtual void residualSetup ()
 Gets called just before the residual is computed and before this object is asked to do its job.
 
virtual void subdomainSetup ()
 Gets called when the subdomain changes (i.e.
 
virtual void customSetup (const ExecFlagType &)
 Gets called in FEProblemBase::execute() for execute flags other than initial, timestep_begin, nonlinear, linear and subdomain.
 
const ExecFlagEnumgetExecuteOnEnum () const
 Return the execute on MultiMooseEnum for this object.
 

Static Public Member Functions

static InputParameters validParams ()
 

Protected Attributes

const ExecFlagEnum_execute_enum
 Execute settings for this object.
 
const ExecFlagType_current_execute_flag
 Reference to FEProblemBase.
 

Private Attributes

ExecFlagEnum _empty_execute_enum
 Empty ExecFlagEnum for the case when the "execute_on" parameter is not included.
 

Friends

class FEProblemBase
 

Detailed Description

Definition at line 23 of file SetupInterface.h.

Constructor & Destructor Documentation

◆ SetupInterface() [1/2]

SetupInterface::SetupInterface ( const MooseObject moose_object)

Definition at line 26 of file SetupInterface.C.

27 : _execute_enum(moose_object->parameters().isParamValid("execute_on")
28 ? moose_object->parameters().get<ExecFlagEnum>("execute_on")
31 (moose_object->parameters().getCheckedPointerParam<FEProblemBase *>("_fe_problem_base"))
32 ->getCurrentExecuteOnFlag())
33{
35 .clearSetValues(); // remove any flags for the case when "execute_on" is not used
36}
A MultiMooseEnum object to hold "execute_on" flags.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
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 isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another,...
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
void clearSetValues()
Clear the MultiMooseEnum.
const ExecFlagEnum & _execute_enum
Execute settings for this object.
const ExecFlagType & _current_execute_flag
Reference to FEProblemBase.
ExecFlagEnum _empty_execute_enum
Empty ExecFlagEnum for the case when the "execute_on" parameter is not included.

◆ SetupInterface() [2/2]

SetupInterface::SetupInterface ( const SetupInterface object,
const Moose::Kokkos::FunctorCopy key 
)

Special constructor used for Kokkos functor copy during parallel dispatch.

Definition at line 39 of file SetupInterface.C.

◆ ~SetupInterface()

SetupInterface::~SetupInterface ( )
virtual

Definition at line 45 of file SetupInterface.C.

45{}

Member Function Documentation

◆ customSetup()

virtual void SetupInterface::customSetup ( const ExecFlagType )
inlinevirtual

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

Reimplemented in Function.

Definition at line 69 of file SetupInterface.h.

69{}

◆ getExecuteOnEnum()

const ExecFlagEnum & SetupInterface::getExecuteOnEnum ( ) const

◆ initialSetup()

void SetupInterface::initialSetup ( )
virtual

Gets called at the beginning of the simulation before this object is asked to do its job.

Reimplemented in DerivativeSumMaterialTempl< is_ad >, AdvancedOutput, MultiAppFieldTransfer, Transfer, AuxKernelBase, MortarNodalAuxKernelTempl< ComputeValueType >, ProjectedStatefulMaterialAuxTempl< T, is_ad >, SolutionAux, SolutionScalarAux, DiffusionLHDGDirichletBC, DiffusionLHDGPrescribedGradientBC, SetValueChainControlTempl< T >, PIDTransientControl, RealFunctionControl, TimePeriod, Convergence, DefaultConvergenceBase, MultiPostprocessorConvergence, ParsedConvergence, ReferenceResidualConvergence, Axisymmetric2D3DSolutionFunction, CoarsenedPiecewiseLinear, ImageFunction, MooseParsedFunction, MooseParsedGradFunction, MooseParsedVectorFunction, PiecewiseConstantFromCSV, PiecewiseLinear, PiecewiseLinearBase, PiecewiseTabularBase, DiffusionLHDGKernel, KokkosParsedFunction, KokkosPiecewiseTabularBase, Moose::Kokkos::LinearFVBoundaryCondition, Moose::Kokkos::LinearFVFluxKernel, KokkosBoundNodalKernel, KokkosExtraIDIntegralVectorPostprocessor, LibtorchControlValuePostprocessor, LibtorchArtificialNeuralNetParameters, LinearFVAdvection, LinearFVAnisotropicDiffusion, LinearFVDiffusion, DerivativeFunctionMaterialBaseTempl< is_ad >, DerivativeFunctionMaterialBaseTempl< is_ad >, ElementSubdomainModifierBase, MFEMParsedFunction, MFEMSamplerBase, MFEMScalarCoefficientPointValueSampler, MFEMVariableSamplerBase, FullSolveMultiApp, MultiApp, TransientMultiApp, NEML2FEInterpolation, NEML2ModelExecutor, Console, CSV, Exodus, JSONOutput, Nemesis, SampledOutput, MultiAppPositions, BoundaryLinearFVFluxIntegral, ChainControlDataPostprocessor, ElementalVariableValue, NodalVariableValue, SideFVFluxBCIntegral, SideIntegralMaterialPropertyTempl< is_ad >, SideIntegralPostprocessor, MultiAppCloneReporterTransfer, MultiAppConservativeTransfer, MultiAppDofCopyTransfer, MultiAppGeneralFieldFunctorTransfer, MultiAppGeneralFieldKDTreeTransferBase, MultiAppGeneralFieldNearestLocationTransfer, MultiAppGeneralFieldTransfer, MultiAppProjectionTransfer, MultiAppReporterTransfer, MultiAppTransfer, MultiAppVariableValueSamplePostprocessorTransfer, MultiAppVariableValueSampleTransfer, GhostingUserObject, InterfaceQpUserObjectBase, NodalPatchRecoveryMaterialProperty, ProjectedStatefulMaterialNodalPatchRecoveryTempl< T, is_ad >, RadialAverage, SideUserObject, SolutionUserObjectBase, Terminator, MooseLinearVariableFV< OutputType >, MooseLinearVariableFV< ComputeValueType >, MooseLinearVariableFV< Real >, MooseLinearVariableFV< RealEigenVector >, MooseLinearVariableFV< RealVectorValue >, MooseLinearVariableFV< T >, MooseVariableBase, MooseVariableFV< OutputType >, MooseVariableFV< ComputeValueType >, MooseVariableFV< Real >, MooseVariableFV< RealEigenVector >, MooseVariableFV< RealVectorValue >, MooseVariableFV< T >, HistogramVectorPostprocessor, BoundsBase, and ParsedMaterialHelper< is_ad >.

Definition at line 48 of file SetupInterface.C.

49{
50}

Referenced by LibtorchControlValuePostprocessor::initialSetup(), Console::initialSetup(), CSV::initialSetup(), ElementalVariableValue::initialSetup(), SideIntegralPostprocessor::initialSetup(), SideUserObject::initialSetup(), MooseLinearVariableFV< OutputType >::initialSetup(), MooseVariableFV< OutputType >::initialSetup(), and Positions::meshChanged().

◆ jacobianSetup()

void SetupInterface::jacobianSetup ( )
virtual

◆ residualSetup()

void SetupInterface::residualSetup ( )
virtual

◆ subdomainSetup()

void SetupInterface::subdomainSetup ( )
virtual

Gets called when the subdomain changes (i.e.

in a Jacobian or residual loop) and before this object is asked to do its job

Reimplemented in Material, MaterialBase, GeneralUserObject, NodalUserObject, ThreadedGeneralUserObject, Constraint, Moose::Kokkos::AuxKernel, Moose::Kokkos::MaterialBase, and Moose::Kokkos::UserObject.

Definition at line 68 of file SetupInterface.C.

69{
70}

◆ timestepSetup()

void SetupInterface::timestepSetup ( )
virtual

◆ validParams()

InputParameters SetupInterface::validParams ( )
static

Definition at line 15 of file SetupInterface.C.

16{
18
19 // Add the 'execute_on' input parameter for users to set
21 execute_options = EXEC_LINEAR;
22 params.addParam<ExecFlagEnum>("execute_on", execute_options, execute_options.getDocString());
23 return params;
24}
InputParameters emptyInputParameters()
const ExecFlagType EXEC_LINEAR
Definition Moose.C:31
std::string getDocString() const
Generate a documentation string for the "execute_on" parameter.
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
void addParam(const std::string &name, const S &value, const std::string &doc_string)
These methods add an optional parameter and a documentation string to the InputParameters object.
ExecFlagEnum getDefaultExecFlagEnum()
Definition MooseUtils.C:972

Referenced by AuxKernelBase::validParams(), AuxScalarKernel::validParams(), Control::validParams(), Convergence::validParams(), Moose::FunctionBase::validParams(), FunctorMaterial::validParams(), FVInterfaceKernel::validParams(), MFEMExecutedObject::validParams(), MultiApp::validParams(), Output::validParams(), Sampler::validParams(), Transfer::validParams(), and UserObjectBase::validParams().

Friends And Related Symbol Documentation

◆ FEProblemBase

friend class FEProblemBase
friend

Definition at line 89 of file SetupInterface.h.

Member Data Documentation

◆ _current_execute_flag

const ExecFlagType& SetupInterface::_current_execute_flag
protected

Reference to FEProblemBase.

Definition at line 86 of file SetupInterface.h.

Referenced by PseudoTimestep::execute().

◆ _empty_execute_enum

ExecFlagEnum SetupInterface::_empty_execute_enum
private

Empty ExecFlagEnum for the case when the "execute_on" parameter is not included.

This is private because others should not be messing with it.

Definition at line 79 of file SetupInterface.h.

Referenced by SetupInterface().

◆ _execute_enum

const ExecFlagEnum& SetupInterface::_execute_enum
protected

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