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

Water to air heat pump are still sized to an infinite capacity #10140

Closed
2 of 3 tasks
lymereJ opened this issue Aug 7, 2023 · 0 comments · Fixed by #10141
Closed
2 of 3 tasks

Water to air heat pump are still sized to an infinite capacity #10140

lymereJ opened this issue Aug 7, 2023 · 0 comments · Fixed by #10141
Labels
Defect Includes code to repair a defect in EnergyPlus

Comments

@lymereJ
Copy link
Collaborator

lymereJ commented Aug 7, 2023

Issue overview

This issue is similar to #9805.

The capacity of one of the coil is sized to infinity:

Component Sizing Information, COIL:HEATING:WATERTOAIRHEATPUMP:EQUATIONFIT, DATACENTER_TOP_ZN_6 ZN PSZ-AC DATA CENTER WATER-TO-AIR HP HTG COIL, Design Size Rated Heating Capacity [W], INF

Running the defect file in the debugger shows that this is occurring because RatedHeatCapTempModFac which in this instance is == 0 is used here as a denominator. This is occurring because the value of the modifier is initialized to 0 and the heating design flow rate, while greater than 0, is very small so RatedHeatCapTempModFac is never updated because we check whether or not the flow rate is greater than a small airflow here:

VolFlowRate = HeatingAirVolFlowRateDes;
} else {
VolFlowRate = CoolingAirVolFlowRateDes; // system air flow
}
// heating design day calculations
if (VolFlowRate >= DataHVACGlobals::SmallAirVolFlow) {
auto &finalSysSizing(state.dataSize->FinalSysSizing(state.dataSize->CurSysNum));
if (state.dataSize->CurOASysNum > 0) { // coil is in the OA stream
HeatMixTemp = finalSysSizing.HeatOutTemp;
HeatMixHumRat = finalSysSizing.HeatOutHumRat;
HeatSupTemp = finalSysSizing.PreheatTemp;
} else { // coil is on the main air loop
if (VolFlowRate > 0.0) {
HeatOutAirFrac = finalSysSizing.DesOutAirVolFlow / VolFlowRate;
HeatOutAirFracSys = finalSysSizing.DesOutAirVolFlow / RatedAirVolFlowRateDes;
} else {
HeatOutAirFrac = 1.0;
HeatOutAirFracSys = HeatOutAirFrac;
}
HeatOutAirFrac = min(1.0, max(0.0, HeatOutAirFrac));
HeatOutAirFracSys = min(1.0, max(0.0, HeatOutAirFracSys));

Details

Some additional details for this issue (if relevant):

  • Platform: Windows
  • Version of EnergyPlus: 23.1

Checklist

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

  • Defect file added
  • Ticket added to Pivotal for defect (development team task)
  • Pull request created
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 a pull request may close this issue.

1 participant