-
Notifications
You must be signed in to change notification settings - Fork 157
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
Add Spawn option to report a list of supported output and actuator variables #2223
Comments
This option on spawn executable will output a json string of all supported EnergyPlus output variables. The json structure also includes the EnergyPlus and Modelica units corresponding to each variable. ref lbl-srg/modelica-buildings#2223
spawn --output-vars reports this....
|
@kbenne : Please let me know when this is ready for testing. It looks like you need to press the publish button as |
That is correct I did not publish the binaries, however I think the --output-vars feature is complete and fine to go ahead and take a look at. The CI system built and tested this commit however, the artifacts only stay around in GitLab CI for about a day so they are no longer available for me to publish. I just requested a rebuild and scheduled them to publish. You can see that happening here. |
builds are done and have posted. No promises, but it would make sense to post a github badge when there is a package available on a particular commit. I'll try to make some time to do that. |
Are you writing the unit strings, or do they come directly from EnergyPlus? If you write them, can you please change |
I write them, so yes I can do that. |
Once #2223 (comment) is addressed, the new binaries need to be committed. Otherwise all code is done to automatically update the list of output variables in |
@kbenne Can you please address #2223 (comment) so we can wrap up this item. |
@mwetter done. |
@kbenne : Is it normal that both mac builds are "stuck", see https://gitlab.com/kylebenne/spawn/-/pipelines?scope=all&page=1 |
@mwetter This is a low budget enterprise over here! While the linux and windows build system runs on Amazon VMs, the Mac is a humble repurposed laptop sitting on my desk. He decided to take a little nap over the holiday. I guess he figured I was on vacation so he should be too. |
We all need a nap sometime... |
Builds are done now. |
This is similar to --output-vars which reports the available output variables. The new option --actuators reports available actuators ref lbl-srg/modelica-buildings#2223
@mwetter I'm tagging onto this issue to add --actuators.
Also, I have made a change to the --output-vars format. Previously the output was a dictionary where the keys were the output variable name. For actuators, there is no unique field that can serve as a key, so as you see in the example the actuators are reported as a simple array of objects. I thought for consistency it made sense to flatten the --output-vars format to look the same as the --actuators format. So it is now the following....
If this is going to be a problem I can change it back, but I definitely prefer the consistency. |
@kbenne : I can update the scripts on my side for the new format. Please publish at https://gitlab.com/kylebenne/spawn/-/pipelines?scope=all&page=1 when you are done. |
@kbenne : There is a discrepancy between what But spawn requires
This is on branch Any idea what causes this? |
I'm not sure I'm parsing the question correctly. I think maybe you are asking about differences related to how "Electric Power Level" is referenced. EnergyPlus recently changed how it references to electric power. It was "Electricity Rate" and now it is "Electric Power Level" (or maybe I have that backwards). These control type strings are hard coded into spawn, because EnergyPlus does not have a schema that we can pull from. One problem is that they can get out of date and it is easy to overlook the change, which might be happening here. I'll take a look, and maybe also devise a test using simulation and parsing the generated EMS data dictionary to confirm the values are correct. |
It looks like the hard-coding is indeed the cause of the problem. This name changed between E+ 9.4 and 9.5, and the string received from |
@kbenne : With the update of the idf files from 9.4 to 9.5, some results changed quite a bit. For example, |
Todo:
|
I will have an update to address this and add a test to catch future cases of this soon. |
Quantitative changes in results are common, they are tracked on a PR basis and normally have to be justified. The CI runs results regression continuously. I might be able to get a comparison of this model between vanilla EnergyPlus 9.4 and 9.5. 7% does seem a bit high. Especially considering that this would be exclusively of any diffs caused by HVAC changes. |
* Added test case for #2314 * Updated install script for #2223 * Changed code for new json structure of output variables * Copied file from E+ v9.5.0-IOFreeze Copied file and added Output:EnergyManagementSystem section * Updated controlType to 'Electricity Rate' * Updated documentation for actuators * Added new binaries. These are for E+ 9.5.0 * Copied file from E+ v9.5.0-IOFreeze * Removed outputs to avoid E+ warning * Added text because table is for EnergyPlus 9.4 and not 9.5 * Exclude Spawn E+ model for csv generation This is because they used E+ 9.5 which has not yet been released
@kbenne : Are the actuator names reported by E+ with
current to the respective E+ version? My documentation still has the section #2223 (comment) which I can remove if the names are consistent with the shipped E+ version. |
@kbenne : Can #2223 (comment) be closed? |
Update spawn's list of supported actuators according to the 9.5.0 release version of EnergyPlus. Also add test to catch future changes, by parsing the EnergyPlus .edd file. ref lbl-srg/modelica-buildings#2223
I addressed this in NREL/Spawn@7cc34b1 |
I will close this as the variables are updated with 3ca165b |
This is now corrected on the master |
As part of this feature, also create a log file if an output variable name is requested that is not valid or unsupported.
The text was updated successfully, but these errors were encountered: