modelVariableSpeed

Variable speed DX cooling coil

Extends from Buildings.Fluid.DXSystems.Cooling.BaseClasses.PartialDXCoolingCoil (Partial model for DX cooling coil).

Information

This model can be used to simulate an air source DX cooling coil with continuously variable speed compressors. The control input is the speed ratio. The coil will switch off if the speed ratio is below a minimum value.

See Buildings.Fluid.DXSystems.Cooling.UsersGuide for an explanation of the model.

Parameters

TypeNameDefaultDescription
Buildings.Fluid.DXSystems.Cooling.AirSource.Data.Generic.DXCoildatCoi (from EssentialParameters)Performance data
BooleanhomotopyInitialization (from TwoPortHeatMassExchanger)true= true, use homotopy method
Booleanuse_mCon_flow (from PartialDXCoil)Set to true to enable connector for the condenser mass flow rate
RealminSpeRatMinimum speed ratio
RealspeRatDeaBan0.05Deadband for minimum speed ratio
Assumptions
BooleanallowFlowReversal (from PartialTwoPort)true= false to simplify equations, assuming, but not enforcing, no flow reversal
Nominal condition
Modelica.Units.SI.MassFlowRatem_flow_nominal (from PartialTwoPortInterface)Nominal mass flow rate
Modelica.Units.SI.PressureDifferencedp_nominal (from TwoPortFlowResistanceParameters)Pressure difference
Advanced
Modelica.Units.SI.MassFlowRatem_flow_small (from PartialTwoPortInterface)1E-4*abs(m_flow_nominal)Small mass flow rate for regularization of zero flow
Advanced › Diagnostics
Booleanshow_T (from PartialTwoPortInterface)false= true, if actual temperature at port is computed
Flow resistance
BooleancomputeFlowResistance (from TwoPortFlowResistanceParameters)true=true, compute flow resistance. Set to false to assume no friction
Booleanfrom_dp (from TwoPortFlowResistanceParameters)false= true, use m_flow = f(dp) else dp = f(m_flow)
Realn (from TwoPortFlowResistanceParameters)2Flow exponent, n=1 for laminar, n=2 for turbulent
BooleanlinearizeFlowResistance (from TwoPortFlowResistanceParameters)false= true, use linear relation between m_flow and dp for any flow rate
RealdeltaM (from TwoPortFlowResistanceParameters)0.1Fraction of nominal flow rate where flow transitions to laminar
Dynamics › Nominal condition
Modelica.Units.SI.Timetau (from TwoPortHeatMassExchanger)30Time constant at nominal flow (if energyDynamics <> SteadyState)
Dynamics › Conservation equations
Modelica.Fluid.Types.DynamicsenergyDynamics (from TwoPortHeatMassExchanger)Modelica.Fluid.Types.Dynamics.DynamicFreeInitialType of energy balance: dynamic (3 initialization options) or steady state
Initialization
Medium.AbsolutePressurep_start (from TwoPortHeatMassExchanger)Medium.p_defaultStart value of pressure
Medium.TemperatureT_start (from TwoPortHeatMassExchanger)Medium.T_defaultStart value of temperature
Medium.MassFraction[Medium.nX]X_start (from TwoPortHeatMassExchanger)Medium.X_defaultStart value of mass fractions m_i/m
Medium.ExtraProperty[Medium.nC]C_start (from TwoPortHeatMassExchanger)fill(0, Medium.nC)Start value of trace substances
Dynamics › Moisture balance
BooleancomputeReevaporation (from PartialDXCoil)trueSet to true to compute reevaporation of water that accumulated on coil

Connectors

TypeNameDefaultDescription
Modelica.Fluid.Interfaces.FluidPort_aport_a (from PartialTwoPort)Fluid connector a (positive design flow direction is from port_a to port_b)
Modelica.Fluid.Interfaces.FluidPort_bport_b (from PartialTwoPort)Fluid connector b (positive design flow direction is from port_a to port_b)
Modelica.Blocks.Interfaces.RealInputTOut (from PartialDXCoil)Outside air dry bulb temperature for an air cooled condenser or wetbulb temperature for an evaporative cooled condenser
Modelica.Blocks.Interfaces.RealInputmCon_flow (from PartialDXCoil)Water mass flow rate for condenser
Modelica.Blocks.Interfaces.RealOutputP (from PartialDXCoil)Electrical power consumed by the unit
Modelica.Blocks.Interfaces.RealOutputQSen_flow (from PartialDXCoil)Sensible heat flow rate
Modelica.Blocks.Interfaces.RealOutputQLat_flow (from PartialDXCoolingCoil)Latent heat flow rate
Modelica.Blocks.Interfaces.RealInputspeRatSpeed ratio

Components

TypeNameDefaultDescription
Modelica.Units.SI.MassFlowRatem_flow (from PartialTwoPortInterface)port_a.m_flowMass flow rate from port_a to port_b (m_flow > 0 is design flow direction)
Modelica.Units.SI.PressureDifferencedp (from PartialTwoPortInterface)port_a.p - port_b.pPressure difference between port_a and port_b
Medium.ThermodynamicStatesta_a (from PartialTwoPortInterface)if allowFlowReversal then Medium.setState_phX(port_a.p, noEvent(actualStream(port_a.h_outflow)), noEvent(actualStream(port_a.Xi_outflow))) else Medium.setState_phX(port_a.p, noEvent(inStream(port_a.h_outflow)), noEvent(inStream(port_a.Xi_outflow)))Medium properties in port_a
Medium.ThermodynamicStatesta_b (from PartialTwoPortInterface)if allowFlowReversal then Medium.setState_phX(port_b.p, noEvent(actualStream(port_b.h_outflow)), noEvent(actualStream(port_b.Xi_outflow))) else Medium.setState_phX(port_b.p, noEvent(port_b.h_outflow), noEvent(port_b.Xi_outflow))Medium properties in port_b
Buildings.Fluid.MixingVolumes.MixingVolumevol (from TwoPortHeatMassExchanger)
Buildings.Fluid.FixedResistances.PressureDroppreDro (from TwoPortHeatMassExchanger)Flow resistance
Buildings.Fluid.DXSystems.Cooling.BaseClasses.PartialCoilInterfacedxCoi (from PartialDXCoil)
Buildings.Fluid.DXSystems.Cooling.BaseClasses.EvaporationwatVapEva (from PartialDXCoolingCoil)Model that computes evaporation of water that accumulated on the coil surface

Revisions

  • November 26, 2025, by Michael Wetter:
    Updated redeclare and replaceable statements.
    This is for issue 4421.
  • March 19, 2023 by Xing Lu and Karthik Devaprasad:
    Renamed class to VariableSpeedDXCooling to differentiate it from DX heating coils.
    Updated connect statement to reflect name change of instance from dxCoo to dxCoi.
    Updated formatting.
  • March 7, 2022, by Michael Wetter:
    Set final massDynamics=energyDynamics.
    This is for #1542.
  • July 28, 2012 by Kaustubh Phalak:
    First implementation.