Package with base classes for DX cooling coil model
Extends from Modelica.Icons.BasesPackage (Icon for packages containing base classes).
Name | Description |
---|---|
ApparatusDewPoint | Calculates air properties at apparatus dew point |
ApparatusDryPoint | Calculates air properties at dry coil surface |
Condensation | Calculates rate of condensation |
CoolingCapacity | Calculates cooling capacity at given temperature and flow fraction |
DXCooling | DX cooling coil operation |
DryCoil | Calculates dry coil condition |
DryWetSelector | Selects results from dry or wet coil |
EssentialParameters | A partial block for essential parameters |
Evaporation | Model that computes evaporation of water that accumulated on the coil surface |
InputPower | Electrical power consumed by the unit |
PartialCoilCondition | Partial block for dry and wet coil conditions |
PartialCoilInterface | Partial block for DX coil |
PartialDXCoil | Partial model for DX coil |
PartialSurfaceCondition | Partial block for apparatus dew and dry point calculation |
SensibleHeatRatio | Calculates the sensible heat ratio |
SpeedSelect | Selects the lower specified speed ratio for multispeed model |
SpeedShift | Interpolates values between speeds |
UACp | Calculates UA/Cp of the coil |
WetCoil | Calculates wet coil condition |
NominalCondition | Calculates inlet and outlet fluid parameters at nominal condition |
Functions | Package with functions |
Examples | Package with examples of base class components for DX cooling coil model |
Calculates air properties at apparatus dew point
This blocks outputs the state of the moist air at the dew point of the coil. The bypass factor of the coil and the resulting enthalpy difference is computed by its base class Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialSurfaceCondition.
Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialSurfaceCondition (Partial block for apparatus dew and dry point calculation).
Type | Name | Default | Description |
---|---|---|---|
DXCoil | datCoi | Performance data | |
replaceable package Medium | PartialCondensingGases | Medium model | |
Boolean | variableSpeedCoil | Flag, set to true to interpolate data | |
Initialization | |||
Real | bypass.start | 0.25 | Bypass factor |
Type | Name | Description |
---|---|---|
input RealInput | speRat | Speed index |
input RealInput | Q_flow | Cooling capacity of the coil [W] |
input RealInput | m_flow | Evaporator air mass flow rate [kg/s] |
input RealInput | p | Evaporator air static pressure [Pa] |
input RealInput | XEvaIn | Evaporator inlet air mass fraction |
input RealInput | hEvaIn | Evaporator air inlet specific enthalpy [J/kg] |
input IntegerInput | stage | Stage of coil, or 0/1 for variable-speed coil |
output RealOutput | hADP | Specific enthalpy of air at apparatus dew point [J/kg] |
output RealOutput | XADP | Humidity mass fraction of air at apparatus dew point |
output RealOutput | TADP | Dry bulb temperature of air at apparatus dew point [K] |
Calculates air properties at dry coil surface
This blocks outputs the state of the moist air at of the coil, assuming no condensation occurs. The bypass factor of the coil and the resulting enthalpy difference is computed by its base class Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialSurfaceCondition.
Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialSurfaceCondition (Partial block for apparatus dew and dry point calculation).
Type | Name | Default | Description |
---|---|---|---|
DXCoil | datCoi | Performance data | |
replaceable package Medium | PartialCondensingGases | Medium model | |
Boolean | variableSpeedCoil | Flag, set to true to interpolate data | |
Initialization | |||
Real | bypass.start | 0.25 | Bypass factor |
Type | Name | Description |
---|---|---|
input RealInput | speRat | Speed index |
input RealInput | Q_flow | Cooling capacity of the coil [W] |
input RealInput | m_flow | Evaporator air mass flow rate [kg/s] |
input RealInput | p | Evaporator air static pressure [Pa] |
input RealInput | XEvaIn | Evaporator inlet air mass fraction |
input RealInput | hEvaIn | Evaporator air inlet specific enthalpy [J/kg] |
input IntegerInput | stage | Stage of coil, or 0/1 for variable-speed coil |
output RealOutput | TDry | Dry bulb temperature of air at dry coil condition [K] |
Calculates rate of condensation
This block computes the water mass flow rate that condenses.
Extends from Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block).
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | Modelica.Media.Interfaces.Pa... | Medium model |
Type | Name | Description |
---|---|---|
replaceable package Medium | Medium model | |
input RealInput | TDewPoi | Dew point temperature [K] |
input RealInput | Q_flow | Heat flow [W] |
input RealInput | SHR | Sensible heat ratio |
output RealOutput | mWat_flow | Mass flow rate of water condensed at cooling coil [kg/s] |
Calculates cooling capacity at given temperature and flow fraction
There are two cooling capacity modifier functions: The function capθ accounts for a performance change due to different air temperatures and the function capFF accounts for a performance change due to different air flow rates, relative to the nominal condition. These cooling capacity modifiers are multiplied with nominal cooling capacity to obtain the cooling capacity of the coil at given inlet temperatures and mass flow rate as
Q̇(θe,in, θc,in, ff) = capθ(θe,in, θc,in) capFF(ff) Q̇nom,
where θe,in is the evaporator inlet temperature and θc,in is the condenser inlet temperature in degrees Celsius. θe,in is the dry-bulb temperature if the coil is dry, or the wet-bulb temperature if the coil is wet.
The temperature dependent cooling capacity modifier function is
capθ(θe,in, θc,in) = a1 + a2 θe,in + a3 θe,in 2 + a4 θc,in + a5 θc,in 2 + a6 θe,in θc,in,
where the six coefficients are obtained from the coil performance data record.
The flow fraction dependent cooling capacity modifier function is a polynomial with the normalized mass flow rate ff (flow fraction) as the time dependent variable. The normalized mass flow rate is defined as
ff = ṁ ⁄ ṁnom,
where ṁ is the mass flow rate and ṁnom is the nominal mass flow rate. If the coil has multiple stages, then the nominal mass flow rate of the respective stage is used. Hence,
capFF(ff) = b1 + b2 ff + b3 ff2 + b4ff3 + ...
The coefficients of the equation are obtained from the coil performance data record.
It is important to specify limits of the flow fraction to ensure validity of the capFF(⋅) function in performance record. A non-zero value of capFF(0) will lead to an infinite large change in fluid temperatures because Q̇ ≠ 0 but ṁ = 0. Hence, when ṁ ≠ 0 is below the valid range of the flow modifier function, the coil capacity will be reduced and set to zero near ṁ = 0.
The Energy Input Ratio (EIR) is the inverse of the Coefficient of Performance (COP). Similar to the cooling rate, the EIR of the coil is the product of a function that takes into account changes in condenser and evaporator inlet temperatures, and changes in mass flow rate. The EIR is computed as
EIR(θe,in, θc,in, ff) = EIRθ(θe,in, θc,in) EIRFF(ff) ⁄ COPnominal
As for the cooling rate, EIRθ(⋅, ⋅) is
EIRθ(θe,in, θc,in) = c1 + c2 θe,in + c3 θe,in 2 + c4 θc,in + c5 θc,in 2 + c6 θe,in θc,in.
where the six coefficients are obtained from the coil performance data record, and θe,in is the dry-bulb temperature if the coil is dry, or the wet-bulb temperature otherwise.
Similar to the cooling ratio, the change in EIR due to a change in air mass flow rate is
EIRFF(ff) = d1 + d2 ff + d3 ff2 + d4ff3 + ...
The package Buildings.Fluid.HeatExchangers.DXCoils.Data.PerformanceCurves contains performance curves. Alternatively, users can enter their own performance curves by making an instance of a curve in Buildings.Fluid.HeatExchangers.DXCoils.Data.PerformanceCurves and specifying custom coefficients for the above polynomials. The polynomial coefficients can be obtained by doing a curve fit that fits the polynomials to a set of data. The site http://www.scipy.org/Cookbook/FittingData shows examples for how to fit data. If a coil has multiple stages, then the fit need to be done for each stage. For variable frequency coils, multiple fits need to be done for user selected compressor speeds. For intermediate speeds, the performance data will be interpolated by the model Buildings.Fluid.HeatExchangers.DXCoils.VariableSpeed.
The table below shows the polynomials explained above, the name of the polynomial coefficients in Buildings.Fluid.HeatExchangers.DXCoils.Data.PerformanceCurves and the independent parameters against which the data need to be fitted.
Modelica name of coefficient in data record | Polynomial of the above info section | Parameters for curve fit |
---|---|---|
capFunT |
capθ(θe,in, θc,in) = a1 + a2 θe,in + a3 θe,in 2 + a4 θc,in + a5 θc,in 2 + a6 θe,in θc,in | capθ, θe,in, θc,in |
capFunFF |
capFF(ff) = b1 + b2 ff + b3 ff2 + b4ff3 + ... | capFF, ff |
EIRFunT |
EIRθ(θe,in, θc,in) = a1 + a2 θe,in + a3 θe,in 2 + a4 θc,in + a5 θc,in 2 + a6 θe,in θc,in | EIRθ, θe,in, θc,in |
EIRFunFF |
EIRFF(ff) = b1 + b2 ff + b3 ff2 + b4ff3 + ... | EIRFF, ff |
Note that for the above polynomials, the units for temperature is degree Celsius and not Kelvins.
A parameter of the performance curve is the range of mass flow fraction ff for which the data are valid. Below this range, this model reduces the cooling capacity and the energy input ratio so that both are zero if ff < ffmin/4, where ffmin is the minimum flow fraction for which the performance curves are valid.
Extends from Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block).
Type | Name | Default | Description |
---|---|---|---|
Integer | nSta | Number of coil stages (not counting the off stage) | |
MassFlowRate | m_flow_small | Small mass flow rate for regularization [kg/s] | |
Stage | sta[nSta] | Performance data for this stage |
Type | Name | Description |
---|---|---|
input IntegerInput | stage | Stage of coil, or 0/1 for variable-speed coil |
input RealInput | TConIn | Temperature of air entering the condenser coil [K] |
input RealInput | m_flow | Air mass flow rate at the evaporator [kg/s] |
input RealInput | TEvaIn | Temperature of air entering the evaporator (wet bulb for wet coil and dry bulb for dry coil) [K] |
output RealOutput | Q_flow[nSta] | Total cooling capacity [W] |
output RealOutput | EIR[nSta] | Energy Input Ratio |
DX cooling coil operation
This block combines the models for the dry coil and the wet coil. Output of the block is the coil performance which, depending on the mass fraction at the apparatus dew point temperature and the mass fraction of the coil inlet air, may be from the dry coil, the wet coil, or a weighted average of the two.
Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialCoilInterface (Partial block for DX coil).
Type | Name | Default | Description |
---|---|---|---|
DXCoil | datCoi | Performance data | |
replaceable package Medium | Modelica.Media.Interfaces.Pa... | Medium model | |
Boolean | variableSpeedCoil | Flag, set to true for coil with variable speed |
Type | Name | Description |
---|---|---|
input IntegerInput | stage | Stage of coil, or 0/1 for variable-speed coil |
input RealInput | speRat | Speed ratio |
input RealInput | m_flow | Air mass flow rate |
input RealInput | TEvaIn | Temperature of air entering the cooling coil |
input RealInput | XEvaIn | Inlet air mass fraction |
input RealInput | p | Pressure at inlet of coil |
input RealInput | hEvaIn | Specific enthalpy of air entering the coil |
input RealInput | TConIn | Outside air dry bulb temperature for an air cooled condenser or wetbulb temperature for an evaporative cooled condenser [K] |
output RealOutput | EIR | Energy Input Ratio |
output RealOutput | Q_flow | Total cooling capacity [W] |
replaceable package Medium | Medium model | |
output RealOutput | TCoiSur | Coil surface temperature [K] |
output RealOutput | mWat_flow | Mass flow rate of water condensed at cooling coil [kg/s] |
output RealOutput | SHR | Sensible Heat Ratio: Ratio of sensible heat load to total heat load |
Calculates dry coil condition
This block calculates the rate of cooling and the coil surface condition under the assumption that the coil is dry.
The wet coil conditions are computed in Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.WetCoil. See Buildings.Fluid.HeatExchangers.DXCoils.UsersGuide for an explanation of the model.
Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialCoilCondition (Partial block for dry and wet coil conditions).
Type | Name | Default | Description |
---|---|---|---|
DXCoil | datCoi | Performance data | |
Boolean | variableSpeedCoil | Flag, set to true for coil with variable speed | |
replaceable package Medium | Modelica.Media.Interfaces.Pa... | Medium model |
Type | Name | Description |
---|---|---|
input IntegerInput | stage | Stage of coil, or 0/1 for variable-speed coil |
input RealInput | speRat | Speed ratio |
input RealInput | m_flow | Air mass flow rate |
input RealInput | TEvaIn | Temperature of air entering the cooling coil |
input RealInput | XEvaIn | Inlet air mass fraction |
input RealInput | p | Pressure at inlet of coil |
input RealInput | hEvaIn | Specific enthalpy of air entering the coil |
input RealInput | TConIn | Outside air dry bulb temperature for an air cooled condenser or wetbulb temperature for an evaporative cooled condenser [K] |
output RealOutput | EIR | Energy Input Ratio |
output RealOutput | Q_flow | Total cooling capacity [W] |
replaceable package Medium | Medium model | |
output RealOutput | TDry | Dry bulb temperature of air at ADP [K] |
Selects results from dry or wet coil
This block smoothly transitions the results from the dry coil and the wet coil computation. The independent variable for the transition is the difference between the water mass fractions at the apparatus dew point, as computed by the wet coil model, and the coil inlet mass fraction.
Type | Name | Description |
---|---|---|
input RealInput | XEvaIn | Inlet air mass fraction |
input RealInput | XADP | Mass fraction at ADP |
input RealInput | EIRWet | Energy Input Ratio |
input RealInput | QWet_flow | Total cooling capacity [W] |
input RealInput | SHRWet | Sensible Heat Ratio: Ratio of sensible heat load to total heat load |
input RealInput | TADPWet | Dry bulb temperature of air at ADP [K] |
input RealInput | mWetWat_flow | Mass flow rate of water condensed at cooling coil [kg/s] |
input RealInput | EIRDry | Energy Input Ratio |
input RealInput | QDry_flow | Total cooling capacity [W] |
input RealInput | TADPDry | Dry bulb temperature of air at ADP [K] |
output RealOutput | EIR | Energy Input Ratio |
output RealOutput | Q_flow | Total cooling capacity [W] |
output RealOutput | SHR | Sensible Heat Ratio: Ratio of sensible heat load to total heat load |
output RealOutput | TADP | Dry bulb temperature of air at ADP [K] |
output RealOutput | mWat_flow | Mass flow rate of water condensed at cooling coil [kg/s] |
A partial block for essential parameters
This partial block declares parameters that are required by most classes in the package Buildings.Fluid.HeatExchangers.DXCoils.
Type | Name | Default | Description |
---|---|---|---|
DXCoil | datCoi | Performance data |
Model that computes evaporation of water that accumulated on the coil surface
This model computes the water accumulation on the surface of a cooling coil. When the cooling coil operates, water is accumulated on the coil surface up to a maximum amount of water before water starts to drain away from the coil. When the coil is off, the accumulated water evaporates into the air stream.
The calculations are based on Shirey et al. (2006).
The maximum amount of water that can be accumulated is computed based on the following model, where we used the convention that latent heat removed from the air is negative: The parameter twet defines how long it takes for condensate to drip of the coil, assuming the coil starts completely dry and operates at the nominal operating point. Henderson et al. (2003) measured values for twet from 16.5 minutes (990 seconds) to 29 minutes (1740 seconds). Thus, we use a default value of twet=1400 seconds. The maximum amount of water that can accumulate on the coil is
mmax = -Q̇L,nom twet ⁄ hfg
where Q̇L,nom<0 is the latent capacity at the nominal conditions and hfg is the latent heat of evaporation.
When the coil is off, the water that has been accumulated on the coil evaporates into the air. The rate of water vapor evaporation at nominal operating conditions is defined by the parameter γnom. The definition of γnom is
γnom = Q̇e,nom ⁄ Q̇L,nom,
where Q̇e,nom<0 is the rate of evaporation from the coil surface into the air stream right after the coil is switched off. The default value is γnom = 1.5.
First, we discuss the accumulation of water on the coil. The rate of water accumulation is computed as
dm(t)⁄dt = -ṁwat(t)
where ṁwat(t) ≤ 0 is the water vapor mass flow rate that is extracted from the air at the current operating conditions. The actual water vapor mass flow rate that is removed from the air stream is as computed by the steady-state cooling coil performance model because for the coil outlet conditions, it does not matter whether the water accumulates on the coil or drips away from the coil. The initial value for the water accumulation is zero at the start of the simulation, and set to whatever water remains after the coil has been switched off and the water partially or completely evaporated into the air stream.
Now, we discuss the evaporation of the water on the coil surface into the air when the coil is off. The model in Shirey et al. (2006) is based on the assumption that the wet coil acts as an evaporative cooler. The change of water on the coil is
dm(t)⁄dt = -ṁmax(t) η(t),
where ṁmax(t) > 0 is the maximum water mass flow rate from the coil to the air and η(t) ∈ [0, 1] is the mass transfer effectiveness. For an evaporative cooler,
η(t) = 1-exp(-NTU(t)),
where NTU(t)=(hA)m/Ċa are the number of mass transfer units and Ċa is the air capacity flow rate. The mass transfer coefficient (hA)m is assumed to be proportional to the wet coil area, which is assumed to be equal to the ratio m(t) ⁄ mmax(t). Hence,
(hA)m(t) ∝ m(t) ⁄ mmax(t).
Furthermore, the mass transfer coefficient depends on the velocity, and hence mass flow rate, as
(hA)m(t) ∝ ṁa(t)0.8,
where ṁa(t) is the current air mass flow rate, from which follows that
NTU(t) ∝ ṁa(t)-0.2.
Therefore, the water mass flow rate from the coil into the air stream is
ṁwat(t) = ṁmax(t) (1-exp(-K (m(t) ⁄ mtot) (ṁa(t) ⁄ ṁa,nom)-0.2 )),
where K > 0 is a constant to be determined below and the rate of change of water on the coil surface is as before
dm(t)⁄dt = -ṁwat(t).
The maximum mass transfer is
ṁmax = ṁa (xwb(t) - x(t)),
where xwb(t) is the moisture content of air at the wet bulb state and x(t) is the actual moisture content of the air.
The constant K is determined from the nominal conditions as follows: At the nominal condition, we have m(t) ⁄ mtot=1 and ṁa(t) ⁄ ṁa,nom=1, and, hence,
ṁnom = ṁmax,nom (1-e-K).
Because
ṁnom = - γ Q̇L,nom ⁄ hfg,
it follows that
K = -ln( 1 + γnom Q̇L,nom ⁄ ṁa,nom ⁄ hfg ⁄ (xwb,nom-xnom) ),
where xnom is the humidity ratio at the coil at nominal condition and xwb,nom is the humidity ratio at the wet bulb condition. Note that the ln(·) in the above equation requires that the argument is positive. See the implementation section below for how this is implemented.
For the potential that causes the moisture transfer, the difference in mass fraction between the current coil air and the coil air at the wet bulb conditions is used, provided that the air mass flow rate is within 1⁄3 of the nominal mass flow rate. For smaller air mass flow rates, the outlet conditions are used to ensure that the outlet conditions are not supersaturated air. The transition between these two driving potential is continuously differentiable in the mass flow rate.
To evaluate
K = -ln( 1 + γnom Q̇L,nom ⁄ ṁa,nom ⁄ hfg ⁄ (xwb,nom-xnom) ),
the argument of the ln(·) function must be positive. However, often the parameter γnom is not known, and the default value of γnom = 1.5 may yield negative arguments for the function ln(·). We therefore set a lower bound on γnom as follows: Note that γnom must be such that 0 < ṁwat,nom < ṁmax,nom. This condition is equivalent to
0 < γnom < ṁa,nom (xwb,nom-xnom) hfg ⁄ (-Q̇L,nom)
If γnom were equal to the right hand side, then the mass transfer effectiveness would be one. Hence, we set the maximum value of γnom,max to
γnom,max = 0.8 ṁa,nom (xwb,nom-xnom) hfg ⁄ Q̇L,nom,
which corresponds to a mass transfer effectiveness of 0.8. If γnom > γnom,max, the model sets γnom=γnom,max and writes a warning message.
To regularize the equations near zero air mass flow rate and zero humidity on the coil, the following conditions have been imposed in such a way that the model is once continuously differentiable with bounded derivatives on compact sets:
This is implemented by replacing for |ṁa(t)| < δ the equation for the evaporation mass flow rate by
ṁwat(t) = C m ṁa2(t) (xwb,nom-xnom),
where C=K δ-0.2 which approximates continuity at |ṁa|=δ. Note that differentiability is ensured because the two equations are combined using the function Buildings.Utilities.Math.Functions.spliceFunction. Also note that based on physics, we would not have to square ṁa, but this was done to avoid an event that would be triggered if |ṁa| would have been used. Since the equation is active only at very small air flow rates when the fan is off, the error is negligible for typical applications.
Hugh I. Henderson, Jr., Don B. Shirey III and Richard A. Raustad. Understanding the Dehumidification Performance of Air-Conditioning Equipment at Part-Load Conditions. CIBSE/ASHRAE Conference, Edinburgh, Scotland, September 2003.
Don B. Shirey III, Hugh I. Henderson, Jr. and Richard A. Raustad. Understanding the Dehumidification Performance of Air-Conditioning Equipment at Part-Load Conditions. Florida Solar Energy Center, Technical Report FSEC-CR-1537-05, January 2006.
Extends from Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block).
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | Modelica.Media.Interfaces.Pa... | Medium model | |
NominalValues | nomVal | Nominal values | |
Boolean | computeReevaporation | true | Set to true to compute reevaporation of water that accumulated on coil |
Advanced | |||
MassFlowRate | mAir_flow_small | 0.1*abs(nomVal.m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Type | Name | Description |
---|---|---|
replaceable package Medium | Medium model | |
input BooleanInput | on | Control signal, true if compressor is on |
input RealInput | mWat_flow | Water flow rate added into the medium [kg/s] |
input RealInput | TWat | Temperature of liquid that is drained from or injected into volume [K] |
input RealInput | mAir_flow | Air mass flow rate [kg/s] |
input RealInput | XEvaOut | Water mass fraction [1] |
input RealInput | TEvaOut | Air temperature [K] |
output RealOutput | mTotWat_flow | Total moisture mass flow rate into the air stream [kg/s] |
Electrical power consumed by the unit
This block calculates total electrical energy consumed by the unit using the rate of cooling and the energy input ratio EIR.
The electrical energy consumed by the unit is
P = -Qcool EIR
Extends from Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block).
Type | Name | Description |
---|---|---|
input RealInput | Q_flow | Cooling capacity of the coil [W] |
input RealInput | EIR | Energy input ratio |
input RealInput | SHR | Sensible heat ratio |
output RealOutput | P | Electrical power consumed by the unit [W] |
output RealOutput | QSen_flow | Sensible heat flow rate [W] |
output RealOutput | QLat_flow | Latent heat flow rate [W] |
Partial block for dry and wet coil conditions
This partial block is the base class for Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.DryCoil and Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.WetCoil.
Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialCoilInterface (Partial block for DX coil).
Type | Name | Default | Description |
---|---|---|---|
DXCoil | datCoi | Performance data | |
Boolean | variableSpeedCoil | Flag, set to true for coil with variable speed |
Type | Name | Description |
---|---|---|
input IntegerInput | stage | Stage of coil, or 0/1 for variable-speed coil |
input RealInput | speRat | Speed ratio |
input RealInput | m_flow | Air mass flow rate |
input RealInput | TEvaIn | Temperature of air entering the cooling coil |
input RealInput | XEvaIn | Inlet air mass fraction |
input RealInput | p | Pressure at inlet of coil |
input RealInput | hEvaIn | Specific enthalpy of air entering the coil |
input RealInput | TConIn | Outside air dry bulb temperature for an air cooled condenser or wetbulb temperature for an evaporative cooled condenser [K] |
output RealOutput | EIR | Energy Input Ratio |
output RealOutput | Q_flow | Total cooling capacity [W] |
Partial block for DX coil
This partial block declares the inputs and outputs that are common for Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.CoilCondition and Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.DXCooling.
Extends from Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block), Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.EssentialParameters (A partial block for essential parameters).
Type | Name | Default | Description |
---|---|---|---|
DXCoil | datCoi | Performance data |
Type | Name | Description |
---|---|---|
input IntegerInput | stage | Stage of coil, or 0/1 for variable-speed coil |
input RealInput | speRat | Speed ratio |
input RealInput | m_flow | Air mass flow rate |
input RealInput | TEvaIn | Temperature of air entering the cooling coil |
input RealInput | XEvaIn | Inlet air mass fraction |
input RealInput | p | Pressure at inlet of coil |
input RealInput | hEvaIn | Specific enthalpy of air entering the coil |
input RealInput | TConIn | Outside air dry bulb temperature for an air cooled condenser or wetbulb temperature for an evaporative cooled condenser [K] |
output RealOutput | EIR | Energy Input Ratio |
output RealOutput | Q_flow | Total cooling capacity [W] |
Partial model for DX coil
This partial model is the base class for Buildings.Fluid.HeatExchangers.DXCoils.SingleSpeed Buildings.Fluid.HeatExchangers.DXCoils.MultiStage and Buildings.Fluid.HeatExchangers.DXCoils.VariableSpeed.
See Buildings.Fluid.HeatExchangers.DXCoils.UsersGuide for an explanation of the model.
Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.EssentialParameters (A partial block for essential parameters), Buildings.Fluid.BaseClasses.IndexMassFraction (Computes the index of a substance in the mass fraction vector Xi), Buildings.Fluid.Interfaces.TwoPortHeatMassExchanger (Partial model transporting one fluid stream with storing mass or energy).
Type | Name | Default | Description |
---|---|---|---|
DXCoil | datCoi | Performance data | |
replaceable package Medium | PartialCondensingGases | Medium model | |
String | substanceName | "water" | Name of species substance |
Nominal condition | |||
MassFlowRate | m_flow_nominal | datCoi.sta[nSta].nomVal.m_fl... | Nominal mass flow rate [kg/s] |
PressureDifference | dp_nominal | Pressure difference [Pa] | |
Initialization | |||
MassFlowRate | m_flow.start | 0 | Mass flow rate from port_a to port_b (m_flow > 0 is design flow direction) [kg/s] |
PressureDifference | dp.start | 0 | Pressure difference between port_a and port_b [Pa] |
Assumptions | |||
Boolean | allowFlowReversal | true | = true to allow flow reversal, false restricts to design direction (port_a -> port_b) |
Advanced | |||
MassFlowRate | m_flow_small | 1E-4*abs(m_flow_nominal) | Small mass flow rate for regularization of zero flow [kg/s] |
Boolean | homotopyInitialization | true | = true, use homotopy method |
Diagnostics | |||
Boolean | show_T | false | = true, if actual temperature at port is computed |
Flow resistance | |||
Boolean | from_dp | false | = true, use m_flow = f(dp) else dp = f(m_flow) |
Boolean | linearizeFlowResistance | false | = true, use linear relation between m_flow and dp for any flow rate |
Real | deltaM | 0.1 | Fraction of nominal flow rate where flow transitions to laminar |
Dynamics | |||
Nominal condition | |||
Time | tau | 30 | Time constant at nominal flow (if energyDynamics <> SteadyState) [s] |
Equations | |||
Dynamics | energyDynamics | Modelica.Fluid.Types.Dynamic... | Type of energy balance: dynamic (3 initialization options) or steady state |
Dynamics | massDynamics | energyDynamics | Type of mass balance: dynamic (3 initialization options) or steady state |
Moisture balance | |||
Boolean | computeReevaporation | true | Set to true to compute reevaporation of water that accumulated on coil |
Initialization | |||
AbsolutePressure | p_start | Medium.p_default | Start value of pressure [Pa] |
Temperature | T_start | Medium.T_default | Start value of temperature [K] |
MassFraction | X_start[Medium.nX] | Medium.X_default | Start value of mass fractions m_i/m [kg/kg] |
ExtraProperty | C_start[Medium.nC] | fill(0, Medium.nC) | Start value of trace substances |
Type | Name | Description |
---|---|---|
replaceable package Medium | Medium in the component | |
FluidPort_a | port_a | Fluid connector a (positive design flow direction is from port_a to port_b) |
FluidPort_b | port_b | Fluid connector b (positive design flow direction is from port_a to port_b) |
input RealInput | TConIn | Outside air dry bulb temperature for an air cooled condenser or wetbulb temperature for an evaporative cooled condenser [K] |
output RealOutput | P | Electrical power consumed by the unit [W] |
output RealOutput | QSen_flow | Sensible heat flow rate [W] |
output RealOutput | QLat_flow | Latent heat flow rate [W] |
Partial block for apparatus dew and dry point calculation
This partial block is the base class for Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.ApparatusDewPoint and Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.ApparatusDryPoint.
This block calculates the UA/cp value, the bypass factor and the enthalpy difference across the coil. It uses the function Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.Functions.speedShift for intermediate compressor speeds.
For coils that only have discrete compressor speeds, this block does not do an interpolation for intermediate speeds. For coils with variable speed compressors, the computations are also done if the coil is off, as this ensures that the derivatives are continuous near the off conditions.
Extends from Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block), Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.EssentialParameters (A partial block for essential parameters).
Type | Name | Default | Description |
---|---|---|---|
DXCoil | datCoi | Performance data | |
replaceable package Medium | Modelica.Media.Interfaces.Pa... | Medium model | |
Boolean | variableSpeedCoil | Flag, set to true to interpolate data |
Type | Name | Description |
---|---|---|
replaceable package Medium | Medium model | |
input RealInput | speRat | Speed index |
input RealInput | Q_flow | Cooling capacity of the coil [W] |
input RealInput | m_flow | Evaporator air mass flow rate [kg/s] |
input RealInput | p | Evaporator air static pressure [Pa] |
input RealInput | XEvaIn | Evaporator inlet air mass fraction |
input RealInput | hEvaIn | Evaporator air inlet specific enthalpy [J/kg] |
input IntegerInput | stage | Stage of coil, or 0/1 for variable-speed coil |
Calculates the sensible heat ratio
This block computes the sensible heat ratio.
Extends from Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block).
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | Modelica.Media.Interfaces.Pa... | Medium model |
Type | Name | Description |
---|---|---|
replaceable package Medium | Medium model | |
input BooleanInput | on | Set to true to enable compressor, or false to disable compressor |
input RealInput | p | Pressure at inlet of coil |
input RealInput | TEvaIn | Temperature of air entering the cooling coil |
input RealInput | XADP | Humidity mass fraction of air at ADP |
input RealInput | hADP | Specific enthalpy of air at ADP [J/kg] |
input RealInput | hEvaIn | Specific enthalpy of air entering the coil |
output RealOutput | SHR | Sensible Heat Ratio: Ratio of sensible heat load to total heat load |
Selects the lower specified speed ratio for multispeed model
This blocks outputs the normalized speed of the compressor, whereas the highest stage is assigned a normalized speed of one, and all other stages are proportional to their actual speed.
Extends from Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block).
Type | Name | Default | Description |
---|---|---|---|
Integer | nSta | Number of standard compressor speeds | |
Real | speSet[nSta] | Array of standard compressor speeds |
Type | Name | Description |
---|---|---|
input IntegerInput | stage | Stage of cooling coil (0: off, 1: first stage, 2: second stage...) |
output RealOutput | speRat | Standard speed ratio |
Interpolates values between speeds
This block uses the Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.Functions.speedShift function to interpolate the input array. Depending on input speed ratio and speed set array the input array u is interpolated.
Type | Name | Default | Description |
---|---|---|---|
Integer | nSta | Number of standard compressor speeds | |
AngularVelocity | speSet[nSta] | Compressor speeds [rad/s] | |
Boolean | variableSpeedCoil | Flag, set to true to interpolate data |
Type | Name | Description |
---|---|---|
input RealInput | speRat | Speed ratio |
input RealInput | u[nSta] | Array to be interpolated |
output RealOutput | y | Interpolated value |
input IntegerInput | stage | Stage of coil, or 0/1 for variable-speed coil |
Calculates UA/Cp of the coil
This model calculates the UA/cp value and the bypass factor of the coil from the nominal inlet and outlet air properties. The nominal conditions are calculated using Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.NominalCondition.
For a heat exchanger where one medium changes phase, the NTU-ε relation is
ε = 1 - exp(-NTU) = 1-exp(-UA ⁄ cp ⁄ ṁ)
Since the bypass factor b is defined as b=1-ε, one can write
b = exp(-UA ⁄ cp ⁄ ṁ)
and, hence,
UA ⁄ cp = - ṁ log(b)
Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.NominalCondition (Calculates inlet and outlet fluid parameters at nominal condition), Modelica.Blocks.Icons.Block (Basic graphical layout of input/output block).
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | PartialCondensingGases | Medium model | |
NominalValues | per | Performance data | |
SpecificHeatCapacity | Cp_nominal | Medium.specificHeatCapacityC... | Specific heat of air at specified nominal condition [J/(kg.K)] |
Advanced | |||
Boolean | homotopyInitialization | true | = true, use homotopy method |
Calculates wet coil condition
This block calculates the rate of cooling and the coil surface condition under the assumption that the coil is wet.
The dry coil conditions are computed in Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.DryCoil. See Buildings.Fluid.HeatExchangers.DXCoils.UsersGuide for an explanation of the model.
Extends from Buildings.Fluid.HeatExchangers.DXCoils.BaseClasses.PartialCoilCondition (Partial block for dry and wet coil conditions).
Type | Name | Default | Description |
---|---|---|---|
DXCoil | datCoi | Performance data | |
Boolean | variableSpeedCoil | Flag, set to true for coil with variable speed | |
replaceable package Medium | Modelica.Media.Interfaces.Pa... | Medium model |
Type | Name | Description |
---|---|---|
input IntegerInput | stage | Stage of coil, or 0/1 for variable-speed coil |
input RealInput | speRat | Speed ratio |
input RealInput | m_flow | Air mass flow rate |
input RealInput | TEvaIn | Temperature of air entering the cooling coil |
input RealInput | XEvaIn | Inlet air mass fraction |
input RealInput | p | Pressure at inlet of coil |
input RealInput | hEvaIn | Specific enthalpy of air entering the coil |
input RealInput | TConIn | Outside air dry bulb temperature for an air cooled condenser or wetbulb temperature for an evaporative cooled condenser [K] |
output RealOutput | EIR | Energy Input Ratio |
output RealOutput | Q_flow | Total cooling capacity [W] |
replaceable package Medium | Medium model | |
output RealOutput | TADP | Dry bulb temperature of air at ADP [K] |
output RealOutput | SHR | Sensible Heat Ratio: Ratio of sensible heat load to total heat load |
output RealOutput | mWat_flow | Mass flow rate of water condensed at cooling coil [kg/s] |
output RealOutput | XADP | Humidity mass fraction of air at apparatus dew point |
Calculates inlet and outlet fluid parameters at nominal condition
This block calculates inlet and outlet fluid parameters at the nominal condition. These parameters are required to determine the apparatus dew point at the nominal condition.
Extends from Modelica.Icons.Record (Icon for records).
Type | Name | Default | Description |
---|---|---|---|
replaceable package Medium | Modelica.Media.Interfaces.Pa... | Medium model | |
NominalValues | per | Performance data | |
SpecificHeatCapacity | Cp_nominal | Medium.specificHeatCapacityC... | Specific heat of air at specified nominal condition [J/(kg.K)] |