Skip to content

Zone multiplier incorrectly applies to water heater tank losses #10168

@shorowit

Description

@shorowit

Issue overview

When you have a zone multiplier, all internal gains from e.g. Equipment objects are multiplied before the load is calculated for the HVAC system. Good.

However, water heater tank losses are calling the same zone internal gain method (SetupZoneInternalGain method for the mixed tank water heater, for example), so the zone multiplier is being applied here as well. The tank losses should not be multiplied by the zone multiplier because, if you are actually trying to model a thermal zone that represents X units, each with its own water heater, you still have to either model 1 water heater with 4x the tank losses or model 4 water heaters -- so the zone multiplier ends up double counted.

A solution could be to update the WaterThermalTankData::setupZoneInternalGains method and pass the tank losses divided by the zone multiplier to the SetupZoneInternalGain method to counteract that the zone multiplier will be applied. That said, there are probably other objects that have this issue too, so perhaps the SetupZoneInternalGain method needs to be updated instead.

cc @mjwitte

Details

Some additional details for this issue (if relevant):

  • Platform (Operating system, version)
  • Version of EnergyPlus (if using an intermediate build, include SHA)
  • Unmethours link or helpdesk ticket number

Checklist

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

  • Defect file added (list location of defect file here)
  • Ticket added to Pivotal for defect (development team task)
  • Pull request created (the pull request will have additional tasks related to reviewing changes that fix this defect)

Metadata

Metadata

Assignees

Labels

DefectIncludes code to repair a defect in EnergyPlus

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions