TerminateChainControl

This ChainControl terminates the simulation when a boolean chain control data has a given value. The simulation may be terminated either by throwing an error or by signalling to the problem to terminate. This behavior is controlled with the parameter "throw_error".

commentnote:The Terminator user object

An alternative way to terminate a simulation is to use a Terminator user object, but Terminator works with Postprocessors for the criterion instead of a boolean chain control data.

schooltip:Converting to boolean control data

This object requires the input data to have type bool. If you have a data of type Real, you can convert using RealToBoolChainControl.

Input Parameters

  • inputBoolean control data indicating if the simulation should be terminated

    C++ Type:std::string

    Unit:(no unit assumed)

    Controllable:No

    Description:Boolean control data indicating if the simulation should be terminated

  • termination_messageMessage to use if termination occurs

    C++ Type:std::string

    Unit:(no unit assumed)

    Controllable:No

    Description:Message to use if termination occurs

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)

  • execute_onINITIAL TIMESTEP_ENDThe list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

    Default:INITIAL TIMESTEP_END

    C++ Type:ExecFlagEnum

    Unit:(no unit assumed)

    Options:NONE, INITIAL, LINEAR, NONLINEAR_CONVERGENCE, NONLINEAR, POSTCHECK, TIMESTEP_END, TIMESTEP_BEGIN, MULTIAPP_FIXED_POINT_END, MULTIAPP_FIXED_POINT_BEGIN, FINAL, CUSTOM, PRE_MULTIAPP_SETUP

    Controllable:No

    Description:The list of flag(s) indicating when this object should be executed. For a description of each flag, see https://mooseframework.inl.gov/source/interfaces/SetupInterface.html.

  • terminate_on_trueTrueIf set to 'true', termination occurs if the input has a value of 'true'; else termination occurs if the input has a value of 'false'

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:If set to 'true', termination occurs if the input has a value of 'true'; else termination occurs if the input has a value of 'false'

  • throw_errorFalseFlag to throw an error on termination; else just signal the problem to terminate the solve.

    Default:False

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Flag to throw an error on termination; else just signal the problem to terminate the solve.

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