25 params.
addParam<PostprocessorName>(
"value",
"The name of the postprocessor");
26 MooseEnum schemes(
"implicit-euler trapezoidal-rule",
"trapezoidal-rule");
28 "time_integration_scheme", schemes,
"Time integration scheme to use for the postprocessors");
35 _value_old(getPostprocessorValueOldByName(
name())),
36 _pps_value(getPostprocessorValue(
"value")),
37 _pps_value_old(getPostprocessorValueOld(
"value")),
38 _time_integration_scheme(getParam<
MooseEnum>(
"time_integration_scheme"))
42 "Time integration of postprocessor has only been implemented with a transient executioner");
47 const auto time_integrators =
49 for (
const auto & ti : time_integrators)
51 !dynamic_cast<CrankNicolson *>(ti))
53 "The time integration in this postprocessor uses the trapezoidal rule method. The " 54 "equation time integration scheme does not use the trapezoidal rule. If the " 55 "postprocessor uses variable values, even indirectly, we would recommend you " 56 "code the same time integration method for the time-integrated postprocessor. " 57 "Specify the 'time_integration_scheme' parameter to silence this warning.");
std::string name(const ElemQuality q)
void mooseInfo(Args &&... args) const
registerMooseObjectRenamed("MooseApp", TotalVariableValue, "04/01/2022 00:00", TimeIntegratedPostprocessor)
virtual Real getValue() const override
This will get called to actually grab the final value the postprocessor has calculated.
virtual void execute() override
Execute method.
Real & _dt
Time step size.
const MooseEnum & _time_integration_scheme
The time integration method.
This class is here to combine the Postprocessor interface and the base class Postprocessor object alo...
static InputParameters validParams()
registerMooseObject("MooseApp", TimeIntegratedPostprocessor)
static InputParameters validParams()
Real _value
The total value of the variable.
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
Base class for transient executioners that use a FixedPointSolve solve object for multiapp-main app i...
MooseApp & _app
The MOOSE application this is associated with.
Executioner * getExecutioner() const
Retrieve the Executioner for this App.
const PostprocessorValue & _pps_value
The current post-processor value.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const PostprocessorValue & _value_old
My old value.
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...
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.
Integrate a post-processor value over time using trapezoidal rule.
virtual void initialize() override
Called before execute() is ever called so that data can be cleared.
TimeIntegratedPostprocessor(const InputParameters ¶meters)
const PostprocessorValue & _pps_value_old
The old post-processor value.