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

Allow ZoneHVAC:WindowAirConditioner with Airflow Network simulations #10617

Merged
merged 2 commits into from
Jul 25, 2024

Conversation

lymereJ
Copy link
Collaborator

@lymereJ lymereJ commented Jul 22, 2024

Pull request overview

This pull request allows simulations using the Airflow Network feature to proceed if a ZoneHVAC:WindowAirConditioner is included in a model only and only if its outdoor air flow rate is 0.

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

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

@lymereJ lymereJ added NewFeature Includes code to add a new feature to EnergyPlus AirflowNetwork Related primarily on airflow-network portions of the codebase labels Jul 22, 2024
@lymereJ lymereJ added this to the EnergyPlus 24.2 IOFreeze milestone Jul 22, 2024
Copy link
Collaborator Author

@lymereJ lymereJ left a comment

Choose a reason for hiding this comment

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

Walkthrough:

Comment on lines +10279 to +10284

// Skip Window AC with no OA
if (GetWindowACNodeNumber(m_state, i)) {
NodeFound(i) = true;
WindowACFound = true;
}
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Use the same approach as before by calling a function that checks if a node is part of a ZoneHVAC:WindowAirConditioner and if so allows it to exist without being part of the AFN.

Comment on lines +1513 to +1517
if (windowAC.OutAirVolFlow == 0) {
windowACOutdoorAir = true;
} else {
windowACOutdoorAir = false;
}
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Only allow ZoneHVAC:WindowAirConditioners that do not provide outdoor air to not interfere with the AFN.

Copy link
Member

@jasondegraw jasondegraw left a comment

Choose a reason for hiding this comment

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

This is using the same approach that we agreed upon for the other components that fall into the "unsupported equipment" category (in retrospect, maybe that wasn't the best name to choose, but it's OK), so this looks good to me.

Copy link
Member

@Myoldmopar Myoldmopar left a comment

Choose a reason for hiding this comment

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

Yeah this looks all good.

}
}
return false;
}
Copy link
Member

Choose a reason for hiding this comment

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

I could nitpick here,

  • windowACOutdoorAir = windowAC.OutAirVolFlow == 0;
  • Why are you declaring the node indexes equal to zero and immediately reassigning them?
  • The logic in the node number IF check is pretty difficult to read, could it be written in a more meaningful/readable way?

None of these are actual requests unless there is other work that needs done.

@Myoldmopar
Copy link
Member

All happy with develop pulled in, let's get this merged. Thanks @lymereJ and @jasondegraw

@Myoldmopar Myoldmopar merged commit 980120d into develop Jul 25, 2024
15 checks passed
@Myoldmopar Myoldmopar deleted the allow_windowac_afn branch July 25, 2024 20:52
lymereJ added a commit that referenced this pull request Aug 2, 2024
Myoldmopar added a commit that referenced this pull request Aug 16, 2024
Follow up to #10617 and allow other `ZoneHVAC:*` component with Airflow Network simulations
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AirflowNetwork Related primarily on airflow-network portions of the codebase NewFeature Includes code to add a new feature to EnergyPlus
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants