-
Notifications
You must be signed in to change notification settings - Fork 448
Description
Issue overview
There is an issue with how a specific severe error message gets written by EnergyPlus.
EnergyPlus uses PLR values from 0 (or the min curve independent variable input field) to 1 in increments of 0.1 to calculate the resulting EIR-F-PLR curve value at each PLR value.
If any of those are EIR-F-PLR values are negative, then it will generate a severe error and stop the run. However, in the following example no EIR-F-PLR values reported in the error message are negative -- they only go down to 0.
image (1).png
Recreating this check in Modelkit, I am getting negative values when PLR <= 0.15 (using PLR increments of 0.05 instead of 0.1)
image (2).png
Any PLR less than or equal to 0.15 will get the value that the curve evaluates to at 0.15. This value is -0.008222. When you multiply this by 100 you get -0.8222. When you convert this to an integer, you get 0. So the error message is misleading due to the way it is rounding the value. This is legacy code from before EnergyPlus adopted a better formatter that manages rounding.
Attached full IDF, with specific chiller curve object involved summarized below.
Curve:Quadratic,
custom_chiller Chiller PLR Curve, !- Name
-0.11519596634680696, !- Coefficient1 Constant
0.6582045440515927, !- Coefficient2 x
0.3663655959196781, !- Coefficient3 x**2
0.15, !- Minimum Value of x
1, !- Maximum Value of x
, !- Minimum Curve Output
, !- Maximum Curve Output
, !- Input Unit Type for X
; !- Output Unit Type
Operating System (Multiple choices)
Any
Operating System Version
Any
Version of EnergyPlus
25.1.0
Unmethours link or helpdesk ticket number
N/A
Defect file

