Skip to content

Commit 0954daa

Browse files
committed
Merge branch 'develop' into fix-blind-slat-angle-idx
2 parents 8978d8e + 67002ea commit 0954daa

39 files changed

Lines changed: 4693 additions & 341 deletions
Lines changed: 185 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,185 @@
1+
Air Leakage in Parallel Fan-Powered Terminal Units
2+
================
3+
4+
**Jeremy Lerond, Pacific Northwest National Laboratory**
5+
6+
- Original Date: 04/07/2025
7+
- Revision Date: 10/10/2025
8+
9+
10+
## Justification for New Feature ##
11+
12+
- Parallel PIU can be perceived as more efficient than series PIU because they don't run as much
13+
- Laboratory and in-situ study have shown that their performance can be impacted by backdraft damper air leakage
14+
- EnergyPlus doesn’t have the capability to model parallel PIU damper leakage which could potentially provide misleading results when comparing designs with both types of air terminals
15+
16+
## E-mail and Conference Call Conclusions ##
17+
18+
N/A
19+
20+
## Overview ##
21+
22+
With a new input, users will be able to simulate the impact of parallel PIU backdraft damper leakage. This approach will consider the two main impacts of air leakage through backdraft dampers: increased primary air flow rate and heat/mass transfer to the zone where the air leaks.
23+
24+
## Approach ##
25+
26+
Assumptions:
27+
- Leakage only occurs when the terminal fan is off
28+
- Leaked air is determined from the leakage fraction
29+
- The damper leakage fraction is expressed as follows: `f_leak = m_dot_leakage / m_dot_primary`
30+
- To meet zone loads, leakage results in an increase in primary air flow rate
31+
- The air escaping from the terminal impacts the heat balance of the thermal zone designated as the destination for the leaks
32+
33+
## Testing/Validation/Data Sources ##
34+
35+
- Simulation using sample files will be run and results will be compared against (Sardoueinasab et al., 2018)
36+
- Unit tests will be added to verify that EnergyPlus takes leakage into account when requested by a user
37+
38+
## Input Output Reference Documentation ##
39+
40+
The following descriptions will be added to the Input Output Reference manual:
41+
42+
```latex
43+
\paragraph{Field: Backdraft Damper Leakage Curve Name}\label{field-backdraft_damper_leakage_fraction_curve_name}
44+
45+
This field is used to indicate how the backdraft damper leakage fraction changes with different primary air flow fractions. The leakage fraction is defined as the ratio of leakage mass flow rate to primary air mass flow rate at a constant supply static pressure setpoint. This curve should describe the leakage fraction as a function of primary air flow fraction (ratio of primary flow fraction to maximum nominal primary air flow rate). For a static pressure setpoint of 62 Pa (0.25 in w.c) a resonable low leakage assumption could be around 3\%, a medium leakage value could be around 5\%, and relatively high leakage could be up to 12\%.
46+
47+
\paragraph{Field: Backdraft Damper Leakage Zone Name}\label{field-backdraft_damper_leakage_zone_name}
48+
49+
This field is used to indicate what zone will be impacted by the air leaking from the backdraft damper of the terminal. The zone should be different than the one served by the terminal.
50+
```
51+
52+
## Input Description ##
53+
54+
The following inputs will be added at the end of `AirTerminal:SingleDuct:ParallelPIU:Reheat`:
55+
56+
```
57+
A13, \field Backdraft Damper Leakage Fraction Curve Name
58+
\type object-list
59+
\object-list UnivariateFunctions
60+
\note Backdraft damper leakage fraction is the ratio of mass leakage flow rate to primary air flow rate
61+
\note at a constant static pressure setpoint. This curve should describe the ratio as a function primary
62+
\note air flow fraction (ratio of primary flow fraction to maximum nominal primary air flow rate).
63+
A14; \field Backdraft Damper Leakage Zone Name
64+
\note Name of a zone that will be impacted by the backdraft damper leakage.
65+
\type object-list
66+
\object-list ZoneNames
67+
```
68+
69+
## Outputs Description ##
70+
71+
A new output will be added:
72+
```
73+
Output:Variable,*,Zone Air Terminal Backdraft Damper Leakage Mass Flow Rate,hourly; !- HVAC Average [kg/s]
74+
```
75+
76+
## Engineering Reference ##
77+
78+
A new section will be added under the "Zone Equipment and Zone Forced Air Units" to document how leakage for parallel fan-powered terminal is simulated in EnergyPlus.
79+
80+
```latex
81+
\subsection{Air Leakage in Parallel Fan-Powered Terminal Units}\label{parallel_piu_leakage}
82+
As described in (O'Neal et al., 2016) and (Sardoueinasab et al., 2018), backdraft damper leakage in parallel fan-powered terminal units can be characterized using a leakage fraction at a constant static pressure setpoint:
83+
84+
\begin{equation}
85+
{f_{leakage}} = \frac{\dot m_{leakage}}{\dot m_{primary}}
86+
\end{equation}
87+
88+
Leakage is only simulated when the terminal fan is off. The impact of the simulated leakage is twofold:
89+
\begin{enumerate}
90+
\item To make up for the leaked air, the primary air flow rate should be increased to meet the zone load
91+
\item The air escaping from the terminal impacts the heat balance of the thermal zone designated as the destination for the leaks
92+
\end{enumerate}
93+
94+
The new primary flow rate is adjusted as follows:
95+
\begin{equation}
96+
{\dot m_{primary, adj}} = {\dot m_{primary}} \times \frac{1}{1 - {f_{leakage}}}
97+
\end{equation}
98+
99+
The new primary flow rate won't exceed the maximum primary flow rate of the terminal.
100+
101+
Since leakage only occurs during dead-band and cooling operation (i.e., not during heating operation), the new primary air flow rate doesn't have an impact on the terminal mixer and heater. Leaks are accounted for after the terminal has been simulated, outlet nodes are updated then. The last step is to account for the thermal impact of the leakage on the thermal zone designated as the destination for the leaks. When an `AirLoopHVAC:ReturnPlenum`, this is handled in a similar fashion as leakage simulation using the Simplified Duct Leakage Model, see \ref{implementation-000}. Since users can select the thermal zone designated as the destination for the leaks, this feature also supports models that use an AirLoopHVAC:ZoneMixer as the return path. The leakage flow rate (at the conditions of each destination zone) is added to the mixer to calculate the new mixed air conditions.
102+
103+
\subsubsection{References}\label{references_parallel_piu_leakage}
104+
D.L. O'Neal, J.L. Edmondson, Characterizing air leakage in parallel fan-powered terminal units, ASHRAE Trans., 122 (1) (2016), pp. 343-353
105+
106+
Zahra Sardoueinasab, Peng Yin, Dennis O'Neal, Energy modeling and analysis of inherent air leakage from parallel fan-powered terminal units using EMS in EnergyPlus, (2018), Energy and Buildings, https://doi.org/10.1016/j.enbuild.2018.07.019
107+
```
108+
109+
## Example File and Transition Changes ##
110+
111+
- No transition rules are required
112+
- A new example file will be added to showcase this new feature The new file will include example curves to model leakage based on data included in (O'neal et al., 2016):
113+
114+
```
115+
Curve:Linear,
116+
low_0p25_in_wc, !- Name
117+
-.006083039, !- Coefficient1 Constant
118+
0.036612602, !- Coefficient2 x
119+
0.63, !- Minimum Value of x
120+
1, !- Maximum Value of x
121+
, !- Minimum Curve Output
122+
, !- Maximum Curve Output
123+
Dimensionless, !- Input Unit Type for X
124+
Dimensionless; !- Output Unit Type
125+
126+
Curve:Linear,
127+
medium_0p25_in_wc, !- Name
128+
0.039928941, !- Coefficient1 Constant
129+
0.009555789, !- Coefficient2 x
130+
0.63, !- Minimum Value of x
131+
1, !- Maximum Value of x
132+
, !- Minimum Curve Output
133+
, !- Maximum Curve Output
134+
Dimensionless, !- Input Unit Type for X
135+
Dimensionless; !- Output Unit Type
136+
137+
Curve:Linear,
138+
high_0p25_in_wc, !- Name
139+
0.117130811, !- Coefficient1 Constant
140+
-.001792284, !- Coefficient2 x
141+
0.63, !- Minimum Value of x
142+
1, !- Maximum Value of x
143+
, !- Minimum Curve Output
144+
, !- Maximum Curve Output
145+
Dimensionless, !- Input Unit Type for X
146+
Dimensionless; !- Output Unit Type
147+
148+
Curve:Linear,
149+
low_0p50_in_wc, !- Name
150+
-.023960304, !- Coefficient1 Constant
151+
0.078345929, !- Coefficient2 x
152+
0.51, !- Minimum Value of x
153+
1, !- Maximum Value of x
154+
, !- Minimum Curve Output
155+
, !- Maximum Curve Output
156+
Dimensionless, !- Input Unit Type for X
157+
Dimensionless; !- Output Unit Type
158+
159+
Curve:Linear,
160+
medium_0p50_in_wc, !- Name
161+
0.027345369, !- Coefficient1 Constant
162+
0.04614075, !- Coefficient2 x
163+
0.5, !- Minimum Value of x
164+
1, !- Maximum Value of x
165+
, !- Minimum Curve Output
166+
, !- Maximum Curve Output
167+
Dimensionless, !- Input Unit Type for X
168+
Dimensionless; !- Output Unit Type
169+
170+
Curve:Linear,
171+
high_0p50_in_wc, !- Name
172+
0.094531603, !- Coefficient1 Constant
173+
0.07094517, !- Coefficient2 x
174+
0.5, !- Minimum Value of x
175+
1, !- Maximum Value of x
176+
, !- Minimum Curve Output
177+
, !- Maximum Curve Output
178+
Dimensionless, !- Input Unit Type for X
179+
Dimensionless; !- Output Unit Type
180+
```
181+
182+
## References ##
183+
184+
- Energy modeling and analysis of inherent air leakage from parallel fan-powered terminal units using EMS in EnergyPlus, Zahra Sardoueinasab, Peng Yin, Dennis O'Neal, (2018), Energy and Buildings, https://doi.org/10.1016/j.enbuild.2018.07.019
185+
- Characterizing air leakage in parallel fan-powered terminal units, D.L. O'Neal, J.L. Edmondson, ASHRAE Trans., 122 (1) (2016), pp. 343-353

doc/engineering-reference/src/simulation-models-encyclopedic-reference-005/zone-equipment-and-zone-forced-air-units.tex

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,33 @@ \subsubsection{References}\label{references-3-005}
223223

224224
Wray, C.P., R.C. Diamond, and M.H. Sherman. 2005. ``Rationale for Measuring Duct Leakage Flows in Large Commercial Buildings''. Proceedings -- 26th AIVC Conference, Brussels, Belgium, September. LBNL-58252.
225225

226+
\subsection{Air Leakage in Parallel Fan-Powered Terminal Units}\label{parallel_piu_leakage}
227+
As described in (O'Neal et al., 2016) and (Sardoueinasab et al., 2018), backdraft damper leakage in parallel fan-powered terminal units can be characterized using a leakage fraction at a constant static pressure setpoint:
228+
229+
\begin{equation}
230+
{f_{leakage}} = \frac{\dot m_{leakage}}{\dot m_{primary}}
231+
\end{equation}
232+
233+
Leakage is only simulated when the terminal fan is off. The impact of the simulated leakage is twofold:
234+
\begin{enumerate}
235+
\item To make up for the leaked air, the primary air flow rate should be increased to meet the zone load
236+
\item The air escaping from the terminal impacts the heat balance of the thermal zone designated as the destination for the leaks
237+
\end{enumerate}
238+
239+
The new primary flow rate is adjusted as follows:
240+
\begin{equation}
241+
{\dot m_{primary, adj}} = {\dot m_{primary}} \times \frac{1}{1 - {f_{leakage}}}
242+
\end{equation}
243+
244+
The new primary flow rate won't exceed the maximum primary flow rate of the terminal.
245+
246+
Since leakage only occurs during dead-band and cooling operation (i.e., not during heating operation), the new primary air flow rate doesn't have an impact on the terminal mixer and heater. Leaks are accounted for after the terminal has been simulated, outlet nodes are updated then. The last step is to account for the thermal impact of the leakage on the thermal zone designated as the destination for the leaks. When an `AirLoopHVAC:ReturnPlenum`, this is handled in a similar fashion as leakage simulation using the Simplified Duct Leakage Model, see \ref{implementation-000}. Since users can select the thermal zone designated as the destination for the leaks, this feature also supports models that use an AirLoopHVAC:ZoneMixer as the return path. The leakage flow rate (at the conditions of each destination zone) is added to the mixer to calculate the new mixed air conditions.
247+
248+
\subsubsection{References}\label{references_parallel_piu_leakage}
249+
D.L. O'Neal, J.L. Edmondson, Characterizing air leakage in parallel fan-powered terminal units, ASHRAE Trans., 122 (1) (2016), pp. 343-353
250+
251+
Zahra Sardoueinasab, Peng Yin, Dennis O'Neal, Energy modeling and analysis of inherent air leakage from parallel fan-powered terminal units using EMS in EnergyPlus, (2018), Energy and Buildings, https://doi.org/10.1016/j.enbuild.2018.07.019
252+
226253
\subsection{Fan Coil Unit}\label{fan-coil-unit}
227254

228255
\subsubsection{Overview}\label{overview-4-003}

doc/input-output-reference/src/overview/group-air-distribution-equipment.tex

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1253,6 +1253,14 @@ \subsubsection{Inputs}\label{inputs-8-000}
12531253

12541254
This field is used to indicate the high limit on discharge air temperature at the end of stage three heating for \textbf{Modulated} heat control. The default is 37.7 deg. C (100 deg. F).
12551255

1256+
\paragraph{Field: Backdraft Damper Leakage Curve Name}\label{field-backdraft_damper_leakage_fraction_curve_name}
1257+
1258+
This field is used to indicate how the backdraft damper leakage fraction changes with different primary air flow fractions. The leakage fraction is defined as the ratio of leakage mass flow rate to primary air mass flow rate at a constant supply static pressure setpoint. This curve should describe the leakage fraction as a function of primary air flow fraction (ratio of primary flow fraction to maximum nominal primary air flow rate). For a static pressure setpoint of 62 Pa (0.25 in w.c) a resonable low leakage assumption could be around 3\%, a medium leakage value could be around 5\%, and relatively high leakage could be up to 12\%.
1259+
1260+
\paragraph{Field: Backdraft Damper Leakage Zone Name}\label{field-backdraft_damper_leakage_zone_name}
1261+
1262+
This field is used to indicate what zone will be impacted by the air leaking from the backdraft damper of the terminal. The zone should be different than the one served by the terminal.
1263+
12561264
An IDF example:
12571265

12581266
\begin{lstlisting}

idd/Energy+.idd.in

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48973,12 +48973,22 @@ AirTerminal:SingleDuct:ParallelPIU:Reheat,
4897348973
\default 32.1
4897448974
\note Only used if Heating Control Type is Modulated
4897548975
\note Used to control second stage heating, typically zone heat setpoint plus 20F
48976-
N10; \field High Limit Heating Discharge Air Temperature
48976+
N10, \field High Limit Heating Discharge Air Temperature
4897748977
\type real
4897848978
\units C
4897948979
\default 37.7
4898048980
\note Only used if Heating Control Type is Modulated
4898148981
\note Used to determine end of third stage heating
48982+
A12, \field Backdraft Damper Leakage Fraction Curve Name
48983+
\type object-list
48984+
\object-list UnivariateFunctions
48985+
\note Backdraft damper leakage fraction is the ratio of mass leakage flow rate to primary air flow rate
48986+
\note at a constant static pressure setpoint. This curve should describe the ratio as a function primary
48987+
\note air flow fraction (ratio of primary flow fraction to maximum nominal primary air flow rate).
48988+
A13; \field Backdraft Damper Leakage Zone Name
48989+
\note Name of a zone that will be impacted by the backdraft damper leakage.
48990+
\type object-list
48991+
\object-list ZoneNames
4898248992

4898348993
AirTerminal:SingleDuct:ConstantVolume:FourPipeInduction,
4898448994
\memo Central air system terminal unit, single duct, variable volume, induction unit with

src/EnergyPlus/Autosizing/Base.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -906,7 +906,7 @@ void BaseSizer::calcCoilWaterFlowRates(EnergyPlusData &state,
906906
}
907907
auto &plntCoilData = state.dataPlnt->PlantLoop(loopNum).compDesWaterFlowRate;
908908
if (arrayIndex == -1) {
909-
size_t arrayIndex = plntCoilData.size() + 1;
909+
arrayIndex = plntCoilData.size() + 1;
910910
plntCoilData.resize(arrayIndex);
911911
plntCoilData[arrayIndex - 1].tsDesWaterFlowRate.resize(size_t(timeStepInDay));
912912
plntCoilData[arrayIndex - 1].tsDesWaterFlowRate = tmpFlowData;

0 commit comments

Comments
 (0)