Buildings.Fluid.DataCenters.Racks.RearDoorHeatExchangers.Examples.BaseClasses

Base classes for rear door heat exchanger example models

Information

Package with base classes for example models of rear door heat exchangers.

Extends from Modelica.Icons.BasesPackage (Icon for packages containing base classes).

Package Content

Name Description
Buildings.Fluid.DataCenters.Racks.RearDoorHeatExchangers.Examples.BaseClasses.PartialExample PartialExample Partial example model for a rear door heat exchanger

Buildings.Fluid.DataCenters.Racks.RearDoorHeatExchangers.Examples.BaseClasses.PartialExample Buildings.Fluid.DataCenters.Racks.RearDoorHeatExchangers.Examples.BaseClasses.PartialExample

Partial example model for a rear door heat exchanger

Buildings.Fluid.DataCenters.Racks.RearDoorHeatExchangers.Examples.BaseClasses.PartialExample

Information

Partial example model for a rear door heat exchanger. This model declares the medium packages, nominal parameters, fluid boundary conditions, temperature sensors, and their connections. Extending models must declare the heat exchanger instance hex, provide the value of mAir_flow_nominal, and add the four connections involving hex.

Extends from Modelica.Icons.Example (Icon for runnable examples).

Parameters

TypeNameDefaultDescription
HeatFlowRateQ_flow_nominal-10000Nominal cooling duty (negative = heat removed from air) [W]
TemperatureTAirIn_nominal273.15 + 40Nominal air inlet temperature (warm server exhaust) [K]
TemperatureTAirOut_nominal273.15 + 30Nominal air outlet temperature of rear door heat exchanger [K]
TemperatureTCooIn_nominal273.15 + 20Nominal coolant inlet temperature [K]
TemperatureTCooOut_nominal273.15 + 30Nominal coolant outlet temperature [K]
MassFlowRatemAir_flow_nominalQ_flow_nominal/(TAirOut_nomi...Nominal air mass flow rate [kg/s]
MassFlowRatemCoo_flow_nominal-Q_flow_nominal/(TCooOut_nom...Nominal coolant mass flow rate [kg/s]

Modelica definition

partial model PartialExample "Partial example model for a rear door heat exchanger" extends Modelica.Icons.Example; package MediumCoo = Buildings.Media.Water "Coolant medium"; package MediumAir = Buildings.Media.Air "Air medium"; parameter Modelica.Units.SI.HeatFlowRate Q_flow_nominal = -10000 "Nominal cooling duty (negative = heat removed from air)"; parameter Modelica.Units.SI.Temperature TAirIn_nominal = 273.15 + 40 "Nominal air inlet temperature (warm server exhaust)"; parameter Modelica.Units.SI.Temperature TAirOut_nominal = 273.15 + 30 "Nominal air outlet temperature of rear door heat exchanger"; parameter Modelica.Units.SI.Temperature TCooIn_nominal = 273.15 + 20 "Nominal coolant inlet temperature"; parameter Modelica.Units.SI.Temperature TCooOut_nominal = 273.15 + 30 "Nominal coolant outlet temperature"; parameter Modelica.Units.SI.MassFlowRate mAir_flow_nominal = Q_flow_nominal/(TAirOut_nominal-TAirIn_nominal)/cpAir_default "Nominal air mass flow rate"; parameter Modelica.Units.SI.MassFlowRate mCoo_flow_nominal = -Q_flow_nominal/(TCooOut_nominal-TCooIn_nominal)/cpCoo_default "Nominal coolant mass flow rate"; final parameter Modelica.Units.SI.SpecificHeatCapacity cpAir_default= MediumAir.specificHeatCapacityCp( MediumAir.setState_pTX( T=MediumAir.T_default, p=MediumAir.p_default, X=MediumAir.X_default[1:MediumAir.nXi])) "Specific heat capacity of air"; final parameter Modelica.Units.SI.SpecificHeatCapacity cpCoo_default= MediumCoo.specificHeatCapacityCp( MediumCoo.setState_pTX( T=MediumCoo.T_default, p=MediumCoo.p_default, X=MediumCoo.X_default[1:MediumCoo.nXi])) "Specific heat capacity of the coolant fluid"; Buildings.Fluid.Sources.Boundary_pT airSin( redeclare package Medium = MediumAir, nPorts=1) "Air pressure reference"; Buildings.Fluid.Sources.MassFlowSource_T cooSou( redeclare package Medium = MediumCoo, nPorts=1, use_m_flow_in=false, m_flow=mCoo_flow_nominal, T=TCooIn_nominal) "Coolant source at nominal conditions"; Buildings.Fluid.Sources.Boundary_pT cooSin( redeclare package Medium = MediumCoo, nPorts=1) "Coolant pressure reference"; Buildings.Fluid.Sensors.TemperatureTwoPort senTAirIn( redeclare package Medium = MediumAir, m_flow_nominal=mAir_flow_nominal) "Air inlet temperature sensor"; Buildings.Fluid.Sensors.TemperatureTwoPort senTAirOut( redeclare package Medium = MediumAir, m_flow_nominal=mAir_flow_nominal) "Air outlet temperature sensor"; Buildings.Fluid.Sensors.TemperatureTwoPort senTCooIn( redeclare package Medium = MediumCoo, m_flow_nominal=mCoo_flow_nominal) "Coolant inlet temperature sensor"; Buildings.Fluid.Sensors.TemperatureTwoPort senTCooOut( redeclare package Medium = MediumCoo, m_flow_nominal=mCoo_flow_nominal) "Coolant outlet temperature sensor"; equation connect(senTAirOut.port_b, airSin.ports[1]); connect(cooSou.ports[1], senTCooIn.port_a); connect(senTCooOut.port_b, cooSin.ports[1]); end PartialExample;