diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Controller.mo new file mode 100644 index 00000000000..f294fbddf29 --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Controller.mo @@ -0,0 +1,1154 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit; +block Controller + "Fan coil unit controller that comprises subsequences for controlling fan speed and supply air temperature" + + parameter Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil cooCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + "Cooling coil type" + annotation (__cdl(ValueInReference=false), + Dialog(group="System and building parameters")); + parameter Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil heaCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + "Heating coil type" + annotation (__cdl(ValueInReference=false), + Dialog(group="System and building parameters")); + + parameter Boolean have_winSen=false + "True if the zone has window status sensor" + annotation(__cdl(ValueInReference=false)); + + parameter Boolean have_occSen=false + "True if the zone has occupancy sensor" + annotation(__cdl(ValueInReference=false)); + + parameter Real heaDea( + unit="1", + displayUnit="1")=0.05 + "Heating loop signal limit above which controller operation changes from deadband mode to heating mode" + annotation (__cdl(ValueInReference=false), + Dialog(enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric)); + + parameter Real cooDea( + unit="1", + displayUnit="1")=0.05 + "Cooling loop signal limit above which controller operation changes from deadband mode to cooling mode" + annotation(__cdl(ValueInReference=false), + Dialog(enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil)); + + parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeCoo= + Buildings.Controls.OBC.CDL.Types.SimpleController.PI + "Type of cooling loop signal controller" + annotation (Dialog(tab="PID parameters", group="Cooling loop control", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil)); + + parameter Real kCoo(unit="1/K")=0.1 + "Gain for cooling control loop signal" + annotation(Dialog(tab="PID parameters", group="Cooling loop control", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil)); + + parameter Real TiCoo(unit="s")=900 + "Time constant of integrator block for cooling control loop signal" + annotation(Dialog(tab="PID parameters", group="Cooling loop control", + enable=(controllerTypeCoo == Buildings.Controls.OBC.CDL.Types.SimpleController.PI + or controllerTypeCoo == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and (cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil))); + + parameter Real TdCoo(unit="s")=0.1 + "Time constant of derivative block for cooling control loop signal" + annotation (Dialog(tab="PID parameters", group="Cooling loop control", + enable=(controllerTypeCoo == Buildings.Controls.OBC.CDL.Types.SimpleController.PD + or controllerTypeCoo == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and (cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil))); + + parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeHea= + Buildings.Controls.OBC.CDL.Types.SimpleController.PI + "Type of heating loop signal controller" + annotation(Dialog(tab="PID parameters", group="Heating loop control", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric)); + + parameter Real kHea(unit="1/K")=0.1 + "Gain for heating control loop signal" + annotation(Dialog(tab="PID parameters", group="Heating loop control", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric)); + + parameter Real TiHea(unit="s")=900 + "Time constant of integrator block for heating control loop signal" + annotation(Dialog(tab="PID parameters", group="Heating loop control", + enable=(controllerTypeHea == Buildings.Controls.OBC.CDL.Types.SimpleController.PI + or controllerTypeHea == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and (heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric))); + + parameter Real TdHea(unit="s")=0.1 + "Time constant of derivative block for heating control loop signal" + annotation (Dialog(tab="PID parameters", group="Heating loop control", + enable=(controllerTypeHea == Buildings.Controls.OBC.CDL.Types.SimpleController.PD + or controllerTypeHea == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and (heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric))); + + parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeCooCoi= + Buildings.Controls.OBC.CDL.Types.SimpleController.PI + "Type of cooling coil controller" + annotation(Dialog(tab="PID parameters", group="Cooling coil control", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil)); + + parameter Real kCooCoi(unit="1/K")=0.1 + "Gain for cooling coil control signal" + annotation(Dialog(tab="PID parameters", group="Cooling coil control", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil)); + + parameter Real TiCooCoi(unit="s")=900 + "Time constant of integrator block for cooling coil control signal" + annotation(Dialog(tab="PID parameters", group="Cooling coil control", + enable=(controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PI + or controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and (cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil))); + + parameter Real TdCooCoi(unit="s")=0.1 + "Time constant of derivative block for cooling coil control signal" + annotation (Dialog(tab="PID parameters", group="Cooling coil control", + enable=(controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PD + or controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and (cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil))); + + parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeHeaCoi= + Buildings.Controls.OBC.CDL.Types.SimpleController.PI + "Type of heating coil controller" + annotation(Dialog(tab="PID parameters", group="Heating coil control", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric)); + + parameter Real kHeaCoi(unit="1/K")=0.1 + "Gain for heating coil control signal" + annotation(Dialog(tab="PID parameters", group="Heating coil control", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric)); + + parameter Real TiHeaCoi(unit="s")=900 + "Time constant of integrator block for heating coil control signal" + annotation(Dialog(tab="PID parameters", group="Heating coil control", + enable=(controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PI + or controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and (heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric))); + + parameter Real TdHeaCoi(unit="s")=0.1 + "Time constant of derivative block for heatinging coil control signal" + annotation (Dialog(tab="PID parameters", group="Heating coil control", + enable=(controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PD + or controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and (heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric))); + + parameter Real uCooFan_min(unit="1")=0.5 + "Cooling loop signal limit at which supply air temperature is at minimum and fan speed starts to be modified" + annotation (Dialog(tab="Supply air setpoints", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil)); + + parameter Real uHeaFan_min(unit="1")=0.5 + "Heating loop signal limit at which supply air temperature is at maximum and fan speed starts to be modified" + annotation (Dialog(tab="Supply air setpoints", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric)); + + parameter Real TSupSet_max(unit="K", displayUnit="degC") + "Maximum supply air temperature for heating" + annotation (Dialog(tab="Supply air setpoints",group="Temperature limits", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric)); + + parameter Real TSupSet_min(unit="K", displayUnit="degC") + "Minimum supply air temperature for cooling" + annotation (Dialog(tab="Supply air setpoints",group="Temperature limits", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil)); + + parameter Real deaSpe( + unit="1", + displayUnit="1")=0.1 + "Deadband mode fan speed" + annotation (__cdl(ValueInReference=false), + Dialog(tab="Supply air setpoints",group="Fan speed")); + + parameter Real uHeaFan_max(unit="1")=1 + "Maximum heating loop signal at which fan speed is modified" + annotation (Dialog(tab="Supply air setpoints",group="Fan speed - Heating", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric)); + + parameter Real heaSpe_max(unit="1")=1 + "Maximum fan speed for heating" + annotation (Dialog(tab="Supply air setpoints",group="Fan speed - Heating", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric)); + + parameter Real heaSpe_min(unit="1")=0.1 + "Minimum fan speed for heating" + annotation (__cdl(ValueInReference=false), + Dialog(tab="Supply air setpoints",group="Fan speed - Heating", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric)); + + parameter Real uCooFan_max(unit="1")=1 + "Maximum cooling loop signal at which fan speed is modified" + annotation (Dialog(tab="Supply air setpoints",group="Fan speed - Cooling", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil)); + + parameter Real cooSpe_max(unit="1")=1 + "Maximum fan speed for cooling" + annotation (Dialog(tab="Supply air setpoints",group="Fan speed - Cooling", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil)); + + parameter Real cooSpe_min(unit="1")=0.1 + "Minimum fan speed for cooling" + annotation (__cdl(ValueInReference=false), + Dialog(tab="Supply air setpoints",group="Fan speed - Cooling", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil)); + + parameter Boolean have_locAdj=true + "Flag, set to true if both cooling and heating setpoint are adjustable through a single common knob" + annotation (Dialog(tab="Adjust temperature setpoint", group="General")); + + parameter Boolean sepAdj=false + "True: cooling and heating setpoint can be adjusted separately" + annotation (Dialog(tab="Adjust temperature setpoint", group="General")); + + parameter Boolean ignDemLim=false + "Flag, set to true to exempt individual zone from demand limit setpoint adjustment" + annotation (Dialog(tab="Adjust temperature setpoint", group="General")); + + parameter Real bouLim=1 + "Threshold of temperature difference for indicating the end of setback or setup mode" + annotation (Dialog(tab="Adjust temperature setpoint", group="Advanced")); + + parameter Real TActCoo_max( + unit="K", + displayUnit="degC")=300.15 + "Maximum cooling setpoint during on" + annotation (Dialog(tab="Adjust temperature setpoint", group="Limits")); + + parameter Real TActCoo_min( + unit="K", + displayUnit="degC")=295.15 + "Minimum cooling setpoint during on" + annotation (Dialog(tab="Adjust temperature setpoint", group="Limits")); + + parameter Real TActHea_max( + unit="K", + displayUnit="degC")=295.15 + "Maximum heating setpoint during on" + annotation (Dialog(tab="Adjust temperature setpoint", group="Limits")); + + parameter Real TActHea_min( + unit="K", + displayUnit="degC")=291.15 + "Minimum heating setpoint during on" + annotation (Dialog(tab="Adjust temperature setpoint", group="Limits")); + + parameter Real TWinOpeCooSet( + unit="K", + displayUnit="degC")=322.15 + "Cooling setpoint when window is open" + annotation (Dialog(tab="Adjust temperature setpoint", group="Limits")); + + parameter Real TWinOpeHeaSet( + unit="K", + displayUnit="degC")=277.15 + "Heating setpoint when window is open" + annotation (Dialog(tab="Adjust temperature setpoint", group="Limits")); + + parameter Real incTSetDem_1( + unit="K", + displayUnit="K")=0.56 + "Cooling setpoint increase value (degC) when cooling demand limit level 1 is imposed" + annotation (Dialog(tab="Adjust temperature setpoint", group="Demand control adjustment")); + + parameter Real incTSetDem_2( + unit="K", + displayUnit="K")=1.1 + "Cooling setpoint increase value (degC) when cooling demand limit level 2 is imposed" + annotation (Dialog(tab="Adjust temperature setpoint", group="Demand control adjustment")); + + parameter Real incTSetDem_3( + unit="K", + displayUnit="K")=2.2 + "Cooling setpoint increase value (degC) when cooling demand limit level 3 is imposed" + annotation (Dialog(tab="Adjust temperature setpoint", group="Demand control adjustment")); + + parameter Real decTSetDem_1( + unit="K", + displayUnit="K")=0.56 + "Heating setpoint decrease value (degC) when heating demand limit level 1 is imposed" + annotation (Dialog(tab="Adjust temperature setpoint", group="Demand control adjustment")); + + parameter Real decTSetDem_2( + unit="K", + displayUnit="K")=1.1 + "Heating setpoint decrease value (degC) when heating demand limit level 2 is imposed" + annotation (Dialog(tab="Adjust temperature setpoint", group="Demand control adjustment")); + + parameter Real decTSetDem_3( + unit="K", + displayUnit="K")=2.2 + "Heating setpoint decrease value (degC) when heating demand limit level 3 is imposed" + annotation (Dialog(tab="Adjust temperature setpoint", group="Demand control adjustment")); + + parameter Real chiWatPlaReqLim0( + unit="1", + displayUnit="1")=0.1 + "Valve position limit below which zero chilled water plant requests are sent when one request was previously being sent" + annotation(Dialog(tab="Request limits", group="Chilled water plant requests", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased)); + + parameter Real chiWatResReqLim0( + unit="1", + displayUnit="1")=0.85 + "Valve position limit below which zero chilled water reset requests are sent when one request was previously being sent" + annotation(Dialog(tab="Request limits", group="Chilled water temperature reset requests", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased)); + + parameter Real chiWatPlaReqLim1( + unit="1", + displayUnit="1")=0.95 + "Valve position limit above which one chilled water plant request is sent" + annotation(Dialog(tab="Request limits", group="Chilled water plant requests", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased)); + + parameter Real chiWatResReqLim2( + unit="K", + displayUnit="K")=2.78 + "Temperature difference limit between setpoint and supply air temperature above which two chilled water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Chilled water temperature reset requests", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased)); + + parameter Real chiWatResReqTimLim2( + unit="s", + displayUnit="s")=300 + "Time period for which chiWatResReqLim2 has to be exceeded before two chilled water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Chilled water temperature reset requests", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased)); + + parameter Real chiWatResReqLim3( + unit="K", + displayUnit="K")=5.56 + "Temperature difference limit between setpoint and supply air temperature above which three chilled water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Chilled water temperature reset requests", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased)); + + parameter Real chiWatResReqTimLim3( + unit="s", + displayUnit="s")=300 + "Time period for which chiWatResReqLim3 has to be exceeded before three chilled water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Chilled water temperature reset requests", + enable=cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased)); + + parameter Real hotWatPlaReqLim0( + unit="1", + displayUnit="1")=0.1 + "Valve position limit below which zero hot water plant requests are sent when one request was previously being sent" + annotation(Dialog(tab="Request limits", group="Hot water requests", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased)); + + parameter Real hotWatResReqLim0( + unit="1", + displayUnit="1")=0.85 + "Valve position limit below which zero hot water reset requests are sent when one request was previously being sent" + annotation(Dialog(tab="Request limits", group="Hot water requests", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased)); + + parameter Real hotWatPlaReqLim1( + unit="1", + displayUnit="1")=0.95 + "Valve position limit above which one hot water plant request is sent" + annotation(Dialog(tab="Request limits", group="Hot water requests", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased)); + + parameter Real hotWatResReqLim2( + unit="K", + displayUnit="K")=8 + "Temperature difference limit between setpoint and supply air temperature above which two hot water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Hot water requests", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased)); + + parameter Real hotWatResReqTimLim2( + unit="s", + displayUnit="s")=300 + "Time period for which hotWatResReqLim2 has to be exceeded before two hot water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Hot water requests", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased)); + + parameter Real hotWatResReqLim3( + unit="K", + displayUnit="K")=17 + "Temperature difference limit between setpoint and supply air temperature above which three hot water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Hot water requests", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased)); + + parameter Real hotWatResReqTimLim3( + unit="s", + displayUnit="s")=300 + "Time period for which hotWatResReqLim3 has to be exceeded before three hot water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Hot water requests", + enable=heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased)); + + parameter Real uLow( + unit="1", + displayUnit="1")=-0.1 + "Lower limit of the hysteresis for checking temperature difference" + annotation (__cdl(ValueInReference=false), Dialog(tab="Advanced")); + + parameter Real uHigh( + unit="1", + displayUnit="1")=0.1 + "Higher limit of the hysteresis for checking temperature difference" + annotation (__cdl(ValueInReference=false), Dialog(tab="Advanced")); + + parameter Real deaHysLim( + unit="1", + displayUnit="1")=0.01 + "Hysteresis limits for cooling and heating loop signals for deadband mode transitions" + annotation (__cdl(ValueInReference=false), Dialog(tab="Advanced")); + + parameter Real preWarCooTim( + unit="s", + displayUnit="s")=10800 + "Maximum cool-down or warm-up time" + annotation(Dialog(tab="Advanced", group="Operation mode")); + + parameter Real Thys( + unit="1", + displayUnit="1")=0.1 + "Hysteresis for checking temperature difference" + annotation(__cdl(ValueInReference=false), Dialog(tab="Advanced")); + + parameter Real dFanSpe( + unit="1", + displayUnit="1")=0.05 + "Fan speed hysteresis difference" + annotation(__cdl(ValueInReference=false), Dialog(tab="Advanced")); + + Buildings.Controls.OBC.CDL.Interfaces.BooleanInput u1Occ + "Current occupancy period, true if it is in occupant period" + annotation (Placement(transformation(extent={{-260,60},{-220,100}}), + iconTransformation(extent={{-240,82},{-200,122}}))); + + Buildings.Controls.OBC.CDL.Interfaces.BooleanInput u1Win if have_winSen + "Window status, normally closed (true), when windows open, it becomes false" + annotation (Placement(transformation(extent={{-260,-280},{-220,-240}}), + iconTransformation(extent={{-240,-360},{-200,-320}}))); + + Buildings.Controls.OBC.CDL.Interfaces.BooleanInput u1Fan + "Fan proven on signal" + annotation (Placement(transformation(extent={{-260,-250},{-220,-210}}), + iconTransformation(extent={{-240,-320},{-200,-280}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerInput uCooDemLimLev + "Cooling demand limit level" + annotation (Placement(transformation(extent={{-260,30},{-220,70}}), + iconTransformation(extent={{-240,40},{-200,80}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerInput uHeaDemLimLev + "Heating demand limit level" + annotation (Placement(transformation(extent={{-260,0},{-220,40}}), + iconTransformation(extent={{-240,0},{-200,40}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerInput nOcc if have_occSen + "Number of occupants" + annotation (Placement(transformation(extent={{-260,-220},{-220,-180}}), + iconTransformation(extent={{-240,-280},{-200,-240}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput warUpTim( + final unit="s", + displayUnit="min", + final quantity="Time") + "Warm-up time retrieved from optimal warm-up block" + annotation (Placement(transformation(extent={{-260,240},{-220,280}}), + iconTransformation(extent={{-240,340},{-200,380}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput cooDowTim( + final unit="s", + displayUnit="min", + final quantity="Time") + "Cool-down time retrieved from optimal cool-down block" + annotation (Placement(transformation(extent={{-260,270},{-220,310}}), + iconTransformation(extent={{-240,300},{-200,340}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput tNexOcc( + final unit="s", + displayUnit="min", + final quantity="Time") + "Time to next occupied period" + annotation (Placement(transformation(extent={{-260,210},{-220,250}}), + iconTransformation(extent={{-240,260},{-200,300}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TZon( + final unit="K", + displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Measured zone temperatures" + annotation (Placement(transformation(extent={{-260,-60},{-220,-20}}), + iconTransformation(extent={{-240,-80},{-200,-40}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TSup( + final unit="K", + displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Measured supply air temperature" + annotation (Placement(transformation(extent={{-260,-30},{-220,10}}), + iconTransformation(extent={{-240,-40},{-200,0}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput setAdj( + final unit="K", + displayUnit="degC", + final quantity="TemperatureDifference") + if have_locAdj and not sepAdj + "Setpoint adjustment value" + annotation (Placement(transformation(extent={{-260,150},{-220,190}}), + iconTransformation(extent={{-240,200},{-200,240}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput cooSetAdj( + final unit="K", + displayUnit="degC", + final quantity="TemperatureDifference") if have_locAdj and sepAdj + "Cooling setpoint adjustment value" + annotation (Placement(transformation(extent={{-260,120},{-220,160}}), + iconTransformation(extent={{-240,160},{-200,200}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput heaSetAdj( + final unit="K", + displayUnit="degC", + final quantity="TemperatureDifference") if have_locAdj and sepAdj + "Heating setpoint adjustment value" + annotation (Placement(transformation(extent={{-260,90},{-220,130}}), + iconTransformation(extent={{-240,122},{-200,162}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TOccHeaSet( + final unit="K", + displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Occupied heating setpoint temperature" + annotation (Placement(transformation(extent={{-260,-90},{-220,-50}}), + iconTransformation(extent={{-240,-120},{-200,-80}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TOccCooSet( + final unit="K", + displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Occupied cooling setpoint temperature" + annotation (Placement(transformation(extent={{-260,-120},{-220,-80}}), + iconTransformation(extent={{-240,-160},{-200,-120}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TUnoHeaSet( + final unit="K", + displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Unoccupied heating setpoint temperature" + annotation (Placement(transformation(extent={{-260,-150},{-220,-110}}), + iconTransformation(extent={{-240,-200},{-200,-160}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TUnoCooSet( + final unit="K", + displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Unoccupied cooling setpoint temperature" + annotation (Placement(transformation(extent={{-260,-180},{-220,-140}}), + iconTransformation(extent={{-240,-240},{-200,-200}}))); + + Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput y1Fan + "Fan command on status" + annotation (Placement(transformation(extent={{200,220},{240,260}}), + iconTransformation(extent={{200,180},{240,220}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerOutput yChiWatResReq + if cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + "Chilled water reset request" + annotation (Placement(transformation(extent={{200,-80},{240,-40}}), + iconTransformation(extent={{200,-100},{240,-60}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerOutput yChiPlaReq + if cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + "Chiller plant requests" + annotation (Placement(transformation(extent={{200,-120},{240,-80}}), + iconTransformation(extent={{200,-140},{240,-100}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerOutput yHotWatResReq + if heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + "Hot water reset requests" + annotation (Placement(transformation(extent={{200,-160},{240,-120}}), + iconTransformation(extent={{200,-180},{240,-140}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerOutput yHotWatPlaReq + if heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + "Hot water plant requests" + annotation (Placement(transformation(extent={{200,-200},{240,-160}}), + iconTransformation(extent={{200,-220},{240,-180}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealOutput TSupSet( + final unit="K", + displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Supply air temperature setpoint" + annotation (Placement(transformation(extent={{200,20},{240,60}}), + iconTransformation(extent={{200,-60},{240,-20}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealOutput yFan( + final min=0, + final max=1, + final unit="1") + "Fan command speed" + annotation (Placement(transformation(extent={{200,180},{240,220}}), + iconTransformation(extent={{200,140},{240,180}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealOutput TZonHeaSet( + final unit="K", + displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Heating setpoint temperature" + annotation (Placement(transformation(extent={{200,140},{240,180}}), + iconTransformation(extent={{200,100},{240,140}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealOutput TZonCooSet( + final unit="K", + displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Cooling setpoint temperature" + annotation (Placement(transformation(extent={{200,100},{240,140}}), + iconTransformation(extent={{200,60},{240,100}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealOutput yCooCoi( + final min=0, + final max=1, + final unit="1") + if cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil + "Cooling coil control signal" + annotation (Placement(transformation(extent={{200,-40},{240,0}}), + iconTransformation(extent={{200,-20},{240,20}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealOutput yHeaCoi( + final min=0, + final max=1, + final unit="1") + if heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased or heaCoi==Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric + "Heating coil control signal" + annotation (Placement(transformation(extent={{200,60},{240,100}}), + iconTransformation(extent={{200,20},{240,60}}))); + + Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.ModeAndSetPoints modSetPoi( + final have_winSen=have_winSen, + final have_occSen=have_occSen, + final sepAdj=sepAdj, + final TActCoo_max=TActCoo_max, + final TActCoo_min=TActCoo_min, + final TActHea_max=TActHea_max, + final TActHea_min=TActHea_min, + final TWinOpeCooSet=TWinOpeCooSet, + final TWinOpeHeaSet=TWinOpeHeaSet, + final have_locAdj=have_locAdj, + final ignDemLim=ignDemLim, + final incTSetDem_1=incTSetDem_1, + final incTSetDem_2=incTSetDem_2, + final incTSetDem_3=incTSetDem_3, + final decTSetDem_1=decTSetDem_1, + final decTSetDem_2=decTSetDem_2, + final decTSetDem_3=decTSetDem_3, + final bouLim=bouLim, + final uLow=uLow, + final uHigh=uHigh, + final preWarCooTim=preWarCooTim) + "Zone setpoint and operation mode" + annotation (Placement(transformation(extent={{-140,190},{-120,230}}))); + + Buildings.Controls.OBC.CDL.Reals.PIDWithReset cooPI( + final reverseActing=false, + final controllerType=controllerTypeCoo, + final k=kCoo, + final Ti=TiCoo, + final Td=TdCoo) if cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil + "Zone cooling control signal" + annotation (Placement(transformation(extent={{-40,196},{-20,216}}))); + + Buildings.Controls.OBC.CDL.Reals.PIDWithReset heaPI( + final controllerType=controllerTypeHea, + final k=kHea, + final Ti=TiHea, + final Td=TdHea) if heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric + "Zone heating control signal" + annotation (Placement(transformation(extent={{-80,250},{-60,270}}))); + + +protected + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.PlantRequests fcuPlaReq( + final have_hotWatCoi=heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased, + final have_chiWatCoi=cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased, + final cooSpe_max=cooSpe_max, + final heaSpe_max=heaSpe_max, + final chiWatPlaReqLim0=chiWatPlaReqLim0, + final chiWatResReqLim0=chiWatResReqLim0, + final chiWatPlaReqLim1=chiWatPlaReqLim1, + final chiWatResReqLim2=chiWatResReqLim2, + final chiWatResReqTimLim2=chiWatResReqTimLim2, + final chiWatResReqLim3=chiWatResReqLim3, + final chiWatResReqTimLim3=chiWatResReqTimLim3, + final hotWatPlaReqLim0=hotWatPlaReqLim0, + final hotWatResReqLim0=hotWatResReqLim0, + final hotWatPlaReqLim1=hotWatPlaReqLim1, + final hotWatResReqLim2=hotWatResReqLim2, + final hotWatResReqTimLim2=hotWatResReqTimLim2, + final hotWatResReqLim3=hotWatResReqLim3, + final hotWatResReqTimLim3=hotWatResReqTimLim3, + final Thys=Thys, + final dFanSpe=dFanSpe) if cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + "Block for generating chilled water requests and hot water requests for their respective plants" + annotation (Placement(transformation(extent={{120,-60},{140,-40}}))); + + Buildings.Controls.OBC.CDL.Integers.Sources.Constant unOccMod( + final k=Buildings.Controls.OBC.ASHRAE.G36.Types.OperationModes.unoccupied) + "Unoccupied mode" + annotation (Placement(transformation(extent={{-160,-290},{-140,-270}}))); + + Buildings.Controls.OBC.CDL.Integers.Equal isUnOcc + "Check if current operation mode is unoccupied mode" + annotation (Placement(transformation(extent={{-100,-290},{-80,-270}}))); + + Buildings.Controls.OBC.CDL.Logical.Not isOcc + "If in unoccupied mode, switch off" + annotation (Placement(transformation(extent={{-70,-290},{-50,-270}}))); + + Buildings.Controls.OBC.CDL.Logical.Sources.Constant win( + final k=false) if not have_winSen + "Window status" + annotation (Placement(transformation(extent={{-200,-190},{-180,-170}}))); + + Buildings.Controls.OBC.CDL.Integers.GreaterEqualThreshold havOcc( + final t=1) if have_occSen + "Check if there is occupant" + annotation (Placement(transformation(extent={{-202,-220},{-182,-200}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.SupplyAirTemperature TSupAir( + final have_cooCoi=cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil, + final have_heaCoi=heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric, + final TSupSet_max=TSupSet_max, + final uHea_max=uHeaFan_min, + final TSupSet_min=TSupSet_min, + final uCoo_max=uCooFan_min, + final heaDea=heaDea, + final cooDea=cooDea, + final controllerTypeCooCoi=controllerTypeCooCoi, + final kCooCoi=kCooCoi, + final TiCooCoi=TiCooCoi, + final TdCooCoi=TdCooCoi, + final controllerTypeHeaCoi=controllerTypeHeaCoi, + final kHeaCoi=kHeaCoi, + final TiHeaCoi=TiHeaCoi, + final TdHeaCoi=TdHeaCoi, + final deaHysLim=deaHysLim) "Supply air temperature setpoint controller" + annotation (Placement(transformation(extent={{40,40},{60,60}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.FanSpeed fanSpe( + final have_cooCoi=cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil, + final have_heaCoi=heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric, + final deaSpe=deaSpe, + final heaSpe_min=heaSpe_min, + final uHea_min=uHeaFan_min, + final heaSpe_max=heaSpe_max, + final uHea_max=uHeaFan_max, + final cooSpe_min=cooSpe_min, + final uCoo_min=uCooFan_min, + final cooSpe_max=cooSpe_max, + final uCoo_max=uCooFan_max, + final heaDea=heaDea, + final cooDea=cooDea, + final deaHysLim=deaHysLim) "Fan speed controller" + annotation (Placement(transformation(extent={{40,210},{60,230}}))); + +equation + connect(unOccMod.y, isUnOcc.u2) annotation (Line(points={{-138,-280},{-120,-280}, + {-120,-288},{-102,-288}}, color={255,127,0})); + connect(isUnOcc.y, isOcc.u) + annotation (Line(points={{-78,-280},{-72,-280}}, color={255,0,255})); + connect(TZon, cooPI.u_m) annotation (Line(points={{-240,-40},{-30,-40},{-30,194}}, + color={0,0,127})); + connect(isOcc.y, heaPI.trigger) annotation (Line(points={{-48,-280},{-36,-280}, + {-36,124},{-76,124},{-76,248}}, color={255,0,255})); + connect(isOcc.y, cooPI.trigger) annotation (Line(points={{-48,-280},{-36,-280}, + {-36,194}}, color={255,0,255})); + connect(TZon, heaPI.u_m) annotation (Line(points={{-240,-40},{-70,-40},{-70,248}}, + color={0,0,127})); + connect(modSetPoi.THeaSet, heaPI.u_s) annotation (Line(points={{-118,202},{-100, + 202},{-100,260},{-82,260}}, color={0,0,127})); + connect(modSetPoi.THeaSet, TZonHeaSet) annotation (Line(points={{-118,202},{-54, + 202},{-54,160},{220,160}}, color={0,0,127})); + connect(modSetPoi.TCooSet, cooPI.u_s) annotation (Line(points={{-118,210},{-50, + 210},{-50,206},{-42,206}}, color={0,0,127})); + connect(modSetPoi.TCooSet, TZonCooSet) annotation (Line(points={{-118,210},{-50, + 210},{-50,120},{220,120}}, color={0,0,127})); + connect(TZon, modSetPoi.TZon) annotation (Line(points={{-240,-40},{-208,-40},{ + -208,220},{-142,220}}, color={0,0,127})); + connect(tNexOcc, modSetPoi.tNexOcc) annotation (Line(points={{-240,230},{-180, + 230},{-180,206},{-142,206}}, color={0,0,127})); + connect(u1Occ, modSetPoi.u1Occ) annotation (Line(points={{-240,80},{-184,80},{ + -184,208},{-142,208}}, color={255,0,255})); + connect(modSetPoi.yOpeMod, isUnOcc.u1) annotation (Line(points={{-118,218},{-110, + 218},{-110,-280},{-102,-280}}, color={255,127,0})); + connect(win.y, modSetPoi.u1Win) annotation (Line(points={{-178,-180},{-150,-180}, + {-150,223},{-142,223}}, color={255,0,255})); + connect(u1Win, modSetPoi.u1Win) annotation (Line(points={{-240,-260},{-150,-260}, + {-150,223},{-142,223}}, color={255,0,255})); + connect(havOcc.y, modSetPoi.u1OccSen) annotation (Line(points={{-180,-210},{ + -164,-210},{-164,196},{-142,196}}, color={255,0,255})); + connect(modSetPoi.warUpTim, warUpTim) annotation (Line(points={{-142,226},{-166, + 226},{-166,260},{-240,260}}, color={0,0,127})); + connect(modSetPoi.cooDowTim, cooDowTim) annotation (Line(points={{-142,228},{-160, + 228},{-160,290},{-240,290}}, color={0,0,127})); + connect(modSetPoi.uCooDemLimLev, uCooDemLimLev) annotation (Line(points={{-142, + 194},{-160,194},{-160,50},{-240,50}}, color={255,127,0})); + connect(modSetPoi.uHeaDemLimLev, uHeaDemLimLev) annotation (Line(points={{-142, + 192},{-156,192},{-156,20},{-240,20}}, color={255,127,0})); + connect(TSupAir.yCooCoi, yCooCoi) annotation (Line(points={{62,44},{90,44},{90, + -20},{220,-20}}, color={0,0,127})); + connect(TSupAir.yHeaCoi, yHeaCoi) annotation (Line(points={{62,56},{80,56},{80, + 80},{220,80}}, color={0,0,127})); + connect(TSupAir.TSupSet, TSupSet) annotation (Line(points={{62,50},{100,50},{100, + 40},{220,40}}, color={0,0,127})); + connect(fanSpe.yFan, yFan) annotation (Line(points={{62,218},{160,218},{160,200}, + {220,200}}, color={0,0,127})); + connect(fanSpe.y1Fan, y1Fan) annotation (Line(points={{62,222},{160,222},{160, + 240},{220,240}}, color={255,0,255})); + connect(modSetPoi.yOpeMod, fanSpe.opeMod) annotation (Line(points={{-118,218}, + {-60,218},{-60,226},{38,226}}, color={255,127,0})); + connect(TSup, TSupAir.TAirSup) annotation (Line(points={{-240,-10},{-80,-10},{ + -80,48},{38,48}},color={0,0,127})); + connect(u1Fan, fanSpe.u1FanPro) annotation (Line(points={{-240,-230},{8,-230}, + {8,222},{38,222}}, color={255,0,255})); + connect(heaPI.y, fanSpe.uHea) annotation (Line(points={{-58,260},{0,260},{0,218}, + {38,218}}, color={0,0,127})); + connect(cooPI.y, fanSpe.uCoo) annotation (Line(points={{-18,206},{20,206},{20, + 214},{38,214}}, color={0,0,127})); + connect(modSetPoi.TCooSet,TSupAir.TZonCooSet) annotation (Line(points={{-118, + 210},{-50,210},{-50,41},{38,41}}, color={0,0,127})); + connect(modSetPoi.THeaSet,TSupAir.TZonHeaSet) annotation (Line(points={{-118, + 202},{-54,202},{-54,55},{38,55}}, color={0,0,127})); + connect(cooPI.y, TSupAir.uCoo) annotation (Line(points={{-18,206},{20,206},{20, + 45},{38,45}}, color={0,0,127})); + connect(heaPI.y, TSupAir.uHea) annotation (Line(points={{-58,260},{0,260},{0,52}, + {38,52}}, color={0,0,127})); + connect(u1Fan, TSupAir.u1Fan) annotation (Line(points={{-240,-230},{8,-230},{8, + 59},{38,59}}, color={255,0,255})); + connect(nOcc, havOcc.u) annotation (Line(points={{-240,-200},{-212,-200},{ + -212,-210},{-204,-210}}, + color={255,127,0})); + connect(cooSetAdj, modSetPoi.cooSetAdj) annotation (Line(points={{-240,140},{-172, + 140},{-172,201},{-142,201}}, color={0,0,127})); + connect(heaSetAdj, modSetPoi.heaSetAdj) annotation (Line(points={{-240,110},{-168, + 110},{-168,199},{-142,199}}, color={0,0,127})); + connect(TSup, fcuPlaReq.TAirSup) annotation (Line(points={{-240,-10},{-80,-10}, + {-80,-46},{118,-46}}, color={0,0,127})); + connect(fcuPlaReq.yChiWatResReq, yChiWatResReq) annotation (Line(points={{142,-44}, + {180,-44},{180,-60},{220,-60}}, color={255,127,0})); + connect(fcuPlaReq.yChiPlaReq, yChiPlaReq) annotation (Line(points={{142,-48},{ + 176,-48},{176,-100},{220,-100}}, color={255,127,0})); + connect(fcuPlaReq.yHotWatResReq, yHotWatResReq) annotation (Line(points={{142,-52}, + {170,-52},{170,-140},{220,-140}}, color={255,127,0})); + connect(fcuPlaReq.yHotWatPlaReq, yHotWatPlaReq) annotation (Line(points={{142,-56}, + {164,-56},{164,-180},{220,-180}}, color={255,127,0})); + connect(TSupAir.TSupSet, fcuPlaReq.TAirSupSet) annotation (Line(points={{62,50}, + {100,50},{100,-50},{118,-50}}, color={0,0,127})); + connect(fanSpe.yFan, fcuPlaReq.uFan) annotation (Line(points={{62,218},{110,218}, + {110,-42},{118,-42}}, color={0,0,127})); + connect(TOccHeaSet, modSetPoi.TOccHeaSet) annotation (Line(points={{-240,-70}, + {-202,-70},{-202,217},{-142,217}}, color={0,0,127})); + connect(TOccCooSet, modSetPoi.TOccCooSet) annotation (Line(points={{-240,-100}, + {-196,-100},{-196,215},{-142,215}}, color={0,0,127})); + connect(TUnoHeaSet, modSetPoi.TUnoHeaSet) annotation (Line(points={{-240,-130}, + {-192,-130},{-192,213},{-142,213}}, color={0,0,127})); + connect(TUnoCooSet, modSetPoi.TUnoCooSet) annotation (Line(points={{-240,-160}, + {-188,-160},{-188,211},{-142,211}}, color={0,0,127})); + connect(TSupAir.yHeaCoi, fcuPlaReq.uHeaCoiSet) annotation (Line(points={{62,56}, + {80,56},{80,-58},{118,-58}}, color={0,0,127})); + connect(TSupAir.yCooCoi, fcuPlaReq.uCooCoiSet) annotation (Line(points={{62,44}, + {90,44},{90,-53.8},{118,-53.8}}, color={0,0,127})); + connect(setAdj, modSetPoi.setAdj) annotation (Line(points={{-240,170},{-176,170}, + {-176,203},{-142,203}}, color={0,0,127})); +annotation (defaultComponentName="conFCU", + Icon(coordinateSystem(preserveAspectRatio=false, extent={{-200,-400},{200,400}}), + graphics={Rectangle( + extent={{-200,-400},{200,400}}, + lineColor={0,0,127}, + fillColor={255,255,255}, + fillPattern=FillPattern.Solid), + Text( + extent={{-200,500},{200,400}}, + textString="%name", + textColor={0,0,255}), + Text( + extent={{-196,296},{-134,268}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="tNexOcc"), + Text( + extent={{-200,-48},{-156,-68}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TZon"), + Text( + extent={{-196,114},{-150,94}}, + textColor={255,0,255}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="u1Occ"), + Text( + extent={{-200,-8},{-152,-30}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TSup"), + Text( + extent={{-198,-272},{-152,-244}}, + textColor={244,125,35}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="nOcc", + visible=have_occSen), + Text( + visible=have_winSen, + extent={{-196,-326},{-152,-348}}, + textColor={255,0,255}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="u1Win"), + Text( + extent={{132,-22},{198,-56}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TSupSet"), + Text( + extent={{148,172},{200,136}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="yFan"), + Text( + extent={{116,136},{194,102}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TZonHeaSet"), + Text( + extent={{116,98},{196,60}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TZonCooSet"), + Text( + extent={{142,60},{196,22}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="yHeaCoi", + visible=heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased + or heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.Electric), + Text( + extent={{142,20},{196,-18}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="yCooCoi", + visible=cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased + or cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.DXCoil), + Text( + extent={{-194,378},{-120,346}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="warUpTim"), + Text( + extent={{-194,338},{-114,306}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="cooDowTim"), + Text( + extent={{-194,74},{-82,52}}, + textColor={255,127,0}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="uCooDemLimLev"), + Text( + extent={{-194,32},{-82,10}}, + textColor={255,127,0}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="uHeaDemLimLev"), + Text( + extent={{-196,-290},{-150,-310}}, + textColor={255,0,255}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="u1Fan"), + Text( + extent={{144,212},{188,190}}, + textColor={255,0,255}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="y1Fan"), + Text( + extent={{-198,236},{-136,208}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="setAdj", + visible=have_locAdj and not sepAdj), + Text( + extent={{106,-90},{198,-66}}, + textColor={244,125,35}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="yChiWatResReq", + visible=cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased), + Text( + extent={{132,-130},{198,-108}}, + textColor={244,125,35}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="yChiPlaReq", + visible=cooCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased), + Text( + extent={{104,-170},{196,-146}}, + textColor={244,125,35}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="yHotWatResReq", + visible=heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased), + Text( + extent={{106,-210},{198,-186}}, + textColor={244,125,35}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="yHotWatPlaReq", + visible=heaCoi == Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased), + Text( + extent={{-196,-86},{-104,-114}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TOccHeaSet"), + Text( + extent={{-194,-128},{-98,-152}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TOccCooSet"), + Text( + extent={{-194,-168},{-98,-190}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TUnoHeaSet"), + Text( + extent={{-200,-208},{-94,-230}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TUnoCooSet"), + Text( + extent={{-196,196},{-124,168}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="cooSetAdj", + visible=have_locAdj and sepAdj), + Text( + extent={{-196,156},{-124,128}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="heaSetAdj", + visible=have_locAdj and sepAdj)}), + Diagram(coordinateSystem( + preserveAspectRatio=false, extent={{-220,-300},{200,300}})), +Documentation(info=" +

+Block for fan coil unit control. It outputs supply fan enable signal and speed signal, +the supply air temperature setpoint, the zone air heating and cooling setpoints, +and commanded valve positions for heating and cooling coils. +

+

+It is implemented according to the ASHRAE Guideline 36-2021, Part 5.22. +

+

+The sequences consist of the following subsequences. +

+

Supply fan control

+

+The supply fan control is implemented according to Part 5.22.4. It outputs +the control signals for supply fan enable yFan and the fan speed +yFanSpe. +See + +Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.FanSpeed for more detailed +description. +

+

Supply air temperature setpoint

+

+The supply air temperature setpoint control sequences are implemented based on Part 5.22.4. +The block outputs a supply air temperature setpoint signal TSupSet, +and control signals for the heating coil yHeaCoi and the cooling coil +yCooCoi. See + +Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.SupplyAirTemperature +for more detailed description. +

+

Zone air heating and cooling setpoints

+

+The zone air heating setpoint TZonHeaSetand cooling setpoint TZonHeaSet +as well as system operation mode signal modSetPoi.yOpeMod are described at + +Buildings.Controls.OBC.ASHRAE.G36.AHUs.SingleZone.VAV.SetPoints.ModeAndSetPoints. +

+

Plant requests

+

+The plant requests are implemented based on Part 5.22.8. +The block outputs a chilled water plant request yChiPlaReq, chilled +water supply temperature reset request yChiWatResReq, hot water plant +request yHotWatPlaReq and hot water supply temperature reset request +yHotWatResReq. See + +Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.PlantRequests +for more detailed description. +

+", +revisions=" + +")); +end Controller; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/FanSpeed.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/FanSpeed.mo new file mode 100644 index 00000000000..4888f4c5b2e --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/FanSpeed.mo @@ -0,0 +1,401 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences; +block FanSpeed + "Fan speed setpoint subsequence" + + parameter Boolean have_cooCoi + "True if the unit has a cooling coil" + annotation(__cdl(ValueInReference=false)); + + parameter Boolean have_heaCoi + "True if the unit has a heating coil" + annotation(__cdl(ValueInReference=false)); + + parameter Real deaSpe( + final unit="1", + displayUnit="1") = 0.1 + "Deadband mode fan speed" + annotation(__cdl(ValueInReference=false), Dialog(group="Deadband")); + + parameter Real heaSpe_min( + final unit="1", + displayUnit="1") = 0.1 + "Minimum heating mode fan speed" + annotation(__cdl(ValueInReference=false), + Dialog(group="Heating loop", enable = have_heaCoi)); + + parameter Real uHea_min( + final unit="1", + displayUnit="1") = 0.5 + "Minimum heating loop signal at which fan speed is modified" + annotation(Dialog(group="Heating loop", enable = have_heaCoi)); + + parameter Real heaSpe_max( + final unit="1", + displayUnit="1") = 0.6 + "Maximum heating mode fan speed" + annotation(__cdl(ValueInReference=false), + Dialog(group="Heating loop", enable = have_heaCoi)); + + parameter Real uHea_max( + final unit="1", + displayUnit="1") = 1 + "Maximum heating loop signal at which fan speed is modified" + annotation(Dialog(group="Heating loop", enable = have_heaCoi)); + + parameter Real cooSpe_min( + final unit="1", + displayUnit="1") = 0.2 + "Minimum cooling mode fan speed" + annotation(__cdl(ValueInReference=false), + Dialog(group="Cooling loop", enable = have_cooCoi)); + + parameter Real uCoo_min( + final unit="1", + displayUnit="1") = 0.5 + "Minimum cooling loop signal at which fan speed is modified" + annotation(Dialog(group="Cooling loop", enable = have_cooCoi)); + + parameter Real cooSpe_max( + final unit="1", + displayUnit="1") = 1 + "Maximum cooling mode fan speed" + annotation(__cdl(ValueInReference=false), + Dialog(group="Cooling loop", enable = have_cooCoi)); + + parameter Real uCoo_max( + final unit="1", + displayUnit="1") = 1 + "Maximum cooling loop signal at which fan speed is modified" + annotation(Dialog(group="Cooling loop", enable = have_cooCoi)); + + parameter Real heaDea( + final unit="1", + displayUnit="1") = 0.05 + "Heating loop signal limit above which fan operation changes from deadband + mode to heating mode" + annotation(__cdl(ValueInReference=false), + Dialog(group="Deadband", enable = have_heaCoi)); + + parameter Real cooDea( + final unit="1", + displayUnit="1") = 0.05 + "Cooling loop signal limit above which fan operation changes from deadband + mode to cooling mode" + annotation(__cdl(ValueInReference=false), + Dialog(group="Deadband", enable = have_cooCoi)); + + parameter Real deaHysLim( + final unit="1", + displayUnit="1") = 0.01 + "Hysteresis limits for deadband mode transitions" + annotation(__cdl(ValueInReference=false), Dialog(tab="Advanced")); + + Buildings.Controls.OBC.CDL.Interfaces.BooleanInput u1FanPro + "Fan proven on signal" + annotation (Placement(transformation(extent={{-240,100},{-200,140}}), + iconTransformation(extent={{-140,0},{-100,40}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerInput opeMod + "System operating mode" + annotation (Placement(transformation(extent={{-240,150},{-200,190}}), + iconTransformation(extent={{-140,40},{-100,80}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput uHea( + final unit="1", + displayUnit="1") if have_heaCoi + "Heating loop signal" + annotation (Placement(transformation(extent={{-240,10},{-200,50}}), + iconTransformation(extent={{-140,-40},{-100,0}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput uCoo( + final unit="1", + displayUnit="1") if have_cooCoi + "Cooling loop signal" + annotation (Placement(transformation(extent={{-240,-160},{-200,-120}}), + iconTransformation(extent={{-140,-80},{-100,-40}}))); + + Buildings.Controls.OBC.CDL.Interfaces.BooleanOutput y1Fan + "Fan command on status" + annotation (Placement(transformation(extent={{200,150},{240,190}}), + iconTransformation(extent={{100,0},{140,40}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealOutput yFan( + final unit="1", + displayUnit="1") + "Fan command speed" + annotation (Placement(transformation(extent={{200,20},{240,60}}), + iconTransformation(extent={{100,-40},{140,0}}))); + +protected + Buildings.Controls.OBC.CDL.Integers.Equal isUnOcc + "Check if zone is unoccupied" + annotation (Placement(transformation(extent={{-120,160},{-100,180}}))); + + Buildings.Controls.OBC.CDL.Integers.Sources.Constant unOccMod( + final k=Buildings.Controls.OBC.ASHRAE.G36.Types.OperationModes.unoccupied) + "Constant unoccupied mode signal" + annotation (Placement(transformation(extent={{-180,140},{-160,160}}))); + + Buildings.Controls.OBC.CDL.Logical.Not notUno + "Enable only if zone is not in unoccupied mode" + annotation (Placement(transformation(extent={{-80,160},{-60,180}}))); + + Buildings.Controls.OBC.CDL.Reals.Switch swiFanPro + "Switch fan speed to deadband speed until the fan is proven ON" + annotation (Placement(transformation(extent={{160,30},{180,50}}))); + + Buildings.Controls.OBC.CDL.Conversions.BooleanToReal booToRea + "Convert fan enable signal to Real" + annotation (Placement(transformation(extent={{40,70},{60,90}}))); + + Buildings.Controls.OBC.CDL.Reals.Line linHeaFanSpe + "Heating fan speed signal" + annotation (Placement(transformation(extent={{-40,20},{-20,40}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conuHea_min( + final k=uHea_min) + "Minimum heating loop signal support point" + annotation (Placement(transformation(extent={{-180,90},{-160,110}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conheaSpe_min( + final k=heaSpe_min) + "Minimum heating fan speed limit signal" + annotation (Placement(transformation(extent={{-180,50},{-160,70}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant concooSpe_min( + final k=cooSpe_min) + "Minimum cooling fan speed limit signal" + annotation (Placement(transformation(extent={{-180,-110},{-160,-90}}))); + + Buildings.Controls.OBC.CDL.Reals.Line linCooFanSpe + "Cooling fan speed signal" + annotation (Placement(transformation(extent={{-50,-150},{-30,-130}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conuCoo_min( + final k=uCoo_min) + "Minimum cooling loop signal support point" + annotation (Placement(transformation(extent={{-180,-70},{-160,-50}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conDeaFanSpe( + final k=deaSpe) + "Deadband mode fan speed signal" + annotation (Placement(transformation(extent={{-60,-40},{-40,-20}}))); + + Buildings.Controls.OBC.CDL.Reals.Hysteresis hysDeaHea( + final uLow=heaDea-deaHysLim, + final uHigh=heaDea) + "Hysteresis for switching between deadband mode and heating mode" + annotation (Placement(transformation(extent={{-20,-10},{0,10}}))); + + Buildings.Controls.OBC.CDL.Reals.Switch swiDeaHea + "Switch for turning on heating mode from deadband mode" + annotation (Placement(transformation(extent={{20,-10},{40,10}}))); + + Buildings.Controls.OBC.CDL.Reals.Hysteresis hysDeaCoo( + final uLow=cooDea-deaHysLim, + final uHigh=cooDea) + "Hysteresis for switching on cooling mode from deadband mode" + annotation (Placement(transformation(extent={{-20,-180},{0,-160}}))); + + Buildings.Controls.OBC.CDL.Reals.Switch swiDeaCoo + "Switch for turning on cooling mode from deadband mode" + annotation (Placement(transformation(extent={{60,-180},{80,-160}}))); + + Buildings.Controls.OBC.CDL.Reals.Multiply mulFanSpe + "Multiply fan speed signal by fan enable signal" + annotation (Placement(transformation(extent={{100,-160},{120,-140}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conZerHeaMod( + final k=0) if not have_heaCoi + "Constant zero signal for heating mode" + annotation (Placement(transformation(extent={{-160,-10},{-140,10}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conZerCooMod( + final k=0) if not have_cooCoi + "Constant zero signal for cooling mode" + annotation (Placement(transformation(extent={{-160,-180},{-140,-160}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conheaSpe_max( + final k=heaSpe_max) + "Maximum heating fan speed limit signal" + annotation (Placement(transformation(extent={{-120,50},{-100,70}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conuHea_max( + final k=uHea_max) + "Maximum heating loop signal support point" + annotation (Placement(transformation(extent={{-120,90},{-100,110}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant concooSpe_max( + final k=cooSpe_max) + "Maximum cooling fan speed limit signal" + annotation (Placement(transformation(extent={{-120,-110},{-100,-90}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conuCoo_max( + final k=uCoo_max) + "Maximum cooling loop signal support point" + annotation (Placement(transformation(extent={{-120,-70},{-100,-50}}))); + + Buildings.Controls.OBC.CDL.Reals.Multiply mulDeaSpe + "Multiply deadband speed signal by fan enable signal" + annotation (Placement(transformation(extent={{100,0},{120,20}}))); + +equation + connect(unOccMod.y, isUnOcc.u2) annotation (Line(points={{-158,150},{-140,150}, + {-140,162},{-122,162}}, color={255,127,0})); + connect(opeMod, isUnOcc.u1) + annotation (Line(points={{-220,170},{-122,170}}, color={255,127,0})); + connect(isUnOcc.y, notUno.u) + annotation (Line(points={{-98,170},{-82,170}}, color={255,0,255})); + connect(notUno.y, y1Fan) annotation (Line(points={{-58,170},{220,170}}, + color={255,0,255})); + connect(u1FanPro, swiFanPro.u2) annotation (Line(points={{-220,120},{130,120}, + {130,40},{158,40}}, color={255,0,255})); + connect(notUno.y, booToRea.u) annotation (Line(points={{-58,170},{0,170},{0,80}, + {38,80}}, color={255,0,255})); + connect(uHea, linHeaFanSpe.u) + annotation (Line(points={{-220,30},{-42,30}}, color={0,0,127})); + connect(uCoo, linCooFanSpe.u) + annotation (Line(points={{-220,-140},{-52,-140}}, color={0,0,127})); + connect(uHea, hysDeaHea.u) annotation (Line(points={{-220,30},{-60,30},{-60,0}, + {-22,0}}, color={0,0,127})); + connect(hysDeaHea.y, swiDeaHea.u2) annotation (Line(points={{2,0},{18,0}}, + color={255,0,255})); + connect(conDeaFanSpe.y, swiDeaHea.u3) annotation (Line(points={{-38,-30},{10,-30}, + {10,-8},{18,-8}}, color={0,0,127})); + connect(linHeaFanSpe.y, swiDeaHea.u1) annotation (Line(points={{-18,30},{10,30}, + {10,8},{18,8}}, color={0,0,127})); + connect(hysDeaCoo.y, swiDeaCoo.u2) + annotation (Line(points={{2,-170},{58,-170}}, color={255,0,255})); + connect(uCoo, hysDeaCoo.u) annotation (Line(points={{-220,-140},{-120,-140},{-120, + -170},{-22,-170}},color={0,0,127})); + connect(linCooFanSpe.y, swiDeaCoo.u1) annotation (Line(points={{-28,-140},{40, + -140},{40,-162},{58,-162}}, color={0,0,127})); + connect(swiDeaHea.y, swiDeaCoo.u3) annotation (Line(points={{42,0},{50,0},{50, + -178},{58,-178}}, color={0,0,127})); + connect(booToRea.y, mulFanSpe.u1) annotation (Line(points={{62,80},{90,80},{90, + -144},{98,-144}}, color={0,0,127})); + connect(swiDeaCoo.y, mulFanSpe.u2) annotation (Line(points={{82,-170},{92,-170}, + {92,-156},{98,-156}}, color={0,0,127})); + connect(mulFanSpe.y, swiFanPro.u1) annotation (Line(points={{122,-150},{140,-150}, + {140,48},{158,48}}, color={0,0,127})); + connect(swiFanPro.y, yFan) + annotation (Line(points={{182,40},{220,40}}, color={0,0,127})); + connect(conZerHeaMod.y, linHeaFanSpe.u) annotation (Line(points={{-138,0},{-60, + 0},{-60,30},{-42,30}}, color={0,0,127})); + connect(conZerCooMod.y, linCooFanSpe.u) annotation (Line(points={{-138,-170},{ + -120,-170},{-120,-140},{-52,-140}}, color={0,0,127})); + connect(conZerHeaMod.y, hysDeaHea.u) annotation (Line(points={{-138,0},{-22,0}}, + color={0,0,127})); + connect(conZerCooMod.y, hysDeaCoo.u) annotation (Line(points={{-138,-170},{-22, + -170}}, color={0,0,127})); + connect(conheaSpe_max.y, linHeaFanSpe.f2) annotation (Line(points={{-98,60},{-90, + 60},{-90,22},{-42,22}}, color={0,0,127})); + connect(conuHea_max.y, linHeaFanSpe.x2) + annotation (Line(points={{-98,100},{-80,100},{-80,26},{-42,26}}, color={0,0,127})); + connect(concooSpe_max.y, linCooFanSpe.f2) annotation (Line(points={{-98,-100}, + {-90,-100},{-90,-148},{-52,-148}}, color={0,0,127})); + connect(conuCoo_max.y, linCooFanSpe.x2) annotation (Line(points={{-98,-60},{-80, + -60},{-80,-144},{-52,-144}}, color={0,0,127})); + connect(conheaSpe_min.y, linHeaFanSpe.f1) annotation (Line(points={{-158,60},{ + -140,60},{-140,34},{-42,34}}, color={0,0,127})); + connect(conuHea_min.y, linHeaFanSpe.x1) annotation (Line(points={{-158,100},{-130, + 100},{-130,38},{-42,38}}, color={0,0,127})); + connect(conuCoo_min.y, linCooFanSpe.x1) annotation (Line(points={{-158,-60},{-130, + -60},{-130,-132},{-52,-132}}, color={0,0,127})); + connect(concooSpe_min.y, linCooFanSpe.f1) annotation (Line(points={{-158,-100}, + {-140,-100},{-140,-136},{-52,-136}}, color={0,0,127})); + connect(mulDeaSpe.y, swiFanPro.u3) annotation (Line(points={{122,10},{150,10}, + {150,32},{158,32}}, color={0,0,127})); + connect(booToRea.y, mulDeaSpe.u1) annotation (Line(points={{62,80},{90,80},{90, + 16},{98,16}}, color={0,0,127})); + connect(conDeaFanSpe.y, mulDeaSpe.u2) annotation (Line(points={{-38,-30},{80,-30}, + {80,4},{98,4}}, color={0,0,127})); + +annotation (defaultComponentName="fanSpe", + Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},{100,100}}), + graphics={ + Rectangle( + extent={{-100,-100},{100,100}}, + lineColor={0,0,127}, + fillColor={255,255,255}, + fillPattern=FillPattern.Solid), + Text( + extent={{-100,140},{100,100}}, + textColor={0,0,255}, + textString="%name"), + Text( + extent={{-98,32},{-36,12}}, + textColor={255,0,255}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="u1FanPro"), + Text( + extent={{48,32},{94,12}}, + textColor={255,0,255}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="y1Fan"), + Text( + extent={{-100,70},{-36,50}}, + textColor={255,127,0}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="opeMod"), + Text( + extent={{-100,-10},{-52,-32}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="uHea", + visible=have_heaCoi), + Text( + extent={{-100,-50},{-52,-72}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="uCoo", + visible=have_cooCoi), + Text( + extent={{46,-8},{100,-30}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="yFan")}), + Diagram(coordinateSystem(preserveAspectRatio=false, + extent={{-200,-200},{200,200}})), +Documentation(info=" +

+Block that outputs the fan enable signal and the fan speed signal based on +the heating and cooling loop signals. The implemented sequence is based on +ASHRAE Guideline 36, 2021, Part 5.22.4. +

+

+The fan enable signal y1Fan is set to false +when the operating mode signal opeMod is unoccupied, +and is set to true otherwise. +

+

+The fan speed signal yFan is varied from +the minimum cooling mode fan speed cooSpe_min to the maximum +cooling mode fan speed cooSpe_max, +when the cooling loop signal uCoo varies from the minimum limit +uCoo_min to the maximum limit uCoo_max. +Similarly, yFan is varied from the minimum heating mode fan speed +heaSpe_min to the maximum heating mode fan speed heaSpe_max, +when the heating loop signal uHea varies from the minimum limit +uHea_min to the maximum limit uHea_max. +The setpoint in deadband mode is equal to the deadband fan speed deaSpe. +

+

+\"Fan +

+", revisions=" + +")); +end FanSpeed; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/PlantRequests.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/PlantRequests.mo new file mode 100644 index 00000000000..d63be9299e7 --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/PlantRequests.mo @@ -0,0 +1,666 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences; +block PlantRequests + "Output plant requests for fan coil unit" + + parameter Boolean have_hotWatCoi = true + "True if the unit has a hot-water heating coil" + annotation(__cdl(ValueInReference=false)); + + parameter Boolean have_chiWatCoi = true + "True if the unit has a chilled-water cooling coil" + annotation(__cdl(ValueInReference=false)); + + parameter Real cooSpe_max( + final unit="1", + displayUnit="1") = 1 + "Maximum cooling mode fan speed" + annotation(__cdl(ValueInReference=false)); + + parameter Real heaSpe_max( + final unit="1", + displayUnit="1") = 0.6 + "Maximum heating mode fan speed" + annotation(__cdl(ValueInReference=false)); + + parameter Real chiWatPlaReqLim0( + final unit="1", + displayUnit="1") = 0.1 + "Valve position limit below which zero chilled water plant requests are sent when one request was previously being sent" + annotation(Dialog(tab="Request limits", group="Chilled water plant requests", enable=have_chiWatCoi)); + + parameter Real chiWatResReqLim0( + final unit="1", + displayUnit="1") = 0.85 + "Valve position limit below which zero chilled water reset requests are sent when one request was previously being sent" + annotation(Dialog(tab="Request limits", group="Chilled water reset requests", enable=have_chiWatCoi)); + + parameter Real chiWatPlaReqLim1( + final unit="1", + displayUnit="1") = 0.95 + "Valve position limit above which one chilled water plant request is sent" + annotation(Dialog(tab="Request limits", group="Chilled water plant requests", enable=have_chiWatCoi)); + + parameter Real chiWatResReqLim1( + final unit="1", + displayUnit="1") = 0.95 + "Valve position limit above which one chilled water reset request is sent" + annotation(Dialog(tab="Request limits", group="Chilled water reset requests", enable=have_chiWatCoi)); + + parameter Real chiWatResReqLim2( + final unit="K", + final quantity="TemperatureDifference") = 2.78 + "Temperature difference limit between setpoint and supply air temperature above which two chilled water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Chilled water reset requests", enable=have_chiWatCoi)); + + parameter Real chiWatResReqTimLim2( + final unit="s", + displayUnit="s", + final quantity="Time") = 300 + "Time period for which chiWatResReqLim2 has to be exceeded before two chilled water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Chilled water reset requests", enable=have_chiWatCoi)); + + parameter Real chiWatResReqLim3( + final unit="K", + final quantity="TemperatureDifference") = 5.56 + "Temperature difference limit between setpoint and supply air temperature above which three chilled water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Chilled water reset requests", enable=have_chiWatCoi)); + + parameter Real chiWatResReqTimLim3( + final unit="s", + displayUnit="s", + final quantity="Time") = 300 + "Time period for which chiWatResReqLim3 has to be exceeded before three chilled water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Chilled water reset requests", enable=have_chiWatCoi)); + + parameter Real hotWatPlaReqLim0( + final unit="1", + displayUnit="1") = 0.1 + "Valve position limit below which zero hot water plant requests are sent when one request was previously being sent" + annotation(Dialog(tab="Request limits", group="Hot water plant requests", enable=have_hotWatCoi)); + + parameter Real hotWatResReqLim0( + final unit="1", + displayUnit="1") = 0.85 + "Valve position limit below which zero hot water reset requests are sent when one request was previously being sent" + annotation(Dialog(tab="Request limits", group="Hot water reset requests", enable=have_hotWatCoi)); + + parameter Real hotWatPlaReqLim1( + final unit="1", + displayUnit="1") = 0.95 + "Valve position limit above which one hot water plant request is sent" + annotation(Dialog(tab="Request limits", group="Hot water plant requests", enable=have_hotWatCoi)); + + parameter Real hotWatResReqLim1( + final unit="1", + displayUnit="1") = 0.95 + "Valve position limit above which one hot water reset request is sent" + annotation(Dialog(tab="Request limits", group="Hot water reset requests", enable=have_hotWatCoi)); + + parameter Real hotWatResReqLim2( + final unit="K", + final quantity="TemperatureDifference") = 8 + "Temperature difference limit between setpoint and supply air temperature above which two hot water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Hot water reset requests", enable=have_hotWatCoi)); + + parameter Real hotWatResReqTimLim2( + final unit="s", + displayUnit="s", + final quantity="Time") = 300 + "Time period for which hotWatResReqLim2 has to be exceeded before two hot water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Hot water reset requests", enable=have_hotWatCoi)); + + parameter Real hotWatResReqLim3( + final unit="K", + final quantity="TemperatureDifference") = 17 + "Temperature difference limit between setpoint and supply air temperature above which three hot water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Hot water reset requests", enable=have_hotWatCoi)); + + parameter Real hotWatResReqTimLim3( + final unit="s", + displayUnit="s", + final quantity="Time") = 300 + "Time period for which hotWatResReqLim3 has to be exceeded before three hot water reset requests are sent" + annotation(Dialog(tab="Request limits", group="Hot water reset requests", enable=have_hotWatCoi)); + + parameter Real Thys( + final unit="K", + final quantity = "TemperatureDifference") = 0.1 + "Hysteresis for checking temperature difference" + annotation(__cdl(ValueInReference=false), Dialog(tab="Advanced")); + + parameter Real dFanSpe( + final unit="1", + displayUnit="1") = 0.05 + "Fan speed hysteresis difference" + annotation(__cdl(ValueInReference=false), Dialog(tab="Advanced")); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TAirSup( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Measured supply air temperature" + annotation (Placement(transformation(extent={{-240,180},{-200,220}}), + iconTransformation(extent={{-140,20},{-100,60}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TAirSupSet( + final unit="K", + final displayUnit="degC", + final quantity="ThermodynamicTemperature") + "Supply air temperature setpoint" + annotation (Placement(transformation(extent={{-240,140},{-200,180}}), + iconTransformation(extent={{-140,-20},{-100,20}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput uCooCoiSet( + final unit="1", + final min=0, + final max=1) if have_chiWatCoi "Commanded cooling coil position" + annotation (Placement(transformation(extent={{-240,80},{-200,120}}), + iconTransformation(extent={{-140,-58},{-100,-18}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput uHeaCoiSet( + final unit="1", + final min=0, + final max=1) if have_hotWatCoi "Commanded heating coil position" + annotation (Placement(transformation(extent={{-240,-160},{-200,-120}}), + iconTransformation(extent={{-140,-100},{-100,-60}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput uFan( + final unit="1", + final min=0, + final max=1) + "Fan speed signal" + annotation (Placement(transformation(extent={{-240,220},{-200,260}}), + iconTransformation(extent={{-140,60},{-100,100}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerOutput yChiWatResReq if have_chiWatCoi + "Chilled water reset request" + annotation (Placement(transformation(extent={{200,220},{240,260}}), + iconTransformation(extent={{100,40},{140,80}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerOutput yChiPlaReq if have_chiWatCoi + "Chiller plant request" + annotation (Placement(transformation(extent={{200,0},{240,40}}), + iconTransformation(extent={{100,0},{140,40}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerOutput yHotWatResReq if have_hotWatCoi + "Hot water reset request" + annotation (Placement(transformation(extent={{200,-60},{240,-20}}), + iconTransformation(extent={{100,-40},{140,0}}))); + + Buildings.Controls.OBC.CDL.Interfaces.IntegerOutput yHotWatPlaReq if have_hotWatCoi + "Hot water plant request" + annotation (Placement(transformation(extent={{200,-240},{240,-200}}), + iconTransformation(extent={{100,-80},{140,-40}}))); + +protected + Buildings.Controls.OBC.CDL.Reals.Hysteresis hysFanCoo( + final uLow=cooSpe_max - 2*dFanSpe, + final uHigh=cooSpe_max - dFanSpe) if have_chiWatCoi + "Check if fan is at max cooling mode speed" + annotation (Placement(transformation(extent={{-130,230},{-110,250}}))); + + Buildings.Controls.OBC.CDL.Conversions.BooleanToInteger booToIntCoo if have_chiWatCoi + "Output integer 1 when fan is at max cooling mode speed" + annotation (Placement(transformation(extent={{-80,230},{-60,250}}))); + + Buildings.Controls.OBC.CDL.Integers.Multiply mulIntCoo if have_chiWatCoi + "Output reset requests only if fan is at max cooling mode speed" + annotation (Placement(transformation(extent={{100,230},{120,250}}))); + + Buildings.Controls.OBC.CDL.Reals.Hysteresis hysFanHea( + final uLow=heaSpe_max - 2*dFanSpe, + final uHigh=heaSpe_max - dFanSpe) if have_hotWatCoi + "Check if fan is at max heating mode speed" + annotation (Placement(transformation(extent={{-140,-20},{-120,0}}))); + + Buildings.Controls.OBC.CDL.Conversions.BooleanToInteger booToIntHea if have_hotWatCoi + "Output integer 1 when fan is at max heating mode speed" + annotation (Placement(transformation(extent={{-90,-20},{-70,0}}))); + + Buildings.Controls.OBC.CDL.Integers.Multiply mulIntHea if have_hotWatCoi + "Output reset requests only if fan is at max heating mode speed" + annotation (Placement(transformation(extent={{160,-20},{180,0}}))); + + Buildings.Controls.OBC.CDL.Reals.Subtract cooSupTemDif + "Find the cooling supply temperature difference to the setpoint" + annotation (Placement(transformation(extent={{-140,190},{-120,210}}))); + + Buildings.Controls.OBC.CDL.Reals.GreaterThreshold greThr( + final t=chiWatResReqLim3, + final h=Thys) if have_chiWatCoi + "Check if the supply temperature is greater than the setpoint by a threshold value for sending three reset requests" + annotation (Placement(transformation(extent={{-80,190},{-60,210}}))); + + Buildings.Controls.OBC.CDL.Reals.GreaterThreshold greThr1( + final t=chiWatResReqLim2, + final h=Thys) if have_chiWatCoi + "Check if the supply temperature is greater than the setpoint by a threshold value for sending two reset requests" + annotation (Placement(transformation(extent={{-80,140},{-60,160}}))); + + Buildings.Controls.OBC.CDL.Logical.TrueDelay truDel( + final delayTime=chiWatResReqTimLim3) if have_chiWatCoi + "Ensure condition for sending three chilled water reset requests is true for minimum threshold time period" + annotation (Placement(transformation(extent={{-40,190},{-20,210}}))); + + Buildings.Controls.OBC.CDL.Logical.TrueDelay truDel1( + final delayTime=chiWatResReqTimLim2) if have_chiWatCoi + "Ensure condition for sending two chilled water reset requests is true for minimum threshold time period" + annotation (Placement(transformation(extent={{-40,140},{-20,160}}))); + + Buildings.Controls.OBC.CDL.Reals.Hysteresis hys( + final uLow=chiWatResReqLim0, + final uHigh=chiWatResReqLim1) if have_chiWatCoi + "Check chilled water valve position against threshold values for sending one reset request" + annotation (Placement(transformation(extent={{-120,90},{-100,110}}))); + + Buildings.Controls.OBC.CDL.Integers.Sources.Constant thr( + final k=3) + "Constant 3" + annotation (Placement(transformation(extent={{0,222},{20,242}}))); + + Buildings.Controls.OBC.CDL.Integers.Switch chiWatRes3 if have_chiWatCoi + "Send 3 chilled water reset request" + annotation (Placement(transformation(extent={{160,190},{180,210}}))); + + Buildings.Controls.OBC.CDL.Integers.Switch chiWatRes2 if have_chiWatCoi + "Send 2 chilled water reset request" + annotation (Placement(transformation(extent={{120,140},{140,160}}))); + + Buildings.Controls.OBC.CDL.Integers.Sources.Constant two( + final k=2) + "Constant 2" + annotation (Placement(transformation(extent={{0,170},{20,190}}))); + + Buildings.Controls.OBC.CDL.Integers.Switch chiWatRes1 if have_chiWatCoi + "Send 1 chilled water reset request" + annotation (Placement(transformation(extent={{80,90},{100,110}}))); + + Buildings.Controls.OBC.CDL.Integers.Sources.Constant one( + final k=1) + "Constant 1" + annotation (Placement(transformation(extent={{0,110},{20,130}}))); + + Buildings.Controls.OBC.CDL.Integers.Sources.Constant zer( + final k=0) + "Constant 0" + annotation (Placement(transformation(extent={{0,50},{20,70}}))); + + Buildings.Controls.OBC.CDL.Integers.Switch intSwi3 if have_chiWatCoi + "Send 1 chiller plant request" + annotation (Placement(transformation(extent={{80,10},{100,30}}))); + + Buildings.Controls.OBC.CDL.Reals.Subtract heaSupTemDif if have_hotWatCoi + "Find the heating supply temperature difference to the setpoint" + annotation (Placement(transformation(extent={{-140,-70},{-120,-50}}))); + + Buildings.Controls.OBC.CDL.Reals.GreaterThreshold greThr3( + final t=hotWatResReqLim3, + final h=Thys) if have_hotWatCoi + "Check if the supply temperature is less than the setpoint by a threshold value for sending three reset requests" + annotation (Placement(transformation(extent={{-80,-70},{-60,-50}}))); + + Buildings.Controls.OBC.CDL.Reals.GreaterThreshold greThr4( + final t=hotWatResReqLim2, + final h=Thys) if have_hotWatCoi + "Check if the supply temperature is less than the setpoint by a threshold value for sending two reset requests" + annotation (Placement(transformation(extent={{-80,-120},{-60,-100}}))); + + Buildings.Controls.OBC.CDL.Logical.TrueDelay truDel2( + final delayTime=hotWatResReqTimLim3) if have_hotWatCoi + "Ensure condition for sending three hot water reset requests is true for minimum threshold time period" + annotation (Placement(transformation(extent={{-40,-70},{-20,-50}}))); + + Buildings.Controls.OBC.CDL.Logical.TrueDelay truDel3( + final delayTime=hotWatResReqTimLim2) if have_hotWatCoi + "Ensure condition for sending two hot water reset requests is true for minimum threshold time period" + annotation (Placement(transformation(extent={{-40,-120},{-20,-100}}))); + + Buildings.Controls.OBC.CDL.Integers.Switch hotWatRes3 if have_hotWatCoi + "Send 3 hot water reset request" + annotation (Placement(transformation(extent={{140,-70},{160,-50}}))); + + Buildings.Controls.OBC.CDL.Integers.Switch hotWatRes2 if have_hotWatCoi + "Send 2 hot water reset request" + annotation (Placement(transformation(extent={{100,-120},{120,-100}}))); + + Buildings.Controls.OBC.CDL.Integers.Switch hotWatRes1 if have_hotWatCoi + "Send 1 hot water reset request" + annotation (Placement(transformation(extent={{60,-150},{80,-130}}))); + + Buildings.Controls.OBC.CDL.Integers.Switch intSwi1 if have_hotWatCoi + "Send 1 hot water plant request" + annotation (Placement(transformation(extent={{60,-230},{80,-210}}))); + + Buildings.Controls.OBC.CDL.Reals.Hysteresis hys1( + final uLow=chiWatPlaReqLim0, + final uHigh=chiWatPlaReqLim1) if have_chiWatCoi + "Check chilled water valve position against threshold values for sending one plant request" + annotation (Placement(transformation(extent={{-120,10},{-100,30}}))); + + Buildings.Controls.OBC.CDL.Reals.Hysteresis hys2( + final uLow=hotWatResReqLim0, + final uHigh=hotWatResReqLim1) if have_hotWatCoi + "Check hot water valve position against threshold values for sending one reset request" + annotation (Placement(transformation(extent={{-120,-150},{-100,-130}}))); + + Buildings.Controls.OBC.CDL.Reals.Hysteresis hys3( + final uLow=hotWatPlaReqLim0, + final uHigh=hotWatPlaReqLim1) if have_hotWatCoi + "Check hot water valve position against threshold values for sending one plant request" + annotation (Placement(transformation(extent={{-120,-230},{-100,-210}}))); + +equation + connect(TAirSup, cooSupTemDif.u1) annotation (Line(points={{-220,200},{-180,200}, + {-180,206},{-142,206}}, color={0,0,127})); + + connect(TAirSupSet, cooSupTemDif.u2) annotation (Line(points={{-220,160},{-190, + 160},{-190,194},{-142,194}}, color={0,0,127})); + + connect(cooSupTemDif.y, greThr.u) + annotation (Line(points={{-118,200},{-82,200}}, color={0,0,127})); + + connect(greThr.y, truDel.u) + annotation (Line(points={{-58,200},{-42,200}}, color={255,0,255})); + + connect(greThr1.y, truDel1.u) + annotation (Line(points={{-58,150},{-42,150}}, color={255,0,255})); + + connect(cooSupTemDif.y, greThr1.u) annotation (Line(points={{-118,200},{-100,200}, + {-100,150},{-82,150}}, color={0,0,127})); + + connect(uCooCoiSet, hys.u) + annotation (Line(points={{-220,100},{-122,100}}, color={0,0,127})); + + connect(truDel.y, chiWatRes3.u2) + annotation (Line(points={{-18,200},{158,200}}, color={255,0,255})); + + connect(thr.y, chiWatRes3.u1) annotation (Line(points={{22,232},{60,232},{60,208}, + {158,208}}, color={255,127,0})); + + connect(truDel1.y, chiWatRes2.u2) + annotation (Line(points={{-18,150},{118,150}}, color={255,0,255})); + + connect(two.y, chiWatRes2.u1) annotation (Line(points={{22,180},{50,180},{50,158}, + {118,158}}, color={255,127,0})); + + connect(one.y, chiWatRes1.u1) annotation (Line(points={{22,120},{40,120},{40,108}, + {78,108}}, color={255,127,0})); + + connect(chiWatRes1.y, chiWatRes2.u3) annotation (Line(points={{102,100},{110,100}, + {110,142},{118,142}}, color={255,127,0})); + + connect(chiWatRes2.y, chiWatRes3.u3) annotation (Line(points={{142,150},{150,150}, + {150,192},{158,192}}, color={255,127,0})); + + connect(zer.y, chiWatRes1.u3) annotation (Line(points={{22,60},{30,60},{30,92}, + {78,92}}, color={255,127,0})); + + connect(one.y, intSwi3.u1) annotation (Line(points={{22,120},{40,120},{40,28}, + {78,28}}, color={255,127,0})); + + connect(zer.y, intSwi3.u3) annotation (Line(points={{22,60},{30,60},{30,12},{78, + 12}}, color={255,127,0})); + + connect(intSwi3.y, yChiPlaReq) + annotation (Line(points={{102,20},{220,20}}, color={255,127,0})); + + connect(TAirSup, heaSupTemDif.u2) annotation (Line(points={{-220,200},{-180,200}, + {-180,-66},{-142,-66}}, color={0,0,127})); + + connect(greThr3.y, truDel2.u) + annotation (Line(points={{-58,-60},{-42,-60}}, color={255,0,255})); + + connect(greThr4.y, truDel3.u) + annotation (Line(points={{-58,-110},{-42,-110}}, + color={255,0,255})); + + connect(heaSupTemDif.y, greThr3.u) + annotation (Line(points={{-118,-60},{-82,-60}}, color={0,0,127})); + + connect(heaSupTemDif.y, greThr4.u) annotation (Line(points={{-118,-60},{-100,-60}, + {-100,-110},{-82,-110}}, + color={0,0,127})); + + connect(truDel2.y, hotWatRes3.u2) + annotation (Line(points={{-18,-60},{138,-60}}, color={255,0,255})); + + connect(thr.y, hotWatRes3.u1) annotation (Line(points={{22,232},{60,232},{60,-52}, + {138,-52}}, color={255,127,0})); + + connect(hotWatRes2.y, hotWatRes3.u3) annotation (Line(points={{122,-110},{130, + -110},{130,-68},{138,-68}}, + color={255,127,0})); + + connect(two.y, hotWatRes2.u1) annotation (Line(points={{22,180},{50,180},{50,-102}, + {98,-102}}, color={255,127,0})); + + connect(truDel3.y, hotWatRes2.u2) + annotation (Line(points={{-18,-110},{98,-110}},color={255,0,255})); + + connect(one.y, hotWatRes1.u1) annotation (Line(points={{22,120},{40,120},{40,-132}, + {58,-132}}, color={255,127,0})); + + connect(zer.y, hotWatRes1.u3) annotation (Line(points={{22,60},{30,60},{30,-148}, + {58,-148}}, color={255,127,0})); + + connect(hotWatRes1.y, hotWatRes2.u3) annotation (Line(points={{82,-140},{90,-140}, + {90,-118},{98,-118}}, color={255,127,0})); + + connect(one.y, intSwi1.u1) annotation (Line(points={{22,120},{40,120},{40,-212}, + {58,-212}}, color={255,127,0})); + + connect(zer.y, intSwi1.u3) annotation (Line(points={{22,60},{30,60},{30,-228}, + {58,-228}}, color={255,127,0})); + + connect(intSwi1.y, yHotWatPlaReq) + annotation (Line(points={{82,-220},{220,-220}}, color={255,127,0})); + + connect(uFan, hysFanCoo.u) + annotation (Line(points={{-220,240},{-132,240}}, color={0,0,127})); + + connect(hysFanCoo.y, booToIntCoo.u) + annotation (Line(points={{-108,240},{-82,240}}, color={255,0,255})); + + connect(chiWatRes3.y, mulIntCoo.u2) annotation (Line(points={{182,200},{188,200}, + {188,220},{90,220},{90,234},{98,234}}, color={255,127,0})); + + connect(booToIntCoo.y, mulIntCoo.u1) annotation (Line(points={{-58,240},{-20,240}, + {-20,252},{60,252},{60,246},{98,246}}, color={255,127,0})); + + connect(mulIntCoo.y, yChiWatResReq) annotation (Line(points={{122,240},{220,240}}, + color={255,127,0})); + + connect(hotWatRes3.y, mulIntHea.u2) annotation (Line(points={{162,-60},{170,-60}, + {170,-28},{152,-28},{152,-16},{158,-16}}, + color={255,127,0})); + + connect(hysFanHea.y, booToIntHea.u) + annotation (Line(points={{-118,-10},{-92,-10}}, color={255,0,255})); + + connect(booToIntHea.y, mulIntHea.u1) annotation (Line(points={{-68,-10},{46,-10}, + {46,-4},{158,-4}},color={255,127,0})); + + connect(uFan, hysFanHea.u) annotation (Line(points={{-220,240},{-170,240},{ + -170,-10},{-142,-10}}, color={0,0,127})); + + connect(mulIntHea.y, yHotWatResReq) annotation (Line(points={{182,-10},{192,-10}, + {192,-40},{220,-40}},color={255,127,0})); + + connect(TAirSupSet, heaSupTemDif.u1) annotation (Line(points={{-220,160},{-190, + 160},{-190,-54},{-142,-54}}, color={0,0,127})); + + connect(hys.y, chiWatRes1.u2) + annotation (Line(points={{-98,100},{78,100}}, color={255,0,255})); + connect(uCooCoiSet, hys1.u) annotation (Line(points={{-220,100},{-140,100},{-140, + 20},{-122,20}}, color={0,0,127})); + connect(hys1.y, intSwi3.u2) + annotation (Line(points={{-98,20},{78,20}}, color={255,0,255})); + connect(uHeaCoiSet, hys2.u) + annotation (Line(points={{-220,-140},{-122,-140}}, color={0,0,127})); + connect(hys2.y, hotWatRes1.u2) + annotation (Line(points={{-98,-140},{58,-140}}, color={255,0,255})); + connect(hys3.y, intSwi1.u2) + annotation (Line(points={{-98,-220},{58,-220}}, color={255,0,255})); + connect(hys3.u, uHeaCoiSet) annotation (Line(points={{-122,-220},{-140,-220},{ + -140,-140},{-220,-140}}, color={0,0,127})); +annotation ( + defaultComponentName="fcuPlaReq", + Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},{100,100}}), + graphics={ + Rectangle( + extent={{-100,-100},{100,100}}, + lineColor={0,0,127}, + fillColor={255,255,255}, + fillPattern=FillPattern.Solid), + Text( + extent={{-98,48},{-68,32}}, + textColor={0,0,127}, + pattern=LinePattern.Dash, + textString="TAirSup"), + Text( + extent={{-100,160},{100,120}}, + textColor={0,0,255}, + textString="%name"), + Text( + extent={{-98,8},{-50,-10}}, + textColor={0,0,127}, + pattern=LinePattern.Dash, + textString="TAirSupSet"), + Text( + extent={{-98,-32},{-40,-46}}, + textColor={0,0,127}, + pattern=LinePattern.Dash, + visible=have_chiWatCoi, + textString="uCooCoiSet"), + Text( + extent={{34,72},{98,50}}, + textColor={255,127,0}, + pattern=LinePattern.Dash, + textString="yChiWatResReq", + visible=have_chiWatCoi), + Text( + extent={{52,32},{98,10}}, + textColor={255,127,0}, + pattern=LinePattern.Dash, + textString="yChiPlaReq", + visible=have_chiWatCoi), + Text( + extent={{34,-8},{98,-30}}, + textColor={255,127,0}, + pattern=LinePattern.Dash, + textString="yHotWatResReq", + visible=have_hotWatCoi), + Text( + extent={{38,-48},{98,-70}}, + textColor={255,127,0}, + pattern=LinePattern.Dash, + textString="yHotWatPlaReq", + visible=have_hotWatCoi), + Text( + extent={{-100,90},{-68,74}}, + textColor={0,0,127}, + pattern=LinePattern.Dash, + textString="uFan"), + Text( + extent={{-100,-72},{-40,-86}}, + textColor={0,0,127}, + pattern=LinePattern.Dash, + visible=have_hotWatCoi, + textString="uHeaCoiSet")}), + Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-200,-260},{200,260}})), +Documentation(info=" +

+This sequence outputs the system reset requests for fan coil unit. +The implementation is according to the Section 5.22.8 of ASHRAE Guideline 36, 2021. +

+

+If there is a chilled-water coil (have_chiWatCoi=true), +chilled water reset requests yChiWatResReq +

+
    +
  1. +If the supply air temperature TAirSup exceeds the supply air +temperature set point TSupSet by 5.56 °C (10 °F) for 5 minutes, +send 3 requests. +
  2. +
  3. +If the supply air temperature TAirSup exceeds TSupSet +by by 2.78 °C (5 °F) for 5 minutes, send 2 requests. +
  4. +
  5. +Else if the chilled water valve position uCooCoi_actual is greater +than 0.95, send 1 request until uCooCoi_actual is less than 0.85. +
  6. +
  7. +Else if the chilled water valve position uCooCoi_actual is less +than 0.85, send 0 requests. +
  8. +
+

+If there is a chilled-water coil and chilled water plant, chiller plant +request yChiPlaReq +

+

+Send the chiller plant that serves the system a chiller plant request as follows: +

+
    +
  1. +If the chilled water valve position uCooCoi_actual is greater than +0.95, send 1 request until the uCooCoi_actual is less than 0.1. +
  2. +
  3. +Else if the chilled water valve position uCooCoi_actual is +less than 0.1, send 0 request +
  4. +
+

+If there is a hot-water coil (have_hotWatCoi=true), +hot-water reset requests yHotWatResReq +

+
    +
  1. +If the supply air temperature TAirSup is 17 °C (30 °F) +less than the supply air temperature set point TSupSet for +5 minutes, send 3 requests. +
  2. +
  3. +Else if the supply air temperature TAirSup is 8 °C (15 °F) +less than TSupSet for 5 minutes, send 2 requests. +
  4. +
  5. +Else if the hot water valve position uHeaCoi_actual is greater +than 0.95, send 1 request until the uHeaCoi_actual is less than +0.85. +
  6. +
  7. +Else if the hot water valve position uHeaCoi_actual is less than +0.85, send 0 request. +
  8. +
+

+If there is a hot-water coil and heating hot-water plant, heating hot-water +plant requests yHotWatPlaReq +

+

+Send the heating hot-water plant that serves the air handling unit a heating +hot-water plant request as follows: +

+
    +
  1. +If the hot water valve position uHeaCoi_actual is greater than +0.95, send 1 request until the hot water valve position is less than 0.1. +
  2. +
  3. +If the hot water valve position uHeaCoi_actual is less than 0.1, +send 0 requests. +
  4. +
+", revisions=" + +")); +end PlantRequests; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/SupplyAirTemperature.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/SupplyAirTemperature.mo new file mode 100644 index 00000000000..c54590a3114 --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/SupplyAirTemperature.mo @@ -0,0 +1,498 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences; +block SupplyAirTemperature + "Subsequence for calculating supply air temperature setpoint" + + parameter Boolean have_cooCoi + "True if the unit has a cooling coil" + annotation(__cdl(ValueInReference=false)); + + parameter Boolean have_heaCoi + "True if the unit has a heating coil" + annotation(__cdl(ValueInReference=false)); + + parameter Real uHea_min( + final unit="1", + displayUnit="1") = heaDea + "Minimum heating loop signal at which supply air temperature is modified" + annotation(Dialog(group="Heating loop", enable = have_heaCoi)); + + parameter Real TSupSet_max( + final unit="K", + displayUnit="degC") = 305.15 + "Supply air temperature setpoint at maximum heating loop signal" + annotation(__cdl(ValueInReference=false), + Dialog(group="Heating loop", enable = have_heaCoi)); + + parameter Real uHea_max( + final unit="1", + displayUnit="1") = 0.5 + "Maximum heating loop signal at which supply air temperature is modified" + annotation(Dialog(group="Heating loop", enable = have_heaCoi)); + + parameter Real uCoo_min( + final unit="1", + displayUnit="1") = cooDea + "Minimum cooling loop signal at which supply air temperature is modified" + annotation(Dialog(group="Cooling loop", enable = have_cooCoi)); + + parameter Real TSupSet_min( + final unit="K", + displayUnit="degC") = 285.95 + "Supply air temperature setpoint at maximum cooling loop signal" + annotation(__cdl(ValueInReference=false), + Dialog(group="Cooling loop", enable = have_cooCoi)); + + parameter Real uCoo_max( + final unit="1", + displayUnit="1") = 0.5 + "Maximum cooling loop signal at which supply air temperature is modified" + annotation(Dialog(group="Cooling loop", enable = have_cooCoi)); + + parameter Real heaDea( + final unit="1", + displayUnit="1") = 0.05 + "Heating loop signal limit above which setpoint operation changes from deadband + mode to heating mode" + annotation(__cdl(ValueInReference=false), + Dialog(group="Deadband", enable = have_heaCoi)); + + parameter Real cooDea( + final unit="1", + displayUnit="1") = 0.05 + "Cooling loop signal limit above which setpoint operation changes from deadband + mode to cooling mode" + annotation(__cdl(ValueInReference=false), + Dialog(group="Deadband", enable = have_cooCoi)); + + parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeCooCoi=Buildings.Controls.OBC.CDL.Types.SimpleController.PI + "Type of cooling coil controller" + annotation(Dialog(tab="PID controller parameters", group="Cooling coil", + enable=have_cooCoi)); + + parameter Real kCooCoi( + final unit="1", + displayUnit="1")=1 + "Controller gain" + annotation(Dialog(tab="PID controller parameters", group="Cooling coil", + enable=have_cooCoi)); + + parameter Real TiCooCoi( + final unit="s", + displayUnit="s", + final quantity="time")=0.5 + "Integrator time constant" + annotation(Dialog(tab="PID controller parameters", group="Cooling coil", + enable = (controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PI + or controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and have_cooCoi)); + + parameter Real TdCooCoi( + final unit="s", + displayUnit="s", + final quantity="time")=0.1 + "Derivative block time constant" + annotation(Dialog(tab="PID controller parameters", group="Cooling coil", + enable = (controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PD + or controllerTypeCooCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and have_cooCoi)); + + parameter Buildings.Controls.OBC.CDL.Types.SimpleController controllerTypeHeaCoi=Buildings.Controls.OBC.CDL.Types.SimpleController.PI + "Type of heating coil controller" + annotation(Dialog(tab="PID controller parameters", group="Heating coil", + enable=have_heaCoi)); + + parameter Real kHeaCoi( + final unit="1", + displayUnit="1")=1 + "Controller gain" + annotation(Dialog(tab="PID controller parameters", group="Heating coil", + enable=have_heaCoi)); + + parameter Real TiHeaCoi( + final unit="s", + displayUnit="s", + final quantity="time")=0.5 + "Integrator block time constant" + annotation(Dialog(tab="PID controller parameters", group="Heating coil", + enable = (controllerTypeHeaCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PI + or controllerTypeHeaCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and have_heaCoi)); + + parameter Real TdHeaCoi( + final unit="s", + displayUnit="s", + final quantity="time")=0.1 + "Derivative block time constant" + annotation(Dialog(tab="PID controller parameters", group="Heating coil", + enable = (controllerTypeHeaCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PD + or controllerTypeHeaCoi == Buildings.Controls.OBC.CDL.Types.SimpleController.PID) + and have_heaCoi)); + + parameter Real deaHysLim( + final unit="1", + displayUnit="1") = 0.01 + "Hysteresis limits for deadband mode transitions" + annotation(__cdl(ValueInReference=false), Dialog(tab="Advanced")); + + Buildings.Controls.OBC.CDL.Interfaces.BooleanInput u1Fan + "Fan proven on signal" + annotation (Placement(transformation(extent={{-280,120},{-240,160}}), + iconTransformation(extent={{-140,70},{-100,110}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput uHea( + final unit="1", + displayUnit="1") if have_heaCoi + "Heating loop signal" + annotation (Placement(transformation(extent={{-280,20},{-240,60}}), + iconTransformation(extent={{-140,0},{-100,40}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput uCoo( + final unit="1", + displayUnit="1") if have_cooCoi + "Cooling loop signal" + annotation (Placement(transformation(extent={{-280,-80},{-240,-40}}), + iconTransformation(extent={{-140,-70},{-100,-30}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TAirSup( + final unit="K", + displayUnit="K", + final quantity="ThermodynamicTemperature") + "Measured supply air temperature" + annotation (Placement(transformation(extent={{-280,-20},{-240,20}}), + iconTransformation(extent={{-140,-40},{-100,0}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonHeaSet( + final unit="K", + displayUnit="K", + final quantity="ThermodynamicTemperature") if have_heaCoi + "Zone heating temperature setpoint" + annotation (Placement(transformation(extent={{-280,60},{-240,100}}), + iconTransformation(extent={{-140,30},{-100,70}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealInput TZonCooSet( + final unit="K", + displayUnit="K", + final quantity="ThermodynamicTemperature") if have_cooCoi + "Zone cooling temperature setpoint" + annotation (Placement(transformation(extent={{-280,-130},{-240,-90}}), + iconTransformation(extent={{-140,-110},{-100,-70}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealOutput yHeaCoi( + final unit="1", + displayUnit="1") if have_heaCoi + "Heating coil signal" + annotation (Placement(transformation(extent={{240,90},{280,130}}), + iconTransformation(extent={{100,40},{140,80}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealOutput yCooCoi( + final unit="1", + displayUnit="1") if have_cooCoi + "Cooling coil signal" + annotation (Placement(transformation(extent={{240,-110},{280,-70}}), + iconTransformation(extent={{100,-80},{140,-40}}))); + + Buildings.Controls.OBC.CDL.Interfaces.RealOutput TSupSet( + final unit="K", + displayUnit="K", + final quantity="ThermodynamicTemperature") + "Supply air temperature setpoint" + annotation (Placement(transformation(extent={{240,-60},{280,-20}}), + iconTransformation(extent={{100,-20},{140,20}}))); + +protected + Buildings.Controls.OBC.CDL.Reals.Switch swiDeaCoo + "Switch for turning on cooling mode from deadband mode" + annotation (Placement(transformation(extent={{20,-50},{40,-30}}))); + + Buildings.Controls.OBC.CDL.Reals.Switch swiCooCoi + "Switch cooling coil signal to zero in deadband mode" + annotation (Placement(transformation(extent={{140,-150},{160,-130}}))); + + Buildings.Controls.OBC.CDL.Reals.Switch swiHeaCoi + "Switch heating coil signal to zero in deadband mode" + annotation (Placement(transformation(extent={{140,80},{160,100}}))); + + Buildings.Controls.OBC.CDL.Reals.Line linTHeaSupAir + "Convert heating loop signal to supply air temperature setpoint" + annotation (Placement(transformation(extent={{-80,50},{-60,70}}))); + + Buildings.Controls.OBC.CDL.Reals.Line linTCooSupAir + "Convert cooling loop signal to supply air temperature setpoint" + annotation (Placement(transformation(extent={{-60,-120},{-40,-100}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conTSupSet_max( + final k=TSupSet_max) + "Maximum heating supply air temperature setpoint limit signal" + annotation (Placement(transformation(extent={{-140,10},{-120,30}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conUHea_min( + final k=uHea_min) + "Minimum heating loop signal support point" + annotation (Placement(transformation(extent={{-200,100},{-180,120}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conTSupSet_min( + final k=TSupSet_min) + "Minimum cooling supply air temperature setpoint limit signal" + annotation (Placement(transformation(extent={{-120,-150},{-100,-130}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conUCoo_min( + final k=uCoo_min) + "Minimum cooling loop signal support point" + annotation (Placement(transformation(extent={{-220,-90},{-200,-70}}))); + + Buildings.Controls.OBC.CDL.Reals.PID conPIDHea( + final controllerType=controllerTypeHeaCoi, + final k=kHeaCoi, + final Ti=TiHeaCoi, + final Td=TdHeaCoi) "PID controller for heating coil" + annotation (Placement(transformation(extent={{80,50},{100,70}}))); + + Buildings.Controls.OBC.CDL.Reals.PID conPIDCoo( + final controllerType=controllerTypeCooCoi, + final k=kCooCoi, + final Ti=TiCooCoi, + final Td=TdCooCoi, + final reverseActing=false) "PID controller for cooling coil" + annotation (Placement(transformation(extent={{80,-110},{100,-90}}))); + + Buildings.Controls.OBC.CDL.Reals.Hysteresis hysDeaHea( + final uLow=heaDea-deaHysLim, + final uHigh=heaDea) + "Hysteresis for switching between deadband mode and heating mode" + annotation (Placement(transformation(extent={{-80,100},{-60,120}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conZerHeaMod( + final k=0) if not have_heaCoi + "Constant zero signal for heating mode" + annotation (Placement(transformation(extent={{-140,100},{-120,120}}))); + + Buildings.Controls.OBC.CDL.Reals.Switch swiDeaHea + "Switch for turning on heating mode from deadband mode" + annotation (Placement(transformation(extent={{-20,50},{0,70}}))); + + Buildings.Controls.OBC.CDL.Reals.Hysteresis hysDeaCoo( + final uLow=cooDea-deaHysLim, + final uHigh=cooDea) + "Hysteresis for switching on cooling mode from deadband mode" + annotation (Placement(transformation(extent={{-60,-50},{-40,-30}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conZerCooMod( + final k=0) if not have_cooCoi + "Constant zero signal for cooling mode" + annotation (Placement(transformation(extent={{-120,-50},{-100,-30}}))); + + Buildings.Controls.OBC.CDL.Conversions.BooleanToReal booToRea2 + "Boolean to Real conversion" + annotation (Placement(transformation(extent={{120,130},{140,150}}))); + + Buildings.Controls.OBC.CDL.Reals.Multiply mul2 + "Output heating coil signal only when fan is proven on" + annotation (Placement(transformation(extent={{200,100},{220,120}}))); + + Buildings.Controls.OBC.CDL.Reals.Multiply mul3 + "Output cooling coil signal only when fan is proven on" + annotation (Placement(transformation(extent={{200,-100},{220,-80}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conUHea_max( + final k=uHea_max) + "Maximum heating loop signal support point" + annotation (Placement(transformation(extent={{-200,10},{-180,30}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conUCoo_max( + final k=uCoo_max) + "Maximum cooling loop signal support point" + annotation (Placement(transformation(extent={{-160,-150},{-140,-130}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant conZer( + final k=0) + "Constant zero signal" + annotation (Placement(transformation(extent={{80,-30},{100,-10}}))); + +equation + connect(uHea, linTHeaSupAir.u) annotation (Line(points={{-260,40},{-100,40},{-100, + 60},{-82,60}}, color={0,0,127})); + connect(uCoo, linTCooSupAir.u) annotation (Line(points={{-260,-60},{-80,-60},{ + -80,-110},{-62,-110}}, color={0,0,127})); + connect(TAirSup, conPIDHea.u_m) + annotation (Line(points={{-260,0},{90,0},{90,48}}, color={0,0,127})); + connect(TAirSup, conPIDCoo.u_m) annotation (Line(points={{-260,0},{60,0},{60,-120}, + {90,-120},{90,-112}}, color={0,0,127})); + connect(linTHeaSupAir.y, swiDeaHea.u1) annotation (Line(points={{-58,60},{-40, + 60},{-40,68},{-22,68}}, color={0,0,127})); + connect(conZerHeaMod.y, hysDeaHea.u) + annotation (Line(points={{-118,110},{-82,110}},color={0,0,127})); + connect(conZerHeaMod.y, linTHeaSupAir.u) annotation (Line(points={{-118,110},{ + -100,110},{-100,60},{-82,60}}, color={0,0,127})); + connect(uHea, hysDeaHea.u) annotation (Line(points={{-260,40},{-100,40},{-100, + 110},{-82,110}}, color={0,0,127})); + connect(hysDeaHea.y, swiDeaHea.u2) annotation (Line(points={{-58,110},{-30,110}, + {-30,60},{-22,60}}, color={255,0,255})); + connect(conZerCooMod.y, linTCooSupAir.u) annotation (Line(points={{-98,-40},{-80, + -40},{-80,-110},{-62,-110}}, color={0,0,127})); + connect(hysDeaCoo.y, swiDeaCoo.u2) + annotation (Line(points={{-38,-40},{18,-40}}, color={255,0,255})); + connect(uCoo, hysDeaCoo.u) annotation (Line(points={{-260,-60},{-80,-60},{-80, + -40},{-62,-40}}, color={0,0,127})); + connect(conZerCooMod.y, hysDeaCoo.u) annotation (Line(points={{-98,-40},{-62,-40}}, + color={0,0,127})); + connect(swiDeaHea.y, swiDeaCoo.u3) annotation (Line(points={{2,60},{8,60},{8,-48}, + {18,-48}}, color={0,0,127})); + connect(linTCooSupAir.y, swiDeaCoo.u1) annotation (Line(points={{-38,-110},{-20, + -110},{-20,-32},{18,-32}},color={0,0,127})); + connect(swiDeaCoo.y, conPIDHea.u_s) annotation (Line(points={{42,-40},{50,-40}, + {50,60},{78,60}}, color={0,0,127})); + connect(swiDeaCoo.y, conPIDCoo.u_s) annotation (Line(points={{42,-40},{50,-40}, + {50,-100},{78,-100}}, color={0,0,127})); + connect(conTSupSet_max.y, linTHeaSupAir.f2) annotation (Line(points={{-118,20}, + {-90,20},{-90,52},{-82,52}}, color={0,0,127})); + connect(conTSupSet_min.y, linTCooSupAir.f2) annotation (Line(points={{-98,-140}, + {-80,-140},{-80,-118},{-62,-118}}, color={0,0,127})); + connect(TZonHeaSet, linTHeaSupAir.f1) annotation (Line(points={{-260,80},{-100, + 80},{-100,64},{-82,64}},color={0,0,127})); + connect(TZonCooSet, linTCooSupAir.f1) annotation (Line(points={{-260,-110},{-200, + -110},{-200,-106},{-62,-106}}, color={0,0,127})); + connect(TAirSup, swiDeaHea.u3) annotation (Line(points={{-260,0},{-40,0},{-40, + 52},{-22,52}}, color={0,0,127})); + connect(conZerHeaMod.y, linTHeaSupAir.f1) annotation (Line(points={{-118,110}, + {-100,110},{-100,64},{-82,64}}, color={0,0,127})); + connect(conZerCooMod.y, linTCooSupAir.f1) annotation (Line(points={{-98,-40},{ + -80,-40},{-80,-106},{-62,-106}}, color={0,0,127})); + connect(swiDeaCoo.y, TSupSet) annotation (Line(points={{42,-40},{260,-40}}, + color={0,0,127})); + connect(u1Fan, booToRea2.u) + annotation (Line(points={{-260,140},{118,140}},color={255,0,255})); + connect(yHeaCoi, mul2.y) + annotation (Line(points={{260,110},{222,110}}, color={0,0,127})); + connect(booToRea2.y, mul2.u1) annotation (Line(points={{142,140},{190,140},{190, + 116},{198,116}}, color={0,0,127})); + connect(mul3.y, yCooCoi) annotation (Line(points={{222,-90},{260,-90}}, + color={0,0,127})); + connect(booToRea2.y, mul3.u1) annotation (Line(points={{142,140},{190,140},{190, + -84},{198,-84}},color={0,0,127})); + connect(conUHea_max.y, linTHeaSupAir.x2) annotation (Line(points={{-178,20},{-160, + 20},{-160,56},{-82,56}}, color={0,0,127})); + connect(conUHea_min.y, linTHeaSupAir.x1) annotation (Line(points={{-178,110},{ + -160,110},{-160,68},{-82,68}}, color={0,0,127})); + connect(conUCoo_min.y, linTCooSupAir.x1) annotation (Line(points={{-198,-80},{ + -180,-80},{-180,-102},{-62,-102}}, color={0,0,127})); + connect(conUCoo_max.y, linTCooSupAir.x2) annotation (Line(points={{-138,-140}, + {-130,-140},{-130,-114},{-62,-114}}, color={0,0,127})); + connect(conPIDCoo.y, swiCooCoi.u1) annotation (Line(points={{102,-100},{110,-100}, + {110,-132},{138,-132}}, color={0,0,127})); + connect(swiCooCoi.y, mul3.u2) annotation (Line(points={{162,-140},{190,-140},{ + 190,-96},{198,-96}}, color={0,0,127})); + connect(hysDeaCoo.y, swiCooCoi.u2) annotation (Line(points={{-38,-40},{0,-40}, + {0,-140},{138,-140}}, color={255,0,255})); + connect(swiHeaCoi.y, mul2.u2) annotation (Line(points={{162,90},{180,90},{180, + 104},{198,104}}, color={0,0,127})); + connect(conPIDHea.y, swiHeaCoi.u1) annotation (Line(points={{102,60},{110,60}, + {110,98},{138,98}}, color={0,0,127})); + connect(hysDeaHea.y, swiHeaCoi.u2) annotation (Line(points={{-58,110},{-30,110}, + {-30,90},{138,90}},color={255,0,255})); + connect(conZer.y, swiHeaCoi.u3) annotation (Line(points={{102,-20},{120,-20},{ + 120,82},{138,82}}, color={0,0,127})); + connect(conZer.y, swiCooCoi.u3) annotation (Line(points={{102,-20},{120,-20},{ + 120,-148},{138,-148}}, color={0,0,127})); + annotation (defaultComponentName="TSupAir", + Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},{100,100}}), + graphics={ + Rectangle( + extent={{-100,-100},{100,100}}, + lineColor={0,0,127}, + fillColor={255,255,255}, + fillPattern=FillPattern.Solid), + Text( + extent={{-100,140},{98,100}}, + textString="%name", + textColor={0,0,255}), + Text( + extent={{-96,98},{-50,78}}, + textColor={255,0,255}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="u1Fan"), + Text( + extent={{-96,60},{-20,38}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TZonHeaSet", + visible=have_heaCoi), + Text( + extent={{-100,30},{-52,10}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="uHea", + visible=have_heaCoi), + Text( + extent={{-96,-10},{-46,-28}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TAirSup"), + Text( + extent={{-100,-50},{-52,-70}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="uCoo", + visible=have_cooCoi), + Text( + extent={{38,70},{96,50}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="yHeaCoi", + visible=have_heaCoi), + Text( + extent={{-96,-78},{-20,-100}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TZonCooSet", + visible=have_cooCoi), + Text( + extent={{20,12},{96,-10}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="TSupSet"), + Text( + extent={{38,-50},{96,-70}}, + textColor={0,0,127}, + fillColor={0,0,0}, + fillPattern=FillPattern.Solid, + textString="yCooCoi", + visible=have_cooCoi)}), Diagram(coordinateSystem( + preserveAspectRatio=false, extent={{-240,-180},{240,180}})), + Documentation(info=" +

Block that outputs the supply air temperature setpoint, as well as the control signals for the cooling and heating coils in a fan coil unit system. +The implemented sequence is based on ASHRAE Guideline 36, 2021, Part 5.22.4.

+

The supply air temperature +TSupSet is varied from the zone cooling setpoint temperature +TZonCooSet to the minimum supply air temperature for cooling +TSupSet_min, when the cooling loop signal +uCoo varies from the minimum limit +uCoo_min to the maximum limit +uCoo_max. +Similarly, TSupSet is varied from the zone heating setpoint temperature +TZonHeaSet to the maximum supply air temperature for heating +TSupSet_max, when the heating loop signal +uHea varies from the minimum limit +uHea_min to the maximum limit +uHea_max. The setpoint in deadband mode is equal to the current +measured supply air temperature TAirSup. +yCooCoi and yHeaCoi are set to zero when the fan proven on signal +u1Fan is false.

+

\"Supply

+", +revisions=" + +")); +end SupplyAirTemperature; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/FanSpeed.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/FanSpeed.mo new file mode 100644 index 00000000000..064d0a1128a --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/FanSpeed.mo @@ -0,0 +1,284 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation; +block FanSpeed + "Validation model for fan speed subsequence" + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.FanSpeed fanSpe( + final have_cooCoi=true, + final have_heaCoi=true) + "Instance demonstrating variation of heating loop signal" + annotation (Placement(transformation(extent={{-40,120},{-20,140}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.FanSpeed fanSpe2( + final have_cooCoi=true, + final have_heaCoi=true) + "Instance demonstrating variation of operating mode" + annotation (Placement(transformation(extent={{80,120},{100,140}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.FanSpeed fanSpe1( + final have_cooCoi=true, + final have_heaCoi=true) + "Instance demonstrating variation of cooling loop signal" + annotation (Placement(transformation(extent={{-40,-10},{-20,10}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.FanSpeed fanSpe3( + final have_cooCoi=true, + final have_heaCoi=false) + "Instance demonstrating variation of cooling loop signal with no heating coil" + annotation (Placement(transformation(extent={{80,-10},{100,10}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.FanSpeed fanSpe4( + final have_cooCoi=false, + final have_heaCoi=true) + "Instance demonstrating variation of heating loop signal with no cooling coil" + annotation (Placement(transformation(extent={{-40,-140},{-20,-120}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.FanSpeed fanSpe5( + final have_cooCoi=false, + final have_heaCoi=false) + "Instance demonstrating variation of operating mode with no heating and cooling coils" + annotation (Placement(transformation(extent={{80,-140},{100,-120}}))); + +protected + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp ram( + final height=6, + final duration=70, + final offset=1) + "Operating mode signal" + annotation (Placement(transformation(extent={{20,160},{40,180}}))); + + Buildings.Controls.OBC.CDL.Conversions.RealToInteger reaToInt + "Real to Integer conversion" + annotation (Placement(transformation(extent={{-70,160},{-50,180}}))); + + Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul( + final period=100) + "Fan proven on signal" + annotation (Placement(transformation(extent={{-100,130},{-80,150}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin( + final freqHz=1/50) + "Heating loop signal" + annotation (Placement(transformation(extent={{-100,100},{-80,120}}))); + + Buildings.Controls.OBC.CDL.Reals.Abs abs + "Convert negative loop signal to positive" + annotation (Placement(transformation(extent={{-70,100},{-50,120}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con( + final k=0) + "Cooling loop signal" + annotation (Placement(transformation(extent={{-100,70},{-80,90}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con1( + final k=1) + "Operating mode signal" + annotation (Placement(transformation(extent={{-100,160},{-80,180}}))); + + Buildings.Controls.OBC.CDL.Conversions.RealToInteger reaToInt1 + "Real to Integer conversion" + annotation (Placement(transformation(extent={{50,160},{70,180}}))); + + Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul1( + final period=100) + "Fan proven on signal" + annotation (Placement(transformation(extent={{20,130},{40,150}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con2( + final k=0) + "Cooling loop signal" + annotation (Placement(transformation(extent={{20,70},{40,90}}))); + + Buildings.Controls.OBC.CDL.Conversions.RealToInteger reaToInt2 + "Real to Integer conversion" + annotation (Placement(transformation(extent={{-70,30},{-50,50}}))); + + Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul2( + final period=100) + "Fan proven on signal" + annotation (Placement(transformation(extent={{-100,0},{-80,20}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin2( + final freqHz=1/50) + "Cooling loop signal" + annotation (Placement(transformation(extent={{-100,-60},{-80,-40}}))); + + Buildings.Controls.OBC.CDL.Reals.Abs abs2 + "Convert negative loop signal to positive" + annotation (Placement(transformation(extent={{-70,-60},{-50,-40}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con3( + final k=0) + "Heating loop signal" + annotation (Placement(transformation(extent={{-100,-30},{-80,-10}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con4( + final k=1) + "Operating mode signal" + annotation (Placement(transformation(extent={{-100,30},{-80,50}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con5( + final k=0.75) + "Heating loop signal" + annotation (Placement(transformation(extent={{20,100},{40,120}}))); + + Buildings.Controls.OBC.CDL.Conversions.RealToInteger reaToInt3 + "Real to Integer conversion" + annotation (Placement(transformation(extent={{50,30},{70,50}}))); + + Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul3( + final period=100) + "Fan proven on signal" + annotation (Placement(transformation(extent={{20,0},{40,20}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin1( + final freqHz=1/50) + "Cooling loop signal" + annotation (Placement(transformation(extent={{20,-30},{40,-10}}))); + + Buildings.Controls.OBC.CDL.Reals.Abs abs1 + "Convert negative loop signal to positive" + annotation (Placement(transformation(extent={{50,-30},{70,-10}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con7( + final k=1) + "Operating mode signal" + annotation (Placement(transformation(extent={{20,30},{40,50}}))); + + Buildings.Controls.OBC.CDL.Conversions.RealToInteger reaToInt4 + "Real to Integer conversion" + annotation (Placement(transformation(extent={{-70,-100},{-50,-80}}))); + + Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul4( + final period=100) + "Fan proven on signal" + annotation (Placement(transformation(extent={{-100,-130},{-80,-110}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin3( + final freqHz=1/50) + "Heating loop signal" + annotation (Placement(transformation(extent={{-100,-160},{-80,-140}}))); + + Buildings.Controls.OBC.CDL.Reals.Abs abs3 + "Convert negative loop signal to positive" + annotation (Placement(transformation(extent={{-70,-160},{-50,-140}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con8( + final k=1) + "Operating mode signal" + annotation (Placement(transformation(extent={{-100,-100},{-80,-80}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp ram1( + final height=6, + final duration=70, + final offset=1) + "Operating mode signal" + annotation (Placement(transformation(extent={{20,-100},{40,-80}}))); + + Buildings.Controls.OBC.CDL.Conversions.RealToInteger reaToInt5 + "Real to Integer conversion" + annotation (Placement(transformation(extent={{50,-100},{70,-80}}))); + + Buildings.Controls.OBC.CDL.Logical.Sources.Pulse booPul5( + final period=100) + "Fan proven on signal" + annotation (Placement(transformation(extent={{20,-130},{40,-110}}))); + +equation + connect(reaToInt.y, fanSpe.opeMod) annotation (Line(points={{-48,170},{-46,170}, + {-46,136},{-42,136}}, color={255,127,0})); + connect(booPul.y, fanSpe.u1FanPro) annotation (Line(points={{-78,140},{-50,140}, + {-50,132},{-42,132}}, color={255,0,255})); + connect(sin.y, abs.u) + annotation (Line(points={{-78,110},{-72,110}}, color={0,0,127})); + connect(abs.y, fanSpe.uHea) annotation (Line(points={{-48,110},{-46,110},{-46, + 128},{-42,128}}, color={0,0,127})); + connect(con.y, fanSpe.uCoo) annotation (Line(points={{-78,80},{-44,80},{-44,124}, + {-42,124}},color={0,0,127})); + connect(con1.y, reaToInt.u) + annotation (Line(points={{-78,170},{-72,170}}, color={0,0,127})); + connect(reaToInt1.y, fanSpe2.opeMod) annotation (Line(points={{72,170},{74,170}, + {74,136},{78,136}}, color={255,127,0})); + connect(booPul1.y, fanSpe2.u1FanPro) annotation (Line(points={{42,140},{70,140}, + {70,132},{78,132}}, color={255,0,255})); + connect(con2.y, fanSpe2.uCoo) annotation (Line(points={{42,80},{76,80},{76, + 124},{78,124}}, color={0,0,127})); + connect(ram.y, reaToInt1.u) + annotation (Line(points={{42,170},{48,170}}, color={0,0,127})); + connect(reaToInt2.y,fanSpe1. opeMod) annotation (Line(points={{-48,40},{-46,40}, + {-46,6},{-42,6}}, color={255,127,0})); + connect(booPul2.y,fanSpe1. u1FanPro) annotation (Line(points={{-78,10},{-50,10}, + {-50,2},{-42,2}}, color={255,0,255})); + connect(sin2.y, abs2.u) + annotation (Line(points={{-78,-50},{-72,-50}}, color={0,0,127})); + connect(con4.y, reaToInt2.u) + annotation (Line(points={{-78,40},{-72,40}}, color={0,0,127})); + connect(con3.y,fanSpe1. uHea) annotation (Line(points={{-78,-20},{-56,-20},{-56, + -2},{-42,-2}}, color={0,0,127})); + connect(abs2.y,fanSpe1. uCoo) annotation (Line(points={{-48,-50},{-46,-50},{-46, + -6},{-42,-6}}, color={0,0,127})); + connect(con5.y, fanSpe2.uHea) annotation (Line(points={{42,110},{60,110},{60, + 128},{78,128}}, color={0,0,127})); + connect(reaToInt3.y,fanSpe3. opeMod) annotation (Line(points={{72,40},{74,40}, + {74,6},{78,6}}, color={255,127,0})); + connect(booPul3.y,fanSpe3. u1FanPro) annotation (Line(points={{42,10},{70,10},{ + 70,2},{78,2}}, color={255,0,255})); + connect(sin1.y,abs1. u) + annotation (Line(points={{42,-20},{48,-20}}, color={0,0,127})); + connect(con7.y,reaToInt3. u) + annotation (Line(points={{42,40},{48,40}}, color={0,0,127})); + connect(abs1.y,fanSpe3. uCoo) annotation (Line(points={{72,-20},{74,-20},{74,-6}, + {78,-6}}, color={0,0,127})); + connect(reaToInt4.y, fanSpe4.opeMod) annotation (Line(points={{-48,-90},{-46,-90}, + {-46,-124},{-42,-124}}, color={255,127,0})); + connect(booPul4.y, fanSpe4.u1FanPro) annotation (Line(points={{-78,-120},{-50,-120}, + {-50,-128},{-42,-128}}, color={255,0,255})); + connect(sin3.y, abs3.u) + annotation (Line(points={{-78,-150},{-72,-150}}, color={0,0,127})); + connect(abs3.y, fanSpe4.uHea) annotation (Line(points={{-48,-150},{-46,-150}, + {-46,-132},{-42,-132}}, color={0,0,127})); + connect(con8.y, reaToInt4.u) + annotation (Line(points={{-78,-90},{-72,-90}}, color={0,0,127})); + connect(reaToInt5.y, fanSpe5.opeMod) annotation (Line(points={{72,-90},{74,-90}, + {74,-124},{78,-124}}, color={255,127,0})); + connect(booPul5.y, fanSpe5.u1FanPro) annotation (Line(points={{42,-120},{70,-120}, + {70,-128},{78,-128}}, color={255,0,255})); + connect(ram1.y, reaToInt5.u) + annotation (Line(points={{42,-90},{48,-90}}, color={0,0,127})); + + annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100}, + {100,100}}), graphics={ + Ellipse(lineColor = {75,138,73}, + fillColor={255,255,255}, + fillPattern = FillPattern.Solid, + extent={{-100,-100},{100,100}}), + Polygon(lineColor = {0,0,255}, + fillColor = {75,138,73}, + pattern = LinePattern.None, + fillPattern = FillPattern.Solid, + points={{-36,60},{64,0},{-36,-60},{-36,60}})}), Diagram( + coordinateSystem(preserveAspectRatio=false, extent={{-120,-200},{120,200}})), + experiment( + StopTime=100, + Tolerance=1e-06), + __Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/FanSpeed.mos" + "Simulate and plot"), + Documentation(info=" +

+ This example validates + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.FanSpeed. + Each of the six instances of the controller represents operation with different + inputs for heating and cooling loop signals, as well as the operating mode + and fan proven on signal, and different configuration + parameters of fan coil unit with presence or absence of heating and cooling + coils, as described by the comment for each instance. +

+ ", revisions=" + + ")); +end FanSpeed; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/PlantRequests.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/PlantRequests.mo new file mode 100644 index 00000000000..de939fa1015 --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/PlantRequests.mo @@ -0,0 +1,187 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation; +model PlantRequests + "Validation model for subsequence for calculating the plant requests" + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.PlantRequests plaReq + "Calculate plant request" + annotation (Placement(transformation(extent={{60,50},{80,70}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.PlantRequests plaReq1( + final have_hotWatCoi=false) + "Calculate plant request" + annotation (Placement(transformation(extent={{60,-80},{80,-60}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.PlantRequests plaReq2( + final have_chiWatCoi=false) + "Calculate plant request" + annotation (Placement(transformation(extent={{60,-160},{80,-140}}))); + +protected + Buildings.Controls.OBC.CDL.Reals.Sources.Pulse fanSpe( + final width=0.8, + final period=3600) + "Fan speed signal" + annotation (Placement(transformation(extent={{10,70},{30,90}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Pulse fanSpe1( + final width=0.8, + final period=3600) + "Fan speed signal" + annotation (Placement(transformation(extent={{20,-30},{40,-10}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Pulse fanSpe2( + final width=0.8, + final period=3600) + "Fan speed signal" + annotation (Placement(transformation(extent={{20,-110},{40,-90}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp supTem( + final height=16, + final offset=273.15 + 15, + final duration=3600) + "Supply air temperature" + annotation (Placement(transformation(extent={{-80,-50},{-60,-30}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp supTemSet( + final height=6, + final offset=273.15 + 14.5, + final duration=3600) + "Supply air temperature setpoint" + annotation (Placement(transformation(extent={{-40,-70},{-20,-50}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp cooCoi( + final height=-0.3, + final offset=0.96, + final duration=3600, + final startTime=1000) + "Cooling coil position" + annotation (Placement(transformation(extent={{-80,-90},{-60,-70}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp heaCoi( + final height=-0.3, + final offset=0.96, + final duration=3600, + final startTime=1000) + "Heating coil position" + annotation (Placement(transformation(extent={{-80,-10},{-60,10}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp supTem1( + final height=8, + final offset=273.15 + 12, + final duration=3600) + "Cooling supply air temperature" + annotation (Placement(transformation(extent={{-80,70},{-60,90}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp supTemSet1( + final height=25, + final offset=273.15 + 20, + final duration=3600) + "Supply air temperature setpoint" + annotation (Placement(transformation(extent={{-40,50},{-20,70}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant cooCoi1( + final k=0) + "Cooling coil position" + annotation (Placement(transformation(extent={{-80,30},{-60,50}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp supTem3( + final height=8, + final offset=273.15 + 15, + final duration=3600) + "Supply air temperature" + annotation (Placement(transformation(extent={{-80,-130},{-60,-110}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp supTemSet2( + final height=6, + final offset=273.15 + 14.5, + final duration=3600) + "Supply air temperature setpoint" + annotation (Placement(transformation(extent={{-40,-150},{-20,-130}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp heaCoi2( + final height=-0.3, + final offset=0.96, + final duration=3600, + final startTime=1000) + "Heating coil position" + annotation (Placement(transformation(extent={{-80,-170},{-60,-150}}))); + +equation + connect(supTem.y, plaReq1.TAirSup) annotation (Line(points={{-58,-40},{20,-40}, + {20,-66},{58,-66}}, color={0,0,127})); + connect(cooCoi.y, plaReq1.uCooCoiSet) annotation (Line(points={{-58,-80},{20,-80}, + {20,-73.8},{58,-73.8}}, color={0,0,127})); + connect(supTem1.y, plaReq.TAirSup) annotation (Line(points={{-58,80},{0,80},{0, + 64},{58,64}}, color={0,0,127})); + connect(cooCoi1.y, plaReq.uCooCoiSet) annotation (Line(points={{-58,40},{10,40}, + {10,56.2},{58,56.2}}, color={0,0,127})); + connect(heaCoi.y, plaReq.uHeaCoiSet) annotation (Line(points={{-58,0},{30,0},{ + 30,52},{58,52}}, color={0,0,127})); + connect(supTemSet1.y, plaReq.TAirSupSet) annotation (Line(points={{-18,60},{0, + 60},{0,60},{58,60}}, color={0,0,127})); + connect(supTemSet.y, plaReq1.TAirSupSet) annotation (Line(points={{-18,-60},{0, + -60},{0,-70},{58,-70}}, color={0,0,127})); + connect(fanSpe.y, plaReq.uFan) annotation (Line(points={{32,80},{50,80},{50, + 68},{58,68}}, color={0,0,127})); + connect(fanSpe1.y, plaReq1.uFan) annotation (Line(points={{42,-20},{52,-20}, + {52,-62},{58,-62}}, color={0,0,127})); + connect(supTem3.y, plaReq2.TAirSup) annotation (Line(points={{-58,-120},{20,-120}, + {20,-146},{58,-146}}, color={0,0,127})); + connect(supTemSet2.y, plaReq2.TAirSupSet) annotation (Line(points={{-18,-140}, + {0,-140},{0,-150},{58,-150}}, color={0,0,127})); + connect(fanSpe2.y, plaReq2.uFan) annotation (Line(points={{42,-100},{52,-100}, + {52,-142},{58,-142}}, color={0,0,127})); + connect(heaCoi2.y, plaReq2.uHeaCoiSet) annotation (Line(points={{-58,-160},{52, + -160},{52,-158},{58,-158}}, color={0,0,127})); + +annotation ( + experiment(StopTime=3600, Tolerance=1e-6), + __Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/PlantRequests.mos" + "Simulate and plot"), + Documentation(info=" +

+This example validates + +Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.PlantRequests +for fan coil units. The three instances of the controller are as follows: +

+ +

+Each instance is subjected to an increasing deviation of the measured supply +temperature TAirSup from the supply temperature setpoint TSupSet +that results in an increasing number of requests from the controllers. +

+", revisions=" + +"), + Icon(coordinateSystem(extent={{-100,-100},{100,100}}), + graphics={ + Ellipse(lineColor = {75,138,73}, + fillColor={255,255,255}, + fillPattern = FillPattern.Solid, + extent = {{-100,-100},{100,100}}), + Polygon(lineColor = {0,0,255}, + fillColor = {75,138,73}, + pattern = LinePattern.None, + fillPattern = FillPattern.Solid, + points = {{-36,60},{64,0},{-36,-60},{-36,60}})}), + Diagram(coordinateSystem(extent={{-100,-180},{100,100}}))); +end PlantRequests; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/SupplyAirTemperature.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/SupplyAirTemperature.mo new file mode 100644 index 00000000000..ffd9649dd51 --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/SupplyAirTemperature.mo @@ -0,0 +1,205 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation; +block SupplyAirTemperature + "Validation model for supply air temperature setpoint subsequence" + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.SupplyAirTemperature + TSupAir( + final have_cooCoi=true, + final have_heaCoi=true) + "Instance demonstrating heating signal operation" + annotation (Placement(transformation(extent={{-50,60},{-30,84}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.SupplyAirTemperature + TSupAir3( + final have_cooCoi=true, + final have_heaCoi=false) + "Instance demonstrating cooling signal operation when heating coil is absent" + annotation (Placement(transformation(extent={{60,-80},{80,-56}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.SupplyAirTemperature + TSupAir2( + final have_cooCoi=false, + final have_heaCoi=true) + "Instance demonstrating heating signal operation when cooling coil is absent" + annotation (Placement(transformation(extent={{-50,-100},{-30,-76}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.SupplyAirTemperature + TSupAir1( + final have_cooCoi=true, + final have_heaCoi=true) + "Instance demonstrating cooling signal operation" + annotation (Placement(transformation(extent={{80,60},{100,84}}))); + +protected + Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin( + final amplitude=20, + final freqHz=1/50, + final offset=273.15 + 23) + "Supply air temperature signal" + annotation (Placement(transformation(extent={{-90,60},{-70,80}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin3( + final amplitude=20, + final freqHz=1/50, + final offset=273.15 + 23) + "Supply air temperature signal" + annotation (Placement(transformation(extent={{20,-70},{40,-50}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin5( + final amplitude=0.5, + final freqHz=1/100, + final offset=0.5) + "Cooling loop signal" + annotation (Placement(transformation(extent={{20,-100},{40,-80}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin6( + final amplitude=20, + final freqHz=1/50, + final offset=273.15 + 23) + "Supply air temperature signal" + annotation (Placement(transformation(extent={{-90,-100},{-70,-80}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin8( + final amplitude=0.5, + final freqHz=1/100, + final offset=0.5) + "Heating loop signal" + annotation (Placement(transformation(extent={{-90,-70},{-70,-50}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Sin sin4( + final amplitude=20, + final freqHz=1/50, + final offset=273.15 + 23) + "Supply air temperature signal" + annotation (Placement(transformation(extent={{40,60},{60,80}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con( + final k=273.15 + 21) + "Zone heating temperature setpoint" + annotation (Placement(transformation(extent={{-90,120},{-70,140}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con1( + final k=273.15 + 25) + "Zone cooling temperature setpoint" + annotation (Placement(transformation(extent={{-90,0},{-70,20}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con2( + final k=273.15 + 21) + "Zone heating temperature setpoint" + annotation (Placement(transformation(extent={{40,120},{60,140}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con3( + final k=273.15 + 25) + "Zone cooling temperature setpoint" + annotation (Placement(transformation(extent={{40,0},{60,20}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con4( + final k=273.15 + 21) + "Zone heating temperature setpoint" + annotation (Placement(transformation(extent={{-90,-40},{-70,-20}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con6( + final k=273.15 + 25) + "Zone cooling temperature setpoint" + annotation (Placement(transformation(extent={{20,-130},{40,-110}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con5( + final k=0.25) + "Heating loop signal" + annotation (Placement(transformation(extent={{-90,90},{-70,110}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con7( + final k=0) + "Heating loop signal" + annotation (Placement(transformation(extent={{40,90},{60,110}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con8( + final k=0) + "Cooling loop signal" + annotation (Placement(transformation(extent={{-90,30},{-70,50}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant con9( + final k=0.25) + "Cooling loop signal" + annotation (Placement(transformation(extent={{40,30},{60,50}}))); + + Buildings.Controls.OBC.CDL.Logical.Sources.Constant con10( + final k=true) + "Boolean fale signal" + annotation (Placement(transformation(extent={{-120,-20},{-100,0}}))); + +equation + connect(sin.y, TSupAir.TAirSup) + annotation (Line(points={{-68,70},{-60,70},{-60,69.6},{-52,69.6}}, color={0,0,127})); + connect(sin6.y, TSupAir2.TAirSup) + annotation (Line(points={{-68,-90},{-60,-90},{-60,-90.4},{-52,-90.4}}, color={0,0,127})); + connect(sin8.y, TSupAir2.uHea) annotation (Line(points={{-68,-60},{-60,-60},{-60, + -85.6},{-52,-85.6}}, color={0,0,127})); + connect(sin4.y,TSupAir1. TAirSup) + annotation (Line(points={{62,70},{70,70},{70,69.6},{78,69.6}}, color={0,0,127})); + connect(con.y,TSupAir.TZonHeaSet) annotation (Line(points={{-68,130},{-56,130}, + {-56,78},{-52,78}}, color={0,0,127})); + connect(con1.y,TSupAir.TZonCooSet) annotation (Line(points={{-68,10},{-56,10}, + {-56,61.2},{-52,61.2}}, color={0,0,127})); + connect(con2.y,TSupAir1.TZonHeaSet) annotation (Line(points={{62,130},{72,130}, + {72,78},{78,78}}, color={0,0,127})); + connect(con3.y,TSupAir1.TZonCooSet) annotation (Line(points={{62,10},{72,10}, + {72,61.2},{78,61.2}}, color={0,0,127})); + connect(con4.y,TSupAir2.TZonHeaSet) annotation (Line(points={{-68,-30},{-56,-30}, + {-56,-82},{-52,-82}}, color={0,0,127})); + connect(con6.y,TSupAir3.TZonCooSet) annotation (Line(points={{42,-120},{54,-120}, + {54,-78.8},{58,-78.8}}, color={0,0,127})); + connect(con5.y, TSupAir.uHea) annotation (Line(points={{-68,100},{-60,100},{-60, + 74.4},{-52,74.4}}, color={0,0,127})); + connect(con7.y, TSupAir1.uHea) annotation (Line(points={{62,100},{68,100},{68, + 74.4},{78,74.4}}, color={0,0,127})); + connect(con8.y, TSupAir.uCoo) annotation (Line(points={{-68,40},{-60,40},{-60, + 66},{-52,66}}, color={0,0,127})); + connect(con9.y, TSupAir1.uCoo) annotation (Line(points={{62,40},{70,40},{70,66}, + {78,66}}, color={0,0,127})); + connect(sin5.y, TSupAir3.uCoo) annotation (Line(points={{42,-90},{52,-90},{52, + -74},{58,-74}}, color={0,0,127})); + connect(sin3.y, TSupAir3.TAirSup) annotation (Line(points={{42,-60},{52,-60},{ + 52,-70.4},{58,-70.4}}, color={0,0,127})); + connect(con10.y, TSupAir.u1Fan) annotation (Line(points={{-98,-10},{-54,-10},{ + -54,82.8},{-52,82.8}}, color={255,0,255})); + connect(con10.y, TSupAir1.u1Fan) annotation (Line(points={{-98,-10},{74,-10},{ + 74,82.8},{78,82.8}}, color={255,0,255})); + connect(con10.y, TSupAir2.u1Fan) annotation (Line(points={{-98,-10},{-54,-10}, + {-54,-77.2},{-52,-77.2}}, color={255,0,255})); + connect(con10.y, TSupAir3.u1Fan) annotation (Line(points={{-98,-10},{54,-10},{ + 54,-57.2},{58,-57.2}}, color={255,0,255})); + annotation (Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100}, + {100,100}}), graphics={ + Ellipse(lineColor = {75,138,73}, + fillColor={255,255,255}, + fillPattern = FillPattern.Solid, + extent={{-100,-100},{100,100}}), + Polygon(lineColor = {0,0,255}, + fillColor = {75,138,73}, + pattern = LinePattern.None, + fillPattern = FillPattern.Solid, + points={{-36,60},{64,0},{-36,-60},{-36,60}})}), Diagram( + coordinateSystem(preserveAspectRatio=false, extent={{-140,-140},{140,140}})), +__Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/SupplyAirTemperature.mos" + "Simulate and plot"), +experiment(StopTime=100, Tolerance=1e-06), +Documentation(info=" +

+This example validates + +Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.SupplyAirTemperature. +Each of the four instances of the controller represents operation with different +inputs for heating and cooling loop signals, and different configuration +parameters of fan coil unit with presence or absence of heating and cooling +coils, as described in the instance comments. +

+", revisions=" + +")); +end SupplyAirTemperature; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/package.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/package.mo new file mode 100644 index 00000000000..947f41c3589 --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/package.mo @@ -0,0 +1,34 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences; +package Validation "Package containing validation models for fan coil unit subsequences" + + annotation (Icon(graphics={ + Rectangle( + lineColor={200,200,200}, + fillColor={248,248,248}, + fillPattern=FillPattern.HorizontalCylinder, + extent={{-100,-100},{100,100}}, + radius=25.0), + Rectangle( + lineColor={128,128,128}, + extent={{-100,-100},{100,100}}, + radius=25.0), + Polygon( + origin={8,14}, + lineColor={78,138,73}, + fillColor={78,138,73}, + pattern=LinePattern.None, + fillPattern=FillPattern.Solid, + points={{-58.0,46.0},{42.0,-14.0},{-58.0,-74.0},{-58.0,46.0}})}), + Documentation(info=" +

+ This package contains the validation models for the fan coil unit subsequences. +

+ ", revisions=" + + ")); +end Validation; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/package.order b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/package.order new file mode 100644 index 00000000000..b0c224c26eb --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/package.order @@ -0,0 +1,3 @@ +FanSpeed +PlantRequests +SupplyAirTemperature diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/package.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/package.mo new file mode 100644 index 00000000000..0de772df64f --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/package.mo @@ -0,0 +1,50 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit; +package Subsequences "Package of subsequences for fan coil unit controls" + + annotation(Icon(graphics={ + Rectangle( + lineColor={200,200,200}, + fillColor={248,248,248}, + fillPattern=FillPattern.HorizontalCylinder, + extent={{-100.0,-100.0},{100.0,100.0}}, + radius=25.0), + Rectangle( + lineColor={128,128,128}, + extent={{-100.0,-100.0},{100.0,100.0}}, + radius=25.0), + Ellipse( + origin={10.0,10.0}, + fillColor={76,76,76}, + pattern=LinePattern.None, + fillPattern=FillPattern.Solid, + extent={{-80.0,-80.0},{-20.0,-20.0}}), + Ellipse( + origin={10.0,10.0}, + pattern=LinePattern.None, + fillPattern=FillPattern.Solid, + extent={{0.0,-80.0},{60.0,-20.0}}), + Ellipse( + origin={10.0,10.0}, + fillColor={128,128,128}, + pattern=LinePattern.None, + fillPattern=FillPattern.Solid, + extent={{0.0,0.0},{60.0,60.0}}), + Ellipse( + origin={10.0,10.0}, + lineColor={128,128,128}, + fillColor={255,255,255}, + fillPattern=FillPattern.Solid, + extent={{-80.0,0.0},{-20.0,60.0}})}), + Documentation(info=" +

+ This package contains the subsequences used in the fan coil unit controller. +

+ ", revisions=" + + ")); +end Subsequences; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/package.order b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/package.order new file mode 100644 index 00000000000..faf8494e905 --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/package.order @@ -0,0 +1,4 @@ +FanSpeed +PlantRequests +SupplyAirTemperature +Validation diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/Controller.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/Controller.mo new file mode 100644 index 00000000000..8242ed6545c --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/Controller.mo @@ -0,0 +1,323 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Validation; +model Controller + "Validation of the top-level controller" + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Controller conFCU( + final cooCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased, + final heaCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased, + final have_winSen=false, + final kHea=1, + final controllerTypeCoo=Buildings.Controls.OBC.CDL.Types.SimpleController.P, + final controllerTypeHea=Buildings.Controls.OBC.CDL.Types.SimpleController.P, + final have_occSen=true, + final TSupSet_max=297.15, + final TSupSet_min=285.15, + final heaSpe_max=0.6, + final heaSpe_min=0.2, + final cooSpe_min=0.2, + final have_locAdj=false) + "Validate the heating case" + annotation (Placement(transformation(extent={{20,76},{60,136}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Controller conFCU1( + final cooCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased, + final heaCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased, + final have_winSen=true, + final kCoo=1, + final kHea=1, + final controllerTypeCoo=Buildings.Controls.OBC.CDL.Types.SimpleController.P, + final controllerTypeHea=Buildings.Controls.OBC.CDL.Types.SimpleController.P, + final have_occSen=false, + final TSupSet_max=297.15, + final TSupSet_min=285.15, + final heaSpe_max=0.6, + final heaSpe_min=0.2, + final cooSpe_min=0.2, + final have_locAdj=false) + "Validate the cooling case for a system with a window sensor but no occupancy sensor" + annotation (Placement(transformation(extent={{20,0},{60,60}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Controller conFCU2( + final cooCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased, + final heaCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased, + final have_winSen=false, + final kCoo=1, + final kHea=1, + final controllerTypeCoo=Buildings.Controls.OBC.CDL.Types.SimpleController.P, + final controllerTypeHea=Buildings.Controls.OBC.CDL.Types.SimpleController.P, + final have_occSen=true, + final TSupSet_max=297.15, + final TSupSet_min=285.15, + final heaSpe_max=0.6, + final heaSpe_min=0.2, + final cooSpe_min=0.2, + final have_locAdj=false) + "Validate the cooling case for a system with an occupancy sensor but no window sensor" + annotation (Placement(transformation(extent={{20,-78},{60,-18}}))); + + Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Controller conFCU3( + final cooCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.CoolingCoil.WaterBased, + final heaCoi=Buildings.Controls.OBC.ASHRAE.G36.Types.HeatingCoil.WaterBased, + final have_winSen=true, + final kCoo=1, + final kHea=1, + final controllerTypeCoo=Buildings.Controls.OBC.CDL.Types.SimpleController.P, + final controllerTypeHea=Buildings.Controls.OBC.CDL.Types.SimpleController.P, + final have_occSen=true, + final TSupSet_max=297.15, + final TSupSet_min=285.15, + final heaSpe_max=0.6, + final heaSpe_min=0.2, + final cooSpe_min=0.2, + final have_locAdj=false) + "Validate the cooling case for a system with both a window sensor and an occupancy sensor" + annotation (Placement(transformation(extent={{20,-154},{60,-94}}))); + +protected + Buildings.Controls.OBC.CDL.Reals.Sources.Constant TOccHeaSet( + final k=293.15) + "Occupied heating setpoint temperature" + annotation (Placement(transformation(extent={{-160,130},{-140,150}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant TOccCooSet( + final k=297.15) + "Occupied cooling setpoint temperature" + annotation (Placement(transformation(extent={{-120,130},{-100,150}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant TUnoHeaSet( + final k=285.15) + "Unoccupied heating setpoint temperature" + annotation (Placement(transformation(extent={{-80,130},{-60,150}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant TUnoCooSet( + final k=303.15) + "Unoccupied cooling setpoint temperature" + annotation (Placement(transformation(extent={{-40,130},{-20,150}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp TZon( + final duration=86400, + final height=6, + final offset=273.15 + 16, + y(unit="K")) + "Measured zone temperature" + annotation (Placement(transformation(extent={{-180,70},{-160,90}}))); + + Buildings.Controls.SetPoints.OccupancySchedule occSch( + final occupancy=3600*{4,20}) + "Occupancy schedule" + annotation (Placement(transformation(extent={{-120,44},{-100,64}}))); + + Buildings.Controls.OBC.CDL.Integers.Sources.Constant nOcc( + final k=2) + "Number of occupants" + annotation (Placement(transformation(extent={{-160,-10},{-140,10}}))); + + Buildings.Controls.OBC.CDL.Logical.Sources.Constant win( + final k=true) + "True window status" + annotation (Placement(transformation(extent={{-180,-152},{-160,-132}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp TZon1( + final duration=86400, + final height=-3, + final offset=273.15 + 26, + y(unit="K")) + "Measured zone temperature" + annotation (Placement(transformation(extent={{-180,-50},{-160,-30}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp TSup( + final height=2, + final duration=86400, + final offset=273.15 + 22.5, + y(unit="K")) + "Terminal unit discharge air temperature" + annotation (Placement(transformation(extent={{-180,30},{-160,50}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Ramp TSup1( + final height=-3, + final duration=86400, + final offset=273.15 + 24, + y(unit="K")) + "Terminal unit discharge air temperature" + annotation (Placement(transformation(extent={{-180,-80},{-160,-60}}))); + + Buildings.Controls.OBC.CDL.Integers.Sources.Constant demLim( + final k=0) + "Cooling and heating demand imit level" + annotation (Placement(transformation(extent={{-180,-110},{-160,-90}}))); + + Buildings.Controls.OBC.CDL.Reals.Sources.Constant cooWarTim( + final k=0) + "Cooldown and warm-up time" + annotation (Placement(transformation(extent={{-120,-30},{-100,-10}}))); + + Buildings.Controls.OBC.CDL.Logical.Sources.Constant win1( + final k=false) + "Negative window status" + annotation (Placement(transformation(extent={{-180,-180},{-160,-160}}))); + +equation + connect(TZon.y,conFCU. TZon) annotation (Line(points={{-158,80},{-20,80},{-20, + 101.5},{18,101.5}}, color={0,0,127})); + connect(occSch.occupied,conFCU. u1Occ) annotation (Line(points={{-99,48},{-74, + 48},{-74,113.65},{18,113.65}}, color={255,0,255})); + connect(occSch.tNexOcc,conFCU. tNexOcc) annotation (Line(points={{-99,60},{-80, + 60},{-80,127},{18,127}}, color={0,0,127})); + connect(TSup.y,conFCU. TSup) annotation (Line(points={{-158,40},{-140,40},{-140, + 104.5},{18,104.5}}, color={0,0,127})); + connect(win.y,conFCU1. u1Win) annotation (Line(points={{-158,-142},{0,-142},{0, + 4.5},{18,4.5}},color={255,0,255})); + connect(occSch.tNexOcc,conFCU1. tNexOcc) annotation (Line(points={{-99,60},{-20, + 60},{-20,51},{18,51}}, color={0,0,127})); + connect(occSch.occupied,conFCU1. u1Occ) + annotation (Line(points={{-99,48},{-40,48},{-40,37.65},{18,37.65}}, + color={255,0,255})); + connect(TZon1.y,conFCU1. TZon) annotation (Line(points={{-158,-40},{-70,-40},{ + -70,25.5},{18,25.5}}, color={0,0,127})); + connect(TSup1.y,conFCU1. TSup) annotation (Line(points={{-158,-70},{-84,-70},{ + -84,28.5},{18,28.5}}, color={0,0,127})); + connect(TSup1.y,conFCU2. TSup) annotation (Line(points={{-158,-70},{-84,-70},{ + -84,-49.5},{18,-49.5}}, color={0,0,127})); + connect(occSch.occupied,conFCU2. u1Occ) annotation (Line(points={{-99,48},{-74, + 48},{-74,-40.35},{18,-40.35}}, color={255,0,255})); + connect(occSch.tNexOcc,conFCU2. tNexOcc) annotation (Line(points={{-99,60},{-80, + 60},{-80,-27},{18,-27}}, color={0,0,127})); + connect(TZon1.y,conFCU2. TZon) annotation (Line(points={{-158,-40},{-70,-40},{ + -70,-52.5},{18,-52.5}}, color={0,0,127})); + connect(occSch.occupied,conFCU3. u1Occ) annotation (Line(points={{-99,48},{-74, + 48},{-74,-116.35},{18,-116.35}}, color={255,0,255})); + connect(TSup1.y,conFCU3. TSup) annotation (Line(points={{-158,-70},{-84,-70},{ + -84,-125.5},{18,-125.5}}, color={0,0,127})); + connect(TZon1.y,conFCU3. TZon) annotation (Line(points={{-158,-40},{-70,-40},{ + -70,-128.5},{18,-128.5}}, color={0,0,127})); + connect(occSch.tNexOcc,conFCU3. tNexOcc) annotation (Line(points={{-99,60},{-80, + 60},{-80,-103},{18,-103}}, color={0,0,127})); + connect(cooWarTim.y,conFCU. warUpTim) annotation (Line(points={{-98,-20},{-14, + -20},{-14,133},{18,133}}, color={0,0,127})); + connect(cooWarTim.y,conFCU. cooDowTim) annotation (Line(points={{-98,-20},{-14, + -20},{-14,130},{18,130}}, color={0,0,127})); + connect(cooWarTim.y,conFCU1. warUpTim) annotation (Line(points={{-98,-20},{-14, + -20},{-14,57},{18,57}}, color={0,0,127})); + connect(cooWarTim.y,conFCU1. cooDowTim) annotation (Line(points={{-98,-20},{-14, + -20},{-14,54},{18,54}}, color={0,0,127})); + connect(cooWarTim.y,conFCU2. warUpTim) annotation (Line(points={{-98,-20},{-14, + -20},{-14,-21},{18,-21}}, color={0,0,127})); + connect(cooWarTim.y,conFCU2. cooDowTim) annotation (Line(points={{-98,-20},{-14, + -20},{-14,-24},{18,-24}}, color={0,0,127})); + connect(cooWarTim.y,conFCU3. warUpTim) annotation (Line(points={{-98,-20},{-14, + -20},{-14,-97},{18,-97}}, color={0,0,127})); + connect(cooWarTim.y,conFCU3. cooDowTim) annotation (Line(points={{-98,-20},{-14, + -20},{-14,-100},{18,-100}}, color={0,0,127})); + connect(demLim.y,conFCU3. uHeaDemLimLev) annotation (Line(points={{-158,-100}, + {-4,-100},{-4,-122.5},{18,-122.5}},color={255,127,0})); + connect(demLim.y,conFCU3. uCooDemLimLev) annotation (Line(points={{-158,-100}, + {-4,-100},{-4,-119.5},{18,-119.5}},color={255,127,0})); + connect(demLim.y,conFCU2. uHeaDemLimLev) annotation (Line(points={{-158,-100}, + {-4,-100},{-4,-46.5},{18,-46.5}}, color={255,127,0})); + connect(demLim.y,conFCU2. uCooDemLimLev) annotation (Line(points={{-158,-100}, + {-4,-100},{-4,-43.5},{18,-43.5}}, color={255,127,0})); + connect(demLim.y,conFCU1. uHeaDemLimLev) annotation (Line(points={{-158,-100}, + {-4,-100},{-4,31.5},{18,31.5}}, color={255,127,0})); + connect(demLim.y,conFCU1. uCooDemLimLev) annotation (Line(points={{-158,-100}, + {-4,-100},{-4,34.5},{18,34.5}}, color={255,127,0})); + connect(demLim.y,conFCU. uCooDemLimLev) annotation (Line(points={{-158,-100},{ + -4,-100},{-4,110.5},{18,110.5}}, color={255,127,0})); + connect(demLim.y,conFCU. uHeaDemLimLev) annotation (Line(points={{-158,-100},{ + -4,-100},{-4,107.5},{18,107.5}}, color={255,127,0})); + connect(nOcc.y, conFCU.nOcc) annotation (Line(points={{-138,0},{-10,0},{-10,86.5}, + {18,86.5}}, color={255,127,0})); + connect(nOcc.y, conFCU2.nOcc) annotation (Line(points={{-138,0},{-10,0},{-10,-67.5}, + {18,-67.5}}, color={255,127,0})); + connect(TOccHeaSet.y, conFCU.TOccHeaSet) annotation (Line(points={{-138,140},{ + -128,140},{-128,98.5},{18,98.5}}, color={0,0,127})); + connect(TOccCooSet.y, conFCU.TOccCooSet) annotation (Line(points={{-98,140},{-88, + 140},{-88,95.5},{18,95.5}}, color={0,0,127})); + connect(TUnoHeaSet.y, conFCU.TUnoHeaSet) annotation (Line(points={{-58,140},{-48, + 140},{-48,92.5},{18,92.5}}, color={0,0,127})); + connect(TUnoCooSet.y, conFCU.TUnoCooSet) annotation (Line(points={{-18,140},{-8, + 140},{-8,89.5},{18,89.5}}, color={0,0,127})); + connect(TOccHeaSet.y, conFCU1.TOccHeaSet) annotation (Line(points={{-138,140}, + {-128,140},{-128,22.5},{18,22.5}}, color={0,0,127})); + connect(TOccCooSet.y, conFCU1.TOccCooSet) annotation (Line(points={{-98,140},{ + -88,140},{-88,19.5},{18,19.5}}, color={0,0,127})); + connect(TUnoHeaSet.y, conFCU1.TUnoHeaSet) annotation (Line(points={{-58,140},{ + -48,140},{-48,16.5},{18,16.5}}, color={0,0,127})); + connect(TUnoCooSet.y, conFCU1.TUnoCooSet) annotation (Line(points={{-18,140},{ + -8,140},{-8,13.5},{18,13.5}}, color={0,0,127})); + connect(TOccHeaSet.y, conFCU2.TOccHeaSet) annotation (Line(points={{-138,140}, + {-128,140},{-128,-55.5},{18,-55.5}}, color={0,0,127})); + connect(TOccCooSet.y, conFCU2.TOccCooSet) annotation (Line(points={{-98,140},{ + -88,140},{-88,-58.5},{18,-58.5}}, color={0,0,127})); + connect(TUnoHeaSet.y, conFCU2.TUnoHeaSet) annotation (Line(points={{-58,140},{ + -48,140},{-48,-61.5},{18,-61.5}}, color={0,0,127})); + connect(TUnoCooSet.y, conFCU2.TUnoCooSet) annotation (Line(points={{-18,140},{ + -8,140},{-8,-64.5},{18,-64.5}}, color={0,0,127})); + connect(TOccHeaSet.y, conFCU3.TOccHeaSet) annotation (Line(points={{-138,140}, + {-128,140},{-128,-131.5},{18,-131.5}}, color={0,0,127})); + connect(TOccCooSet.y, conFCU3.TOccCooSet) annotation (Line(points={{-98,140},{ + -88,140},{-88,-134.5},{18,-134.5}}, color={0,0,127})); + connect(TUnoHeaSet.y, conFCU3.TUnoHeaSet) annotation (Line(points={{-58,140},{ + -48,140},{-48,-137.5},{18,-137.5}}, color={0,0,127})); + connect(TUnoCooSet.y, conFCU3.TUnoCooSet) annotation (Line(points={{-18,140},{ + -8,140},{-8,-140.5},{18,-140.5}}, color={0,0,127})); + connect(conFCU1.y1Fan, conFCU1.u1Fan) annotation (Line(points={{62,45},{72,45}, + {72,-8},{12,-8},{12,7.5},{18,7.5}}, color={255,0,255})); + connect(conFCU2.y1Fan, conFCU2.u1Fan) annotation (Line(points={{62,-33},{72,-33}, + {72,-86},{12,-86},{12,-70.5},{18,-70.5}}, color={255,0,255})); + connect(conFCU3.y1Fan, conFCU3.u1Fan) annotation (Line(points={{62,-109},{72,-109}, + {72,-160},{10,-160},{10,-146.5},{18,-146.5}}, color={255,0,255})); + connect(conFCU.y1Fan, conFCU.u1Fan) annotation (Line(points={{62,121},{70,121}, + {70,70},{10,70},{10,83.5},{18,83.5}}, color={255,0,255})); + connect(nOcc.y, conFCU3.nOcc) annotation (Line(points={{-138,0},{-10,0},{-10, + -143.5},{18,-143.5}}, color={255,127,0})); + connect(win1.y, conFCU3.u1Win) annotation (Line(points={{-158,-170},{0,-170},{ + 0,-149.5},{18,-149.5}}, color={255,0,255})); +annotation (experiment(StopTime=86400, Tolerance=1e-06), + __Dymola_Commands(file="modelica://Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/Controller.mos" + "Simulate and plot"), + Icon(coordinateSystem(preserveAspectRatio=false, extent={{-100,-100},{100,100}}), + graphics={ + Polygon( + lineColor={0,0,255}, + fillColor={75,138,73}, + pattern=LinePattern.None, + fillPattern=FillPattern.Solid, + points={{-36,58},{64,-2},{-36,-62},{-36,58}}), + Ellipse( + lineColor={75,138,73}, + fillColor={255,255,255}, + fillPattern=FillPattern.Solid, + extent={{-100,-100},{100,100}}), + Polygon( + lineColor={0,0,255}, + fillColor={75,138,73}, + pattern=LinePattern.None, + fillPattern=FillPattern.Solid, + points={{-36,58},{64,-2},{-36,-62},{-36,58}})}), + Diagram(coordinateSystem(preserveAspectRatio=false, extent={{-200,-180},{140,160}})), +Documentation(info=" +

+This example validates + +Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Controller. +
+conFCU represents an instance of the controller with heating mode +operation, with the open-loop signals for measured zone temperature and measured +supply air temperature increasing with time. +
+conFCU1 represents an instance of the controller with cooling mode +operation, with the open-loop signals for measured zone temperature and measured +supply air temperature decreasing with time. +
+conFCU2 and conFCU3 represent instances of the controller +with cooling mode operation, with different parameter settings for the window and occupancy sensors. +

+", revisions=" + +")); +end Controller; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/package.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/package.mo new file mode 100644 index 00000000000..e5fb8db8097 --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/package.mo @@ -0,0 +1,34 @@ +within Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit; +package Validation "Package of validation models for fan coil unit controls" + + annotation (Icon(graphics={ + Rectangle( + lineColor={200,200,200}, + fillColor={248,248,248}, + fillPattern=FillPattern.HorizontalCylinder, + extent={{-100,-100},{100,100}}, + radius=25.0), + Rectangle( + lineColor={128,128,128}, + extent={{-100,-100},{100,100}}, + radius=25.0), + Polygon( + origin={8,14}, + lineColor={78,138,73}, + fillColor={78,138,73}, + pattern=LinePattern.None, + fillPattern=FillPattern.Solid, + points={{-58.0,46.0},{42.0,-14.0},{-58.0,-74.0},{-58.0,46.0}})}), + Documentation(info=" +

+ This package contains the validation model for the fan coil unit controller. +

+ ", revisions=" + + ")); +end Validation; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/package.order b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/package.order new file mode 100644 index 00000000000..8cba75e31a7 --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/package.order @@ -0,0 +1 @@ +Controller diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/package.mo b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/package.mo new file mode 100644 index 00000000000..3793b886bef --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/package.mo @@ -0,0 +1,51 @@ +within Buildings.Controls.OBC.ASHRAE.G36; +package FanCoilUnit "Control sequences for fan coil unit" + +annotation(Icon(graphics={ + Rectangle( + lineColor={200,200,200}, + fillColor={248,248,248}, + fillPattern=FillPattern.HorizontalCylinder, + extent={{-100.0,-100.0},{100.0,100.0}}, + radius=25.0), + Rectangle( + lineColor={128,128,128}, + extent={{-100.0,-100.0},{100.0,100.0}}, + radius=25.0), + Ellipse( + origin={10.0,10.0}, + fillColor={76,76,76}, + pattern=LinePattern.None, + fillPattern=FillPattern.Solid, + extent={{-80.0,-80.0},{-20.0,-20.0}}), + Ellipse( + origin={10.0,10.0}, + pattern=LinePattern.None, + fillPattern=FillPattern.Solid, + extent={{0.0,-80.0},{60.0,-20.0}}), + Ellipse( + origin={10.0,10.0}, + fillColor={128,128,128}, + pattern=LinePattern.None, + fillPattern=FillPattern.Solid, + extent={{0.0,0.0},{60.0,60.0}}), + Ellipse( + origin={10.0,10.0}, + lineColor={128,128,128}, + fillColor={255,255,255}, + fillPattern=FillPattern.Solid, + extent={{-80.0,0.0},{-20.0,60.0}})}), + Documentation(info=" +

+ This package implements control modules for the fan coil unit as per the sequence + of operations defined in ASHRAE Guideline 36-2021, section 5.22. +

+ ", revisions=" + + ")); +end FanCoilUnit; diff --git a/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/package.order b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/package.order new file mode 100644 index 00000000000..9ffbffcb990 --- /dev/null +++ b/Buildings/Controls/OBC/ASHRAE/G36/FanCoilUnit/package.order @@ -0,0 +1,3 @@ +Controller +Subsequences +Validation diff --git a/Buildings/Controls/OBC/ASHRAE/G36/package.order b/Buildings/Controls/OBC/ASHRAE/G36/package.order index e5b36f9c3ae..c09ade4ba2d 100644 --- a/Buildings/Controls/OBC/ASHRAE/G36/package.order +++ b/Buildings/Controls/OBC/ASHRAE/G36/package.order @@ -1,4 +1,5 @@ AHUs +FanCoilUnit Generic TerminalUnits ThermalZones diff --git a/Buildings/Resources/Images/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/ControlDiagrams.svg b/Buildings/Resources/Images/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/ControlDiagrams.svg new file mode 100644 index 00000000000..76e9df180ee --- /dev/null +++ b/Buildings/Resources/Images/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/ControlDiagrams.svg @@ -0,0 +1,709 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + deaSpe + heaDea + uHea_min + uCoo_min + uCoo_max + uHea_max + cooDea + Deadband + uCoo + uHea + heaSpe_min + cooSpe_min + cooSpe_max + heaSpe_max + + + + + + + + + + + heaDea + uCoo_max + uHea_max + cooDea + Deadband + uCoo + uHea + TZonHeaSet + TZonCooSet + TSupSet_min + TSupSet_max + + + + + + + + + + + + + diff --git a/Buildings/Resources/Images/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/FanSpeed.png b/Buildings/Resources/Images/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/FanSpeed.png new file mode 100644 index 00000000000..5e4185be992 Binary files /dev/null and b/Buildings/Resources/Images/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/FanSpeed.png differ diff --git a/Buildings/Resources/Images/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/SupplyAirTemperature.png b/Buildings/Resources/Images/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/SupplyAirTemperature.png new file mode 100644 index 00000000000..528c7b488a7 Binary files /dev/null and b/Buildings/Resources/Images/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/SupplyAirTemperature.png differ diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Subsequences_Validation_FanSpeed.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Subsequences_Validation_FanSpeed.txt new file mode 100644 index 00000000000..ac82ef98481 --- /dev/null +++ b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Subsequences_Validation_FanSpeed.txt @@ -0,0 +1,40 @@ +last-generated=2023-10-12 +statistics-simulation= +{ + "linear": " ", + "nonlinear": " ", + "numerical Jacobians": "0" +} +time=[0e+00, 1e+02] +fanSpe.opeMod=[1e+00, 1e+00] +fanSpe.u1FanPro=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +fanSpe.uHea=[0e+00, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226747e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.783803018297913e-15, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205143e-01, 4.817536771297451e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226746e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.432490491830917e-16, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880378e-01, 6.84547126293183e-01, 7.70513236522674e-01, 8.443279266357417e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.713416443853565e-14, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226746e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 1.286498098366183e-15] +fanSpe.uCoo=[0e+00, 0e+00] +fanSpe.y1Fan=[1e+00, 1e+00] +fanSpe.yFan=[1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.877852529287338e-01, 2.845471203327179e-01, 3.705132305622101e-01, 4.443279206752777e-01, 5.04827082157135e-01, 5.510565042495728e-01, 5.822872519493103e-01, 5.980267524719238e-01, 5.980267524719238e-01, 5.822872519493103e-01, 5.510565042495728e-01, 5.04827082157135e-01, 4.443279206752777e-01, 3.705132305622101e-01, 2.845471203327179e-01, 1.877852529287338e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.877852529287338e-01, 2.845471203327179e-01, 3.705132305622101e-01, 4.443279206752777e-01, 5.04827082157135e-01, 5.510565042495728e-01, 5.822872519493103e-01, 5.980267524719238e-01, 5.980267524719238e-01, 5.822872519493103e-01, 5.510565042495728e-01, 5.04827082157135e-01, 4.443279206752777e-01, 3.705132305622101e-01, 2.845471203327179e-01, 1.877852529287338e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01] +fanSpe1.opeMod=[1e+00, 1e+00] +fanSpe1.u1FanPro=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +fanSpe1.uHea=[0e+00, 0e+00] +fanSpe1.uCoo=[0e+00, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226747e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.783803018297913e-15, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205143e-01, 4.817536771297451e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226746e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.432490491830917e-16, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880378e-01, 6.84547126293183e-01, 7.70513236522674e-01, 8.443279266357417e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.713416443853565e-14, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226746e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 1.286498098366183e-15] +fanSpe1.y1Fan=[1e+00, 1e+00] +fanSpe1.yFan=[1.000000014901161e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 3.404563963413239e-01, 4.952753782272339e-01, 6.328212022781373e-01, 7.509247064590454e-01, 8.477233052253723e-01, 9.216904044151306e-01, 9.716596007347107e-01, 9.968427419662476e-01, 9.968427419662476e-01, 9.716596007347106e-01, 9.216904044151306e-01, 8.477233052253723e-01, 7.509247064590454e-01, 6.328212022781372e-01, 4.952753782272339e-01, 3.404563963413239e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 1.000000014901161e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 3.404563963413239e-01, 4.952753782272339e-01, 6.328212022781372e-01, 7.509247064590454e-01, 8.477233052253723e-01, 9.216904044151306e-01, 9.716596007347107e-01, 9.968427419662476e-01, 9.968427419662476e-01, 9.716596007347107e-01, 9.216904044151306e-01, 8.477233052253723e-01, 7.509247064590454e-01, 6.328212022781372e-01, 4.952753782272339e-01, 3.404563963413239e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01] +fanSpe2.opeMod=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00] +fanSpe2.u1FanPro=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +fanSpe2.uHea=[7.5e-01, 7.5e-01] +fanSpe2.uCoo=[0e+00, 0e+00] +fanSpe2.y1Fan=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +fanSpe2.yFan=[3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 3.499999940395355e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +fanSpe3.opeMod=[1e+00, 1e+00] +fanSpe3.u1FanPro=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +fanSpe3.uCoo=[0e+00, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226747e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.783803018297913e-15, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205143e-01, 4.817536771297451e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226746e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.432490491830917e-16, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880378e-01, 6.84547126293183e-01, 7.70513236522674e-01, 8.443279266357417e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.713416443853565e-14, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226746e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 1.286498098366183e-15] +fanSpe3.y1Fan=[1e+00, 1e+00] +fanSpe3.yFan=[1.000000014901161e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 3.404563963413239e-01, 4.952753782272339e-01, 6.328212022781373e-01, 7.509247064590454e-01, 8.477233052253723e-01, 9.216904044151306e-01, 9.716596007347107e-01, 9.968427419662476e-01, 9.968427419662476e-01, 9.716596007347106e-01, 9.216904044151306e-01, 8.477233052253723e-01, 7.509247064590454e-01, 6.328212022781372e-01, 4.952753782272339e-01, 3.404563963413239e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 1.000000014901161e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 3.404563963413239e-01, 4.952753782272339e-01, 6.328212022781372e-01, 7.509247064590454e-01, 8.477233052253723e-01, 9.216904044151306e-01, 9.716596007347107e-01, 9.968427419662476e-01, 9.968427419662476e-01, 9.716596007347107e-01, 9.216904044151306e-01, 8.477233052253723e-01, 7.509247064590454e-01, 6.328212022781372e-01, 4.952753782272339e-01, 3.404563963413239e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01] +fanSpe4.opeMod=[1e+00, 1e+00] +fanSpe4.u1FanPro=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +fanSpe4.uHea=[0e+00, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226747e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.783803018297913e-15, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205143e-01, 4.817536771297451e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226746e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.432490491830917e-16, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880378e-01, 6.84547126293183e-01, 7.70513236522674e-01, 8.443279266357417e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 6.713416443853565e-14, 1.25333234667778e-01, 2.486898899078369e-01, 3.681245446205139e-01, 4.817536771297455e-01, 5.877852439880371e-01, 6.845471262931824e-01, 7.705132365226746e-01, 8.443279266357422e-01, 9.048270583152771e-01, 9.510565400123596e-01, 9.822872281074524e-01, 9.980267286300659e-01, 9.980267286300659e-01, 9.822872281074524e-01, 9.510565400123596e-01, 9.048270583152771e-01, 8.443279266357422e-01, 7.705132365226746e-01, 6.845471262931824e-01, 5.877852439880371e-01, 4.817536771297455e-01, 3.681245446205139e-01, 2.486898899078369e-01, 1.25333234667778e-01, 1.286498098366183e-15] +fanSpe4.y1Fan=[1e+00, 1e+00] +fanSpe4.yFan=[1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.877852529287338e-01, 2.845471203327179e-01, 3.705132305622101e-01, 4.443279206752777e-01, 5.04827082157135e-01, 5.510565042495728e-01, 5.822872519493103e-01, 5.980267524719238e-01, 5.980267524719238e-01, 5.822872519493103e-01, 5.510565042495728e-01, 5.04827082157135e-01, 4.443279206752777e-01, 3.705132305622101e-01, 2.845471203327179e-01, 1.877852529287338e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.877852529287338e-01, 2.845471203327179e-01, 3.705132305622101e-01, 4.443279206752777e-01, 5.04827082157135e-01, 5.510565042495728e-01, 5.822872519493103e-01, 5.980267524719238e-01, 5.980267524719238e-01, 5.822872519493103e-01, 5.510565042495728e-01, 5.04827082157135e-01, 4.443279206752777e-01, 3.705132305622101e-01, 2.845471203327179e-01, 1.877852529287338e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01] +fanSpe5.opeMod=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 4e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 5e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 6e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00] +fanSpe5.u1FanPro=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +fanSpe5.y1Fan=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +fanSpe5.yFan=[1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Subsequences_Validation_PlantRequests.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Subsequences_Validation_PlantRequests.txt new file mode 100644 index 00000000000..7e1b3ecbb18 --- /dev/null +++ b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Subsequences_Validation_PlantRequests.txt @@ -0,0 +1,26 @@ +last-generated=2024-01-04 +statistics-simulation= +{ + "linear": " ", + "nonlinear": " ", + "numerical Jacobians": "0" +} +time=[0e+00, 3.6e+03] +plaReq.TAirSup=[2.851499938964844e+02, 2.852300109863281e+02, 2.853099975585938e+02, 2.853900146484375e+02, 2.854700012207031e+02, 2.855499877929688e+02, 2.856300048828125e+02, 2.857099914550781e+02, 2.857900085449219e+02, 2.858699951171875e+02, 2.859500122070312e+02, 2.860299987792969e+02, 2.861099853515625e+02, 2.861900024414062e+02, 2.862699890136719e+02, 2.863500061035156e+02, 2.864299926757812e+02, 2.86510009765625e+02, 2.865899963378906e+02, 2.866700134277344e+02, 2.8675e+02, 2.868299865722656e+02, 2.869100036621094e+02, 2.86989990234375e+02, 2.870700073242188e+02, 2.871499938964844e+02, 2.872300109863281e+02, 2.873099975585938e+02, 2.873900146484375e+02, 2.874700012207031e+02, 2.875499877929688e+02, 2.876300048828125e+02, 2.877099914550781e+02, 2.877900085449219e+02, 2.878699951171875e+02, 2.879500122070312e+02, 2.880299987792969e+02, 2.881099853515625e+02, 2.881900024414062e+02, 2.882699890136719e+02, 2.883500061035156e+02, 2.884299926757812e+02, 2.88510009765625e+02, 2.885899963378906e+02, 2.886700134277344e+02, 2.8875e+02, 2.888299865722656e+02, 2.889100036621094e+02, 2.88989990234375e+02, 2.890700073242188e+02, 2.891499938964844e+02, 2.892300109863281e+02, 2.893099975585938e+02, 2.893900146484375e+02, 2.894700012207031e+02, 2.895499877929688e+02, 2.896300048828125e+02, 2.897099914550781e+02, 2.897900085449219e+02, 2.898699951171875e+02, 2.899500122070312e+02, 2.900299987792969e+02, 2.901099853515625e+02, 2.901900024414062e+02, 2.902699890136719e+02, 2.903500061035156e+02, 2.904299926757812e+02, 2.90510009765625e+02, 2.905899963378906e+02, 2.906700134277344e+02, 2.9075e+02, 2.908299865722656e+02, 2.909100036621094e+02, 2.90989990234375e+02, 2.910700073242188e+02, 2.911499938964844e+02, 2.912300109863281e+02, 2.913099975585938e+02, 2.913900146484375e+02, 2.914700012207031e+02, 2.915499877929688e+02, 2.916300048828125e+02, 2.917099914550781e+02, 2.917900085449219e+02, 2.918699951171875e+02, 2.919500122070312e+02, 2.920299987792969e+02, 2.921099853515625e+02, 2.921900024414062e+02, 2.922699890136719e+02, 2.923500061035156e+02, 2.924299926757812e+02, 2.92510009765625e+02, 2.925899963378906e+02, 2.926700134277344e+02, 2.9275e+02, 2.928299865722656e+02, 2.929100036621094e+02, 2.92989990234375e+02, 2.930700073242188e+02, 2.931499938964844e+02] +plaReq.TAirSupSet=[2.931499938964844e+02, 2.933999938964844e+02, 2.936499938964844e+02, 2.938999938964844e+02, 2.941499938964844e+02, 2.943999938964844e+02, 2.946499938964844e+02, 2.948999938964844e+02, 2.951499938964844e+02, 2.953999938964844e+02, 2.956499938964844e+02, 2.958999938964844e+02, 2.961499938964844e+02, 2.963999938964844e+02, 2.966499938964844e+02, 2.968999938964844e+02, 2.971499938964844e+02, 2.973999938964844e+02, 2.976499938964844e+02, 2.978999938964844e+02, 2.981499938964844e+02, 2.983999938964844e+02, 2.986499938964844e+02, 2.988999938964844e+02, 2.991499938964844e+02, 2.993999938964844e+02, 2.996499938964844e+02, 2.998999938964844e+02, 3.001499938964844e+02, 3.003999938964844e+02, 3.006499938964844e+02, 3.008999938964844e+02, 3.011499938964844e+02, 3.013999938964844e+02, 3.016499938964844e+02, 3.018999938964844e+02, 3.021499938964844e+02, 3.023999938964844e+02, 3.026499938964844e+02, 3.028999938964844e+02, 3.031499938964844e+02, 3.033999938964844e+02, 3.036499938964844e+02, 3.038999938964844e+02, 3.041499938964844e+02, 3.043999938964844e+02, 3.046499938964844e+02, 3.048999938964844e+02, 3.051499938964844e+02, 3.053999938964844e+02, 3.056499938964844e+02, 3.058999938964844e+02, 3.061499938964844e+02, 3.063999938964844e+02, 3.066499938964844e+02, 3.068999938964844e+02, 3.071499938964844e+02, 3.073999938964844e+02, 3.076499938964844e+02, 3.078999938964844e+02, 3.081499938964844e+02, 3.083999938964844e+02, 3.086499938964844e+02, 3.088999938964844e+02, 3.091499938964844e+02, 3.093999938964844e+02, 3.096499938964844e+02, 3.098999938964844e+02, 3.101499938964844e+02, 3.103999938964844e+02, 3.106499938964844e+02, 3.108999938964844e+02, 3.111499938964844e+02, 3.113999938964844e+02, 3.116499938964844e+02, 3.118999938964844e+02, 3.121499938964844e+02, 3.123999938964844e+02, 3.126499938964844e+02, 3.128999938964844e+02, 3.131499938964844e+02, 3.133999938964844e+02, 3.136499938964844e+02, 3.138999938964844e+02, 3.141499938964844e+02, 3.143999938964844e+02, 3.146499938964844e+02, 3.148999938964844e+02, 3.151499938964844e+02, 3.153999938964844e+02, 3.156499938964844e+02, 3.158999938964844e+02, 3.161499938964844e+02, 3.163999938964844e+02, 3.166499938964844e+02, 3.168999938964844e+02, 3.171499938964844e+02, 3.173999938964844e+02, 3.176499938964844e+02, 3.178999938964844e+02, 3.181499938964844e+02] +plaReq.uCooCoiSet=[0e+00, 0e+00] +plaReq.uHeaCoiSet=[9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.593333601951599e-01, 9.56333339214325e-01, 9.5333331823349e-01, 9.503333568572998e-01, 9.473333358764648e-01, 9.443333148956299e-01, 9.413333535194397e-01, 9.383333325386047e-01, 9.353333115577698e-01, 9.323333501815796e-01, 9.293333292007446e-01, 9.263333082199097e-01, 9.233333468437195e-01, 9.203333258628845e-01, 9.173333048820496e-01, 9.143333435058594e-01, 9.113333225250244e-01, 9.083333611488342e-01, 9.053333401679993e-01, 9.023333191871643e-01, 8.993333578109741e-01, 8.963333368301392e-01, 8.933333158493042e-01, 8.90333354473114e-01, 8.873333334922791e-01, 8.843333125114441e-01, 8.813333511352539e-01, 8.783333301544189e-01, 8.75333309173584e-01, 8.723333477973938e-01, 8.693333268165588e-01, 8.663333058357239e-01, 8.633333444595337e-01, 8.603333234786987e-01, 8.573333621025085e-01, 8.543333411216736e-01, 8.513333201408386e-01, 8.483333587646484e-01, 8.453333377838135e-01, 8.423333168029785e-01, 8.393333554267883e-01, 8.363333344459534e-01, 8.333333134651184e-01, 8.303333520889282e-01, 8.273333311080933e-01, 8.243333101272583e-01, 8.213333487510681e-01, 8.183333277702332e-01, 8.153333067893982e-01, 8.12333345413208e-01, 8.09333324432373e-01, 8.063333630561829e-01, 8.033333420753479e-01, 8.003333210945129e-01, 7.973333597183228e-01, 7.943333387374878e-01, 7.913333177566528e-01, 7.883333563804626e-01, 7.853333353996277e-01, 7.823333144187927e-01, 7.793333530426025e-01, 7.763333320617676e-01, 7.733333110809326e-01, 7.703333497047424e-01, 7.673333287239075e-01, 7.643333077430725e-01, 7.613333463668823e-01, 7.583333253860474e-01, 7.553333044052124e-01, 7.523333430290222e-01, 7.493333220481873e-01, 7.463333606719971e-01, 7.433333396911621e-01] +plaReq.yHotWatResReq=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +plaReq.yHotWatPlaReq=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00] +plaReq.uFan=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +plaReq1.TAirSup=[2.881499938964844e+02, 2.883099975585938e+02, 2.884700012207031e+02, 2.886300048828125e+02, 2.887900085449219e+02, 2.889500122070312e+02, 2.891099853515625e+02, 2.892699890136719e+02, 2.894299926757812e+02, 2.895899963378906e+02, 2.8975e+02, 2.899100036621094e+02, 2.900700073242188e+02, 2.902300109863281e+02, 2.903900146484375e+02, 2.905499877929688e+02, 2.907099914550781e+02, 2.908699951171875e+02, 2.910299987792969e+02, 2.911900024414062e+02, 2.913500061035156e+02, 2.91510009765625e+02, 2.916700134277344e+02, 2.918299865722656e+02, 2.91989990234375e+02, 2.921499938964844e+02, 2.923099975585938e+02, 2.924700012207031e+02, 2.926300048828125e+02, 2.927900085449219e+02, 2.929500122070312e+02, 2.931099853515625e+02, 2.932699890136719e+02, 2.934299926757812e+02, 2.935899963378906e+02, 2.9375e+02, 2.939100036621094e+02, 2.940700073242188e+02, 2.942300109863281e+02, 2.943900146484375e+02, 2.945499877929688e+02, 2.947099914550781e+02, 2.948699951171875e+02, 2.950299987792969e+02, 2.951900024414062e+02, 2.953500061035156e+02, 2.95510009765625e+02, 2.956700134277344e+02, 2.958299865722656e+02, 2.95989990234375e+02, 2.961499938964844e+02, 2.963099975585938e+02, 2.964700012207031e+02, 2.966300048828125e+02, 2.967900085449219e+02, 2.969500122070312e+02, 2.971099853515625e+02, 2.972699890136719e+02, 2.974299926757812e+02, 2.975899963378906e+02, 2.9775e+02, 2.979100036621094e+02, 2.980700073242188e+02, 2.982300109863281e+02, 2.983900146484375e+02, 2.985499877929688e+02, 2.987099914550781e+02, 2.988699951171875e+02, 2.990299987792969e+02, 2.991900024414062e+02, 2.993500061035156e+02, 2.99510009765625e+02, 2.996700134277344e+02, 2.998299865722656e+02, 2.99989990234375e+02, 3.001499938964844e+02, 3.003099975585938e+02, 3.004700012207031e+02, 3.006300048828125e+02, 3.007900085449219e+02, 3.009500122070312e+02, 3.011099853515625e+02, 3.012699890136719e+02, 3.014299926757812e+02, 3.015899963378906e+02, 3.0175e+02, 3.019100036621094e+02, 3.020700073242188e+02, 3.022300109863281e+02, 3.023900146484375e+02, 3.025499877929688e+02, 3.027099914550781e+02, 3.028699951171875e+02, 3.030299987792969e+02, 3.031900024414062e+02, 3.033500061035156e+02, 3.03510009765625e+02, 3.036700134277344e+02, 3.038299865722656e+02, 3.03989990234375e+02, 3.041499938964844e+02] +plaReq1.TAirSupSet=[2.876499938964844e+02, 2.877099914550781e+02, 2.877699890136719e+02, 2.878299865722656e+02, 2.878900146484375e+02, 2.879500122070312e+02, 2.88010009765625e+02, 2.880700073242188e+02, 2.881300048828125e+02, 2.881900024414062e+02, 2.8825e+02, 2.883099975585938e+02, 2.883699951171875e+02, 2.884299926757812e+02, 2.88489990234375e+02, 2.885499877929688e+02, 2.886099853515625e+02, 2.886700134277344e+02, 2.887300109863281e+02, 2.887900085449219e+02, 2.888500061035156e+02, 2.889100036621094e+02, 2.889700012207031e+02, 2.890299987792969e+02, 2.890899963378906e+02, 2.891499938964844e+02, 2.892099914550781e+02, 2.892699890136719e+02, 2.893299865722656e+02, 2.893900146484375e+02, 2.894500122070312e+02, 2.89510009765625e+02, 2.895700073242188e+02, 2.896300048828125e+02, 2.896900024414062e+02, 2.8975e+02, 2.898099975585938e+02, 2.898699951171875e+02, 2.899299926757812e+02, 2.89989990234375e+02, 2.900499877929688e+02, 2.901099853515625e+02, 2.901700134277344e+02, 2.902300109863281e+02, 2.902900085449219e+02, 2.903500061035156e+02, 2.904100036621094e+02, 2.904700012207031e+02, 2.905299987792969e+02, 2.905899963378906e+02, 2.906499938964844e+02, 2.907099914550781e+02, 2.907699890136719e+02, 2.908299865722656e+02, 2.908900146484375e+02, 2.909500122070312e+02, 2.91010009765625e+02, 2.910700073242188e+02, 2.911300048828125e+02, 2.911900024414062e+02, 2.9125e+02, 2.913099975585938e+02, 2.913699951171875e+02, 2.914299926757812e+02, 2.91489990234375e+02, 2.915499877929688e+02, 2.916099853515625e+02, 2.916700134277344e+02, 2.917300109863281e+02, 2.917900085449219e+02, 2.918500061035156e+02, 2.919100036621094e+02, 2.919700012207031e+02, 2.920299987792969e+02, 2.920899963378906e+02, 2.921499938964844e+02, 2.922099914550781e+02, 2.922699890136719e+02, 2.923299865722656e+02, 2.923900146484375e+02, 2.924500122070312e+02, 2.92510009765625e+02, 2.925700073242188e+02, 2.926300048828125e+02, 2.926900024414062e+02, 2.9275e+02, 2.928099975585938e+02, 2.928699951171875e+02, 2.929299926757812e+02, 2.92989990234375e+02, 2.930499877929688e+02, 2.931099853515625e+02, 2.931700134277344e+02, 2.932300109863281e+02, 2.932900085449219e+02, 2.933500061035156e+02, 2.934100036621094e+02, 2.934700012207031e+02, 2.935299987792969e+02, 2.935899963378906e+02, 2.936499938964844e+02] +plaReq1.uCooCoiSet=[9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.593333601951599e-01, 9.56333339214325e-01, 9.5333331823349e-01, 9.503333568572998e-01, 9.473333358764648e-01, 9.443333148956299e-01, 9.413333535194397e-01, 9.383333325386047e-01, 9.353333115577698e-01, 9.323333501815796e-01, 9.293333292007446e-01, 9.263333082199097e-01, 9.233333468437195e-01, 9.203333258628845e-01, 9.173333048820496e-01, 9.143333435058594e-01, 9.113333225250244e-01, 9.083333611488342e-01, 9.053333401679993e-01, 9.023333191871643e-01, 8.993333578109741e-01, 8.963333368301392e-01, 8.933333158493042e-01, 8.90333354473114e-01, 8.873333334922791e-01, 8.843333125114441e-01, 8.813333511352539e-01, 8.783333301544189e-01, 8.75333309173584e-01, 8.723333477973938e-01, 8.693333268165588e-01, 8.663333058357239e-01, 8.633333444595337e-01, 8.603333234786987e-01, 8.573333621025085e-01, 8.543333411216736e-01, 8.513333201408386e-01, 8.483333587646484e-01, 8.453333377838135e-01, 8.423333168029785e-01, 8.393333554267883e-01, 8.363333344459534e-01, 8.333333134651184e-01, 8.303333520889282e-01, 8.273333311080933e-01, 8.243333101272583e-01, 8.213333487510681e-01, 8.183333277702332e-01, 8.153333067893982e-01, 8.12333345413208e-01, 8.09333324432373e-01, 8.063333630561829e-01, 8.033333420753479e-01, 8.003333210945129e-01, 7.973333597183228e-01, 7.943333387374878e-01, 7.913333177566528e-01, 7.883333563804626e-01, 7.853333353996277e-01, 7.823333144187927e-01, 7.793333530426025e-01, 7.763333320617676e-01, 7.733333110809326e-01, 7.703333497047424e-01, 7.673333287239075e-01, 7.643333077430725e-01, 7.613333463668823e-01, 7.583333253860474e-01, 7.553333044052124e-01, 7.523333430290222e-01, 7.493333220481873e-01, 7.463333606719971e-01, 7.433333396911621e-01] +plaReq1.yChiWatResReq=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 2e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +plaReq1.yChiPlaReq=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00] +plaReq2.TAirSup=[2.881499938964844e+02, 2.882300109863281e+02, 2.883099975585938e+02, 2.883900146484375e+02, 2.884700012207031e+02, 2.885499877929688e+02, 2.886300048828125e+02, 2.887099914550781e+02, 2.887900085449219e+02, 2.888699951171875e+02, 2.889500122070312e+02, 2.890299987792969e+02, 2.891099853515625e+02, 2.891900024414062e+02, 2.892699890136719e+02, 2.893500061035156e+02, 2.894299926757812e+02, 2.89510009765625e+02, 2.895899963378906e+02, 2.896700134277344e+02, 2.8975e+02, 2.898299865722656e+02, 2.899100036621094e+02, 2.89989990234375e+02, 2.900700073242188e+02, 2.901499938964844e+02, 2.902300109863281e+02, 2.903099975585938e+02, 2.903900146484375e+02, 2.904700012207031e+02, 2.905499877929688e+02, 2.906300048828125e+02, 2.907099914550781e+02, 2.907900085449219e+02, 2.908699951171875e+02, 2.909500122070312e+02, 2.910299987792969e+02, 2.911099853515625e+02, 2.911900024414062e+02, 2.912699890136719e+02, 2.913500061035156e+02, 2.914299926757812e+02, 2.91510009765625e+02, 2.915899963378906e+02, 2.916700134277344e+02, 2.9175e+02, 2.918299865722656e+02, 2.919100036621094e+02, 2.91989990234375e+02, 2.920700073242188e+02, 2.921499938964844e+02, 2.922300109863281e+02, 2.923099975585938e+02, 2.923900146484375e+02, 2.924700012207031e+02, 2.925499877929688e+02, 2.926300048828125e+02, 2.927099914550781e+02, 2.927900085449219e+02, 2.928699951171875e+02, 2.929500122070312e+02, 2.930299987792969e+02, 2.931099853515625e+02, 2.931900024414062e+02, 2.932699890136719e+02, 2.933500061035156e+02, 2.934299926757812e+02, 2.93510009765625e+02, 2.935899963378906e+02, 2.936700134277344e+02, 2.9375e+02, 2.938299865722656e+02, 2.939100036621094e+02, 2.93989990234375e+02, 2.940700073242188e+02, 2.941499938964844e+02, 2.942300109863281e+02, 2.943099975585938e+02, 2.943900146484375e+02, 2.944700012207031e+02, 2.945499877929688e+02, 2.946300048828125e+02, 2.947099914550781e+02, 2.947900085449219e+02, 2.948699951171875e+02, 2.949500122070312e+02, 2.950299987792969e+02, 2.951099853515625e+02, 2.951900024414062e+02, 2.952699890136719e+02, 2.953500061035156e+02, 2.954299926757812e+02, 2.95510009765625e+02, 2.955899963378906e+02, 2.956700134277344e+02, 2.9575e+02, 2.958299865722656e+02, 2.959100036621094e+02, 2.95989990234375e+02, 2.960700073242188e+02, 2.961499938964844e+02] +plaReq2.TAirSupSet=[2.876499938964844e+02, 2.877099914550781e+02, 2.877699890136719e+02, 2.878299865722656e+02, 2.878900146484375e+02, 2.879500122070312e+02, 2.88010009765625e+02, 2.880700073242188e+02, 2.881300048828125e+02, 2.881900024414062e+02, 2.8825e+02, 2.883099975585938e+02, 2.883699951171875e+02, 2.884299926757812e+02, 2.88489990234375e+02, 2.885499877929688e+02, 2.886099853515625e+02, 2.886700134277344e+02, 2.887300109863281e+02, 2.887900085449219e+02, 2.888500061035156e+02, 2.889100036621094e+02, 2.889700012207031e+02, 2.890299987792969e+02, 2.890899963378906e+02, 2.891499938964844e+02, 2.892099914550781e+02, 2.892699890136719e+02, 2.893299865722656e+02, 2.893900146484375e+02, 2.894500122070312e+02, 2.89510009765625e+02, 2.895700073242188e+02, 2.896300048828125e+02, 2.896900024414062e+02, 2.8975e+02, 2.898099975585938e+02, 2.898699951171875e+02, 2.899299926757812e+02, 2.89989990234375e+02, 2.900499877929688e+02, 2.901099853515625e+02, 2.901700134277344e+02, 2.902300109863281e+02, 2.902900085449219e+02, 2.903500061035156e+02, 2.904100036621094e+02, 2.904700012207031e+02, 2.905299987792969e+02, 2.905899963378906e+02, 2.906499938964844e+02, 2.907099914550781e+02, 2.907699890136719e+02, 2.908299865722656e+02, 2.908900146484375e+02, 2.909500122070312e+02, 2.91010009765625e+02, 2.910700073242188e+02, 2.911300048828125e+02, 2.911900024414062e+02, 2.9125e+02, 2.913099975585938e+02, 2.913699951171875e+02, 2.914299926757812e+02, 2.91489990234375e+02, 2.915499877929688e+02, 2.916099853515625e+02, 2.916700134277344e+02, 2.917300109863281e+02, 2.917900085449219e+02, 2.918500061035156e+02, 2.919100036621094e+02, 2.919700012207031e+02, 2.920299987792969e+02, 2.920899963378906e+02, 2.921499938964844e+02, 2.922099914550781e+02, 2.922699890136719e+02, 2.923299865722656e+02, 2.923900146484375e+02, 2.924500122070312e+02, 2.92510009765625e+02, 2.925700073242188e+02, 2.926300048828125e+02, 2.926900024414062e+02, 2.9275e+02, 2.928099975585938e+02, 2.928699951171875e+02, 2.929299926757812e+02, 2.92989990234375e+02, 2.930499877929688e+02, 2.931099853515625e+02, 2.931700134277344e+02, 2.932300109863281e+02, 2.932900085449219e+02, 2.933500061035156e+02, 2.934100036621094e+02, 2.934700012207031e+02, 2.935299987792969e+02, 2.935899963378906e+02, 2.936499938964844e+02] +plaReq2.uHeaCoiSet=[9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.599999785423279e-01, 9.593333601951599e-01, 9.56333339214325e-01, 9.5333331823349e-01, 9.503333568572998e-01, 9.473333358764648e-01, 9.443333148956299e-01, 9.413333535194397e-01, 9.383333325386047e-01, 9.353333115577698e-01, 9.323333501815796e-01, 9.293333292007446e-01, 9.263333082199097e-01, 9.233333468437195e-01, 9.203333258628845e-01, 9.173333048820496e-01, 9.143333435058594e-01, 9.113333225250244e-01, 9.083333611488342e-01, 9.053333401679993e-01, 9.023333191871643e-01, 8.993333578109741e-01, 8.963333368301392e-01, 8.933333158493042e-01, 8.90333354473114e-01, 8.873333334922791e-01, 8.843333125114441e-01, 8.813333511352539e-01, 8.783333301544189e-01, 8.75333309173584e-01, 8.723333477973938e-01, 8.693333268165588e-01, 8.663333058357239e-01, 8.633333444595337e-01, 8.603333234786987e-01, 8.573333621025085e-01, 8.543333411216736e-01, 8.513333201408386e-01, 8.483333587646484e-01, 8.453333377838135e-01, 8.423333168029785e-01, 8.393333554267883e-01, 8.363333344459534e-01, 8.333333134651184e-01, 8.303333520889282e-01, 8.273333311080933e-01, 8.243333101272583e-01, 8.213333487510681e-01, 8.183333277702332e-01, 8.153333067893982e-01, 8.12333345413208e-01, 8.09333324432373e-01, 8.063333630561829e-01, 8.033333420753479e-01, 8.003333210945129e-01, 7.973333597183228e-01, 7.943333387374878e-01, 7.913333177566528e-01, 7.883333563804626e-01, 7.853333353996277e-01, 7.823333144187927e-01, 7.793333530426025e-01, 7.763333320617676e-01, 7.733333110809326e-01, 7.703333497047424e-01, 7.673333287239075e-01, 7.643333077430725e-01, 7.613333463668823e-01, 7.583333253860474e-01, 7.553333044052124e-01, 7.523333430290222e-01, 7.493333220481873e-01, 7.463333606719971e-01, 7.433333396911621e-01] +plaReq2.yHotWatResReq=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +plaReq2.yHotWatPlaReq=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00] +plaReq2.uFan=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Subsequences_Validation_SupplyAirTemperature.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Subsequences_Validation_SupplyAirTemperature.txt new file mode 100644 index 00000000000..4716f9163bb --- /dev/null +++ b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Subsequences_Validation_SupplyAirTemperature.txt @@ -0,0 +1,35 @@ +last-generated=2022-11-30 +statistics-simulation= +{ + "linear": " ", + "nonlinear": " ", + "number of continuous time states": "8", + "numerical Jacobians": "0" +} +time=[0e+00, 1e+02] +TSupAir.uHea=[2.5e-01, 2.5e-01] +TSupAir.uCoo=[0e+00, 0e+00] +TSupAir.TZonHeaSet=[2.941499938964844e+02, 2.941499938964844e+02] +TSupAir.TZonCooSet=[2.981499938964844e+02, 2.981499938964844e+02] +TSupAir.TSupSet=[2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02, 2.990388793945312e+02] +TSupAir.TAirSup=[2.961499938964844e+02, 2.986566772460938e+02, 3.011238098144531e+02, 3.035124816894531e+02, 3.057850646972656e+02, 3.079057006835938e+02, 3.098409423828125e+02, 3.115602722167969e+02, 3.130365600585938e+02, 3.142465515136719e+02, 3.15171142578125e+02, 3.157957458496094e+02, 3.161105346679688e+02, 3.161105346679688e+02, 3.157957458496094e+02, 3.15171142578125e+02, 3.142465515136719e+02, 3.130365600585938e+02, 3.115602722167969e+02, 3.098409423828125e+02, 3.079057006835938e+02, 3.057850646972656e+02, 3.035124816894531e+02, 3.011238098144531e+02, 2.986566772460938e+02, 2.961499938964844e+02, 2.936433410644531e+02, 2.911762084960938e+02, 2.887875061035156e+02, 2.865149230957031e+02, 2.84394287109375e+02, 2.824590454101562e+02, 2.8073974609375e+02, 2.79263427734375e+02, 2.78053466796875e+02, 2.771288757324219e+02, 2.765042419433594e+02, 2.76189453125e+02, 2.76189453125e+02, 2.765042419433594e+02, 2.771288757324219e+02, 2.78053466796875e+02, 2.79263427734375e+02, 2.8073974609375e+02, 2.824590454101562e+02, 2.84394287109375e+02, 2.865149230957031e+02, 2.887875061035156e+02, 2.911762084960938e+02, 2.936433410644531e+02, 2.961499938964844e+02, 2.986566772460938e+02, 3.011238098144531e+02, 3.035124816894531e+02, 3.057850646972656e+02, 3.079057006835938e+02, 3.098409423828125e+02, 3.115602722167969e+02, 3.130365600585938e+02, 3.142465515136719e+02, 3.15171142578125e+02, 3.157957458496094e+02, 3.161105346679688e+02, 3.161105346679688e+02, 3.157957458496094e+02, 3.15171142578125e+02, 3.142465515136719e+02, 3.130365600585938e+02, 3.115602722167969e+02, 3.098409423828125e+02, 3.079057006835938e+02, 3.057850646972656e+02, 3.035124816894531e+02, 3.011238098144531e+02, 2.986566772460938e+02, 2.961499938964844e+02, 2.936433410644531e+02, 2.911762084960938e+02, 2.887875061035156e+02, 2.865149230957031e+02, 2.84394287109375e+02, 2.824590454101562e+02, 2.8073974609375e+02, 2.79263427734375e+02, 2.78053466796875e+02, 2.771288757324219e+02, 2.765042419433594e+02, 2.76189453125e+02, 2.76189453125e+02, 2.765042419433594e+02, 2.771288757324219e+02, 2.78053466796875e+02, 2.79263427734375e+02, 2.8073974609375e+02, 2.824590454101562e+02, 2.84394287109375e+02, 2.865149230957031e+02, 2.887875061035156e+02, 2.911762084960938e+02, 2.936433410644531e+02, 2.961499938964844e+02] +TSupAir.yHeaCoi=[1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 5.575804114341736e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 5.575790405273438e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00] +TSupAir.yCooCoi=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +TSupAir1.uHea=[0e+00, 0e+00] +TSupAir1.uCoo=[2.5e-01, 2.5e-01] +TSupAir1.TZonHeaSet=[2.941499938964844e+02, 2.941499938964844e+02] +TSupAir1.TZonCooSet=[2.981499938964844e+02, 2.981499938964844e+02] +TSupAir1.TSupSet=[2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02, 2.92727783203125e+02] +TSupAir1.TAirSup=[2.961499938964844e+02, 2.986566772460938e+02, 3.011238098144531e+02, 3.035124816894531e+02, 3.057850646972656e+02, 3.079057006835938e+02, 3.098409423828125e+02, 3.115602722167969e+02, 3.130365600585938e+02, 3.142465515136719e+02, 3.15171142578125e+02, 3.157957458496094e+02, 3.161105346679688e+02, 3.161105346679688e+02, 3.157957458496094e+02, 3.15171142578125e+02, 3.142465515136719e+02, 3.130365600585938e+02, 3.115602722167969e+02, 3.098409423828125e+02, 3.079057006835938e+02, 3.057850646972656e+02, 3.035124816894531e+02, 3.011238098144531e+02, 2.986566772460938e+02, 2.961499938964844e+02, 2.936433410644531e+02, 2.911762084960938e+02, 2.887875061035156e+02, 2.865149230957031e+02, 2.84394287109375e+02, 2.824590454101562e+02, 2.8073974609375e+02, 2.79263427734375e+02, 2.78053466796875e+02, 2.771288757324219e+02, 2.765042419433594e+02, 2.76189453125e+02, 2.76189453125e+02, 2.765042419433594e+02, 2.771288757324219e+02, 2.78053466796875e+02, 2.79263427734375e+02, 2.8073974609375e+02, 2.824590454101562e+02, 2.84394287109375e+02, 2.865149230957031e+02, 2.887875061035156e+02, 2.911762084960938e+02, 2.936433410644531e+02, 2.961499938964844e+02, 2.986566772460938e+02, 3.011238098144531e+02, 3.035124816894531e+02, 3.057850646972656e+02, 3.079057006835938e+02, 3.098409423828125e+02, 3.115602722167969e+02, 3.130365600585938e+02, 3.142465515136719e+02, 3.15171142578125e+02, 3.157957458496094e+02, 3.161105346679688e+02, 3.161105346679688e+02, 3.157957458496094e+02, 3.15171142578125e+02, 3.142465515136719e+02, 3.130365600585938e+02, 3.115602722167969e+02, 3.098409423828125e+02, 3.079057006835938e+02, 3.057850646972656e+02, 3.035124816894531e+02, 3.011238098144531e+02, 2.986566772460938e+02, 2.961499938964844e+02, 2.936433410644531e+02, 2.911762084960938e+02, 2.887875061035156e+02, 2.865149230957031e+02, 2.84394287109375e+02, 2.824590454101562e+02, 2.8073974609375e+02, 2.79263427734375e+02, 2.78053466796875e+02, 2.771288757324219e+02, 2.765042419433594e+02, 2.76189453125e+02, 2.76189453125e+02, 2.765042419433594e+02, 2.771288757324219e+02, 2.78053466796875e+02, 2.79263427734375e+02, 2.8073974609375e+02, 2.824590454101562e+02, 2.84394287109375e+02, 2.865149230957031e+02, 2.887875061035156e+02, 2.911762084960938e+02, 2.936433410644531e+02, 2.961499938964844e+02] +TSupAir1.yHeaCoi=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +TSupAir1.yCooCoi=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00] +TSupAir2.uHea=[5e-01, 5.313952565193176e-01, 5.626665949821472e-01, 5.936906337738037e-01, 6.243449449539185e-01, 6.545084714889526e-01, 6.840623021125793e-01, 7.128896713256836e-01, 7.408768534660339e-01, 7.679134011268616e-01, 7.938926219940186e-01, 8.187119960784912e-01, 8.422735333442688e-01, 8.644843101501465e-01, 8.852566480636597e-01, 9.045084714889526e-01, 9.221639633178711e-01, 9.381533265113831e-01, 9.524134993553162e-01, 9.648882150650024e-01, 9.755282402038574e-01, 9.842915534973145e-01, 9.911436438560486e-01, 9.960573315620422e-01, 9.99013364315033e-01, 1e+00, 9.99013364315033e-01, 9.960573315620422e-01, 9.911436438560486e-01, 9.842915534973145e-01, 9.755282402038574e-01, 9.648882150650024e-01, 9.524134993553162e-01, 9.381533265113831e-01, 9.221639633178711e-01, 9.045084714889526e-01, 8.852566480636597e-01, 8.644843101501465e-01, 8.422735333442688e-01, 8.187119960784912e-01, 7.938926219940186e-01, 7.679134011268616e-01, 7.408768534660339e-01, 7.128896713256836e-01, 6.840623021125793e-01, 6.545084714889526e-01, 6.243449449539185e-01, 5.936906337738037e-01, 5.626665949821472e-01, 5.313952565193176e-01, 5e-01, 4.686047434806824e-01, 4.373333752155304e-01, 4.063093364238739e-01, 3.756550550460815e-01, 3.454914987087248e-01, 3.159377276897428e-01, 2.87110358476639e-01, 2.591231763362887e-01, 2.320865988731384e-01, 2.061073780059814e-01, 1.812880039215088e-01, 1.5772645175457e-01, 1.355156898498535e-01, 1.147433817386627e-01, 9.549150615930557e-02, 7.783603668212891e-02, 6.184665858745575e-02, 4.758647456765175e-02, 3.511175885796547e-02, 2.447174116969109e-02, 1.570841856300831e-02, 8.856374770402908e-03, 3.942649345844984e-03, 9.866358013823628e-04, 0e+00, 9.866358013823628e-04, 3.942649345844984e-03, 8.856374770402908e-03, 1.570841856300831e-02, 2.447174116969109e-02, 3.511175885796547e-02, 4.758647456765175e-02, 6.184665858745575e-02, 7.783603668212891e-02, 9.549150615930557e-02, 1.147433817386627e-01, 1.355156898498535e-01, 1.5772645175457e-01, 1.812880039215088e-01, 2.061073780059814e-01, 2.320865988731384e-01, 2.591231763362885e-01, 2.871103584766388e-01, 3.15937727689743e-01, 3.45491498708725e-01, 3.756550550460815e-01, 4.063093364238739e-01, 4.373333752155304e-01, 4.686047434806824e-01, 5e-01] +TSupAir2.TZonHeaSet=[2.941499938964844e+02, 2.941499938964844e+02] +TSupAir2.TSupSet=[3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.051499938964844e+02, 3.04382568359375e+02, 3.036181640625e+02, 3.028597717285156e+02, 3.021104431152344e+02, 3.013731384277344e+02, 3.006506958007812e+02, 2.99946044921875e+02, 2.992619018554688e+02, 2.986010131835938e+02, 2.979659729003906e+02, 2.973592529296875e+02, 2.967833251953125e+02, 2.962403869628906e+02, 2.957326049804688e+02, 2.952620239257812e+02, 2.948304443359375e+02, 2.944395751953125e+02, 2.941499938964844e+02, 3.098409423828125e+02, 3.079057006835938e+02, 3.057850646972656e+02, 3.035124816894531e+02, 3.011238098144531e+02, 2.986566772460938e+02, 2.961499938964844e+02, 2.936433410644531e+02, 2.911762084960938e+02, 2.887875061035156e+02, 2.865149230957031e+02, 2.84394287109375e+02, 2.824590454101562e+02, 2.8073974609375e+02, 2.944395751953125e+02, 2.948304443359375e+02, 2.952620239257812e+02, 2.957326049804688e+02, 2.962403869628906e+02, 2.967833251953125e+02, 2.973592529296875e+02, 2.979659729003906e+02, 2.986010131835938e+02, 2.992619018554688e+02, 2.99946044921875e+02, 3.006506958007812e+02, 3.013731384277344e+02, 3.021104431152344e+02, 3.028597717285156e+02, 3.036181640625e+02, 3.04382568359375e+02, 3.051499938964844e+02] +TSupAir2.TAirSup=[2.961499938964844e+02, 2.986566772460938e+02, 3.011238098144531e+02, 3.035124816894531e+02, 3.057850646972656e+02, 3.079057006835938e+02, 3.098409423828125e+02, 3.115602722167969e+02, 3.130365600585938e+02, 3.142465515136719e+02, 3.15171142578125e+02, 3.157957458496094e+02, 3.161105346679688e+02, 3.161105346679688e+02, 3.157957458496094e+02, 3.15171142578125e+02, 3.142465515136719e+02, 3.130365600585938e+02, 3.115602722167969e+02, 3.098409423828125e+02, 3.079057006835938e+02, 3.057850646972656e+02, 3.035124816894531e+02, 3.011238098144531e+02, 2.986566772460938e+02, 2.961499938964844e+02, 2.936433410644531e+02, 2.911762084960938e+02, 2.887875061035156e+02, 2.865149230957031e+02, 2.84394287109375e+02, 2.824590454101562e+02, 2.8073974609375e+02, 2.79263427734375e+02, 2.78053466796875e+02, 2.771288757324219e+02, 2.765042419433594e+02, 2.76189453125e+02, 2.76189453125e+02, 2.765042419433594e+02, 2.771288757324219e+02, 2.78053466796875e+02, 2.79263427734375e+02, 2.8073974609375e+02, 2.824590454101562e+02, 2.84394287109375e+02, 2.865149230957031e+02, 2.887875061035156e+02, 2.911762084960938e+02, 2.936433410644531e+02, 2.961499938964844e+02, 2.986566772460938e+02, 3.011238098144531e+02, 3.035124816894531e+02, 3.057850646972656e+02, 3.079057006835938e+02, 3.098409423828125e+02, 3.115602722167969e+02, 3.130365600585938e+02, 3.142465515136719e+02, 3.15171142578125e+02, 3.157957458496094e+02, 3.161105346679688e+02, 3.161105346679688e+02, 3.157957458496094e+02, 3.15171142578125e+02, 3.142465515136719e+02, 3.130365600585938e+02, 3.115602722167969e+02, 3.098409423828125e+02, 3.079057006835938e+02, 3.057850646972656e+02, 3.035124816894531e+02, 3.011238098144531e+02, 2.986566772460938e+02, 2.961499938964844e+02, 2.936433410644531e+02, 2.911762084960938e+02, 2.887875061035156e+02, 2.865149230957031e+02, 2.84394287109375e+02, 2.824590454101562e+02, 2.8073974609375e+02, 2.79263427734375e+02, 2.78053466796875e+02, 2.771288757324219e+02, 2.765042419433594e+02, 2.76189453125e+02, 2.76189453125e+02, 2.765042419433594e+02, 2.771288757324219e+02, 2.78053466796875e+02, 2.79263427734375e+02, 2.8073974609375e+02, 2.824590454101562e+02, 2.84394287109375e+02, 2.865149230957031e+02, 2.887875061035156e+02, 2.911762084960938e+02, 2.936433410644531e+02, 2.961499938964844e+02] +TSupAir2.yHeaCoi=[1e+00, 1e+00, 1e+00, 1e+00, 7.353613525629044e-02, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 5.966367945075035e-02, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00] +TSupAir3.uCoo=[5e-01, 5.313952565193176e-01, 5.626665949821472e-01, 5.936906337738037e-01, 6.243449449539185e-01, 6.545084714889526e-01, 6.840623021125793e-01, 7.128896713256836e-01, 7.408768534660339e-01, 7.679134011268616e-01, 7.938926219940186e-01, 8.187119960784912e-01, 8.422735333442688e-01, 8.644843101501465e-01, 8.852566480636597e-01, 9.045084714889526e-01, 9.221639633178711e-01, 9.381533265113831e-01, 9.524134993553162e-01, 9.648882150650024e-01, 9.755282402038574e-01, 9.842915534973145e-01, 9.911436438560486e-01, 9.960573315620422e-01, 9.99013364315033e-01, 1e+00, 9.99013364315033e-01, 9.960573315620422e-01, 9.911436438560486e-01, 9.842915534973145e-01, 9.755282402038574e-01, 9.648882150650024e-01, 9.524134993553162e-01, 9.381533265113831e-01, 9.221639633178711e-01, 9.045084714889526e-01, 8.852566480636597e-01, 8.644843101501465e-01, 8.422735333442688e-01, 8.187119960784912e-01, 7.938926219940186e-01, 7.679134011268616e-01, 7.408768534660339e-01, 7.128896713256836e-01, 6.840623021125793e-01, 6.545084714889526e-01, 6.243449449539185e-01, 5.936906337738037e-01, 5.626665949821472e-01, 5.313952565193176e-01, 5e-01, 4.686047434806824e-01, 4.373333752155304e-01, 4.063093364238739e-01, 3.756550550460815e-01, 3.454914987087248e-01, 3.159377276897428e-01, 2.87110358476639e-01, 2.591231763362887e-01, 2.320865988731384e-01, 2.061073780059814e-01, 1.812880039215088e-01, 1.5772645175457e-01, 1.355156898498535e-01, 1.147433817386627e-01, 9.549150615930557e-02, 7.783603668212891e-02, 6.184665858745575e-02, 4.758647456765175e-02, 3.511175885796547e-02, 2.447174116969109e-02, 1.570841856300831e-02, 8.856374770402908e-03, 3.942649345844984e-03, 9.866358013823628e-04, 0e+00, 9.866358013823628e-04, 3.942649345844984e-03, 8.856374770402908e-03, 1.570841856300831e-02, 2.447174116969109e-02, 3.511175885796547e-02, 4.758647456765175e-02, 6.184665858745575e-02, 7.783603668212891e-02, 9.549150615930557e-02, 1.147433817386627e-01, 1.355156898498535e-01, 1.5772645175457e-01, 1.812880039215088e-01, 2.061073780059814e-01, 2.320865988731384e-01, 2.591231763362885e-01, 2.871103584766388e-01, 3.15937727689743e-01, 3.45491498708725e-01, 3.756550550460815e-01, 4.063093364238739e-01, 4.373333752155304e-01, 4.686047434806824e-01, 5e-01] +TSupAir3.TZonCooSet=[2.981499938964844e+02, 2.981499938964844e+02] +TSupAir3.TSupSet=[2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.859500122070312e+02, 2.868011474609375e+02, 2.876489562988281e+02, 2.884900512695312e+02, 2.893211364746094e+02, 2.901388854980469e+02, 2.909401245117188e+02, 2.917216796875e+02, 2.924804382324219e+02, 2.932134399414062e+02, 2.939177551269531e+02, 2.945906372070312e+02, 2.952294311523438e+02, 2.958315734863281e+02, 2.963947448730469e+02, 2.969166870117188e+02, 2.973953247070312e+02, 2.978288269042969e+02, 2.981499938964844e+02, 3.098409423828125e+02, 3.079057006835938e+02, 3.057850646972656e+02, 3.035124816894531e+02, 3.011238098144531e+02, 2.986566772460938e+02, 2.961499938964844e+02, 2.936433410644531e+02, 2.911762084960938e+02, 2.887875061035156e+02, 2.865149230957031e+02, 2.84394287109375e+02, 2.824590454101562e+02, 2.8073974609375e+02, 2.978288269042969e+02, 2.973953247070312e+02, 2.969166870117188e+02, 2.963947448730469e+02, 2.958315734863281e+02, 2.952294311523438e+02, 2.945906372070312e+02, 2.939177551269531e+02, 2.932134399414062e+02, 2.924804382324219e+02, 2.917216796875e+02, 2.909401245117188e+02, 2.901388854980469e+02, 2.893211364746094e+02, 2.884900512695312e+02, 2.876489562988281e+02, 2.868011474609375e+02, 2.859500122070312e+02] +TSupAir3.TAirSup=[2.961499938964844e+02, 2.986566772460938e+02, 3.011238098144531e+02, 3.035124816894531e+02, 3.057850646972656e+02, 3.079057006835938e+02, 3.098409423828125e+02, 3.115602722167969e+02, 3.130365600585938e+02, 3.142465515136719e+02, 3.15171142578125e+02, 3.157957458496094e+02, 3.161105346679688e+02, 3.161105346679688e+02, 3.157957458496094e+02, 3.15171142578125e+02, 3.142465515136719e+02, 3.130365600585938e+02, 3.115602722167969e+02, 3.098409423828125e+02, 3.079057006835938e+02, 3.057850646972656e+02, 3.035124816894531e+02, 3.011238098144531e+02, 2.986566772460938e+02, 2.961499938964844e+02, 2.936433410644531e+02, 2.911762084960938e+02, 2.887875061035156e+02, 2.865149230957031e+02, 2.84394287109375e+02, 2.824590454101562e+02, 2.8073974609375e+02, 2.79263427734375e+02, 2.78053466796875e+02, 2.771288757324219e+02, 2.765042419433594e+02, 2.76189453125e+02, 2.76189453125e+02, 2.765042419433594e+02, 2.771288757324219e+02, 2.78053466796875e+02, 2.79263427734375e+02, 2.8073974609375e+02, 2.824590454101562e+02, 2.84394287109375e+02, 2.865149230957031e+02, 2.887875061035156e+02, 2.911762084960938e+02, 2.936433410644531e+02, 2.961499938964844e+02, 2.986566772460938e+02, 3.011238098144531e+02, 3.035124816894531e+02, 3.057850646972656e+02, 3.079057006835938e+02, 3.098409423828125e+02, 3.115602722167969e+02, 3.130365600585938e+02, 3.142465515136719e+02, 3.15171142578125e+02, 3.157957458496094e+02, 3.161105346679688e+02, 3.161105346679688e+02, 3.157957458496094e+02, 3.15171142578125e+02, 3.142465515136719e+02, 3.130365600585938e+02, 3.115602722167969e+02, 3.098409423828125e+02, 3.079057006835938e+02, 3.057850646972656e+02, 3.035124816894531e+02, 3.011238098144531e+02, 2.986566772460938e+02, 2.961499938964844e+02, 2.936433410644531e+02, 2.911762084960938e+02, 2.887875061035156e+02, 2.865149230957031e+02, 2.84394287109375e+02, 2.824590454101562e+02, 2.8073974609375e+02, 2.79263427734375e+02, 2.78053466796875e+02, 2.771288757324219e+02, 2.765042419433594e+02, 2.76189453125e+02, 2.76189453125e+02, 2.765042419433594e+02, 2.771288757324219e+02, 2.78053466796875e+02, 2.79263427734375e+02, 2.8073974609375e+02, 2.824590454101562e+02, 2.84394287109375e+02, 2.865149230957031e+02, 2.887875061035156e+02, 2.911762084960938e+02, 2.936433410644531e+02, 2.961499938964844e+02] +TSupAir3.yCooCoi=[1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 8.094452619552612e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 4.722124040126801e-01, 1e+00, 1e+00, 1e+00] diff --git a/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Validation_Controller.txt b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Validation_Controller.txt new file mode 100644 index 00000000000..2a2ea887bac --- /dev/null +++ b/Buildings/Resources/ReferenceResults/Dymola/Buildings_Controls_OBC_ASHRAE_G36_FanCoilUnit_Validation_Controller.txt @@ -0,0 +1,65 @@ +last-generated=2024-12-17 +statistics-simulation= +{ + "linear": " ", + "nonlinear": " ", + "number of continuous time states": "8", + "numerical Jacobians": "0" +} +time=[0e+00, 8.64e+04] +conFCU.u1Occ=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU.TZon=[2.891499938964844e+02, 2.892099963378906e+02, 2.892699987792969e+02, 2.893300012207031e+02, 2.893900036621094e+02, 2.894500061035156e+02, 2.895100085449219e+02, 2.895700109863281e+02, 2.896300134277344e+02, 2.896900134277344e+02, 2.897500122070313e+02, 2.898100109863281e+02, 2.89870009765625e+02, 2.899300085449219e+02, 2.899900073242188e+02, 2.900500061035156e+02, 2.901100048828125e+02, 2.901700036621094e+02, 2.902300024414063e+02, 2.902900012207031e+02, 2.9035e+02, 2.904099987792969e+02, 2.904699975585938e+02, 2.905299963378906e+02, 2.905899951171875e+02, 2.906499938964844e+02, 2.907099963378906e+02, 2.907699987792969e+02, 2.908300012207031e+02, 2.908900036621094e+02, 2.909500061035156e+02, 2.910100085449219e+02, 2.910700109863281e+02, 2.911300134277344e+02, 2.911900134277344e+02, 2.912500122070313e+02, 2.913100109863281e+02, 2.91370009765625e+02, 2.914300085449219e+02, 2.914900073242188e+02, 2.915500061035156e+02, 2.916100048828125e+02, 2.916700036621094e+02, 2.917300024414063e+02, 2.917900012207031e+02, 2.9185e+02, 2.919099987792969e+02, 2.919699975585938e+02, 2.920299963378906e+02, 2.920899951171875e+02, 2.921499938964844e+02, 2.922099963378906e+02, 2.922699987792969e+02, 2.923300012207031e+02, 2.923900036621094e+02, 2.924500061035156e+02, 2.925100094962062e+02, 2.925700109863281e+02, 2.926300134277344e+02, 2.926900134277344e+02, 2.927500122070313e+02, 2.928100109863281e+02, 2.92870009765625e+02, 2.929300085449219e+02, 2.929899926809951e+02, 2.930500061035156e+02, 2.931099853515625e+02, 2.931700036621094e+02, 2.932300024414063e+02, 2.932900012207031e+02, 2.933500061035156e+02, 2.934099987792969e+02, 2.934699975585938e+02, 2.935299963378906e+02, 2.935899951171875e+02, 2.936499938964844e+02, 2.937099963378906e+02, 2.937699987792969e+02, 2.938300012207031e+02, 2.938900036621094e+02, 2.939500061035156e+02, 2.940100085449219e+02, 2.940700109863281e+02, 2.941300134277344e+02, 2.941900134277344e+02, 2.942500122070313e+02, 2.943100109863281e+02, 2.94370009765625e+02, 2.944300085449219e+02, 2.944900073242188e+02, 2.945500061035156e+02, 2.946100048828125e+02, 2.946700036621094e+02, 2.947300024414063e+02, 2.947900012207031e+02, 2.9485e+02, 2.949099987792969e+02, 2.949699975585938e+02, 2.950299963378906e+02, 2.950899951171875e+02, 2.951499938964844e+02] +conFCU.TZonHeaSet=[2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.928299938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02] +conFCU.TZonCooSet=[3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.973899938964843e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02] +conFCU.heaPI.y=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.399999976158142e-01, 8.799999952316284e-01, 8.199999928474426e-01, 7.599999904632568e-01, 6.999999880790705e-01, 6.39999973598447e-01, 5.799999833107e-01, 5.199999809265137e-01, 4.600000083446503e-01, 4.000000059604645e-01, 3.400000035762787e-01, 2.800000011920929e-01, 2.200000005960464e-01, 1.599999697327268e-01, 9.999999850988388e-02, 3.999999910593033e-02, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU.cooPI.y=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU.modSetPoi.yOpeMod=[7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 1.239999999999964e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00] +conFCU.y1Fan=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU.yFan=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 5.760000228881873e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 6.000000238418579e-01, 5.520000100135803e-01, 5.039999961853028e-01, 4.559999930858612e-01, 4.079999983310699e-01, 3.600000023841854e-01, 3.119999737066521e-01, 2.640000116825108e-01, 2.160000020265579e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU.TSup=[2.956499938964844e+02, 2.956700024414063e+02, 2.956900109863281e+02, 2.9571e+02, 2.957299975585938e+02, 2.957500061035156e+02, 2.957700061035156e+02, 2.957899926757813e+02, 2.958100012207031e+02, 2.95830009765625e+02, 2.958499938964844e+02, 2.958699963378906e+02, 2.958900048828125e+02, 2.9591e+02, 2.959299914550782e+02, 2.9595e+02, 2.959700061035156e+02, 2.959899877929687e+02, 2.9601e+02, 2.960300036621094e+02, 2.960499938964844e+02, 2.960700061035157e+02, 2.960899987792969e+02, 2.9611e+02, 2.961300122070313e+02, 2.961499938964844e+02, 2.961700024414063e+02, 2.961900109863281e+02, 2.9621e+02, 2.962299975585938e+02, 2.962500061035156e+02, 2.962700061035156e+02, 2.962899926757813e+02, 2.963100012207031e+02, 2.96330009765625e+02, 2.963499938964844e+02, 2.963699963378906e+02, 2.963900048828125e+02, 2.9641e+02, 2.964299914550782e+02, 2.9645e+02, 2.964700061035156e+02, 2.964899877929687e+02, 2.9651e+02, 2.965300036621094e+02, 2.965499938964844e+02, 2.965700061035157e+02, 2.965899987792969e+02, 2.9661e+02, 2.966300122070313e+02, 2.966499938964844e+02, 2.966700024414063e+02, 2.966900109863281e+02, 2.9671e+02, 2.967299975585938e+02, 2.967500061035156e+02, 2.967700092689177e+02, 2.967899926757813e+02, 2.968100012207031e+02, 2.96830009765625e+02, 2.968499938964844e+02, 2.968699963378906e+02, 2.968900048828125e+02, 2.9691e+02, 2.96930002185088e+02, 2.9695e+02, 2.969700012207031e+02, 2.969899877929687e+02, 2.9701e+02, 2.970300036621094e+02, 2.970499877929688e+02, 2.970700061035157e+02, 2.970899987792969e+02, 2.9711e+02, 2.971300122070313e+02, 2.971499938964844e+02, 2.971700024414063e+02, 2.971900109863281e+02, 2.9721e+02, 2.972299975585938e+02, 2.972500061035156e+02, 2.972700061035156e+02, 2.972899926757813e+02, 2.973100012207031e+02, 2.97330009765625e+02, 2.973499938964844e+02, 2.973699963378906e+02, 2.973900048828125e+02, 2.9741e+02, 2.974299914550782e+02, 2.9745e+02, 2.974700061035156e+02, 2.974899877929687e+02, 2.9751e+02, 2.975300036621094e+02, 2.975499938964844e+02, 2.975700061035157e+02, 2.975899987792969e+02, 2.9761e+02, 2.976300122070313e+02, 2.976499938964844e+02] +conFCU.TSupSet=[2.956499938964844e+02, 2.956700024414063e+02, 2.956900109863281e+02, 2.9571e+02, 2.957299975585938e+02, 2.957500061035156e+02, 2.957700061035156e+02, 2.957899926757813e+02, 2.958100012207031e+02, 2.95830009765625e+02, 2.958499938964844e+02, 2.958699963378906e+02, 2.958900048828125e+02, 2.9591e+02, 2.959299914550782e+02, 2.9595e+02, 2.959700061035156e+02, 2.971033276367187e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.967944470214844e+02, 2.962611022949219e+02, 2.957277758789062e+02, 2.951944555664062e+02, 2.946611047363281e+02, 2.941277820887368e+02, 2.9359443359375e+02, 2.931499938964844e+02, 2.969899877929687e+02, 2.9701e+02, 2.970300036621094e+02, 2.970499877929688e+02, 2.970700061035157e+02, 2.970899987792969e+02, 2.9711e+02, 2.971300122070313e+02, 2.971499938964844e+02, 2.971700024414063e+02, 2.971900109863281e+02, 2.9721e+02, 2.972299975585938e+02, 2.972500061035156e+02, 2.972700061035156e+02, 2.972899926757813e+02, 2.973100012207031e+02, 2.97330009765625e+02, 2.973499938964844e+02, 2.973699963378906e+02, 2.973900048828125e+02, 2.9741e+02, 2.974299914550782e+02, 2.9745e+02, 2.974700061035156e+02, 2.974899877929687e+02, 2.9751e+02, 2.975300036621094e+02, 2.975499938964844e+02, 2.975700061035157e+02, 2.975899987792969e+02, 2.9761e+02, 2.976300122070313e+02, 2.976499938964844e+02] +conFCU.yHeaCoi=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1.485555553436289e-01, 2.616110980510712e-01, 3.680833160877228e-01, 4.726388871669769e-01, 5.752777743339539e-01, 6.759999990463257e-01, 7.748055458068848e-01, 8.716944384574891e-01, 9.666627049446106e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.926917505264282e-01, 9.078859448432922e-01, 7.692705559730529e-01, 5.776314687728882e-01, 3.329647862911224e-01, 4.183159397021678e-02, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU.yHotWatPlaReq=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU.yHotWatResReq=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU1.u1Occ=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU1.TZon=[2.991499938964844e+02, 2.991199963378906e+02, 2.990899987792969e+02, 2.990600012207031e+02, 2.990300036621094e+02, 2.990000061035156e+02, 2.989700085449219e+02, 2.989400109863281e+02, 2.989100134277344e+02, 2.988800134277344e+02, 2.988500122070312e+02, 2.988200109863281e+02, 2.98790009765625e+02, 2.987600085449219e+02, 2.987300073242188e+02, 2.987000061035156e+02, 2.986700048828125e+02, 2.986400036621094e+02, 2.986100024414063e+02, 2.985800012207031e+02, 2.9855e+02, 2.985199987792969e+02, 2.984899975585938e+02, 2.984599963378906e+02, 2.984299951171875e+02, 2.983999938964844e+02, 2.983699963378906e+02, 2.983399987792969e+02, 2.983100012207031e+02, 2.982800036621094e+02, 2.982500061035156e+02, 2.982200085449219e+02, 2.981900109863281e+02, 2.981600134277344e+02, 2.981300134277344e+02, 2.981000122070312e+02, 2.980700109863281e+02, 2.98040009765625e+02, 2.980100085449219e+02, 2.979800073242188e+02, 2.979500061035156e+02, 2.979200048828125e+02, 2.978900036621094e+02, 2.978600024414063e+02, 2.978300012207031e+02, 2.978e+02, 2.977699987792969e+02, 2.977399975585938e+02, 2.977099963378906e+02, 2.976799951171875e+02, 2.976499938964844e+02, 2.976199963378906e+02, 2.975899987792969e+02, 2.975600012207031e+02, 2.975300036621094e+02, 2.975000061035156e+02, 2.974700078625679e+02, 2.974400109863281e+02, 2.974100134277344e+02, 2.973800134277344e+02, 2.973500122070312e+02, 2.973200109863281e+02, 2.97290009765625e+02, 2.972600085449219e+02, 2.972299989405071e+02, 2.972000061035156e+02, 2.971700134277344e+02, 2.971400036621094e+02, 2.971100024414063e+02, 2.970800012207031e+02, 2.970499877929688e+02, 2.970199987792969e+02, 2.969899975585938e+02, 2.969599963378906e+02, 2.969299951171875e+02, 2.968999938964844e+02, 2.968699963378906e+02, 2.968399987792969e+02, 2.968100012207031e+02, 2.967800036621094e+02, 2.967500061035156e+02, 2.967200085449219e+02, 2.966900109863281e+02, 2.966600134277344e+02, 2.966300134277344e+02, 2.966000122070312e+02, 2.965700109863281e+02, 2.96540009765625e+02, 2.965100085449219e+02, 2.964800073242188e+02, 2.964500061035156e+02, 2.964200048828125e+02, 2.963900036621094e+02, 2.963600024414063e+02, 2.963300012207031e+02, 2.963e+02, 2.962699987792969e+02, 2.962399975585938e+02, 2.962099963378906e+02, 2.961799951171875e+02, 2.961499938964844e+02] +conFCU1.TZonHeaSet=[2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.928299938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02] +conFCU1.TZonCooSet=[3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.973899938964843e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02] +conFCU1.heaPI.y=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU1.cooPI.y=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.800000166893004e-01, 9.500000119209291e-01, 9.200000071525574e-01, 8.900000023841858e-01, 8.599999976158142e-01, 8.299999928474426e-01, 7.99999988079071e-01, 7.699999833106994e-01, 7.399999809265136e-01, 7.099999833106995e-01, 6.799999856948853e-01, 6.49999988079071e-01, 6.199999904632568e-01, 5.899999928474426e-01, 5.599999952316285e-01, 5.299999976158142e-01, 5e-01, 4.699999988079071e-01, 4.399999976158142e-01, 4.099999964237213e-01, 3.799999952316284e-01, 3.499999940395352e-01, 3.199999867992235e-01, 2.8999999165535e-01, 2.599999904632568e-01, 2.300000041723251e-01, 2.000000029802322e-01, 1.700000017881393e-01, 1.400000005960464e-01, 1.100000002980232e-01, 7.999998486636342e-02, 4.999999925494194e-02, 1.999999955296516e-02, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU1.modSetPoi.yOpeMod=[7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 1.239999999999964e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00] +conFCU1.y1Fan=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU1.yFan=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.679999756813047e-01, 9.200000166893008e-01, 8.72000002861023e-01, 8.239999890327454e-01, 7.760000085830688e-01, 7.280000019073486e-01, 6.800000071525574e-01, 6.319999933242798e-01, 5.83999981880188e-01, 5.360000252723693e-01, 4.879999899864197e-01, 4.399999976158142e-01, 3.919999992847443e-01, 3.439999997615814e-01, 2.960000085830689e-01, 2.480000001192093e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU1.TSup=[2.971499938964844e+02, 2.971199963378906e+02, 2.970899987792969e+02, 2.970600012207031e+02, 2.970300036621094e+02, 2.970000061035156e+02, 2.969700085449219e+02, 2.969400109863281e+02, 2.969100134277344e+02, 2.968800134277344e+02, 2.968500122070312e+02, 2.968200109863281e+02, 2.96790009765625e+02, 2.967600085449219e+02, 2.967300073242188e+02, 2.967000061035156e+02, 2.966700048828125e+02, 2.966400036621094e+02, 2.966100024414063e+02, 2.965800012207031e+02, 2.9655e+02, 2.965199987792969e+02, 2.964899975585938e+02, 2.964599963378906e+02, 2.964299951171875e+02, 2.963999938964844e+02, 2.963699963378906e+02, 2.963399987792969e+02, 2.963100012207031e+02, 2.962800036621094e+02, 2.962500061035156e+02, 2.962200085449219e+02, 2.961900109863281e+02, 2.961600134277344e+02, 2.961300134277344e+02, 2.961000122070312e+02, 2.960700109863281e+02, 2.96040009765625e+02, 2.960100085449219e+02, 2.959800073242188e+02, 2.959500061035156e+02, 2.959200048828125e+02, 2.958900036621094e+02, 2.958600024414063e+02, 2.958300012207031e+02, 2.958e+02, 2.957699987792969e+02, 2.957399975585938e+02, 2.957099963378906e+02, 2.956799951171875e+02, 2.956499938964844e+02, 2.956199963378906e+02, 2.955899987792969e+02, 2.955600012207031e+02, 2.955300036621094e+02, 2.955000061035156e+02, 2.954700078625679e+02, 2.954400109863281e+02, 2.954100134277344e+02, 2.953800134277344e+02, 2.953500122070312e+02, 2.953200109863281e+02, 2.95290009765625e+02, 2.952600085449219e+02, 2.952299989405071e+02, 2.952000061035156e+02, 2.951700134277344e+02, 2.951400036621094e+02, 2.951100024414063e+02, 2.950800012207031e+02, 2.950499877929688e+02, 2.950199987792969e+02, 2.949899975585938e+02, 2.949599963378906e+02, 2.949299951171875e+02, 2.948999938964844e+02, 2.948699963378906e+02, 2.948399987792969e+02, 2.948100012207031e+02, 2.947800036621094e+02, 2.947500061035156e+02, 2.947200085449219e+02, 2.946900109863281e+02, 2.946600134277344e+02, 2.946300134277344e+02, 2.946000122070312e+02, 2.945700109863281e+02, 2.94540009765625e+02, 2.945100085449219e+02, 2.944800073242188e+02, 2.944500061035156e+02, 2.944200048828125e+02, 2.943900036621094e+02, 2.943600024414063e+02, 2.943300012207031e+02, 2.943e+02, 2.942699987792969e+02, 2.942399975585938e+02, 2.942099963378906e+02, 2.941799951171875e+02, 2.941499938964844e+02] +conFCU1.TSupSet=[2.971499938964844e+02, 2.971199963378906e+02, 2.970899987792969e+02, 2.970600012207031e+02, 2.970300036621094e+02, 2.970000061035156e+02, 2.969700085449219e+02, 2.969400109863281e+02, 2.969100134277344e+02, 2.968800134277344e+02, 2.968500122070312e+02, 2.968200109863281e+02, 2.96790009765625e+02, 2.967600085449219e+02, 2.967300073242188e+02, 2.967000061035156e+02, 2.966700048828125e+02, 2.856099938964843e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.859500048828125e+02, 2.867500085449219e+02, 2.875499963378906e+02, 2.883500073242187e+02, 2.8915e+02, 2.899500074201677e+02, 2.90750009765625e+02, 2.915499914550781e+02, 2.923500012207031e+02, 2.931500061035156e+02, 2.939499926757812e+02, 2.947500036621093e+02, 2.955499975585938e+02, 2.963499986198246e+02, 2.971055603027344e+02, 2.951700134277344e+02, 2.951400036621094e+02, 2.951100024414063e+02, 2.950800012207031e+02, 2.950499877929688e+02, 2.950199987792969e+02, 2.949899975585938e+02, 2.949599963378906e+02, 2.949299951171875e+02, 2.948999938964844e+02, 2.948699963378906e+02, 2.948399987792969e+02, 2.948100012207031e+02, 2.947800036621094e+02, 2.947500061035156e+02, 2.947200085449219e+02, 2.946900109863281e+02, 2.946600134277344e+02, 2.946300134277344e+02, 2.946000122070312e+02, 2.945700109863281e+02, 2.94540009765625e+02, 2.945100085449219e+02, 2.944800073242188e+02, 2.944500061035156e+02, 2.944200048828125e+02, 2.943900036621094e+02, 2.943600024414063e+02, 2.943300012207031e+02, 2.943e+02, 2.942699987792969e+02, 2.942399975585938e+02, 2.942099963378906e+02, 2.941799951171875e+02, 2.941499938964844e+02] +conFCU1.yCooCoi=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.567369055747986e-01, 8.068570460444013e-01, 5.811399817466736e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU1.yChiPlaReq=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU1.yChiWatResReq=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU2.u1Occ=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU2.TZon=[2.991499938964844e+02, 2.991199963378906e+02, 2.990899987792969e+02, 2.990600012207031e+02, 2.990300036621094e+02, 2.990000061035156e+02, 2.989700085449219e+02, 2.989400109863281e+02, 2.989100134277344e+02, 2.988800134277344e+02, 2.988500122070312e+02, 2.988200109863281e+02, 2.98790009765625e+02, 2.987600085449219e+02, 2.987300073242188e+02, 2.987000061035156e+02, 2.986700048828125e+02, 2.986400036621094e+02, 2.986100024414063e+02, 2.985800012207031e+02, 2.9855e+02, 2.985199987792969e+02, 2.984899975585938e+02, 2.984599963378906e+02, 2.984299951171875e+02, 2.983999938964844e+02, 2.983699963378906e+02, 2.983399987792969e+02, 2.983100012207031e+02, 2.982800036621094e+02, 2.982500061035156e+02, 2.982200085449219e+02, 2.981900109863281e+02, 2.981600134277344e+02, 2.981300134277344e+02, 2.981000122070312e+02, 2.980700109863281e+02, 2.98040009765625e+02, 2.980100085449219e+02, 2.979800073242188e+02, 2.979500061035156e+02, 2.979200048828125e+02, 2.978900036621094e+02, 2.978600024414063e+02, 2.978300012207031e+02, 2.978e+02, 2.977699987792969e+02, 2.977399975585938e+02, 2.977099963378906e+02, 2.976799951171875e+02, 2.976499938964844e+02, 2.976199963378906e+02, 2.975899987792969e+02, 2.975600012207031e+02, 2.975300036621094e+02, 2.975000061035156e+02, 2.974700078625679e+02, 2.974400109863281e+02, 2.974100134277344e+02, 2.973800134277344e+02, 2.973500122070312e+02, 2.973200109863281e+02, 2.97290009765625e+02, 2.972600085449219e+02, 2.972299989405071e+02, 2.972000061035156e+02, 2.971700134277344e+02, 2.971400036621094e+02, 2.971100024414063e+02, 2.970800012207031e+02, 2.970499877929688e+02, 2.970199987792969e+02, 2.969899975585938e+02, 2.969599963378906e+02, 2.969299951171875e+02, 2.968999938964844e+02, 2.968699963378906e+02, 2.968399987792969e+02, 2.968100012207031e+02, 2.967800036621094e+02, 2.967500061035156e+02, 2.967200085449219e+02, 2.966900109863281e+02, 2.966600134277344e+02, 2.966300134277344e+02, 2.966000122070312e+02, 2.965700109863281e+02, 2.96540009765625e+02, 2.965100085449219e+02, 2.964800073242188e+02, 2.964500061035156e+02, 2.964200048828125e+02, 2.963900036621094e+02, 2.963600024414063e+02, 2.963300012207031e+02, 2.963e+02, 2.962699987792969e+02, 2.962399975585938e+02, 2.962099963378906e+02, 2.961799951171875e+02, 2.961499938964844e+02] +conFCU2.TZonHeaSet=[2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.928299938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.931499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02] +conFCU2.TZonCooSet=[3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 2.973899938964843e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 2.971499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02] +conFCU2.heaPI.y=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU2.cooPI.y=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.800000166893004e-01, 9.500000119209291e-01, 9.200000071525574e-01, 8.900000023841858e-01, 8.599999976158142e-01, 8.299999928474426e-01, 7.99999988079071e-01, 7.699999833106994e-01, 7.399999809265136e-01, 7.099999833106995e-01, 6.799999856948853e-01, 6.49999988079071e-01, 6.199999904632568e-01, 5.899999928474426e-01, 5.599999952316285e-01, 5.299999976158142e-01, 5e-01, 4.699999988079071e-01, 4.399999976158142e-01, 4.099999964237213e-01, 3.799999952316284e-01, 3.499999940395352e-01, 3.199999867992235e-01, 2.8999999165535e-01, 2.599999904632568e-01, 2.300000041723251e-01, 2.000000029802322e-01, 1.700000017881393e-01, 1.400000005960464e-01, 1.100000002980232e-01, 7.999998486636342e-02, 4.999999925494194e-02, 1.999999955296516e-02, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU2.modSetPoi.yOpeMod=[7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 1.239999999999964e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00] +conFCU2.y1Fan=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU2.yFan=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.679999756813047e-01, 9.200000166893008e-01, 8.72000002861023e-01, 8.239999890327454e-01, 7.760000085830688e-01, 7.280000019073486e-01, 6.800000071525574e-01, 6.319999933242798e-01, 5.83999981880188e-01, 5.360000252723693e-01, 4.879999899864197e-01, 4.399999976158142e-01, 3.919999992847443e-01, 3.439999997615814e-01, 2.960000085830689e-01, 2.480000001192093e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 2.000000029802322e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU2.TSup=[2.971499938964844e+02, 2.971199963378906e+02, 2.970899987792969e+02, 2.970600012207031e+02, 2.970300036621094e+02, 2.970000061035156e+02, 2.969700085449219e+02, 2.969400109863281e+02, 2.969100134277344e+02, 2.968800134277344e+02, 2.968500122070312e+02, 2.968200109863281e+02, 2.96790009765625e+02, 2.967600085449219e+02, 2.967300073242188e+02, 2.967000061035156e+02, 2.966700048828125e+02, 2.966400036621094e+02, 2.966100024414063e+02, 2.965800012207031e+02, 2.9655e+02, 2.965199987792969e+02, 2.964899975585938e+02, 2.964599963378906e+02, 2.964299951171875e+02, 2.963999938964844e+02, 2.963699963378906e+02, 2.963399987792969e+02, 2.963100012207031e+02, 2.962800036621094e+02, 2.962500061035156e+02, 2.962200085449219e+02, 2.961900109863281e+02, 2.961600134277344e+02, 2.961300134277344e+02, 2.961000122070312e+02, 2.960700109863281e+02, 2.96040009765625e+02, 2.960100085449219e+02, 2.959800073242188e+02, 2.959500061035156e+02, 2.959200048828125e+02, 2.958900036621094e+02, 2.958600024414063e+02, 2.958300012207031e+02, 2.958e+02, 2.957699987792969e+02, 2.957399975585938e+02, 2.957099963378906e+02, 2.956799951171875e+02, 2.956499938964844e+02, 2.956199963378906e+02, 2.955899987792969e+02, 2.955600012207031e+02, 2.955300036621094e+02, 2.955000061035156e+02, 2.954700078625679e+02, 2.954400109863281e+02, 2.954100134277344e+02, 2.953800134277344e+02, 2.953500122070312e+02, 2.953200109863281e+02, 2.95290009765625e+02, 2.952600085449219e+02, 2.952299989405071e+02, 2.952000061035156e+02, 2.951700134277344e+02, 2.951400036621094e+02, 2.951100024414063e+02, 2.950800012207031e+02, 2.950499877929688e+02, 2.950199987792969e+02, 2.949899975585938e+02, 2.949599963378906e+02, 2.949299951171875e+02, 2.948999938964844e+02, 2.948699963378906e+02, 2.948399987792969e+02, 2.948100012207031e+02, 2.947800036621094e+02, 2.947500061035156e+02, 2.947200085449219e+02, 2.946900109863281e+02, 2.946600134277344e+02, 2.946300134277344e+02, 2.946000122070312e+02, 2.945700109863281e+02, 2.94540009765625e+02, 2.945100085449219e+02, 2.944800073242188e+02, 2.944500061035156e+02, 2.944200048828125e+02, 2.943900036621094e+02, 2.943600024414063e+02, 2.943300012207031e+02, 2.943e+02, 2.942699987792969e+02, 2.942399975585938e+02, 2.942099963378906e+02, 2.941799951171875e+02, 2.941499938964844e+02] +conFCU2.TSupSet=[2.971499938964844e+02, 2.971199963378906e+02, 2.970899987792969e+02, 2.970600012207031e+02, 2.970300036621094e+02, 2.970000061035156e+02, 2.969700085449219e+02, 2.969400109863281e+02, 2.969100134277344e+02, 2.968800134277344e+02, 2.968500122070312e+02, 2.968200109863281e+02, 2.96790009765625e+02, 2.967600085449219e+02, 2.967300073242188e+02, 2.967000061035156e+02, 2.966700048828125e+02, 2.856099938964843e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.859500048828125e+02, 2.867500085449219e+02, 2.875499963378906e+02, 2.883500073242187e+02, 2.8915e+02, 2.899500074201677e+02, 2.90750009765625e+02, 2.915499914550781e+02, 2.923500012207031e+02, 2.931500061035156e+02, 2.939499926757812e+02, 2.947500036621093e+02, 2.955499975585938e+02, 2.963499986198246e+02, 2.971055603027344e+02, 2.951700134277344e+02, 2.951400036621094e+02, 2.951100024414063e+02, 2.950800012207031e+02, 2.950499877929688e+02, 2.950199987792969e+02, 2.949899975585938e+02, 2.949599963378906e+02, 2.949299951171875e+02, 2.948999938964844e+02, 2.948699963378906e+02, 2.948399987792969e+02, 2.948100012207031e+02, 2.947800036621094e+02, 2.947500061035156e+02, 2.947200085449219e+02, 2.946900109863281e+02, 2.946600134277344e+02, 2.946300134277344e+02, 2.946000122070312e+02, 2.945700109863281e+02, 2.94540009765625e+02, 2.945100085449219e+02, 2.944800073242188e+02, 2.944500061035156e+02, 2.944200048828125e+02, 2.943900036621094e+02, 2.943600024414063e+02, 2.943300012207031e+02, 2.943e+02, 2.942699987792969e+02, 2.942399975585938e+02, 2.942099963378906e+02, 2.941799951171875e+02, 2.941499938964844e+02] +conFCU2.yCooCoi=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 9.567369055747986e-01, 8.068570460444013e-01, 5.811399817466736e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU2.yChiPlaReq=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU2.yChiWatResReq=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 3e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU3.u1Occ=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU3.TZon=[2.991499938964844e+02, 2.991199963378906e+02, 2.990899987792969e+02, 2.990600012207031e+02, 2.990300036621094e+02, 2.990000061035156e+02, 2.989700085449219e+02, 2.989400109863281e+02, 2.989100134277344e+02, 2.988800134277344e+02, 2.988500122070312e+02, 2.988200109863281e+02, 2.98790009765625e+02, 2.987600085449219e+02, 2.987300073242188e+02, 2.987000061035156e+02, 2.986700048828125e+02, 2.986400036621094e+02, 2.986100024414063e+02, 2.985800012207031e+02, 2.9855e+02, 2.985199987792969e+02, 2.984899975585938e+02, 2.984599963378906e+02, 2.984299951171875e+02, 2.983999938964844e+02, 2.983699963378906e+02, 2.983399987792969e+02, 2.983100012207031e+02, 2.982800036621094e+02, 2.982500061035156e+02, 2.982200085449219e+02, 2.981900109863281e+02, 2.981600134277344e+02, 2.981300134277344e+02, 2.981000122070312e+02, 2.980700109863281e+02, 2.98040009765625e+02, 2.980100085449219e+02, 2.979800073242188e+02, 2.979500061035156e+02, 2.979200048828125e+02, 2.978900036621094e+02, 2.978600024414063e+02, 2.978300012207031e+02, 2.978e+02, 2.977699987792969e+02, 2.977399975585938e+02, 2.977099963378906e+02, 2.976799951171875e+02, 2.976499938964844e+02, 2.976199963378906e+02, 2.975899987792969e+02, 2.975600012207031e+02, 2.975300036621094e+02, 2.975000061035156e+02, 2.974700078625679e+02, 2.974400109863281e+02, 2.974100134277344e+02, 2.973800134277344e+02, 2.973500122070312e+02, 2.973200109863281e+02, 2.97290009765625e+02, 2.972600085449219e+02, 2.972299989405071e+02, 2.972000061035156e+02, 2.971700134277344e+02, 2.971400036621094e+02, 2.971100024414063e+02, 2.970800012207031e+02, 2.970499877929688e+02, 2.970199987792969e+02, 2.969899975585938e+02, 2.969599963378906e+02, 2.969299951171875e+02, 2.968999938964844e+02, 2.968699963378906e+02, 2.968399987792969e+02, 2.968100012207031e+02, 2.967800036621094e+02, 2.967500061035156e+02, 2.967200085449219e+02, 2.966900109863281e+02, 2.966600134277344e+02, 2.966300134277344e+02, 2.966000122070312e+02, 2.965700109863281e+02, 2.96540009765625e+02, 2.965100085449219e+02, 2.964800073242188e+02, 2.964500061035156e+02, 2.964200048828125e+02, 2.963900036621094e+02, 2.963600024414063e+02, 2.963300012207031e+02, 2.963e+02, 2.962699987792969e+02, 2.962399975585938e+02, 2.962099963378906e+02, 2.961799951171875e+02, 2.961499938964844e+02] +conFCU3.TZonHeaSet=[2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.909099938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.911499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02, 2.851499938964844e+02] +conFCU3.TZonCooSet=[3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.002699938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.001499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02, 3.031499938964844e+02] +conFCU3.heaPI.y=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU3.cooPI.y=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU3.modSetPoi.yOpeMod=[7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 1.239999999999964e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00, 7e+00] +conFCU3.y1Fan=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000000000061e-01, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 1e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU3.yFan=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 9.600000143051207e-02, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 1.000000014901161e-01, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU3.TSup=[2.971499938964844e+02, 2.971199963378906e+02, 2.970899987792969e+02, 2.970600012207031e+02, 2.970300036621094e+02, 2.970000061035156e+02, 2.969700085449219e+02, 2.969400109863281e+02, 2.969100134277344e+02, 2.968800134277344e+02, 2.968500122070312e+02, 2.968200109863281e+02, 2.96790009765625e+02, 2.967600085449219e+02, 2.967300073242188e+02, 2.967000061035156e+02, 2.966700048828125e+02, 2.966400036621094e+02, 2.966100024414063e+02, 2.965800012207031e+02, 2.9655e+02, 2.965199987792969e+02, 2.964899975585938e+02, 2.964599963378906e+02, 2.964299951171875e+02, 2.963999938964844e+02, 2.963699963378906e+02, 2.963399987792969e+02, 2.963100012207031e+02, 2.962800036621094e+02, 2.962500061035156e+02, 2.962200085449219e+02, 2.961900109863281e+02, 2.961600134277344e+02, 2.961300134277344e+02, 2.961000122070312e+02, 2.960700109863281e+02, 2.96040009765625e+02, 2.960100085449219e+02, 2.959800073242188e+02, 2.959500061035156e+02, 2.959200048828125e+02, 2.958900036621094e+02, 2.958600024414063e+02, 2.958300012207031e+02, 2.958e+02, 2.957699987792969e+02, 2.957399975585938e+02, 2.957099963378906e+02, 2.956799951171875e+02, 2.956499938964844e+02, 2.956199963378906e+02, 2.955899987792969e+02, 2.955600012207031e+02, 2.955300036621094e+02, 2.955000061035156e+02, 2.954700078625679e+02, 2.954400109863281e+02, 2.954100134277344e+02, 2.953800134277344e+02, 2.953500122070312e+02, 2.953200109863281e+02, 2.95290009765625e+02, 2.952600085449219e+02, 2.952299989405071e+02, 2.952000061035156e+02, 2.951700134277344e+02, 2.951400036621094e+02, 2.951100024414063e+02, 2.950800012207031e+02, 2.950499877929688e+02, 2.950199987792969e+02, 2.949899975585938e+02, 2.949599963378906e+02, 2.949299951171875e+02, 2.948999938964844e+02, 2.948699963378906e+02, 2.948399987792969e+02, 2.948100012207031e+02, 2.947800036621094e+02, 2.947500061035156e+02, 2.947200085449219e+02, 2.946900109863281e+02, 2.946600134277344e+02, 2.946300134277344e+02, 2.946000122070312e+02, 2.945700109863281e+02, 2.94540009765625e+02, 2.945100085449219e+02, 2.944800073242188e+02, 2.944500061035156e+02, 2.944200048828125e+02, 2.943900036621094e+02, 2.943600024414063e+02, 2.943300012207031e+02, 2.943e+02, 2.942699987792969e+02, 2.942399975585938e+02, 2.942099963378906e+02, 2.941799951171875e+02, 2.941499938964844e+02] +conFCU3.yCooCoi=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU3.TSupSet=[2.971499938964844e+02, 2.971199963378906e+02, 2.970899987792969e+02, 2.970600012207031e+02, 2.970300036621094e+02, 2.970000061035156e+02, 2.969700085449219e+02, 2.969400109863281e+02, 2.969100134277344e+02, 2.968800134277344e+02, 2.968500122070312e+02, 2.968200109863281e+02, 2.96790009765625e+02, 2.967600085449219e+02, 2.967300073242188e+02, 2.967000061035156e+02, 2.966700048828125e+02, 2.966400036621094e+02, 2.966100024414063e+02, 2.965800012207031e+02, 2.9655e+02, 2.965199987792969e+02, 2.964899975585938e+02, 2.964599963378906e+02, 2.964299951171875e+02, 2.963999938964844e+02, 2.963699963378906e+02, 2.963399987792969e+02, 2.963100012207031e+02, 2.962800036621094e+02, 2.962500061035156e+02, 2.962200085449219e+02, 2.961900109863281e+02, 2.961600134277344e+02, 2.961300134277344e+02, 2.961000122070312e+02, 2.960700109863281e+02, 2.96040009765625e+02, 2.960100085449219e+02, 2.959800073242188e+02, 2.959500061035156e+02, 2.959200048828125e+02, 2.958900036621094e+02, 2.958600024414063e+02, 2.958300012207031e+02, 2.958e+02, 2.957699987792969e+02, 2.957399975585938e+02, 2.957099963378906e+02, 2.956799951171875e+02, 2.956499938964844e+02, 2.956199963378906e+02, 2.955899987792969e+02, 2.955600012207031e+02, 2.955300036621094e+02, 2.955000061035156e+02, 2.954700078625679e+02, 2.954400109863281e+02, 2.954100134277344e+02, 2.953800134277344e+02, 2.953500122070312e+02, 2.953200109863281e+02, 2.95290009765625e+02, 2.952600085449219e+02, 2.952299989405071e+02, 2.952000061035156e+02, 2.951700134277344e+02, 2.951400036621094e+02, 2.951100024414063e+02, 2.950800012207031e+02, 2.950499877929688e+02, 2.950199987792969e+02, 2.949899975585938e+02, 2.949599963378906e+02, 2.949299951171875e+02, 2.948999938964844e+02, 2.948699963378906e+02, 2.948399987792969e+02, 2.948100012207031e+02, 2.947800036621094e+02, 2.947500061035156e+02, 2.947200085449219e+02, 2.946900109863281e+02, 2.946600134277344e+02, 2.946300134277344e+02, 2.946000122070312e+02, 2.945700109863281e+02, 2.94540009765625e+02, 2.945100085449219e+02, 2.944800073242188e+02, 2.944500061035156e+02, 2.944200048828125e+02, 2.943900036621094e+02, 2.943600024414063e+02, 2.943300012207031e+02, 2.943e+02, 2.942699987792969e+02, 2.942399975585938e+02, 2.942099963378906e+02, 2.941799951171875e+02, 2.941499938964844e+02] +conFCU3.yChiPlaReq=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] +conFCU3.yChiWatResReq=[0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00, 0e+00] diff --git a/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/FanSpeed.mos b/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/FanSpeed.mos new file mode 100644 index 00000000000..e1b47917d5d --- /dev/null +++ b/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/FanSpeed.mos @@ -0,0 +1,39 @@ +simulateModel("Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.FanSpeed", method="Cvode", stopTime=100, tolerance=1e-06, resultFile="FanSpeed"); + +createPlot(id=1, position={0, 0, 1669, 978}, y={"fanSpe.opeMod"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 1669, 978}, y={"fanSpe.u1FanPro"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 1669, 978}, y={"fanSpe.uHea"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 1669, 978}, y={"fanSpe.uCoo"}, range={0.0, 100.0, -2.0, 2.0}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 1669, 978}, y={"fanSpe.y1Fan"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, subPlot=5, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 1669, 978}, y={"fanSpe.yFan"}, range={0.0, 100.0, 0.0, 1.5}, grid=true, subPlot=6, colors={{28,108,200}}); + +createPlot(id=2, position={0, 0, 1669, 978}, y={"fanSpe1.opeMod"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, colors={{28,108,200}}); +createPlot(id=2, position={0, 0, 1669, 978}, y={"fanSpe1.u1FanPro"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=2, position={0, 0, 1669, 978}, y={"fanSpe1.uHea"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=2, position={0, 0, 1669, 978}, y={"fanSpe1.uCoo"}, range={0.0, 100.0, -2.0, 2.0}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=2, position={0, 0, 1669, 978}, y={"fanSpe1.y1Fan"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, subPlot=5, colors={{28,108,200}}); +createPlot(id=2, position={0, 0, 1669, 978}, y={"fanSpe1.yFan"}, range={0.0, 100.0, 0.0, 1.5}, grid=true, subPlot=6, colors={{28,108,200}}); + +createPlot(id=3, position={0, 0, 1669, 978}, y={"fanSpe2.opeMod"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, colors={{28,108,200}}); +createPlot(id=3, position={0, 0, 1669, 978}, y={"fanSpe2.u1FanPro"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=3, position={0, 0, 1669, 978}, y={"fanSpe2.uHea"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=3, position={0, 0, 1669, 978}, y={"fanSpe2.uCoo"}, range={0.0, 100.0, -2.0, 2.0}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=3, position={0, 0, 1669, 978}, y={"fanSpe2.y1Fan"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, subPlot=5, colors={{28,108,200}}); +createPlot(id=3, position={0, 0, 1669, 978}, y={"fanSpe2.yFan"}, range={0.0, 100.0, 0.0, 1.5}, grid=true, subPlot=6, colors={{28,108,200}}); + +createPlot(id=4, position={0, 0, 1669, 978}, y={"fanSpe3.opeMod"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, colors={{28,108,200}}); +createPlot(id=4, position={0, 0, 1669, 978}, y={"fanSpe3.u1FanPro"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=4, position={0, 0, 1669, 978}, y={"fanSpe3.uCoo"}, range={0.0, 100.0, -2.0, 2.0}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=4, position={0, 0, 1669, 978}, y={"fanSpe3.y1Fan"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=4, position={0, 0, 1669, 978}, y={"fanSpe3.yFan"}, range={0.0, 100.0, 0.0, 1.5}, grid=true, subPlot=5, colors={{28,108,200}}); + +createPlot(id=5, position={0, 0, 1669, 978}, y={"fanSpe4.opeMod"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, colors={{28,108,200}}); +createPlot(id=5, position={0, 0, 1669, 978}, y={"fanSpe4.u1FanPro"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=5, position={0, 0, 1669, 978}, y={"fanSpe4.uHea"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=5, position={0, 0, 1669, 978}, y={"fanSpe4.y1Fan"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=5, position={0, 0, 1669, 978}, y={"fanSpe4.yFan"}, range={0.0, 100.0, 0.0, 1.5}, grid=true, subPlot=5, colors={{28,108,200}}); + +createPlot(id=6, position={0, 0, 1669, 978}, y={"fanSpe5.opeMod"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, colors={{28,108,200}}); +createPlot(id=6, position={0, 0, 1669, 978}, y={"fanSpe5.u1FanPro"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=6, position={0, 0, 1669, 978}, y={"fanSpe5.y1Fan"}, range={0.0, 100.0, 0.8, 1.2}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=6, position={0, 0, 1669, 978}, y={"fanSpe5.yFan"}, range={0.0, 100.0, 0.0, 1.5}, grid=true, subPlot=4, colors={{28,108,200}}); diff --git a/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/PlantRequests.mos b/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/PlantRequests.mos new file mode 100644 index 00000000000..4d55593fdf5 --- /dev/null +++ b/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/PlantRequests.mos @@ -0,0 +1,13 @@ +simulateModel("Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.PlantRequests", method="Cvode", stopTime=3600, tolerance=1e-06, resultFile="PlantRequests_SingleZone"); +createPlot(id=1, position={10, 10, 900, 1200}, y={"plaReq.TAirSup", "plaReq.TAirSupSet"}, range={0.0, 3600.0, 10.0, 40.0}, grid=true, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=1, position={10, 10, 900, 297}, y={"plaReq.uCooCoiSet", "plaReq.uHeaCoiSet"}, range={0.0, 3600.0, -0.2, 1.0}, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}); +createPlot(id=1, position={10, 10, 900, 296}, y={"plaReq.yHotWatResReq", "plaReq.yHotWatPlaReq"}, range={0.0, 3600.0, -0.5, 2.5}, grid=true, subPlot=3, colors={{28,108,200}, {28,108,200}}); +createPlot(id=1, position={10, 10, 900, 296}, y={"plaReq.uFan"}, range={0.0, 3600.0, -0.2, 1.2}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=2, position={920, 10, 900, 1200}, y={"plaReq1.TAirSup", "plaReq1.TAirSupSet"}, range={0.0, 3600.0, 14.0, 24.0}, grid=true, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=2, position={920, 10, 900, 297}, y={"plaReq1.uCooCoiSet"}, range={0.0, 3600.0, 0.7, 1.0}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=2, position={920, 10, 900, 296}, y={"plaReq1.yChiWatResReq", "plaReq1.yChiPlaReq"}, range={0.0, 3600.0, -0.5, 2.5}, grid=true, subPlot=3, colors={{28,108,200}, {28,108,200}}); +createPlot(id=2, position={920, 10, 900, 296}, y={"plaReq.uFan"}, range={0.0, 3600.0, -0.2, 1.2}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=3, position={0, 0, 1643, 978}, y={"plaReq2.TAirSup", "plaReq2.TAirSupSet"}, range={0.0, 3600.0, 14.0, 24.0}, grid=true, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=3, position={0, 0, 1643, 241}, y={"plaReq2.uHeaCoiSet"}, range={0.0, 3600.0, -0.2, 1.0}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=3, position={0, 0, 1643, 240}, y={"plaReq2.yHotWatResReq", "plaReq2.yHotWatPlaReq"}, range={0.0, 3600.0, -0.2, 1.2}, grid=true, subPlot=3, colors={{28,108,200}, {238,46,47}}); +createPlot(id=3, position={0, 0, 1643, 241}, y={"plaReq2.uFan"}, range={0.0, 3600.0, -0.2, 1.2}, grid=true, subPlot=4, colors={{28,108,200}}); diff --git a/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/SupplyAirTemperature.mos b/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/SupplyAirTemperature.mos new file mode 100644 index 00000000000..52728513094 --- /dev/null +++ b/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Subsequences/Validation/SupplyAirTemperature.mos @@ -0,0 +1,25 @@ +simulateModel("Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.SupplyAirTemperature", method="Cvode", stopTime=100, tolerance=1e-06, resultFile="SupplyAirTemperature"); + +createPlot(id=1, position={0, 0, 1669, 978}, y={"TSupAir.uHea"}, range={0.0, 100.0, 0.22, 0.28}, grid=true, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 1669, 978}, y={"TSupAir.uCoo"}, range={0.0, 100.0, -2.0, 2.0}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 1669, 978}, y={"TSupAir.TZonHeaSet", "TSupAir.TZonCooSet", "TSupAir.TSupSet"}, range={0.0, 100.0, 294.0, 300.0}, grid=true, subPlot=3, colors={{28,108,200}, {238,46,47}, {0,140,72}}); +createPlot(id=1, position={0, 0, 1669, 978}, y={"TSupAir.TSupSet", "TSupAir.TAirSup"}, range={0.0, 100.0, 0.0, 600.0}, grid=true, subPlot=4, colors={{28,108,200}, {238,46,47}}); +createPlot(id=1, position={0, 0, 1669, 978}, y={"TSupAir.yHeaCoi"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=5, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 1669, 978}, y={"TSupAir.yCooCoi"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=6, colors={{28,108,200}}); + +createPlot(id=2, position={0, 0, 1669, 978}, y={"TSupAir1.uHea"}, range={0.0, 100.0, 0.22, 0.28}, grid=true, colors={{28,108,200}}); +createPlot(id=2, position={0, 0, 1669, 978}, y={"TSupAir1.uCoo"}, range={0.0, 100.0, -2.0, 2.0}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=2, position={0, 0, 1669, 978}, y={"TSupAir1.TZonHeaSet", "TSupAir1.TZonCooSet", "TSupAir1.TSupSet"}, range={0.0, 100.0, 294.0, 300.0}, grid=true, subPlot=3, colors={{28,108,200}, {238,46,47}, {0,140,72}}); +createPlot(id=2, position={0, 0, 1669, 978}, y={"TSupAir1.TSupSet", "TSupAir1.TAirSup"}, range={0.0, 100.0, 0.0, 600.0}, grid=true, subPlot=4, colors={{28,108,200}, {238,46,47}}); +createPlot(id=2, position={0, 0, 1669, 978}, y={"TSupAir1.yHeaCoi"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=5, colors={{28,108,200}}); +createPlot(id=2, position={0, 0, 1669, 978}, y={"TSupAir1.yCooCoi"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=6, colors={{28,108,200}}); + +createPlot(id=3, position={0, 0, 1669, 978}, y={"TSupAir2.uHea"}, range={0.0, 100.0, 0.22, 0.28}, grid=true, colors={{28,108,200}}); +createPlot(id=3, position={0, 0, 1669, 978}, y={"TSupAir2.TZonHeaSet", "TSupAir2.TSupSet"}, range={0.0, 100.0, 294.0, 300.0}, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}); +createPlot(id=3, position={0, 0, 1669, 978}, y={"TSupAir2.TSupSet", "TSupAir2.TAirSup"}, range={0.0, 100.0, 0.0, 600.0}, grid=true, subPlot=3, colors={{28,108,200}, {238,46,47}}); +createPlot(id=3, position={0, 0, 1669, 978}, y={"TSupAir2.yHeaCoi"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=4, colors={{28,108,200}}); + +createPlot(id=4, position={0, 0, 1669, 978}, y={"TSupAir3.uCoo"}, range={0.0, 100.0, -2.0, 2.0}, grid=true, colors={{28,108,200}}); +createPlot(id=4, position={0, 0, 1669, 978}, y={"TSupAir3.TZonCooSet", "TSupAir3.TSupSet"}, range={0.0, 100.0, 294.0, 300.0}, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}); +createPlot(id=4, position={0, 0, 1669, 978}, y={"TSupAir3.TSupSet", "TSupAir3.TAirSup"}, range={0.0, 100.0, 0.0, 600.0}, grid=true, subPlot=3, colors={{28,108,200}, {238,46,47}}); +createPlot(id=4, position={0, 0, 1669, 978}, y={"TSupAir3.yCooCoi"}, range={0.0, 100.0, -0.5, 1.5}, grid=true, subPlot=4, colors={{28,108,200}}); diff --git a/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/Controller.mos b/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/Controller.mos new file mode 100644 index 00000000000..1e5d8a4468f --- /dev/null +++ b/Buildings/Resources/Scripts/Dymola/Controls/OBC/ASHRAE/G36/FanCoilUnit/Validation/Controller.mos @@ -0,0 +1,68 @@ +simulateModel("Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Validation.Controller", method="Cvode", outputInterval=300, stopTime=86400, tolerance=1e-06, resultFile="conFCU"); +createPlot(id=1, position={0, 0, 790, 939}, y={"conFCU.u1Occ"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 790, 939}, y={"conFCU.TZon", "conFCU.TZonHeaSet", "conFCU.TZonCooSet"}, range={0.0, 90000.0, 10.0, 35.0}, grid=true, subPlot=2, colors={{0,140,72}, {28,108,200}, {238,46,47}}, displayUnits={"degC", "degC", "degC"}); +createPlot(id=1, position={0, 0, 790, 939}, y={"conFCU.heaPI.y"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 790, 939}, y={"conFCU.cooPI.y"}, range={0.0, 90000.0, -2.0, 2.0}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=1, position={0, 0, 790, 939}, y={"conFCU.modSetPoi.yOpeMod"}, range={0.0, 90000.0, 0.0, 8.0}, grid=true, subPlot=5, colors={{28,108,200}}); + +createPlot(id=2, position={160, 947, 790, 939}, y={"conFCU.heaPI.y"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, colors={{28,108,200}}); +createPlot(id=2, position={160, 947, 790, 939}, y={"conFCU.y1Fan"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=2, position={160, 947, 790, 939}, y={"conFCU.yFan"}, range={0.0, 90000.0, -0.2, 0.8}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=2, position={160, 947, 790, 939}, y={"conFCU.TSup", "conFCU.TSupSet"}, range={0.0, 90000.0, 18.0, 26.0}, grid=true, subPlot=4, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=2, position={160, 947, 790, 939}, y={"conFCU.yHeaCoi"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=5, colors={{28,108,200}}); + +createPlot(id=3, position={35, 35, 534, 336}, y={"conFCU.yHeaCoi"}, range={0.0, 88000.0, -0.2, 1.2}, grid=true, colors={{28,108,200}}); +createPlot(id=3, position={35, 35, 534, 336}, y={"conFCU.TSup", "conFCU.TSupSet"}, range={0.0, 88000.0, 19.0, 25.0}, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=3, position={35, 35, 534, 336}, y={"conFCU.yHotWatPlaReq"}, range={0.0, 88000.0, -0.2, 1.2}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=3, position={35, 35, 534, 336}, y={"conFCU.yHotWatResReq"}, range={0.0, 88000.0, -0.2, 1.2}, grid=true, subPlot=4, colors={{28,108,200}}); + +createPlot(id=4, position={320, 947, 790, 939}, y={"conFCU1.u1Occ"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, colors={{28,108,200}}); +createPlot(id=4, position={320, 947, 790, 939}, y={"conFCU1.TZon", "conFCU1.TZonHeaSet", "conFCU1.TZonCooSet"}, range={0.0, 90000.0, 10.0, 35.0}, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}, {0,140,72}}, displayUnits={"degC", "degC", "degC"}); +createPlot(id=4, position={320, 947, 790, 939}, y={"conFCU1.heaPI.y"}, range={0.0, 90000.0, -2.0, 2.0}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=4, position={320, 947, 790, 939}, y={"conFCU1.cooPI.y"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=4, position={320, 947, 790, 939}, y={"conFCU1.modSetPoi.yOpeMod"}, range={0.0, 90000.0, 0.0, 8.0}, grid=true, subPlot=5, colors={{28,108,200}}); + +createPlot(id=5, position={480, 947, 788, 939}, y={"conFCU1.cooPI.y"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, colors={{28,108,200}}); +createPlot(id=5, position={480, 947, 788, 939}, y={"conFCU1.y1Fan"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=5, position={480, 947, 788, 939}, y={"conFCU1.yFan"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=5, position={480, 947, 788, 939}, y={"conFCU1.TSup", "conFCU1.TSupSet"}, range={0.0, 90000.0, 10.0, 25.0}, grid=true, subPlot=4, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=5, position={480, 947, 788, 939}, y={"conFCU1.yCooCoi"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=5, colors={{28,108,200}}); + +createPlot(id=6, position={55, 55, 534, 336}, y={"conFCU1.yCooCoi"}, range={0.0, 88000.0, -0.2, 1.2}, grid=true, colors={{28,108,200}}); +createPlot(id=6, position={55, 55, 534, 336}, y={"conFCU1.TSup", "conFCU1.TSupSet"}, range={0.0, 88000.0, 10.0, 30.0}, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=6, position={55, 55, 534, 336}, y={"conFCU1.yChiPlaReq"}, range={0.0, 88000.0, -0.2, 1.2}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=6, position={55, 55, 534, 336}, y={"conFCU1.yChiWatResReq"}, range={0.0, 88000.0, -1.0, 4.0}, grid=true, subPlot=4, colors={{28,108,200}}); + +createPlot(id=7, position={640, 947, 788, 939}, y={"conFCU2.u1Occ"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, colors={{28,108,200}}); +createPlot(id=7, position={640, 947, 788, 939}, y={"conFCU2.TZon", "conFCU2.TZonHeaSet", "conFCU2.TZonCooSet"}, range={0.0, 90000.0, 10.0, 35.0}, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}, {0,140,72}}, displayUnits={"degC", "degC", "degC"}); +createPlot(id=7, position={640, 947, 788, 939}, y={"conFCU2.heaPI.y"}, range={0.0, 90000.0, -2.0, 2.0}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=7, position={640, 947, 788, 939}, y={"conFCU2.cooPI.y"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=7, position={640, 947, 788, 939}, y={"conFCU2.modSetPoi.yOpeMod"}, range={0.0, 90000.0, 0.0, 8.0}, grid=true, subPlot=5, colors={{28,108,200}}); + +createPlot(id=8, position={800, 947, 788, 939}, y={"conFCU2.cooPI.y"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, colors={{28,108,200}}); +createPlot(id=8, position={800, 947, 788, 939}, y={"conFCU2.y1Fan"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=8, position={800, 947, 788, 939}, y={"conFCU2.yFan"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=8, position={800, 947, 788, 939}, y={"conFCU2.TSup", "conFCU2.TSupSet"}, range={0.0, 90000.0, 10.0, 25.0}, grid=true, subPlot=4, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=8, position={800, 947, 788, 939}, y={"conFCU2.yCooCoi"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=5, colors={{28,108,200}}); + +createPlot(id=9, position={75, 75, 534, 336}, y={"conFCU2.yCooCoi"}, range={0.0, 88000.0, -0.2, 1.2}, grid=true, colors={{28,108,200}}); +createPlot(id=9, position={75, 75, 534, 336}, y={"conFCU2.TSup", "conFCU2.TSupSet"}, range={0.0, 88000.0, 10.0, 26.0}, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=9, position={75, 75, 534, 336}, y={"conFCU2.yChiPlaReq"}, range={0.0, 88000.0, -0.2, 1.2}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=9, position={75, 75, 534, 336}, y={"conFCU2.yChiWatResReq"}, range={0.0, 88000.0, -1.0, 4.0}, grid=true, subPlot=4, colors={{28,108,200}}); + +createPlot(id=10, position={640, 947, 788, 939}, y={"conFCU3.u1Occ"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, colors={{28,108,200}}); +createPlot(id=10, position={640, 947, 788, 939}, y={"conFCU3.TZon", "conFCU3.TZonHeaSet", "conFCU3.TZonCooSet"}, range={0.0, 90000.0, 10.0, 35.0}, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}, {0,140,72}}, displayUnits={"degC", "degC", "degC"}); +createPlot(id=10, position={640, 947, 788, 939}, y={"conFCU3.heaPI.y"}, range={0.0, 90000.0, -2.0, 2.0}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=10, position={640, 947, 788, 939}, y={"conFCU3.cooPI.y"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=4, colors={{28,108,200}}); +createPlot(id=10, position={640, 947, 788, 939}, y={"conFCU3.modSetPoi.yOpeMod"}, range={0.0, 90000.0, 0.0, 8.0}, grid=true, subPlot=5, colors={{28,108,200}}); + +createPlot(id=11, position={800, 947, 788, 939}, y={"conFCU3.cooPI.y"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, colors={{28,108,200}}); +createPlot(id=11, position={800, 947, 788, 939}, y={"conFCU3.y1Fan"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=2, colors={{28,108,200}}); +createPlot(id=11, position={800, 947, 788, 939}, y={"conFCU3.yFan"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=11, position={800, 947, 788, 939}, y={"conFCU3.TSup", "conFCU2.TSupSet"}, range={0.0, 90000.0, 10.0, 25.0}, grid=true, subPlot=4, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=11, position={800, 947, 788, 939}, y={"conFCU3.yCooCoi"}, range={0.0, 90000.0, -0.5, 1.5}, grid=true, subPlot=5, colors={{28,108,200}}); + +createPlot(id=12, position={0, 0, 1643, 978}, y={"conFCU3.yCooCoi"}, range={0.0, 88000.0, -0.2, 1.2}, grid=true, colors={{28,108,200}}); +createPlot(id=12, position={0, 0, 1643, 978}, y={"conFCU3.TSup", "conFCU3.TSupSet"}, range={0.0, 88000.0, 10.0, 26.0}, grid=true, subPlot=2, colors={{28,108,200}, {238,46,47}}, displayUnits={"degC", "degC"}); +createPlot(id=12, position={0, 0, 1643, 978}, y={"conFCU3.yChiPlaReq"}, range={0.0, 88000.0, -0.2, 1.2}, grid=true, subPlot=3, colors={{28,108,200}}); +createPlot(id=12, position={0, 0, 1643, 978}, y={"conFCU3.yChiWatResReq"}, range={0.0, 88000.0, -1.0, 4.0}, grid=true, subPlot=4, colors={{28,108,200}}); diff --git a/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.FanSpeed.mos b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.FanSpeed.mos new file mode 100644 index 00000000000..120da690e34 --- /dev/null +++ b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.FanSpeed.mos @@ -0,0 +1,35 @@ +compareVars := + { + "fanSpe.opeMod", + "fanSpe.u1FanPro", + "fanSpe.uHea", + "fanSpe.uCoo", + "fanSpe.y1Fan", + "fanSpe.yFan", + "fanSpe1.opeMod", + "fanSpe1.u1FanPro", + "fanSpe1.uHea", + "fanSpe1.uCoo", + "fanSpe1.y1Fan", + "fanSpe1.yFan", + "fanSpe2.opeMod", + "fanSpe2.u1FanPro", + "fanSpe2.uHea", + "fanSpe2.uCoo", + "fanSpe2.y1Fan", + "fanSpe2.yFan", + "fanSpe3.opeMod", + "fanSpe3.u1FanPro", + "fanSpe3.uCoo", + "fanSpe3.y1Fan", + "fanSpe3.yFan", + "fanSpe4.opeMod", + "fanSpe4.u1FanPro", + "fanSpe4.uHea", + "fanSpe4.y1Fan", + "fanSpe4.yFan", + "fanSpe5.opeMod", + "fanSpe5.u1FanPro", + "fanSpe5.y1Fan", + "fanSpe5.yFan" + }; diff --git a/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.PlantRequests.mos b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.PlantRequests.mos new file mode 100644 index 00000000000..32f1a5a91c5 --- /dev/null +++ b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.PlantRequests.mos @@ -0,0 +1,21 @@ +compareVars := + { + "plaReq.TAirSup", + "plaReq.TAirSupSet", + "plaReq.uCooCoiSet", + "plaReq.uHeaCoiSet", + "plaReq.yHotWatResReq", + "plaReq.yHotWatPlaReq", + "plaReq.uFan", + "plaReq1.TAirSup", + "plaReq1.TAirSupSet", + "plaReq1.uCooCoiSet", + "plaReq1.yChiWatResReq", + "plaReq1.yChiPlaReq", + "plaReq2.TAirSup", + "plaReq2.TAirSupSet", + "plaReq2.uHeaCoiSet", + "plaReq2.yHotWatResReq", + "plaReq2.yHotWatPlaReq", + "plaReq2.uFan" + }; diff --git a/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.SupplyAirTemperature.mos b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.SupplyAirTemperature.mos new file mode 100644 index 00000000000..7eb13458201 --- /dev/null +++ b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Subsequences.Validation.SupplyAirTemperature.mos @@ -0,0 +1,33 @@ +compareVars := + { + "TSupAir.uHea", + "TSupAir.uCoo", + "TSupAir.TZonHeaSet", + "TSupAir.TZonCooSet", + "TSupAir.TSupSet", + "TSupAir.TSupSet", + "TSupAir.TAirSup", + "TSupAir.yHeaCoi", + "TSupAir.yCooCoi", + "TSupAir1.uHea", + "TSupAir1.uCoo", + "TSupAir1.TZonHeaSet", + "TSupAir1.TZonCooSet", + "TSupAir1.TSupSet", + "TSupAir1.TSupSet", + "TSupAir1.TAirSup", + "TSupAir1.yHeaCoi", + "TSupAir1.yCooCoi", + "TSupAir2.uHea", + "TSupAir2.TZonHeaSet", + "TSupAir2.TSupSet", + "TSupAir2.TSupSet", + "TSupAir2.TAirSup", + "TSupAir2.yHeaCoi", + "TSupAir3.uCoo", + "TSupAir3.TZonCooSet", + "TSupAir3.TSupSet", + "TSupAir3.TSupSet", + "TSupAir3.TAirSup", + "TSupAir3.yCooCoi" + }; diff --git a/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Validation.Controller.mos b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Validation.Controller.mos new file mode 100644 index 00000000000..819612041bb --- /dev/null +++ b/Buildings/Resources/Scripts/OpenModelica/compareVars/Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit.Validation.Controller.mos @@ -0,0 +1,61 @@ +compareVars := + { + "conFCU.u1Occ", + "conFCU.TZon", + "conFCU.TZonHeaSet", + "conFCU.TZonCooSet", + "conFCU.heaPI.y", + "conFCU.cooPI.y", + "conFCU.modSetPoi.yOpeMod", + "conFCU.y1Fan", + "conFCU.yFan", + "conFCU.TSup", + "conFCU.TSupSet", + "conFCU.yHeaCoi", + "conFCU.yHotWatPlaReq", + "conFCU.yHotWatResReq", + "conFCU1.u1Occ", + "conFCU1.TZon", + "conFCU1.TZonHeaSet", + "conFCU1.TZonCooSet", + "conFCU1.heaPI.y", + "conFCU1.cooPI.y", + "conFCU1.modSetPoi.yOpeMod", + "conFCU1.y1Fan", + "conFCU1.yFan", + "conFCU1.TSup", + "conFCU1.TSupSet", + "conFCU1.yCooCoi", + "conFCU1.yChiPlaReq", + "conFCU1.yChiWatResReq", + "conFCU2.u1Occ", + "conFCU2.TZon", + "conFCU2.TZonHeaSet", + "conFCU2.TZonCooSet", + "conFCU2.heaPI.y", + "conFCU2.cooPI.y", + "conFCU2.modSetPoi.yOpeMod", + "conFCU2.y1Fan", + "conFCU2.yFan", + "conFCU2.TSup", + "conFCU2.TSupSet", + "conFCU2.yCooCoi", + "conFCU2.yChiPlaReq", + "conFCU2.yChiWatResReq", + "conFCU3.u1Occ", + "conFCU3.TZon", + "conFCU3.TZonHeaSet", + "conFCU3.TZonCooSet", + "conFCU3.heaPI.y", + "conFCU3.cooPI.y", + "conFCU3.modSetPoi.yOpeMod", + "conFCU3.y1Fan", + "conFCU3.yFan", + "conFCU3.TSup", + "conFCU2.TSupSet", + "conFCU3.yCooCoi", + "conFCU3.TSup", + "conFCU3.TSupSet", + "conFCU3.yChiPlaReq", + "conFCU3.yChiWatResReq" + }; diff --git a/Buildings/UsersGuide/ReleaseNotes/Version_12_0_0.mo b/Buildings/UsersGuide/ReleaseNotes/Version_12_0_0.mo index 28f8d6e6220..5e3d28b0b05 100644 --- a/Buildings/UsersGuide/ReleaseNotes/Version_12_0_0.mo +++ b/Buildings/UsersGuide/ReleaseNotes/Version_12_0_0.mo @@ -38,6 +38,16 @@ The following new components have been added to existing libraries:

+ + + + +
Buildings.Controls.OBC.ASHRAE.G36 +
Buildings.Controls.OBC.ASHRAE.G36.FanCoilUnit + Control sequences for fan coil units.
+ This is for + issue 2885. +
Buildings.Templates