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

Class for output data to the XDAII format. More...

#include <XDA.h>

Inheritance diagram for XDA:
[legend]

Public Types

using DataFileParameterType = DataFileName
 The parameter type this interface expects for a data file name.
 

Public Member Functions

 XDA (const InputParameters &parameters)
 Class consturctor.
 
bool supportsMaterialPropertyOutput () const override
 A virtual function that stores whether output type supports material output.
 
virtual void initialSetup () override
 Call init() method on setup.
 
virtual void meshChanged () override
 Called on this object when the mesh changes.
 
virtual void outputStep (const ExecFlagType &type) override
 A single call to this function should output all the necessary data for a single timestep.
 
virtual bool hasOutput ()
 Returns true if any of the other has methods return true.
 
bool hasOutput (const ExecFlagType &type)
 Tests that any output exist for the given output type.
 
bool hasNodalVariableOutput ()
 Returns true if there exists nodal nonlinear variables for output.
 
const std::set< std::string > & getNodalVariableOutput ()
 The list of nodal nonlinear variables names that are set for output.
 
bool hasElementalVariableOutput ()
 Returns true if there exists elemental nonlinear variables for output.
 
const std::set< std::string > & getElementalVariableOutput ()
 The list of elemental nonlinear variables names that are set for output.
 
bool hasScalarOutput ()
 Returns true if there exists scalar variables for output.
 
const std::set< std::string > & getScalarOutput ()
 The list of scalar variables names that are set for output.
 
bool hasPostprocessorOutput ()
 Returns true if there exists postprocessors for output.
 
const std::set< std::string > & getPostprocessorOutput ()
 The list of postprocessor names that are set for output.
 
bool hasVectorPostprocessorOutput ()
 Returns true if there exists VectorPostprocessors for output.
 
const std::set< std::string > & getVectorPostprocessorOutput ()
 The list of VectorPostprocessor names that are set for output.
 
bool hasReporterOutput ()
 Returns true if there exists Reporter for output.
 
const std::set< std::string > & getReporterOutput ()
 The list of Reporter names that are set for output.
 
const OutputOnWarehouseadvancedExecuteOn () const
 Get the current advanced 'execute_on' selections for display.
 
void setFileBase (const std::string &file_base)
 Sets the file base string if the 'file_base' parameter is not set.
 
void setFileNumber (unsigned int num)
 Sets the file number manually.
 
unsigned int getFileNumber ()
 Return the current file number for this outputter.
 
virtual Real time () override
 Get the output time.
 
virtual Real timeOld ()
 Get the old output time.
 
virtual Real dt ()
 Get the current time step size.
 
virtual Real dtOld ()
 Get old time step size.
 
virtual int timeStep ()
 Get the current time step.
 
const unsigned intinterval () const
 Get the output interval.
 
const MultiMooseEnumexecuteOn () const
 Get the current 'execute_on' selections for display.
 
bool isAdvanced ()
 Returns true if this object is an AdvancedOutput object.
 
void allowOutput (bool state)
 Method for controlling the allow output state.
 
const std::set< Real > & getSyncTimes ()
 
virtual bool enabled () const
 Return the enabled status of the object.
 
std::shared_ptr< MooseObjectgetSharedPtr ()
 Get another shared pointer to this object that has the same ownership group.
 
std::shared_ptr< const MooseObjectgetSharedPtr () const
 
bool isKokkosObject () const
 Get whether this object is a Kokkos functor The parameter MooseBase::kokkos_object_param is set by the Kokkos base classes.
 
MooseAppgetMooseApp () const
 Get the MooseApp this class is associated with.
 
const std::string & type () const
 Get the type of this class.
 
const std::string & name () const
 Get the name of the class.
 
std::string typeAndName () const
 Get the class's combined type and name; useful in error handling.
 
MooseObjectParameterName uniqueParameterName (const std::string &parameter_name) const
 
MooseObjectName uniqueName () const
 
const InputParametersparameters () const
 Get the parameters of the object.
 
const hit::Node * getHitNode () const
 
bool hasBase () const
 
const std::string & getBase () const
 
template<typename T >
const T & getParam (const std::string &name) const
 Retrieve a parameter for the object.
 
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.
 
template<typename T >
const T * queryParam (const std::string &name) const
 Query a parameter for the object.
 
template<typename T >
const T & getRenamedParam (const std::string &old_name, const std::string &new_name) const
 Retrieve a renamed parameter for the object.
 
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.
 
bool isParamValid (const std::string &name) const
 Test if the supplied parameter is valid.
 
bool isParamSetByUser (const std::string &name) const
 Test if the supplied parameter is set by a user, as opposed to not set or set to default.
 
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.
 
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.
 
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.
 
template<typename... Args>
void paramWarning (const std::string &param, Args... args) const
 
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.
 
std::string messagePrefix (const bool hit_prefix=true) const
 
std::string errorPrefix (const std::string &) const
 Deprecated message prefix; the error type is no longer used.
 
template<typename... Args>
void mooseError (Args &&... args) const
 Emits an error prefixed with object name and type and optionally a file path to the top-level block parameter if available.
 
template<typename... Args>
void mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const
 
template<typename... Args>
void mooseErrorNonPrefixed (Args &&... args) const
 Emits an error without the prefixing included in mooseError().
 
template<typename... Args>
void mooseWarning (Args &&... args) const
 Emits a warning prefixed with object name and type.
 
template<typename... Args>
void mooseWarning (Args &&... args) const
 
template<typename... Args>
void mooseWarningNonPrefixed (Args &&... args) const
 Emits a warning without the prefixing included in mooseWarning().
 
template<typename... Args>
void mooseWarningNonPrefixed (Args &&... args) const
 
template<typename... Args>
void mooseDeprecated (Args &&... args) const
 Emits a deprecation warning prefixed with the object name and type, and a stack trace.
 
template<typename... Args>
void mooseDeprecated (Args &&... args) const
 
template<typename... Args>
void mooseDeprecatedNoTrace (Args &&... args) const
 Emits a deprecation warning prefixed with the object name and type, and no stack trace.
 
template<typename... Args>
void mooseInfo (Args &&... args) const
 
void callMooseError (std::string msg, const bool with_prefix, const hit::Node *node=nullptr, const bool show_trace=true) const
 External method for calling moose error with added object context.
 
const Parallel::Communicatorcomm () const
 
processor_id_type n_processors () const
 
processor_id_type processor_id () const
 
std::string getDataFileName (const std::string &param) const
 Deprecated method.
 
std::string getDataFileNameByName (const std::string &relative_path) const
 Deprecated method.
 
std::string getDataFilePath (const std::string &relative_path) const
 Returns the path of a data file for a given relative file path.
 
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.
 
const FunctiongetFunction (const std::string &name) const
 Get a function with a given name.
 
const FunctiongetFunctionByName (const FunctionName &name) const
 Get a function with a given name.
 
bool hasFunction (const std::string &param_name) const
 Determine if the function exists.
 
bool hasFunctionByName (const FunctionName &name) const
 Determine if the function exists.
 
Moose::Kokkos::Function getKokkosFunction (const std::string &name) const
 Get a Kokkos function of an abstract type with a given name Calling this function will error out currently if Kokkos was configured with GPU.
 
template<typename T >
const T & getKokkosFunction (const std::string &name) const
 Get a Kokkos function of a concrete type with a given name.
 
Moose::Kokkos::Function getKokkosFunctionByName (const FunctionName &name) const
 Get a Kokkos function of an abstract type with a given name Calling this function will error out currently if Kokkos was configured with GPU.
 
template<typename T >
const T & getKokkosFunctionByName (const FunctionName &name) const
 Get a Kokkos function of a concrete type with a given name.
 
bool hasKokkosFunction (const std::string &param_name) const
 Determine if the Kokkos function exists.
 
bool hasKokkosFunctionByName (const FunctionName &name) const
 Determine if the Kokkos function exists.
 
bool isDefaultPostprocessorValue (const std::string &param_name, const unsigned int index=0) const
 Determine whether or not the Postprocessor is a default value.
 
bool hasPostprocessor (const std::string &param_name, const unsigned int index=0) const
 Determine if the Postprocessor data exists.
 
bool hasPostprocessorByName (const PostprocessorName &name) const
 Determine if the Postprocessor data exists.
 
std::size_t coupledPostprocessors (const std::string &param_name) const
 Returns number of Postprocessors coupled under parameter name.
 
const PostprocessorName & getPostprocessorName (const std::string &param_name, const unsigned int index=0) const
 Get the name of a postprocessor.
 
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.
 
const VectorPostprocessorValuegetVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the value of a VectorPostprocessor.
 
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.
 
const VectorPostprocessorValuegetVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the value of the VectorPostprocessor.
 
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.
 
const VectorPostprocessorValuegetVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the old value of a VectorPostprocessor.
 
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.
 
const VectorPostprocessorValuegetVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const
 Retrieve the old value of a VectorPostprocessor.
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValue (const std::string &param_name, const std::string &vector_name) const
 Return the scatter value for the post processor.
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 Return the scatter value for the post processor.
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueOld (const std::string &param_name, const std::string &vector_name) const
 Return the old scatter value for the post processor.
 
const ScatterVectorPostprocessorValuegetScatterVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 Return the old scatter value for the post processor.
 
bool hasVectorPostprocessor (const std::string &param_name, const std::string &vector_name) const
 Determine if the VectorPostprocessor data exists by parameter.
 
bool hasVectorPostprocessor (const std::string &param_name) const
 Determine if the VectorPostprocessor exists by parameter.
 
bool hasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 Determine if the VectorPostprocessor data exists by name.
 
bool hasVectorPostprocessorByName (const VectorPostprocessorName &name) const
 Determine if the VectorPostprocessor exists by name.
 
const VectorPostprocessorName & getVectorPostprocessorName (const std::string &param_name) const
 Get the name of a VectorPostprocessor associated with a parameter.
 
PerfGraphperfGraph ()
 Get the PerfGraph.
 
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
 
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.
 
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.
 
bool isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const
 

Static Public Member Functions

static InputParameters validParams ()
 
static InputParameters enableOutputTypes (const std::string &names=std::string())
 A method for enabling individual output type control.
 
static ExecFlagEnum getDefaultExecFlagEnum ()
 Return an ExecFlagEnum object with the available execution flags for Output objects.
 
static void addDeprecatedInputParameters (InputParameters &params)
 A static helper for injecting deprecated parameters.
 
static void callMooseError (MooseApp *const app, const InputParameters &params, std::string msg, const bool with_prefix, const hit::Node *node, const bool show_trace=true)
 External method for calling moose error with added object context.
 

Public Attributes

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

Static Public Attributes

static const std::string type_param = "_type"
 The name of the parameter that contains the object type.
 
static const std::string name_param = "_object_name"
 The name of the parameter that contains the object name.
 
static const std::string unique_name_param = "_unique_name"
 The name of the parameter that contains the unique object name.
 
static const std::string app_param = "_moose_app"
 The name of the parameter that contains the MooseApp.
 
static const std::string moose_base_param = "_moose_base"
 The name of the parameter that contains the moose system base.
 
static const std::string kokkos_object_param = "_kokkos_object"
 The name of the parameter that indicates an object is a Kokkos functor.
 

Protected Member Functions

virtual void output () override
 Overload the Output::output method, this is required for XDA output due to the method utlized for outputting single/global parameters.
 
virtual std::string filename () override
 Returns the current filename, this method handles adding the timestep suffix.
 
virtual void updateSample ()
 Performs the update of the solution vector for the sample/re-positioned mesh.
 
virtual void setFileBaseInternal (const std::string &file_base) override
 Appends the base class's file base string.
 
virtual void init ()
 Populates the various data structures needed to control the output.
 
void hideAdditionalVariable (const std::string &category, const std::string &var_name)
 Add an additional variable to the hide list.
 
virtual bool shouldOutput ()
 Handles logic for determining if a step should be output.
 
virtual void outputNodalVariables ()
 Performs output of nodal nonlinear variables The child class must define this method to output the nonlinear variables as desired.
 
virtual void outputElementalVariables ()
 Performs output of elemental nonlinear variables The child class must define this method to output the nonlinear variables as desired.
 
virtual void outputScalarVariables ()
 Performs output of scalar variables The child class must define this method to output the scalar variables as desired.
 
virtual void outputPostprocessors ()
 Performs output of postprocessors The child class must define this method to output the postprocessors as desired.
 
virtual void outputVectorPostprocessors ()
 Performs output of VectorPostprocessors The child class must define this method to output the VectorPostprocessors as desired.
 
virtual void outputInput ()
 Performs the output of the input file By default this method does nothing and is not called, the individual Output objects are responsible for calling it.
 
virtual void outputSystemInformation ()
 
virtual void outputReporters ()
 Output Reporter values.
 
void clearLastExecuteTime ()
 Clears bookkeeping used to suppress duplicate EXEC_FINAL output at the same time.
 
bool checkFilename ()
 Checks the filename for output Checks the output against the 'output_if_base_contians' list.
 
bool inNonlinearTimeWindow ()
 
bool inLinearTimeWindow ()
 
virtual Real getOutputTime ()
 Get the time that will be used for stream/file outputting.
 
virtual bool onInterval ()
 Returns true if the output interval is satisfied.
 
void setWallTimeIntervalFromCommandLineParam ()
 Function to set the wall time interval based on value of command line parameter (used for testing only).
 
template<bool warning>
void flagInvalidSolutionInternal (const InvalidSolutionID invalid_solution_id) const
 Set solution invalid mark for the given solution ID.
 
InvalidSolutionID registerInvalidSolutionInternal (const std::string &message, const bool warning) const
 
template<typename T , typename... Args>
T & declareRestartableData (const std::string &data_name, Args &&... args)
 Declare a piece of data as "restartable" and initialize it.
 
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.
 
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.
 
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.
 
template<typename T , typename... Args>
T & declareRecoverableData (const std::string &data_name, Args &&... args)
 Declare a piece of data as "recoverable" and initialize it.
 
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".
 
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".
 
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.
 
virtual void addPostprocessorDependencyHelper (const PostprocessorName &) const
 Helper for deriving classes to override to add dependencies when a Postprocessor is requested.
 
virtual void addVectorPostprocessorDependencyHelper (const VectorPostprocessorName &) const
 Helper for deriving classes to override to add dependencies when a VectorPostprocessor is requested.
 
const ReporterContextBasegetReporterContextBaseByName (const ReporterName &reporter_name) const
 Get the reporter context to allow non-typed operations with the data.
 
const ReporterNamegetReporterName (const std::string &param_name) const
 
virtual void addReporterDependencyHelper (const ReporterName &)
 A method that can be overridden to update the UO dependencies.
 
PerfID registerTimedSection (const std::string &section_name, const unsigned int level) const
 Call to register a named section for timing.
 
PerfID registerTimedSection (const std::string &section_name, const unsigned int level, const std::string &live_message, const bool print_dots=true) const
 Call to register a named section for timing.
 
std::string timedSectionName (const std::string &section_name) const
 
template<typename T >
const T & getReporterValue (const std::string &param_name, const std::size_t time_index=0)
 doco-normal-methods-begin Returns read-only reference to a Reporter value that is provided by an input parameter.
 
template<typename T >
const T & getReporterValue (const std::string &param_name, ReporterMode mode, const std::size_t time_index=0)
 
template<typename T >
const T & getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0)
 Returns read-only reference to a Reporter value that is provided by name directly.
 
template<typename T >
const T & getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0)
 
bool hasReporterValue (const std::string &param_name) const
 Return True if the Reporter value exists.
 
template<typename T >
bool hasReporterValue (const std::string &param_name) const
 
bool hasReporterValueByName (const ReporterName &reporter_name) const
 
template<typename T >
bool hasReporterValueByName (const ReporterName &reporter_name) const
 

Static Protected Member Functions

static PetscErrorCode petscNonlinearOutput (SNES, PetscInt its, PetscReal fnorm, void *void_ptr)
 Performs the output on non-linear iterations This is the monitor method that PETSc will call on non-linear iterations.
 
static PetscErrorCode petscLinearOutput (KSP, PetscInt its, PetscReal fnorm, void *void_ptr)
 Performs the output onlinear iterations This is the monitor method that PETSc will call on linear iterations.
 

Protected Attributes

const unsigned int _refinements
 The number of oversampling refinements.
 
const bool _using_external_sampling_file
 Flag indicating another file is being used for the sampling.
 
const bool _change_position
 Flag for re-positioning.
 
bool _use_sampled_output
 Flag indicating that the sampled output should be used to re-sample the underlying EquationSystem of the output.
 
bool _elemental_as_nodal
 Flags to control nodal output.
 
bool _scalar_as_nodal
 
const ReporterData_reporter_data
 Storage for Reporter values.
 
unsigned int_file_num
 A file number counter, initialized to 0 (this must be controlled by the child class, see Exodus)
 
unsigned int _padding
 Number of digits to pad the extensions.
 
std::vector< std::string > _output_if_base_contains
 Storage for 'output_if_base_contains'.
 
std::string _file_base
 The base filename from the input paramaters.
 
Real _norm
 Current norm returned from PETSc.
 
PetscInt _nonlinear_iter
 Current non-linear iteration returned from PETSc.
 
PetscInt _linear_iter
 Current linear iteration returned from PETSc.
 
bool _on_linear_residual
 True if current output calls is on the linear residual (used by time())
 
bool _on_nonlinear_residual
 True if current output call is on the non-linear residual (used by time())
 
FEProblemBase_problem_ptr
 Pointer the the FEProblemBase object for output object (use this)
 
bool _transient
 Transient flag (true = transient)
 
bool _use_displaced
 Flag for using displaced mesh.
 
libMesh::EquationSystems_es_ptr
 Reference the the libMesh::EquationSystems object that contains the data.
 
MooseMesh_mesh_ptr
 A convenience pointer to the current mesh (reference or displaced depending on "use_displaced")
 
bool _sequence
 Flag for forcing call to outputSetup() with every call to output() (restartable)
 
ExecFlagEnum _execute_on
 The common Execution types; this is used as the default execution type for everything except system information and input.
 
ExecFlagType _current_execute_flag
 Current execute on flag.
 
Real & _time
 The current time for output purposes.
 
Real & _time_old
 The old time.
 
int_t_step
 The current time step.
 
Real & _dt
 Time step delta.
 
Real & _dt_old
 Old time step delta.
 
unsigned int _num
 The number of outputs written.
 
const bool _time_step_interval_set_by_addparam
 Whether time step interval is set by AddParam.
 
unsigned int _time_step_interval
 The output time step interval.
 
const Real _min_simulation_time_interval
 Minimum simulation time between outputs.
 
Real _wall_time_interval
 Target wall time between outputs in seconds.
 
std::set< Real > _sync_times
 Sync times for this outputter.
 
const Times *const _sync_times_object
 Sync times object for this outputter.
 
Real _start_time
 Start outputting time.
 
Real _end_time
 End outputting time.
 
int _start_step
 Start outputting at this time step.
 
int _end_step
 End outputting at this time step.
 
Real _t_tol
 Time checking tolerance.
 
bool _sync_only
 Flag for only executing at sync times.
 
bool _allow_output
 Flag for disabling output.
 
bool _is_advanced
 Flag for advanced output testing.
 
OutputOnWarehouse _advanced_execute_on
 Storage for the individual component execute flags.
 
Real & _last_output_simulation_time
 last simulation time an output has occured
 
std::chrono::time_point< std::chrono::steady_clock > _last_output_wall_time
 last wall time an output has occured
 
Real _wall_time_since_last_output
 time in seconds since last output
 
const bool & _enabled
 Reference to the "enable" InputParameters, used by Controls for toggling on/off MooseObjects.
 
MooseApp_app
 The MOOSE application this is associated with.
 
Factory_factory
 The Factory associated with the MooseApp.
 
ActionFactory_action_factory
 Builds Actions.
 
const std::string & _type
 The type of this class.
 
const std::string & _name
 The name of this class.
 
const InputParameters_pars
 The object's parameters.
 
const Parallel::Communicator_communicator
 
MooseApp_restartable_app
 Reference to the application.
 
const std::string _restartable_system_name
 The system name this object is in.
 
const THREAD_ID _restartable_tid
 The thread ID for this object.
 
const bool _restartable_read_only
 Flag for toggling read only status (see ReporterData)
 
FEProblemBase_mci_feproblem
 Reference to FEProblemBase instance.
 
const ExecFlagEnum_execute_enum
 Execute settings for this object.
 
MooseApp_pg_moose_app
 The MooseApp that owns the PerfGraph.
 
const std::string _prefix
 A prefix to use for all sections.
 
PetscOutput_petsc_output
 

Private Member Functions

void initSample ()
 Setups the output object to produce re-positioned and/or sampled results.
 
void cloneMesh ()
 Clone mesh in preperation for re-positioning or oversampling.
 
bool isSampledAtNodes (const FEType &fe_type) const
 Used to decide which variable is sampled at nodes, then output as a nodal variable for (over)sampling purposes If not sampled at nodes, it is sampled at centroids and output as a constant monomial.
 
void initAvailableLists ()
 Initializes the available lists for each of the output types.
 
void initExecutionTypes (const std::string &name, ExecFlagEnum &input)
 Initialize the possible execution types.
 
void initShowHideLists (const std::vector< VariableName > &show, const std::vector< VariableName > &hide)
 Parses the user-supplied input for hiding and showing variables and postprocessors into a list for each type of output.
 
template<typename postprocessor_type >
void initPostprocessorOrVectorPostprocessorLists (const std::string &execute_data_name)
 Helper function for initAvailableLists, templated on warehouse type and postprocessor_type.
 
void initOutputList (OutputData &data)
 Initializes the list of items to be output using the available, show, and hide lists.
 
bool wantOutput (const std::string &name, const ExecFlagType &type)
 Handles logic for determining if a step should be output.
 
bool hasOutputHelper (const std::string &name)
 Helper method for checking if output types exists.
 
void solveSetup () override
 Internal setup function that executes at the beginning of the time step.
 
RestartableDataValueregisterRestartableDataOnApp (std::unique_ptr< RestartableDataValue > data, THREAD_ID tid) const
 Helper function for actually registering the restartable data.
 
void registerRestartableNameWithFilterOnApp (const std::string &name, Moose::RESTARTABLE_FILTER filter)
 Helper function for actually registering the restartable data.
 
template<typename T , typename... Args>
RestartableData< T > & declareRestartableDataHelper (const std::string &data_name, void *context, Args &&... args) const
 Helper function for declaring restartable data.
 
const Moose::FunctionBasegetKokkosFunctionByNameHelper (const FunctionName &name) const
 Helper function to retrieve a Kokkos function.
 
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 isDefaultPostprocessorValueByName (const PostprocessorName &name) const
 
PostprocessorValue getDefaultPostprocessorValueByName (const PostprocessorName &name) const
 
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 postprocessorsAdded () const
 
const VectorPostprocessorValuegetVectorPostprocessorByNameHelper (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 VectorPostprocessorContext< VectorPostprocessorValue > & getVectorPostprocessorContextByNameHelper (const VectorPostprocessorName &name, const std::string &vector_name) const
 Helper for getting the VPP context that handles scatter values.
 
bool vectorPostprocessorsAdded () const
 
bool reportersAdded () const
 
template<typename T >
void possiblyCheckHasReporter (const ReporterName &reporter_name, const std::string &param_name="") const
 Helpers for "possibly" checking if a Reporter value exists.
 
const PostprocessorValuegetPostprocessorValueInternal (const std::string &param_name, unsigned int index, std::size_t t_index) const
 Internal methods for getting Postprocessor values.
 
const PostprocessorValuegetPostprocessorValueByNameInternal (const PostprocessorName &name, std::size_t t_index) const
 
void possiblyCheckHasVectorPostprocessor (const std::string &param_name, const std::string &vector_name) const
 Helpers for "possibly" checking if a vpp exists.
 
void possiblyCheckHasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const
 

Static Private Member Functions

static void addValidParams (InputParameters &params, const MultiMooseEnum &types)
 Method for defining the available parameters based on the types of outputs.
 
static MultiMooseEnum getOutputTypes ()
 Get the supported types of output (e.g., postprocessors, etc.)
 
static const hit::Node * getHitNode (const InputParameters &params)
 Internal method for getting a hit node (if available) given a set of parameters.
 
static std::string messagePrefix (const InputParameters &params, const bool hit_prefix)
 Internal method for getting the message prefix for an object (object type, name, etc).
 

Private Attributes

bool _binary
 Flag for binary output.
 
std::vector< std::vector< std::unique_ptr< libMesh::MeshFunction > > > _mesh_functions
 A vector of pointers to the mesh functions on the sampled mesh This is only populated when the initSample() function is called, it must be cleaned up by the destructor.
 
std::vector< std::vector< unsigned int > > _variable_numbers_in_system
 A vector of vectors that keeps track of the variable numbers in each system for each mesh function.
 
Point _position
 When oversampling, the output is shift by this amount.
 
bool _sampling_mesh_changed
 A flag indicating that the mesh has changed and the sampled mesh needs to be re-initialized.
 
bool _mesh_subdomains_match
 A flag tracking whether the sampling and source meshes match in terms of subdomains.
 
bool _serialize
 Flag indicating whether we are outputting in serial or parallel.
 
std::unique_ptr< EquationSystems > _sampling_es
 Equation system holding the solution vectors for the sampled variables.
 
std::unique_ptr< MooseMesh_sampling_mesh_ptr
 Mesh used for sampling. The Output class' _mesh_ptr will refer to this mesh if sampling is being used.
 
std::unique_ptr< NumericVector< Number > > _serialized_solution
 Sample solution vector.
 
OutputDataWarehouse _execute_data
 Storage structures for the various output types.
 
std::map< std::string, Real > & _last_execute_time
 Storage for the last output time for the various output types, this is used to avoid duplicate output when using OUTPUT_FINAL flag.
 
const bool _postprocessors_as_reporters
 Flags for outputting PP/VPP data as a reporter.
 
const bool _vectorpostprocessors_as_reporters
 
Real _nonlinear_time
 The psuedo non-linear time.
 
Real _nonlinear_dt
 The pseuedo non-linear time step.
 
Real _linear_time
 Psuedo linear time.
 
Real _linear_dt
 Psuedo linear time step.
 
Real _nonlinear_dt_divisor
 Pseudo non-linear timestep divisor.
 
Real _linear_dt_divisor
 Pseudo linear timestep divisor.
 
Real _nonlinear_start_time
 Non-linear residual output start time.
 
Real _linear_start_time
 Linear residual output start time.
 
Real _nonlinear_end_time
 Non-linear residual output end time.
 
Real _linear_end_time
 Linear residual output end time.
 
const ParallelParamObject_parent
 
const MooseBase_si_moose_base
 The MooseBase that owns this interface.
 
const FEProblemBase_si_problem
 A pointer to FEProblem base.
 
const RestartableDataMapName _metaname
 Restartable metadata name.
 
std::string _restartable_name
 The name of the object.
 
ExecFlagEnum _empty_execute_enum
 Empty ExecFlagEnum for the case when the "execute_on" parameter is not included.
 
const MooseObject_fni_object
 Reference to the object.
 
const InputParameters_fni_params
 Parameters of the object with this interface.
 
FEProblemBase_fni_feproblem
 Reference to FEProblemBase instance.
 
const THREAD_ID _fni_tid
 Thread ID.
 
const MooseObject_ppi_moose_object
 The MooseObject that uses this interface.
 
const InputParameters_ppi_params
 PostprocessorInterface Parameters.
 
const FEProblemBase_ppi_feproblem
 Reference the the FEProblemBase class.
 
std::map< PostprocessorName, std::unique_ptr< PostprocessorValue > > _default_values
 Holds the default postprocessor values that are requested (key is PostprocessorName)
 
const bool _broadcast_by_default
 Whether or not to force broadcasting by default.
 
const MooseObject_vpi_moose_object
 The MooseObject that uses this interface.
 
const FEProblemBase_vpi_feproblem
 Reference the FEProblemBase class.
 
const THREAD_ID _vpi_tid
 Thread ID.
 
const InputParameters_ri_params
 Parameters for the MooseObject inherting from this interface.
 
FEProblemBase_ri_fe_problem_base
 Provides access to FEProblemBase::getReporterData.
 
const ReporterData_ri_reporter_data
 The ReporterData.
 
const MooseObject_ri_moose_object
 The MooseObject needing this interface.
 

Detailed Description

Class for output data to the XDAII format.

Definition at line 18 of file XDA.h.

Member Typedef Documentation

◆ DataFileParameterType

using DataFileInterface::DataFileParameterType = DataFileName
inherited

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

Definition at line 27 of file DataFileInterface.h.

Constructor & Destructor Documentation

◆ XDA()

XDA::XDA ( const InputParameters parameters)

Class consturctor.

Definition at line 41 of file XDA.C.

42 : SampledOutput(parameters), _binary(getParam<bool>("_binary"))
43{
44}
const InputParameters & parameters() const
Get the parameters of the object.
Definition MooseBase.h:131
Based class for providing re-positioning and oversampling support to output objects.
bool _binary
Flag for binary output.
Definition XDA.h:45

Member Function Documentation

◆ addDeprecatedInputParameters()

static void Output::addDeprecatedInputParameters ( InputParameters params)
staticinherited

A static helper for injecting deprecated parameters.

◆ 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 UserObjectBase, AuxKernelBase, and InitialConditionBase.

Definition at line 149 of file PostprocessorInterface.h.

149{}

Referenced by PostprocessorInterface::getPostprocessorValueByNameInternal().

◆ addReporterDependencyHelper()

virtual void ReporterInterface::addReporterDependencyHelper ( const ReporterName )
inlineprotectedvirtualinherited

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

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

Reimplemented in UserObjectBase.

Definition at line 112 of file ReporterInterface.h.

112{}

Referenced by ReporterInterface::getReporterValueByName().

◆ addValidParams()

void AdvancedOutput::addValidParams ( InputParameters params,
const MultiMooseEnum types 
)
staticprivateinherited

Method for defining the available parameters based on the types of outputs.

Parameters
paramsThe InputParamters object to add parameters to
typesThe types of output this object should support (see Output::enableOutputTypes)

Each output object may have a varying set of supported output types (e.g., elemental variables may not be supported). This private, static method populates the InputParameters object with the correct parameters based on the items contained in the ExecFlagEnum.

This method is private, users should utilize the Output::enableOutputTypes method

See also
Output::enableOutputTypes

Definition at line 712 of file AdvancedOutput.C.

713{
715 empty_execute_on.addAvailableFlags(EXEC_FAILED);
716
717 // Nodal output
718 if (types.isValueSet("nodal"))
719 {
720 params.addParam<ExecFlagEnum>(
721 "execute_nodal_on", empty_execute_on, "Control the output of nodal variables");
722 params.addParamNamesToGroup("execute_nodal_on", "Selection/restriction of output");
723 }
724
725 // Elemental output
726 if (types.isValueSet("elemental"))
727 {
728 params.addParam<ExecFlagEnum>(
729 "execute_elemental_on", empty_execute_on, "Control the output of elemental variables");
730 params.addParamNamesToGroup("execute_elemental_on", "Selection/restriction of output");
731
732 // Add material output control, which are output via elemental variables
733 params.addParam<bool>("output_material_properties",
734 false,
735 "Flag indicating if material properties should be output");
736 params.addParam<std::vector<std::string>>(
737 "show_material_properties",
738 "List of material properties that should be written to the output");
739 params.addParamNamesToGroup("output_material_properties show_material_properties", "Materials");
740
741 // Add mesh extra element id control, which are output via elemental variables
742 params.addParam<bool>(
743 "output_extra_element_ids",
744 false,
745 "Flag indicating if extra element ids defined on the mesh should be outputted");
746 params.addParam<std::vector<std::string>>(
747 "extra_element_ids_to_output",
748 "List of extra element ids defined on the mesh that should be written to the output.");
749 params.addParamNamesToGroup("output_extra_element_ids extra_element_ids_to_output", "Mesh");
750 }
751
752 // Scalar variable output
753 if (types.isValueSet("scalar"))
754 {
755 params.addParam<ExecFlagEnum>(
756 "execute_scalars_on", empty_execute_on, "Control the output of scalar variables");
757 params.addParamNamesToGroup("execute_scalars_on", "Selection/restriction of output");
758 }
759
760 // Nodal and scalar output
761 if (types.isValueSet("nodal") && types.isValueSet("scalar"))
762 {
763 params.addParam<bool>("scalar_as_nodal", false, "Output scalar variables as nodal");
764 params.addParamNamesToGroup("scalar_as_nodal", "Conversions before output");
765 }
766
767 // Elemental and nodal
768 if (types.isValueSet("elemental") && types.isValueSet("nodal"))
769 {
770 params.addParam<bool>(
771 "elemental_as_nodal", false, "Output elemental nonlinear variables as nodal");
772 params.addParamNamesToGroup("elemental_as_nodal", "Conversions before output");
773 }
774
775 // Postprocessors
776 if (types.isValueSet("postprocessor"))
777 {
778 params.addParam<ExecFlagEnum>(
779 "execute_postprocessors_on", empty_execute_on, "Control of when postprocessors are output");
780 params.addParamNamesToGroup("execute_postprocessors_on", "Selection/restriction of output");
781 }
782
783 // Vector Postprocessors
784 if (types.isValueSet("vector_postprocessor"))
785 {
786 params.addParam<ExecFlagEnum>("execute_vector_postprocessors_on",
787 empty_execute_on,
788 "Enable/disable the output of VectorPostprocessors");
789 params.addParamNamesToGroup("execute_vector_postprocessors_on",
790 "Selection/restriction of output");
791 }
792
793 // Reporters
794 if (types.isValueSet("reporter"))
795 {
796 params.addParam<ExecFlagEnum>(
797 "execute_reporters_on", empty_execute_on, "Control of when Reporter values are output");
798 params.addParamNamesToGroup("execute_reporters_on", "Selection/restriction of output");
799 }
800
801 // Input file
802 if (types.isValueSet("input"))
803 {
804 params.addParam<ExecFlagEnum>(
805 "execute_input_on", empty_execute_on, "Enable/disable the output of the input file");
806 params.addParamNamesToGroup("execute_input_on", "Selection/restriction of output");
807 }
808
809 // System Information
810 if (types.isValueSet("system_information"))
811 {
812 params.addParam<ExecFlagEnum>("execute_system_information_on",
813 empty_execute_on,
814 "Control when the output of the simulation information occurs");
815 params.addParamNamesToGroup("execute_system_information_on", "Selection/restriction of output");
816 }
817}
const ExecFlagType EXEC_FAILED
Definition Moose.C:50
A MultiMooseEnum object to hold "execute_on" flags.
void addAvailableFlags(const ExecFlagType &flag, Args... flags)
Add additional execute_on flags to the list of possible flags.
void addParamNamesToGroup(const std::string &space_delim_names, const std::string group_name)
This method takes a space delimited list of parameter names and adds them to the specified group name...
void 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.
bool isValueSet(const std::string &value) const
Methods for seeing if a value is set in the MultiMooseEnum.
ExecFlagEnum getDefaultExecFlagEnum()
Definition MooseUtils.C:972

Referenced by AdvancedOutput::enableOutputTypes().

◆ addVectorPostprocessorDependencyHelper()

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

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

Reimplemented in UserObjectBase, and AuxKernelBase.

Definition at line 319 of file VectorPostprocessorInterface.h.

320 {
321 }

Referenced by VectorPostprocessorInterface::getVectorPostprocessorByNameHelper(), and VectorPostprocessorInterface::getVectorPostprocessorContextByNameHelper().

◆ advancedExecuteOn()

const OutputOnWarehouse & AdvancedOutput::advancedExecuteOn ( ) const
virtualinherited

Get the current advanced 'execute_on' selections for display.

Reimplemented from Output.

Definition at line 899 of file AdvancedOutput.C.

900{
902}
OutputOnWarehouse _advanced_execute_on
Storage for the individual component execute flags.
Definition Output.h:277

Referenced by CSV::initialSetup().

◆ allowOutput()

void Output::allowOutput ( bool  state)
inlineinherited

Method for controlling the allow output state.

Parameters
stateThe state to set the allow flag to

Definition at line 129 of file Output.h.

129{ _allow_output = state; }
bool _allow_output
Flag for disabling output.
Definition Output.h:268

◆ callMooseError() [1/2]

void MooseBase::callMooseError ( MooseApp *const  app,
const InputParameters params,
std::string  msg,
const bool  with_prefix,
const hit::Node *  node,
const bool  show_trace = true 
)
staticinherited

External method for calling moose error with added object context.

Needed so that objects without the MooseBase context (InputParameters) can call errors with context

Parameters
appThe app pointer (if available); adds multiapp context and clears the console
paramsThe parameters, needed to obtain object information
msgThe message
with_prefixIf true, add the prefix from messagePrefix(), which is the object information (type, name, etc)
nodeOptional hit node to add file path context as a prefix
show_traceWhether or not to show a stack trace, defaults to true

Definition at line 114 of file MooseBase.C.

120{
121 if (!node)
122 node = MooseBase::getHitNode(params);
123
124 std::string multiapp_prefix = "";
125 if (app)
126 {
127 if (!app->isUltimateMaster())
128 multiapp_prefix = app->name();
130 }
131
132 if (with_prefix)
133 // False here because the hit context will get processed by the node
134 msg = messagePrefix(params, false) + msg;
135
136 moose::internal::mooseErrorRaw(msg, multiapp_prefix, node, show_trace);
137}
OutputWarehouse & getOutputWarehouse()
Get the OutputWarehouse objects.
Definition MooseApp.C:2409
bool isUltimateMaster() const
Whether or not this app is the ultimate master app.
Definition MooseApp.h:866
const hit::Node * getHitNode() const
Definition MooseBase.h:136
const std::string & name() const
Get the name of the class.
Definition MooseBase.h:103
std::string messagePrefix(const bool hit_prefix=true) const
Definition MooseBase.h:256
void mooseConsole()
Send current output buffer to Console output objects.
void mooseErrorRaw(std::string msg, const std::string &prefix="", const hit::Node *node=nullptr, const bool show_trace=true)
Main callback for emitting a moose error.
Definition MooseError.C:53

◆ callMooseError() [2/2]

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

External method for calling moose error with added object context.

Parameters
msgThe message
with_prefixIf true, add the prefix from messagePrefix(), which is the object information (type, name, etc)
nodeOptional hit node to add file path context as a prefix
show_traceWhether or not to show a stack trace, defaults to true

Definition at line 105 of file MooseBase.C.

109{
110 callMooseError(&_app, _pars, msg, with_prefix, node, show_trace);
111}
MooseApp & _app
The MOOSE application this is associated with.
Definition MooseBase.h:375
void callMooseError(std::string msg, const bool with_prefix, const hit::Node *node=nullptr, const bool show_trace=true) const
External method for calling moose error with added object context.
Definition MooseBase.C:105
const InputParameters & _pars
The object's parameters.
Definition MooseBase.h:384

Referenced by MooseBase::callMooseError(), InputParameters::callMooseError(), MooseBase::mooseDocumentedError(), MooseBase::mooseError(), and MooseBase::mooseErrorNonPrefixed().

◆ checkFilename()

bool FileOutput::checkFilename ( )
protectedinherited

Checks the filename for output Checks the output against the 'output_if_base_contians' list.

Returns
Returns true if the filename is valid for output

Definition at line 88 of file FileOutput.C.

89{
90 // Return true if 'output_if_base_contains' is not utilized
91 if (_output_if_base_contains.empty())
92 return true;
93
94 // Assumed output is false
95 bool output = false;
96
97 // Loop through each string in the list
98 for (const auto & search_string : _output_if_base_contains)
99 {
100 // Search for the string in the file base, if found set the output to true and break the loop
101 if (_file_base.find(search_string) != std::string::npos)
102 {
103 output = true;
104 break;
105 }
106 }
107
108 // Return the value
109 return output;
110}
std::vector< std::string > _output_if_base_contains
Storage for 'output_if_base_contains'.
Definition FileOutput.h:86
std::string _file_base
The base filename from the input paramaters.
Definition FileOutput.h:89
virtual void output()=0
Overload this function with the desired output activities.

Referenced by AdvancedOutput::shouldOutput(), and FileOutput::shouldOutput().

◆ checkParam()

void PostprocessorInterface::checkParam ( const std::string &  param_name,
const unsigned int  index = std::numeric_limits<unsigned int>::max() 
) const
privateinherited

Checks the parameters relating to a Postprocessor.

If index is not set, index checking is not performed.

Definition at line 149 of file PostprocessorInterface.C.

152{
153 const bool check_index = index != std::numeric_limits<unsigned int>::max();
154
155 if (!_ppi_params.isParamValid(param_name))
157 "When getting a Postprocessor, failed to get a parameter with the name \"",
158 param_name,
159 "\".",
160 "\n\nKnown parameters:\n",
162
163 if (_ppi_params.isType<PostprocessorName>(param_name))
164 {
165 if (check_index && index > 0)
166 _ppi_moose_object.paramError(param_name,
167 "A Postprocessor was requested with index ",
168 index,
169 " but a single Postprocessor is coupled.");
170 }
171 else if (_ppi_params.isType<std::vector<PostprocessorName>>(param_name))
172 {
173 const auto & names = _ppi_params.get<std::vector<PostprocessorName>>(param_name);
174 if (check_index && names.size() <= index)
175 _ppi_moose_object.paramError(param_name,
176 "A Postprocessor was requested with index ",
177 index,
178 " but only ",
179 names.size(),
180 " Postprocessors are coupled.");
181 }
182 else
183 {
185 "Supplied parameter with name \"",
186 param_name,
187 "\" of type \"",
188 _ppi_params.type(param_name),
189 "\" is not an expected type for getting a Postprocessor.\n\n",
190 "Allowed types are \"PostprocessorName\" and \"std::vector<PostprocessorName>\".");
191 }
192}
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::string type(const std::string &name) const
Prints the type of the requested parameter by name.
bool isType(const std::string &name) const
bool isParamValid(const std::string &name) const
This method returns parameters that have been initialized in one fashion or another,...
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 ...
Definition MooseBase.h:457
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type and optionally a file path to the top-level block p...
Definition MooseBase.h:271
const MooseObject & _ppi_moose_object
The MooseObject that uses this interface.
const InputParameters & _ppi_params
PostprocessorInterface Parameters.

Referenced by PostprocessorInterface::coupledPostprocessors(), and PostprocessorInterface::getPostprocessorNameInternal().

◆ clearLastExecuteTime()

void AdvancedOutput::clearLastExecuteTime ( )
protectedinherited

Clears bookkeeping used to suppress duplicate EXEC_FINAL output at the same time.

Definition at line 337 of file AdvancedOutput.C.

338{
339 _last_execute_time.clear();
340}
std::map< std::string, Real > & _last_execute_time
Storage for the last output time for the various output types, this is used to avoid duplicate output...

Referenced by Exodus::clear(), and TableOutput::clear().

◆ cloneMesh()

void SampledOutput::cloneMesh ( )
privateinherited

Clone mesh in preperation for re-positioning or oversampling.

This changes the pointer, _mesh_ptr, with a clone of the current mesh so that it may be modified to perform the necessary sample/positioning/block-restriction actions

Definition at line 446 of file SampledOutput.C.

447{
448 // Create the new mesh from a file
449 if (isParamValid("file"))
450 {
451 InputParameters mesh_params = _app.getFactory().getValidParams("FileMesh");
452 mesh_params.applyParameters(parameters(), {}, true);
453 mesh_params.set<bool>("nemesis") = false;
455 _app.getFactory().createUnique<MooseMesh>("FileMesh", "output_problem_mesh", mesh_params);
456 _sampling_mesh_ptr->allowRecovery(false); // We actually want to reread the initial mesh
457 _sampling_mesh_ptr->init();
458 }
459 // Clone the existing mesh
460 else
461 {
462 if (_app.isRecovering())
463 mooseWarning("Recovering or Restarting with oversampling may not work (especially with "
464 "adapted meshes)!! Refs #2295");
466 }
467
468 // Remove unspecified blocks
469 if (isParamValid("sampling_blocks"))
470 {
471 // Remove all elements not in the blocks
472 const auto & blocks_to_keep_names = getParam<std::vector<SubdomainName>>("sampling_blocks");
473 const auto & blocks_to_keep = _sampling_mesh_ptr->getSubdomainIDs(blocks_to_keep_names);
474 for (const auto & elem_ptr : _sampling_mesh_ptr->getMesh().element_ptr_range())
475 if (std::find(blocks_to_keep.begin(), blocks_to_keep.end(), elem_ptr->subdomain_id()) ==
476 blocks_to_keep.end())
477 _sampling_mesh_ptr->getMesh().delete_elem(elem_ptr);
478
479 // Deleting elements and isolated nodes would cause renumbering. Not renumbering might help
480 // user examining the sampling mesh and the regular mesh. Also if we end up partitioning the
481 // elements, the node partitioning is unlikely to match if the element numbering is different.
482 // Still not enough of a guarantee, because of deleted elements the node partitioning could be
483 // different. We will rely on ghosting to make it work
484 _sampling_mesh_ptr->getMesh().allow_renumbering(false);
485 }
486
487 // Set a partitioner
488 if (!_serialize)
489 {
490 _sampling_mesh_ptr->setIsCustomPartitionerRequested(true);
491 InputParameters partition_params = _app.getFactory().getValidParams("CopyMeshPartitioner");
492 partition_params.set<MooseMesh *>("mesh") = _sampling_mesh_ptr.get();
493 partition_params.set<MooseMesh *>("source_mesh") = _mesh_ptr;
494 std::shared_ptr<MoosePartitioner> mp = _factory.create<MoosePartitioner>(
495 "CopyMeshPartitioner", "sampled_output_part", partition_params);
496 _sampling_mesh_ptr->setCustomPartitioner(mp.get());
497
498 _sampling_mesh_ptr->getMesh().prepare_for_use();
499 // this should be called by prepare_for_use, but is not.
500 // it also requires a prior call to prepare_for_use()
501 mp->partition(_sampling_mesh_ptr->getMesh(), comm().size());
502 }
503
504 // Prepare mesh, needed for the mesh functions
506 _sampling_mesh_ptr->prepare(/*mesh to clone*/ nullptr);
507 else if (_serialize && isParamValid("sampling_blocks"))
508 // TODO: constraints have not been initialized?
509 _sampling_mesh_ptr->getMesh().prepare_for_use();
510
511 if (_serialize)
512 // we want to avoid re-partitioning, as we will serialize anyway
513 _sampling_mesh_ptr->getMesh().skip_partitioning(true);
514
515 // Make sure that the mesh pointer points to the newly cloned mesh
517
518 // Check the source and target mesh in case their subdomains match
519 const std::vector<SubdomainID> mesh_subdomain_ids_vec(_mesh_ptr->meshSubdomains().begin(),
520 _mesh_ptr->meshSubdomains().end());
521 const std::vector<SubdomainID> initial_mesh_subdomain_ids_vec(
525 _mesh_ptr->getSubdomainNames(mesh_subdomain_ids_vec) ==
526 _problem_ptr->mesh().getSubdomainNames(initial_mesh_subdomain_ids_vec));
528 mooseInfoRepeated("Variable block restriction disabled in sampled output due to non-matching "
529 "subdomain names and ids");
530}
void mooseInfoRepeated(Args &&... args)
Emit an informational message with the given stringified, concatenated args.
Definition MooseError.h:409
void mooseWarning(Args &&... args)
Emit a warning message with the given stringified, concatenated args.
Definition MooseError.h:345
virtual MooseMesh & mesh() override
The main MOOSE class responsible for handling user-defined parameters in almost every MOOSE system.
T & set(const std::string &name, bool quiet_mode=false)
Returns a writable reference to the named parameters.
void applyParameters(const InputParameters &common, const std::vector< std::string > &exclude={}, const bool allow_private=false)
Method for applying common parameters.
Factory & getFactory()
Retrieve a writable reference to the Factory associated with this App.
Definition MooseApp.h:407
bool isRecovering() const
Whether or not this is a "recover" calculation.
Definition MooseApp.C:1669
bool isParamValid(const std::string &name) const
Test if the supplied parameter is valid.
Definition MooseBase.h:199
MooseMesh wraps a libMesh::Mesh object and enhances its capabilities by caching additional data and s...
Definition MooseMesh.h:95
void allowRecovery(bool allow)
Set whether or not this mesh is allowed to read a recovery file.
Definition MooseMesh.h:1173
std::vector< SubdomainName > getSubdomainNames(const std::vector< SubdomainID > &subdomain_ids) const
Get the associated subdomainNames for the subdomain ids that are passed in.
Definition MooseMesh.C:1757
const std::set< SubdomainID > & meshSubdomains() const
Returns a read-only reference to the set of subdomains currently present in the Mesh.
Definition MooseMesh.C:3272
virtual std::unique_ptr< MooseMesh > safeClone() const =0
A safer version of the clone() method that hands back an allocated object wrapped in a smart pointer.
MooseApp & _app
The MOOSE application this is associated with.
Definition MooseBase.h:375
Base class for MOOSE partitioner.
FEProblemBase * _problem_ptr
Pointer the the FEProblemBase object for output object (use this)
Definition Output.h:185
MooseMesh * _mesh_ptr
A convenience pointer to the current mesh (reference or displaced depending on "use_displaced")
Definition Output.h:197
Factory & _factory
The Factory associated with the MooseApp.
const bool _using_external_sampling_file
Flag indicating another file is being used for the sampling.
bool _mesh_subdomains_match
A flag tracking whether the sampling and source meshes match in terms of subdomains.
bool _serialize
Flag indicating whether we are outputting in serial or parallel.
std::unique_ptr< MooseMesh > _sampling_mesh_ptr
Mesh used for sampling. The Output class' _mesh_ptr will refer to this mesh if sampling is being used...
processor_id_type size() const
virtual std::unique_ptr< Base > create()=0
const Parallel::Communicator & comm() const
virtual void partition(MeshBase &mesh, const unsigned int n)
KOKKOS_INLINE_FUNCTION const T * find(const T &target, const T *const begin, const T *const end)
Find a value in an array.
Definition KokkosUtils.h:40
if(subdm)

Referenced by SampledOutput::initSample().

◆ connectControllableParams()

void MooseBase::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 77 of file MooseBase.C.

81{
82 auto & factory = _app.getFactory();
83 auto & ip_warehouse = _app.getInputParameterWarehouse();
84
85 MooseObjectParameterName primary_name(uniqueName(), parameter);
86 const auto base_type = factory.getValidParams(object_type).getBase();
87 MooseObjectParameterName secondary_name(base_type, object_name, object_parameter);
88 ip_warehouse.addControllableParameterConnection(primary_name, secondary_name);
89
90 const auto & tags = _pars.get<std::vector<std::string>>("control_tags");
91 for (const auto & tag : tags)
92 {
93 if (!tag.empty())
94 {
95 // Only adds the parameter with the different control tags if the derived class
96 // properly registers the parameter to its own syntax
97 MooseObjectParameterName tagged_name(tag, name(), parameter);
98 ip_warehouse.addControllableParameterConnection(
99 tagged_name, secondary_name, /*error_on_empty=*/false);
100 }
101 }
102}
InputParameterWarehouse & getInputParameterWarehouse()
Get the InputParameterWarehouse for MooseObjects.
Definition MooseApp.C:2867
MooseObjectName uniqueName() const
Definition MooseBase.C:69
A class for storing an input parameter name.

◆ 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 139 of file PostprocessorInterface.C.

140{
141 checkParam(param_name);
142
143 if (_ppi_params.isType<PostprocessorName>(param_name))
144 return 1;
145 return _ppi_params.get<std::vector<PostprocessorName>>(param_name).size();
146}
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.

Referenced by FunctionValuePostprocessor::FunctionValuePostprocessor().

◆ 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 69 of file SetupInterface.h.

69{}

◆ 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 283 of file Restartable.h.

286{
287 auto & data_ptr =
288 declareRestartableDataHelper<T>(data_name, context, std::forward<Args>(args)...);
289 return Restartable::ManagedValue<T>(data_ptr);
290}
Wrapper class for restartable data that is "managed.
Definition Restartable.h:43

◆ 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 358 of file Restartable.h.

359{
360 const auto full_name = restartableName(data_name);
361
363
364 return declareRestartableDataWithContext<T>(data_name, nullptr, std::forward<Args>(args)...);
365}
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:78
void registerRestartableNameWithFilterOnApp(const std::string &name, Moose::RESTARTABLE_FILTER filter)
Helper function for actually registering the restartable data.
Definition Restartable.C:71

◆ 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 276 of file Restartable.h.

277{
278 return declareRestartableDataWithContext<T>(data_name, nullptr, std::forward<Args>(args)...);
279}

◆ declareRestartableDataHelper()

template<typename T , typename... Args>
RestartableData< T > & Restartable::declareRestartableDataHelper ( const std::string &  data_name,
void *  context,
Args &&...  args 
) const
privateinherited

Helper function for declaring restartable data.

We use this function to reduce code duplication when returning const/nonconst references to the data.

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 310 of file Restartable.h.

313{
314 const auto full_name = restartableName(data_name);
315
316 // Here we will create the RestartableData even though we may not use this instance.
317 // If it's already in use, the App will return a reference to the existing instance and we'll
318 // return that one instead. We might refactor this to have the app create the RestartableData
319 // at a later date.
320 auto data_ptr =
321 std::make_unique<RestartableData<T>>(full_name, context, std::forward<Args>(args)...);
322 auto & restartable_data_ref = static_cast<RestartableData<T> &>(
323 registerRestartableDataOnApp(std::move(data_ptr), _restartable_tid));
324
325 return restartable_data_ref;
326}
Concrete definition of a parameter value for a specified type.
const THREAD_ID _restartable_tid
The thread ID for this object.
RestartableDataValue & registerRestartableDataOnApp(std::unique_ptr< RestartableDataValue > data, THREAD_ID tid) const
Helper function for actually registering the restartable data.
Definition Restartable.C:63

◆ 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 301 of file Restartable.h.

304{
305 return declareRestartableDataHelper<T>(data_name, context, std::forward<Args>(args)...).set();
306}

◆ 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 330 of file Restartable.h.

333{
334 return declareRestartableDataWithObjectNameWithContext<T>(
335 data_name, object_name, nullptr, std::forward<Args>(args)...);
336}

◆ 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 340 of file Restartable.h.

344{
345 std::string old_name = _restartable_name;
346
347 _restartable_name = object_name;
348
349 T & value = declareRestartableDataWithContext<T>(data_name, context, std::forward<Args>(args)...);
350
351 _restartable_name = old_name;
352
353 return value;
354}
std::string _restartable_name
The name of the object.
Real value(unsigned n, unsigned alpha, unsigned beta, Real x)

◆ dt()

Real Output::dt ( )
virtualinherited

Get the current time step size.

Definition at line 369 of file Output.C.

370{
371 if (_transient)
372 return _dt;
373 else
374 return 1;
375}
bool _transient
Transient flag (true = transient)
Definition Output.h:188
Real & _dt
Time step delta.
Definition Output.h:223

Referenced by Console::writeTimestepInformation().

◆ dtOld()

Real Output::dtOld ( )
virtualinherited

Get old time step size.

Definition at line 378 of file Output.C.

379{
380 if (_transient)
381 return _dt_old;
382 else
383 return 1;
384}
Real & _dt_old
Old time step delta.
Definition Output.h:226

◆ 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.

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

Referenced by EigenKernel::enabled(), BlockRestrictionDebugOutput::printBlockRestrictionGroups(), BlockRestrictionDebugOutput::printBoundaryRestrictionGroups(), and NodeFaceConstraint::validParams().

◆ enableOutputTypes()

InputParameters AdvancedOutput::enableOutputTypes ( const std::string &  names = std::string())
staticinherited

A method for enabling individual output type control.

Parameters
names(optional) Space separated of output type names that are supported by this Output object, if this is omitted all outputs types will be supported. The list of available output types is given below.

Output objects vary widely in what type of outputs they support (e.g., elemental variables, or postprocessor data). This method provides the user a means for controlling the types of outputs that are supported for the object being created. This is a static method that MUST be used to append parameters inside the objects validParams function.

List of Output Types and Method Names The output system is designed around overloading virtual method calls to output the various output types, the following list gives the name of the output type and the associated virtual method that should be overloaded to perform the output in the object being created.

Type virtual Method Name


nodal outputNodalVariables() elemental outputElementalVariables() scalar outputScalarVariables() postprocessor outputPostprocessors() vector_postprocessor outputVectorPostprocessors() input outputInput() system_information outputSystemInformation()

See also
CSV Exodus

Definition at line 117 of file AdvancedOutput.C.

118{
119 // The parameters object that will be returned
121
122 // Get the MultiEnum of output types
123 MultiMooseEnum output_types = getOutputTypes();
124
125 // Update the enum of output types to append
126 if (names.empty())
127 output_types = output_types.getRawNames();
128 else
129 output_types = names;
130
131 // Add the parameters and return them
132 addValidParams(params, output_types);
133 return params;
134}
InputParameters emptyInputParameters()
static MultiMooseEnum getOutputTypes()
Get the supported types of output (e.g., postprocessors, etc.)
static void addValidParams(InputParameters &params, const MultiMooseEnum &types)
Method for defining the available parameters based on the types of outputs.
std::string getRawNames() const
Method for returning the raw name strings for this instance.
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type.

Referenced by Console::validParams(), Exodus::validParams(), JSONOutput::validParams(), Nemesis::validParams(), TableOutput::validParams(), and XMLOutput::validParams().

◆ errorPrefix()

std::string MooseBase::errorPrefix ( const std::string &  ) const
inlineinherited

Deprecated message prefix; the error type is no longer used.

Definition at line 264 of file MooseBase.h.

264{ return messagePrefix(); }

◆ executeOn()

const MultiMooseEnum & Output::executeOn ( ) const
inherited

Get the current 'execute_on' selections for display.

Definition at line 393 of file Output.C.

394{
395 return _execute_on;
396}
ExecFlagEnum _execute_on
The common Execution types; this is used as the default execution type for everything except system i...
Definition Output.h:203

◆ filename()

std::string XDA::filename ( )
overrideprotectedvirtual

Returns the current filename, this method handles adding the timestep suffix.

Returns
A string containg the current filename to be written

Reimplemented from FileOutput.

Definition at line 71 of file XDA.C.

72{
73 // Append the padded time step to the file base
74 std::ostringstream output;
75 output << _file_base << "_" << std::setw(_padding) << std::setprecision(0) << std::setfill('0')
76 << std::right << _file_num;
77
78 if (_binary)
79 output << ".xdr";
80 else
81 output << ".xda";
82 return output.str();
83}
unsigned int _padding
Number of digits to pad the extensions.
Definition FileOutput.h:83
unsigned int & _file_num
A file number counter, initialized to 0 (this must be controlled by the child class,...
Definition FileOutput.h:80
virtual void output() override
Overload the Output::output method, this is required for XDA output due to the method utlized for out...
Definition XDA.C:47

Referenced by output().

◆ flagInvalidSolutionInternal()

template<bool warning>
template void SolutionInvalidInterface::flagInvalidSolutionInternal< false > ( const InvalidSolutionID  invalid_solution_id) const
protectedinherited

Set solution invalid mark for the given solution ID.

Definition at line 41 of file SolutionInvalidInterface.C.

43{
44 mooseAssert(
45 warning == moose::internal::getSolutionInvalidityRegistry().item(invalid_solution_id).warning,
46 "Inconsistent warning flag");
47 auto & solution_invalidity = _si_moose_base.getMooseApp().solutionInvalidity();
48 if constexpr (!warning)
50 solution_invalidity.printDebug(invalid_solution_id);
51 return solution_invalidity.flagInvalidSolutionInternal(invalid_solution_id);
52}
bool immediatelyPrintInvalidSolution() const
Whether or not the solution invalid warnings are printed out immediately.
SolutionInvalidity & solutionInvalidity()
Get the SolutionInvalidity for this app.
Definition MooseApp.h:185
MooseApp & getMooseApp() const
Get the MooseApp this class is associated with.
Definition MooseBase.h:87
const FEProblemBase * _si_problem
A pointer to FEProblem base.
const MooseBase & _si_moose_base
The MooseBase that owns this interface.
void printDebug(InvalidSolutionID _invalid_solution_id) const
Immediately print the section and message for debug purpose.
SolutionInvalidityRegistry & getSolutionInvalidityRegistry()
Get the global SolutionInvalidityRegistry singleton.

◆ getBase()

const std::string & MooseBase::getBase ( ) const
inlineinherited
Returns
The registered base for this object (set via InputParameters::registerBase())

Definition at line 147 of file MooseBase.h.

147{ return _pars.getBase(); }
const std::string & getBase() const

Referenced by Factory::copyConstruct(), and MooseBase::uniqueParameterName().

◆ getCheckedPointerParam()

template<typename T >
T MooseBase::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 450 of file MooseBase.h.

451{
452 return _pars.getCheckedPointerParam<T>(name, error_string);
453}
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.

◆ getDataFileName()

std::string DataFileInterface::getDataFileName ( const std::string &  param) const
inherited

Deprecated method.

The data file paths are now automatically set within the InputParameters object, so using getParam<DataFileName>("param_name") is now sufficient.

Definition at line 21 of file DataFileInterface.C.

22{
23 _parent.mooseDeprecated("getDataFileName() is deprecated. The file path is now directly set "
24 "within the InputParameters.\nUse getParam<DataFileName>(\"",
25 param,
26 "\") instead.");
27 return _parent.getParam<DataFileName>(param);
28}
const ParallelParamObject & _parent
void mooseDeprecated(Args &&... args) const
Emits a deprecation warning prefixed with the object name and type, and a stack trace.
Definition MooseBase.h:317
const T & getParam(const std::string &name) const
Retrieve a parameter for the object.
Definition MooseBase.h:406

◆ getDataFileNameByName()

std::string DataFileInterface::getDataFileNameByName ( const std::string &  relative_path) const
inherited

Deprecated method.

Use getDataFilePath() instead.

Definition at line 31 of file DataFileInterface.C.

32{
33 _parent.mooseDeprecated("getDataFileNameByName() is deprecated. Use getDataFilePath(\"",
34 relative_path,
35 "\") instead.");
36 return getDataFilePath(relative_path);
37}
std::string getDataFilePath(const std::string &relative_path) const
Returns the path of a data file for a given relative file path.

◆ getDataFilePath()

std::string DataFileInterface::getDataFilePath ( const std::string &  relative_path) const
inherited

Returns the path of a data file for a given relative file path.

This can be used for hardcoded datafile names and will search the same locations as getDataFileName

Definition at line 40 of file DataFileInterface.C.

41{
42 // This should only ever be used with relative paths. There is no point to
43 // use this search path with an absolute path.
44 if (std::filesystem::path(relative_path).is_absolute())
45 _parent.mooseWarning("While using getDataFilePath(\"",
46 relative_path,
47 "\"): This API should not be used for absolute paths.");
48
49 // This will search the data paths for this relative path
50 std::optional<std::string> error;
52 {
53 // Throw on error so that if getPath() fails, we can throw an error
54 // with the context of _parent.mooseError()
55 Moose::ScopedThrowOnError scoped_throw_on_error;
56
57 try
58 {
59 found_path = Moose::DataFileUtils::getPath(relative_path);
60 }
61 catch (std::exception & e)
62 {
63 error = e.what();
64 }
65 }
66
67 if (error)
68 _parent.mooseError(*error);
69
70 mooseAssert(found_path.context == Moose::DataFileUtils::Context::DATA,
71 "Should only ever obtain data");
72 mooseAssert(found_path.data_name, "Should be set");
73
74 const std::string msg =
75 "Using data file '" + found_path.path + "' from " + *found_path.data_name + " data";
76 _parent.mooseInfo(msg);
77
78 return found_path.path;
79}
void mooseWarning(Args &&... args) const
Emits a warning prefixed with object name and type.
Definition MooseBase.h:299
void mooseInfo(Args &&... args) const
Definition MooseBase.h:334
Scoped helper for setting Moose::_throw_on_error during this scope.
Definition Moose.h:298
@ DATA
From installed/in-tree data.
Path getPath(std::string path, const GetPathOptions &options={})
Get the data path for a given path, searching the registered data.
Representation of a data file path.
std::optional< std::string > data_name
The name of the data registry the file came from (with context == DATA)
Context context
Context for the file (where it came from)

Referenced by DataFileInterface::getDataFileNameByName().

◆ getDefaultExecFlagEnum()

ExecFlagEnum Output::getDefaultExecFlagEnum ( )
staticinherited

Return an ExecFlagEnum object with the available execution flags for Output objects.

Definition at line 104 of file Output.C.

105{
108 return exec_enum;
109}

Referenced by CommonOutputAction::validParams(), and Output::validParams().

◆ getDefaultPostprocessorValueByName()

PostprocessorValue PostprocessorInterface::getDefaultPostprocessorValueByName ( const PostprocessorName &  name) const
privateinherited
Returns
The default value stored in the PostprocessorName name.

Definition at line 106 of file PostprocessorInterface.C.

107{
108 mooseAssert(isDefaultPostprocessorValueByName(name), "Not a default value");
109
110 Real real_value = -std::numeric_limits<Real>::max();
111 std::istringstream ss(name);
112 ss >> real_value;
113 return real_value;
114}
bool isDefaultPostprocessorValueByName(const PostprocessorName &name) const
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real

Referenced by PostprocessorInterface::getPostprocessorValueInternal().

◆ getElementalVariableOutput()

const std::set< std::string > & AdvancedOutput::getElementalVariableOutput ( )
inherited

The list of elemental nonlinear variables names that are set for output.

Returns
A vector of strings containing the names of the nonlinear variables for output
See also
hasElementalVariableOutput

Definition at line 845 of file AdvancedOutput.C.

846{
847 return _execute_data["elemental"].output;
848}
OutputDataWarehouse _execute_data
Storage structures for the various output types.

Referenced by SampledOutput::initSample(), Nemesis::output(), and Exodus::outputElementalVariables().

◆ getExecuteOnEnum()

const ExecFlagEnum & SetupInterface::getExecuteOnEnum ( ) const
inherited

◆ getFileNumber()

unsigned int FileOutput::getFileNumber ( )
inherited

Return the current file number for this outputter.

This method was implemented for the MultiApp system, particularly when reseting an application and a new output file is desired after the reset.

Definition at line 180 of file FileOutput.C.

181{
182 return _file_num;
183}

Referenced by OutputWarehouse::getFileNumbers(), and MFEMDataCollection::output().

◆ 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 34 of file FunctionInterface.C.

35{
36 return getFunctionByName(_fni_params.get<FunctionName>(name));
37}
const Function & getFunctionByName(const FunctionName &name) const
Get a function with a given name.
const InputParameters & _fni_params
Parameters of the object with this interface.

Referenced by FunctionDT::FunctionDT(), and Output::Output().

◆ getFunctionByName()

const Function & FunctionInterface::getFunctionByName ( const FunctionName &  name) const
inherited

◆ getHitNode() [1/2]

const hit::Node * MooseBase::getHitNode ( ) const
inlineinherited
Returns
The block-level hit node for this object, if any

Definition at line 136 of file MooseBase.h.

136{ return getHitNode(_pars); }

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

◆ getHitNode() [2/2]

const hit::Node * MooseBase::getHitNode ( const InputParameters params)
staticprivateinherited

Internal method for getting a hit node (if available) given a set of parameters.

Needs to be static so that we can call it externally from InputParameters for errors that do not have context of the MooseBase

Definition at line 167 of file MooseBase.C.

168{
169 if (const auto hit_node = params.getHitNode())
170 if (!hit_node->isRoot())
171 return hit_node;
172 return nullptr;
173}
const hit::Node * getHitNode(const std::string &param) const

◆ getKokkosFunction() [1/2]

Moose::Kokkos::Function FunctionInterface::getKokkosFunction ( const std::string &  name) const
inherited

Get a Kokkos function of an abstract type with a given name Calling this function will error out currently if Kokkos was configured with GPU.

Parameters
nameThe name of the parameter key of the Kokkos function to retrieve
Returns
The copy of the Kokkos function of the abstract type with name associated with the parameter 'name'

◆ getKokkosFunction() [2/2]

template<typename T >
const T & FunctionInterface::getKokkosFunction ( const std::string &  name) const
inherited

Get a Kokkos function of a concrete type with a given name.

Template Parameters
TThe Kokkos function type
Parameters
nameThe name of the parameter key of the Kokkos function to retrieve
Returns
The reference of the Kokkos function of the concrete type with name associated with the parameter 'name'. Always store it in a reference wrapper if to be used on GPU.

Definition at line 165 of file FunctionInterface.h.

166{
167 return getKokkosFunctionByName<T>(_fni_params.get<FunctionName>(name));
168}

◆ getKokkosFunctionByName() [1/2]

Moose::Kokkos::Function FunctionInterface::getKokkosFunctionByName ( const FunctionName &  name) const
inherited

Get a Kokkos function of an abstract type with a given name Calling this function will error out currently if Kokkos was configured with GPU.

Parameters
nameThe name of the Kokkos function to retrieve
Returns
The copy of the Kokkos function of the abstract type with name 'name'

◆ getKokkosFunctionByName() [2/2]

template<typename T >
const T & FunctionInterface::getKokkosFunctionByName ( const FunctionName &  name) const
inherited

Get a Kokkos function of a concrete type with a given name.

Template Parameters
TThe Kokkos function type
Parameters
nameThe name of the Kokkos function to retrieve
Returns
The reference of the Kokkos function of the concrete type with name 'name'. Always store it in a reference wrapper if to be used on GPU.

Definition at line 172 of file FunctionInterface.h.

173{
174 auto function = dynamic_cast<const T *>(getKokkosFunctionByNameHelper(name));
175
176 if (!function)
178 "Kokkos function '", name, "' is not of type '", MooseUtils::prettyCppType<T>(), "'");
179
180 return *function;
181}
const Moose::FunctionBase * getKokkosFunctionByNameHelper(const FunctionName &name) const
Helper function to retrieve a Kokkos function.
const MooseObject & _fni_object
Reference to the object.

◆ getKokkosFunctionByNameHelper()

const Moose::FunctionBase * FunctionInterface::getKokkosFunctionByNameHelper ( const FunctionName &  name) const
privateinherited

Helper function to retrieve a Kokkos function.

Referenced by FunctionInterface::getKokkosFunctionByName().

◆ getMooseApp()

MooseApp & MooseBase::getMooseApp ( ) const
inlineinherited

Get the MooseApp this class is associated with.

Definition at line 87 of file MooseBase.h.

87{ return _app; }

Referenced by ChainControlSetupAction::act(), AddDefaultConvergenceAction::addDefaultMultiAppFixedPointConvergence(), AddDefaultConvergenceAction::addDefaultNonlinearConvergence(), AddDefaultConvergenceAction::addDefaultSteadyStateConvergence(), FEProblemBase::advanceState(), ParsedChainControl::buildFunction(), ReporterTransferInterface::checkHasReporterValue(), AddDefaultConvergenceAction::checkUnusedMultiAppFixedPointConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedNonlinearConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedSteadyStateConvergenceParameters(), Coupleable::checkWritableVar(), ComponentPhysicsInterface::ComponentPhysicsInterface(), Coupleable::Coupleable(), MortarInterfaceWarehouse::createMortarInterface(), EigenProblem::doFreeNonlinearPowerIterations(), Terminator::execute(), FEProblemSolve::FEProblemSolve(), SolutionInvalidInterface::flagInvalidSolutionInternal(), ChainControl::getChainControlDataSystem(), FEProblemBase::getDistribution(), FEProblemBase::getFunction(), FEProblemBase::getFVInterpolationMethod(), FEProblemBase::getMultiApp(), FEProblemBase::getSampler(), DefaultConvergenceBase::getSharedExecutionerParam(), FEProblemBase::getUserObjectBase(), FEProblemBase::getVectorPostprocessorObjectByName(), ChainControlDataPostprocessor::initialSetup(), MaterialPropertyInterface::MaterialPropertyInterface(), MooseVariableDataFV< OutputType >::MooseVariableDataFV(), ProgressOutput::output(), PetscOutputInterface::petscLinearOutput(), PetscOutputInterface::petscNonlinearOutput(), Moose::PetscSupport::PetscOptionsScope::PetscOptionsScope(), PetscOutputInterface::PetscOutputInterface(), PostprocessorInterface::postprocessorsAdded(), MultiApp::preTransfer(), Reporter::Reporter(), ReporterInterface::reportersAdded(), MultiApp::restore(), and VectorPostprocessorInterface::vectorPostprocessorsAdded().

◆ getNodalVariableOutput()

const std::set< std::string > & AdvancedOutput::getNodalVariableOutput ( )
inherited

The list of nodal nonlinear variables names that are set for output.

Returns
A vector of strings containing the names of the nodal nonlinear variables for output

Note: The list returned by this will contain the names of both elemental and nodal variable names if 'elemental_as_nodal = true' in the input file. The libMesh output system (EquationSystems::build_solution_vector) performs the correct action within the solution vector by setting the nodal values as the average of the values for each of the element that the node shares.

See also
hasNodalVariableOutput

Definition at line 833 of file AdvancedOutput.C.

834{
835 return _execute_data["nodal"].output;
836}

Referenced by SampledOutput::initSample(), Nemesis::output(), and Exodus::outputNodalVariables().

◆ getOutputTime()

Real PetscOutput::getOutputTime ( )
protectedvirtualinherited

Get the time that will be used for stream/file outputting.

This method is intended to override the output given by time() for cases that do not conform to the linear, nonlinear, time step pattern. For example, this can be used for optimization or fixed point iteration solves. If you override this method for your application, replace time() calls with getOutputTime() calls and ensure output consistency.

Definition at line 273 of file PetscOutput.C.

274{
275 return time();
276}
virtual Real time() override
Get the output time.

Referenced by Nemesis::output(), Tecplot::output(), Exodus::outputEmptyTimestep(), Exodus::outputNodalVariables(), TableOutput::outputPostprocessorsRow(), TableOutput::outputReporter(), TableOutput::outputScalarVariables(), TableOutput::shouldOutputPostprocessorsRow(), and Console::writeTimestepInformation().

◆ getOutputTypes()

MultiMooseEnum AdvancedOutput::getOutputTypes ( )
staticprivateinherited

Get the supported types of output (e.g., postprocessors, etc.)

Definition at line 109 of file AdvancedOutput.C.

110{
111 return MultiMooseEnum("nodal=0 elemental=1 scalar=2 postprocessor=3 vector_postprocessor=4 "
112 "input=5 system_information=6 reporter=7");
113}

Referenced by AdvancedOutput::enableOutputTypes().

◆ getParam() [1/2]

template<typename T >
const T & MooseBase::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 406 of file MooseBase.h.

407{
408 return InputParameters::getParamHelper<T>(name, _pars);
409}

Referenced by CommonOutputAction::act(), CreateDisplacedProblemAction::act(), CylinderComponent::addMeshGenerators(), FEProblemBase::addOutput(), ArrayParsedAux::ArrayParsedAux(), BicubicSplineFunction::BicubicSplineFunction(), Console::Console(), CutMeshByLevelSetGenerator::CutMeshByLevelSetGenerator(), DebugResidualAux::DebugResidualAux(), DerivativeParsedMaterialTempl< is_ad >::DerivativeParsedMaterialTempl(), DynamicObjectRegistrationAction::DynamicObjectRegistrationAction(), EigenKernel::EigenKernel(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), MFEMEigenvaluesPostprocessor::execute(), FEProblemSolve::FEProblemSolve(), ParsedVectorReporter::finalize(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), FixedPointSolve::FixedPointSolve(), ParsedSubdomainGeneratorBase::functionInitialize(), BlockDeletionGenerator::generate(), BoundaryLayerSubdomainGenerator::generate(), BreakMeshByBlockGenerator::generate(), CoarsenBlockGenerator::generate(), FileMeshGenerator::generate(), MeshExtruderGenerator::generate(), RefineBlockGenerator::generate(), RefineSidesetGenerator::generate(), SubdomainsFromPartitionerGenerator::generate(), XYDelaunayGenerator::generate(), GenericConstantRankTwoTensorTempl< is_ad >::GenericConstantRankTwoTensorTempl(), GenericConstantSymmetricRankTwoTensorTempl< is_ad >::GenericConstantSymmetricRankTwoTensorTempl(), GeometricSearchInterface::GeometricSearchInterface(), MooseApp::getCheckpointDirectories(), DataFileInterface::getDataFileName(), ExecutorInterface::getExecutor(), DefaultConvergenceBase::getSharedExecutionerParam(), AddVariableAction::init(), AdvancedOutput::init(), FixedPointIterationAdaptiveDT::init(), TimeSequenceStepper::init(), AdvancedOutput::initAvailableLists(), AttribThread::initFrom(), AttribExecutionOrderGroup::initFrom(), AttribSysNum::initFrom(), AttribResidualObject::initFrom(), AttribDisplaced::initFrom(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), Console::initialSetup(), SampledOutput::initSample(), IterationAdaptiveDT::limitDTToPostprocessorValue(), MooseMesh::MooseMesh(), MooseVariableBase::MooseVariableBase(), MultiPostprocessorConvergence::MultiPostprocessorConvergence(), PerfGraphOutput::output(), Console::outputSystemInformation(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedElementDeletionGenerator::ParsedElementDeletionGenerator(), ParsedGenerateNodeset::ParsedGenerateNodeset(), ParsedGenerateSideset::ParsedGenerateSideset(), ParsedMaterialTempl< is_ad >::ParsedMaterialTempl(), ParsedNodeTransformGenerator::ParsedNodeTransformGenerator(), ParsedODEKernel::ParsedODEKernel(), ParsedPostprocessor::ParsedPostprocessor(), ParsedReporterBase::ParsedReporterBase(), ParsedVectorReporter::ParsedVectorReporter(), ProjectSideSetOntoLevelSetGenerator::ProjectSideSetOntoLevelSetGenerator(), ReferenceResidualInterface::ReferenceResidualInterface(), Moose::FV::setInterpolationMethod(), SetupMeshAction::setupMesh(), MooseApp::setupOptions(), Output::setWallTimeIntervalFromCommandLineParam(), PetscOutput::solveSetup(), TimePeriod::TimePeriod(), UniqueExtraIDMeshGenerator::UniqueExtraIDMeshGenerator(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), and VectorOfPostprocessors::VectorOfPostprocessors().

◆ getParam() [2/2]

template<typename T1 , typename T2 >
std::vector< std::pair< T1, T2 > > MooseBase::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 443 of file MooseBase.h.

444{
445 return _pars.get<T1, T2>(param1, param2);
446}

◆ 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 195 of file PostprocessorInterface.C.

197{
198 return getPostprocessorNameInternal(param_name, index, /* allow_default_value = */ false);
199}
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.

Referenced by EigenKernel::EigenKernel().

◆ getPostprocessorNameInternal()

const PostprocessorName & PostprocessorInterface::getPostprocessorNameInternal ( const std::string &  param_name,
const unsigned int  index,
const bool  allow_default_value = true 
) const
privateinherited

Internal method for getting the PostprocessorName associated with a paremeter.

Needed in order to allow the return of a name that is a default value.

Definition at line 202 of file PostprocessorInterface.C.

206{
207 checkParam(param_name, index);
208
209 const auto & name = _ppi_params.isType<PostprocessorName>(param_name)
210 ? _ppi_params.get<PostprocessorName>(param_name)
211 : _ppi_params.get<std::vector<PostprocessorName>>(param_name)[index];
212
213 if (!allow_default_value && isDefaultPostprocessorValueByName(name))
214 {
215 std::stringstream oss;
216 oss << "Cannot get the name associated with PostprocessorName parameter \"" << param_name
217 << "\"";
218 if (index)
219 oss << " at index " << index;
220 oss << ",\nbecause said parameter is a default Postprocessor value.";
221 _ppi_moose_object.paramError(param_name, oss.str());
222 }
223
224 return name;
225}
std::string name(const ElemQuality q)

Referenced by PostprocessorInterface::getPostprocessorName(), PostprocessorInterface::getPostprocessorValueInternal(), PostprocessorInterface::hasPostprocessor(), and PostprocessorInterface::isDefaultPostprocessorValue().

◆ getPostprocessorOutput()

const std::set< std::string > & AdvancedOutput::getPostprocessorOutput ( )
inherited

The list of postprocessor names that are set for output.

Returns
A vector of strings containing the names of the postprocessor variables for output
See also
hasPostprocessorOutput

Definition at line 869 of file AdvancedOutput.C.

870{
871 return _execute_data["postprocessors"].output;
872}

Referenced by CSV::initialSetup(), Exodus::outputPostprocessors(), Nemesis::outputPostprocessors(), TableOutput::outputPostprocessorsRow(), and TableOutput::shouldOutputPostprocessorsRow().

◆ 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 46 of file PostprocessorInterface.C.

48{
49 return getPostprocessorValueInternal(param_name, index, /* t_index = */ 0);
50}
const PostprocessorValue & getPostprocessorValueInternal(const std::string &param_name, unsigned int index, std::size_t t_index) const
Internal methods for getting Postprocessor values.

Referenced by EigenKernel::EigenKernel(), FunctionValuePostprocessor::FunctionValuePostprocessor(), LinearCombinationPostprocessor::LinearCombinationPostprocessor(), and ParsedPostprocessor::ParsedPostprocessor().

◆ 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 67 of file PostprocessorInterface.C.

68{
69 return getPostprocessorValueByNameInternal(name, /* t_index = */ 0);
70}
const PostprocessorValue & getPostprocessorValueByNameInternal(const PostprocessorName &name, std::size_t t_index) const

Referenced by EigenKernel::EigenKernel(), PIDTransientControl::execute(), IterationAdaptiveDT::IterationAdaptiveDT(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), MultiPostprocessorConvergence::MultiPostprocessorConvergence(), ParsedODEKernel::ParsedODEKernel(), PicardSolve::savePostprocessorValues(), SecantSolve::savePostprocessorValues(), SteffensenSolve::savePostprocessorValues(), SumPostprocessor::SumPostprocessor(), Terminator::Terminator(), PicardSolve::transformPostprocessors(), SecantSolve::transformPostprocessors(), SteffensenSolve::transformPostprocessors(), and VectorOfPostprocessors::VectorOfPostprocessors().

◆ getPostprocessorValueByNameInternal()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueByNameInternal ( const PostprocessorName &  name,
std::size_t  t_index 
) const
privateinherited

Definition at line 256 of file PostprocessorInterface.C.

258{
259 mooseAssert(t_index < 3, "Invalid time index");
260 mooseAssert(!isDefaultPostprocessorValueByName(name), "Should not be default");
261
262 // If all pps have been added, we can check for existance
264 _ppi_moose_object.mooseError("A Postprocessor with the name \"", name, "\" was not found.");
265
266 if (t_index == 0)
268
271}
Real PostprocessorValue
various MOOSE typedefs
Definition MooseTypes.h:230
const ReporterMode REPORTER_MODE_ROOT
const ReporterData & getReporterData() const
Provides const access the ReporterData object.
virtual void addPostprocessorDependencyHelper(const PostprocessorName &) const
Helper for deriving classes to override to add dependencies when a Postprocessor is requested.
const FEProblemBase & _ppi_feproblem
Reference the the FEProblemBase class.
bool hasPostprocessorByName(const PostprocessorName &name) const
Determine if the Postprocessor data exists.
A ReporterName that represents a Postprocessor.
const T & getReporterValue(const ReporterName &reporter_name, const MooseObject &consumer, const ReporterMode &mode, const std::size_t time_index=0) const
Method for returning read only references to Reporter values.

Referenced by PostprocessorInterface::getPostprocessorValueByName(), PostprocessorInterface::getPostprocessorValueInternal(), PostprocessorInterface::getPostprocessorValueOldByName(), and PostprocessorInterface::getPostprocessorValueOlderByName().

◆ getPostprocessorValueInternal()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueInternal ( const std::string &  param_name,
unsigned int  index,
std::size_t  t_index 
) const
privateinherited

Internal methods for getting Postprocessor values.

Definition at line 228 of file PostprocessorInterface.C.

231{
232 const auto & name = getPostprocessorNameInternal(param_name, index);
233
234 // If the Postprocessor is a default value (either set by addParam or set to a constant
235 // value by the user in input/an action), we covert the name to a value, store said
236 // value locally, and return it so that it fits in with the rest of the interface
237 // (needing a reference to a value)
239 {
240 const auto value = getDefaultPostprocessorValueByName(name);
241 const auto & value_ref =
242 *_default_values.emplace(name, std::make_unique<PostprocessorValue>(value))
243 .first->second; // first is inserted pair, second is value in pair
244 mooseAssert(value == value_ref, "Inconsistent default value");
245 return value_ref;
246 }
247 // If not a default and all pps have been added, we check check for existance
248 else if (postprocessorsAdded() && !hasPostprocessorByName(name))
250 param_name, "A Postprocessor with the name \"", name, "\" was not found.");
251
252 return getPostprocessorValueByNameInternal(name, t_index);
253}
std::map< PostprocessorName, std::unique_ptr< PostprocessorValue > > _default_values
Holds the default postprocessor values that are requested (key is PostprocessorName)
PostprocessorValue getDefaultPostprocessorValueByName(const PostprocessorName &name) const

Referenced by PostprocessorInterface::getPostprocessorValue(), PostprocessorInterface::getPostprocessorValueOld(), and PostprocessorInterface::getPostprocessorValueOlder().

◆ getPostprocessorValueOld()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOld ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Definition at line 53 of file PostprocessorInterface.C.

55{
56 return getPostprocessorValueInternal(param_name, index, /* t_index = */ 1);
57}

◆ getPostprocessorValueOldByName()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOldByName ( const PostprocessorName &  name) const
inherited

Definition at line 73 of file PostprocessorInterface.C.

74{
75 return getPostprocessorValueByNameInternal(name, /* t_index = */ 1);
76}

Referenced by EigenKernel::EigenKernel().

◆ getPostprocessorValueOlder()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOlder ( const std::string &  param_name,
const unsigned int  index = 0 
) const
inherited

Definition at line 60 of file PostprocessorInterface.C.

62{
63 return getPostprocessorValueInternal(param_name, index, /* t_index = */ 2);
64}

◆ getPostprocessorValueOlderByName()

const PostprocessorValue & PostprocessorInterface::getPostprocessorValueOlderByName ( const PostprocessorName &  name) const
inherited

Definition at line 79 of file PostprocessorInterface.C.

80{
81 return getPostprocessorValueByNameInternal(name, /* t_index = */ 2);
82}

◆ getRenamedParam()

template<typename T >
const T & MooseBase::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 420 of file MooseBase.h.

421{
422 // Most important: accept new parameter
423 if (isParamSetByUser(new_name) && !isParamValid(old_name))
424 return getParam<T>(new_name);
425 // Second most: accept old parameter
426 if (isParamValid(old_name) && !isParamSetByUser(new_name))
427 return getParam<T>(old_name);
428 // Third most: accept default for new parameter
429 if (isParamValid(new_name) && !isParamValid(old_name))
430 return getParam<T>(new_name);
431 // Refuse: no default, no value passed
432 if (!isParamValid(old_name) && !isParamValid(new_name))
433 mooseError("parameter '" + new_name +
434 "' is being retrieved without being set.\nDid you misspell it?");
435 // Refuse: both old and new parameters set by user
436 else
437 mooseError("Parameter '" + new_name + "' may not be provided alongside former parameter '" +
438 old_name + "'");
439}
bool isParamSetByUser(const std::string &name) const
Test if the supplied parameter is set by a user, as opposed to not set or set to default.
Definition MooseBase.h:205

◆ getReporterContextBaseByName()

const ReporterContextBase & ReporterInterface::getReporterContextBaseByName ( const ReporterName reporter_name) const
protectedinherited

Get the reporter context to allow non-typed operations with the data.

Parameters
reporter_nameA ReporterName object that for the desired Reporter context.
Returns
ReporterContextBase of the reporter value

Definition at line 60 of file ReporterInterface.C.

61{
62 if (!reportersAdded())
64 "Cannot call getReporterContextBaseByName() until all Reporters have been constructed.");
65
66 return _ri_reporter_data.getReporterContextBase(reporter_name);
67}
const ReporterContextBase & getReporterContextBase(const ReporterName &reporter_name) const
bool reportersAdded() const
const MooseObject & _ri_moose_object
The MooseObject needing this interface.
const ReporterData & _ri_reporter_data
The ReporterData.

◆ getReporterName()

const ReporterName & ReporterInterface::getReporterName ( const std::string &  param_name) const
protectedinherited
Returns
The ReporterName associated with the parametre param_name.

Performs error checking to mak sure that the parameter is valid.

Definition at line 70 of file ReporterInterface.C.

71{
72 if (!_ri_params.isParamValid(param_name))
74 "When getting a Reporter, failed to get a parameter with the name \"",
75 param_name,
76 "\".",
77 "\n\nKnown parameters:\n",
79
80 if (_ri_params.isType<ReporterName>(param_name))
81 return _ri_params.get<ReporterName>(param_name);
82
83 _ri_moose_object.mooseError("Supplied parameter with name \"",
84 param_name,
85 "\" of type \"",
86 _ri_params.type(param_name),
87 "\" is not an expected type for getting a Reporter.\n\n",
88 "The expected type is \"ReporterName\".");
89}
const InputParameters & _ri_params
Parameters for the MooseObject inherting from this interface.
The Reporter system is comprised of objects that can contain any number of data values.

Referenced by ReporterInterface::getReporterValue(), and ReporterInterface::hasReporterValue().

◆ getReporterOutput()

const std::set< std::string > & AdvancedOutput::getReporterOutput ( )
inherited

The list of Reporter names that are set for output.

Returns
A vector containing the names of the Reporter names for output
See also
hasReporterOutput

Definition at line 893 of file AdvancedOutput.C.

894{
895 return _execute_data["reporters"].output;
896}

Referenced by CSV::initialSetup(), Exodus::outputReporters(), JSONOutput::outputReporters(), and TableOutput::outputReporters().

◆ getReporterValue() [1/2]

template<typename T >
const T & ReporterInterface::getReporterValue ( const std::string &  param_name,
const std::size_t  time_index = 0 
)
protectedinherited

doco-normal-methods-begin Returns read-only reference to a Reporter value that is provided by an input parameter.

Template Parameters
TThe C++ type of the Reporter value being consumed
Parameters
param_nameThe name of the parameter that gives the name of the Reporter, which must be a ReporterName parameter (i.e., getParam<ReporterName>(param_name)).
modeThe mode that the object will consume the Reporter value @pararm time_index (optional) If zero is provided the current value is returned. Use a positive index to return previous values (1 = older, 2 = older, etc.). The maximum number of old values is dictated by the ReporterData object.

Definition at line 148 of file ReporterInterface.h.

149{
150 return getReporterValue<T>(param_name, REPORTER_MODE_UNSET, time_index);
151}
const ReporterMode REPORTER_MODE_UNSET

◆ getReporterValue() [2/2]

template<typename T >
const T & ReporterInterface::getReporterValue ( const std::string &  param_name,
ReporterMode  mode,
const std::size_t  time_index = 0 
)
protectedinherited

Definition at line 155 of file ReporterInterface.h.

158{
159 const auto & reporter_name = getReporterName(param_name);
160
161 possiblyCheckHasReporter<T>(reporter_name, param_name);
162
163 return getReporterValueByName<T>(reporter_name, mode, time_index);
164}
const ReporterName & getReporterName(const std::string &param_name) const

◆ getReporterValueByName() [1/2]

template<typename T >
const T & ReporterInterface::getReporterValueByName ( const ReporterName reporter_name,
const std::size_t  time_index = 0 
)
protectedinherited

Returns read-only reference to a Reporter value that is provided by name directly.

Template Parameters
TThe C++ type of the Reporter value being consumed
Parameters
reporter_nameA ReporterName object that for the desired Reporter value.
modeThe mode that the object will consume the Reporter value @pararm time_index (optional) If zero is provided the current value is returned. Use a positive index to return previous values (1 = older, 2 = older, etc.). The maximum number of old values is dictated by the ReporterData object.

Definition at line 168 of file ReporterInterface.h.

170{
171 return getReporterValueByName<T>(reporter_name, REPORTER_MODE_UNSET, time_index);
172}

Referenced by ParsedVectorReporter::ParsedVectorReporter().

◆ getReporterValueByName() [2/2]

template<typename T >
const T & ReporterInterface::getReporterValueByName ( const ReporterName reporter_name,
ReporterMode  mode,
const std::size_t  time_index = 0 
)
protectedinherited

Definition at line 176 of file ReporterInterface.h.

179{
180 possiblyCheckHasReporter<T>(reporter_name);
181
182 addReporterDependencyHelper(reporter_name);
183
184 return _ri_reporter_data.getReporterValue<T>(reporter_name, _ri_moose_object, mode, time_index);
185}
virtual void addReporterDependencyHelper(const ReporterName &)
A method that can be overridden to update the UO dependencies.

◆ 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 294 of file Restartable.h.

295{
296 return declareRestartableDataHelper<T>(data_name, nullptr).get();
297}

◆ getScalarOutput()

const std::set< std::string > & AdvancedOutput::getScalarOutput ( )
inherited

The list of scalar variables names that are set for output.

Returns
A vector of strings containing the names of the scalar variables for output
See also
hasScalarVariableOutput

Definition at line 857 of file AdvancedOutput.C.

858{
859 return _execute_data["scalars"].output;
860}

Referenced by CSV::initialSetup(), Exodus::outputScalarVariables(), Nemesis::outputScalarVariables(), and TableOutput::outputScalarVariables().

◆ 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 119 of file VectorPostprocessorInterface.C.

121{
122 possiblyCheckHasVectorPostprocessor(param_name, vector_name);
124 vector_name);
125}
const ScatterVectorPostprocessorValue & getScatterVectorPostprocessorValueByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Return the scatter value for the post processor.
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.

◆ 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 128 of file VectorPostprocessorInterface.C.

130{
131 return getVectorPostprocessorContextByNameHelper(name, vector_name).getScatterValue();
132}
const VectorPostprocessorContext< VectorPostprocessorValue > & getVectorPostprocessorContextByNameHelper(const VectorPostprocessorName &name, const std::string &vector_name) const
Helper for getting the VPP context that handles scatter values.

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValue().

◆ 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 135 of file VectorPostprocessorInterface.C.

137{
138 possiblyCheckHasVectorPostprocessor(param_name, vector_name);
140 vector_name);
141}
const ScatterVectorPostprocessorValue & getScatterVectorPostprocessorValueOldByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Return the old scatter value for the post processor.

◆ 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 144 of file VectorPostprocessorInterface.C.

146{
147 return getVectorPostprocessorContextByNameHelper(name, vector_name).getScatterValueOld();
148}

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValueOld().

◆ getSharedPtr() [1/2]

std::shared_ptr< MooseObject > MooseObject::getSharedPtr ( )
inherited

Get another shared pointer to this object that has the same ownership group.

Wrapper around shared_from_this().

Definition at line 70 of file MooseObject.C.

71{
72 try
73 {
74 return shared_from_this();
75 }
76 catch (std::bad_weak_ptr &)
77 {
78 mooseError(not_shared_error);
79 }
80}

Referenced by MFEMProblem::addImagComponentToBC(), MFEMProblem::addImagComponentToKernel(), MFEMProblem::addRealComponentToBC(), MFEMProblem::addRealComponentToKernel(), and WebServerControl::addServerAction().

◆ getSharedPtr() [2/2]

std::shared_ptr< const MooseObject > MooseObject::getSharedPtr ( ) const
inherited

Definition at line 83 of file MooseObject.C.

84{
85 try
86 {
87 return shared_from_this();
88 }
89 catch (std::bad_weak_ptr &)
90 {
91 mooseError(not_shared_error);
92 }
93}

◆ getSyncTimes()

const std::set< Real > & Output::getSyncTimes ( )
inlineinherited

Definition at line 144 of file Output.h.

144{ return _sync_times; }
std::set< Real > _sync_times
Sync times for this outputter.
Definition Output.h:244

Referenced by OutputWarehouse::addOutput().

◆ getVectorPostprocessorByNameHelper()

const VectorPostprocessorValue & VectorPostprocessorInterface::getVectorPostprocessorByNameHelper ( const VectorPostprocessorName &  name,
const std::string &  vector_name,
bool  broadcast,
std::size_t  t_index 
) const
privateinherited

Helper function for extracting VPP data from ReporterData object.

Definition at line 282 of file VectorPostprocessorInterface.C.

287{
290
293 VectorPostprocessorReporterName(name, vector_name), _vpi_moose_object, mode, t_index);
294}
std::vector< Real > VectorPostprocessorValue
Definition MooseTypes.h:231
const ReporterMode REPORTER_MODE_REPLICATED
MooseEnumItem that automatically creates the ID and doesn't allow the ID to be assigned.
const FEProblemBase & _vpi_feproblem
Reference the FEProblemBase class.
void possiblyCheckHasVectorPostprocessorByName(const VectorPostprocessorName &name, const std::string &vector_name) const
virtual void addVectorPostprocessorDependencyHelper(const VectorPostprocessorName &) const
Helper for deriving classes to override to add dependencies when a VectorPostprocessor is requested.
const MooseObject & _vpi_moose_object
The MooseObject that uses this interface.
A ReporterName that represents a VectorPostprocessor.

Referenced by VectorPostprocessorInterface::getVectorPostprocessorValueByName(), VectorPostprocessorInterface::getVectorPostprocessorValueByName(), VectorPostprocessorInterface::getVectorPostprocessorValueOldByName(), and VectorPostprocessorInterface::getVectorPostprocessorValueOldByName().

◆ getVectorPostprocessorContextByNameHelper()

const VectorPostprocessorContext< VectorPostprocessorValue > & VectorPostprocessorInterface::getVectorPostprocessorContextByNameHelper ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
privateinherited

Helper for getting the VPP context that handles scatter values.

Definition at line 297 of file VectorPostprocessorInterface.C.

299{
302
303 // The complete name of the store Reporter value
304 const VectorPostprocessorReporterName r_name(name, vector_name);
305
306 // Indicate the scatter value is desired, so the the VectorPostprocessorContext will do scatter
309
310 // Retrieve the VectorPostprocessorContext which contains the scattered value to be referenced
311 const auto & context = _vpi_feproblem.getReporterData().getReporterContextBase(r_name);
312 auto vpp_context_ptr =
313 dynamic_cast<const VectorPostprocessorContext<VectorPostprocessorValue> *>(&context);
314 mooseAssert(vpp_context_ptr, "Failed to get the VectorPostprocessorContext");
315 return *vpp_context_ptr;
316}
const ReporterMode REPORTER_MODE_VPP_SCATTER

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValueByName(), and VectorPostprocessorInterface::getScatterVectorPostprocessorValueOldByName().

◆ 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 216 of file VectorPostprocessorInterface.C.

217{
218 const auto & params = _vpi_moose_object.parameters();
219
220 if (!params.isParamValid(param_name))
222 "When getting a VectorPostprocessor, failed to get a parameter with the name \"",
223 param_name,
224 "\".",
225 "\n\nKnown parameters:\n",
227
228 if (!params.isType<VectorPostprocessorName>(param_name))
230 "Supplied parameter with name \"",
231 param_name,
232 "\" of type \"",
233 params.type(param_name),
234 "\" is not an expected type for getting a VectorPostprocessor.\n\n",
235 "The allowed type is \"VectorPostprocessorName\".");
236
237 return params.get<VectorPostprocessorName>(param_name);
238}

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValue(), VectorPostprocessorInterface::getScatterVectorPostprocessorValueOld(), VectorPostprocessorInterface::getVectorPostprocessorValue(), VectorPostprocessorInterface::getVectorPostprocessorValue(), VectorPostprocessorInterface::getVectorPostprocessorValueOld(), VectorPostprocessorInterface::getVectorPostprocessorValueOld(), VectorPostprocessorInterface::hasVectorPostprocessor(), VectorPostprocessorInterface::hasVectorPostprocessor(), VectorPostprocessorInterface::isVectorPostprocessorDistributed(), and VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor().

◆ getVectorPostprocessorOutput()

const std::set< std::string > & AdvancedOutput::getVectorPostprocessorOutput ( )
inherited

The list of VectorPostprocessor names that are set for output.

Returns
A vector of strings containing the names of the VectorPostprocessor variables for output
See also
hasVectorPostprocessorOutput

Definition at line 881 of file AdvancedOutput.C.

882{
883 return _execute_data["vector_postprocessors"].output;
884}

Referenced by CSV::initialSetup(), TableOutput::outputReporters(), TableOutput::outputVectorPostprocessors(), and XMLOutput::outputVectorPostprocessors().

◆ 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 49 of file VectorPostprocessorInterface.C.

51{
52 possiblyCheckHasVectorPostprocessor(param_name, vector_name);
54}
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 79 of file VectorPostprocessorInterface.C.

82{
83 possiblyCheckHasVectorPostprocessor(param_name, vector_name);
85 getVectorPostprocessorName(param_name), vector_name, needs_broadcast);
86}

◆ 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 57 of file VectorPostprocessorInterface.C.

59{
61}
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.

Referenced by CombinedVectorPostprocessor::CombinedVectorPostprocessor(), VectorPostprocessorInterface::getVectorPostprocessorValue(), and VectorPostprocessorInterface::getVectorPostprocessorValue().

◆ 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 89 of file VectorPostprocessorInterface.C.

93{
95 name, vector_name, needs_broadcast || _broadcast_by_default, 0);
96}

◆ 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 64 of file VectorPostprocessorInterface.C.

66{
67 possiblyCheckHasVectorPostprocessor(param_name, vector_name);
69}
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 99 of file VectorPostprocessorInterface.C.

102{
103 possiblyCheckHasVectorPostprocessor(param_name, vector_name);
105 getVectorPostprocessorName(param_name), vector_name, needs_broadcast);
106}

◆ 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 72 of file VectorPostprocessorInterface.C.

74{
76}

Referenced by VectorPostprocessorInterface::getVectorPostprocessorValueOld(), and VectorPostprocessorInterface::getVectorPostprocessorValueOld().

◆ 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 109 of file VectorPostprocessorInterface.C.

113{
115 name, vector_name, needs_broadcast || _broadcast_by_default, 1);
116}

◆ hasBase()

bool MooseBase::hasBase ( ) const
inlineinherited
Returns
Whether or not this object has a registered base (set via InputParameters::registerBase())

Definition at line 142 of file MooseBase.h.

142{ return _pars.hasBase(); }
bool hasBase() const

◆ hasElementalVariableOutput()

bool AdvancedOutput::hasElementalVariableOutput ( )
inherited

Returns true if there exists elemental nonlinear variables for output.

Returns
True if nonlinear variable output exists
See also
getElementalVariableOutput

Definition at line 839 of file AdvancedOutput.C.

840{
841 return hasOutputHelper("elemental");
842}
bool hasOutputHelper(const std::string &name)
Helper method for checking if output types exists.

Referenced by Exodus::initialSetup().

◆ 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 46 of file FunctionInterface.C.

47{
48 return hasFunctionByName(_fni_params.get<FunctionName>(param_name));
49}
bool hasFunctionByName(const FunctionName &name) const
Determine if the function exists.

◆ 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 52 of file FunctionInterface.C.

53{
55}
virtual bool hasFunction(const std::string &name, const THREAD_ID tid=0)

Referenced by FunctionInterface::hasFunction().

◆ hasKokkosFunction()

bool FunctionInterface::hasKokkosFunction ( const std::string &  param_name) const
inherited

Determine if the Kokkos function exists.

Parameters
param_nameThe name of the Kokkos function parameter
indexThe index of the Kokkos function
Returns
True if the Kokkos function exists

◆ hasKokkosFunctionByName()

bool FunctionInterface::hasKokkosFunctionByName ( const FunctionName &  name) const
inherited

Determine if the Kokkos function exists.

Parameters
nameThe name of the Kokkos function
Returns
True if the Kokkos function exists

◆ hasNodalVariableOutput()

bool AdvancedOutput::hasNodalVariableOutput ( )
inherited

Returns true if there exists nodal nonlinear variables for output.

Returns
True if nonlinear variable output exists
See also
getNodalVariableOutput

Definition at line 827 of file AdvancedOutput.C.

828{
829 return hasOutputHelper("nodal");
830}

Referenced by Exodus::initialSetup(), and Exodus::outputElementalVariables().

◆ hasOutput() [1/2]

bool AdvancedOutput::hasOutput ( )
virtualinherited

Returns true if any of the other has methods return true.

Definition at line 394 of file AdvancedOutput.C.

395{
396 // Test that variables exist for output AND that output execution flags are valid
397 for (const auto & it : _execute_data)
398 if (!(it.second).output.empty() && _advanced_execute_on.contains(it.first) &&
399 _advanced_execute_on[it.first].isValid())
400 return true;
401
402 // Test execution flags for non-variable output
403 if (_advanced_execute_on.contains("system_information") &&
404 _advanced_execute_on["system_information"].isValid())
405 return true;
406 if (_advanced_execute_on.contains("input") && _advanced_execute_on["input"].isValid())
407 return true;
408
409 return false;
410}
void isValid(MooseObject *obj)
virtual void output()
A single call to this function should output all the necessary data for a single timestep.
bool contains(const std::string &name) const
A method for testing of a key exists.
bool contains(std::string_view superstring, std::string_view substring)

Referenced by Exodus::initialSetup(), and AdvancedOutput::shouldOutput().

◆ hasOutput() [2/2]

bool AdvancedOutput::hasOutput ( const ExecFlagType type)
inherited

Tests that any output exist for the given output type.

See also
Exodus

Definition at line 382 of file AdvancedOutput.C.

383{
384 // If any of the component outputs are true, then there is some output to perform
385 for (const auto & it : _advanced_execute_on)
386 if (wantOutput(it.first, type))
387 return true;
388
389 // There is nothing to output
390 return false;
391}
bool wantOutput(const std::string &name, const ExecFlagType &type)
Handles logic for determining if a step should be output.
const std::string & type() const
Get the type of this class.
Definition MooseBase.h:93

◆ hasOutputHelper()

bool AdvancedOutput::hasOutputHelper ( const std::string &  name)
privateinherited

Helper method for checking if output types exists.

Parameters
nameThe name of the output type to test (e.g., postprocessors)

Definition at line 820 of file AdvancedOutput.C.

821{
822 return !_execute_data[name].output.empty() && _advanced_execute_on.contains(name) &&
823 _advanced_execute_on[name].isValid() && !_advanced_execute_on[name].isValueSet("none");
824}

Referenced by AdvancedOutput::hasElementalVariableOutput(), AdvancedOutput::hasNodalVariableOutput(), AdvancedOutput::hasPostprocessorOutput(), AdvancedOutput::hasReporterOutput(), AdvancedOutput::hasScalarOutput(), and AdvancedOutput::hasVectorPostprocessorOutput().

◆ 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 117 of file PostprocessorInterface.C.

119{
120 if (!postprocessorsAdded())
122 "Cannot call hasPostprocessor() until all Postprocessors have been constructed.");
123
124 return hasPostprocessorByName(getPostprocessorNameInternal(param_name, index));
125}

◆ 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 128 of file PostprocessorInterface.C.

129{
130 if (!postprocessorsAdded())
132 "Cannot call hasPostprocessorByName() until all Postprocessors have been constructed.");
133
136}
bool hasReporterValue(const ReporterName &reporter_name) const
Return True if a Reporter value with the given type and name have been created.

Referenced by PostprocessorInterface::getPostprocessorValueByNameInternal(), PostprocessorInterface::getPostprocessorValueInternal(), PostprocessorInterface::hasPostprocessor(), AdvancedOutput::initShowHideLists(), Exodus::outputReporters(), and TableOutput::outputReporters().

◆ hasPostprocessorOutput()

bool AdvancedOutput::hasPostprocessorOutput ( )
inherited

Returns true if there exists postprocessors for output.

Returns
True if postprocessor output exists
See also
getPostprocessorOutput

Definition at line 863 of file AdvancedOutput.C.

864{
865 return hasOutputHelper("postprocessors");
866}

Referenced by Exodus::initialSetup().

◆ hasReporterOutput()

bool AdvancedOutput::hasReporterOutput ( )
inherited

Returns true if there exists Reporter for output.

Returns
True if Reporter output exists
See also
getReporterOutput

Definition at line 887 of file AdvancedOutput.C.

888{
889 return hasOutputHelper("reporters");
890}

◆ hasReporterValue() [1/2]

bool ReporterInterface::hasReporterValue ( const std::string &  param_name) const
protectedinherited

Return True if the Reporter value exists.

Template Parameters
TThe C++ type of the Reporter value being consumed
Parameters
reporter_nameA ReporterName object that for the desired Reporter value.

Definition at line 40 of file ReporterInterface.C.

41{
42 if (!reportersAdded())
44 "Cannot call hasReporterValue() until all Reporters have been constructed.");
45
46 return hasReporterValueByName(getReporterName(param_name));
47}
bool hasReporterValueByName(const ReporterName &reporter_name) const

◆ hasReporterValue() [2/2]

template<typename T >
bool ReporterInterface::hasReporterValue ( const std::string &  param_name) const
protectedinherited

Definition at line 189 of file ReporterInterface.h.

190{
191 if (!reportersAdded())
193 "Cannot call hasReporterValue() until all Reporters have been constructed.");
194
195 return hasReporterValueByName<T>(getReporterName(param_name));
196}

◆ hasReporterValueByName() [1/2]

bool ReporterInterface::hasReporterValueByName ( const ReporterName reporter_name) const
protectedinherited

Definition at line 50 of file ReporterInterface.C.

51{
52 if (!reportersAdded())
54 "Cannot call hasReporterValueByName() until all Reporters have been constructed.");
55
56 return _ri_reporter_data.hasReporterValue(reporter_name);
57}

Referenced by ReporterInterface::hasReporterValue(), and AdvancedOutput::initShowHideLists().

◆ hasReporterValueByName() [2/2]

template<typename T >
bool ReporterInterface::hasReporterValueByName ( const ReporterName reporter_name) const
protectedinherited

Definition at line 200 of file ReporterInterface.h.

201{
202 if (!reportersAdded())
204 "Cannot call hasReporterValueByName() until all Reporters have been constructed.");
205
206 return _ri_reporter_data.hasReporterValue<T>(reporter_name);
207}

◆ hasScalarOutput()

bool AdvancedOutput::hasScalarOutput ( )
inherited

Returns true if there exists scalar variables for output.

Returns
True if scalar variable output exists
See also
getScalarVariableOutput

Definition at line 851 of file AdvancedOutput.C.

852{
853 return hasOutputHelper("scalars");
854}

Referenced by Exodus::initialSetup().

◆ hasVectorPostprocessor() [1/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 175 of file VectorPostprocessorInterface.C.

176{
178 _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessor() until all "
179 "VectorPostprocessors have been constructed.");
180
182}
bool hasVectorPostprocessorByName(const VectorPostprocessorName &name, const std::string &vector_name) const
Determine if the VectorPostprocessor data exists by name.

◆ hasVectorPostprocessor() [2/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 151 of file VectorPostprocessorInterface.C.

153{
155 _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessor() until all VectorPostprocessors "
156 "have been constructed.");
157
158 return hasVectorPostprocessorByName(getVectorPostprocessorName(param_name), vector_name);
159}

Referenced by VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor().

◆ hasVectorPostprocessorByName() [1/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 185 of file VectorPostprocessorInterface.C.

187{
189 _vpi_feproblem.mooseError("Cannot call hasVectorPostprocessorByName() until all "
190 "VectorPostprocessors have been constructed.");
191
192 std::vector<VectorPostprocessor *> objs;
194 .query()
196 .condition<AttribThread>(0)
197 .condition<AttribName>(name)
198 .queryInto(objs);
199 return !objs.empty();
200}
@ VectorPostprocessor
TheWarehouse & theWarehouse() const
QueryCache & condition(Args &&... args)
Adds a new condition to the query.
Query query()
query creates and returns an initialized a query object for querying objects from the warehouse.

◆ hasVectorPostprocessorByName() [2/2]

bool VectorPostprocessorInterface::hasVectorPostprocessorByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
inherited

◆ hasVectorPostprocessorOutput()

bool AdvancedOutput::hasVectorPostprocessorOutput ( )
inherited

Returns true if there exists VectorPostprocessors for output.

Returns
True if VectorPostprocessor output exists
See also
getVectorPostprocessorOutput

Definition at line 875 of file AdvancedOutput.C.

876{
877 return hasOutputHelper("vector_postprocessors");
878}

◆ hideAdditionalVariable()

void AdvancedOutput::hideAdditionalVariable ( const std::string &  category,
const std::string &  var_name 
)
inlineprotectedinherited

Add an additional variable to the hide list.

Definition at line 204 of file AdvancedOutput.h.

205 {
206 _execute_data[category].hide.insert(var_name);
207 _execute_data[category].output.erase(var_name);
208 }

Referenced by SampledOutput::initSample().

◆ init()

void AdvancedOutput::init ( )
protectedvirtualinherited

Populates the various data structures needed to control the output.

Definition at line 158 of file AdvancedOutput.C.

159{
160 // Initialize the execution flags
161 for (auto & [name, input] : _advanced_execute_on)
162 initExecutionTypes(name, input);
163
164 // Clear existing execute information lists
166
167 // Initialize the available output
169
170 // Separate the hide/show list into components
171 initShowHideLists(getParam<std::vector<VariableName>>("show"),
172 getParam<std::vector<VariableName>>("hide"));
173
174 // If 'elemental_as_nodal = true' the elemental variable names must be appended to the
175 // nodal variable names. Thus, when libMesh::EquationSystem::build_solution_vector is called
176 // it will create the correct nodal variable from the elemental
178 {
179 OutputData & nodal = _execute_data["nodal"];
180 OutputData & elemental = _execute_data["elemental"];
181 nodal.show.insert(elemental.show.begin(), elemental.show.end());
182 nodal.hide.insert(elemental.hide.begin(), elemental.hide.end());
183 nodal.available.insert(elemental.available.begin(), elemental.available.end());
184 }
185
186 // Similarly as above, if 'scalar_as_nodal = true' append the elemental variable lists
188 {
189 OutputData & nodal = _execute_data["nodal"];
190 OutputData & scalar = _execute_data["scalars"];
191 nodal.show.insert(scalar.show.begin(), scalar.show.end());
192 nodal.hide.insert(scalar.hide.begin(), scalar.hide.end());
193 nodal.available.insert(scalar.available.begin(), scalar.available.end());
194 }
195
196 // Initialize the show/hide/output lists for each of the types of output
197 for (auto & it : _execute_data)
198 initOutputList(it.second);
199}
void initExecutionTypes(const std::string &name, ExecFlagEnum &input)
Initialize the possible execution types.
void initAvailableLists()
Initializes the available lists for each of the output types.
bool _elemental_as_nodal
Flags to control nodal output.
void initShowHideLists(const std::vector< VariableName > &show, const std::vector< VariableName > &hide)
Parses the user-supplied input for hiding and showing variables and postprocessors into a list for ea...
void initOutputList(OutputData &data)
Initializes the list of items to be output using the available, show, and hide lists.
void reset()
Clear existing lists for re-initialization.
A structure for storing the various lists that contain the names of the items to be exported.
std::set< std::string > show
User-supplied list of outputs to display.
std::set< std::string > available
A list of all possible outputs.
std::set< std::string > hide
User-supplied list of outputs to hide.

Referenced by AdvancedOutput::initialSetup(), and AdvancedOutput::output().

◆ initAvailableLists()

void AdvancedOutput::initAvailableLists ( )
privateinherited

Initializes the available lists for each of the output types.

Definition at line 413 of file AdvancedOutput.C.

414{
415 // Initialize Postprocessor list
416 // This flag is set to true if any postprocessor has the 'outputs' parameter set, it is then used
417 // to produce an warning if postprocessor output is disabled
419 initPostprocessorOrVectorPostprocessorLists<Postprocessor>("postprocessors");
420
421 // Initialize vector postprocessor list
422 // This flag is set to true if any vector postprocessor has the 'outputs' parameter set, it is
423 // then used
424 // to produce an warning if vector postprocessor output is disabled
426 initPostprocessorOrVectorPostprocessorLists<VectorPostprocessor>("vector_postprocessors");
427
428 // Get a list of the available variables
429 std::vector<VariableName> variables = _problem_ptr->getVariableNames();
430
431 // Loop through the variables and store the names in the correct available lists
432 for (const auto & var_name : variables)
433 {
434 if (_problem_ptr->hasVariable(var_name))
435 {
438
439 // Skip if the 'outputs' parameter has been set to exclude this output
440 if (var.isParamValid("outputs"))
441 {
442 const auto & outputs = var.getParam<std::vector<OutputName>>("outputs");
443 if (outputs.size() && std::find(outputs.begin(), outputs.end(), name()) == outputs.end() &&
444 outputs[0] != "all")
445 continue;
446 }
447
448 const FEType type = var.feType();
449 for (unsigned int i = 0; i < var.count(); ++i)
450 {
451 VariableName vname = var_name;
452 if (var.isArray())
453 vname = var.arrayVariableComponent(i);
454
455 // A note that if we have p-refinement we assume "worst-case" scenario that our constant
456 // monomial/monomial-vec families have been refined and we can no longer write them as
457 // elemental
458 if (type.order == CONSTANT && !_problem_ptr->havePRefinement() &&
459 type.family != MONOMIAL_VEC)
460 _execute_data["elemental"].available.insert(vname);
462 {
463 const auto geom_type = ((type.family == MONOMIAL_VEC) && (type.order == CONSTANT) &&
465 ? "elemental"
466 : "nodal";
468 {
469 case 0:
470 case 1:
471 _execute_data[geom_type].available.insert(vname);
472 break;
473 case 2:
474 _execute_data[geom_type].available.insert(vname + "_x");
475 _execute_data[geom_type].available.insert(vname + "_y");
476 break;
477 case 3:
478 _execute_data[geom_type].available.insert(vname + "_x");
479 _execute_data[geom_type].available.insert(vname + "_y");
480 _execute_data[geom_type].available.insert(vname + "_z");
481 break;
482 }
483 }
484 else
485 _execute_data["nodal"].available.insert(vname);
486 }
487 }
488
489 else if (_problem_ptr->hasScalarVariable(var_name))
490 _execute_data["scalars"].available.insert(var_name);
491 }
492
493 // Initialize Reporter name list
494 for (auto && r_name : _reporter_data.getReporterNames())
495 if ((_postprocessors_as_reporters || !r_name.isPostprocessor()) &&
496 (_vectorpostprocessors_as_reporters || !r_name.isVectorPostprocessor()))
497 _execute_data["reporters"].available.insert(r_name);
498}
const bool _postprocessors_as_reporters
Flags for outputting PP/VPP data as a reporter.
const ReporterData & _reporter_data
Storage for Reporter values.
const bool _vectorpostprocessors_as_reporters
virtual bool hasScalarVariable(const std::string &var_name) const override
Returns a Boolean indicating whether any system contains a variable with the name provided.
virtual const MooseVariableFieldBase & getVariable(const THREAD_ID tid, const std::string &var_name, Moose::VarKindType expected_var_type=Moose::VarKindType::VAR_ANY, Moose::VarFieldType expected_var_field_type=Moose::VarFieldType::VAR_FIELD_ANY) const override
Returns the variable reference for requested variable which must be of the expected_var_type (Nonline...
virtual bool hasVariable(const std::string &var_name) const override
Whether or not this problem has the variable.
virtual std::vector< VariableName > getVariableNames()
Returns a list of all the variables in the problem (both from the NL and Aux systems.
const libMesh::FEType & feType() const
Get the type of finite element object.
virtual bool isArray() const
const std::string & arrayVariableComponent(const unsigned int i) const
Returns the variable name of a component of an array variable.
unsigned int count() const
Get the number of components Note: For standard and vector variables, the number is one.
This class provides an interface for common operations on field variables of both FE and FV types wit...
libMesh::EquationSystems * _es_ptr
Reference the the libMesh::EquationSystems object that contains the data.
Definition Output.h:194
bool havePRefinement() const
Query whether p-refinement has been requested at any point during the simulation.
const MeshBase & get_mesh() const
static FEFieldType field_type(const FEType &fe_type)
unsigned int spatial_dimension() const
@ VAR_FIELD_ANY
Definition MooseTypes.h:781
@ VAR_ANY
Definition MooseTypes.h:772

Referenced by AdvancedOutput::init().

◆ initExecutionTypes()

void AdvancedOutput::initExecutionTypes ( const std::string &  name,
ExecFlagEnum input 
)
privateinherited

Initialize the possible execution types.

Parameters
nameThe name of the supplied MultiMoose enum from the _execute_on std::map (e.g., scalars)
inputThe ExecFlagEnum for output type flags to initialize

Definition at line 501 of file AdvancedOutput.C.

502{
503 // Build the input parameter name
504 std::string param_name = "execute_";
505 param_name += name + "_on";
506
507 // The parameters exists and has been set by the user
508 if (_pars.have_parameter<ExecFlagEnum>(param_name) && isParamValid(param_name))
509 input = getParam<ExecFlagEnum>(param_name);
510
511 // If the parameter does not exists; set it to a state where no valid entries exists so nothing
512 // gets executed
513 else if (!_pars.have_parameter<ExecFlagEnum>(param_name))
514 {
515 input = _execute_on;
516 input.clearSetValues();
517 }
518}
bool have_parameter(std::string_view name) const
A wrapper around the Parameters base class method.
void clearSetValues()
Clear the MultiMooseEnum.

Referenced by AdvancedOutput::init().

◆ initialSetup()

void SampledOutput::initialSetup ( )
overridevirtualinherited

Call init() method on setup.

Reimplemented from AdvancedOutput.

Reimplemented in Exodus.

Definition at line 76 of file SampledOutput.C.

77{
79
80 // Creates and initializes the sampling mesh
81 initSample();
82}
virtual void initialSetup()
Call init() method on setup.
void initSample()
Setups the output object to produce re-positioned and/or sampled results.

Referenced by Exodus::initialSetup().

◆ initOutputList()

void AdvancedOutput::initOutputList ( OutputData data)
privateinherited

Initializes the list of items to be output using the available, show, and hide lists.

Parameters
dataThe OutputData to operate on

Definition at line 652 of file AdvancedOutput.C.

653{
654 // References to the vectors of variable names
655 std::set<std::string> & hide = data.hide;
656 std::set<std::string> & show = data.show;
657 std::set<std::string> & avail = data.available;
658 std::set<std::string> & output = data.output;
659
660 // Get the hide list from OutputInterface objects
661 std::set<std::string> interface_hide_all_types;
662 _app.getOutputWarehouse().buildInterfaceHideVariables(name(), interface_hide_all_types);
663
664 // OutputInterface hide list includes all types; only include those that are available
665 std::set<std::string> interface_hide;
666 std::set_intersection(interface_hide_all_types.begin(),
667 interface_hide_all_types.end(),
668 avail.begin(),
669 avail.end(),
670 std::inserter(interface_hide, interface_hide.begin()));
671
672 // Append to the hide list from OutputInterface objects
673 hide.insert(interface_hide.begin(), interface_hide.end());
674
675 // Both show and hide are empty and no show/hide settings were provided (show all available)
676 if (!_execute_data.hasShowList() && hide.empty())
677 output = avail;
678
679 // Only hide is empty (show all the variables listed)
680 else if (_execute_data.hasShowList() && hide.empty())
681 output = show;
682
683 // Only show is empty (show all except those hidden)
684 else if (!_execute_data.hasShowList() && !hide.empty())
685 std::set_difference(avail.begin(),
686 avail.end(),
687 hide.begin(),
688 hide.end(),
689 std::inserter(output, output.begin()));
690
691 // Both hide and show are present (show all those listed)
692 else // (_execute_data.hasShowList() && !hide.empty())
693 {
694 // Check if variables are in both, which is invalid
695 std::vector<std::string> tmp;
696 std::set_intersection(
697 hide.begin(), hide.end(), show.begin(), show.end(), std::inserter(tmp, tmp.begin()));
698 if (!tmp.empty())
699 {
700 std::ostringstream oss;
701 oss << "Output(s) specified to be both shown and hidden: ";
702 std::copy(tmp.begin(), tmp.end(), infix_ostream_iterator<std::string>(oss, " "));
703 mooseError(oss.str());
704 }
705
706 // Define the output variable list
707 output = show;
708 }
709}
void mooseError(Args &&... args)
Emit an error message with the given stringified, concatenated args and terminate the application.
Definition MooseError.h:311
bool hasShowList()
False when the show lists for all variables is empty.
void buildInterfaceHideVariables(const std::string &output_name, std::set< std::string > &hide)
Return the list of hidden variables for the given output name.
GCC9 currently hits a "no type named 'value_type'" error during build if this is removed and iterator...
std::set< std::string > output
A list of the outputs to write.

Referenced by AdvancedOutput::init().

◆ initPostprocessorOrVectorPostprocessorLists()

template<typename postprocessor_type >
void AdvancedOutput::initPostprocessorOrVectorPostprocessorLists ( const std::string &  execute_data_name)
privateinherited

Helper function for initAvailableLists, templated on warehouse type and postprocessor_type.

Parameters
execute_data_nameName of the OutputData struct to initialize
warehouseReference to the postprocessor or vector postprocessor warehouse

Definition at line 383 of file AdvancedOutput.h.

384{
385 // Convenience reference to the OutputData being operated on (should used "postprocessors" or
386 // "vector_postprocessors")
387 OutputData & execute_data = _execute_data[execute_data_name];
388
389 // Build the input file parameter name (i.e. "output_postprocessors_on" or
390 // "output_vector_postprocessors_on")
391 std::ostringstream oss;
392 oss << "execute_" << execute_data_name << "_on";
393 std::string execute_on_name = oss.str();
394
395 std::vector<postprocessor_type *> objs;
396 if constexpr (std::is_same_v<postprocessor_type, Postprocessor>)
398 .query()
400 .condition<AttribThread>(0)
401 .queryIntoUnsorted(objs);
402 else if constexpr (std::is_same_v<postprocessor_type, VectorPostprocessor>)
404 .query()
406 .condition<AttribThread>(0)
407 .queryIntoUnsorted(objs);
408
409 for (const auto & obj : objs)
410 {
411 execute_data.available.insert(obj->PPName());
412
413 // Extract the list of outputs
414 const auto & pps_outputs = obj->getOutputs();
415
416 // Check that the outputs lists are valid
417 _app.getOutputWarehouse().checkOutputs(pps_outputs);
418
419 // Check that the output object allows postprocessor output,
420 // account for "all" keyword (if it is present assume "all" was desired)
421 if (pps_outputs.find(name()) != pps_outputs.end() ||
422 pps_outputs.find("all") != pps_outputs.end())
423 {
424 if (!_advanced_execute_on.contains(execute_data_name) ||
425 (_advanced_execute_on[execute_data_name].isValid() &&
426 _advanced_execute_on[execute_data_name].isValueSet("none")))
427 {
428 const bool is_pp_type = (execute_data_name == "postprocessors");
429 const std::string pp_type_str = is_pp_type ? "post-processor" : "vector post-processor";
430 mooseWarning("The ",
431 pp_type_str,
432 " '",
433 obj->PPName(),
434 "' has requested to be output by the '",
435 name(),
436 "' output, but ",
437 pp_type_str,
438 " output is disabled for that output object.");
439 }
440 }
441 }
442}
void checkOutputs(const std::set< OutputName > &names, const bool supports_material_output=false)
Test that the output names exist.

◆ initSample()

void SampledOutput::initSample ( )
privateinherited

Setups the output object to produce re-positioned and/or sampled results.

This is accomplished by creating a new, finer mesh that the existing solution is projected upon. This function is called by the creating action (addOutputAction) and should not be called by the user as it will create a memory leak if called multiple times.

Definition at line 133 of file SampledOutput.C.

134{
135 // Perform the mesh cloning, if needed
137 return;
138
139 cloneMesh();
140
141 // Re-position the sampling mesh
143 for (auto & node : _mesh_ptr->getMesh().node_ptr_range())
144 *node += _position;
145
146 // Perform the mesh refinement
147 if (_refinements > 0)
148 {
149 MeshRefinement mesh_refinement(_mesh_ptr->getMesh());
150
151 // We want original and refined partitioning to match so we can
152 // query from one to the other safely on distributed meshes.
154 mesh_refinement.uniformly_refine(_refinements);
155
156 // Note that nodesets are not propagated with mesh refinement, unless you built the nodesets
157 // from the sidesets again, which is what happens for the regular mesh with initial refinement
158 }
159
160 // We can't allow renumbering if we want to output multiple time
161 // steps to the same Exodus file
163
164 // This should be called after changing the mesh (block restriction for example)
165 if (_change_position || (_refinements > 0) || isParamValid("sampling_blocks"))
166 _sampling_mesh_ptr->meshChanged();
167
168 // Create the new EquationSystems
169 _sampling_es = std::make_unique<EquationSystems>(_mesh_ptr->getMesh());
170 _es_ptr = _sampling_es.get();
171
172 // Reference the system from which we are copying
173 EquationSystems & source_es = _problem_ptr->es();
174
175 // If we're going to be copying from that system later, we need to keep its
176 // original elements as ghost elements even if it gets grossly
177 // repartitioned, since we can't repartition the sample mesh to
178 // match.
179 // FIXME: this is not enough. It assumes our initial partition of the sampling mesh
180 // and the source mesh match. But that's usually only true in the 'refinement' case,
181 // not with an arbitrary sampling mesh file
182 DistributedMesh * dist_mesh = dynamic_cast<DistributedMesh *>(&source_es.get_mesh());
183 if (dist_mesh)
184 {
185 for (auto & elem : dist_mesh->active_local_element_ptr_range())
186 dist_mesh->add_extra_ghost_elem(elem);
187 }
188
189 // Initialize the _mesh_functions vector
190 const auto num_systems = source_es.n_systems();
191 _mesh_functions.resize(num_systems);
192
193 // Keep track of the variable numbering in both regular and sampled system
194 _variable_numbers_in_system.resize(num_systems);
195
196 // Get the list of nodal and elemental output data
197 const auto & nodal_data = getNodalVariableOutput();
198 const auto & elemental_data = getElementalVariableOutput();
199
200 // Loop over the number of systems
201 for (const auto sys_num : make_range(num_systems))
202 {
203 // Reference to the current system
204 const auto & source_sys = source_es.get_system(sys_num);
205
206 // Add the system to the new EquationsSystems
207 ExplicitSystem & dest_sys = _sampling_es->add_system<ExplicitSystem>(source_sys.name());
208
209 // Loop through the variables in the System
210 const auto num_vars = source_sys.n_vars();
211 unsigned int num_actual_vars = 0;
212 if (num_vars > 0)
213 {
214 if (_serialize)
216
217 // Add the variables to the system... simultaneously creating MeshFunctions for them.
218 for (const auto var_num : make_range(num_vars))
219 {
220 // Is the variable supposed to be output?
221 const auto & var_name = source_sys.variable_name(var_num);
222 if (!nodal_data.count(var_name) && !elemental_data.count(var_name))
223 continue;
224
225 // We do what we can to preserve the block restriction
226 const std::set<SubdomainID> * subdomains;
227 std::set<SubdomainID> restricted_subdomains;
229 subdomains = nullptr;
230 else
231 {
232 subdomains = &source_sys.variable(var_num).active_subdomains();
233 // Reduce the block restriction if the output is block restricted
234 if (isParamValid("sampling_blocks") && !subdomains->empty())
235 {
236 const auto & sampling_blocks = _sampling_mesh_ptr->getSubdomainIDs(
237 getParam<std::vector<SubdomainName>>("sampling_blocks"));
238 set_intersection(subdomains->begin(),
239 subdomains->end(),
240 sampling_blocks.begin(),
241 sampling_blocks.end(),
242 std::inserter(restricted_subdomains, restricted_subdomains.begin()));
243 subdomains = &restricted_subdomains;
244
245 // None of the subdomains are included in the sampling, might as well skip
246 if (subdomains->empty())
247 {
248 hideAdditionalVariable(nodal_data.count(var_name) ? "nodal" : "elemental", var_name);
249 continue;
250 }
251 }
252 }
253
254 // We are going to add the variable, let's count it
255 _variable_numbers_in_system[sys_num].push_back(var_num);
256 num_actual_vars++;
257
258 // Add the variable. We essentially support nodal variables and constant monomials
259 const FEType & fe_type = source_sys.variable_type(var_num);
260 if (isSampledAtNodes(fe_type))
261 {
262 dest_sys.add_variable(source_sys.variable_name(var_num), fe_type, subdomains);
263 if (dist_mesh && !_serialize)
264 paramError("serialize_sampling",
265 "Variables sampled as nodal currently require serialization with a "
266 "distributed mesh.");
267 }
268 else
269 {
270 const auto & var_name = source_sys.variable_name(var_num);
271 if (fe_type != FEType(CONSTANT, MONOMIAL))
272 {
273 mooseInfoRepeated("Sampled output projects variable '" + var_name +
274 "' onto a constant monomial");
275 if (!_serialize)
276 paramWarning("serialize_sampling",
277 "Projection without serialization may fail with insufficient ghosting. "
278 "Consider setting 'serialize_sampling' to true.");
279 }
280 dest_sys.add_variable(var_name, FEType(CONSTANT, MONOMIAL), subdomains);
281 }
282 // Note: we could do more, using the generic projector. But exodus output of higher order
283 // or more exotic variables is limited anyway
284 }
285
286 // Size for the actual number of variables output
287 _mesh_functions[sys_num].resize(num_actual_vars);
288 }
289 }
290
291 // Initialize the newly created EquationSystem
292 _sampling_es->init();
293}
const std::set< std::string > & getElementalVariableOutput()
The list of elemental nonlinear variables names that are set for output.
void hideAdditionalVariable(const std::string &category, const std::string &var_name)
Add an additional variable to the hide list.
const std::set< std::string > & getNodalVariableOutput()
The list of nodal nonlinear variables names that are set for output.
virtual libMesh::EquationSystems & es() override
MeshBase & getMesh()
Accessor for the underlying libMesh Mesh object.
Definition MooseMesh.C:3549
bool _use_sampled_output
Flag indicating that the sampled output should be used to re-sample the underlying EquationSystem of ...
std::unique_ptr< EquationSystems > _sampling_es
Equation system holding the solution vectors for the sampled variables.
bool isSampledAtNodes(const FEType &fe_type) const
Used to decide which variable is sampled at nodes, then output as a nodal variable for (over)sampling...
void cloneMesh()
Clone mesh in preperation for re-positioning or oversampling.
std::vector< std::vector< std::unique_ptr< libMesh::MeshFunction > > > _mesh_functions
A vector of pointers to the mesh functions on the sampled mesh This is only populated when the initSa...
std::unique_ptr< NumericVector< Number > > _serialized_solution
Sample solution vector.
const unsigned int _refinements
The number of oversampling refinements.
const bool _change_position
Flag for re-positioning.
std::vector< std::vector< unsigned int > > _variable_numbers_in_system
A vector of vectors that keeps track of the variable numbers in each system for each mesh function.
Point _position
When oversampling, the output is shift by this amount.
void paramWarning(const std::string &param, Args... args) const
unsigned int n_systems() const
const T_sys & get_system(std::string_view name) const
void allow_renumbering(bool allow)
void skip_partitioning(bool skip)
static std::unique_ptr< NumericVector< T > > build(const Parallel::Communicator &comm, SolverPackage solver_package=libMesh::default_solver_package(), ParallelType parallel_type=AUTOMATIC)
const Parallel::Communicator & _communicator
unsigned int add_variable(std::string_view var, const FEType &type, const std::set< subdomain_id_type > *const active_subdomains=nullptr)
unsigned int n_vars() const
IntRange< T > make_range(T beg, T end)

Referenced by SampledOutput::initialSetup().

◆ initShowHideLists()

void AdvancedOutput::initShowHideLists ( const std::vector< VariableName > &  show,
const std::vector< VariableName > &  hide 
)
privateinherited

Parses the user-supplied input for hiding and showing variables and postprocessors into a list for each type of output.

Parameters
showThe vector of names that are to be output
hideThe vector of names that are to be suppressed from the output

Definition at line 521 of file AdvancedOutput.C.

523{
524
525 // Storage for user-supplied input that is unknown as a variable or postprocessor
526 std::set<std::string> unknown;
527
528 // If a show hide/list exists, let the data warehouse know about it. This allows for the proper
529 // handling of output lists (see initOutputList)
530 if (show.size() > 0)
532
533 // Populate the show lists
534 for (const auto & var_name : show)
535 {
536 if (_problem_ptr->hasVariable(var_name))
537 {
540 const FEType type = var.feType();
541 for (unsigned int i = 0; i < var.count(); ++i)
542 {
543 VariableName vname = var_name;
544 if (var.isArray())
545 vname = var.arrayVariableComponent(i);
546
547 if (type.order == CONSTANT)
548 _execute_data["elemental"].show.insert(vname);
550 {
551 const auto geom_type =
552 ((type.family == MONOMIAL_VEC) && (type.order == CONSTANT)) ? "elemental" : "nodal";
554 {
555 case 0:
556 case 1:
557 _execute_data[geom_type].show.insert(vname);
558 break;
559 case 2:
560 _execute_data[geom_type].show.insert(vname + "_x");
561 _execute_data[geom_type].show.insert(vname + "_y");
562 break;
563 case 3:
564 _execute_data[geom_type].show.insert(vname + "_x");
565 _execute_data[geom_type].show.insert(vname + "_y");
566 _execute_data[geom_type].show.insert(vname + "_z");
567 break;
568 }
569 }
570 else
571 _execute_data["nodal"].show.insert(vname);
572 }
573 }
574 else if (_problem_ptr->hasScalarVariable(var_name))
575 _execute_data["scalars"].show.insert(var_name);
576 else if (hasPostprocessorByName(var_name))
577 _execute_data["postprocessors"].show.insert(var_name);
578 else if (hasVectorPostprocessorByName(var_name))
579 _execute_data["vector_postprocessors"].show.insert(var_name);
580 else if ((var_name.find("/") != std::string::npos) &&
582 _execute_data["reporters"].show.insert(var_name);
583 else
584 unknown.insert(var_name);
585 }
586
587 // Populate the hide lists
588 for (const auto & var_name : hide)
589 {
590 if (_problem_ptr->hasVariable(var_name))
591 {
594 const FEType type = var.feType();
595 for (unsigned int i = 0; i < var.count(); ++i)
596 {
597 VariableName vname = var_name;
598 if (var.isArray())
599 vname = var.arrayVariableComponent(i);
600
601 if (type.order == CONSTANT)
602 _execute_data["elemental"].hide.insert(vname);
604 {
606 {
607 case 0:
608 case 1:
609 _execute_data["nodal"].hide.insert(vname);
610 break;
611 case 2:
612 _execute_data["nodal"].hide.insert(vname + "_x");
613 _execute_data["nodal"].hide.insert(vname + "_y");
614 break;
615 case 3:
616 _execute_data["nodal"].hide.insert(vname + "_x");
617 _execute_data["nodal"].hide.insert(vname + "_y");
618 _execute_data["nodal"].hide.insert(vname + "_z");
619 break;
620 }
621 }
622 else
623 _execute_data["nodal"].hide.insert(vname);
624 }
625 }
626 else if (_problem_ptr->hasScalarVariable(var_name))
627 _execute_data["scalars"].hide.insert(var_name);
628 else if (hasPostprocessorByName(var_name))
629 _execute_data["postprocessors"].hide.insert(var_name);
630 else if (hasVectorPostprocessorByName(var_name))
631 _execute_data["vector_postprocessors"].hide.insert(var_name);
632 else if ((var_name.find("/") != std::string::npos) &&
634 _execute_data["reporters"].hide.insert(var_name);
635
636 else
637 unknown.insert(var_name);
638 }
639
640 // Error if an unknown variable or postprocessor is found
641 if (!unknown.empty())
642 {
643 std::ostringstream oss;
644 oss << "Output(s) do not exist (must be variable, scalar, postprocessor, or vector "
645 "postprocessor): ";
646 std::copy(unknown.begin(), unknown.end(), infix_ostream_iterator<std::string>(oss, " "));
647 mooseError(oss.str());
648 }
649}
void setHasShowList(bool value)
Set the show list bool.

Referenced by AdvancedOutput::init().

◆ inLinearTimeWindow()

bool PetscOutput::inLinearTimeWindow ( )
inlineprotectedinherited

Definition at line 67 of file PetscOutput.h.

68 {
70 }
Real & _time
The current time for output purposes.
Definition Output.h:214
Real _t_tol
Time checking tolerance.
Definition Output.h:262
Real _linear_end_time
Linear residual output end time.
Real _linear_start_time
Linear residual output start time.

◆ inNonlinearTimeWindow()

bool PetscOutput::inNonlinearTimeWindow ( )
inlineprotectedinherited

Definition at line 63 of file PetscOutput.h.

64 {
66 }
Real _nonlinear_start_time
Non-linear residual output start time.
Real _nonlinear_end_time
Non-linear residual output end time.

◆ interval()

const unsigned int & Output::interval ( ) const
inherited

Get the output interval.

◆ isAdvanced()

bool Output::isAdvanced ( )
inherited

Returns true if this object is an AdvancedOutput object.

Definition at line 399 of file Output.C.

400{
401 return _is_advanced;
402}
bool _is_advanced
Flag for advanced output testing.
Definition Output.h:271

◆ 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 85 of file PostprocessorInterface.C.

87{
89}

Referenced by EigenKernel::EigenKernel().

◆ isDefaultPostprocessorValueByName()

bool PostprocessorInterface::isDefaultPostprocessorValueByName ( const PostprocessorName &  name) const
privateinherited
Returns
True if the PostprocessorName name repesents a default value: the name converts to a value (set by addParam or set via input), and a Postprocessor does not exist with the same name (we do allow Postprocessors with numbered names...)

Definition at line 92 of file PostprocessorInterface.C.

93{
94 // We do allow actual Postprocessor objects to have names that will succeed in being
95 // represented as a double... so if the name does actually exist as a PP, it's not a default
98 return false;
99
100 std::istringstream ss(name);
101 Real real_value = -std::numeric_limits<Real>::max();
102 return (ss >> real_value && ss.eof());
103}

Referenced by PostprocessorInterface::getDefaultPostprocessorValueByName(), PostprocessorInterface::getPostprocessorNameInternal(), PostprocessorInterface::getPostprocessorValueByNameInternal(), PostprocessorInterface::getPostprocessorValueInternal(), and PostprocessorInterface::isDefaultPostprocessorValue().

◆ isKokkosObject()

bool MooseObject::isKokkosObject ( ) const
inlineinherited

Get whether this object is a Kokkos functor The parameter MooseBase::kokkos_object_param is set by the Kokkos base classes.

Definition at line 63 of file MooseObject.h.

63{ return parameters().isKokkosObject(); }
bool isKokkosObject() const
Returns whether this InputParameters belongs to a Kokkos object Checks whether MooseBase::kokkos_obje...

Referenced by AttribKokkos::initFrom(), BlockRestrictable::initializeBlockRestrictable(), and BoundaryRestrictable::initializeBoundaryRestrictable().

◆ isParamSetByUser()

bool MooseBase::isParamSetByUser ( const std::string &  name) const
inlineinherited

Test if the supplied parameter is set by a user, as opposed to not set or set to default.

Parameters
nameThe name of the parameter to test

Definition at line 205 of file MooseBase.h.

206 {
208 }
bool isParamSetByUser(const std::string &name) const
Method returns true if the parameter was set by the user.

Referenced by DiffusionCG::addFEBCs(), DiffusionPhysicsBase::addInitialConditions(), CylinderComponent::addMeshGenerators(), AdvancedExtruderGenerator::AdvancedExtruderGenerator(), MFEMMesh::buildMesh(), MFEMBoundarySubMesh::buildSubMesh(), MFEMDomainSubMesh::buildSubMesh(), LibtorchNeuralNetControl::conditionalParameterError(), ConservativeAdvectionBCTempl< is_ad >::ConservativeAdvectionBCTempl(), MooseApp::copyInputs(), DiffusionPhysicsBase::DiffusionPhysicsBase(), MooseApp::errorCheck(), FileMesh::FileMesh(), FullSolveMultiApp::FullSolveMultiApp(), OrientSurfaceMeshGenerator::generate(), SurfaceSubdomainsFromAllNormalsGenerator::generate(), MFEMVectorFESpace::getFECName(), MooseBase::getRenamedParam(), DefaultConvergenceBase::getSharedExecutionerParam(), AddVariableAction::init(), MFEMMesh::init(), PhysicsBase::initializePhysics(), ElementSubdomainModifierBase::initialSetup(), MatrixSymmetryCheck::MatrixSymmetryCheck(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MFEMVariable::MFEMVariable(), MortarConstraintBase::MortarConstraintBase(), MultiAppGeneralFieldFunctorTransfer::MultiAppGeneralFieldFunctorTransfer(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), OrientSurfaceMeshGenerator::OrientSurfaceMeshGenerator(), SolutionInvalidityOutput::output(), Output::Output(), MultiAppGeneralFieldTransfer::outputValueConflicts(), PetscExternalPartitioner::partition(), PolyLineMeshFollowingNodeSetGenerator::PolyLineMeshFollowingNodeSetGenerator(), MooseMesh::prepare(), SolutionUserObjectBase::readXda(), ReferenceResidualConvergence::ReferenceResidualConvergence(), PhysicsBase::reportPotentiallyMissedParameters(), MooseApp::run(), MooseApp::runInputFile(), MooseApp::runInputs(), Moose::MFEM::LinearSolverBase::SetPreconditioner(), SetupMeshAction::setupMesh(), MooseApp::setupOptions(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), SmoothMeshGenerator::SmoothMeshGenerator(), SurfaceSubdomainsDelaunayRemesher::SurfaceSubdomainsDelaunayRemesher(), SurfaceSubdomainsFromAllNormalsGenerator::SurfaceSubdomainsFromAllNormalsGenerator(), TagVectorAux::TagVectorAux(), TimedSubdomainModifier::TimedSubdomainModifier(), TimeIntegratedPostprocessor::TimeIntegratedPostprocessor(), XYDelaunayGenerator::XYDelaunayGenerator(), and XYZDelaunayGenerator::XYZDelaunayGenerator().

◆ isParamValid()

bool MooseBase::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 199 of file MooseBase.h.

199{ return _pars.isParamValid(name); }

Referenced by GridPartitioner::_do_partition(), HierarchicalGridPartitioner::_do_partition(), AddVariableAction::act(), AutoCheckpointAction::act(), CommonOutputAction::act(), ComposeTimeStepperAction::act(), CopyNodalVarsAction::act(), CreateDisplacedProblemAction::act(), SetAdaptivityOptionsAction::act(), SetupDebugAction::act(), SetupMeshAction::act(), DiffusionCG::addFEKernels(), DiffusionFV::addFVBCs(), DiffusionFV::addFVKernels(), DiffusionPhysicsBase::addInitialConditions(), ComponentJunction::addMeshGenerators(), CylinderComponent::addMeshGenerators(), DiffusionPhysicsBase::addPostprocessors(), AdvancedExtruderGenerator::AdvancedExtruderGenerator(), AdvectiveFluxAux::AdvectiveFluxAux(), ArrayHFEMDirichletBC::ArrayHFEMDirichletBC(), ArrayVarReductionAux::ArrayVarReductionAux(), BicubicSplineFunction::BicubicSplineFunction(), BlockDeletionGenerator::BlockDeletionGenerator(), BSplineCurveGenerator::BSplineCurveGenerator(), TimedSubdomainModifier::buildFromFile(), ParsedChainControl::buildFunction(), GeneratedMesh::buildMesh(), MooseMesh::buildTypedMesh(), CartesianGridDivision::CartesianGridDivision(), CartesianMeshGenerator::CartesianMeshGenerator(), MultiAppTransfer::checkParentAppUserObjectExecuteOn(), LibmeshPartitioner::clone(), SampledOutput::cloneMesh(), CombinedVectorPostprocessor::CombinedVectorPostprocessor(), CombinerGenerator::CombinerGenerator(), ComponentJunction::ComponentJunction(), ConservativeAdvectionBCTempl< is_ad >::ConservativeAdvectionBCTempl(), ConservativeAdvectionTempl< is_ad >::ConservativeAdvectionTempl(), FEProblemSolve::convergenceSetup(), CopyMeshPartitioner::CopyMeshPartitioner(), CSVReaderVectorPostprocessor::CSVReaderVectorPostprocessor(), CutMeshByLevelSetGeneratorBase::CutMeshByLevelSetGeneratorBase(), ConstantReporter::declareConstantReporterValue(), ConstantReporter::declareConstantReporterValues(), DGKernelBase::DGKernelBase(), DiffusionFluxAux::DiffusionFluxAux(), DomainUserObject::DomainUserObject(), DynamicObjectRegistrationAction::DynamicObjectRegistrationAction(), EigenProblemSolve::EigenProblemSolve(), ElementGenerator::ElementGenerator(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), PIDTransientControl::execute(), MultiAppNearestNodeTransfer::execute(), MultiAppUserObjectTransfer::execute(), Exodus::Exodus(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), FEProblemBase::FEProblemBase(), FEProblemSolve::FEProblemSolve(), FileOutput::FileOutput(), SpatialUserObjectVectorPostprocessor::fillPoints(), CombinerGenerator::fillPositions(), MultiApp::fillPositions(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), FixedPointSolve::FixedPointSolve(), FunctionDT::FunctionDT(), FunctionValuePostprocessor::FunctionValuePostprocessor(), FVInterfaceKernel::FVInterfaceKernel(), FVMassMatrix::FVMassMatrix(), SurfaceSubdomainsDelaunayRemesher::General2DDelaunay(), AddMetaDataGenerator::generate(), BlockDeletionGenerator::generate(), BreakBoundaryOnSubdomainGenerator::generate(), BSplineCurveGenerator::generate(), ConcentricCircleMeshGenerator::generate(), DistributedRectilinearMeshGenerator::generate(), ElementGenerator::generate(), ExtraNodesetGenerator::generate(), FileMeshGenerator::generate(), GeneratedMeshGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), ManifoldSubdomainGenerator::generate(), MeshExtruderGenerator::generate(), OrientSurfaceMeshGenerator::generate(), ParsedExtraElementIDGenerator::generate(), ParsedSubdomainGeneratorBase::generate(), RenumberBySubdomainGenerator::generate(), SideSetsFromNodeSetsGenerator::generate(), SphereMeshGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), SubdomainPerElementGenerator::generate(), XYDelaunayGenerator::generate(), XYMeshLineCutter::generate(), XYZDelaunayGenerator::generate(), PropertyReadFile::getFileNames(), MultiAppNearestNodeTransfer::getLocalEntitiesAndComponents(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), MooseBase::getRenamedParam(), MultiAppNearestNodeTransfer::getTargetLocalNodes(), AddPeriodicBCAction::getVariables(), Terminator::handleMessage(), HFEMDirichletBC::HFEMDirichletBC(), EigenExecutionerBase::init(), IterationAdaptiveDT::init(), AdvancedOutput::initAvailableLists(), AdvancedOutput::initExecutionTypes(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), SolutionAux::initialSetup(), SolutionScalarAux::initialSetup(), PIDTransientControl::initialSetup(), ParsedConvergence::initialSetup(), EigenProblemSolve::initialSetup(), MooseParsedFunction::initialSetup(), MooseParsedGradFunction::initialSetup(), MooseParsedVectorFunction::initialSetup(), PiecewiseTabularBase::initialSetup(), SolutionIC::initialSetup(), Console::initialSetup(), MultiAppCloneReporterTransfer::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), MultiAppVariableValueSampleTransfer::initialSetup(), SampledOutput::initSample(), IterationAdaptiveDT::IterationAdaptiveDT(), LeastSquaresFit::LeastSquaresFit(), LibmeshPartitioner::LibmeshPartitioner(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), PNGOutput::makePNG(), MassMatrix::MassMatrix(), MatCoupledForce::MatCoupledForce(), MeshGeneratorComponent::MeshGeneratorComponent(), MFEMProblemSolve::MFEMProblemSolve(), MooseMesh::MooseMesh(), MoosePreconditioner::MoosePreconditioner(), MooseStaticCondensationPreconditioner::MooseStaticCondensationPreconditioner(), MooseVariableBase::MooseVariableBase(), MortarConstraintBase::MortarConstraintBase(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppCloneReporterTransfer::MultiAppCloneReporterTransfer(), MultiAppGeneralFieldKDTreeTransferBase::MultiAppGeneralFieldKDTreeTransferBase(), MultiAppGeneralFieldShapeEvaluationTransfer::MultiAppGeneralFieldShapeEvaluationTransfer(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppPostprocessorInterpolationTransfer::MultiAppPostprocessorInterpolationTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppReporterTransfer::MultiAppReporterTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSampleTransfer::MultiAppVariableValueSampleTransfer(), MultiPostprocessorConvergence::MultiPostprocessorConvergence(), MultiSystemSolveObject::MultiSystemSolveObject(), NodeSetsGeneratorBase::NodeSetsGeneratorBase(), EigenExecutionerBase::normalizeSolution(), OrientSurfaceMeshGenerator::OrientSurfaceMeshGenerator(), Output::Output(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedSubdomainGeneratorBase::ParsedSubdomainGeneratorBase(), PetscOutput::PetscOutput(), PhysicsBasedPreconditioner::PhysicsBasedPreconditioner(), EqualValueBoundaryConstraint::pickPrimaryNode(), PIDTransientControl::PIDTransientControl(), PiecewiseTabularBase::PiecewiseTabularBase(), PlaneIDMeshGenerator::PlaneIDMeshGenerator(), EqualValueBoundaryConstraint::populateSecondaryNodes(), MooseMesh::prepare(), MultiApp::readCommandLineArguments(), SolutionUserObjectBase::readExodusIIOrNemesis(), ReferenceResidualInterface::ReferenceResidualInterface(), RenameBlockGenerator::RenameBlockGenerator(), ReporterPointSource::ReporterPointSource(), PhysicsBase::reportPotentiallyMissedParameters(), ParsedSubdomainMeshGenerator::setBlockName(), MooseMesh::setCoordSystem(), FileOutput::setFileBase(), FileOutput::setFileBaseInternal(), SideSetsGeneratorBase::setup(), SurfaceMeshGeneratorBase::setup(), Split::setup(), SetupMeshAction::setupMesh(), MooseApp::setupOptions(), Output::setWallTimeIntervalFromCommandLineParam(), SideDiffusiveFluxIntegralTempl< is_ad, T >::SideDiffusiveFluxIntegralTempl(), SideSetsGeneratorBase::SideSetsGeneratorBase(), SolutionUserObjectBase::SolutionUserObjectBase(), Terminator::Terminator(), TimeIntervalTimes::TimeIntervalTimes(), TimePeriod::TimePeriod(), PIDTransientControl::timestepSetup(), MultiAppDofCopyTransfer::transfer(), TransformGenerator::TransformGenerator(), TransientBase::TransientBase(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl(), XYDelaunayGenerator::XYDelaunayGenerator(), and XYZDelaunayGenerator::XYZDelaunayGenerator().

◆ isSampledAtNodes()

bool SampledOutput::isSampledAtNodes ( const FEType fe_type) const
privateinherited

Used to decide which variable is sampled at nodes, then output as a nodal variable for (over)sampling purposes If not sampled at nodes, it is sampled at centroids and output as a constant monomial.

Definition at line 542 of file SampledOutput.C.

543{
544 // This is the same criterion as in MooseVariableData
545 const auto continuity = FEInterface::get_continuity(fe_type);
546 return (continuity == C_ZERO || continuity == C_ONE);
547}
static FEContinuity get_continuity(const FEType &fe_type)

Referenced by SampledOutput::initSample(), and SampledOutput::updateSample().

◆ 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 203 of file VectorPostprocessorInterface.C.

204{
206}
bool isVectorPostprocessorDistributedByName(const VectorPostprocessorName &name) const

◆ isVectorPostprocessorDistributedByName()

bool VectorPostprocessorInterface::isVectorPostprocessorDistributedByName ( const VectorPostprocessorName &  name) const
inherited

Definition at line 209 of file VectorPostprocessorInterface.C.

211{
213}
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.

Referenced by VectorPostprocessorInterface::isVectorPostprocessorDistributed().

◆ jacobianSetup()

void SetupInterface::jacobianSetup ( )
virtualinherited

◆ meshChanged()

void SampledOutput::meshChanged ( )
overridevirtualinherited

Called on this object when the mesh changes.

Reimplemented from MeshChangedInterface.

Reimplemented in Exodus.

Definition at line 127 of file SampledOutput.C.

128{
130}
bool _sampling_mesh_changed
A flag indicating that the mesh has changed and the sampled mesh needs to be re-initialized.

Referenced by Exodus::meshChanged().

◆ messagePrefix() [1/2]

std::string MooseBase::messagePrefix ( const bool  hit_prefix = true) const
inlineinherited
Returns
A prefix to be used in messages that contain the input file location associated with this object (if any) and the name and type of the object.

Definition at line 256 of file MooseBase.h.

257 {
258 return messagePrefix(_pars, hit_prefix);
259 }

Referenced by MooseBase::callMooseError(), MooseBase::errorPrefix(), MooseBase::messagePrefix(), MooseBase::mooseDeprecated(), MooseBase::mooseDeprecatedNoTrace(), MooseBase::mooseInfo(), and MooseBase::mooseWarning().

◆ messagePrefix() [2/2]

std::string MooseBase::messagePrefix ( const InputParameters params,
const bool  hit_prefix 
)
staticprivateinherited

Internal method for getting the message prefix for an object (object type, name, etc).

Needs to be static so that we can call it externally from InputParameters for errors that do not have context of the MooseBase

Definition at line 140 of file MooseBase.C.

141{
142 std::string prefix = "";
143
144 if (hit_prefix)
145 if (const auto node = MooseBase::getHitNode(params))
146 prefix += Moose::hitMessagePrefix(*node);
147
148 // Don't have context without type and name
149 if (!params.isMooseBaseObject())
150 return prefix;
151
152 const auto & name = params.getObjectName();
153 const std::string base = params.hasBase() ? params.getBase() : "object";
154 const bool is_main_app = base == "Application" && name == AppFactory::main_app_name;
155 prefix += "The following occurred in the ";
156 if (is_main_app)
157 prefix += "main " + base;
158 else
159 prefix += base;
160 if (base != params.getObjectName() && name.size() && !is_main_app)
161 prefix += " '" + name + "'";
162 prefix += " of type " + params.getObjectType() + ".";
163 return prefix + "\n\n";
164}
static const std::string main_app_name
The name for the "main" moose application.
Definition AppFactory.h:68
bool isMooseBaseObject() const
const std::string & getObjectType() const
const std::string & getObjectName() const
std::string hitMessagePrefix(const hit::Node &node)
Get the prefix to be associated with a hit node for a message.
Definition Moose.C:883

◆ mooseDeprecated() [1/2]

template<typename... Args>
void MooseBase::mooseDeprecated ( Args &&...  args) const
inlineinherited

Emits a deprecation warning prefixed with the object name and type, and a stack trace.

Definition at line 317 of file MooseBase.h.

318 {
320 _console, false, true, true, messagePrefix(true), std::forward<Args>(args)...);
321 }
const ConsoleStream _console
An instance of helper class to write streams to the Console objects.
void mooseDeprecatedStream(S &oss, const bool expired, const bool print_title, const bool show_trace, Args &&... args)
Definition MooseError.h:252

Referenced by MooseApp::addCapability(), DataFileInterface::getDataFileName(), DataFileInterface::getDataFileNameByName(), MooseApp::getRecoverFileBase(), MooseApp::hasRecoverFileBase(), and MooseApp::setupOptions().

◆ mooseDeprecated() [2/2]

template<typename... Args>
void SolutionInvalidInterface::mooseDeprecated ( Args &&...  args) const
inlineinherited

◆ mooseDeprecatedNoTrace()

template<typename... Args>
void MooseBase::mooseDeprecatedNoTrace ( Args &&...  args) const
inlineinherited

Emits a deprecation warning prefixed with the object name and type, and no stack trace.

Definition at line 327 of file MooseBase.h.

328 {
330 _console, false, true, false, messagePrefix(true), std::forward<Args>(args)...);
331 }

◆ mooseDocumentedError()

template<typename... Args>
void MooseBase::mooseDocumentedError ( const std::string &  repo_name,
const unsigned int  issue_num,
Args &&...  args 
) const
inlineinherited

Definition at line 277 of file MooseBase.h.

280 {
282 repo_name, issue_num, argumentsToString(std::forward<Args>(args)...)),
283 /* with_prefix = */ true);
284 }
std::string formatMooseDocumentedError(const std::string &repo_name, const unsigned int issue_num, const std::string &msg)
Formats a documented error.
Definition MooseError.C:142

Referenced by ManifoldSubdomainGenerator::ManifoldSubdomainGenerator().

◆ mooseError()

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

Emits an error prefixed with object name and type and optionally a file path to the top-level block parameter if available.

Definition at line 271 of file MooseBase.h.

272 {
273 callMooseError(argumentsToString(std::forward<Args>(args)...), /* with_prefix = */ true);
274 }

Referenced by CopyMeshPartitioner::_do_partition(), GridPartitioner::_do_partition(), HierarchicalGridPartitioner::_do_partition(), PetscExternalPartitioner::_do_partition(), AdaptivityAction::act(), AddBoundsVectorsAction::act(), AddFVICAction::act(), AddICAction::act(), AddMeshGeneratorAction::act(), AddPeriodicBCAction::act(), AddTimeStepperAction::act(), AddVectorPostprocessorAction::act(), ChainControlSetupAction::act(), CheckFVBCAction::act(), CheckIntegrityAction::act(), CombineComponentsMeshes::act(), CommonOutputAction::act(), CreateDisplacedProblemAction::act(), CreateExecutionerAction::act(), CreateProblemAction::act(), CreateProblemDefaultAction::act(), CSGOnlyAction::act(), DeprecatedBlockAction::act(), InitProblemAction::act(), MaterialDerivativeTestAction::act(), MaterialOutputAction::act(), SetAdaptivityOptionsAction::act(), SetupDebugAction::act(), SetupMeshAction::act(), SetupMeshCompleteAction::act(), SetupPredictorAction::act(), SetupTimeStepperAction::act(), SplitMeshAction::act(), Action::Action(), AddActionComponentAction::AddActionComponentAction(), PhysicsComponentInterface::addBoundaryConditionsFromComponents(), MooseApp::addCapabilityInternal(), DistributedRectilinearMeshGenerator::addElement(), MooseApp::addExecutor(), SubProblem::addFunctor(), PhysicsComponentInterface::addInitialConditionsFromComponents(), ComponentJunction::addMeshGenerators(), MeshGenerator::addMeshSubgenerator(), SubProblem::addPiecewiseByBlockLambdaFunctor(), DistributedRectilinearMeshGenerator::addPoint(), DiracKernelBase::addPointWithValidId(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), MooseMesh::addQuadratureNode(), AddActionComponentAction::addRelationshipManagers(), WebServerControl::addServerAction(), AddVariableAction::addVariable(), SubProblem::addVectorTag(), MooseVariableScalar::adUDot(), Output::advancedExecuteOn(), MooseVariableBase::allDofIndices(), MooseApp::appNameToLibName(), MultiApp::appPostprocessorValue(), MultiApp::appProblem(), MultiApp::appProblemBase(), MultiApp::appUserObjectBase(), MooseApp::attachRelationshipManagers(), MooseApp::attachRelationshipManagers(), FEProblemBase::automaticScaling(), Function::average(), BatchMeshGeneratorAction::BatchMeshGeneratorAction(), MooseMesh::buildCoarseningMap(), MultiApp::buildComm(), DistributedRectilinearMeshGenerator::buildCube(), PiecewiseTabularInterface::buildFromFile(), PiecewiseTabularInterface::buildFromJSON(), PiecewiseTabularInterface::buildFromXY(), MooseMesh::buildLowerDMesh(), GeneratedMesh::buildMesh(), MeshGeneratorMesh::buildMesh(), SpiralAnnularMesh::buildMesh(), TiledMesh::buildMesh(), MooseMesh::buildRefinementMap(), MaterialBase::buildRequiredMaterials(), MooseMesh::buildTypedMesh(), MooseMesh::cacheFaceInfoVariableOwnership(), CartesianGridDivision::CartesianGridDivision(), CartesianMeshGenerator::CartesianMeshGenerator(), EigenExecutionerBase::chebyshev(), SubProblem::checkBlockMatProps(), PhysicsBase::checkBlockRestrictionIdentical(), ComponentBoundaryConditionInterface::checkBoundaryConditionsAllRequested(), SubProblem::checkBoundaryMatProps(), PhysicsBase::checkComponentType(), IterationCountConvergence::checkConvergence(), MooseMesh::checkCoordinateSystems(), DiffusionLHDGAssemblyHelper::checkCoupling(), DefaultConvergenceBase::checkDuplicateSetSharedExecutionerParams(), MooseMesh::checkDuplicateSubdomainNames(), MaterialBase::checkExecutionStage(), MeshGenerator::checkGetMesh(), ReporterTransferInterface::checkHasReporterValue(), EigenExecutionerBase::checkIntegrity(), Eigenvalue::checkIntegrity(), ExplicitTimeIntegrator::checkLinearConvergence(), MooseApp::checkMetaDataIntegrity(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), MeshDiagnosticsGenerator::checkNonMatchingEdges(), PostprocessorInterface::checkParam(), Moose::PeriodicBCHelper::checkPeriodicParams(), Sampler::checkReinitStatus(), MultiAppTransfer::checkSiblingsTransferSupported(), MaterialBase::checkStatefulSanity(), AddDefaultConvergenceAction::checkUnusedMultiAppFixedPointConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedNonlinearConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedSteadyStateConvergenceParameters(), Moose::PetscSupport::checkUserProvidedPetscOption(), MultiAppTransfer::checkVariable(), MeshDiagnosticsGenerator::checkWatertightNodesets(), MeshDiagnosticsGenerator::checkWatertightSidesets(), MooseMesh::clone(), LibmeshPartitioner::clone(), CombinerGenerator::CombinerGenerator(), MooseVariableFieldBase::componentName(), VariableCondensationPreconditioner::computeDInverseDiag(), CompositionDT::computeDT(), MooseVariableFieldBase::computeFaceValues(), TimeStepper::computeFailedDT(), IterationAdaptiveDT::computeFailedDT(), MooseMesh::computeFiniteVolumeCoords(), Moose::Kokkos::ResidualObject::computeOffDiagJacobian(), MaterialBase::computeProperties(), FVFluxBC::computeResidual(), ResidualObject::computeResidualAndJacobian(), TimeStepper::computeStep(), AStableDirk4::computeTimeDerivatives(), BDF2::computeTimeDerivatives(), CrankNicolson::computeTimeDerivatives(), ExplicitEuler::computeTimeDerivatives(), ExplicitRK2::computeTimeDerivatives(), ExplicitTVDRK2::computeTimeDerivatives(), ImplicitEuler::computeTimeDerivatives(), ImplicitMidpoint::computeTimeDerivatives(), LStableDirk2::computeTimeDerivatives(), LStableDirk3::computeTimeDerivatives(), LStableDirk4::computeTimeDerivatives(), NewmarkBeta::computeTimeDerivatives(), ConcentricCircleMesh::ConcentricCircleMesh(), ConditionalEnableControl::ConditionalEnableControl(), TimeStepper::constrainStep(), LibtorchNeuralNetControl::controlNeuralNet(), TransientBase::convergedToSteadyState(), ParsedConvergence::convertRealToBool(), MooseApp::copyInputs(), CopyMeshPartitioner::CopyMeshPartitioner(), MultiApp::createApp(), MooseApp::createExecutors(), AddVariableAction::createInitialConditionAction(), MooseApp::createRMFromTemplateAndInit(), Function::curl(), ReporterTransferInterface::declareClone(), Moose::Kokkos::MaterialBase::declareKokkosPropertyInternal(), MeshGenerator::declareMeshProperty(), ReporterTransferInterface::declareVectorClone(), FunctorRelationshipManager::delete_remote_elements(), MooseMesh::deleteRemoteElements(), MooseApp::determineLibtorchDeviceType(), MeshDiagnosticsGenerator::diagnosticsLog(), Function::div(), FunctorBinnedValuesDivision::divisionIndex(), FunctorRelationshipManager::dofmap_reinit(), MooseApp::dynamicAllRegistration(), MooseApp::dynamicAppRegistration(), DistributedRectilinearMeshGenerator::elemId(), MooseApp::errorCheck(), MooseMesh::errorIfDistributedMesh(), MultiAppTransfer::errorIfObjectExecutesOnTransferInSourceApp(), FixedPointSolve::examineFixedPointConvergence(), Eigenvalue::execute(), TransientBase::execute(), WebServerControl::execute(), MooseApp::executeExecutioner(), MultiApp::fillPositions(), MooseApp::finalizeRestore(), Transfer::find_sys(), DiracKernelInfo::findPoint(), FixedPointSolve::findTransformedSystem(), FixedPointSolve::FixedPointSolve(), FunctionDT::FunctionDT(), FunctionScalarAux::FunctionScalarAux(), FunctionScalarIC::FunctionScalarIC(), LinearFVBoundaryCondition::functorFaceArg(), FVInitialConditionTempl< T >::FVInitialConditionTempl(), FVScalarLagrangeMultiplierInterface::FVScalarLagrangeMultiplierInterface(), AdvancedExtruderGenerator::generate(), BoundingBoxNodeSetGenerator::generate(), CoarsenBlockGenerator::generate(), CombinerGenerator::generate(), CutMeshByLevelSetGeneratorBase::generate(), DistributedRectilinearMeshGenerator::generate(), ElementOrderConversionGenerator::generate(), ExtraNodesetGenerator::generate(), FileMeshGenerator::generate(), FlipSidesetGenerator::generate(), GeneratedMeshGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), MeshCollectionGenerator::generate(), MeshDiagnosticsGenerator::generate(), MeshExtruderGenerator::generate(), MeshRepairGenerator::generate(), MoveNodeGenerator::generate(), PlaneIDMeshGenerator::generate(), PolyLineMeshFollowingNodeSetGenerator::generate(), ProjectSideSetOntoLevelSetGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), RenumberBySubdomainGenerator::generate(), SmoothMeshGenerator::generate(), SpiralAnnularMeshGenerator::generate(), StackGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), SubdomainPerElementGenerator::generate(), TiledMeshGenerator::generate(), XYMeshLineCutter::generate(), XYZDelaunayGenerator::generate(), PatternedMeshGenerator::generate(), MeshGenerator::generateCSG(), MeshGenerator::generateData(), GeneratedMesh::GeneratedMesh(), GeneratedMeshGenerator::GeneratedMeshGenerator(), MeshGenerator::generateInternal(), MeshGenerator::generateInternalCSG(), CircularBoundaryCorrectionGenerator::generateRadialCorrectionFactor(), MooseMesh::getAxisymmetricRadialCoord(), MooseMesh::getBlockConnectedBlocks(), MooseMesh::getBoundaryID(), MultiApp::getBoundingBox(), ChainControl::getChainControlDataByName(), WebServerControl::getClientInfo(), MooseMesh::getCoarseningMap(), MultiApp::getCommandLineArgs(), MooseVariableBase::getContinuity(), Control::getControllableParameterByName(), MooseMesh::getCoordSystem(), PhysicsBase::getCoupledPhysics(), PhysicsBase::getCoupledPhysics(), DataFileInterface::getDataFilePath(), TransfiniteMeshGenerator::getDiscreteEdge(), MooseVariableBase::getDofIndices(), VariableCondensationPreconditioner::getDofToCondense(), TransfiniteMeshGenerator::getEdge(), MooseMesh::getElementIDIndex(), Material::getElementIDNeighbor(), Material::getElementIDNeighborByName(), MooseMesh::getElemIDMapping(), MooseMesh::getElemIDsOnBlocks(), WebServerControl::Response::getError(), MultiApp::getExecutioner(), MooseApp::getExecutor(), MultiAppTransfer::getFromMultiApp(), MultiAppTransfer::getFromMultiAppInfo(), SubProblem::getFunctor(), MooseMesh::getGeneralAxisymmetricCoordAxis(), MaterialPropertyInterface::getGenericMaterialPropertyByName(), DistributedRectilinearMeshGenerator::getGhostNeighbors(), DistributedRectilinearMeshGenerator::getIndices(), MaterialPropertyInterface::getKokkosBlockMaterialProperty(), FunctionInterface::getKokkosFunctionByName(), MaterialPropertyInterface::getKokkosMaterialPropertyByName(), Material::getMaterialByName(), SubProblem::getMatrixTagID(), AnnularMesh::getMaxInDimension(), GeneratedMesh::getMaxInDimension(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), AnnularMesh::getMinInDimension(), GeneratedMesh::getMinInDimension(), MultiAppTransfer::getMultiApp(), DistributedRectilinearMeshGenerator::getNeighbors(), MooseMesh::getNodeBlockIds(), MooseMesh::getNodeList(), MooseMesh::getPairedBoundaryMapping(), MaterialOutputAction::getParams(), PlaneIDMeshGenerator::getPlaneID(), PostprocessorInterface::getPostprocessorValueByNameInternal(), ComponentMaterialPropertyInterface::getPropertyValue(), MooseMesh::getRefinementMap(), MooseBase::getRenamedParam(), ReporterInterface::getReporterContextBaseByName(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), MooseApp::getRestartableDataMap(), MooseApp::getRestartableDataMapName(), MooseApp::getRestartableMetaData(), MooseApp::getRMClone(), MooseObject::getSharedPtr(), MooseObject::getSharedPtr(), PhysicsBase::getSolverSystem(), MooseMesh::getSubdomainBoundaryIds(), TransientBase::getTimeIntegratorNames(), MultiAppTransfer::getToMultiApp(), MultiAppTransfer::getToMultiAppInfo(), MooseMesh::getUniqueCoordSystem(), UserObjectInterface::getUserObjectBaseByName(), UserObjectInterface::getUserObjectName(), AddPeriodicBCAction::getVariables(), VectorPostprocessorInterface::getVectorPostprocessorName(), SubProblem::getVectorTag(), SubProblem::getVectorTagID(), MultiApp::globalAppToLocal(), Function::gradient(), MooseVariableBase::hasDoFsOnNodes(), PostprocessorInterface::hasPostprocessor(), PostprocessorInterface::hasPostprocessorByName(), ReporterInterface::hasReporterValue(), ReporterInterface::hasReporterValueByName(), VectorPostprocessorInterface::hasVectorPostprocessor(), VectorPostprocessorInterface::hasVectorPostprocessor(), VectorPostprocessorInterface::hasVectorPostprocessorByName(), VectorPostprocessorInterface::hasVectorPostprocessorByName(), TransientBase::incrementStepOrReject(), NEML2Action::inferMOOSEIOType(), AddVariableAction::init(), MooseMesh::init(), Sampler::init(), EigenExecutionerBase::init(), TransientBase::init(), CrankNicolson::init(), ExplicitTimeIntegrator::init(), FixedPointIterationAdaptiveDT::init(), IterationAdaptiveDT::init(), MultiApp::init(), NestedDivision::initialize(), ParsedConvergence::initializeConstantSymbol(), PhysicsBase::initializePhysics(), SubProblem::initialSetup(), AuxKernelBase::initialSetup(), SolutionScalarAux::initialSetup(), FullSolveMultiApp::initialSetup(), ExplicitTimeIntegrator::initialSetup(), Function::integral(), InternalSideIndicatorBase::InternalSideIndicatorBase(), EigenExecutionerBase::inversePowerIteration(), Sampler::isAdaptiveSamplingCompleted(), MooseMesh::isBoundaryFullyExternalToSubdomains(), MooseVariableBase::isNodal(), IterationAdaptiveDT::IterationAdaptiveDT(), IterationCountConvergence::IterationCountConvergence(), LibmeshPartitioner::LibmeshPartitioner(), MooseApp::libNameToAppName(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), LineSearch::lineSearch(), MooseApp::loadLibraryAndDependencies(), ReporterPointMarker::markerSetup(), SubProblem::markFamilyPRefinement(), Material::Material(), Distribution::median(), FunctorRelationshipManager::mesh_reinit(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MeshExtruderGenerator::MeshExtruderGenerator(), MeshRepairGenerator::MeshRepairGenerator(), SetupMeshAction::modifyParamsForUseSplit(), MeshMetaDataInterface::mooseErrorInternal(), MooseMesh::MooseMesh(), MooseObject::MooseObject(), UserObjectInterface::mooseObjectError(), MooseVariableBase::MooseVariableBase(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppTransfer::MultiAppTransfer(), NewmarkBeta::NewmarkBeta(), DistributedRectilinearMeshGenerator::nodeId(), DistributedRectilinearMeshGenerator::numNeighbors(), Output::onInterval(), FunctorRelationshipManager::operator()(), RelationshipManager::operator==(), ActionComponent::outerSurfaceArea(), ActionComponent::outerSurfaceBoundaries(), MortarNodalGeometryOutput::output(), Output::Output(), MooseApp::outputMachineReadableData(), DistributedRectilinearMeshGenerator::paritionSquarely(), ParsedConvergence::ParsedConvergence(), ParsedCurveGenerator::ParsedCurveGenerator(), ExplicitTimeIntegrator::performExplicitSolve(), PetscExternalPartitioner::PetscExternalPartitioner(), PhysicsBasedPreconditioner::PhysicsBasedPreconditioner(), PIDTransientControl::PIDTransientControl(), PiecewiseTabularInterface::PiecewiseTabularInterface(), CutMeshByLevelSetGeneratorBase::pointPairLevelSetInterception(), ProjectSideSetOntoLevelSetGenerator::pointPairLevelSetInterception(), ReporterInterface::possiblyCheckHasReporter(), VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessorByName(), AStableDirk4::postResidual(), ExplicitRK2::postResidual(), ExplicitTVDRK2::postResidual(), ImplicitMidpoint::postResidual(), LStableDirk2::postResidual(), LStableDirk3::postResidual(), LStableDirk4::postResidual(), VariableCondensationPreconditioner::preallocateCondensedJacobian(), Predictor::Predictor(), TransientBase::preExecute(), MooseMesh::prepare(), MooseMesh::prepared(), FixedPointSolve::printFixedPointConvergenceReason(), MultiApp::readCommandLineArguments(), CoarsenBlockGenerator::recursiveCoarsen(), MooseApp::recursivelyCreateExecutors(), FunctorRelationshipManager::redistribute(), MooseApp::registerRestartableData(), MooseApp::registerRestartableNameWithFilter(), Sampler::reinit(), MooseApp::removeRelationshipManager(), PhysicsBase::reportPotentiallyMissedParameters(), MooseApp::restore(), RinglebMesh::RinglebMesh(), RinglebMeshGenerator::RinglebMeshGenerator(), MooseApp::run(), MooseApp::runInputs(), ScalarComponentIC::ScalarComponentIC(), DistributedRectilinearMeshGenerator::scaleNodalPositions(), FunctorRelationshipManager::set_mesh(), MooseVariableBase::setActiveTags(), DistributedRectilinearMeshGenerator::setBoundaryNames(), MooseMesh::setCoordSystem(), MooseMesh::setGeneralAxisymmetricCoordAxes(), MeshGenerator::setMeshProperty(), MooseApp::setMFEMDevice(), Sampler::setNumberOfCols(), Sampler::setNumberOfRandomSeeds(), Sampler::setNumberOfRows(), Moose::MFEM::LinearSolverBase::SetPreconditioner(), Split::setup(), TransientMultiApp::setupApp(), Moose::PeriodicBCHelper::setupAutoPeriodicBoundaries(), Moose::PeriodicBCHelper::setupManualPeriodicBoundaries(), SetupMeshAction::setupMesh(), MooseApp::setupOptions(), TimeSequenceStepperBase::setupSequence(), TransientBase::setupTimeIntegrator(), PhysicsBase::shouldCreateIC(), PhysicsBase::shouldCreateTimeDerivative(), PhysicsBase::shouldCreateVariable(), SingleMatrixPreconditioner::SingleMatrixPreconditioner(), MooseVariableBase::sizeMatrixTagData(), SmoothMeshGenerator::SmoothMeshGenerator(), SolutionTimeAdaptiveDT::SolutionTimeAdaptiveDT(), Moose::MFEM::LinearSolverBase::Solve(), TimeIntegrator::solve(), ExplicitRK2::solve(), ExplicitTVDRK2::solve(), FullSolveMultiApp::solveStep(), UserObject::spatialPoints(), UserObject::spatialValue(), SpiralAnnularMesh::SpiralAnnularMesh(), SpiralAnnularMeshGenerator::SpiralAnnularMeshGenerator(), MeshRepairGenerator::splitNonConvexPolygons(), WebServerControl::startServer(), StitchedMesh::StitchedMesh(), MaterialBase::subdomainSetup(), CutMeshByLevelSetGeneratorBase::tet4ElemCutter(), Action::timedAct(), Function::timeDerivative(), Function::timeIntegral(), ParsedCurveGenerator::tSectionSpaceDefiner(), MooseVariableScalar::uDot(), MooseVariableScalar::uDotDot(), MooseVariableScalar::uDotDotOld(), MooseVariableScalar::uDotOld(), MooseBase::uniqueName(), AuxScalarKernel::uOld(), ScalarKernelBase::uOld(), Function::value(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), PhysicsBase::variableExists(), MultiAppTransfer::variableIntegrityCheck(), AddVariableAction::variableType(), SubProblem::vectorTagName(), SubProblem::vectorTagType(), Function::vectorValue(), SubProblem::verifyVectorTags(), ActionComponent::volume(), WebServerControl::WebServerControl(), and MooseApp::writeRestartableMetaData().

◆ mooseErrorNonPrefixed()

template<typename... Args>
void MooseBase::mooseErrorNonPrefixed ( Args &&...  args) const
inlineinherited

Emits an error without the prefixing included in mooseError().

Definition at line 290 of file MooseBase.h.

291 {
292 callMooseError(argumentsToString(std::forward<Args>(args)...), /* with_prefix = */ false);
293 }

◆ mooseInfo()

template<typename... Args>
void MooseBase::mooseInfo ( Args &&...  args) const
inlineinherited

◆ mooseWarning() [1/2]

template<typename... Args>
void MooseBase::mooseWarning ( Args &&...  args) const
inlineinherited

Emits a warning prefixed with object name and type.

Definition at line 299 of file MooseBase.h.

300 {
301 moose::internal::mooseWarningStream(_console, messagePrefix(true), std::forward<Args>(args)...);
302 }
void mooseWarningStream(S &oss, Args &&... args)
Definition MooseError.h:197

Referenced by DiracKernelInfo::findPoint(), DataFileInterface::getDataFilePath(), MooseApp::loadLibraryAndDependencies(), and MooseBase::paramWarning().

◆ mooseWarning() [2/2]

template<typename... Args>
void SolutionInvalidInterface::mooseWarning ( Args &&...  args) const
inlineinherited

Definition at line 73 of file SolutionInvalidInterface.h.

74 {
75 _si_moose_base.MooseBase::mooseWarning(std::forward<Args>(args)...);
76 flagSolutionWarningMultipleRegistration(_si_moose_base.name() + ": warning");
77 }

Referenced by CopyMeshPartitioner::_do_partition(), AddFunctionAction::act(), AddKernelAction::act(), CommonOutputAction::act(), MaterialOutputAction::act(), MeshOnlyAction::act(), MooseMesh::addPeriodicVariable(), BoundaryMarker::BoundaryMarker(), DistributedRectilinearMeshGenerator::buildCube(), CartesianMeshGenerator::CartesianMeshGenerator(), CheckOutputAction::checkConsoleOutput(), MultiAppTransfer::checkMultiAppExecuteOn(), MeshDiagnosticsGenerator::checkNonMatchingEdges(), MeshDiagnosticsGenerator::checkPolygons(), ActionComponent::checkRequiredTasks(), PhysicsBase::checkRequiredTasks(), MultiApp::createApp(), MeshDiagnosticsGenerator::diagnosticsLog(), CartesianGridDivision::divisionIndex(), CylindricalGridDivision::divisionIndex(), SphericalGridDivision::divisionIndex(), Postprocessor::evaluateDotWarning(), FiniteDifferencePreconditioner::FiniteDifferencePreconditioner(), FixedPointSolve::FixedPointSolve(), BSplineCurveGenerator::generate(), RenumberBySubdomainGenerator::generate(), SubdomainPerElementGenerator::generate(), SurfaceMeshGeneratorBase::get2DElemNormal(), MultiAppTransfer::getAppInfo(), FunctorBinnedValuesDivision::getBinIndex(), IndicatorMarker::IndicatorMarker(), CartesianGridDivision::initialize(), CylindricalGridDivision::initialize(), SphericalGridDivision::initialize(), MFEMRefinementMarker::initialSetup(), MaterialBase::initStatefulProperties(), IterationAdaptiveDT::limitDTToPostprocessorValue(), NewmarkBeta::NewmarkBeta(), Output::Output(), MaterialOutputAction::outputHelper(), Executioner::problem(), TestSourceStepper::rejectStep(), PhysicsBase::reportPotentiallyMissedParameters(), MaterialBase::resetQpProperties(), MooseMesh::setCoordSystem(), TransientMultiApp::solveStep(), MeshRepairGenerator::splitNonConvexPolygons(), and VariableCondensationPreconditioner::VariableCondensationPreconditioner().

◆ mooseWarningNonPrefixed() [1/2]

template<typename... Args>
void MooseBase::mooseWarningNonPrefixed ( Args &&...  args) const
inlineinherited

Emits a warning without the prefixing included in mooseWarning().

Definition at line 308 of file MooseBase.h.

309 {
310 moose::internal::mooseWarningStream(_console, std::forward<Args>(args)...);
311 }

◆ mooseWarningNonPrefixed() [2/2]

template<typename... Args>
void SolutionInvalidInterface::mooseWarningNonPrefixed ( Args &&...  args) const
inlineinherited

Definition at line 80 of file SolutionInvalidInterface.h.

81 {
82 _si_moose_base.MooseBase::mooseWarningNonPrefixed(std::forward<Args>(args)...);
83 flagSolutionWarningMultipleRegistration(_si_moose_base.name() + ": warning");
84 }

◆ name()

const std::string & MooseBase::name ( ) const
inlineinherited

Get the name of the class.

Returns
The name of the class

Definition at line 103 of file MooseBase.h.

104 {
105 mooseAssert(_name.size(), "Empty name");
106 return _name;
107 }
const std::string & _name
The name of this class.
Definition MooseBase.h:381

Referenced by AdaptivityAction::act(), AddActionComponentAction::act(), AddElementalFieldAction::act(), AddPeriodicBCAction::act(), AddTimeStepperAction::act(), CommonOutputAction::act(), CopyNodalVarsAction::act(), CSGOnlyAction::act(), DeprecatedBlockAction::act(), DisplayGhostingAction::act(), MaterialOutputAction::act(), SetupResidualDebugAction::act(), SetupTimeIntegratorAction::act(), FEProblemBase::addAnyRedistributers(), Executioner::addAttributeReporter(), FEProblemBase::addAuxKernel(), MFEMProblem::addAuxKernel(), FEProblemBase::addAuxScalarKernel(), DisplacedProblem::addAuxVariable(), FEProblemBase::addBoundaryCondition(), MFEMProblem::addBoundaryCondition(), PhysicsComponentInterface::addComponent(), FEProblemBase::addConstraint(), FEProblemBase::addConvergence(), FEProblemBase::addDamper(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), MooseApp::addExecutor(), MooseApp::addExecutorParams(), MFEMProblem::addFESpace(), MFEMProblem::addFESpaceHierarchy(), FEProblemBase::addFunction(), MFEMProblem::addFunction(), SubProblem::addFunctor(), FEProblemBase::addFunctorMaterial(), MFEMProblem::addFunctorMaterial(), FunctorMaterial::addFunctorProperty(), FunctorMaterial::addFunctorPropertyByBlocks(), FEProblemBase::addFVBC(), FEProblemBase::addFVInitialCondition(), FEProblemBase::addFVInterfaceKernel(), FEProblemBase::addFVInterpolationMethod(), FEProblemBase::addFVKernel(), ADDGKernel::ADDGKernel(), FEProblemBase::addHDGKernel(), MFEMProblem::addImagComponentToBC(), MFEMProblem::addImagComponentToKernel(), FEProblemBase::addIndicator(), MFEMProblem::addIndicator(), FEProblemBase::addInitialCondition(), MFEMProblem::addInitialCondition(), FEProblemBase::addInterfaceKernel(), FEProblemBase::addInterfaceMaterial(), ElementAndTraceScalarHDGAssemblyHelper::additionalROVariables(), BoundaryIntegralValueConstraint::additionalROVariables(), DiffusionLHDGKernel::additionalROVariables(), ADKernelScalarBase::additionalROVariables(), FEProblemBase::addKernel(), MFEMProblem::addKernel(), FEProblemBase::addLinearFVBC(), FEProblemBase::addLinearFVKernel(), FEProblemBase::addMarker(), MFEMProblem::addMarker(), FEProblemBase::addMaterial(), FEProblemBase::addMaterialHelper(), ComponentMaterialPropertyInterface::addMaterials(), FEProblemBase::addMeshDivision(), MooseApp::addMeshGenerator(), ComponentJunction::addMeshGenerators(), ComponentMeshTransformHelper::addMeshGenerators(), CylinderComponent::addMeshGenerators(), MeshGenerator::addMeshSubgenerator(), MeshGenerator::addMeshSubgenerator(), MFEMProblem::addMFEMSolver(), FEProblemBase::addMultiApp(), FEProblemBase::addNodalKernel(), FEProblemBase::addObject(), InitialConditionWarehouse::addObject(), ComponentPhysicsInterface::addPhysics(), SubProblem::addPiecewiseByBlockLambdaFunctor(), FEProblemBase::addPostprocessor(), MFEMProblem::addPostprocessor(), UserObjectBase::addPostprocessorDependencyHelper(), AuxKernelBase::addPostprocessorDependencyHelper(), InitialConditionBase::addPostprocessorDependencyHelper(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), MFEMProblem::addQuadratureFunction(), MFEMProblem::addRealComponentToBC(), MFEMProblem::addRealComponentToKernel(), AddActionComponentAction::addRelationshipManagers(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addScalarKernel(), WebServerControl::addServerActionsInternal(), FEProblemBase::addTimeIntegrator(), FEProblemBase::addTransfer(), MFEMProblem::addTransfer(), PhysicsBase::addUserObject(), FEProblemBase::addUserObject(), UserObjectBase::addUserObjectDependencyHelper(), AuxKernelBase::addUserObjectDependencyHelper(), InitialConditionBase::addUserObjectDependencyHelper(), DisplacedProblem::addVariable(), FEProblemBase::addVectorPostprocessor(), MFEMProblem::addVectorPostprocessor(), UserObjectBase::addVectorPostprocessorDependencyHelper(), AuxKernelBase::addVectorPostprocessorDependencyHelper(), MooseLinearVariableFV< OutputType >::adError(), Output::advancedExecuteOn(), AdvancedExtruderGenerator::AdvancedExtruderGenerator(), NEML2ModelExecutor::advanceState(), MooseVariableBase::allDofIndices(), MooseApp::appBinaryName(), MooseApp::appendMeshGenerator(), MultiApp::appPostprocessorValue(), MultiApp::appProblem(), MultiApp::appProblemBase(), MultiApp::appUserObjectBase(), ArrayDGKernel::ArrayDGKernel(), ArrayParsedAux::ArrayParsedAux(), PhysicsBase::assignBlocks(), AStableDirk4::AStableDirk4(), Function::average(), MultiApp::backup(), CoarsenedPiecewiseLinear::buildCoarsenedGrid(), PiecewiseTabularInterface::buildFromFile(), PiecewiseTabularInterface::buildFromXY(), MFEMGeometricMultigridSolver::BuildMultigrid(), MooseMesh::buildNodeListFromSideList(), MultiAppVariableValueSamplePostprocessorTransfer::cacheElemToPostprocessorData(), MooseBase::callMooseError(), ChangeOverFixedPointPostprocessor::ChangeOverFixedPointPostprocessor(), ChangeOverTimePostprocessor::ChangeOverTimePostprocessor(), PhysicsBase::checkBlockRestrictionIdentical(), PhysicsBase::checkComponentType(), DefaultNonlinearConvergence::checkConvergence(), ParsedConvergence::checkConvergence(), FEProblemBase::checkDependMaterialsHelper(), TaggingInterface::checkForNans(), SamplerBase::checkForStandardFieldVariableType(), ReporterTransferInterface::checkHasReporterValue(), FEProblemBase::checkICRestartError(), NonlinearSystemBase::checkKernelCoverage(), Moose::Kokkos::Material::checkMaterialProperty(), Material::checkMaterialProperty(), MooseApp::checkMetaDataIntegrity(), Damper::checkMinDamping(), SideUserObject::checkNoInterfaceMaterialPropertyDependencies(), MultiAppTransfer::checkParentAppUserObjectExecuteOn(), Checkpoint::checkpointInfo(), FEProblemBase::checkUserObjectNameCollision(), BlockRestrictable::checkVariable(), DomainUserObject::checkVariable(), Coupleable::checkWritableVar(), MooseVariableFieldBase::componentName(), CompositeFunction::CompositeFunction(), MaterialBase::computeProperties(), FEProblemBase::computeUserObjectByName(), VectorPostprocessorVisualizationAux::computeValue(), MooseBase::connectControllableParams(), ConstantPostprocessor::ConstantPostprocessor(), Coupleable::coupledName(), CommonOutputAction::create(), MultiApp::createApp(), MooseApp::createExecutors(), MeshGeneratorSystem::createMeshGeneratorOrder(), MooseApp::createRecoverablePerfGraph(), CutMeshByPlaneGenerator::CutMeshByPlaneGenerator(), DebugResidualAux::DebugResidualAux(), MaterialBase::declareADProperty(), MFEMComplexVariable::declareCoefficients(), MFEMVariable::declareCoefficients(), MeshInfo::declareHelper(), Moose::Kokkos::MaterialBase::declareKokkosOnDemandProperty(), Moose::Kokkos::MaterialBase::declareKokkosProperty(), MeshGenerator::declareMeshesForSubByName(), MeshGenerator::declareNullMeshName(), MaterialBase::declareProperty(), DOFMapOutput::demangle(), DerivativeSumMaterialTempl< is_ad >::DerivativeSumMaterialTempl(), MooseMesh::detectPairedSidesets(), DGKernel::DGKernel(), DGKernelBase::DGKernelBase(), DomainUserObject::DomainUserObject(), DumpObjectsProblem::dumpObjectHelper(), ElementDamper::ElementDamper(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementMaterialSampler::ElementMaterialSampler(), ElementValueSampler::ElementValueSampler(), EigenKernel::enabled(), MooseMesh::errorIfDistributedMesh(), SolutionUserObjectBase::evalMeshFunction(), SolutionUserObjectBase::evalMeshFunctionGradient(), SolutionUserObjectBase::evalMultiValuedMeshFunction(), SolutionUserObjectBase::evalMultiValuedMeshFunctionGradient(), GreaterThanLessThanPostprocessor::execute(), PointValue::execute(), RestartableDataReporter::execute(), MultiAppGeneralFieldTransfer::execute(), MultiAppNearestNodeTransfer::execute(), MultiAppProjectionTransfer::execute(), MultiAppUserObjectTransfer::execute(), SideValueSampler::execute(), WebServerControl::execute(), ActionWarehouse::executeActionsWithAction(), Exodus::Exodus(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), FEProblemBase::FEProblemBase(), NEML2ModelExecutor::fillInputs(), MultiApp::fillPositions(), MultiAppGeometricInterpolationTransfer::fillSourceInterpolationPoints(), PointSamplerBase::finalize(), ChainControl::fullControlDataName(), FunctionArrayAux::FunctionArrayAux(), FunctionDT::FunctionDT(), FVFunctionIC::functionName(), FunctionIC::functionName(), FunctorPositions::FunctorPositions(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), FVInitialConditionTempl< T >::FVInitialConditionTempl(), FVOneVarDiffusionInterface::FVOneVarDiffusionInterface(), GapValueAux::GapValueAux(), BoundaryDeletionGenerator::generate(), BreakMeshByBlockGenerator::generate(), GeneratedMeshGenerator::generate(), ManifoldSubdomainGenerator::generate(), ParsedExtraElementIDGenerator::generate(), ParsedSubdomainGeneratorBase::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), RenumberBySubdomainGenerator::generate(), SideSetsFromNodeSetsGenerator::generate(), StitchBoundaryMeshGenerator::generate(), StitchMeshGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), SubdomainsFromPartitionerGenerator::generate(), UniqueExtraIDMeshGenerator::generate(), MeshGenerator::generateInternal(), MeshGenerator::generateInternalCSG(), InterfaceMaterial::getADMaterialProperty(), Material::getADMaterialProperty(), MultiAppTransfer::getAppInfo(), MooseMesh::getBoundaryString(), MultiApp::getBoundingBox(), MooseBase::getCheckedPointerParam(), MooseApp::getCheckpointDirectories(), MFEMProblem::getComplexGridFunction(), Control::getControllableParameterByName(), Control::getControllableValue(), Control::getControllableValueByName(), FEProblemBase::getConvergence(), MeshGenerator::getCSGBase(), MeshGenerator::getCSGBasesByName(), UserObjectBase::getDependObjects(), FEProblemBase::getDistribution(), DistributionInterface::getDistribution(), DistributionInterface::getDistributionByName(), ElementUOProvider::getElementalValueLong(), ElementUOProvider::getElementalValueReal(), MultiApp::getExecutioner(), FEProblemBase::getExecutor(), MooseApp::getExecutor(), OutputWarehouse::getFileNumbers(), FEProblemBase::getFunction(), SubProblem::getFunctor(), FEProblemBase::getFVAdvectedInterpolationMethod(), FEProblemBase::getFVFaceInterpolationMethod(), FEProblemBase::getFVInterpolationMethod(), AuxKernelTempl< ComputeValueType >::getGenericMaterialProperty(), NodalPatchRecovery::getGenericMaterialProperty(), InterfaceMaterial::getGenericMaterialProperty(), Material::getGenericMaterialProperty(), InterfaceMaterial::getGenericNeighborMaterialProperty(), InterfaceMaterial::getGenericNeighborMaterialPropertyByName(), Material::getGenericOptionalMaterialProperty(), MaterialBase::getGenericZeroMaterialProperty(), MFEMProblem::getGridFunction(), FEProblemBase::getKokkosFunction(), FEProblemBase::getKokkosUserObject(), SolutionUserObjectBase::getLocalVarIndex(), Marker::getMarkerValue(), Material::getMaterial(), FEProblemBase::getMaterial(), Material::getMaterialByName(), AuxKernelTempl< ComputeValueType >::getMaterialProperty(), NodalPatchRecovery::getMaterialProperty(), InterfaceMaterial::getMaterialProperty(), Material::getMaterialProperty(), SubProblem::getMaterialPropertyBlockNames(), SubProblem::getMaterialPropertyBoundaryNames(), AuxKernelTempl< ComputeValueType >::getMaterialPropertyOld(), NodalPatchRecovery::getMaterialPropertyOld(), InterfaceMaterial::getMaterialPropertyOld(), Material::getMaterialPropertyOld(), AuxKernelTempl< ComputeValueType >::getMaterialPropertyOlder(), NodalPatchRecovery::getMaterialPropertyOlder(), InterfaceMaterial::getMaterialPropertyOlder(), Material::getMaterialPropertyOlder(), MFEMObject::getMatrixCoefficient(), MFEMObject::getMatrixCoefficientByName(), MeshGenerator::getMesh(), FEProblemBase::getMeshDivision(), MeshGenerator::getMeshesByName(), MooseApp::getMeshGenerator(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), MFEMProblem::getMFEMObject(), ActionWarehouse::getMooseAppName(), NEML2FEInterpolation::getMOOSEVariable(), MultiAppTransfer::getMultiApp(), InterfaceMaterial::getNeighborADMaterialProperty(), InterfaceMaterial::getNeighborMaterialProperty(), InterfaceMaterial::getNeighborMaterialPropertyOld(), InterfaceMaterial::getNeighborMaterialPropertyOlder(), Material::getOptionalADMaterialProperty(), Material::getOptionalMaterialProperty(), Material::getOptionalMaterialPropertyOld(), Material::getOptionalMaterialPropertyOlder(), MooseBase::getParam(), FEProblemBase::getPositionsObject(), FEProblemBase::getPostprocessorValueByName(), ComponentMaterialPropertyInterface::getPropertyValue(), ReporterData::getReporterInfo(), MFEMExecutedObject::getRequestedItems(), MooseApp::getRestartableDataMap(), MooseApp::getRestartableDataMapName(), MooseApp::getRestartableMetaData(), FEProblemBase::getSampler(), MFEMObject::getScalarCoefficient(), MFEMObject::getScalarCoefficientByName(), TimedSubdomainModifier::getSubdomainIDAndCheck(), MFEMExecutedObject::getSuppliedItems(), TransientBase::getTimeStepperName(), ProjectedStatefulMaterialStorageAction::getTypeEnum(), FEProblemBase::getUserObject(), FEProblemBase::getUserObjectBase(), MFEMObject::getVectorCoefficient(), MFEMObject::getVectorCoefficientByName(), Terminator::handleMessage(), Control::hasControllableParameterByName(), FEProblemBase::hasConvergence(), FEProblemBase::hasDistribution(), FEProblemBase::hasFunction(), SubProblem::hasFunctor(), SubProblem::hasFunctorWithType(), FEProblemBase::hasFVInterpolationMethod(), MeshInfo::hasItem(), MooseApp::hasMeshGenerator(), MFEMProblem::hasMFEMObject(), AdvancedOutput::hasOutputHelper(), FEProblemBase::hasPostprocessor(), FEProblemBase::hasPostprocessorValueByName(), MooseApp::hasRelationshipManager(), MooseApp::hasRestartableDataMap(), MooseApp::hasRestartableMetaData(), FEProblemBase::hasUserObject(), NEML2Action::inferMOOSEIOType(), AddVariableAction::init(), AdvancedOutput::init(), IterationAdaptiveDT::init(), AdvancedOutput::initAvailableLists(), MeshInfo::initCombinedInfos(), AdvancedOutput::initExecutionTypes(), AttribName::initFrom(), NestedDivision::initialize(), TransformedPositions::initialize(), BoundaryRestrictable::initializeBoundaryRestrictable(), AuxKernelBase::initialSetup(), SolutionScalarAux::initialSetup(), Console::initialSetup(), JSONOutput::initialSetup(), BoundaryLinearFVFluxIntegral::initialSetup(), NodalVariableValue::initialSetup(), SideFVFluxBCIntegral::initialSetup(), MultiAppGeneralFieldFunctorTransfer::initialSetup(), MultiAppProjectionTransfer::initialSetup(), SolutionUserObjectBase::initialSetup(), AdvancedOutput::initOutputList(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), MaterialBase::initStatefulProperties(), Function::integral(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), MultiAppGeometricInterpolationTransfer::interpolateTargetPoints(), MeshGenerator::isChildMeshGenerator(), DerivativeMaterialInterface< T >::isNotObjectVariable(), MeshGenerator::isNullMeshName(), MooseBase::isParamSetByUser(), MooseBase::isParamValid(), MeshGenerator::isParentMeshGenerator(), LinearCombinationFunction::LinearCombinationFunction(), FEProblemBase::logAdd(), MooseLinearVariableFV< OutputType >::lowerDError(), Marker::Marker(), MaterialBase::markMatPropRequested(), Material::Material(), Distribution::median(), MemoryUsageReporter::MemoryUsageReporter(), NEML2ModelExecutor::meshChanged(), MeshGenerator::meshPropertyPrefix(), MooseBase::messagePrefix(), MFEMGeometricMultigridSolver::MFEMGeometricMultigridSolver(), MFEMScalarQuadratureFunction::MFEMScalarQuadratureFunction(), MFEMVectorQuadratureFunction::MFEMVectorQuadratureFunction(), OutputWarehouse::mooseConsole(), SolutionInvalidInterface::mooseDeprecated(), MooseVariableBase::MooseVariableBase(), MooseVariableInterface< T >::MooseVariableInterface(), SolutionInvalidInterface::mooseWarning(), SolutionInvalidInterface::mooseWarningNonPrefixed(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), NEML2PreKernel::NEML2PreKernel(), NodalDamper::NodalDamper(), MooseLinearVariableFV< OutputType >::nodalError(), NodalPatchRecoveryAuxBase::NodalPatchRecoveryAuxBase(), NodalValueSampler::NodalValueSampler(), MeshGenerator::Comparator::operator()(), DOFMapOutput::output(), ProgressOutput::output(), Output::Output(), AdvancedOutput::outputElementalVariables(), ConsoleUtils::outputExecutionInformation(), MaterialOutputAction::outputHelper(), AdvancedOutput::outputInput(), AdvancedOutput::outputNodalVariables(), AdvancedOutput::outputPostprocessors(), Exodus::outputPostprocessors(), Nemesis::outputPostprocessors(), TableOutput::outputReporter(), AdvancedOutput::outputReporters(), AdvancedOutput::outputScalarVariables(), AdvancedOutput::outputSystemInformation(), AdvancedOutput::outputVectorPostprocessors(), SolutionInvalidInterface::paramWarning(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedODEKernel::ParsedODEKernel(), ComponentPhysicsInterface::physicsExists(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseByBlockFunctorMaterialTempl< T >::PiecewiseByBlockFunctorMaterialTempl(), PiecewiseFunction::PiecewiseFunction(), MooseApp::possiblyLoadRestartableMetaData(), MFEMExecutedObject::postprocessorDependencyKey(), PhysicsBase::prefix(), MooseMesh::prepare(), BlockRestrictionDebugOutput::printBlockRestrictionMap(), PerfGraphLivePrint::printStats(), FEProblemBase::projectInitialConditionOnCustomRange(), MooseBase::queryParam(), MultiApp::readCommandLineArguments(), Receiver::Receiver(), Executor::Result::record(), FEProblemBase::registerRandomInterface(), MooseApp::registerRestartableDataMapName(), MooseApp::registerRestartableNameWithFilter(), MaterialBase::resetQpProperties(), MultiApp::restore(), ScalarComponentIC::ScalarComponentIC(), MultiApp::setAppOutputFileBase(), FEProblemBase::setAuxKernelParamsAndLog(), MooseMesh::setBoundaryName(), Control::setControllableValue(), Control::setControllableValueByName(), OutputWarehouse::setFileNumbers(), FEProblemBase::setPostprocessorValueByName(), FEProblemBase::setResidualObjectParamsAndLog(), MooseMesh::setSubdomainName(), MooseMesh::setSubdomainName(), NodeSetsGeneratorBase::setup(), SideSetsGeneratorBase::setup(), SurfaceMeshGeneratorBase::setup(), Split::setup(), TransientMultiApp::setupApp(), NEML2Action::setupOutputMappings(), SideSetExtruderGenerator::SideSetExtruderGenerator(), TransientMultiApp::solveStep(), UserObject::spatialValue(), StitchedMesh::StitchedMesh(), SubProblem::storeBoundaryDelayedCheckMatProp(), SubProblem::storeBoundaryMatPropName(), MaterialBase::storeBoundaryZeroMatProp(), SubProblem::storeBoundaryZeroMatProp(), SubProblem::storeSubdomainDelayedCheckMatProp(), SubProblem::storeSubdomainMatPropName(), MaterialBase::storeSubdomainZeroMatProp(), SubProblem::storeSubdomainZeroMatProp(), ConstraintWarehouse::subdomainsCovered(), MaterialBase::subdomainSetup(), SumPostprocessor::SumPostprocessor(), MFEMPostprocessor::suppliedPostprocessorName(), MFEMVectorPostprocessor::suppliedVectorPostprocessorName(), NEML2FEInterpolation::syncWithMainThread(), TaggingInterface::TaggingInterface(), MooseLinearVariableFV< OutputType >::timeIntegratorError(), VectorPostprocessorVisualizationAux::timestepSetup(), ElementSubdomainModifierBase::timestepSetup(), to_json(), MultiAppDofCopyTransfer::transfer(), MultiAppShapeEvaluationTransfer::transferVariable(), MultiAppMFEMCopyTransfer::transferVariables(), MultiAppMFEMShapeEvaluationTransfer::transferVariables(), TransientMultiApp::TransientMultiApp(), MooseBase::typeAndName(), MooseBase::uniqueParameterName(), FVQpFluxBC::uOnGhost(), FVQpFluxBC::uOnUSub(), UserObjectBase::UserObjectBase(), UserObjectInterface::userObjectName(), ParsedAux::validateGenericVectorNames(), MeshInfo::validParams(), MFEMExecutedObject::variableDependencyKey(), PhysicsBase::variableExists(), MultiAppTransfer::variableIntegrityCheck(), VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl(), MFEMExecutedObject::vectorPostprocessorDependencyKey(), Convergence::verboseOutput(), AdvancedOutput::wantOutput(), Coupleable::writableCoupledValue(), Coupleable::writableVariable(), Console::write(), and MooseApp::writeRestartableMetaData().

◆ onInterval()

bool Output::onInterval ( )
protectedvirtualinherited

Returns true if the output interval is satisfied.

Todo:

Definition at line 280 of file Output.C.

281{
282 // The output flag to return
283 bool output = false;
284
285 // Return true if the current step on the current output interval and within the output time range
286 // and within the output step range
287 if (_time >= _start_time && _time <= _end_time && _t_step >= _start_step &&
289 output = true;
290
291 // Return false if 'sync_only' is set to true
292 if (_sync_only)
293 output = false;
294
296 {
297 const auto & sync_times = _sync_times_object->getUniqueTimes();
298 if (sync_times != _sync_times)
299 mooseError("The provided sync times object has changing time values. Only static time "
300 "values are supported since time steppers take sync times from the output "
301 "warehouse which determines its sync times at output construction time.");
302 }
303
304 // We make sync times have precendence over the other criteria by convention, since they already
305 // take precedence over start/end step, start/end time, step frequency etc.
306 //
307 // Check if enough simulation time has passed between outputs
310 output = false;
311
312 // If sync times are not skipped, return true if the current time is a sync_time
313 for (const auto _sync_time : _sync_times)
314 {
315 if (std::abs(_sync_time - _time) < _t_tol)
316 output = true;
317 }
318
319 // check if enough wall time has passed between outputs
320 const auto now = std::chrono::steady_clock::now();
321 // count below returns an interger type, so lets express on a millisecond
322 // scale and convert to seconds for finer resolution
324 std::chrono::duration_cast<std::chrono::milliseconds>(now - _last_output_wall_time).count() /
325 1000.0;
326 // Take the maximum wall time since last output accross all processors
329 output = true;
330
331 // Return the output status
332 return output;
333}
Real _wall_time_since_last_output
time in seconds since last output
Definition Output.h:286
bool _sync_only
Flag for only executing at sync times.
Definition Output.h:265
int _start_step
Start outputting at this time step.
Definition Output.h:256
Real _wall_time_interval
Target wall time between outputs in seconds.
Definition Output.h:241
const Real _min_simulation_time_interval
Minimum simulation time between outputs.
Definition Output.h:238
const Times *const _sync_times_object
Sync times object for this outputter.
Definition Output.h:247
int & _t_step
The current time step.
Definition Output.h:220
Real _start_time
Start outputting time.
Definition Output.h:250
Real & _last_output_simulation_time
last simulation time an output has occured
Definition Output.h:280
int _end_step
End outputting at this time step.
Definition Output.h:259
unsigned int _time_step_interval
The output time step interval.
Definition Output.h:235
std::chrono::time_point< std::chrono::steady_clock > _last_output_wall_time
last wall time an output has occured
Definition Output.h:283
void max(const T &r, T &o, Request &req) const
const std::set< Real > getUniqueTimes() const
Getter for a set of the full times.
Definition Times.h:29

Referenced by Console::output(), Output::outputStep(), SampledOutput::outputStep(), and Checkpoint::shouldOutput().

◆ output()

void XDA::output ( )
overrideprotectedvirtual

Overload the Output::output method, this is required for XDA output due to the method utlized for outputting single/global parameters.

Reimplemented from AdvancedOutput.

Definition at line 47 of file XDA.C.

48{
49 // Strings for the two filenames to be written
50 std::string es_name = filename();
51 std::string mesh_name = es_name;
52
53 // Make sure the filename has an extension
54 if (es_name.size() < 4)
55 mooseError("Unacceptable filename, you must include an extension (.xda or .xdr).");
56
57 // Insert the mesh suffix
58 mesh_name.insert(mesh_name.size() - 4, "_mesh");
59
60 // Set the binary flag
61 XdrMODE mode = _binary ? ENCODE : WRITE;
62
63 // Write the files
64 _mesh_ptr->getMesh().write(mesh_name);
67 _file_num++;
68}
virtual std::string filename() override
Returns the current filename, this method handles adding the timestep suffix.
Definition XDA.C:71
void write(std::string_view name, const XdrMODE, const unsigned int write_flags=(WRITE_DATA), bool partition_agnostic=true) const
virtual void write(const std::string &name) const=0

Referenced by filename().

◆ outputElementalVariables()

void AdvancedOutput::outputElementalVariables ( )
protectedvirtualinherited

Performs output of elemental nonlinear variables The child class must define this method to output the nonlinear variables as desired.

See also
Exodus::outputElementalVariables

Reimplemented in Exodus.

Definition at line 212 of file AdvancedOutput.C.

213{
215 "Individual output of elemental variables is not support for this output object named '",
216 name(),
217 "'");
218}

Referenced by AdvancedOutput::output().

◆ outputInput()

void AdvancedOutput::outputInput ( )
protectedvirtualinherited

Performs the output of the input file By default this method does nothing and is not called, the individual Output objects are responsible for calling it.

Reimplemented in Console, and Exodus.

Definition at line 252 of file AdvancedOutput.C.

253{
254 mooseError("Output of the input file information is not support for this output object named '",
255 name(),
256 "'");
257}

Referenced by AdvancedOutput::output().

◆ outputNodalVariables()

void AdvancedOutput::outputNodalVariables ( )
protectedvirtualinherited

Performs output of nodal nonlinear variables The child class must define this method to output the nonlinear variables as desired.

See also
Exodus::outputNodalVariables

Reimplemented in Exodus.

Definition at line 204 of file AdvancedOutput.C.

205{
206 mooseError("Individual output of nodal variables is not support for the output object named '",
207 name(),
208 "'");
209}

Referenced by AdvancedOutput::output().

◆ outputPostprocessors()

void AdvancedOutput::outputPostprocessors ( )
protectedvirtualinherited

Performs output of postprocessors The child class must define this method to output the postprocessors as desired.

See also
Exodus::outputPostprocessors

Reimplemented in Console, CSV, Exodus, Nemesis, and TableOutput.

Definition at line 221 of file AdvancedOutput.C.

222{
223 mooseError("Individual output of postprocessors is not support for this output object named '",
224 name(),
225 "'");
226}

Referenced by AdvancedOutput::output().

◆ outputReporters()

void AdvancedOutput::outputReporters ( )
protectedvirtualinherited

Output Reporter values.

The child class must define this method to output the Reporter values as desired

See also
CSV::outputReporters

Reimplemented in Console, CSV, Exodus, JSONOutput, and TableOutput.

Definition at line 260 of file AdvancedOutput.C.

261{
263 "Output of the Reporter value(s) is not support for this output object named '", name(), "'");
264}

Referenced by AdvancedOutput::output().

◆ outputScalarVariables()

void AdvancedOutput::outputScalarVariables ( )
protectedvirtualinherited

Performs output of scalar variables The child class must define this method to output the scalar variables as desired.

See also
Exodus::outputScalarVariables

Reimplemented in Console, CSV, Exodus, Nemesis, and TableOutput.

Definition at line 238 of file AdvancedOutput.C.

239{
241 "Individual output of scalars is not support for this output object named '", name(), "'");
242}

Referenced by AdvancedOutput::output().

◆ outputStep()

void SampledOutput::outputStep ( const ExecFlagType type)
overridevirtualinherited

A single call to this function should output all the necessary data for a single timestep.

Parameters
typeThe type execution flag (see Moose.h)
See also
outputNodalVariables outputElementalVariables outputScalarVariables outputPostprocessors

Reimplemented from Output.

Definition at line 85 of file SampledOutput.C.

86{
87 // Output is not allowed
89 return;
90
91 // If recovering disable output of initial condition, it was already output
93 return;
94
95 // Return if the current output is not on the desired interval
96 if (type != EXEC_FINAL && !onInterval())
97 return;
98
99 // store current simulation time
101
102 // store current wall time of output
103 _last_output_wall_time = std::chrono::steady_clock::now();
104
105 // set current type
107
108 // Call the output method
109 if (shouldOutput())
110 {
111 TIME_SECTION("outputStep", 2, "Outputting Step");
112 updateSample();
113 output();
114 }
115
117}
const ExecFlagType EXEC_FORCED
Definition Moose.C:49
const ExecFlagType EXEC_INITIAL
Definition Moose.C:30
const ExecFlagType EXEC_NONE
Definition Moose.C:29
const ExecFlagType EXEC_FINAL
Definition Moose.C:48
virtual bool shouldOutput()
Handles logic for determining if a step should be output.
ExecFlagType _current_execute_flag
Current execute on flag.
Definition Output.h:211
virtual bool onInterval()
Returns true if the output interval is satisfied.
Definition Output.C:280
virtual void updateSample()
Performs the update of the solution vector for the sample/re-positioned mesh.

◆ outputSystemInformation()

void AdvancedOutput::outputSystemInformation ( )
protectedvirtualinherited
Todo:
Performs the output of system information By default this method does nothing and is not called by output()

Reimplemented in Console, and JSONOutput.

Definition at line 245 of file AdvancedOutput.C.

246{
248 "Output of system information is not support for this output object named '", name(), "'");
249}

Referenced by AdvancedOutput::output().

◆ outputVectorPostprocessors()

void AdvancedOutput::outputVectorPostprocessors ( )
protectedvirtualinherited

Performs output of VectorPostprocessors The child class must define this method to output the VectorPostprocessors as desired.

Reimplemented in Console, CSV, TableOutput, and XMLOutput.

Definition at line 229 of file AdvancedOutput.C.

230{
232 "Individual output of VectorPostprocessors is not support for this output object named '",
233 name(),
234 "'");
235}

Referenced by AdvancedOutput::output().

◆ paramError()

template<typename... Args>
void MooseBase::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 457 of file MooseBase.h.

458{
459 _pars.paramError(param, std::forward<Args>(args)...);
460}
void paramError(const std::string &param, Args... args) const
Emits a parameter error prefixed with the parameter location and object information if available.

Referenced by HierarchicalGridPartitioner::_do_partition(), AutoCheckpointAction::act(), CommonOutputAction::act(), SetupDebugAction::act(), DiffusionCG::addFEKernels(), DiffusionFV::addFVKernels(), NEML2ModelExecutor::addGatheredParameter(), NEML2ModelExecutor::addGatheredVariable(), ADDGKernel::ADDGKernel(), ComponentJunction::addMeshGenerators(), CylinderComponent::addMeshGenerators(), ReporterPointSource::addPoints(), ADIntegratedBCTempl< T >::ADIntegratedBCTempl(), ADKernelTempl< T >::ADKernelTempl(), ADPenaltyPeriodicSegmentalConstraint::ADPenaltyPeriodicSegmentalConstraint(), ADPeriodicSegmentalConstraint::ADPeriodicSegmentalConstraint(), AdvancedExtruderGenerator::AdvancedExtruderGenerator(), AdvectiveFluxAux::AdvectiveFluxAux(), AnnularMesh::AnnularMesh(), AnnularMeshGenerator::AnnularMeshGenerator(), ArrayBodyForce::ArrayBodyForce(), ArrayCoupledForce::ArrayCoupledForce(), ArrayDGKernel::ArrayDGKernel(), ArrayDGLowerDKernel::ArrayDGLowerDKernel(), ArrayDirichletBC::ArrayDirichletBC(), ArrayHFEMDirichletBC::ArrayHFEMDirichletBC(), ArrayIntegratedBC::ArrayIntegratedBC(), ArrayKernel::ArrayKernel(), ArrayLowerDIntegratedBC::ArrayLowerDIntegratedBC(), ArrayParsedAux::ArrayParsedAux(), ArrayPenaltyDirichletBC::ArrayPenaltyDirichletBC(), ArrayReactionNodalKernelTempl< is_ad >::ArrayReactionNodalKernelTempl(), ArrayVacuumBC::ArrayVacuumBC(), ArrayVarReductionAux::ArrayVarReductionAux(), ParsedSubdomainIDsGenerator::assignElemSubdomainID(), AuxKernelBase::AuxKernelBase(), BatchMeshGeneratorAction::BatchMeshGeneratorAction(), BlockDeletionGenerator::BlockDeletionGenerator(), BlockWeightedPartitioner::BlockWeightedPartitioner(), BoundaryIntegralValueConstraint::BoundaryIntegralValueConstraint(), BoundaryLinearFVFluxIntegral::BoundaryLinearFVFluxIntegral(), BoundsBase::BoundsBase(), BreakMeshByBlockGenerator::BreakMeshByBlockGenerator(), BSplineCurveGenerator::BSplineCurveGenerator(), BuildArrayVariableAux::BuildArrayVariableAux(), MFEMFESpaceHierarchy::buildHierarchy(), MFEMMesh::buildMesh(), MFEMGeometricMultigridSolver::BuildMultigrid(), TimeSequenceStepperBase::buildSequence(), CartesianGridDivision::CartesianGridDivision(), CartesianMeshGenerator::CartesianMeshGenerator(), checkComponent(), Moose::Kokkos::ParsedObjectBase::checkDuplicateSymbols(), SamplerBase::checkForStandardFieldVariableType(), MeshGenerator::checkGetMesh(), ComponentInitialConditionInterface::checkInitialConditionsAllRequested(), BatchMeshGeneratorAction::checkInputParameterType(), PhysicsBase::checkIntegrityEarly(), SideUserObject::checkNoInterfaceMaterialPropertyDependencies(), PostprocessorInterface::checkParam(), FEProblemBase::checkProblemIntegrity(), MultiAppReporterTransfer::checkSiblingsTransferSupported(), MFEMMultiAppTransfer::checkValidTransferProblemTypes(), Coupleable::checkVar(), MultiAppTransfer::checkVariable(), CircularBoundaryCorrectionGenerator::CircularBoundaryCorrectionGenerator(), CircularBoundaryCorrectionGenerator::circularCenterCalculator(), MultiAppGeneralFieldTransfer::closestToPosition(), CoarsenBlockGenerator::CoarsenBlockGenerator(), CombinedVectorPostprocessor::CombinedVectorPostprocessor(), CombinerGenerator::CombinerGenerator(), ComponentInitialConditionInterface::ComponentInitialConditionInterface(), ComponentJunction::ComponentJunction(), ComponentMaterialPropertyInterface::ComponentMaterialPropertyInterface(), CompositionDT::CompositionDT(), ConcentricCircleMeshGenerator::ConcentricCircleMeshGenerator(), LibtorchNeuralNetControl::conditionalParameterError(), ConservativeAdvectionBCTempl< is_ad >::ConservativeAdvectionBCTempl(), ConservativeAdvectionTempl< is_ad >::ConservativeAdvectionTempl(), ConstantVectorPostprocessor::ConstantVectorPostprocessor(), ContainsPointAux::ContainsPointAux(), CopyValueAux::CopyValueAux(), MultiAppGeneralFieldTransfer::correctSolutionVectorValues(), Coupleable::Coupleable(), CoupledForceTempl< is_ad >::CoupledForceTempl(), CoupledValueFunctionMaterialTempl< is_ad >::CoupledValueFunctionMaterialTempl(), MultiApp::createApp(), MeshGeneratorSystem::createMeshGenerator(), CylindricalGridDivision::CylindricalGridDivision(), DebugResidualAux::DebugResidualAux(), ConstantReporter::declareConstantReporterValue(), ConstantReporter::declareConstantReporterValues(), AccumulateReporter::declareLateValues(), DefaultMultiAppFixedPointConvergence::DefaultMultiAppFixedPointConvergence(), DGKernel::DGKernel(), DGKernelBase::DGKernelBase(), DGLowerDKernel::DGLowerDKernel(), DiffusionFluxAux::DiffusionFluxAux(), DomainUserObject::DomainUserObject(), EigenProblem::EigenProblem(), EigenProblemSolve::EigenProblemSolve(), ElementAdaptivityLevelAux::ElementAdaptivityLevelAux(), ElementGenerator::ElementGenerator(), ElementGroupCentroidPositions::ElementGroupCentroidPositions(), ElementLengthAux::ElementLengthAux(), ElementLpNormAux::ElementLpNormAux(), ElementNormalAux::ElementNormalAux(), ExtraIDIntegralVectorPostprocessor::elementValue(), ElementValueSampler::ElementValueSampler(), ElementVectorL2Error::ElementVectorL2Error(), EqualValueEmbeddedConstraintTempl< is_ad >::EqualValueEmbeddedConstraintTempl(), ReporterPointSource::errorCheck(), StitchMeshGeneratorBase::errorMissingBoundary(), ExamplePatchMeshGenerator::ExamplePatchMeshGenerator(), MultiAppNearestNodeTransfer::execute(), MultiAppUserObjectTransfer::execute(), ExtraElementIDAux::ExtraElementIDAux(), ExtraElementIntegerDivision::ExtraElementIntegerDivision(), ExtraIDIntegralVectorPostprocessor::ExtraIDIntegralVectorPostprocessor(), FEProblemBase::FEProblemBase(), FEProblemSolve::FEProblemSolve(), FileMeshGenerator::FileMeshGenerator(), FillBetweenCurvesGenerator::FillBetweenCurvesGenerator(), FillBetweenSidesetsGenerator::FillBetweenSidesetsGenerator(), SpatialUserObjectVectorPostprocessor::fillPoints(), CombinerGenerator::fillPositions(), MultiApp::fillPositions(), InternalSideIndicatorBase::finalize(), FixedPointSolve::findTransformedSystem(), FixedPointSolve::FixedPointSolve(), ForcingFunctionAux::ForcingFunctionAux(), FullSolveMultiApp::FullSolveMultiApp(), FunctionArrayAux::FunctionArrayAux(), FunctionValuePostprocessor::FunctionValuePostprocessor(), FunctorADConverterTempl< T >::FunctorADConverterTempl(), FunctorAux::FunctorAux(), FunctorBinnedValuesDivision::FunctorBinnedValuesDivision(), FunctorCoordinatesFunctionAux::FunctorCoordinatesFunctionAux(), FunctorElementalGradientAuxTempl< is_ad >::FunctorElementalGradientAuxTempl(), FunctorExtremaPositions::FunctorExtremaPositions(), FunctorIC::FunctorIC(), FunctorPositions::FunctorPositions(), FunctorVectorElementalAuxTempl< is_ad >::FunctorVectorElementalAuxTempl(), FVAdvection::FVAdvection(), FVFluxBC::FVFluxBC(), FVInterfaceKernel::FVInterfaceKernel(), FVOneVarDiffusionInterface::FVOneVarDiffusionInterface(), FVTwoVarContinuityConstraint::FVTwoVarContinuityConstraint(), Boundary2DDelaunayGenerator::General2DDelaunay(), SurfaceSubdomainsDelaunayRemesher::General2DDelaunay(), AddMetaDataGenerator::generate(), AdvancedExtruderGenerator::generate(), BlockDeletionGenerator::generate(), BlockToMeshConverterGenerator::generate(), Boundary2DDelaunayGenerator::generate(), BoundaryDeletionGenerator::generate(), BoundaryElementConversionGenerator::generate(), BreakBoundaryOnSubdomainGenerator::generate(), BreakMeshByBlockGenerator::generate(), BreakMeshByElementGenerator::generate(), CircularBoundaryCorrectionGenerator::generate(), CoarsenBlockGenerator::generate(), CombinerGenerator::generate(), CutMeshByLevelSetGeneratorBase::generate(), ElementsToTetrahedronsConverter::generate(), ExtraNodesetGenerator::generate(), FillBetweenCurvesGenerator::generate(), FillBetweenSidesetsGenerator::generate(), FlipSidesetGenerator::generate(), GeneratedMeshGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), ManifoldSubdomainGenerator::generate(), MeshCollectionGenerator::generate(), MeshExtruderGenerator::generate(), ParsedCurveGenerator::generate(), ParsedExtraElementIDGenerator::generate(), ParsedSubdomainGeneratorBase::generate(), PlaneIDMeshGenerator::generate(), PolyLineMeshFollowingNodeSetGenerator::generate(), ProjectSideSetOntoLevelSetGenerator::generate(), RefineBlockGenerator::generate(), RefineSidesetGenerator::generate(), RenameBlockGenerator::generate(), RenameBoundaryGenerator::generate(), RenumberBySubdomainGenerator::generate(), SideSetsFromNodeSetsGenerator::generate(), StackGenerator::generate(), SubdomainBoundingBoxGenerator::generate(), SubdomainsFromPartitionerGenerator::generate(), SurfaceSubdomainsDelaunayRemesher::generate(), UniqueExtraIDMeshGenerator::generate(), XYMeshLineCutter::generate(), XYZDelaunayGenerator::generate(), PatternedMeshGenerator::generate(), GeneratedMeshGenerator::GeneratedMeshGenerator(), BoundaryLayerUtils::generateOffsetPolyline(), GenericConstantStdVectorMaterialTempl< is_ad >::GenericConstantStdVectorMaterialTempl(), GenericFunctorGradientMaterialTempl< is_ad >::GenericFunctorGradientMaterialTempl(), GenericFunctorMaterialTempl< is_ad >::GenericFunctorMaterialTempl(), GenericFunctorTimeDerivativeMaterialTempl< is_ad >::GenericFunctorTimeDerivativeMaterialTempl(), GenericVectorFunctorMaterialTempl< is_ad >::GenericVectorFunctorMaterialTempl(), PropertyReadFile::getBlockData(), ComponentBoundaryConditionInterface::getBoundaryCondition(), MultiApp::getCommandLineArgs(), PropertyReadFile::getData(), PropertyReadFile::getFileNames(), Sampler::getGlobalSamples(), ComponentInitialConditionInterface::getInitialCondition(), NEML2Action::getInputParameterMapping(), MultiAppNearestNodeTransfer::getLocalEntitiesAndComponents(), Sampler::getLocalSamples(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), Sampler::getNextLocalRow(), FEProblemSolve::getParamFromNonlinearSystemVectorParam(), PostprocessorInterface::getPostprocessorNameInternal(), PostprocessorInterface::getPostprocessorValueInternal(), MultiAppNearestNodeTransfer::getTargetLocalNodes(), UserObjectInterface::getUserObjectBase(), UserObjectInterface::getUserObjectName(), AddPeriodicBCAction::getVariables(), HFEMDirichletBC::HFEMDirichletBC(), AddVariableAction::init(), MFEMTransient::init(), MultiApp::init(), DistributedPositions::initialize(), BlockWeightedPartitioner::initialize(), BlockRestrictable::initializeBlockRestrictable(), BoundaryRestrictable::initializeBoundaryRestrictable(), PhysicsBase::initializePhysics(), ReferenceResidualConvergence::initialSetup(), PiecewiseConstantFromCSV::initialSetup(), SolutionIC::initialSetup(), LibtorchControlValuePostprocessor::initialSetup(), ElementSubdomainModifierBase::initialSetup(), MFEMScalarCoefficientPointValueSampler::initialSetup(), FullSolveMultiApp::initialSetup(), JSONOutput::initialSetup(), BoundaryLinearFVFluxIntegral::initialSetup(), SideFVFluxBCIntegral::initialSetup(), MultiAppCloneReporterTransfer::initialSetup(), MultiAppDofCopyTransfer::initialSetup(), MultiAppGeneralFieldKDTreeTransferBase::initialSetup(), MultiAppGeneralFieldNearestLocationTransfer::initialSetup(), MultiAppGeneralFieldTransfer::initialSetup(), MultiAppVariableValueSamplePostprocessorTransfer::initialSetup(), HistogramVectorPostprocessor::initialSetup(), SampledOutput::initSample(), AddMetaDataGenerator::inputChecker(), IntegratedBC::IntegratedBC(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceValueUserObjectAux::InterfaceValueUserObjectAux(), InternalSideIndicatorBase::InternalSideIndicatorBase(), InterpolatedStatefulMaterialTempl< T >::InterpolatedStatefulMaterialTempl(), InversePowerMethod::InversePowerMethod(), IterationAdaptiveDT::IterationAdaptiveDT(), MultiApp::keepSolutionDuringRestore(), Kernel::Kernel(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), LinearCombinationFunction::LinearCombinationFunction(), LinearFVAdvectionDiffusionFunctorRobinBC::LinearFVAdvectionDiffusionFunctorRobinBC(), LowerDIntegratedBC::LowerDIntegratedBC(), PNGOutput::makeMeshFunc(), MatCoupledForce::MatCoupledForce(), MaterialADConverterTempl< T >::MaterialADConverterTempl(), MaterialFunctorConverterTempl< T >::MaterialFunctorConverterTempl(), MatReactionTempl< is_ad >::MatReactionTempl(), MatrixSymmetryCheck::MatrixSymmetryCheck(), PatternedMeshGenerator::mergeSubdomainNameMaps(), MeshCollectionGenerator::MeshCollectionGenerator(), MeshDiagnosticsGenerator::MeshDiagnosticsGenerator(), MeshDivisionAux::MeshDivisionAux(), MeshGenerator::MeshGenerator(), MeshGeneratorComponent::MeshGeneratorComponent(), MeshInfo::MeshInfo(), MFEMComplexSumAux::MFEMComplexSumAux(), MFEMFunctorMaterial::MFEMFunctorMaterial(), MFEMGenericFunctorMaterial::MFEMGenericFunctorMaterial(), MFEMGenericFunctorVectorMaterial::MFEMGenericFunctorVectorMaterial(), MFEMGeometricMultigridSolver::MFEMGeometricMultigridSolver(), MFEMMultiAppTransfer::MFEMMultiAppTransfer(), MFEMNDtoRTAux::MFEMNDtoRTAux(), MFEMSumAux::MFEMSumAux(), MFEMVariable::MFEMVariable(), UserObjectInterface::mooseObjectError(), MoosePreconditioner::MoosePreconditioner(), MooseStaticCondensationPreconditioner::MooseStaticCondensationPreconditioner(), MooseVariableBase::MooseVariableBase(), MortarConstraintBase::MortarConstraintBase(), MortarNodalAuxKernelTempl< ComputeValueType >::MortarNodalAuxKernelTempl(), MultiApp::moveApp(), MoveNodeGenerator::MoveNodeGenerator(), MultiApp::MultiApp(), MultiAppCloneReporterTransfer::MultiAppCloneReporterTransfer(), MultiAppGeneralFieldFunctorTransfer::MultiAppGeneralFieldFunctorTransfer(), MultiAppGeneralFieldKDTreeTransferBase::MultiAppGeneralFieldKDTreeTransferBase(), MultiAppGeneralFieldShapeEvaluationTransfer::MultiAppGeneralFieldShapeEvaluationTransfer(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppGeometricInterpolationTransfer::MultiAppGeometricInterpolationTransfer(), MultiAppNearestNodeTransfer::MultiAppNearestNodeTransfer(), MultiAppPostprocessorInterpolationTransfer::MultiAppPostprocessorInterpolationTransfer(), MultiAppPostprocessorToAuxScalarTransfer::MultiAppPostprocessorToAuxScalarTransfer(), MultiAppPostprocessorTransfer::MultiAppPostprocessorTransfer(), MultiAppProjectionTransfer::MultiAppProjectionTransfer(), MultiAppReporterTransfer::MultiAppReporterTransfer(), MultiAppScalarToAuxScalarTransfer::MultiAppScalarToAuxScalarTransfer(), MultiAppShapeEvaluationTransfer::MultiAppShapeEvaluationTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppUserObjectTransfer::MultiAppUserObjectTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), MultiAppVariableValueSampleTransfer::MultiAppVariableValueSampleTransfer(), MultiAppVectorPostprocessorTransfer::MultiAppVectorPostprocessorTransfer(), MultiSystemSolveObject::MultiSystemSolveObject(), NearestNodeValueAux::NearestNodeValueAux(), NEML2Action::NEML2Action(), NEML2PreKernel::NEML2PreKernel(), NestedDivision::NestedDivision(), NodalBC::NodalBC(), NodalEqualValueConstraint::NodalEqualValueConstraint(), NodalKernel::NodalKernel(), NodalPatchRecoveryAux::NodalPatchRecoveryAux(), NodalValueSampler::NodalValueSampler(), NumDOFs::NumDOFs(), OrientSurfaceMeshGenerator::OrientSurfaceMeshGenerator(), Output::Output(), ParsedCurveGenerator::ParsedCurveGenerator(), ParsedFunctorMaterialTempl< is_ad >::ParsedFunctorMaterialTempl(), ParsedPostprocessor::ParsedPostprocessor(), ParsedReporterBase::ParsedReporterBase(), ParsedScalarReporter::ParsedScalarReporter(), ParsedSubdomainGeneratorBase::ParsedSubdomainGeneratorBase(), ParsedVectorRealReductionReporter::ParsedVectorRealReductionReporter(), ParsedVectorReporter::ParsedVectorReporter(), ParsedVectorVectorRealReductionReporter::ParsedVectorVectorRealReductionReporter(), PatternedMeshGenerator::PatternedMeshGenerator(), PenaltyPeriodicSegmentalConstraint::PenaltyPeriodicSegmentalConstraint(), PeriodicSegmentalConstraint::PeriodicSegmentalConstraint(), PIDTransientControl::PIDTransientControl(), PlaneDeletionGenerator::PlaneDeletionGenerator(), PlaneIDMeshGenerator::PlaneIDMeshGenerator(), PointwiseRenormalizeVector::PointwiseRenormalizeVector(), PolyLineMeshFollowingNodeSetGenerator::PolyLineMeshFollowingNodeSetGenerator(), EqualValueBoundaryConstraint::populateSecondaryNodes(), ReporterInterface::possiblyCheckHasReporter(), VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor(), LibmeshPartitioner::prepareBlocksForSubdomainPartitioner(), ProjectedMaterialPropertyNodalPatchRecoveryAux::ProjectedMaterialPropertyNodalPatchRecoveryAux(), ProjectSideSetOntoLevelSetGenerator::ProjectSideSetOntoLevelSetGenerator(), PropertyReadFile::PropertyReadFile(), RandomIC::RandomIC(), RankTwoTensorFromComponentProperties::RankTwoTensorFromComponentProperties(), MultiApp::readCommandLineArguments(), PropertyReadFile::readData(), SolutionUserObjectBase::readExodusIIOrNemesis(), SolutionUserObjectBase::readXda(), ReferenceResidualConvergence::ReferenceResidualConvergence(), RefineBlockGenerator::RefineBlockGenerator(), RefineSidesetGenerator::RefineSidesetGenerator(), RenameBlockGenerator::RenameBlockGenerator(), RenameBoundaryGenerator::RenameBoundaryGenerator(), ReporterPointSource::ReporterPointSource(), FEProblemBase::restoreSolutions(), SecondTimeDerivativeAux::SecondTimeDerivativeAux(), FEProblemBase::setLinearConvergenceNames(), FEProblemBase::setNonlinearConvergenceNames(), MooseMesh::setPartitioner(), NodeSetsGeneratorBase::setup(), SideSetsGeneratorBase::setup(), SurfaceMeshGeneratorBase::setup(), CylinderComponent::setupComponent(), NEML2Action::setupDerivativeMappings(), NEML2Action::setupInputMappings(), MultiSystemSolveObject::setupMultiSystemFixedPointRelaxationFactors(), NEML2Action::setupParameterDerivativeMappings(), NEML2Action::setupParameterMappings(), SetupQuadratureAction::SetupQuadratureAction(), SidesetAroundSubdomainUpdater::SidesetAroundSubdomainUpdater(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), SideValueSampler::SideValueSampler(), SingleRankPartitioner::SingleRankPartitioner(), SphericalGridDivision::SphericalGridDivision(), StitchBoundaryMeshGenerator::StitchBoundaryMeshGenerator(), StitchMeshGenerator::StitchMeshGenerator(), SurfaceSubdomainsDelaunayRemesher::SurfaceSubdomainsDelaunayRemesher(), SymmetryTransformGenerator::SymmetryTransformGenerator(), TagVectorAux::TagVectorAux(), Terminator::Terminator(), TimeDerivativeAux::TimeDerivativeAux(), Transfer::Transfer(), TransformGenerator::TransformGenerator(), TransientMultiApp::TransientMultiApp(), CylinderComponent::translation(), MeshTriangulationUtils::triangulateWithDelaunay(), ParsedCurveGenerator::tSectionSpaceDefiner(), UniqueExtraIDMeshGenerator::UniqueExtraIDMeshGenerator(), UserObjectBase::UserObjectBase(), Checkpoint::validateExecuteOn(), ParsedAux::validateGenericVectorNames(), MFEMProblem::validateVariableNumericType(), VariableCondensationPreconditioner::VariableCondensationPreconditioner(), VectorBodyForce::VectorBodyForce(), VectorFunctionDirichletBC::VectorFunctionDirichletBC(), VectorFunctionIC::VectorFunctionIC(), VolumeAux::VolumeAux(), WebServerControl::WebServerControl(), XYDelaunayGenerator::XYDelaunayGenerator(), XYMeshLineCutter::XYMeshLineCutter(), and XYZDelaunayGenerator::XYZDelaunayGenerator().

◆ parameters()

const InputParameters & MooseBase::parameters ( ) const
inlineinherited

Get the parameters of the object.

Returns
The parameters of the object

Definition at line 131 of file MooseBase.h.

131{ return _pars; }

Referenced by AddActionComponentAction::act(), CommonOutputAction::act(), CSGOnlyAction::act(), MeshOnlyAction::act(), SetupDebugAction::act(), SplitMeshAction::act(), Action::Action(), FEProblemBase::addAnyRedistributers(), FEProblemBase::addAuxKernel(), MFEMProblem::addAuxKernel(), FEProblemBase::addAuxScalarKernel(), DisplacedProblem::addAuxVariable(), MFEMProblem::addAuxVariable(), FEProblemBase::addBoundaryCondition(), MFEMProblem::addBoundaryCondition(), FEProblemBase::addConstraint(), FEProblemBase::addConvergence(), FEProblemBase::addDamper(), AddDefaultConvergenceAction::addDefaultMultiAppFixedPointConvergence(), FEProblemBase::addDefaultMultiAppFixedPointConvergence(), AddDefaultConvergenceAction::addDefaultNonlinearConvergence(), FEProblemBase::addDefaultNonlinearConvergence(), ReferenceResidualProblem::addDefaultNonlinearConvergence(), AddDefaultConvergenceAction::addDefaultSteadyStateConvergence(), FEProblemBase::addDefaultSteadyStateConvergence(), FEProblemBase::addDGKernel(), FEProblemBase::addDiracKernel(), FEProblemBase::addDistribution(), MFEMProblem::addFESpace(), MFEMProblem::addFESpaceHierarchy(), FEProblemBase::addFunction(), MFEMProblem::addFunction(), FEProblemBase::addFunctorMaterial(), MFEMProblem::addFunctorMaterial(), FEProblemBase::addFVBC(), FEProblemBase::addFVInitialCondition(), FEProblemBase::addFVInterfaceKernel(), FEProblemBase::addFVInterpolationMethod(), FEProblemBase::addFVKernel(), MFEMProblem::addGridFunction(), FEProblemBase::addHDGKernel(), MFEMProblem::addImagComponentToBC(), MFEMProblem::addImagComponentToKernel(), FEProblemBase::addIndicator(), MFEMProblem::addIndicator(), FEProblemBase::addInitialCondition(), MFEMProblem::addInitialCondition(), DiffusionPhysicsBase::addInitialConditions(), FEProblemBase::addInterfaceKernel(), FEProblemBase::addInterfaceMaterial(), FEProblemBase::addKernel(), MFEMProblem::addKernel(), FEProblemBase::addLinearFVBC(), FEProblemBase::addLinearFVKernel(), FEProblem::addLineSearch(), FEProblemBase::addMarker(), MFEMProblem::addMarker(), FEProblemBase::addMaterial(), FEProblemBase::addMaterialHelper(), FEProblemBase::addMeshDivision(), MFEMProblem::addMFEMFESpaceFromMOOSEVariable(), MFEMProblem::addMFEMSolver(), FEProblemBase::addMultiApp(), FEProblemBase::addNodalKernel(), FEProblemBase::addObject(), FEProblemBase::addObjectParamsHelper(), FEProblemBase::addOutput(), FEProblemBase::addPostprocessor(), MFEMProblem::addPostprocessor(), FEProblemBase::addPredictor(), MFEMProblem::addQuadratureFunction(), MFEMProblem::addRealComponentToBC(), MFEMProblem::addRealComponentToKernel(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), FEProblemBase::addScalarKernel(), MFEMProblem::addSubMesh(), FEProblemBase::addTimeIntegrator(), FEProblemBase::addTransfer(), MFEMProblem::addTransfer(), FEProblemBase::addUserObject(), DisplacedProblem::addVariable(), MFEMEigenproblem::addVariable(), MFEMProblem::addVariable(), FEProblemBase::addVectorPostprocessor(), MFEMProblem::addVectorPostprocessor(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), AdvancedOutput::AdvancedOutput(), AnnularMesh::AnnularMesh(), AnnularMeshGenerator::AnnularMeshGenerator(), Action::associateWithParameter(), AuxKernelBase::AuxKernelBase(), AuxScalarKernel::AuxScalarKernel(), BoundsBase::BoundsBase(), MooseMesh::buildTypedMesh(), PostprocessorInterface::checkParam(), AddDefaultConvergenceAction::checkUnusedMultiAppFixedPointConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedNonlinearConvergenceParameters(), AddDefaultConvergenceAction::checkUnusedSteadyStateConvergenceParameters(), SampledOutput::cloneMesh(), LibtorchNeuralNetControl::conditionalParameterError(), Console::Console(), MooseMeshUtils::copyIntoMesh(), CommonOutputAction::create(), MultiApp::createApp(), Postprocessor::declareValue(), DumpObjectsProblem::deduceNecessaryParameters(), DefaultMultiAppFixedPointConvergence::DefaultMultiAppFixedPointConvergence(), DumpObjectsProblem::dumpObjectHelper(), DumpObjectsProblem::DumpObjectsProblem(), EigenProblem::EigenProblem(), EigenProblemSolve::EigenProblemSolve(), ElementMaterialSampler::ElementMaterialSampler(), ExamplePatchMeshGenerator::ExamplePatchMeshGenerator(), Executor::Executor(), Exodus::Exodus(), ElementSubdomainModifierBase::extrapolatePolynomial(), FEProblem::FEProblem(), FixedPointSolve::FixedPointSolve(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), GapValueAux::GapValueAux(), ParsedSubdomainGeneratorBase::generate(), ActionWarehouse::getCurrentActionName(), ExecutorInterface::getExecutor(), Material::getMaterial(), Moose::PeriodicBCHelper::getParams(), ReporterInterface::getReporterName(), Reporter::getReporterValueName(), UserObjectInterface::getUserObjectName(), AuxKernelBase::getVariableHelper(), VectorPostprocessorInterface::getVectorPostprocessorName(), GhostingUserObject::GhostingUserObject(), MeshGeneratorSystem::hasDataDrivenAllowed(), AttribSystem::initFrom(), AttribDisplaced::initFrom(), BlockRestrictable::initializeBlockRestrictable(), FullSolveMultiApp::initialSetup(), FEProblemBase::initNullSpaceVectors(), InterfaceDiffusiveFluxIntegralTempl< is_ad >::InterfaceDiffusiveFluxIntegralTempl(), InterfaceIntegralVariableValuePostprocessor::InterfaceIntegralVariableValuePostprocessor(), InterfaceKernelTempl< T >::InterfaceKernelTempl(), MooseObject::isKokkosObject(), isValid(), IterationAdaptiveDT::IterationAdaptiveDT(), LibtorchNeuralNetControl::LibtorchNeuralNetControl(), MooseObject::MooseObject(), UserObjectInterface::mooseObjectError(), MooseVariableInterface< T >::MooseVariableInterface(), MultiApp::MultiApp(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), MultiAppGeneralFieldUserObjectTransfer::MultiAppGeneralFieldUserObjectTransfer(), MultiAppTransfer::MultiAppTransfer(), MultiAppVariableValueSamplePostprocessorTransfer::MultiAppVariableValueSamplePostprocessorTransfer(), NodeFaceConstraint::NodeFaceConstraint(), ConsoleUtils::outputLegacyInformation(), OverlayMeshGenerator::OverlayMeshGenerator(), ParsedReporterBase::ParsedReporterBase(), ParsedScalarReporter::ParsedScalarReporter(), PenetrationAux::PenetrationAux(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), NEML2Action::printSummary(), ProjectedStatefulMaterialStorageAction::processProperty(), PropertyReadFile::PropertyReadFile(), PseudoTimestep::PseudoTimestep(), RandomIC::RandomIC(), ReferenceResidualConvergence::ReferenceResidualConvergence(), InputParameterWarehouse::removeInputParameters(), FEProblemBase::setAuxKernelParamsAndLog(), FEProblemBase::setInputParametersFEProblem(), FEProblem::setInputParametersFEProblem(), FEProblemBase::setResidualObjectParamsAndLog(), SideSetsGeneratorBase::setup(), NonlinearSystemBase::shouldEvaluatePreSMOResidual(), SideSetsFromBoundingBoxGenerator::SideSetsFromBoundingBoxGenerator(), Moose::PetscSupport::storePetscOptions(), DumpObjectsProblem::stringifyParameters(), TaggingInterface::TaggingInterface(), Transfer::Transfer(), TransientBase::TransientBase(), VectorBodyForce::VectorBodyForce(), VectorFunctionDirichletBC::VectorFunctionDirichletBC(), VectorFunctionIC::VectorFunctionIC(), and VectorMagnitudeFunctorMaterialTempl< is_ad >::VectorMagnitudeFunctorMaterialTempl().

◆ paramInfo()

template<typename... Args>
void MooseBase::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 471 of file MooseBase.h.

472{
473 mooseInfo(_pars.paramMessage(param, std::forward<Args>(args)...));
474}
std::string paramMessage(const std::string &param, Args... args) const

Referenced by GridPartitioner::_do_partition(), ComboMarker::ComboMarker(), Control::Control(), FunctorIC::FunctorIC(), and TransientMultiApp::TransientMultiApp().

◆ paramWarning() [1/2]

template<typename... Args>
void MooseBase::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 464 of file MooseBase.h.

465{
466 mooseWarning(_pars.paramMessage(param, std::forward<Args>(args)...));
467}

◆ paramWarning() [2/2]

template<typename... Args>
void SolutionInvalidInterface::paramWarning ( const std::string &  param,
Args...  args 
) const
inlineinherited

◆ perfGraph()

PerfGraph & PerfGraphInterface::perfGraph ( )
inherited

Get the PerfGraph.

Definition at line 86 of file PerfGraphInterface.C.

87{
88 return _pg_moose_app.perfGraph();
89}
PerfGraph & perfGraph()
Get the PerfGraph for this app.
Definition MooseApp.h:179
MooseApp & _pg_moose_app
The MooseApp that owns the PerfGraph.

Referenced by CommonOutputAction::act(), PerfGraphData::finalize(), PerfGraphReporter::finalize(), and PerfGraphOutput::output().

◆ petscLinearOutput()

PetscErrorCode PetscOutputInterface::petscLinearOutput ( KSP  ,
PetscInt  its,
PetscReal  fnorm,
void *  void_ptr 
)
staticprotectedinherited

Performs the output onlinear iterations This is the monitor method that PETSc will call on linear iterations.

This is one of three locations where we explicitly flush the output buffers during a simulation: PetscOutput::petscNonlinearOutput() PetscOutput::petscLinearOutput() OutputWarehouse::outputStep()

All other Console output should be using newlines to avoid covering buffer errors and to avoid excessive I/O. This call is necessary. In the PETSc callback the context bypasses the OutputWarehouse.

Definition at line 76 of file PetscOutput.C.

77{
78 // Get the primary outputter object
79 PetscOutput * primary_ptr = static_cast<PetscOutput *>(void_ptr);
80
81 // loop over all interface objects
82 for (const auto poi_ptr : primary_ptr->getMooseApp().getInterfaceObjects<PetscOutputInterface>())
83 {
84 auto ptr = poi_ptr->_petsc_output;
85
86 // check time
87 if (!ptr->inLinearTimeWindow())
88 continue;
89
90 // Update the pseudo time
91 ptr->_linear_time += ptr->_linear_dt;
92
93 // Set the current norm and iteration number
94 ptr->_norm = norm;
95 ptr->_linear_iter = its;
96
97 // Set the flag indicating that output is occurring on the non-linear residual
98 ptr->_on_linear_residual = true;
99
100 // Perform the output
101 ptr->outputStep(EXEC_LINEAR);
102
114 ptr->_app.getOutputWarehouse().flushConsoleBuffer();
115
116 // Reset the linear output flag and the simulation time
117 ptr->_on_linear_residual = false;
118 }
119
120 // Done
121 return (PetscErrorCode)0;
122}
const ExecFlagType EXEC_LINEAR
Definition Moose.C:31
PetscOutput * _petsc_output
Definition PetscOutput.h:23
Adds the ability to output on every nonlinear and/or linear residual.
Definition PetscOutput.h:42
Real _linear_time
Psuedo linear time.
auto norm(const T &a)

Referenced by PetscOutput::solveSetup().

◆ petscNonlinearOutput()

PetscErrorCode PetscOutputInterface::petscNonlinearOutput ( SNES  ,
PetscInt  its,
PetscReal  fnorm,
void *  void_ptr 
)
staticprotectedinherited

Performs the output on non-linear iterations This is the monitor method that PETSc will call on non-linear iterations.

This is one of three locations where we explicitly flush the output buffers during a simulation: PetscOutput::petscNonlinearOutput() PetscOutput::petscLinearOutput() OutputWarehouse::outputStep()

All other Console output should be using newlines to avoid covering buffer errors and to avoid excessive I/O. This call is necessary. In the PETSc callback the context bypasses the OutputWarehouse.

Definition at line 26 of file PetscOutput.C.

27{
28 // Get the primary outputter object
29 PetscOutput * primary_ptr = static_cast<PetscOutput *>(void_ptr);
30
31 // loop over all interface objects
32 for (const auto poi_ptr : primary_ptr->getMooseApp().getInterfaceObjects<PetscOutputInterface>())
33 {
34 auto ptr = poi_ptr->_petsc_output;
35
36 // check time
37 if (!ptr->inNonlinearTimeWindow())
38 continue;
39
40 // Update the pseudo times
41 ptr->_nonlinear_time += ptr->_nonlinear_dt;
42 ptr->_linear_time = ptr->_nonlinear_time;
43
44 // Set the current norm and iteration number
45 ptr->_norm = norm;
46 ptr->_nonlinear_iter = its;
47
48 // Set the flag indicating that output is occurring on the non-linear residual
49 ptr->_on_nonlinear_residual = true;
50
51 // Perform the output
52 ptr->outputStep(EXEC_NONLINEAR);
53
65 ptr->_app.getOutputWarehouse().flushConsoleBuffer();
66
67 // Reset the non-linear output flag and the simulation time
68 ptr->_on_nonlinear_residual = false;
69 }
70
71 // Done
72 return (PetscErrorCode)0;
73}
const ExecFlagType EXEC_NONLINEAR
Definition Moose.C:33
Real _nonlinear_time
The psuedo non-linear time.

Referenced by PetscOutput::solveSetup().

◆ possiblyCheckHasReporter()

template<typename T >
void ReporterInterface::possiblyCheckHasReporter ( const ReporterName reporter_name,
const std::string &  param_name = "" 
) const
privateinherited

Helpers for "possibly" checking if a Reporter value exists.

This is only able to check for existance after all Reporters have been added (after the task creating them has been called). If called before said task, this will do nothing, hence the "possibly". This allows us to have errors reported directly by the object requesting the Reporter instead of through a system with less context.

Definition at line 211 of file ReporterInterface.h.

213{
214 if (reportersAdded() && !hasReporterValueByName<T>(reporter_name))
215 {
216 std::stringstream oss;
217 oss << "A Reporter value with the name \"" << reporter_name << "\" and type \""
218 << MooseUtils::prettyCppType<T>() << "\" was not found.";
219
220 if (_ri_params.isParamValid(param_name))
221 _ri_moose_object.paramError(param_name, oss.str());
222 else
223 _ri_moose_object.mooseError(oss.str());
224 }
225}

◆ possiblyCheckHasVectorPostprocessor()

void VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessor ( const std::string &  param_name,
const std::string &  vector_name 
) const
privateinherited

Helpers for "possibly" checking if a vpp exists.

This is only able to check for existance after all vpps have been added (after the task creating them has been called). If called before said task, this will do nothing, hence the "possibly". This allows us to have errors reported directly by the object requesting the vpp instead of through a system with less context.

Definition at line 241 of file VectorPostprocessorInterface.C.

243{
244 // Can't do checking if vpps have not been added
246 return;
247
248 if (!hasVectorPostprocessor(param_name))
249 _vpi_moose_object.paramError(param_name,
250 "A VectorPostprocessor with the name \"",
251 getVectorPostprocessorName(param_name),
252 "\" was not found.");
253 if (!hasVectorPostprocessor(param_name, vector_name))
254 _vpi_moose_object.paramError(param_name,
255 "The VectorPostprocessor \"",
256 getVectorPostprocessorName(param_name),
257 "\" does not have a vector named \"",
258 vector_name,
259 "\".");
260}
bool hasVectorPostprocessor(const std::string &param_name, const std::string &vector_name) const
Determine if the VectorPostprocessor data exists by parameter.

Referenced by VectorPostprocessorInterface::getScatterVectorPostprocessorValue(), VectorPostprocessorInterface::getScatterVectorPostprocessorValueOld(), VectorPostprocessorInterface::getVectorPostprocessorValue(), VectorPostprocessorInterface::getVectorPostprocessorValue(), VectorPostprocessorInterface::getVectorPostprocessorValueOld(), and VectorPostprocessorInterface::getVectorPostprocessorValueOld().

◆ possiblyCheckHasVectorPostprocessorByName()

void VectorPostprocessorInterface::possiblyCheckHasVectorPostprocessorByName ( const VectorPostprocessorName &  name,
const std::string &  vector_name 
) const
privateinherited

Definition at line 263 of file VectorPostprocessorInterface.C.

265{
266 // Can't do checking if vpps have not been added
268 return;
269
272 "A VectorPostprocessor with the name \"", name, "\" was not found.");
273 if (!hasVectorPostprocessorByName(name, vector_name))
274 _vpi_moose_object.mooseError("The VectorPostprocessor \"",
275 name,
276 "\" does not have a vector named \"",
277 vector_name,
278 "\".");
279}

Referenced by VectorPostprocessorInterface::getVectorPostprocessorByNameHelper(), and VectorPostprocessorInterface::getVectorPostprocessorContextByNameHelper().

◆ postprocessorsAdded()

bool PostprocessorInterface::postprocessorsAdded ( ) const
privateinherited
Returns
True if all pps have been added (the task associated with adding them is complete)

Definition at line 274 of file PostprocessorInterface.C.

275{
276 return _ppi_feproblem.getMooseApp().actionWarehouse().isTaskComplete("add_postprocessor");
277}
bool isTaskComplete(const std::string &task) const
ActionWarehouse & actionWarehouse()
Return a writable reference to the ActionWarehouse associated with this app.
Definition MooseApp.h:217

Referenced by PostprocessorInterface::getPostprocessorValueByNameInternal(), PostprocessorInterface::getPostprocessorValueInternal(), PostprocessorInterface::hasPostprocessor(), and PostprocessorInterface::hasPostprocessorByName().

◆ queryParam()

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

Query a parameter for the object.

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

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

Definition at line 413 of file MooseBase.h.

414{
415 return _pars.queryParam<T>(name);
416}
const T * queryParam(const std::string &name) const
Query a parameter.

Referenced by MFEMExecutedObject::getRequestedItems(), and MFEMGeometricMultigridSolver::MFEMGeometricMultigridSolver().

◆ registerInvalidSolutionInternal()

InvalidSolutionID SolutionInvalidInterface::registerInvalidSolutionInternal ( const std::string &  message,
const bool  warning 
) const
protectedinherited

Definition at line 55 of file SolutionInvalidInterface.C.

57{
59 _si_moose_base.type(), message, warning);
60}
InvalidSolutionID registerInvalidity(const std::string &object_type, const std::string &message, const bool warning)
Call to register an invalid calculation.

◆ registerRestartableDataOnApp()

RestartableDataValue & Restartable::registerRestartableDataOnApp ( std::unique_ptr< RestartableDataValue data,
THREAD_ID  tid 
) const
privateinherited

Helper function for actually registering the restartable data.

Definition at line 63 of file Restartable.C.

65{
67 std::move(data), tid, _restartable_read_only, _metaname);
68}
RestartableDataValue & registerRestartableData(std::unique_ptr< RestartableDataValue > data, THREAD_ID tid, bool read_only, const RestartableDataMapName &metaname="")
Definition MooseApp.C:2449
const RestartableDataMapName _metaname
Restartable metadata name.
const bool _restartable_read_only
Flag for toggling read only status (see ReporterData)
MooseApp & _restartable_app
Reference to the application.

Referenced by Restartable::declareRestartableDataHelper().

◆ registerRestartableNameWithFilterOnApp()

void Restartable::registerRestartableNameWithFilterOnApp ( const std::string &  name,
Moose::RESTARTABLE_FILTER  filter 
)
privateinherited

Helper function for actually registering the restartable data.

Definition at line 71 of file Restartable.C.

73{
75}
void registerRestartableNameWithFilter(const std::string &name, Moose::RESTARTABLE_FILTER filter)
NOTE: This is an internal function meant for MOOSE use only!
Definition MooseApp.C:1701

Referenced by Restartable::declareRecoverableData().

◆ registerTimedSection() [1/2]

PerfID PerfGraphInterface::registerTimedSection ( const std::string &  section_name,
const unsigned int  level 
) const
protectedinherited

Call to register a named section for timing.

Parameters
section_nameThe name of the code section to be timed
levelThe importance of the timer - lower is more important (0 will always come out)
Returns
The ID of the section - use when starting timing

Definition at line 61 of file PerfGraphInterface.C.

63{
64 const auto timed_section_name = timedSectionName(section_name);
65 if (!moose::internal::getPerfGraphRegistry().sectionExists(timed_section_name))
66 return moose::internal::getPerfGraphRegistry().registerSection(timed_section_name, level);
67 else
68 return moose::internal::getPerfGraphRegistry().sectionID(timed_section_name);
69}
std::string timedSectionName(const std::string &section_name) const
PerfID sectionID(const std::string &section_name) const
Given a name return the PerfID @section_name The name of the section.
PerfID registerSection(const std::string &section_name, const unsigned int level)
Call to register a named section for timing.
PerfGraphRegistry & getPerfGraphRegistry()
Get the global PerfGraphRegistry singleton.

◆ registerTimedSection() [2/2]

PerfID PerfGraphInterface::registerTimedSection ( const std::string &  section_name,
const unsigned int  level,
const std::string &  live_message,
const bool  print_dots = true 
) const
protectedinherited

Call to register a named section for timing.

Parameters
section_nameThe name of the code section to be timed
levelThe importance of the timer - lower is more important (0 will always come out)
live_messageThe message to be printed to the screen during execution
print_dotsWhether or not progress dots should be printed for this section
Returns
The ID of the section - use when starting timing

Definition at line 72 of file PerfGraphInterface.C.

76{
77 const auto timed_section_name = timedSectionName(section_name);
78 if (!moose::internal::getPerfGraphRegistry().sectionExists(timed_section_name))
80 timedSectionName(section_name), level, live_message, print_dots);
81 else
82 return moose::internal::getPerfGraphRegistry().sectionID(timed_section_name);
83}

◆ reportersAdded()

bool ReporterInterface::reportersAdded ( ) const
privateinherited
Returns
True if all Reporters have been added (the task associated with adding them is complete)

Definition at line 92 of file ReporterInterface.C.

93{
95}
FEProblemBase & _ri_fe_problem_base
Provides access to FEProblemBase::getReporterData.

Referenced by ReporterInterface::getReporterContextBaseByName(), ReporterInterface::hasReporterValue(), ReporterInterface::hasReporterValueByName(), and ReporterInterface::possiblyCheckHasReporter().

◆ residualSetup()

void SetupInterface::residualSetup ( )
virtualinherited

◆ 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 78 of file Restartable.C.

79{
80 return _restartable_system_name + "/" + _restartable_name + "/" + data_name;
81}
const std::string _restartable_system_name
The system name this object is in.

Referenced by Restartable::declareRecoverableData(), and Restartable::declareRestartableDataHelper().

◆ setFileBase()

void FileOutput::setFileBase ( const std::string &  file_base)
inherited

Sets the file base string if the 'file_base' parameter is not set.

Parameters
file_baseThe new file base string

Definition at line 119 of file FileOutput.C.

120{
121 if (!isParamValid("file_base"))
122 setFileBaseInternal(file_base);
123}
virtual void setFileBaseInternal(const std::string &file_base)
Internal function that sets the file_base.
Definition FileOutput.C:126

◆ setFileBaseInternal()

void SampledOutput::setFileBaseInternal ( const std::string &  file_base)
overrideprotectedvirtualinherited

Appends the base class's file base string.

Reimplemented from FileOutput.

Definition at line 533 of file SampledOutput.C.

534{
536 // ** DEPRECATED SUPPORT **
537 if (getParam<bool>("append_oversample"))
538 _file_base += "_oversample";
539}

◆ setFileNumber()

void FileOutput::setFileNumber ( unsigned int  num)
inherited

Sets the file number manually.

This method was implemented for the MultiApp system, particularly when reseting an application and a new output file is desired after the reset.

Definition at line 174 of file FileOutput.C.

175{
176 _file_num = num;
177}

Referenced by OutputWarehouse::setFileNumbers().

◆ setWallTimeIntervalFromCommandLineParam()

void Output::setWallTimeIntervalFromCommandLineParam ( )
protectedinherited

Function to set the wall time interval based on value of command line parameter (used for testing only).

Parameters
cli_param_nameThe name of the command line parameter to set the wall time interval to

Definition at line 336 of file Output.C.

337{
338 if (_app.isParamValid("output_wall_time_interval"))
339 {
340 _wall_time_interval = _app.getParam<Real>("output_wall_time_interval");
341
342 // If default value of _wall_time_interval was just overriden and user did not
343 // explicitly specify _time_step_interval, override default value of
344 // _time_step_interval so output does not occur after every time step
346 _time_step_interval = std::numeric_limits<unsigned int>::max();
347 }
348}
const bool _time_step_interval_set_by_addparam
Whether time step interval is set by AddParam.
Definition Output.h:232

Referenced by Checkpoint::Checkpoint().

◆ shouldOutput()

bool AdvancedOutput::shouldOutput ( )
protectedvirtualinherited

Handles logic for determining if a step should be output.

Returns
True if a call if output should be performed

Reimplemented from FileOutput.

Definition at line 267 of file AdvancedOutput.C.

268{
269 if (!checkFilename())
270 return false;
271
273 return true;
274 else
275 return Output::shouldOutput();
276}
virtual bool hasOutput()
Returns true if any of the other has methods return true.
bool checkFilename()
Checks the filename for output Checks the output against the 'output_if_base_contians' list.
Definition FileOutput.C:88
virtual bool shouldOutput()
Handles logic for determining if a step should be output.
Definition Output.C:272

Referenced by SampledOutput::outputStep().

◆ solveSetup()

void PetscOutput::solveSetup ( )
overrideprivatevirtualinherited

Internal setup function that executes at the beginning of the time step.

Reimplemented from Output.

Definition at line 218 of file PetscOutput.C.

219{
220 // Update the pseudo times
221 _nonlinear_time = _time_old; // non-linear time starts with the previous time step
222 if (_dt != 0)
223 // set the pseudo non-linear timestep as fraction
224 // of real timestep for transient executioners
226 else
227 // set the pseudo non-linear timestep for steady
228 // executioners (here _dt==0)
230
231 _linear_dt = _nonlinear_dt / _linear_dt_divisor; // set the pseudo linear timestep
232
233 // only the first PetscOutput object registers a DM monitor for linear and nonlinear
234 // all other PetscOutput objects are dispatched from that one monitor (per app).
236 return;
237
239 const auto actions = awh.getActions<CommonOutputAction>();
240 mooseAssert(actions.size() <= 1, "Should not be more than one CommonOutputAction");
241 const Action * common = actions.empty() ? nullptr : *actions.begin();
242
243 // Extract the non-linear and linear solvers from PETSc
245 SNES snes = nl.getSNES();
246 KSP ksp;
247 LibmeshPetscCallA(_communicator.get(), SNESGetKSP(snes, &ksp));
248
249 // Set the PETSc monitor functions (register the nonlinear callback so that linear outputs
250 // get an updated nonlinear iteration number)
251 // Not every Output should register its own DM monitor! Just register one each of nonlinear
252 // and linear and dispatch all Outputs from there!
253 if (common && common->getParam<bool>("print_nonlinear_residuals"))
254 LibmeshPetscCallA(_communicator.get(),
255 SNESMonitorSet(snes, petscNonlinearOutput, this, LIBMESH_PETSC_NULLPTR));
256 if (common && common->getParam<bool>("print_linear_residuals"))
257 LibmeshPetscCallA(_communicator.get(),
258 KSPMonitorSet(ksp, petscLinearOutput, this, LIBMESH_PETSC_NULLPTR));
259}
Storage for action instances.
std::vector< const T * > getActions()
Retrieve all actions in a specific type ordered by their names.
Base class for actions.
Definition Action.h:38
Meta-action for creating common output object parameters This action serves two purpose,...
NonlinearSystemBase & currentNonlinearSystem()
const std::vector< T * > & getInterfaceObjects() const
Gets the registered interface objects for a given interface.
Definition MooseApp.h:1801
Nonlinear system to be solved.
virtual SNES getSNES()=0
Real & _time_old
The old time.
Definition Output.h:217
static PetscErrorCode petscLinearOutput(KSP, PetscInt its, PetscReal fnorm, void *void_ptr)
Performs the output onlinear iterations This is the monitor method that PETSc will call on linear ite...
Definition PetscOutput.C:76
static PetscErrorCode petscNonlinearOutput(SNES, PetscInt its, PetscReal fnorm, void *void_ptr)
Performs the output on non-linear iterations This is the monitor method that PETSc will call on non-l...
Definition PetscOutput.C:26
Real _nonlinear_dt
The pseuedo non-linear time step.
Real _nonlinear_dt_divisor
Pseudo non-linear timestep divisor.
Real _linear_dt
Psuedo linear time step.
Real _linear_dt_divisor
Pseudo linear timestep divisor.

◆ subdomainSetup()

void SetupInterface::subdomainSetup ( )
virtualinherited

Gets called when the subdomain changes (i.e.

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

Reimplemented in 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}

◆ supportsMaterialPropertyOutput()

bool XDA::supportsMaterialPropertyOutput ( ) const
inlineoverridevirtual

A virtual function that stores whether output type supports material output.

Defaults to false, if a particular output type supports material output it can be overridden in the child class.

Reimplemented from Output.

Definition at line 28 of file XDA.h.

28{ return true; }

◆ time()

Real PetscOutput::time ( )
overridevirtualinherited

Get the output time.

This outputter enables the ability to perform output on the nonlinear and linear iterations performed by PETSc. To separate theses outputs within the output a pseudo time is defined, this function provides this time and it should be used in place of _time from Outputter.

Reimplemented from Output.

Definition at line 262 of file PetscOutput.C.

263{
265 return _nonlinear_time;
266 else if (_on_linear_residual)
267 return _linear_time;
268 else
269 return Output::time();
270}
virtual Real time()
Get the output time.
Definition Output.C:351
bool _on_linear_residual
True if current output calls is on the linear residual (used by time())
Definition PetscOutput.h:90
bool _on_nonlinear_residual
True if current output call is on the non-linear residual (used by time())
Definition PetscOutput.h:93

Referenced by PetscOutput::getOutputTime(), MFEMDataCollection::output(), and FileOutput::setFileBaseInternal().

◆ timedSectionName()

std::string PerfGraphInterface::timedSectionName ( const std::string &  section_name) const
protectedinherited
Returns
The name of the timed section with the name section_name.

Optionally adds a prefix if one is defined.

Definition at line 55 of file PerfGraphInterface.C.

56{
57 return _prefix.empty() ? "" : (_prefix + "::") + section_name;
58}
const std::string _prefix
A prefix to use for all sections.

Referenced by PerfGraphInterface::registerTimedSection(), and PerfGraphInterface::registerTimedSection().

◆ timeOld()

Real Output::timeOld ( )
virtualinherited

Get the old output time.

Returns
The old output time, which may be different than the simulation time
See also
time()

Definition at line 360 of file Output.C.

361{
362 if (_transient)
363 return _time_old;
364 else
365 return _t_step - 1;
366}

Referenced by Console::writeTimestepInformation().

◆ timeStep()

int Output::timeStep ( )
virtualinherited

Get the current time step.

Definition at line 387 of file Output.C.

388{
389 return _t_step;
390}

Referenced by Checkpoint::filename(), JSONOutput::filename(), CSV::getVectorPostprocessorFileName(), Checkpoint::shouldOutput(), and Console::writeTimestepInformation().

◆ 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 93 of file MooseBase.h.

94 {
95 mooseAssert(_type.size(), "Empty type");
96 return _type;
97 }
const std::string & _type
The type of this class.
Definition MooseBase.h:378

Referenced by CreateProblemDefaultAction::act(), MaterialDerivativeTestAction::act(), MaterialOutputAction::act(), SetupDebugAction::act(), FEProblemBase::addAuxArrayVariable(), FEProblemBase::addAuxScalarVariable(), FEProblemBase::addAuxVariable(), FEProblemBase::addConvergence(), FEProblemBase::addDistribution(), DistributedRectilinearMeshGenerator::addElement(), DistributedRectilinearMeshGenerator::addElement(), MooseApp::addExecutor(), MooseApp::addExecutorParams(), MFEMProblem::addFESpace(), MFEMProblem::addFESpaceHierarchy(), FEProblemBase::addFunction(), MFEMProblem::addFunction(), FEProblemBase::addMeshDivision(), MooseApp::addMeshGenerator(), MeshGenerator::addMeshSubgenerator(), MeshGenerator::addMeshSubgenerator(), FEProblemBase::addObject(), DistributedRectilinearMeshGenerator::addPoint(), MFEMProblem::addPostprocessor(), FEProblemBase::addPredictor(), CreateDisplacedProblemAction::addProxyRelationshipManagers(), MFEMProblem::addQuadratureFunction(), FEProblemBase::addReporter(), FEProblemBase::addSampler(), WebServerControl::addServerActionsInternal(), FEProblemBase::addTimeIntegrator(), MFEMProblem::addVectorPostprocessor(), SubProblem::addVectorTag(), DisplacedProblem::addVectorTag(), FEProblemBase::advanceMultiApps(), MooseApp::appendMeshGenerator(), AuxKernelBase::AuxKernelBase(), FEProblemBase::backupMultiApps(), BatchMeshGeneratorAction::BatchMeshGeneratorAction(), BoundaryPreservedMarker::BoundaryPreservedMarker(), DistributedRectilinearMeshGenerator::buildCube(), MooseMesh::buildHRefinementAndCoarseningMaps(), MooseMesh::buildLowerDMesh(), MooseMesh::buildPRefinementAndCoarseningMaps(), PhysicsBase::checkComponentType(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), ActionComponent::checkRequiredTasks(), PhysicsBase::checkRequiredTasks(), FEProblemBase::checkUserObjectNameCollision(), MFEMMultiAppTransfer::checkValidTransferProblemTypes(), MeshInfo::CombinedInfos< ElemInfoMap, ElemInfoItems >::CombinedInfos(), ElemElemConstraint::computeElemNeighJacobian(), ArrayDGKernel::computeElemNeighJacobian(), DGKernel::computeElemNeighJacobian(), ADDGKernel::computeElemNeighJacobian(), ElemElemConstraint::computeElemNeighResidual(), ArrayDGKernel::computeElemNeighResidual(), DGKernel::computeElemNeighResidual(), ADDGKernel::computeElemNeighResidual(), ArrayDGLowerDKernel::computeLowerDJacobian(), DGLowerDKernel::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDJacobian(), LowerDIntegratedBC::computeLowerDJacobian(), ArrayLowerDIntegratedBC::computeLowerDOffDiagJacobian(), LowerDIntegratedBC::computeLowerDOffDiagJacobian(), ArrayHFEMDirichletBC::computeLowerDQpJacobian(), HFEMDirichletBC::computeLowerDQpJacobian(), ArrayHFEMDiffusion::computeLowerDQpJacobian(), HFEMDiffusion::computeLowerDQpJacobian(), ArrayLowerDIntegratedBC::computeLowerDQpOffDiagJacobian(), ArrayDGLowerDKernel::computeLowerDQpOffDiagJacobian(), ArrayHFEMDirichletBC::computeLowerDQpOffDiagJacobian(), HFEMDirichletBC::computeLowerDQpOffDiagJacobian(), FEProblemBase::computeMultiAppsDT(), ArrayDGKernel::computeOffDiagElemNeighJacobian(), DGKernel::computeOffDiagElemNeighJacobian(), ADDGKernel::computeOffDiagElemNeighJacobian(), ArrayDGLowerDKernel::computeOffDiagLowerDJacobian(), DGLowerDKernel::computeOffDiagLowerDJacobian(), ScalarKernel::computeQpJacobian(), CoupledTiedValueConstraint::computeQpJacobian(), EqualValueBoundaryConstraint::computeQpJacobian(), LinearNodalConstraint::computeQpJacobian(), TiedValueConstraint::computeQpJacobian(), DGConvection::computeQpJacobian(), ArrayDGDiffusion::computeQpJacobian(), DGDiffusion::computeQpJacobian(), InterfaceDiffusion::computeQpJacobian(), InterfaceReaction::computeQpJacobian(), CoupledTiedValueConstraint::computeQpOffDiagJacobian(), ArrayDGKernel::computeQpOffDiagJacobian(), HFEMTestJump::computeQpOffDiagJacobian(), HFEMTrialJump::computeQpOffDiagJacobian(), ScalarKernel::computeQpResidual(), CoupledTiedValueConstraint::computeQpResidual(), EqualValueBoundaryConstraint::computeQpResidual(), LinearNodalConstraint::computeQpResidual(), TiedValueConstraint::computeQpResidual(), DGConvection::computeQpResidual(), ADDGAdvection::computeQpResidual(), ADDGDiffusion::computeQpResidual(), DGDiffusion::computeQpResidual(), HFEMDiffusion::computeQpResidual(), HFEMTestJump::computeQpResidual(), HFEMTrialJump::computeQpResidual(), ADMatInterfaceReaction::computeQpResidual(), InterfaceDiffusion::computeQpResidual(), InterfaceReaction::computeQpResidual(), ArrayDGDiffusion::computeQpResidual(), ArrayHFEMDiffusion::computeQpResidual(), FEProblemBase::computeSystems(), FEProblemBase::computeUserObjectByName(), FEProblemBase::computeUserObjects(), FEProblemBase::computeUserObjectsInternal(), FEProblemBase::createQRules(), DisplacedProblem::createQRules(), MooseApp::createRecoverablePerfGraph(), MeshGenerator::declareMeshProperty(), DumpObjectsProblem::deduceNecessaryParameters(), DumpObjectsProblem::dumpObjectHelper(), FEProblemBase::duplicateVariableCheck(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), FEProblemBase::execTransfers(), SteadyBase::execute(), WebServerControl::execute(), ActionWarehouse::executeActionsWithAction(), FEProblemBase::finishMultiAppStep(), FVScalarLagrangeMultiplierInterface::FVScalarLagrangeMultiplierInterface(), Boundary2DDelaunayGenerator::General2DDelaunay(), SurfaceSubdomainsDelaunayRemesher::General2DDelaunay(), Boundary2DDelaunayGenerator::generate(), LowerDBlockFromSidesetGenerator::generate(), SubdomainPerElementGenerator::generate(), PatternedMeshGenerator::generate(), MeshGenerator::generateInternal(), MeshGenerator::generateInternalCSG(), MultiAppTransfer::getAppInfo(), TransfiniteMeshGenerator::getEdge(), ElementGenerator::getElemType(), FEProblemBase::getMaterial(), FEProblemBase::getMaterialData(), FEProblemBase::getMaterialPropertyStorageConsumers(), MaterialOutputAction::getParams(), ReporterData::getReporterInfo(), MooseServer::getSyntaxMetadata(), FEProblemBase::getTransfers(), FEProblemBase::getUOQuery(), SubProblem::getVectorTags(), DisplacedProblem::getVectorTags(), CommonOutputAction::hasConsole(), FEProblemBase::hasMultiApps(), AdvancedOutput::hasOutput(), FEProblemBase::incrementMultiAppTStep(), NEML2Action::inferMOOSEIOType(), AdvancedOutput::initAvailableLists(), FunctorPositions::initialize(), FunctorTimes::initialize(), LinearFVAdvection::initialSetup(), LinearFVAnisotropicDiffusion::initialSetup(), LinearFVDiffusion::initialSetup(), MultiAppConservativeTransfer::initialSetup(), ArrayDGDiffusion::initQpResidual(), AdvancedOutput::initShowHideLists(), RelationshipManager::isType(), FEProblemBase::logAdd(), MaterialFunctorConverterTempl< T >::MaterialFunctorConverterTempl(), MFEMProblem::mesh(), MooseObject::MooseObject(), SubProblem::numVectorTags(), DisplacedProblem::numVectorTags(), AdvancedOutput::output(), Console::output(), ConsoleUtils::outputExecutionInformation(), Output::outputStep(), SampledOutput::outputStep(), FEProblemBase::outputStep(), MooseServer::parseDocumentForDiagnostics(), MooseMesh::prepare(), ProjectedStatefulMaterialStorageAction::processProperty(), MooseApp::recursivelyCreateExecutors(), SolutionInvalidInterface::registerInvalidSolutionInternal(), FEProblemBase::restoreMultiApps(), MeshRepairGenerator::separateSubdomainsByElementType(), FEProblemBase::setCoupling(), MooseApp::setupOptions(), ExplicitRK2::solve(), ExplicitTVDRK2::solve(), Reporter::store(), MooseBase::typeAndName(), AuxScalarKernel::uOld(), ScalarKernelBase::uOld(), DisplacedProblem::updateGeomSearch(), FEProblemBase::updateGeomSearch(), UserObjectInterface::userObjectType(), and AdvancedOutput::wantOutput().

◆ 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 57 of file MooseBase.C.

58{
59 return type() + std::string(" \"") + name() + std::string("\"");
60}

Referenced by MaterialPropertyStorage::addProperty(), FEProblemBase::checkUserObjectNameCollision(), MeshGeneratorSystem::dataDrivenError(), ReporterContext< T >::finalize(), ReporterData::getReporterInfo(), MFEMSamplerBase::initialSetup(), MFEMVariableSamplerBase::initialSetup(), WebServerControl::outputMessage(), and Action::timedAct().

◆ uniqueName()

MooseObjectName MooseBase::uniqueName ( ) const
inherited
Returns
The unique name for accessing input parameters of this object in the InputParameterWarehouse

Definition at line 69 of file MooseBase.C.

70{
71 if (!_pars.have_parameter<std::string>(unique_name_param))
72 mooseError("uniqueName(): Object does not have a unique name");
73 return MooseObjectName(_pars.get<std::string>(unique_name_param));
74}
static const std::string unique_name_param
The name of the parameter that contains the unique object name.
Definition MooseBase.h:57
A class for storing the names of MooseObject by tag and object name.

Referenced by MooseBase::connectControllableParams(), and Action::uniqueActionName().

◆ uniqueParameterName()

MooseObjectParameterName MooseBase::uniqueParameterName ( const std::string &  parameter_name) const
inherited
Returns
The unique parameter name of a valid parameter of this object for accessing parameter controls

Definition at line 63 of file MooseBase.C.

64{
65 return MooseObjectParameterName(getBase(), name(), parameter_name);
66}
const std::string & getBase() const
Definition MooseBase.h:147

◆ updateSample()

void SampledOutput::updateSample ( )
protectedvirtualinherited

Performs the update of the solution vector for the sample/re-positioned mesh.

Definition at line 296 of file SampledOutput.C.

297{
298 // Do nothing if oversampling and changing position are not enabled
300 return;
301
302 // We need the mesh functions to extend the whole domain so we serialize both the mesh and the
303 // solution. We need this because the partitioning of the sampling mesh may not match the
304 // partitioning of the source mesh
305 if (_serialize)
306 {
309 }
310
311 // Get a reference to actual equation system
312 EquationSystems & source_es = _problem_ptr->es();
313 const auto num_systems = source_es.n_systems();
314
315 // Loop through each system
316 for (const auto sys_num : make_range(num_systems))
317 {
318 if (!_mesh_functions[sys_num].empty())
319 {
320 // Get references to the source and destination systems
321 System & source_sys = source_es.get_system(sys_num);
322 System & dest_sys = _sampling_es->get_system(sys_num);
323
324 // Update the solution for the sampling mesh
325 if (_serialize)
326 {
328 _serialized_solution->init(source_sys.n_dofs(), false, SERIAL);
329 // Pull down a full copy of this vector on every processor so we can get values in
330 // parallel
331 source_sys.solution->localize(*_serialized_solution);
332 }
333
334 // Update the mesh functions
335 for (const auto var_num : index_range(_mesh_functions[sys_num]))
336 {
337 const auto original_var_num = _variable_numbers_in_system[sys_num][var_num];
338
339 // If the mesh has changed, the MeshFunctions need to be re-built, otherwise simply clear
340 // it for re-initialization
341 // TODO: inherit from MeshChangedInterface and rebuild mesh functions on meshChanged()
342 if (!_mesh_functions[sys_num][var_num] || _sampling_mesh_changed)
343 _mesh_functions[sys_num][var_num] = std::make_unique<MeshFunction>(
344 source_es,
345 _serialize ? *_serialized_solution : *source_sys.solution,
346 source_sys.get_dof_map(),
347 original_var_num);
348 else
349 _mesh_functions[sys_num][var_num]->clear();
350
351 // Initialize the MeshFunctions for application to the sampled solution
352 _mesh_functions[sys_num][var_num]->init();
353
354 // Mesh functions are still defined on the original mesh, which might not fully overlap
355 // with the sampling mesh. We don't want to error with a libMesh assert on the out of mesh
356 // mode
357 _mesh_functions[sys_num][var_num]->enable_out_of_mesh_mode(-1e6);
358 }
359
360 // Fill solution vectors by evaluating mesh functions on sampling mesh
361 for (const auto var_num : index_range(_mesh_functions[sys_num]))
362 {
363 // we serialized the mesh and the solution vector, we might as well just do this only on
364 // processor 0.
365 if (_serialize && processor_id() > 0)
366 break;
367
368 const auto original_var_num = _variable_numbers_in_system[sys_num][var_num];
369 const FEType & fe_type = source_sys.variable_type(original_var_num);
370 // we use the original variable block restriction for sampling
371 const auto * var_blocks = &source_sys.variable(original_var_num).active_subdomains();
372 // NOTE: if we have overlapping domains between the sampling mesh and the source mesh
373 // we would get a value from the source mesh domain. We could further restrict this
374 // block restriction with the sampling mesh block restriction to prevent this.
375
376 // Loop over the mesh, nodes for nodal data, elements for element data
377 if (isSampledAtNodes(fe_type))
378 {
379 for (const auto & node : (_serialize ? _mesh_ptr->getMesh().node_ptr_range()
380 : _mesh_ptr->getMesh().local_node_ptr_range()))
381 {
382 // Avoid working on ghosted dofs
383 if (node->n_dofs(sys_num, var_num) &&
384 (_serialize || processor_id() == node->processor_id()))
385 {
386 // the node has to be within the domain of the mesh function
388 if (var_blocks->size())
389 (*_mesh_functions[sys_num][var_num])(
390 *node - _position, /*time*/ 0., value, var_blocks);
391 else
392 value[0] = (*_mesh_functions[sys_num][var_num])(*node - _position);
393
394 if (value[0] != -1e6)
395 dest_sys.solution->set(node->dof_number(sys_num, var_num, /*comp=*/0), value[0]);
396 else
397 mooseDoOnce(mooseWarning(
398 "Sampling at location ",
399 *node - _position,
400 " by process ",
401 std::to_string(processor_id()),
402 " was outside the problem mesh.\nThis message will not be repeated"));
403 }
404 }
405 }
406 else
407 {
408 const auto elem_range = _serialize
409 ? _mesh_ptr->getMesh().active_element_ptr_range()
410 : _mesh_ptr->getMesh().active_local_element_ptr_range();
411 for (const auto & elem : elem_range)
412 {
413 if (elem->n_dofs(sys_num, var_num) &&
414 (_serialize || processor_id() == elem->processor_id()))
415 {
417 if (var_blocks->size())
418 (*_mesh_functions[sys_num][var_num])(
419 elem->true_centroid() - _position, /*time*/ 0., value, var_blocks);
420 else
421 value[0] = (*_mesh_functions[sys_num][var_num])(elem->true_centroid() - _position);
422
423 if (value[0] != -1e6)
424 dest_sys.solution->set(elem->dof_number(sys_num, var_num, /*comp=*/0), value[0]);
425 else
426 mooseDoOnce(mooseWarning(
427 "Sampling at location ",
428 elem->true_centroid() - _position,
429 " was outside the problem mesh.\nThis message will not be repeated."));
430 }
431 }
432 }
433 }
434
435 // We modified the solution vector directly, we have to close it
436 dest_sys.solution->close();
437 }
438 }
439
440 // Set this to false so that new output files are not created, since the sampling mesh
441 // doesn't actually change
443}
virtual void gather_to_zero()
processor_id_type processor_id() const
const Variable & variable(unsigned int var) const
dof_id_type n_dofs() const
const FEType & variable_type(const unsigned int i) const
virtual void clear()
std::unique_ptr< NumericVector< Number > > solution
const std::set< subdomain_id_type > & active_subdomains() const
auto index_range(const T &sizable)

Referenced by SampledOutput::outputStep().

◆ validParams()

InputParameters XDA::validParams ( )
static

Definition at line 25 of file XDA.C.

26{
27 // Get the base class parameters
29
30 // Add description for the XDA class
31 params.addClassDescription("Object for outputting data in the XDA/XDR format.");
32
33 /* Set a private parameter for controlling the output type (XDR = binary), the value
34 of this parameter is set by the AddOutputAction*/
35 params.addPrivateParam<bool>("_binary", false);
36
37 // Return the InputParameters
38 return params;
39}
void addPrivateParam(const std::string &name, const T &value)
These method add a parameter to the InputParameters object which can be retrieved like any other para...
void addClassDescription(const std::string &doc_string)
This method adds a description of the class that will be displayed in the input file syntax dump.
static InputParameters validParams()

◆ vectorPostprocessorsAdded()

bool VectorPostprocessorInterface::vectorPostprocessorsAdded ( ) const
privateinherited

◆ wantOutput()

bool AdvancedOutput::wantOutput ( const std::string &  name,
const ExecFlagType type 
)
privateinherited

Handles logic for determining if a step should be output.

Returns
True if a call if output should be performed

Definition at line 343 of file AdvancedOutput.C.

344{
345 // Ignore EXEC_FORCED for system information and input, there is no reason to force this
346 if (type == EXEC_FORCED && (name == "system_information" || name == "input"))
347 return false;
348
349 // Do not output if the 'none' is contained by the execute_on
350 if (_advanced_execute_on.contains(name) && _advanced_execute_on[name].isValueSet("none"))
351 return false;
352
353 // Data output flag, true if data exists to be output
354 bool execute_data_flag = true;
355
356 // Set flag to false, if the OutputData exists and the output variable list is empty
357 std::map<std::string, OutputData>::const_iterator iter = _execute_data.find(name);
358 if (iter != _execute_data.end() && iter->second.output.empty())
359 execute_data_flag = false;
360
361 // Set flag to false, if the OutputOnWarehouse DOES NOT contain an entry
363 execute_data_flag = false;
364
365 // Force the output, if there is something to output and the time has not been output
366 if (type == EXEC_FORCED && execute_data_flag && _last_execute_time[name] != _time)
367 return true;
368
369 // Return true (output should occur) if three criteria are satisfied, else do not output:
370 // (1) The execute_data_flag = true (i.e, there is data to output)
371 // (2) The current output type is contained in the list of output execution types
372 // (3) The current execution time is "final" or "forced" and the data has not already been
373 // output
374 if (execute_data_flag && _advanced_execute_on[name].isValueSet(type) &&
376 return true;
377 else
378 return false;
379}
std::map< std::string, T >::iterator end()
std::map< std::string, T >::iterator find(const std::string &name)

Referenced by AdvancedOutput::hasOutput(), Console::initialSetup(), AdvancedOutput::output(), and Console::output().

Member Data Documentation

◆ _action_factory

ActionFactory& ParallelParamObject::_action_factory
protectedinherited

◆ _advanced_execute_on

OutputOnWarehouse Output::_advanced_execute_on
protectedinherited

◆ _allow_output

bool Output::_allow_output
protectedinherited

Flag for disabling output.

Definition at line 268 of file Output.h.

Referenced by Output::allowOutput(), Output::outputStep(), and SampledOutput::outputStep().

◆ _app

MooseApp& MooseBase::_app
protectedinherited

The MOOSE application this is associated with.

Definition at line 375 of file MooseBase.h.

Referenced by AB2PredictorCorrector::AB2PredictorCorrector(), FEProblemBase::acceptInvalidSolution(), FEProblemBase::addAnyRedistributers(), MeshGenerator::addChildMeshGenerator(), FEProblemBase::addMaterialHelper(), MeshGenerator::addMeshSubgenerator(), MeshGenerator::addMeshSubgenerator(), FEProblemBase::addOutput(), MeshGenerator::addParentMeshGenerator(), FEProblemBase::allowOutput(), AStableDirk4::AStableDirk4(), FileMesh::buildMesh(), MooseMesh::buildTypedMesh(), MooseMesh::cacheFaceInfoVariableOwnership(), MooseMesh::cacheFVElementalDoFs(), DefaultNonlinearConvergence::checkConvergence(), MeshGenerator::checkGetMesh(), FEProblemBase::checkICRestartError(), FEProblemBase::checkProblemIntegrity(), LibmeshPartitioner::clone(), BlockWeightedPartitioner::clone(), CopyMeshPartitioner::clone(), GridPartitioner::clone(), HierarchicalGridPartitioner::clone(), PetscExternalPartitioner::clone(), RandomPartitioner::clone(), SingleRankPartitioner::clone(), ElementPointNeighborLayers::clone(), ElementSideNeighborLayers::clone(), GhostAllPointNeighbors::clone(), GhostBoundary::clone(), GhostEverything::clone(), GhostHigherDLowerDPointNeighbors::clone(), GhostLowerDElems::clone(), GhostPrimaryFace::clone(), ProxyRelationshipManager::clone(), RedistributeProperties::clone(), SampledOutput::cloneMesh(), FEProblemBase::computeJacobianSys(), FEProblemBase::computeJacobianTags(), FEProblemBase::computeLinearSystemTags(), FEProblemBase::computeResidualAndJacobian(), FEProblemBase::computeResidualSys(), FEProblemBase::computeResidualTags(), Console::Console(), TimeStepper::constrainStep(), Control::Control(), CopyMeshPartitioner::CopyMeshPartitioner(), MultiApp::createApp(), MultiApp::createApps(), FEProblemBase::customSetup(), MeshGenerator::declareMeshProperty(), MeshGenerator::declareNullMeshName(), MooseMesh::determineUseDistributedMesh(), DumpObjectsProblem::dumpObjectHelper(), DumpObjectsProblem::DumpObjectsProblem(), DumpObjectsProblem::dumpVariableHelper(), EigenExecutionerBase::EigenExecutionerBase(), EigenKernel::EigenKernel(), PIDTransientControl::execute(), Eigenvalue::execute(), InversePowerMethod::execute(), NonlinearEigen::execute(), SteadyBase::execute(), TransientBase::execute(), MFEMSteady::execute(), PseudoTimestep::execute(), IterationInfo::execute(), EigenProblem::execute(), Executioner::Executioner(), Executioner::Executioner(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), FEProblemBase::FEProblemBase(), FileOutput::FileOutput(), NEML2Assembly::finalize(), ChangeOverFixedPointPostprocessor::finalize(), RadialAverage::finalize(), FixedPointSolve::FixedPointSolve(), FEProblemBase::forceOutput(), FullSolveMultiApp::FullSolveMultiApp(), FunctorSmootherTempl< T >::FunctorSmootherTempl(), FVAdvection::FVAdvection(), FileMeshGenerator::generate(), MeshGenerator::generateInternal(), MeshGenerator::generateInternalCSG(), MeshGenerator::getCSGBaseByName(), FEProblemBase::getExecutor(), MeshGenerator::getMeshByName(), NumFixedPointIterations::getValue(), NumRelationshipManagers::getValue(), GhostingUserObject::GhostingUserObject(), MooseMesh::init(), Eigenvalue::init(), InversePowerMethod::init(), NonlinearEigen::init(), TransientBase::init(), MFEMMesh::init(), FEProblemBase::init(), CompositionDT::init(), SubProblem::initialSetup(), PIDTransientControl::initialSetup(), RealFunctionControl::initialSetup(), TimePeriod::initialSetup(), EigenProblemSolve::initialSetup(), FEProblemSolve::initialSetup(), Console::initialSetup(), FEProblemBase::initialSetup(), AdvancedOutput::initOutputList(), FEProblemBase::initPetscOutputAndSomeSolverSettings(), EigenProblem::initPetscOutputAndSomeSolverSettings(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), FEProblemBase::meshChanged(), MeshGenerator::MeshGenerator(), MFEMProblemSolve::MFEMProblemSolve(), MooseMesh::MooseMesh(), MooseMesh::MooseMesh(), MooseObject::MooseObject(), MultiAppGeneralFieldTransfer::MultiAppGeneralFieldTransfer(), EigenExecutionerBase::normalizeSolution(), NumFailedTimeSteps::NumFailedTimeSteps(), Checkpoint::output(), Exodus::output(), Nemesis::output(), PerfGraphOutput::output(), Tecplot::output(), MortarNodalGeometryOutput::output(), ControlOutput::outputActiveObjects(), ControlOutput::outputChangedControls(), ControlOutput::outputControls(), Exodus::outputEmptyTimestep(), Console::outputInput(), Exodus::outputInput(), Exodus::outputNodalVariables(), JSONOutput::outputReporters(), Output::outputStep(), SampledOutput::outputStep(), FEProblemBase::outputStep(), Console::outputSystemInformation(), JSONOutput::outputSystemInformation(), OverlayMeshGenerator::OverlayMeshGenerator(), MultiApp::parentOutputPositionChanged(), TransientBase::preExecute(), FEProblemBase::projectSolution(), AnnularMesh::safeClone(), ConcentricCircleMesh::safeClone(), FileMesh::safeClone(), GeneratedMesh::safeClone(), ImageMesh::safeClone(), MeshGeneratorMesh::safeClone(), PatternedMesh::safeClone(), RinglebMesh::safeClone(), SpiralAnnularMesh::safeClone(), StitchedMesh::safeClone(), TiledMesh::safeClone(), MFEMMesh::safeClone(), MultiApp::setAppOutputFileBase(), FileOutput::setFileBaseInternal(), MeshGenerator::setMeshProperty(), MeshGenerator::setMeshPropertyHelper(), FEProblemBase::setRestartFile(), TransientMultiApp::setupApp(), TimeSequenceStepperBase::setupSequence(), TransientBase::setupTimeIntegrator(), Output::setWallTimeIntervalFromCommandLineParam(), SideSetExtruderGenerator::SideSetExtruderGenerator(), SolutionInvalidityReporter::SolutionInvalidityReporter(), FixedPointSolve::solve(), FEProblemBase::solve(), EigenProblem::solve(), FEProblemBase::solveLinearSystem(), PetscOutput::solveSetup(), FixedPointSolve::solveStep(), TransientMultiApp::solveStep(), FEProblemBase::subdomainSetup(), FEProblemBase::theWarehouse(), TimeExtremeValue::TimeExtremeValue(), TimeIntegratedPostprocessor::TimeIntegratedPostprocessor(), TimeIntervalTimes::TimeIntervalTimes(), TimePeriod::TimePeriod(), SubProblem::timestepSetup(), PIDTransientControl::timestepSetup(), FEProblemBase::timestepSetup(), TransientBase::TransientBase(), MooseMesh::update(), NEML2FEInterpolation::updateDofMap(), NEML2FEInterpolation::updateGradPhi(), NEML2FEInterpolation::updateInterpolations(), FEProblemBase::updateMortarMesh(), NEML2FEInterpolation::updatePhi(), Console::write(), and FEProblemBase::~FEProblemBase().

◆ _binary

bool XDA::_binary
private

Flag for binary output.

Definition at line 45 of file XDA.h.

Referenced by filename(), and output().

◆ _broadcast_by_default

const bool VectorPostprocessorInterface::_broadcast_by_default
privateinherited

◆ _change_position

const bool SampledOutput::_change_position
protectedinherited

Flag for re-positioning.

Definition at line 68 of file SampledOutput.h.

Referenced by SampledOutput::initSample().

◆ _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(), MaterialOutputAction::act(), MeshOnlyAction::act(), SetupDebugAction::act(), FEProblemBase::adaptMesh(), Adaptivity::adaptMesh(), PerfGraph::addToExecutionList(), SimplePredictor::apply(), SystemBase::applyScalingFactors(), MultiApp::backup(), FEProblemBase::backupMultiApps(), CoarsenedPiecewiseLinear::buildCoarsenedGrid(), DefaultSteadyStateConvergence::checkConvergence(), MeshDiagnosticsGenerator::checkElementOverlap(), MeshDiagnosticsGenerator::checkElementTypes(), MeshDiagnosticsGenerator::checkElementVolumes(), FEProblemBase::checkExceptionAndStopSolve(), SolverSystem::checkInvalidSolution(), MeshDiagnosticsGenerator::checkLocalJacobians(), MeshDiagnosticsGenerator::checkNonConformalMesh(), MeshDiagnosticsGenerator::checkNonConformalMeshFromAdaptivity(), MeshDiagnosticsGenerator::checkNonMatchingEdges(), MeshDiagnosticsGenerator::checkNonPlanarSides(), MeshDiagnosticsGenerator::checkPolygons(), FEProblemBase::checkProblemIntegrity(), ReferenceResidualConvergence::checkResidualConvergence(), MeshDiagnosticsGenerator::checkSidesetsOrientation(), MeshDiagnosticsGenerator::checkWatertightNodesets(), MeshDiagnosticsGenerator::checkWatertightSidesets(), IterationAdaptiveDT::computeAdaptiveDT(), TransientBase::computeConstrainedDT(), DefaultMultiAppFixedPointConvergence::computeCustomConvergencePostprocessor(), NonlinearSystemBase::computeDamping(), FixedPointIterationAdaptiveDT::computeDT(), IterationAdaptiveDT::computeDT(), IterationAdaptiveDT::computeFailedDT(), IterationAdaptiveDT::computeInitialDT(), IterationAdaptiveDT::computeInterpolationDT(), FEProblemBase::computeLinearSystemTags(), LinearSystem::computeLinearSystemTags(), NonlinearSystemBase::computeScaling(), Problem::console(), TimeStepper::constrainStep(), IterationAdaptiveDT::constrainStep(), MultiApp::createApp(), FEProblemBase::execMultiApps(), FEProblemBase::execMultiAppTransfers(), Eigenvalue::execute(), SteadyBase::execute(), MFEMSteady::execute(), MessageFromInput::execute(), ActionWarehouse::executeActionsWithAction(), ActionWarehouse::executeAllActions(), MeshGeneratorSystem::executeMeshGenerators(), SidesetAroundSubdomainUpdater::finalize(), ElementQualityChecker::finalize(), FEProblemBase::finishMultiAppStep(), MeshRepairGenerator::fixOverlappingNodes(), SurfaceSubdomainsDelaunayRemesher::General2DDelaunay(), CoarsenBlockGenerator::generate(), OrientSurfaceMeshGenerator::generate(), PolyLineMeshFollowingNodeSetGenerator::generate(), MeshGenerator::generateInternal(), VariableCondensationPreconditioner::getDofToCondense(), InversePowerMethod::init(), NonlinearEigen::init(), FEProblemBase::initialAdaptMesh(), DefaultMultiAppFixedPointConvergence::initialize(), SubProblem::initialSetup(), EigenExecutionerBase::inversePowerIteration(), FEProblemBase::joinAndFinalize(), TransientBase::keepGoing(), IterationAdaptiveDT::limitDTByFunction(), IterationAdaptiveDT::limitDTToPostprocessorValue(), FEProblemBase::logAdd(), EigenExecutionerBase::makeBXConsistent(), Console::meshChanged(), SurfaceDelaunayGeneratorBase::meshNormalDeviation2D(), MooseBase::mooseDeprecated(), MooseBase::mooseDeprecatedNoTrace(), MooseBase::mooseInfo(), MooseBase::mooseWarning(), MooseBase::mooseWarningNonPrefixed(), ReferenceResidualConvergence::nonlinearConvergenceSetup(), Console::output(), DOFMapOutput::output(), MaterialPropertyDebugOutput::output(), PerfGraphOutput::output(), ReporterDebugOutput::output(), SolutionInvalidityOutput::output(), VariableResidualNormsDebugOutput::output(), ControlOutput::outputActiveObjects(), ControlOutput::outputChangedControls(), ControlOutput::outputControls(), Console::outputInput(), WebServerControl::outputMessage(), Console::outputPostprocessors(), PseudoTimestep::outputPseudoTimestep(), Console::outputReporters(), DefaultMultiAppFixedPointConvergence::outputResidualNorm(), Console::outputScalarVariables(), Console::outputSystemInformation(), FEProblemBase::possiblyRebuildGeomSearchPatches(), EigenExecutionerBase::postExecute(), AB2PredictorCorrector::postSolve(), ActionWarehouse::printActionDependencySets(), BlockRestrictionDebugOutput::printBlockRestrictionGroups(), BlockRestrictionDebugOutput::printBlockRestrictionMap(), BlockRestrictionDebugOutput::printBoundaryRestrictionGroups(), SolutionInvalidity::printDebug(), EigenExecutionerBase::printEigenvalue(), PicardSolve::printFixedPointConvergenceHistory(), SecantSolve::printFixedPointConvergenceHistory(), SteffensenSolve::printFixedPointConvergenceHistory(), FixedPointSolve::printFixedPointConvergenceReason(), PerfGraphLivePrint::printLiveMessage(), MaterialPropertyDebugOutput::printMaterialMap(), PerfGraphLivePrint::printStats(), NEML2Action::printSummary(), AutomaticMortarGeneration::projectPrimaryNodesSinglePair(), AutomaticMortarGeneration::projectSecondaryNodesSinglePair(), CoarsenBlockGenerator::recursiveCoarsen(), SolutionTimeAdaptiveDT::rejectStep(), MultiApp::restore(), FEProblemBase::restoreMultiApps(), FEProblemBase::restoreSolutions(), NonlinearSystemBase::setInitialSolution(), MooseApp::setupOptions(), Checkpoint::shouldOutput(), SubProblem::showFunctorRequestors(), SubProblem::showFunctors(), FullSolveMultiApp::showStatusMessage(), FEProblemSolve::solve(), FixedPointSolve::solve(), LinearSystem::solve(), NonlinearSystem::solve(), AStableDirk4::solve(), ExplicitRK2::solve(), ExplicitTVDRK2::solve(), ImplicitMidpoint::solve(), LStableDirk2::solve(), LStableDirk3::solve(), LStableDirk4::solve(), EigenProblem::solve(), FixedPointSolve::solveStep(), TransientMultiApp::solveStep(), MeshRepairGenerator::splitNonConvexPolygons(), PerfGraphLivePrint::start(), WebServerControl::startServer(), AB2PredictorCorrector::step(), NonlinearEigen::takeStep(), TransientBase::takeStep(), MFEMTransient::takeStep(), TerminateChainControl::terminate(), SubProblem::timestepSetup(), FEProblemBase::updateMeshXFEM(), Convergence::verboseOutput(), Console::writeTimestepInformation(), Console::writeVariableNorms(), and FEProblemBase::~FEProblemBase().

◆ _current_execute_flag

ExecFlagType Output::_current_execute_flag
protectedinherited

Current execute on flag.

This is different from the flag provided by FEProblemBase::getCurrentExecuteOnFlag() const, as outputs are triggered in PETSc callbacks which cannot update FEProblemBase::_current_execute_on_flag so we shadow it with a new member of the same name.

Definition at line 211 of file Output.h.

Referenced by CSV::getVectorPostprocessorFileName(), AdvancedOutput::output(), Console::output(), ControlOutput::output(), CSV::output(), ProgressOutput::output(), Output::outputStep(), SampledOutput::outputStep(), AdvancedOutput::shouldOutput(), Output::shouldOutput(), Checkpoint::shouldOutput(), and PerfGraphOutput::shouldOutput().

◆ _default_values

std::map<PostprocessorName, std::unique_ptr<PostprocessorValue> > PostprocessorInterface::_default_values
mutableprivateinherited

Holds the default postprocessor values that are requested (key is PostprocessorName)

Definition at line 162 of file PostprocessorInterface.h.

Referenced by PostprocessorInterface::getPostprocessorValueInternal().

◆ _dt

Real& Output::_dt
protectedinherited

Time step delta.

Definition at line 223 of file Output.h.

Referenced by Output::dt(), and PetscOutput::solveSetup().

◆ _dt_old

Real& Output::_dt_old
protectedinherited

Old time step delta.

Definition at line 226 of file Output.h.

Referenced by Output::dtOld(), and Console::writeTimestepInformation().

◆ _elemental_as_nodal

bool AdvancedOutput::_elemental_as_nodal
protectedinherited

Flags to control nodal output.

Definition at line 291 of file AdvancedOutput.h.

Referenced by Exodus::Exodus(), and AdvancedOutput::init().

◆ _empty_execute_enum

ExecFlagEnum SetupInterface::_empty_execute_enum
privateinherited

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::SetupInterface().

◆ _enabled

const bool& MooseObject::_enabled
protectedinherited

Reference to the "enable" InputParameters, used by Controls for toggling on/off MooseObjects.

Definition at line 71 of file MooseObject.h.

Referenced by MooseObject::enabled().

◆ _end_step

int Output::_end_step
protectedinherited

End outputting at this time step.

Definition at line 259 of file Output.h.

Referenced by Output::onInterval().

◆ _end_time

Real Output::_end_time
protectedinherited

End outputting time.

Definition at line 253 of file Output.h.

◆ _es_ptr

libMesh::EquationSystems* Output::_es_ptr
protectedinherited

◆ _execute_data

OutputDataWarehouse AdvancedOutput::_execute_data
privateinherited

◆ _execute_enum

const ExecFlagEnum& SetupInterface::_execute_enum
protectedinherited

◆ _execute_on

ExecFlagEnum Output::_execute_on
protectedinherited

The common Execution types; this is used as the default execution type for everything except system information and input.

Definition at line 203 of file Output.h.

Referenced by AdvancedOutput::AdvancedOutput(), Checkpoint::checkpointInfo(), Console::Console(), Output::executeOn(), AdvancedOutput::initExecutionTypes(), Console::initialSetup(), Console::output(), Output::Output(), PetscOutput::PetscOutput(), Output::shouldOutput(), and PerfGraphOutput::shouldOutput().

◆ _factory

Factory& ParallelParamObject::_factory
protectedinherited

◆ _file_base

std::string FileOutput::_file_base
protectedinherited

◆ _file_num

unsigned int& FileOutput::_file_num
protectedinherited

◆ _fni_feproblem

FEProblemBase& FunctionInterface::_fni_feproblem
privateinherited

Reference to FEProblemBase instance.

Definition at line 156 of file FunctionInterface.h.

Referenced by FunctionInterface::getFunctionByName(), and FunctionInterface::hasFunctionByName().

◆ _fni_object

const MooseObject& FunctionInterface::_fni_object
privateinherited

Reference to the object.

Definition at line 149 of file FunctionInterface.h.

Referenced by FunctionInterface::getKokkosFunctionByName().

◆ _fni_params

const InputParameters& FunctionInterface::_fni_params
privateinherited

Parameters of the object with this interface.

Definition at line 153 of file FunctionInterface.h.

Referenced by FunctionInterface::getFunction(), FunctionInterface::getKokkosFunction(), and FunctionInterface::hasFunction().

◆ _fni_tid

const THREAD_ID FunctionInterface::_fni_tid
privateinherited

◆ _is_advanced

bool Output::_is_advanced
protectedinherited

Flag for advanced output testing.

Definition at line 271 of file Output.h.

Referenced by AdvancedOutput::AdvancedOutput(), and Output::isAdvanced().

◆ _last_execute_time

std::map<std::string, Real>& AdvancedOutput::_last_execute_time
privateinherited

Storage for the last output time for the various output types, this is used to avoid duplicate output when using OUTPUT_FINAL flag.

Definition at line 369 of file AdvancedOutput.h.

Referenced by AdvancedOutput::clearLastExecuteTime(), AdvancedOutput::output(), and AdvancedOutput::wantOutput().

◆ _last_output_simulation_time

Real& Output::_last_output_simulation_time
protectedinherited

last simulation time an output has occured

Definition at line 280 of file Output.h.

Referenced by Output::onInterval(), Output::outputStep(), and SampledOutput::outputStep().

◆ _last_output_wall_time

std::chrono::time_point<std::chrono::steady_clock> Output::_last_output_wall_time
protectedinherited

last wall time an output has occured

Definition at line 283 of file Output.h.

Referenced by Output::onInterval(), Output::outputStep(), and SampledOutput::outputStep().

◆ _linear_dt

Real PetscOutput::_linear_dt
privateinherited

Psuedo linear time step.

Definition at line 111 of file PetscOutput.h.

Referenced by PetscOutput::solveSetup().

◆ _linear_dt_divisor

Real PetscOutput::_linear_dt_divisor
privateinherited

Pseudo linear timestep divisor.

Definition at line 117 of file PetscOutput.h.

Referenced by PetscOutput::solveSetup().

◆ _linear_end_time

Real PetscOutput::_linear_end_time
privateinherited

Linear residual output end time.

Definition at line 129 of file PetscOutput.h.

Referenced by PetscOutput::inLinearTimeWindow(), and PetscOutput::PetscOutput().

◆ _linear_iter

PetscInt PetscOutput::_linear_iter
protectedinherited

Current linear iteration returned from PETSc.

Definition at line 87 of file PetscOutput.h.

Referenced by CSV::getVectorPostprocessorFileName(), Console::output(), JSONOutput::outputReporters(), and XMLOutput::outputVectorPostprocessors().

◆ _linear_start_time

Real PetscOutput::_linear_start_time
privateinherited

Linear residual output start time.

Definition at line 123 of file PetscOutput.h.

Referenced by PetscOutput::inLinearTimeWindow(), and PetscOutput::PetscOutput().

◆ _linear_time

Real PetscOutput::_linear_time
privateinherited

Psuedo linear time.

Definition at line 108 of file PetscOutput.h.

Referenced by PetscOutputInterface::petscLinearOutput(), and PetscOutput::time().

◆ _mci_feproblem

FEProblemBase& MeshChangedInterface::_mci_feproblem
protectedinherited

Reference to FEProblemBase instance.

Definition at line 44 of file MeshChangedInterface.h.

Referenced by MeshChangedInterface::MeshChangedInterface().

◆ _mesh_functions

std::vector<std::vector<std::unique_ptr<libMesh::MeshFunction> > > SampledOutput::_mesh_functions
privateinherited

A vector of pointers to the mesh functions on the sampled mesh This is only populated when the initSample() function is called, it must be cleaned up by the destructor.

Outer-indexing by system Inner-indexing for each variable in a system

Definition at line 101 of file SampledOutput.h.

Referenced by SampledOutput::initSample(), and SampledOutput::updateSample().

◆ _mesh_ptr

MooseMesh* Output::_mesh_ptr
protectedinherited

A convenience pointer to the current mesh (reference or displaced depending on "use_displaced")

Definition at line 197 of file Output.h.

Referenced by SampledOutput::cloneMesh(), SampledOutput::initSample(), PNGOutput::output(), Tecplot::output(), output(), Output::Output(), Exodus::outputSetup(), and SampledOutput::updateSample().

◆ _mesh_subdomains_match

bool SampledOutput::_mesh_subdomains_match
privateinherited

A flag tracking whether the sampling and source meshes match in terms of subdomains.

Definition at line 113 of file SampledOutput.h.

Referenced by SampledOutput::cloneMesh(), and SampledOutput::initSample().

◆ _metaname

const RestartableDataMapName Restartable::_metaname
privateinherited

Restartable metadata name.

Definition at line 247 of file Restartable.h.

Referenced by Restartable::registerRestartableDataOnApp().

◆ _min_simulation_time_interval

const Real Output::_min_simulation_time_interval
protectedinherited

Minimum simulation time between outputs.

Definition at line 238 of file Output.h.

Referenced by Output::onInterval().

◆ _name

const std::string& MooseBase::_name
protectedinherited

The name of this class.

Definition at line 381 of file MooseBase.h.

Referenced by AddFieldSplitAction::act(), AddBCAction::act(), AddConstraintAction::act(), AddControlAction::act(), AddConvergenceAction::act(), AddCorrectorAction::act(), AddDamperAction::act(), AddDGKernelAction::act(), AddDiracKernelAction::act(), AddDistributionAction::act(), AddFunctionAction::act(), AddFunctorMaterialAction::act(), AddFVBCAction::act(), AddFVInitialConditionAction::act(), AddFVInterfaceKernelAction::act(), AddFVInterpolationMethodAction::act(), AddFVKernelAction::act(), AddHDGKernelAction::act(), AddIndicatorAction::act(), AddInitialConditionAction::act(), AddInterfaceKernelAction::act(), AddKernelAction::act(), AddLinearFVBCAction::act(), AddLinearFVKernelAction::act(), AddMarkerAction::act(), AddMaterialAction::act(), AddMeshDivisionAction::act(), AddMeshGeneratorAction::act(), AddMeshModifiersAction::act(), AddMultiAppAction::act(), AddNodalKernelAction::act(), AddOutputAction::act(), AddPositionsAction::act(), AddPostprocessorAction::act(), AddReporterAction::act(), AddSamplerAction::act(), AddScalarKernelAction::act(), AddTimesAction::act(), AddTimeStepperAction::act(), AddTransferAction::act(), AddUserObjectAction::act(), AddVectorPostprocessorAction::act(), PartitionerAction::act(), ReadExecutorParamsAction::act(), SetupPreconditionerAction::act(), SetupTimeIntegratorAction::act(), AddMFEMComplexBCComponentAction::act(), AddMFEMComplexKernelComponentAction::act(), AddMFEMFESpaceAction::act(), AddMFEMFESpaceHierarchyAction::act(), AddMFEMQuadratureFunctionAction::act(), AddMFEMSolverAction::act(), AddMFEMSubMeshAction::act(), ADPiecewiseLinearInterpolationMaterial::ADPiecewiseLinearInterpolationMaterial(), BatchMeshGeneratorAction::BatchMeshGeneratorAction(), PiecewiseLinearBase::buildInterpolation(), CombinerGenerator::CombinerGenerator(), Executor::Executor(), ExtraIDIntegralReporter::ExtraIDIntegralReporter(), MultiApp::fillPositions(), CentroidMultiApp::fillPositions(), QuadraturePointMultiApp::fillPositions(), FunctionDT::FunctionDT(), FillBetweenCurvesGenerator::generate(), FillBetweenPointVectorsGenerator::generate(), FillBetweenSidesetsGenerator::generate(), MooseBase::MooseBase(), MooseBase::name(), ReferenceResidualConvergence::nonlinearConvergenceSetup(), ParsedFunctorMaterialTempl< is_ad >::ParsedFunctorMaterialTempl(), PiecewiseBilinear::PiecewiseBilinear(), PiecewiseLinearInterpolationMaterial::PiecewiseLinearInterpolationMaterial(), PiecewiseBase::setData(), and AddVariableAction::varName().

◆ _nonlinear_dt

Real PetscOutput::_nonlinear_dt
privateinherited

The pseuedo non-linear time step.

Definition at line 105 of file PetscOutput.h.

Referenced by PetscOutput::solveSetup().

◆ _nonlinear_dt_divisor

Real PetscOutput::_nonlinear_dt_divisor
privateinherited

Pseudo non-linear timestep divisor.

Definition at line 114 of file PetscOutput.h.

Referenced by PetscOutput::solveSetup().

◆ _nonlinear_end_time

Real PetscOutput::_nonlinear_end_time
privateinherited

Non-linear residual output end time.

Definition at line 126 of file PetscOutput.h.

Referenced by PetscOutput::inNonlinearTimeWindow(), and PetscOutput::PetscOutput().

◆ _nonlinear_iter

PetscInt PetscOutput::_nonlinear_iter
protectedinherited

Current non-linear iteration returned from PETSc.

Definition at line 84 of file PetscOutput.h.

Referenced by CSV::getVectorPostprocessorFileName(), Console::output(), JSONOutput::outputReporters(), and XMLOutput::outputVectorPostprocessors().

◆ _nonlinear_start_time

Real PetscOutput::_nonlinear_start_time
privateinherited

Non-linear residual output start time.

Definition at line 120 of file PetscOutput.h.

Referenced by PetscOutput::inNonlinearTimeWindow(), and PetscOutput::PetscOutput().

◆ _nonlinear_time

Real PetscOutput::_nonlinear_time
privateinherited

The psuedo non-linear time.

Definition at line 102 of file PetscOutput.h.

Referenced by PetscOutputInterface::petscNonlinearOutput(), PetscOutput::solveSetup(), and PetscOutput::time().

◆ _norm

Real PetscOutput::_norm
protectedinherited

Current norm returned from PETSc.

Definition at line 81 of file PetscOutput.h.

Referenced by Console::output().

◆ _num

unsigned int Output::_num
protectedinherited

The number of outputs written.

Definition at line 229 of file Output.h.

◆ _on_linear_residual

bool PetscOutput::_on_linear_residual
protectedinherited

True if current output calls is on the linear residual (used by time())

Definition at line 90 of file PetscOutput.h.

Referenced by PetscOutput::time().

◆ _on_nonlinear_residual

bool PetscOutput::_on_nonlinear_residual
protectedinherited

True if current output call is on the non-linear residual (used by time())

Definition at line 93 of file PetscOutput.h.

Referenced by JSONOutput::outputReporters(), XMLOutput::outputVectorPostprocessors(), and PetscOutput::time().

◆ _output_if_base_contains

std::vector<std::string> FileOutput::_output_if_base_contains
protectedinherited

Storage for 'output_if_base_contains'.

Definition at line 86 of file FileOutput.h.

Referenced by FileOutput::checkFilename().

◆ _padding

unsigned int FileOutput::_padding
protectedinherited

◆ _parent

const ParallelParamObject& DataFileInterface::_parent
privateinherited

◆ _pars

const InputParameters& MooseBase::_pars
protectedinherited

The object's parameters.

Definition at line 384 of file MooseBase.h.

Referenced by AddAuxKernelAction::act(), AddFVICAction::act(), AddICAction::act(), CommonOutputAction::act(), ComposeTimeStepperAction::act(), CreateProblemAction::act(), CreateProblemDefaultAction::act(), SetupDebugAction::act(), SetupMeshAction::act(), AddMFEMComplexBCComponentAction::act(), AddMFEMComplexKernelComponentAction::act(), FunctorMaterial::addFunctorPropertyByBlocks(), BreakMeshByBlockGenerator::BreakMeshByBlockGenerator(), PNGOutput::calculateRescalingValues(), MooseBase::callMooseError(), MooseBase::connectControllableParams(), Console::Console(), MooseApp::copyInputs(), MaterialBase::declareADProperty(), Moose::Kokkos::MaterialBase::declareKokkosOnDemandProperty(), Moose::Kokkos::MaterialBase::declareKokkosProperty(), MaterialBase::declareProperty(), FEProblemSolve::FEProblemSolve(), FileMeshGenerator::generate(), MooseBase::getBase(), MooseBase::getCheckedPointerParam(), MaterialBase::getGenericZeroMaterialProperty(), MooseBase::getHitNode(), MeshGenerator::getMeshGeneratorNameFromParam(), MeshGenerator::getMeshGeneratorNamesFromParam(), MooseBase::getParam(), MooseBase::getParam(), MooseBase::hasBase(), MeshGenerator::hasGenerateCSG(), MeshGenerator::hasGenerateData(), AddVariableAction::init(), AdvancedOutput::initExecutionTypes(), EigenProblemSolve::initialSetup(), Console::initialSetup(), MooseBase::isParamSetByUser(), MooseBase::isParamValid(), MultiApp::keepSolutionDuringRestore(), MooseBase::messagePrefix(), MooseBase::MooseBase(), MultiSystemSolveObject::MultiSystemSolveObject(), MooseApp::outputMachineReadableData(), MooseBase::paramError(), MooseBase::parameters(), MooseBase::paramInfo(), MooseBase::paramWarning(), MooseMesh::prepare(), MooseBase::queryParam(), MooseMesh::setCoordSystem(), MooseMesh::setPartitionerHelper(), SetupMeshAction::setupMesh(), TransientBase::setupTimeIntegrator(), MooseApp::showInputs(), and MooseBase::uniqueName().

◆ _petsc_output

PetscOutput* PetscOutputInterface::_petsc_output
protectedinherited

◆ _pg_moose_app

MooseApp& PerfGraphInterface::_pg_moose_app
protectedinherited

The MooseApp that owns the PerfGraph.

Definition at line 135 of file PerfGraphInterface.h.

Referenced by PerfGraphInterface::perfGraph().

◆ _position

Point SampledOutput::_position
privateinherited

When oversampling, the output is shift by this amount.

Definition at line 107 of file SampledOutput.h.

Referenced by SampledOutput::initSample(), and SampledOutput::updateSample().

◆ _postprocessors_as_reporters

const bool AdvancedOutput::_postprocessors_as_reporters
privateinherited

Flags for outputting PP/VPP data as a reporter.

Definition at line 372 of file AdvancedOutput.h.

Referenced by AdvancedOutput::initAvailableLists().

◆ _ppi_feproblem

const FEProblemBase& PostprocessorInterface::_ppi_feproblem
privateinherited

◆ _ppi_moose_object

const MooseObject& PostprocessorInterface::_ppi_moose_object
privateinherited

◆ _ppi_params

const InputParameters& PostprocessorInterface::_ppi_params
privateinherited

◆ _prefix

const std::string PerfGraphInterface::_prefix
protectedinherited

A prefix to use for all sections.

Definition at line 138 of file PerfGraphInterface.h.

Referenced by PerfGraphInterface::timedSectionName().

◆ _problem_ptr

FEProblemBase* Output::_problem_ptr
protectedinherited

Pointer the the FEProblemBase object for output object (use this)

Definition at line 185 of file Output.h.

Referenced by PNGOutput::calculateRescalingValues(), SampledOutput::cloneMesh(), Exodus::handleExodusIOMeshRenumbering(), AdvancedOutput::initAvailableLists(), JSONOutput::initialSetup(), AdvancedOutput::initPostprocessorOrVectorPostprocessorLists(), SampledOutput::initSample(), AdvancedOutput::initShowHideLists(), PNGOutput::makeMeshFunc(), Console::meshChanged(), Checkpoint::output(), CSV::output(), DOFMapOutput::output(), MaterialPropertyDebugOutput::output(), ReporterDebugOutput::output(), SolutionHistory::output(), VariableResidualNormsDebugOutput::output(), Output::Output(), Exodus::outputEmptyTimestep(), Exodus::outputNodalVariables(), Exodus::outputPostprocessors(), Nemesis::outputPostprocessors(), TableOutput::outputPostprocessorsRow(), JSONOutput::outputReporters(), Exodus::outputScalarVariables(), Nemesis::outputScalarVariables(), TableOutput::outputScalarVariables(), Exodus::outputSetup(), Nemesis::outputSetup(), Console::outputSystemInformation(), XMLOutput::outputVectorPostprocessors(), BlockRestrictionDebugOutput::printBlockRestrictionGroups(), BlockRestrictionDebugOutput::printBlockRestrictionMap(), BlockRestrictionDebugOutput::printBoundaryRestrictionGroups(), MaterialPropertyDebugOutput::printMaterialMap(), TopResidualDebugOutput::printTopResiduals(), SolutionInvalidityOutput::shouldOutput(), TableOutput::shouldOutputPostprocessorsRow(), PetscOutput::solveSetup(), Checkpoint::updateCheckpointFiles(), SampledOutput::updateSample(), and Console::writeVariableNorms().

◆ _refinements

const unsigned int SampledOutput::_refinements
protectedinherited

The number of oversampling refinements.

Definition at line 62 of file SampledOutput.h.

Referenced by SampledOutput::initSample().

◆ _reporter_data

const ReporterData& AdvancedOutput::_reporter_data
protectedinherited

◆ _restartable_app

MooseApp& Restartable::_restartable_app
protectedinherited

Reference to the application.

Definition at line 234 of file Restartable.h.

Referenced by Restartable::registerRestartableDataOnApp(), and Restartable::registerRestartableNameWithFilterOnApp().

◆ _restartable_name

std::string Restartable::_restartable_name
privateinherited

The name of the object.

Definition at line 250 of file Restartable.h.

Referenced by Restartable::declareRestartableDataWithObjectNameWithContext(), and Restartable::restartableName().

◆ _restartable_read_only

const bool Restartable::_restartable_read_only
protectedinherited

Flag for toggling read only status (see ReporterData)

Definition at line 243 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 237 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 240 of file Restartable.h.

Referenced by Restartable::declareRestartableDataHelper().

◆ _ri_fe_problem_base

FEProblemBase& ReporterInterface::_ri_fe_problem_base
privateinherited

Provides access to FEProblemBase::getReporterData.

Definition at line 137 of file ReporterInterface.h.

Referenced by ReporterInterface::reportersAdded().

◆ _ri_moose_object

const MooseObject& ReporterInterface::_ri_moose_object
privateinherited

◆ _ri_params

const InputParameters& ReporterInterface::_ri_params
privateinherited

Parameters for the MooseObject inherting from this interface.

Definition at line 134 of file ReporterInterface.h.

Referenced by ReporterInterface::getReporterName(), and ReporterInterface::possiblyCheckHasReporter().

◆ _ri_reporter_data

const ReporterData& ReporterInterface::_ri_reporter_data
privateinherited

◆ _sampling_es

std::unique_ptr<EquationSystems> SampledOutput::_sampling_es
privateinherited

Equation system holding the solution vectors for the sampled variables.

Definition at line 119 of file SampledOutput.h.

Referenced by SampledOutput::initSample(), SampledOutput::updateSample(), and SampledOutput::~SampledOutput().

◆ _sampling_mesh_changed

bool SampledOutput::_sampling_mesh_changed
privateinherited

A flag indicating that the mesh has changed and the sampled mesh needs to be re-initialized.

Definition at line 110 of file SampledOutput.h.

Referenced by SampledOutput::meshChanged(), and SampledOutput::updateSample().

◆ _sampling_mesh_ptr

std::unique_ptr<MooseMesh> SampledOutput::_sampling_mesh_ptr
privateinherited

Mesh used for sampling. The Output class' _mesh_ptr will refer to this mesh if sampling is being used.

Definition at line 122 of file SampledOutput.h.

Referenced by SampledOutput::cloneMesh(), SampledOutput::initSample(), and SampledOutput::~SampledOutput().

◆ _scalar_as_nodal

bool AdvancedOutput::_scalar_as_nodal
protectedinherited

Definition at line 291 of file AdvancedOutput.h.

Referenced by AdvancedOutput::init().

◆ _sequence

bool Output::_sequence
protectedinherited

Flag for forcing call to outputSetup() with every call to output() (restartable)

Definition at line 200 of file Output.h.

◆ _serialize

bool SampledOutput::_serialize
privateinherited

Flag indicating whether we are outputting in serial or parallel.

Definition at line 116 of file SampledOutput.h.

Referenced by SampledOutput::cloneMesh(), SampledOutput::initSample(), and SampledOutput::updateSample().

◆ _serialized_solution

std::unique_ptr<NumericVector<Number> > SampledOutput::_serialized_solution
privateinherited

Sample solution vector.

Definition at line 130 of file SampledOutput.h.

Referenced by SampledOutput::initSample(), and SampledOutput::updateSample().

◆ _si_moose_base

const MooseBase& SolutionInvalidInterface::_si_moose_base
privateinherited

◆ _si_problem

const FEProblemBase* SolutionInvalidInterface::_si_problem
privateinherited

A pointer to FEProblem base.

Definition at line 114 of file SolutionInvalidInterface.h.

Referenced by SolutionInvalidInterface::flagInvalidSolutionInternal().

◆ _start_step

int Output::_start_step
protectedinherited

Start outputting at this time step.

Definition at line 256 of file Output.h.

Referenced by Output::onInterval().

◆ _start_time

Real Output::_start_time
protectedinherited

Start outputting time.

Definition at line 250 of file Output.h.

Referenced by Output::onInterval().

◆ _sync_only

bool Output::_sync_only
protectedinherited

Flag for only executing at sync times.

Definition at line 265 of file Output.h.

Referenced by Output::onInterval().

◆ _sync_times

std::set<Real> Output::_sync_times
protectedinherited

Sync times for this outputter.

Definition at line 244 of file Output.h.

Referenced by Output::getSyncTimes(), Output::onInterval(), and Output::Output().

◆ _sync_times_object

const Times* const Output::_sync_times_object
protectedinherited

Sync times object for this outputter.

Definition at line 247 of file Output.h.

Referenced by Output::onInterval(), and Output::Output().

◆ _t_step

int& Output::_t_step
protectedinherited

◆ _t_tol

Real Output::_t_tol
protectedinherited

Time checking tolerance.

Definition at line 262 of file Output.h.

Referenced by PetscOutput::inLinearTimeWindow(), PetscOutput::inNonlinearTimeWindow(), and Output::onInterval().

◆ _time

Real& Output::_time
protectedinherited

◆ _time_old

Real& Output::_time_old
protectedinherited

The old time.

Definition at line 217 of file Output.h.

Referenced by PetscOutput::solveSetup(), and Output::timeOld().

◆ _time_step_interval

unsigned int Output::_time_step_interval
protectedinherited

The output time step interval.

Definition at line 235 of file Output.h.

Referenced by AutoCheckpointAction::act(), Output::onInterval(), and Output::setWallTimeIntervalFromCommandLineParam().

◆ _time_step_interval_set_by_addparam

const bool Output::_time_step_interval_set_by_addparam
protectedinherited

Whether time step interval is set by AddParam.

Definition at line 232 of file Output.h.

Referenced by Output::setWallTimeIntervalFromCommandLineParam().

◆ _transient

bool Output::_transient
protectedinherited

Transient flag (true = transient)

Definition at line 188 of file Output.h.

Referenced by Output::dt(), Output::dtOld(), Output::time(), Output::timeOld(), and Console::writeTimestepInformation().

◆ _type

const std::string& MooseBase::_type
protectedinherited

◆ _use_displaced

bool Output::_use_displaced
protectedinherited

Flag for using displaced mesh.

Definition at line 191 of file Output.h.

Referenced by Output::Output().

◆ _use_sampled_output

bool SampledOutput::_use_sampled_output
protectedinherited

Flag indicating that the sampled output should be used to re-sample the underlying EquationSystem of the output.

Definition at line 71 of file SampledOutput.h.

Referenced by SampledOutput::initSample(), Exodus::outputSetup(), and SampledOutput::updateSample().

◆ _using_external_sampling_file

const bool SampledOutput::_using_external_sampling_file
protectedinherited

Flag indicating another file is being used for the sampling.

Definition at line 65 of file SampledOutput.h.

Referenced by SampledOutput::cloneMesh(), and SampledOutput::initSample().

◆ _variable_numbers_in_system

std::vector<std::vector<unsigned int> > SampledOutput::_variable_numbers_in_system
privateinherited

A vector of vectors that keeps track of the variable numbers in each system for each mesh function.

Definition at line 104 of file SampledOutput.h.

Referenced by SampledOutput::initSample(), and SampledOutput::updateSample().

◆ _vectorpostprocessors_as_reporters

const bool AdvancedOutput::_vectorpostprocessors_as_reporters
privateinherited

Definition at line 372 of file AdvancedOutput.h.

Referenced by AdvancedOutput::initAvailableLists().

◆ _vpi_feproblem

const FEProblemBase& VectorPostprocessorInterface::_vpi_feproblem
privateinherited

◆ _vpi_moose_object

const MooseObject& VectorPostprocessorInterface::_vpi_moose_object
privateinherited

◆ _vpi_tid

const THREAD_ID VectorPostprocessorInterface::_vpi_tid
privateinherited

Thread ID.

Definition at line 369 of file VectorPostprocessorInterface.h.

◆ _wall_time_interval

Real Output::_wall_time_interval
protectedinherited

Target wall time between outputs in seconds.

Definition at line 241 of file Output.h.

Referenced by Checkpoint::checkpointInfo(), Output::onInterval(), Output::setWallTimeIntervalFromCommandLineParam(), and Checkpoint::shouldOutput().

◆ _wall_time_since_last_output

Real Output::_wall_time_since_last_output
protectedinherited

time in seconds since last output

Definition at line 286 of file Output.h.

Referenced by Output::onInterval(), and Checkpoint::shouldOutput().

◆ app_param

const std::string MooseBase::app_param = "_moose_app"
staticinherited

◆ kokkos_object_param

const std::string MooseBase::kokkos_object_param = "_kokkos_object"
staticinherited

The name of the parameter that indicates an object is a Kokkos functor.

Definition at line 64 of file MooseBase.h.

Referenced by InputParameters::isKokkosObject().

◆ moose_base_param

const std::string MooseBase::moose_base_param = "_moose_base"
staticinherited

The name of the parameter that contains the moose system base.

Definition at line 61 of file MooseBase.h.

Referenced by InputParameters::getBase(), InputParameters::hasBase(), and InputParameters::registerBase().

◆ name_param

const std::string MooseBase::name_param = "_object_name"
staticinherited

◆ type_param

const std::string MooseBase::type_param = "_type"
staticinherited

◆ unique_name_param

const std::string MooseBase::unique_name_param = "_unique_name"
staticinherited

The name of the parameter that contains the unique object name.

Definition at line 57 of file MooseBase.h.

Referenced by InputParameterWarehouse::addInputParameters(), AppFactory::create(), InputParameterWarehouse::removeInputParameters(), MooseBase::uniqueName(), and MooseBase::validParams().

◆ usingCombinedWarningSolutionWarnings

MooseObject::usingCombinedWarningSolutionWarnings
inherited

Definition at line 67 of file MooseObject.h.


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