ChainControls System
The ChainControls
system is an extension of the Controls system that uses ChainControl
objects, which instead of working directly with controllable parameters, work with an additional layer of "control data", ChainControlData. ChainControl
objects can do the following:
Declare new control data
Retrieve control data declared elsewhere
Change control data values
Set controllable parameters in MOOSE objects using control data
The main advantage of this additional capability is to chain control operations together, which is useful for composing complex control systems.
ChainControlData
is managed by the ChainControlDataSystem.
Objects and Associated Actions
Available Objects
- Moose App
- GetFunctionValueChainControlCreates a control data and populates it by evaluating a Function.
- GetPostprocessorChainControlCopies a post-processor value into a ChainControlData.
- LimitChainControlLimits a control value by a range.
- PIDChainControlImplements a proportional-integral-derivative (PID) controller.
- ParsedChainControlParses and evaluates a function expression to populate a control value.
- RealToBoolChainControlConverts a Real-valued chain control data to boolean.
- ScaleOldChainControlScales an old control value by another control value.
- SetBoolValueChainControlSets parameter(s) of type 'bool' to a control data value of type 'bool'.
- SetRealValueChainControlSets parameter(s) of type 'double' to a control data value of type 'double'.
- SmootherChainControlComputes a moving average of the input control with a user-specified number of points to average.
- TerminateChainControlTerminates the simulation when a boolean chain control data has a certain value.
- UnitTripChainControlTrips a boolean value if an input boolean value is a certain value.
Available Actions
- Moose App
- AddChainControlActionAdds a ChainControl to the control warehouse.