EnergyPlus 22.2.0
EnergyPlus 22.2.0
The U.S. Department of Energy (DOE) has released EnergyPlus version 22.2.0. There were many bug fixes and prominent new features this release. The full changelog for this release cycle is listed below. For more information about EnergyPlus, please visit www.energyplus.net.
Supported Platforms
- Windows 10 and 11: 32 and 64-bit versions
- Linux (Ubuntu 18.04, 20.04, 22.04) 64 bit versions
- Mac OSX 10.15, 11, and 12 64 bit versions
What's Changed
New Features 🌟
- Change version numbering approach to YY.N by @Myoldmopar in #9169
- Add workflow file for ConvertInputFormat by @JasonGlazer in #9182
- Enhancing Multi-speed Coil Speed Level Control Actuators by @xuanluo113 in #9185
- CondFD Surface Heat Source Actuators by @mitchute in #9151
- Adding SetpointManager:SystemNodeReset objects by @WooyoungJung0115 in #9261
- Flag added to toggle daylight saving when used with Schedule:File by @prsh5175 in #9251
- Enhancement of Handling of Rainfall by @yujiex in #9177
- Add Window Assembly Factor Reporting and Fix Windows-CalcEngine U-value calculation with shade by @JasonGlazer in #8740
- Dedicated general exhaust system by @jcyuan2020 in #9209
- AirflowNetwork Duct Autosizing by @lgu1234 in #9465
- New Feature Multiple Ground Temperature and Ground Reflectance by @Nigusse in #9409
- Allow running just load calculations and no full simulations by @EnergyArchmage in #9402
- Allow Coil:WaterHeating:Desuperheater to use Coil:Cooling:DX by @mitchute in #9051
- Add staging actuator to Coil:Heating:Electric:MultiStage by @yzhou601 in #9392
- New Feature - Latent Sizing by @rraustad in #9406
- ZoneHVAC:PackagedTerminalAirConditioner transition to UnitarySystem by @mjwitte in #9273
- Support Space for Infiltration and Ventilation by @mjwitte in #9564
- Enhancement to Resilience Metrics by @yujiex in #9156
- Add reference temperatures for water-to-air cooling/heating coil sizing by @lymereJ in #9439
- Enhancement to Simplified Shading by @yujiex in #9404
- Support Space for Mixing and CrossMixing by @mjwitte in #9595
- Add ASHRAE Standard 205 Chiller object by @tanaya-bigladder in #9463
- Luminance-based window shading control per 90.1 Appendix C requirements by @leijerry888 in #9571
- 7038 90.1 metric by @TMaile in #9480
- SEER2 Calculations for Coil:Cooling:DX > CurveFitPerformance > CurveF… by @Brijendra21 in #9618
Performance Enhancing Changes 🏁
- Comment and cleanup of heat balance arrays by @xuanluo113 in #9097
- Daylighting output revisions and other cleanup related to Enclosures vs Zones by @mjwitte in #9102
- Speed up execution of test suite by @lefticus in #9255
- Add Exterior solar surface lists and maybe other performance tweaks by @mjwitte in #9424
- 9560 eliminate loop for surface heat transfer algorithm and replace with select reset by @rraustad in #9561
- Test SetupOutputVariable changes to accept std::string_view type for parameters by @jcyuan2020 in #9557
- Update MovingAvg function by @rraustad in #9600
- Use currDifSolarRad, currBeamSolarRad to hold adjusted solar and other cleanups in the incident solar multiplier feature by @yujiex in #9634
Defects Repaired 🪲
- Fix Python Prefix Warnings by @Myoldmopar in #9126
- Corrected a link in the readme by @DaveInCaz in #9115
- Fix Bugs in Emmel and Blocken Convection Algorithms by @mitchute in #9129
- Post release I/O changes of the simple glazing frame feature by @xuanluo113 in #9117
- EIO transition changes for simple glazing by @xuanluo113 in #9179
- Fix Space issues: documentation, DesignSpecification:OutdoorAir:Spacelist, and Daylighting:ReferencePoint, InternalMass by @mjwitte in #9132
- Fix multiple absorption chillerheater objects input processing by @jcyuan2020 in #9162
- EPLaunch classic to support two digit version numbers by @JasonGlazer in #9192
- Correct and update all emissions meter source names from 'Electric' to 'Electricity' for consistency. by @matthew-larson in #9101
- Resolve warnings/errors for unreasonable DHW temperatures in Example Files by @matthew-larson in #9078
- Fix Emission Output Variable Names "Environmental Impact OtherFuel1 CO2 Water Consumption Volume" and "Environmental Impact OtherFuel2 CO2 Water Consumption Volume" by @matthew-larson in #9089
- Fix barometric pressure in some DX coil unit tests by @mjwitte in #9208
- Fix zonehvac baseboardradiantconvective, low temperature radiant tube length, and wall:detailed vertice transitions by @jcyuan2020 in #9139
- CondFD Conductivity/Specific Heat Actuator Bug by @mitchute in #9221
- Fix EPW parsing bug by @mbadams5 in #9216
- Add additional python path for use with EP-Launch by @matthew-larson in #8985
- Fix kiva clockwise geometry rule issue by @jcyuan2020 in #9104
- Fix Rounding of
minutes
Function by @mitchute in #9234 - Fix 9215 central heat pump schedule by @jcyuan2020 in #9226
- Fix enclosure merging when using Construction:AirBoundary by @mjwitte in #9237
- Fix GHE Error Handling by @mitchute in #9259
- Allow multiple python plugin variable objects in idd by @Myoldmopar in #9271
- Fix PixelCounting exception thrown by OpenGL destruction in Windows. by @tanaya-bigladder in #9257
- Fix #8999 - OutputControl:Files is marked unused by @jmarrec in #9292
- Fix Schedule Limits Error Message by @mitchute in #9278
- Pin a specific python version on Github Actions by @jmarrec in #9276
- Fix #9150 - Wild card in meter name no longer works for Output:Meter by @jmarrec in #9293
- Fix Issues with IDFVersionUpdater by @JasonGlazer in #9283
- #9228 - Tabular file not generated with only Output:Table:Annual by @jmarrec in #9296
- #9190 - Site:WaterMainsTemperature CorrelationFromWeatherFile uses bogus values by @jmarrec in #9295
- Fix Integrated Heat Pump Output Variable Setup by @mitchute in #9249
- ZoneHVAC:UnitVentilator shows different autosized min/max OA flow rates for FixedAmount OA control option by @rraustad in #9285
- Add coil cooling dx saturation check by @mjwitte in #9187
- 9202 9222 reset delete state python by @jmarrec in #9304
- Correct Window5 Data File window name if it contains spaces by @matthew-larson in #9324
- Correct Kiva::setMessageCallback std:pair argument by @matthew-larson in #9316
- Fix public linkage of energypluslib to energyplus.exe by @tanaya-bigladder in #9297
- Reset sizing averaging window size when using performance precision modes by @xuanluo113 in #9180
- Add warning for Kiva deep-ground boundary condition and deep-ground depth for auto by @matthew-larson in #9328
- AirLoopHVAC:DedicatedOutdoorAirSystem does not size correctly when multiple DOAS systems are simulated by @rraustad in #9327
- Fix User-input Floor Area for Zone and Space by @mjwitte in #9308
- Fix 8638 chiller condenser recurring warnings by @jcyuan2020 in #9231
- Modify ground surface conduction calculation for Kiva surfaces and ensure conduction heat balance by @matthew-larson in #9269
- Fix #7511 which shows warning for too many controlled shades by @JasonGlazer in #9322
- #9164 - #9313 - Paths problems by @jmarrec in #9321
- Update to shading airflow coefficients feb2022 by @vidanovic in #9314
- Update Kiva to v0.6.4 by @nealkruis in #9334
- #9000 - Average values for integer output variables fail debug assert and are rounded to 1 place by @jmarrec in #9294
- Fix Rainfall is handled differently between weather file values and Site:Precipitation water manager values #4153 by @yujiex in #9290
- Fix for warnings issued by newer versions of Clang by @nealkruis in #9340
- Fix crash in Window Assembly report with multiple shading states by @vidanovic in #9341
- Correct heating coil sizing in AirTerminal:SingleDuct:ConstantVolume:Reheat by @rraustad in #8714
- Fix typo in error message by @shorowit in #9375
- Fix Basement preprocessor NaN fatal error by @mjwitte in #9356
- Add Coil:Cooling:DX as key choice to CoilSystem:Cooling:DX by @rraustad in #9050
- Fix node connection check by @jcyuan2020 in #9363
- Fixes DOAS system coils report cooling/heating power when system is off by @Nigusse in #9408
- Slab ground heat transfer program has an exception during execution by @rraustad in #9376
- Fix coil user defined node registration problem by @jcyuan2020 in #9364
- fix airloop index problem in std. 62.1 calculations by @EnergyArchmage in #9438
- Documentation 2021c by @jcyuan2020 in #9351
- Update group-heating-and-cooling-coils.tex by @mdahlhausen in #9371
- #9420 - Parsing for precipitation values fails for some weather stat files by @jmarrec in #9444
- Add fmt validation custom check by @mitchute in #9433
- #9410 - ConvertInputFormat incorrectly handles file name with period in name by @jmarrec in #9445
- #7383 - Avoid issuing 'not fully enclosed' warning when zone is in fact enclosed by @jmarrec in #9447
- Change VariableSpeed coil sizing to use StdRhoAir by @rraustad in #9425
- Fix #9455 and #9456 - Address water-to-air cooling coils sizing related issues by @lymereJ in #9457
- Random line of code resets FanOpMode when UnitarySystem uses multi-speed heating coil and Setpoint control by @rraustad in #9482
- Address set sky and ground surfaces view factors for surfaces property object by @Nigusse in #9441
- Allow multistage electric coil to be supplemental coil of UnitarySystem by @yzhou601 in #9414
- DemandManagerAssignmentList error message shows wrong object name #9320 by @Nigusse in #9479
- Fix crash if number of ATUs on one airloop exceeds number of zones and Fix OA Details Report with Multipliers by @mjwitte in #9487
- Use Standard air density for sizing all cooling coil types (water coils and ideal loads air system already used standard air density) by @rraustad in #9431
- ZoneHVAC:FourPipeFanCoil shows a fatal sizing error when autosized coil inlet temperature is negative by @rraustad in #9475
- Fix Missing Argument in Runtime API by @Myoldmopar in #9499
- Complex window solar or ground ray calculation potential overflow by @jcyuan2020 in #9490
- AirloopHVAC:UnitarySystem uses outdoor air temperature to size water source dx cooling coils and incorrectly reports autosized supplemental heating coil capacity for CoolReheat control by @rraustad in #9501
- Missing idd defaults for CoolingTower:*Speed by @Nigusse in #9522
- Fix schedule:file file extension case match issue by @jcyuan2020 in #9510
- Set Zone Floor Area = Zone CalcFloorArea in SurfaceGeometr by @lgu1234 in #9520
- #9419 - Output:JSON missing some tabular reports by @jmarrec in #9461
- Correct logic checks to simulate StagedThermostat correctly by @lgu1234 in #9527
- Fix furnace minOATCompressor, Output:Meter idd timestep choice, and chilled ceiling panel code line by @jcyuan2020 in #9542
- Fix Outdoor Air Summary Multipliers and Outdoor Air Details by Airloop by @mjwitte in #9519
- Fix fluid property interpolation for single concentration case by @jcyuan2020 in #9533
- Fix AirLoop Component Loads Report Coincident Peak by @lgu1234 in #9476
- Addresses Coil:Cooling:DX reports full load capacity for lower speeds by @Nigusse in #9513
- Fix #9060 - Stepped daylighting control can produce lighting power multipliers > 1.0 by @jmarrec in #9530
- Fixes supply fan heat effect is incorrect in standard ratings calculation for two speed DX cooling coil by @Nigusse in #9529
- Fix #9538 ElectricEquipment:ITE:AirCooled Environmental Class Code Specifications by @jcyuan2020 in #9541
- Fix #9123 - GetVertices is dropping vertices inconsistently, causing fatal error by @jmarrec in #9545
- Fix #9432 - Roof perimeter in the outside surface convection calculations can be wrong for rotated rectangular shapes by @jmarrec in #9446
- Fix #9118 - CheckConvexity is not removing collinear points consistently, causing fatal error by @jmarrec in #9544
- Fix #9551 - Update LCC using NIST 135 supplement for years 2020, 2021 and 2022 by @jmarrec in #9565
- Fix VRF central condenser EIRFPLR curve bound and add warning messages by @jcyuan2020 in #9573
- Correct argument list for DownInterpolate4HistoryValues function calls by @rraustad in #9567
- 9576 vs coil model sets heating capacity by @rraustad in #9577
- Corrects Coil:Heating:Gas:MultiStage to call the gas coil model instead of electric coil model by @rraustad in #9525
- Include SizingPeriod:WeatherFileDays in DOAS sizing by @rraustad in #9336
- 9157 9191 simulation control adjustments by @jmarrec in #9386
- Fix #9550 - Avoid expensive calls inside BuildKeyVarList by @jmarrec in #9556
- Correction of Mechanical Ventilation Controller Index Problem by @RKStrand in #9580
- Removal of Unused Fuel Factor Inputs by @RKStrand in #9581
- Accept Air Terminal objects in RoomAir:Node:AirflowNetwork:HVACEquipment by @lgu1234 in #9498
- Fix #9489 - Construction:AirBoundary fails for fenestration surfaces by @jmarrec in #9582
- Allow fan placement in any order in air loop hvac dedicated outdoor air system by @lgu1234 in #9536
- Implement 9418 ITE environment class addition and code specifications update by @jcyuan2020 in #9537
- Add Integers to epJSON Schema by @jasondegraw in #9526
- Fix IDF Editor issues and add units by @JasonGlazer in #9604
- Fix for CondFD Problem that Improperly Led to Fatal Error by @RKStrand in #9602
- Correct unit ventilator when using zone equipment night cycle manager by @rraustad in #9638
- Correction of Fatal Error when Window5 Data File has SC or SHGC = 0 by @RKStrand in #9622
- Calculate Mean Radiant Temperature (MRT) for Enclosures (not zones) by @mjwitte in #9628
- Fix bug in IDFVersionUpdater when updating 22.1 files to 22.2 by @JasonGlazer in #9636
- Add warnings to AirloopHVAC:UnitarySystem when Setpoint control is used and no set point is present by @rraustad in #9652
- Documentation 2022a by @jcyuan2020 in #9629
- Update Kiva to v0.6.4 by @nealkruis in #9633
- Correction of U-Value Calculation with Film Coefficient by @RKStrand in #9639
- Correct example file PackagedTerminalHeatPump_LatentSizing_SensibleAndLatent Sizing:Zone humidity set point schedules by @rraustad in #9655
- ASHRAE Natural Convection Vertical Surface Concern by @RKStrand in #9626
- Correction of Cumulative Green Roof Output Variables by @RKStrand in #9644
- Warn when Pixel counting used with shading surface transmittance schedule by @jcyuan2020 in #9653
- Check and Enforce Limits on Schedule for SetpointManager:OutdoorAirReset by @RKStrand in #9657
- CFS window interior solar distribution fix in full interior exterior mode by @jcyuan2020 in #9486
- Fix for Pumps Turning Off and an Overhaul of the C++ Code in Pumps by @RKStrand in #9656
- #Fix 9436 - TIMESTAMP Column in Custom Monthly Report Tables under both peak heating and peak cooling report has a trailing space by @jmarrec in #9647
- Use condenser flow rate to calculate condenser inlet temperature in IPLV calculation by @lymereJ in #9569
- Fix #9331 - Crash if window construction is zero due to bad construction name by @jmarrec in #9646
- IDF Editor added dialog explaining workaround for #9010 out of memory error by @JasonGlazer in #9640
- Fix curve negative energy issue in plant loop heat pumps by @jcyuan2020 in #9660
- Test shadow calculation warning preprocessor directives in unit test by @jcyuan2020 in #9659
- A few dedicated exhaust related issues by @jcyuan2020 in #9665
- Correct WaterUse:Equipment hot/cold mixing logic by @rraustad in #9661
- Add ITE design power to Zone Summary report by @lymereJ in #9672
- #9303 - Effectively static link fortran utilities (and make them work on M1) by @jmarrec in #9676
Under the Hood Refactoring ⚙
- Refactor DataHeatBalance by @dareumnam in #9013
- Convert
const
int
/double
toconstexpr
Where Possible by @mitchute in #9130 - Conversion to enum class - DataPlant::PlantEquipmentType by @jmythms in #9053
- Convert remaining
const
int
/double
instate
toconstexpr
by @mitchute in #9166 - Move
const
Array1D
/2D
toconstexpr std::array
by @mitchute in #9167 - Enum Refactor: DataZoneEquipment by @dareumnam in #9163
- Convert
int constexpr
toenum
: EconomicLifeCycleCost.* by @jmythms in #9170 - Clean up for PR: conv to enum DataPlant::PlantEquipmentType #9053 by @jmythms in #9137
- Unify Enum Format - 1 by @mitchute in #9168
- Enum Refactor and follow-up for #9013 by @dareumnam in #9213
- Convert Plant LoopSides (Demand and Supply) to enum class by @jmythms in #9212
- Convert compressor operation from int constexpr to enum by @jmythms in #9199
- Fix Invalid Object Type Names by @mitchute in #9229
- Convert Plant Location to struct form by @jmythms in #9223
- Cleanup interface manager by @Myoldmopar in #9235
- Enum refactor: enum-based SELECT_CASE_var by @dareumnam in #9236
- Reduce Optional_string usage by @jasondegraw in #9232
- Begin Passing ObjType enum by @mitchute in #9220
- Pull Separate LU-Decomp CMake Target into cpgfunction by @mitchute in #9245
- enum-based SELECT_CASE_var by @dareumnam in #9244
- Build time investigation 2022 by @lefticus in #9246
- Remove
SELECT_CASE_var
in WindTurbine.cc by @jmythms in #9258 - Remove
SELECT_CASE_var
in VentilatedSlab.cc by @jmythms in #9274 - Cleanup
SELECT_CASE_VAR
in SystemAvailabilityManager by @jmythms in #9319 - typo by @brianlball in #9373
- Enum Refactor & Remove
SELECT_CASE_var
by @dareumnam in #9323 - Remove
select_case_var
s &enum class
cleanup by @dareumnam in #9385 - Clean headers from A-C by @brianlball in #9365
- Remove
select_case_var
s &enum
cleanup by @dareumnam in #9413 - Clean headers from zup by @Myoldmopar in #9416
- Continuing to eliminate SELECT_CASE_Var by @Myoldmopar in #9417
- Move DataHVACGlobals::SetPointType to enum and switch/case by @mitchute in #9399
- Continued Refactoring SELECT_CASE_var by @Myoldmopar in #9428
- AirflowNetwork Refactor by @jasondegraw in #9429
- Continued select case var efforts by @Myoldmopar in #9435
- Continued select case var and cleanup by @Myoldmopar in #9440
- Expose EPVector resize method, change allocation handling by @jasondegraw in #9454
- Refactor and Cleanup OutputReports.cc by @mitchute in #9452
- Enum & SelectCaseVar Cleanups Continued by @Myoldmopar in #9477
- Switch AFN simulation control from ints to an enum by @jasondegraw in #9449
enum
&Select_Case_Var
Cleanups Continued by @dareumnam in #9502Select_Case_Var
&enum
Cleanups Continued by @dareumnam in #9505- OA reports no-diff code cleanup by @mjwitte in #9552
- Consolidate ControlledZoneNum and ActualZoneNum by @mjwitte in #9553
- Update GHE Interpolation Routine by @mitchute in #9535
- Clean up array references in sizing code to speed up code execution by @Myoldmopar in #9584
- Coil refactoring Heat Exchanger Assisted DX Cooling Coil by @jcyuan2020 in #9149
select_case_var
&constexpr int
Cleanups Continued by @dareumnam in #9555- Actual ZoneNum Followup by @mjwitte in #9611
- Convert
constexpr int
to enum class. by @jmythms in #9575 - Updated Code Compliant Dataset to Reflect Approved Changes in ASHRAE 90.1 by @aowabinr in #9641
New Contributors
- @DaveInCaz made their first contribution in #9115
- @WooyoungJung0115 made their first contribution in #9261
- @tanaya-bigladder made their first contribution in #9257
- @prsh5175 made their first contribution in #9251
- @mdahlhausen made their first contribution in #9371
- @leijerry888 made their first contribution in #9571
- @TMaile made their first contribution in #9480
- @aowabinr made their first contribution in #9641
- @Brijendra21 made their first contribution in #9618
Full Changelog: v9.6.0...v22.2.0