Skip to content
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

Fix issue #8680 crash with multiple windows with blinds in the same zone #8681

Merged
merged 2 commits into from
Apr 8, 2021

Conversation

xuanluo113
Copy link
Contributor

@xuanluo113 xuanluo113 commented Mar 31, 2021

Pull request overview

Fixed a typo.

Pull Request Author

Add to this list or remove from it as applicable. This is a simple templated set of guidelines.

  • 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

This will not be exhaustively relevant to every PR.

  • 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

@xuanluo113 xuanluo113 added the Defect Includes code to repair a defect in EnergyPlus label Mar 31, 2021
@xuanluo113 xuanluo113 added this to the EnergyPlus 9.5.0 milestone Mar 31, 2021
@xuanluo113 xuanluo113 self-assigned this Mar 31, 2021
@xuanluo113 xuanluo113 requested review from jmarrec and mjwitte March 31, 2021 18:51
@@ -11946,7 +11946,7 @@ void CalcWinTransDifSolInitialDistribution(EnergyPlusData &state)
construct_sh_BlAbsDiffBack(std::min(MaxSlatAngs, SurfWinSlatsAngIndex + 1), IGlass),
SurfWinSlatsAngInterpFac);
} else {
BlAbsDiffBk = construct_sh_BlAbsDiffBack(1, Lay);
BlAbsDiffBk = construct_sh_BlAbsDiffBack(1, IGlass);
Copy link
Contributor

@jmarrec jmarrec Apr 1, 2021

Choose a reason for hiding this comment

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

Original regression from 57aa34f#diff-18fbb8a5b1334b62513de2441bdb4bb4ef1fbe5fbec24d5dd0effcd019dfc33dR10986

I think It should be IGlass indeed, fix looks good to me 👍

@xuanluo113
Copy link
Contributor Author

@jmarrec Thanks for the review. This branch is still hanging. Is this coverage issue blocking the merge?

@mjwitte
Copy link
Contributor

mjwitte commented Apr 6, 2021

@xuanluo113 I agree that the fix is correct, but I'm concerned that this was not caught by the CI regression/integration tests. What feature in the defect file trips on this defect? We should consider adding a unit test or modifying an integration test file to cover this code. Also, does the integration and unit test code coverage show any other blocks of code in the solars hading functions that are not covered?

@xuanluo113
Copy link
Contributor Author

@mjwitte It seems to need two windows in the same enclosure on different walls (with a view factor for each other), and at least one of them has blinds to trigger this branch.
The OS test file @jmarrec provided includes this case with Sub Surface 4 and Sub Surface 4 in the same zone, and both has interior blinds.

I can modify the current PurchAirWindowBlind.idf to add another exterior window on the west wall of the West zone (attached) and hopefully would solve this. Any suggestions?

Screen Shot 2021-04-07 at 12 10 07 PM

Screen Shot 2021-04-07 at 11 15 57 AM

@mjwitte
Copy link
Contributor

mjwitte commented Apr 7, 2021

@xuanluo113 That would be good. Please make a separate PR for that testfile change, to confirm that CI reports a failure.

@xuanluo113
Copy link
Contributor Author

@mjwitte Thanks. Updated in #8702.

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 this branch with the modified PurhAirWindowBlind (from #8702 ) and compared results with v9.4.0. No diffs (except in thermal comfort outputs which are expected from 9.4 to 9.5). This will merge once CI comes back green.

@mjwitte
Copy link
Contributor

mjwitte commented Apr 8, 2021

Clean and green. Merging.

@mjwitte mjwitte merged commit 2f8b251 into develop Apr 8, 2021
@mjwitte mjwitte deleted the fix-inter-glass-layer branch April 8, 2021 20:17
@mjwitte mjwitte changed the title Fix issue #8680 Fix issue #8680 crash with multiple windows with blinds in the same zone Apr 8, 2021
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
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Segmentation fault in CalcWinTransDifSolInitialDistribution
8 participants