modelPartialWaterCooledDXCoil
Base class for water source DX coils
Extends from Buildings.BaseClasses.BaseIcon (Base icon), Buildings.Fluid.DXSystems.Cooling.BaseClasses.EssentialParameters (A partial block for essential parameters for cooling DX coils).
Information
This model can be used to simulate a water source DX cooling coil with single speed compressor.
See Buildings.Fluid.DXSystems.Cooling.UsersGuide for an explanation of the model.
Parameters
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Fluid.DXSystems.Cooling.AirSource.Data.Generic.DXCoil | datCoi (from EssentialParameters) | Performance data | |
| Boolean | homotopyInitialization | true | = true, use homotopy method |
| Boolean | computeReevaporation | true | Set to true to compute reevaporation of water that accumulated on coil |
| Assumptions | |||
| Boolean | allowFlowReversalEva | true | = false to simplify equations, assuming, but not enforcing, no flow reversal for evaporator |
| Boolean | allowFlowReversalCon | true | = false to simplify equations, assuming, but not enforcing, no flow reversal for condenser |
| Nominal condition | |||
| Modelica.Units.SI.PressureDifference | dpEva_nominal | Pressure difference over evaporator at nominal flow rate | |
| Modelica.Units.SI.PressureDifference | dpCon_nominal | Pressure difference over condenser at nominal flow rate | |
| Flow resistance › Evaporator | |||
| Boolean | from_dpEva | false | = true, use m_flow = f(dp) else dp = f(m_flow) |
| Real | nEva | 2 | Flow exponent, nEva=1 for laminar, nEva=2 for turbulent |
| Boolean | linearizeFlowResistanceEva | false | = true, use linear relation between m_flow and dp for any flow rate |
| Real | deltaMEva | 0.1 | Fraction of nominal flow rate where flow transitions to laminar |
| Flow resistance › Condenser | |||
| Boolean | from_dpCon | false | = true, use m_flow = f(dp) else dp = f(m_flow) |
| Real | nCon | 2 | Flow exponent, nCon=1 for laminar, nCon=2 for turbulent |
| Boolean | linearizeFlowResistanceCon | false | = true, use linear relation between m_flow and dp for any flow rate |
| Real | deltaMCon | 0.1 | Fraction of nominal flow rate where flow transitions to laminar |
| Dynamics › Evaporator | |||
| Modelica.Units.SI.Time | tauEva | 60 | Time constant at nominal flow rate (used if energyDynamics <> Modelica.Fluid.Types.Dynamics.SteadyState) |
| Dynamics › Condenser | |||
| Modelica.Units.SI.Time | tauCon | 60 | Time constant at nominal flow rate (used if energyDynamics <> Modelica.Fluid.Types.Dynamics.SteadyState) |
| Initialization › Evaporator | |||
| MediumEva.AbsolutePressure | pEva_start | MediumEva.p_default | Start value of pressure |
| MediumEva.Temperature | TEva_start | MediumEva.T_default | Start value of temperature |
| MediumEva.MassFraction[MediumEva.nX] | XEva_start | MediumEva.X_default | Start value of mass fractions m_i/m |
| MediumEva.ExtraProperty[MediumEva.nC] | CEva_start | fill(0, MediumEva.nC) | Start value of trace substances |
| MediumEva.ExtraProperty[MediumEva.nC] | CEva_nominal | fill(1E-2, MediumEva.nC) | Nominal value of trace substances. (Set to typical order of magnitude.) |
| Initialization › Condenser | |||
| MediumCon.AbsolutePressure | pCon_start | MediumCon.p_default | Start value of pressure |
| MediumCon.Temperature | TCon_start | MediumCon.T_default | Start value of temperature |
| MediumCon.MassFraction[MediumCon.nX] | XCon_start | MediumCon.X_default | Start value of mass fractions m_i/m |
| MediumCon.ExtraProperty[MediumCon.nC] | CCon_start | fill(0, MediumCon.nC) | Start value of trace substances |
| MediumCon.ExtraProperty[MediumCon.nC] | CCon_nominal | fill(1E-2, MediumCon.nC) | Nominal value of trace substances. (Set to typical order of magnitude.) |
| Dynamics › Conservation equations | |||
| Modelica.Fluid.Types.Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamics.DynamicFreeInitial | Type of energy balance: dynamic (3 initialization options) or steady state |
| Advanced › Diagnostics | |||
| Boolean | show_T | false | = true, if actual temperature at port is computed |
Connectors
| Type | Name | Default | Description |
|---|---|---|---|
| Modelica.Blocks.Interfaces.RealOutput | P | Electrical power consumed by the unit | |
| Modelica.Blocks.Interfaces.RealOutput | QEvaSen_flow | Sensible heat flow rate in evaporators | |
| Modelica.Blocks.Interfaces.RealOutput | QEvaLat_flow | Latent heat flow rate in evaporators | |
| Modelica.Fluid.Interfaces.FluidPort_a | port_a | Fluid connector for evaporator inlet (positive design flow direction is from port_a1 to port_b1) | |
| Modelica.Fluid.Interfaces.FluidPort_b | port_b | Fluid connector b1 (positive design flow direction is from port_a1 to port_b1) | |
| Modelica.Fluid.Interfaces.FluidPort_a | portCon_a | Fluid connector a of condenser (positive design flow direction is from port_a2 to port_b2) | |
| Modelica.Fluid.Interfaces.FluidPort_b | portCon_b | Fluid connector b of condenser (positive design flow direction is from port_a2 to port_b2) |
Components
| Type | Name | Default | Description |
|---|---|---|---|
| Buildings.Fluid.DXSystems.Cooling.BaseClasses.PartialDXCoolingCoil | eva | ||
| Buildings.Fluid.HeatExchangers.HeaterCooler_u | watCooCon | Water source condenser | |
| Modelica.Units.SI.Temperature | TConEnt | MediumCon.temperature(MediumCon.setState_phX(portCon_a.p, inStream(portCon_a.h_outflow))) | Temperature of fluid entering the condenser |
| MediumEva.ThermodynamicState | sta_a1 | MediumEva.setState_phX(port_a.p, noEvent(actualStream(port_a.h_outflow)), noEvent(actualStream(port_a.Xi_outflow))) | Medium properties in port_a1 |
| MediumEva.ThermodynamicState | sta_b1 | MediumEva.setState_phX(port_b.p, noEvent(actualStream(port_b.h_outflow)), noEvent(actualStream(port_b.Xi_outflow))) | Medium properties in port_b1 |
| MediumCon.ThermodynamicState | sta_a2 | MediumCon.setState_phX(portCon_a.p, noEvent(actualStream(portCon_a.h_outflow)), noEvent(actualStream(portCon_a.Xi_outflow))) | Medium properties in port_a2 |
| MediumCon.ThermodynamicState | sta_b2 | MediumCon.setState_phX(portCon_b.p, noEvent(actualStream(portCon_b.h_outflow)), noEvent(actualStream(portCon_b.Xi_outflow))) | Medium properties in port_b2 |
Contents
| Name | Description |
|---|---|
| Medium for evaporator | |
| Medium for condenser |
Revisions
-
June 17, 2026, by Michael Wetter:
Updated implementation to allow a flow coefficientnthat is different from2. This allows use of the model for not fully turbulent flow.
This is for Buildings, #4620. -
November 26, 2025, by Michael Wetter:
Updated redeclare and replaceable statements.
This is for issue 4421. -
April 5 , 2023, by Xing Lu:
Changed instance namedxCooin instanceevatodxCoi. Changed baseclass used fromPartialDXCoiltoPartialDXCoolingCoil.
Connect statements with references toTConInchanged toTOut. -
March 3, 2022, by Michael Wetter:
MovedmassDynamicstoAdvancedtab and added assertion for correct combination of energy and mass dynamics.
This is for issue 1542. -
April 14, 2020, by Michael Wetter:
ChangedhomotopyInitializationto a constant.
This is for IBPSA, #1341. -
March 21, 2017, by Michael Wetter:
Moved assignment of evaporator datadatCoifrom theconstrainedBydeclaration in the base class to the instantiation to work around a limitation of JModelica. -
March 7, 2017, by Michael Wetter:
Refactored implementation to avoid code duplication and to propagate parameters. -
February 16, 2017 by Yangyang Fu:
First implementation.