-
Notifications
You must be signed in to change notification settings - Fork 194
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Null Value for field !- Basin Heater Setpoint Temperature {C} Causes Error #5297
Comments
OS SDK sets it to 2.0 here:
There is no reset method. The minimum of 2.0 is enforced at model namespace too. The hvac_library.osm from the OS App also has it as 2.0: https://github.com/openstudiocoalition/OpenStudioApplication/blob/d279ff272cfc21743179fdf154121ca3de373c6b/src/openstudio_app/Resources/default/hvac_library.osm#L5274C1-L5274C83 So it seems like an error on your end.
|
@jmarrec Indeed I was mistaken. The basin heater capacity defaults to 0, but the setpoint temperature should default to 2°C, but it doesn't: From the Input/Output reference: This must be an EnergyPlus issue then. Please see this example OSM File: gets translated to IDF: 0, !- Basin Heater Setpoint Temperature {C} |
@Ski90Moo your file has a blank for the field
Which should never actually happen to begin with. When you instantiate the object, it is filled
And there is no resetter to clear it. So the question is more about how you ended up in this situation. Did you modify the OSM in text mode, or call |
@jmarrec I modified the OSM file. I am working on custom curves for a specific type of equipment. The equipment does not have a basin heater, so I left it as the null value, assuming EnergyPlus would just input the default value, which it did. But it seems the EP default value causes an EP fatal error. Should I lodge this as an issue on EnergPlus then? |
Up to you. |
I believe this is a forward translator issue. EP correctly inputs a value of "2" if left blank. OS forward translator inputs a value of "0" if left blank. |
Like I said above, as far as the OpenStudio SDK is concerned, it works as expected. It's just a user issue. We prevent you from inputting a blank (there is no reset), or anything < 2.0.
If you do that manually and purposefully, it's on you. This is essentially what you're doing here: include OpenStudio::Model
m = Model.new
a = AirConditionerVariableRefrigerantFlow.new(m)
vrf_tu = ZoneHVACTerminalUnitVariableRefrigerantFlow.new(m)
a.addTerminal(vrf_tu)
# Set the Basin Heater Setpoint Temperature to blank
# This is impossible in model SDK, without manually changing the OSM or calling setString (which you should NOT do)
a.setString(65, "")
ft = OpenStudio::EnergyPlus::ForwardTranslator.new
w = ft.translateModel(m)
puts w.getObjectsByType("AirConditioner:VariableRefrigerantFlow") Here is the output, the BOOST_ASSERT Fatal error should be an indication...
|
The main difference between Using the low-level (setString) setters in model namespace, albeit possible, is definitely not supported and very strongly not recommended, because you can shoot yourself in the foot and break the rules of the model namespace resulting in a broken model. Just like it would be a terrible idea to grab an OS:Connection object manually and remove it. |
Ok, thank you for the elightenment! @jmarrec |
Issue overview
Field 30 (!- Basin Heater Setpoint Temperature {C}) of the object OS:AirConditioner:VariableRefrigerantFlow causes the following error when left as the default (null) value:
"eplusout_err" : "Program Version,EnergyPlus, Version 24.1.0-9d7789a3ac, YMD=2024.11.09 15:31,\n ** Severe ** [AirConditioner:VariableRefrigerantFlow][Mitsubishi P72TNU_YNU NONDUCTED-VRF-OU][basin_heater_setpoint_temperature] - "0.000000" - Expected number greater than or equal to 2.000000\n ** Fatal ** Errors occurred on processing input file. Preceding condition(s) cause termination.\n ...Summary of Errors that led to program termination:\n ..... Reference severe error count=1\n ..... Last severe error=[AirConditioner:VariableRefrigerantFlow][Mitsubishi P72TNU_YNU NONDUCTED-VRF-OU][basin_heater_setpoint_temperature] - "0.000000" - Expected number greater than or equal to 2.000000\nof
From the InputOutput reference: "The basin heater capacity must be greater than or equal to zero, with a default value of zero if this field is left blank."
The default (null) value should not cause an error. Recommend the default value be changed to the expected.
Current Behavior
Expected Behavior
Steps to Reproduce
Possible Solution
Details
Environment
Some additional details about your environment for this issue (if relevant):
Context
The text was updated successfully, but these errors were encountered: