Skip to content

Correct Missing Information in Exterior Fenestration Shaded State Table#11118

Merged
mitchute merged 12 commits intodevelopfrom
10919MissingInfoExtFenestrationShadeTable
Sep 30, 2025
Merged

Correct Missing Information in Exterior Fenestration Shaded State Table#11118
mitchute merged 12 commits intodevelopfrom
10919MissingInfoExtFenestrationShadeTable

Conversation

@RKStrand
Copy link
Contributor

@RKStrand RKStrand commented Jul 9, 2025

Pull request overview

Description of the purpose of this PR

The Exterior Fenestration Shaded State Table produces information about windows when shading control is implemented by the user. The problem is that when a window without a frame/divider is entered, nothing is shown in this table. The fix here is to produce values in this table for windows whether or not the window has a frame/divider when shading control is requested by the user. When a frame/divider exists, the table will report as before. Without a frame divider, the table will now as a result of this fix show values relating to the U-Factor, SHGC, and visible transmittance for the glass only in the shaded state. This includes a unit test to verify that this is reporting properly and fixes to the documentation (Input Output Reference) to clarify what will be reported.

Expected Diffs

  • New rows in the Exterior Fenestration Shaded State Table for shaded constructions used without a frame/divider.
  • New rows in the eio output for FenestrationShadedState for shaded constructions used without a frame/divider.
  • Corrected values for Glass SHGC in the Exterior Fenestration Shaded State Table for all constructions with or without a frame/divider.

Pull Request Author

  • Title of PR should be user-synopsis style (clearly understandable in a standalone changelog context)
  • Label the PR with at least one of: Defect, Refactoring, NewFeature, Performance, and/or DoNoPublish
  • Pull requests that impact EnergyPlus code must also include unit tests to cover enhancement or defect repair
  • Author should provide a "walkthrough" of relevant code changes using a GitHub code review comment process
  • If any diffs are expected, author must demonstrate they are justified using plots and descriptions
  • If changes fix a defect, the fix should be demonstrated in plots and descriptions
  • If any defect files are updated to a more recent version, upload new versions here or on DevSupport
  • If IDD requires transition, transition source, rules, ExpandObjects, and IDFs must be updated, and add IDDChange label
  • If structural output changes, add to output rules file and add OutputChange label
  • If adding/removing any LaTeX docs or figures, update that document's CMakeLists file dependencies

Reviewer

  • Perform a Code Review on GitHub
  • If branch is behind develop, merge develop and build locally to check for side effects of the merge
  • If defect, verify by running develop branch and reproducing defect, then running PR and reproducing fix
  • If feature, test running new feature, try creative ways to break it
  • CI status: all green or justified
  • Check that performance is not impacted (CI Linux results include performance check)
  • Run Unit Test(s) locally
  • Check any new function arguments for performance impacts
  • Verify IDF naming conventions and styles, memos and notes and defaults
  • If new idf included, locally check the err file and other outputs

RKStrand added 4 commits July 3, 2025 13:45
This corrects the issue where the exterior fenestration shading state report is not producing output for valid window shading control input.  Before this report was only being populated for windows that had a frame or divider.  Now, shading control for windows without frames/dividers will also be listed in this predefined report.
Creation of a unit test to fix the issue with a report that was missing.  Plus a typo correction in a comment of the fix.
Minor tweaks and corrections to the IO Ref relating to the fix made here.  This clarifies what will be reported and when.  Also a few minor edits were made for consistency.
@RKStrand RKStrand added this to the EnergyPlus 25.2 IO Freeze milestone Jul 9, 2025
@RKStrand RKStrand requested review from Myoldmopar and mjwitte July 9, 2025 14:31
@RKStrand RKStrand self-assigned this Jul 9, 2025
@RKStrand RKStrand added Defect Includes code to repair a defect in EnergyPlus OutputChange Code changes output in such a way that it cannot be merged after IO freeze labels Jul 9, 2025
@github-actions
Copy link

github-actions bot commented Jul 9, 2025

⚠️ Regressions detected on macos-14 for commit 0b62fb2

Regression Summary
  • Audit: 20
  • Table Big Diffs: 6
  • Table String Diffs: 12

Copy link
Contributor

@mjwitte mjwitte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested with WindowTests.idf. The table is populated now, but the U-Factor and SHGC values are identical to the unshaded construction. VT does vary.

The values reported in the exterior fenestration shaded state table were not correct as they were using the unmodified glass values.  This has been corrected.  Modification to the unit test was also necessary.
@RKStrand
Copy link
Contributor Author

Tested with WindowTests.idf. The table is populated now, but the U-Factor and SHGC values are identical to the unshaded construction. VT does vary.

@mjwitte I have fixed this in the latest commit that I just made. I believe that the report should be correct now. The unit test also had to be updated to reflect this change.

@RKStrand RKStrand requested a review from mjwitte July 15, 2025 13:13
@github-actions
Copy link

⚠️ Regressions detected on macos-14 for commit 8d0e8fc

Regression Summary
  • Audit: 20
  • Table Big Diffs: 6
  • Table String Diffs: 12

@mjwitte
Copy link
Contributor

mjwitte commented Jul 24, 2025

Hmm. I made a test file that adds a skinny frame to all the windows in Windowtests. The new reported values for shaded glass SHGC and VT agree with the value with a frame (same for develop and this branch).
image
image
Glass U-factors are slightly different with the frame for some reason, but that's not a problem for me.

But the shaded SHGC looks wrong (both with frame and without). You can look into that here, or make a new issue for that, or prove me wrong. It just seems impossible the the glass SHGC for Double Pane with Drapes is 0.746 when the unshaded SHGC is 0.764 and the assembly SHGC is 0.077.
image
WindowTests-AddFrames.idf.txt

@RKStrand
Copy link
Contributor Author

@mjwitte I guess I am still somewhat uncertain as to what specifically this table is trying to show. Are the "Glass" values supposed to be the "unshaded" (only glass without the shading element) values or something else? In other words, are the glass values for the DP with screen supposed to be the values for the glass only without a screen and then the assembly values for everything including the screen? Initially, I thought that was the case, but now I'm unsure what this report is trying to show. What I can say is that right now, the values being reported for "Glass" are the same for no frame and divider and when the skinny frame/divider is present other than a minor adjustment to the U-value. In other words, the code now is doing the same thing for this report whether there is a frame/divider or not which is an improvement. Whether the code is actually producing/reporting the correct value is a different mater. I don't disagree with what you wrote, but I'm also not sure In know the answer. I think I'm more leaning towards someone who has more knowledge about the window code to take a look at this in a separate issue. Do you have any additional thoughts? Do we have anyone on the team currently who has expertise in this area that could speak to what the values should be?

@mjwitte
Copy link
Contributor

mjwitte commented Jul 28, 2025

@mjwitte I guess I am still somewhat uncertain as to what specifically this table is trying to show. Are the "Glass" values supposed to be the "unshaded" (only glass without the shading element) values or something else? In other words, are the glass values for the DP with screen supposed to be the values for the glass only without a screen and then the assembly values for everything including the screen? Initially, I thought that was the case, but now I'm unsure what this report is trying to show. What I can say is that right now, the values being reported for "Glass" are the same for no frame and divider and when the skinny frame/divider is present other than a minor adjustment to the U-value. In other words, the code now is doing the same thing for this report whether there is a frame/divider or not which is an improvement. Whether the code is actually producing/reporting the correct value is a different mater. I don't disagree with what you wrote, but I'm also not sure In know the answer. I think I'm more leaning towards someone who has more knowledge about the window code to take a look at this in a separate issue. Do you have any additional thoughts? Do we have anyone on the team currently who has expertise in this area that could speak to what the values should be?

It should be the shaded glazing without any allowance for the frame. I'll just post a new issue for this.;

Copy link
Contributor

@mjwitte mjwitte left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@RKStrand This looks good. I've merged in develop and will let CI run one last time before merging.
Also posted a new issue #11149 about the shaded Glass SHGC values.

@github-actions
Copy link

⚠️ Regressions detected on macos-14 for commit 1aedb3e

Regression Summary
  • Audit: 20
  • Table Big Diffs: 6
  • Table String Diffs: 12

@mjwitte
Copy link
Contributor

mjwitte commented Aug 13, 2025

@RKStrand I think I see the problem with the shaded SHGC values. I'm going to try to fix that in this same PR.

@mjwitte mjwitte self-assigned this Aug 13, 2025
@RKStrand
Copy link
Contributor Author

@mjwitte Cool--hope that isn't much of a time commitment...

@mjwitte
Copy link
Contributor

mjwitte commented Aug 13, 2025

@RKStrand See what you think of this change. Also, I noticed that the shaded states get written to the eio file for windows with frames, can you please add that here as well for the unframed shaded states?

Here's the new results with the one-line fix for #11149
WindowTests-AddFrames
image

WindowTests
image

@github-actions
Copy link

⚠️ Regressions detected on macos-14 for commit 5c8d8f4

Regression Summary
  • Table Big Diffs: 24
  • Audit: 20
  • Table String Diffs: 12
  • EIO: 4

@RKStrand
Copy link
Contributor Author

@mjwitte Just trying to clarify, are you asking that reporting for unframed shaded windows also be sent to the EIO?

@mjwitte
Copy link
Contributor

mjwitte commented Aug 13, 2025

@mjwitte Just trying to clarify, are you asking that reporting for unframed shaded windows also be sent to the EIO?

Yes, please, if it's not too much trouble.

@RKStrand
Copy link
Contributor Author

@mjwitte Thanks for clarifying. I'll look into it and get back to you. I don't think it should be too much trouble but of course I could always be wrong here.

The information that was added to the HTML tabular report was not reporting to the EIO like it does for windows with frames/dividers.  This corrects this issue and now reports to the EIO.
@RKStrand
Copy link
Contributor Author

@mjwitte I have just made a commit that has the windows without frames/dividers print out the information to the EIO as you requested. Let me know if this looks good or if there's still something to be done here. Assuming that this passes all the tests as I just added something to the EIO and it did work as anticipated for WindowTest.idf.

@github-actions
Copy link

⚠️ Regressions detected on macos-14 for commit 981a9f3

Regression Summary
  • Table Big Diffs: 24
  • Audit: 20
  • EIO: 20
  • Table String Diffs: 12

@mjwitte
Copy link
Contributor

mjwitte commented Aug 18, 2025

@RKStrand Thanks for adding the eio output, but it was writing the same construction multiple times. I added a check to avoid duplication and noticed that the check for shaded constructions with frames could be moved up to avoid duplicate writes to the predefined report. Let's see how CI likes this.

@github-actions
Copy link

⚠️ Regressions detected on macos-14 for commit 6b2c30c

Regression Summary
  • Table Big Diffs: 24
  • Audit: 21
  • EIO: 20
  • Table String Diffs: 12

@mjwitte
Copy link
Contributor

mjwitte commented Aug 19, 2025

Here's an example of the new eio lines for WindowTests.idf:
image

@mjwitte
Copy link
Contributor

mjwitte commented Aug 19, 2025

@Myoldmopar Assigning this to you for final review and merge.

@mjwitte mjwitte assigned Myoldmopar and unassigned mjwitte Aug 19, 2025
@nrel-bot-2
Copy link

@Myoldmopar @RKStrand @Myoldmopar it has been 36 days since this pull request was last updated.

@mitchute mitchute self-requested a review September 24, 2025 18:37
@github-actions
Copy link

⚠️ Regressions detected on macos-14 for commit c946144

Regression Summary
  • Table Big Diffs: 24
  • Audit: 21
  • EIO: 20
  • Table String Diffs: 12

@github-actions
Copy link

⚠️ Regressions detected on ubuntu-24.04 for commit c946144

Regression Summary
  • Table Big Diffs: 24
  • Audit: 24
  • EIO: 22
  • Table String Diffs: 14

@mitchute mitchute merged commit 23160a0 into develop Sep 30, 2025
11 checks passed
@mitchute mitchute deleted the 10919MissingInfoExtFenestrationShadeTable branch September 30, 2025 00:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Defect Includes code to repair a defect in EnergyPlus OutputChange Code changes output in such a way that it cannot be merged after IO freeze

Projects

None yet

6 participants