21 "integral",
"Postprocessor providing the integral of the function, for normalization");
23 "Desired magnitude of the initial condition upon integration");
30 _pp_name(getParam<PostprocessorName>(
"integral")),
31 _integral(getPostprocessorValue(
"integral")),
32 _magnitude(getParam<
Real>(
"magnitude"))
42 "' postprocessor must include 'initial'!");
Defines an initial condition that forces the value to be a user specified function.
MetaPhysicL::DualNumber< V, D, asd > abs(const MetaPhysicL::DualNumber< V, D, asd > &a)
T & getUserObject(const std::string &name, unsigned int tid=0) const
Get the user object by its name.
static InputParameters validParams()
static constexpr Real TOLERANCE
registerMooseObject("MooseApp", IntegralPreservingFunctionIC)
const Function & _func
Function to evaluate to form the initial condition.
Initial conditions specifying an initial condition as a general function while preserving a total int...
IntegralPreservingFunctionIC(const InputParameters ¶meters)
const ExecFlagEnum & getExecuteOnEnum() const
Return the execute on MultiMooseEnum for this object.
const PostprocessorValue & _integral
Integral of the function.
static InputParameters validParams()
bool isValueSet(const std::string &value) const
Methods for seeing if a value is set in the MultiMooseEnum.
const PostprocessorName & _pp_name
Name of postprocessor providing the integral of the function.
virtual void initialSetup() override
Gets called at the beginning of the simulation before this object is asked to do its job...
virtual Real value(const Point &p) override
The value of the variable at a point.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
FEProblemBase & _fe_problem
virtual Real value(Real t, const Point &p) const
Override this to evaluate the scalar function at point (t,x,y,z), by default this returns zero...
Base class for user-specific data.
const ExecFlagType EXEC_INITIAL