FEEDBACK_CONDITION

Specifies a feedback condition and its parameters.

Type

AcuSolve Command

Syntax

FEEDBACK("name") {parameters...}

Parameters

type (enumerated) [point]

Type of feedback condition.

point
Feedback condition is associated with a reference point.
point (string) [no default]
User-given name of the TIME_HISTORY_OUTPUT that provides the points on which the feedback condition will be evaluated.
control_type (enumerated) [upper_limit]
Condition that is satisfied.
upper_limit
Feedback condition is enabled if the condition is above a certain value.
target_value
Feedback condition is enabled/disabled if the condition is below/above a certain value.
control_variable_evaluation (enumerated) [average]
How the feedback condition on the reference region is satisfied.
average
control_type evaluated based on the average value of the control variable in the reference region. For type = points this represents the average value of all points in a set.
maximum
control_type evaluated based on the maximum value of the control variable in the reference region. For type = points this represents the maximum value of all points in a set.
minimum

control_type evaluated based on the minimum value of the control variable in the reference region. For type = points this represents the minimum value of all points in a set.

control_variable (enumerated) [temperature]
Variable used to evaluate the control type.
temperature
Temperature is used to evaluate the control_type in the reference region.
control_value (real) [=0]
Value of the control_variable in the reference region used to evaluate the control_type.
input_variable (enumerated) [heat]
Input variable that is controlled by the condition specified in the reference region.
heat
Heat input is controlled by the control_type and control_variable.

Description

The FEEDBACK_CONDITION is designed to regulate input heat, for example, a surface flux or volumetric heat source, based on specific criteria within a designated region or point in the domain, for example, a surface. An illustrative example of this condition is an oven during the heating phase. As the oven heats up, the oven heater operates, while the air temperature is continuously monitored to ensure the oven reaches the desired temperature. As long as the oven temperature remains below the desired level, the heater remains active. Once the oven temperature reaches or exceeds the desired level, the heater deactivates and remains off while the temperature remains at or above the desired threshold.

To achieve the above protocol, a FEEDBACK_CONDITION can be created:
FEEDBACK_CONDITION("feedback_example") {
    type = point
    point = "reference point"
    control_type = target_value
    control_variable_evaluation = maximum
    control_variable = temperature
    control_value = 453.15
    input_variable = heat
 }
In this scenario, the FEEDBACK_CONDITION references a TIME_HISTORY_OUTPUT, that is, the “reference point”, which could represent a thermocouple continuously monitoring temperature, for instance:
TIME_HISTORY_OUTPUT(  "reference_point" ) {
    type = nodal
    nodes = { 48326 }
    output_frequency = 1.0
    output_time_interval = 0.0
}
The FEEDBACK_CONDITION is linked to a heat source, that is, the input to the control system, such as a flux or volumetric heat source. The heat source undergoes adjustments based on the parameters of the FEEDBACK_CONDITION, for example, maintaining the desired temperature of 453.15K. As an example, a VOLUME_HEAT_SOURCE referencing a FEEDBACK_CONDITION is:
VOLUME_HEAT_SOURCE(  "HeatSource" ) {
    type = constant
    volume_heat_source = 5e07 
    feedback_condition = "feedback_example"
}

Currently, FEEDBACK_CONDITION is only supported by the energy equation. The input_variable of type heat can only be a VOLUME_HEAT_SOURCE or SIMPLE_BOUNDARY_CONDITION.