modelAirLiquid
Extends from Buildings.Fluid.DataCenters.Racks.Hybrid.BaseClasses.AirLiquid (Partial hybrid rack model combining liquid-cooled and air-cooled components).
Information
Model of a hybrid IT rack that combines liquid-cooled and air-cooled components. This model integrates two separate cooling technologies in a single rack. The liquid cooling component uses cold plates and is based on Buildings.Fluid.DataCenters.Racks.Liquid.ColdPlateR_P, while the air cooling component with integrated fans is based on Buildings.Fluid.DataCenters.Racks.Air.Rack_P.
The model has separate fluid ports for each cooling loop.
For liquid cooling, portLiq_a and portLiq_b serve as the inlet and outlet ports.
For air cooling, portAir_a and portAir_b serve as the inlet and outlet ports.
Each cooling system has its own input for the electrical power consumption by the IT equipment.
The input PLiq specifies the power consumption for the liquid-cooled IT equipment,
and the input PAir specifies the power consumption for the air-cooled IT equipment.
Note that PAir does not include the power to operate the fan, as this is an output of the model.
The model provides three power consumption outputs on the right side.
The output PLiqTot is the electric power consumed by liquid-cooled IT.
The output PAirTot is the total electric power consumed by air-cooled IT, including fan energy.
The output PAirFan is the electric power consumed by the fan for air-cooled IT.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Performance data | |||
| Buildings.Fluid.DataCenters.Racks.Hybrid.Data.AirLiquid.Generic | dat (from AirLiquid) | Performance data | |
| Dynamics › Liquid cooling | |||
| Modelica.Fluid.Types.Dynamics | energyDynamicsLiq (from AirLiquid) | Modelica.Fluid.Types.Dynamics.DynamicFreeInitial | Type of energy balance for liquid-cooled component: dynamic (3 initialization options) or steady state |
| Modelica.Units.SI.Time | tauLiq (from AirLiquid) | 2 | Time constant of liquid outlet temperature at nominal flow |
| Initialization › Liquid cooling | |||
| Modelica.Units.SI.Temperature | TLiq_start (from AirLiquid) | 293.15 | Start value of liquid temperature |
| Liquid cooling | |||
| Modelica.Units.SI.VolumeFlowRate | VColPla_flow_nominal (from AirLiquid) | sum(dat.liq.theRes.V_flow)/size(dat.liq.theRes.V_flow, 1) | Design flow rate of one cold plate for liquid cooling |
| Real | nColPla (from AirLiquid) | dat.liq.PIT_nominal/(VColPla_flow_nominal*1000*4200*(dat.liq.PIT_nominal/(dat.liq.m_flow_nominal*4200))) | Number of cold plates for liquid cooling |
| Advanced › Liquid cooling | |||
| Boolean | linearizedLiq (from AirLiquid) | false | = true, use linear relation between m_flow and dp for liquid cooling |
| Dynamics › Air cooling | |||
| Modelica.Fluid.Types.Dynamics | energyDynamicsAir (from AirLiquid) | Modelica.Fluid.Types.Dynamics.DynamicFreeInitial | Type of energy balance for air-cooled component: dynamic (3 initialization options) or steady state |
| Modelica.Units.SI.Time | tauAir (from AirLiquid) | 2 | Time constant of air outlet temperature at nominal flow |
| Initialization › Air cooling | |||
| Modelica.Units.SI.Temperature | TAir_start (from AirLiquid) | 293.15 | Start value of air temperature |
| Fan controller | |||
| Buildings.Fluid.DataCenters.Racks.FanControllers.Types.Strategy | fanControl (from AirLiquid) | Buildings.Fluid.DataCenters.Racks.FanControllers.Types.Strategy.Load | Type of fan control strategy |
| Real[:,:] | fanSpeed (from AirLiquid) | [0.0, 0.0; 1.0, 1.0] | Load and fan speed matrix (1st column normalized IT load, 2nd fan speed), e.g., fanSpeed=[0, 0; 0.5, 0.7; 1, 1]) |
| Modelica.Units.SI.Temperature | TAirOut_set (from AirLiquid) | dat.air.TOut_nominal | Set point temperature for rack outlet air |
| Real | k (from AirLiquid) | 1 | Gain of fan PI controller |
| Modelica.Units.SI.Time | Ti (from AirLiquid) | 60 | Integrator time constant of fan PI controller |
| Assumptions | |||
| Boolean | allowFlowReversalAir (from AirLiquid) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal for air loop |
| Boolean | allowFlowReversalLiq (from AirLiquid) | true | = false to simplify equations, assuming, but not enforcing, no flow reversal for liquid loop |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Fluid.Interfaces.FluidPort_a | portLiq_a (from AirLiquid) | Liquid cooling inlet port | |
| Modelica.Fluid.Interfaces.FluidPort_b | portLiq_b (from AirLiquid) | Liquid cooling outlet port | |
| Modelica.Fluid.Interfaces.FluidPort_a | portAir_a (from AirLiquid) | Air cooling inlet port | |
| Modelica.Fluid.Interfaces.FluidPort_b | portAir_b (from AirLiquid) | Air cooling outlet port | |
| Modelica.Blocks.Interfaces.RealInput | PLiq (from AirLiquid) | Power consumed by for liquid-cooled IT | |
| Modelica.Blocks.Interfaces.RealInput | PAir (from AirLiquid) | Power consumed by air-cooled IT | |
| Modelica.Blocks.Interfaces.RealOutput | PLiqTot (from AirLiquid) | Electric power consumed by liquid-cooled IT | |
| Modelica.Blocks.Interfaces.RealOutput | PAirTot (from AirLiquid) | Electric power consumed by air-cooled IT, including fan energy | |
| Modelica.Blocks.Interfaces.RealOutput | PAirFan (from AirLiquid) | Electric power consumed by fan for air-cooled IT |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Fluid.DataCenters.Racks.Liquid.ColdPlateR_P | liq (from AirLiquid) | Liquid-cooled rack component | |
| Buildings.Fluid.DataCenters.Racks.Air.Rack_P | air (from AirLiquid) | Air-cooled rack component |
Revisions
-
July 14, 2026, by Michael Wetter:
First implementation.