-
Notifications
You must be signed in to change notification settings - Fork 421
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
Addition of Standard Effective Temperature (SET) as an Output Variable #7431
Conversation
This commit contains the code necessary to produce the SET variable for the Pierce Two-Node Thermal Comfort model. If uses wish to have SET for their run, they simply need to select Pierce as an option in the People statement and then add syntax to produce the Zone Thermal Comfort Pierce Model Standard Effective Temperature output variable.
This commit includes a new unit test for this work, documentation changes (I/O Ref) to describe the new output variable, and some other minor code cleanups.
Addition of syntax to an input file to show the new output variable.
OutputProcessor::TimeValue.allocate(2); | ||
DataGlobals::DDOnlySimulation = true; | ||
|
||
ManageSimulation(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would prefer a much more lightweight unit test. Seems you could just have zone, people, and schedules in the idf snippet and then just call the functions to process zone and people data and then CalcThermalComfortPierce.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moderately important. This should get your schedule in place, if done before processing the people:
ScheduleManager::ProcessScheduleInput();
ScheduleManager::ScheduleInputProcessed = true;
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@mjwitte Ok, it's now much more lightweight. Doesn't call anything except the Pierce subroutine. Sets every manually in the unit test now. This should be up in GitHub as of now.
src/EnergyPlus/ThermalComfort.cc
Outdated
@@ -467,6 +467,12 @@ namespace ThermalComfort { | |||
"Zone", | |||
"State", | |||
People(Loop).Name); | |||
SetupOutputVariable("Zone Thermal Comfort Pierce Model Standard Effective Temperature", | |||
OutputProcessor::Unit::None, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OutputProcessor::Unit::C ??
|
||
ASSERT_TRUE(process_idf(idf_objects)); | ||
|
||
OutputProcessor::TimeValue.allocate(2); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And when you merge in develop, this line will fail. Simply delete it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Will delete it.
Two modifications were requested during the review process. One was a simple correction of the units for this new variable. The other was a revision (rewriting) of the unit test to make it more efficient.
For some reason, this did not commit properly the first time?
New report variable added but no changes to table reports. |
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Minor editorial mods to IO Ref, correct unit test, uploaded changes.
This is ready to merge once CI has a chance to process changes. |
@RKStrand can you comment on the SET being that much above the summer design day zone temp in the figure above (e.g., occupants have on too many clothes, etc.)? The summer zone humidity ratio is actually lower than winter and zone temp is not that much different. No other code changes will be requested, just wondering if this is working as expected (i.e., if new issue should be opened). |
@rraustad I see what you are saying in the results, but I think this is actually what one would expect. SET includes both radiative and convective aspects as well as a bunch of other things. I would expect that SET would exhibit somewhat similar behavior to MAT but the surface temperatures in the space will dampen the response and make SET more closely related to outside air temperature (since that will in turn affect inside surface temperatures). So, I think that what you are seeing is actually correct--SET is lower than MAT for the most part for winter (because MRT is lower as a result of the cold exterior conditions) and SET is generally higher than MAT for summer. The "heavy" surfaces are damping the response of SET so when MAT changes rapidly like it does at the end of the work day in the summer data MAT can flip so that it is higher than SET because MAT in that situation is actually higher temporarily for that time. Basically, if one were to graph MAT, MRT, and SET, I would guess that in general SET should track between these two for the most part. Hopefully that makes sense, but if it doesn't, please let me know. Overall, I think what you are seeing is the right trend and I don't think there is a problem here that needs to be logged as a defect. Thanks for asking and for diligently checking results to see if there are additional problems! |
I can't think of a reason why this should not merge except for a complete CI assessment... |
@Myoldmopar This has met with approval from @rraustad but it sounds like there wasn't a complete CI result? Does it need to be relaunched or something? |
The CI machine itself needed to be relaunched. And it has been done. CI results should be coming in soon. |
Diff's from Coil Sizing report fixes #7435 are creeping in here. Merged that one into develop 17 hrs ago. |
Well, I was just going to merge this anyway since I understood the diff's. But it can't hurt to have a fresh clean CI result. |
@rraustad Oops--sorry to get in the way. Should have left it alone. But as you pointed out, a fresh CI can't (shouldn't) hurt. |
We've had an issue with the CI box and had to take it down. I'm working to get some extra support stood back up but this is likely to need to wait until after the weekend. |
CI machines now match with expected results. |
Pull request overview
Based on discussion on unmethours.com, there was a request to add Standard Effective Temperature (SET) as an output variable. This is calculated as part of the Pierce two-node thermal comfort model. This work fulfills this request and it is now possible to select SET as an output variable in EnergyPlus. This includes code changes, a unit test, documentation updates, and a modified test suite input file to show the use of this new output variable.
Work Checklist
Add to this list or remove from it as applicable. This is a simple templated set of guidelines.
Review Checklist
This will not be exhaustively relevant to every PR.