21 "variable over a time step or between nonlinear iterations.");
23 MooseEnum change_over(
"time_step nonlinear_iteration");
25 "change_over", change_over,
"Interval over which to compute the change");
35 _change_over(getParam<
MooseEnum>(
"change_over")),
36 _u_change_old(_change_over ==
"time_step" ? coupledValueOld(
"variable")
37 : coupledValuePreviousNL(
"variable")),
39 _norm_exponent(_norm ==
"L1" ? 1 : 2),
76 mooseAssert(!MooseUtils::absoluteFuzzyEqual(
_volume, 0.0),
"Volume must be nonzero.");
registerMooseObject("MooseApp", AverageVariableChange)
Computes the volume-weighted L1 or L2 norm of the change of a variable over a time step or between no...
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.
const VariableValue & _u_change_old
"Old" solution value in the change
AverageVariableChange(const InputParameters ¶meters)
virtual Real computeQpIntegral() override
static InputParameters validParams()
Real _volume
Subdomain(s) volume.
virtual void initialize() override
Called before execute() is ever called so that data can be cleared.
virtual void finalize() override
This is called after execute() and after threadJoin()! This is probably where you want to do MPI comm...
virtual void threadJoin(const UserObject &y) override
Must override.
const unsigned int _norm_exponent
Norm exponent.
virtual void execute() override
Execute method.
virtual void threadJoin(const UserObject &y) override
Must override.
virtual void initialize() override
Called before execute() is ever called so that data can be cleared.
This postprocessor computes a volume integral of the specified variable.
static InputParameters validParams()
const VariableValue & _u
Holds the solution at current quadrature points.
const Real & _current_elem_volume
The current element volume (available during execute())
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type It sho...
void gatherSum(T &value)
Gather the parallel sum of the variable passed in.
Base class for user-specific data.
MooseUnits pow(const MooseUnits &, int)