Skip to content

Conversation

@mitchute
Copy link
Collaborator

@mitchute mitchute commented Feb 3, 2026

Pull request overview

Description of the purpose of this PR

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
  • If adding/removing any output files (e.g., eplustbl.*)
    • Update ..\scripts\Epl-run.bat
    • Update ..\scripts\RunEPlus.bat
    • Update ..\src\EPLaunch\ MainModule.bas, epl-ui.frm, and epl.vbp (VersionComments)
    • Update ...github\workflows\energyplus.py

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

@mitchute mitchute requested a review from rraustad February 3, 2026 14:31
@mitchute mitchute self-assigned this Feb 3, 2026
@mitchute mitchute added the Defect Includes code to repair a defect in EnergyPlus label Feb 3, 2026
@mitchute
Copy link
Collaborator Author

mitchute commented Feb 3, 2026

Before and after

Screenshot from 2026-02-03 07-36-05 Screenshot from 2026-02-03 07-36-57

Copy link
Collaborator Author

@mitchute mitchute left a comment

Choose a reason for hiding this comment

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

Walk through


[![](https://github.com/NatLabRockies/EnergyPlus/workflows/Code%20Integrity/badge.svg)](https://github.com/NatLabRockies/EnergyPlus/actions/workflows/test_code_integrity.yml)
[![](https://github.com/NatLabRockies/EnergyPlus/workflows/Documentation/badge.svg)](https://github.com/NatLabRockies/EnergyPlus/actions/workflows/build_documentation.yml)
[![](https://github.com/NatLabRockies/EnergyPlus/actions/workflows/test_code_integrity.yml/badge.svg?branch=develop)](https://github.com/NatLabRockies/EnergyPlus/actions/workflows/test_code_integrity.yml)
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Unrelated. Pinning the README badges to the develop branch.

Comment on lines +7233 to +7238
if (ort->MonthlyColumns(curCol).duration(lMonth) > 0) {
sumVal += ((ort->MonthlyColumns(curCol).reslt(lMonth) / ort->MonthlyColumns(curCol).duration(lMonth) *
curConversionFactor) +
state.dataOutRptTab->curConversionOffset) *
ort->MonthlyColumns(curCol).duration(lMonth);
}
Copy link
Collaborator Author

@mitchute mitchute Feb 3, 2026

Choose a reason for hiding this comment

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

We have to divide reslt(lMonth) by the monthly duration, convert the units, then multiply back in the monthly duration so the annual average can be calculated later.

@mitchute
Copy link
Collaborator Author

mitchute commented Feb 3, 2026

No diffs are shown here because CI only runs design day simulations. Running regressions without forcing DD should show diffs on PurchAirTables, PurchAirTables_wAnnual, and _SmallOffice_Dulles test files.

@rraustad
Copy link
Collaborator

rraustad commented Feb 9, 2026

The defect file table results do look good now and nearly within the summation tolerance due to rounding. Certainly much better than the 17.61 F previously reported. I used the same weather file as the defect file and matched the monthly temps. The table shows an average of 49.57 F while the sum of the monthly values divided by 12 is 49.45 F. A difference of 0.12 F for the first column. If rounding gives a monthly value within 0.005 F then 0.005 * 12 = 0.06 should be the max diff between the reported and calculated average? I was hoping to see each of the table averages to be within 0.06 of my calculated average. It's pretty darn close so maybe good enough, or maybe my tolerance value is off for some reason? Adding the weighted average of these monthly temperatures shows an exact match to the reported table values.

image

@mitchute
Copy link
Collaborator Author

mitchute commented Feb 9, 2026

The averages are weighted by the duration of each month. If you do that, I think you'll see it all line right up.

@rraustad
Copy link
Collaborator

rraustad commented Feb 9, 2026

I replaced the figure above with the weighted average at bottom right. Right on the money.

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.

Incorrect annual average for monthly IP temperature outputs

3 participants