UnitTripControl

Trips a boolean based on the evaluation of a parsed condition expression

This object defines a control logic boolean state that is set to true if the condition is true, and false if the condition is false. Using the "latch" parameter, the state can always remain true after a trip, or go back to false if the expression no longer evaluates to true.

Example input syntax

In this example, the value of the postprocessor a controls the trip of the ControlLogic trip_ctrl, when its value becomes larger than 0.6.

[Postprocessors]
  [a]
    type = FunctionValuePostprocessor
    function = fn
    execute_on = 'timestep_begin'
  []

  [trip_state]
    type = BoolControlDataValuePostprocessor
    control_data_name = trip_ctrl:state
    execute_on = 'timestep_end'
  []
[]

[ControlLogic]
  [trip_ctrl]
    type = UnitTripControl
    condition = 'a > 0.6'
    symbol_names = 'a'
    symbol_values = 'a'
  []
[]
(contrib/moose/modules/thermal_hydraulics/test/tests/controls/unit_trip_control/test.i)

Input Parameters

  • conditionThe condition that this trip unit uses to determine its state.

    C++ Type:FunctionExpression

    Unit:(no unit assumed)

    Controllable:No

    Description:The condition that this trip unit uses to determine its state.

Required Parameters

  • depends_onThe Controls that this control relies upon (i.e. must execute before this one)

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:The Controls that this control relies upon (i.e. must execute before this one)

  • latchFalseDetermines if the output of this control stays true after the trip went from false to true.

    Default:False

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Determines if the output of this control stays true after the trip went from false to true.

  • symbol_namesSymbols (excluding t,x,y,z) that are bound to the values provided by the corresponding items in the vals vector.

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:Symbols (excluding t,x,y,z) that are bound to the values provided by the corresponding items in the vals vector.

  • symbol_valuesConstant numeric values, postprocessor names, function names, and scalar variables corresponding to the symbols in symbol_names.

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:Constant numeric values, postprocessor names, function names, and scalar variables corresponding to the symbols in symbol_names.

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Set the enabled status of the MooseObject.

  • implicitTrueDetermines whether this object is calculated using an implicit or explicit form

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Determines whether this object is calculated using an implicit or explicit form

Advanced Parameters