NREL / EnergyPlus

EnergyPlus™ is a whole building energy simulation program that engineers, architects, and researchers use to model both energy consumption and water use in buildings.
https://energyplus.net
Other
1.14k stars 392 forks source link

Adaptive Convection Algorithm #8881

Open msfer86 opened 3 years ago

msfer86 commented 3 years ago

Issue overview

Some results (HVAC ideal air loads, surface heat transfer, etc.) for a simple parallelepiped building (without windows) were obtained using the 'Surface Convection Algorithm Outside = AdaptiveConvectionAlgorithm' with the following 'Surface Convection Algorithm Outside Adaptive Model Selections' object options: TARPWindward (wind convection windward vertical wall), TARPLeeward (wind convection leeward vertical wall), TARPWindward (wind convection horizontal roof), ASHRAEVerticalWall (natural convection vertical wall), WaltonStableHorizontalOrTilt (natural convection stable horizontal), WaltonUnstableHorizontalOrTilt (natural convection unstable horizontal). However, using the 'Surface Convection Algorithm Outside = TARP' the results differ.

According to the Engineering Reference, the TARP algorithm consists of the same exact equations: TARPWindward for wind convection windward vertical walls, TARPLeeward for wind convection leeward vertical walls, TARPWindward for wind convection horizontal roofs, ASHRAEVerticalWall for natural convection vertical walls, WaltonStableHorizontalOrTilt for natural convection stable horizontal, and WaltonUnstableHorizontalOrTilt for natural convection unstable horizontal. Therefore, what is the difference considered between both methodologies? The code (https://github.com/NREL/EnergyPlus/blob/develop/src/EnergyPlus/ConvectionCoefficients.cc) is not explicit regarding the differences.

Attached are the TXT/IDF files referring to both methodologies. TARP.txt Adaptive_TARP.txt

Details

Checklist

Add to this list or remove from it as applicable. This is a simple templated set of guidelines.

mitchute commented 3 years ago

Unknown, but here's a related issue for the outside adaptive convection algorithms that I'm working on. I'll be reworking some of the internals of these convection algorithms in the near future, so I'll investigate.

msfer86 commented 3 years ago

@mitchute After further testing, it seems the difference lies in the surface perimeter calculation. This perimeter value is used in the forced convection coefficient correlation in the TARP algorithm (Sparrow): https://bigladdersoftware.com/epx/docs/9-5/engineering-reference/outside-surface-heat-balance.html#tarp-algorithm-000

Using the "simple" perimeter values, the forced convection coefficient is similar for both cases (as it supposed to be).

RKStrand commented 3 years ago

@msfer86 @mitchute So, is there a problem in the code? Does this need to be clarified in the documentation? If a documentation issue, then it should be referenced by and added to #8902

mitchute commented 3 years ago

@RKStrand TBH, I haven't had a chance to investigate. You're welcome to take a look since I won't be able to for a few weeks.

RKStrand commented 3 years ago

@msfer86 @mitchute This seems like a documentation issue so I have added a paragraph to the text in the Engineering Reference in the Adaptive Convection Algorithm subsection to talk about the difference in the perimeter calculations. So, when #8902 gets merged in, this should hopefully resolve this issue.

msfer86 commented 3 years ago

@RKStrand @mitchute But why are the perimeters computed in different ways while using the exact same convection algorithm (TARP)? Shouldn't they be identical? According to the documentation, the Adaptive Convection Algorithm allows for finer control over the convection models used for particular surfaces, making it possible to select different convection models for the different surfaces types (roof stable, roof unstable, vertical windward, and vertical leeward). Therefore, selecting the TARP algorithm directly (i.e., globally for all surface types) (SurfaceConvectionAlgorithm:Outside = TARP), or selecting the TARP algorithm for the different surface types (SurfaceConvectionAlgorithm:Outside = Adaptive Convection; SurfaceConvectionAlgorithm:Outside:AdaptiveModelSelections = all TARP) should result in the same outcome. However, if the Adaptive Convection Algorithm by itself applies a different perimeter calculation to the convection model (as it seems to be the case), I'm not seeing the point of it.

RKStrand commented 3 years ago

@msfer86 I can see your point. I think perhaps the best strategy right now is to leave this issue active and not close it after the documentation change gets merged. At some point (this won't make the V9.6 release), either @mitchute or someone else (potentially me) can look at this further to determine what needs to be done. I have added a new paragraph in the documentation to explain that the user might get slightly different answers (see #8902) due to the perimeter calculation, but that can be considered a temporary solution that documents the issue until someone is able to resolve this. If whoever deals with this does create a fix, they can modify or eliminate the new paragraph as needed.