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

Add function to determine expected outlet temperature. #202

Open
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

spahrenk
Copy link
Contributor

Description

  • Provides the following public HPWH member function:
    double getExpectedOutletT_C(const double inletT_C, const double drawVolume_L, const double inletVol2_L = 0., const double inletT2_C = 0.);
  • The return value is the outlet temperature (in degC) to be expected at the end of the next time step.
  • HPWHsim already performs the draw calculation at the beginning of each time step, while simultaneously updating the tank temperatures. (Processes such as standby loss, inter-node heat transfer, heat addition, and heat-source switching occur subsequently.) This function merely preserves the initial tank temperatures, performs the draw, then restores the tank temperatures to their initial values. The returned value is precisely equal to that produced by the full simulation, using the same input parameters.
  • An additional HPWHsim unit test for this feature was added. All cse tests are passed.

Author Progress Checklist:

  • Open draft pull request
    • Make title clearly understandable in a standalone change log context
    • Assign yourself the issue
    • Add at least one label (enhancement, bug, or maintenance)
    • Link the issue(s) addressed by this PR (under "Development" in the sidebar menu)
  • Make code changes (if you haven't already)
  • Self-review of code
    • My code follows the style guidelines of this project
    • I have added comments to my code, particularly in hard-to-understand areas
    • I have only committed the necessary changes for this fix or feature
    • I have made corresponding changes to the documentation
    • My changes generate no new warnings
    • I have ensured that my fix is effective or that my feature works as intended by:
      • exercising the code changes in the test framework, and/or
      • manually verifying the changes (as explained in the the pull request description above)
    • My changes pass all local tests
    • My changes successfully passes CI checks
    • Add any unit test for proof and documentation.
    • Merge in main branch and address resulting conflicts and/or test failures.
  • Move pull request out of draft mode and assign reviewers
  • Iterate with reviewers until all changes are approved
    • Make changes in response to reviewer comments
    • Merge in main branch and address resulting conflicts and/or test failures.
    • Re-request review in GitHub

Reviewer Checklist:

  • Read the pull request description
  • Perform a code review on GitHub
  • Confirm all CI checks pass and there are no build warnings
  • Pull, build, and run automated tests locally
  • Perform manual tests of the fix or feature locally
  • Add any review comments, if applicable
  • Submit review in GitHub as either
    • Request changes, or
    • Approve
  • Iterate with author until all changes are approved

@spahrenk spahrenk self-assigned this Feb 27, 2024
@spahrenk spahrenk requested a review from nealkruis February 27, 2024 16:57
@spahrenk spahrenk marked this pull request as ready for review March 21, 2024 19:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants