22 "Parses and evaluates a function expression to populate a control value.");
25 "expression",
"FunctionExpression",
"Expression to parse to create the function to evaluate");
26 params.
addParam<Point>(
"point", Point(),
"Spatial point at which to evaluate the function");
34 _function_expression(verifyFunction(getParam<
std::string>(
"expression"))),
35 _value(declareChainControlData<Real>(
"value")),
36 _point(getParam<Point>(
"point"))
47 tid = getParam<THREAD_ID>(
"_tid");
49 _function_ptr = std::make_unique<ChainControlParsedFunctionWrapper>(
60 for (
auto & data_ptr :
_function_ptr->getRealChainControlData())
62 for (
auto & data_ptr :
_function_ptr->getBoolChainControlData())
registerMooseObject("MooseApp", ParsedChainControl)
Control that additionally provides the capability to produce/consume data values, to allow control op...
static InputParameters validParams()
void addChainControlDataDependency(const std::string &data_name)
Adds a chain control data dependency into the list.
bool isParamValid(const std::string &name) const
Test if the supplied parameter is valid.
MooseApp & getMooseApp() const
Get the MooseApp this class is associated with.
Adds user facing parameters for parsed function.
const std::vector< std::string > _vals
Values passed by the user, they may be Reals for Postprocessors.
FEProblemBase & _pfb_feproblem
Reference to the FEProblemBase class for this object.
static InputParameters validParams()
Class constructor for the interface.
const std::vector< std::string > _vars
Variables passed to libMesh::ParsedFunction.
Parses and evaluates a function expression to populate a control value.
Real & _value
Control value to populate.
static InputParameters validParams()
virtual void init() override
Initialization that occurs in ChainControlSetupAction, right before the dependencies are added.
const std::string _function_expression
Function expression to parse and evaluate.
ParsedChainControl(const InputParameters ¶meters)
void buildFunction()
Builds the function that will be evaluated by this control.
virtual void execute() override
Execute the control.
std::unique_ptr< ChainControlParsedFunctionWrapper > _function_ptr
Pointer to the Parsed chain control function.
const Point _point
Spatial point at which to evaluate the function.