Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question

Revision history [back]

The problem is that the HPWH isn't recognized as a Heating component, and when OpenStudio defaults the PlantEquipmentOperationScheme for your plantLoop since you didn't explicitly create one, it finds nothing to put on it.

This can be seen by looking at the "Control" tab of the Hot Water Loop, you see it's empty:

NoHeat

This happens because your WaterHeater:Mixed Maximum Heater Capacity is hardsized to 0:

Zero Cap

Workarounds

Anyways, you can either:

  • Input a non zero-capacity in the WaterHeater:Mixed (even if extremely small, say 1 BTU/h), which is the easiest.
  • Create an explicit PlantEquipmentOperation:HeatingLoad and assign the WaterHeater:HeatPump (not the WaterHeater:Mixed) as equipment and set that to the HW Loop. You must use the (ruby) API for this.

Here's the control tab with a 1 BTU/h capacity:

image description

In both cases, your file will still crash in E+, but due to a completely different problem that has nothing to do on this thread.

** Severe  ** CalcHeatBalanceInsideSurf: The temperature of -19623.88 C for zone="DATACENTER", for surface="ZN001:WALL003"
**   ~~~   ** ..is very far out of bounds during warmup. This may be an indication of a malformed zone.

Context/More Info

The portion of source code that does this is in ForwardTranslatePlantEquipmentOperationSchemes.cpp#L418:L435.

I'm probably to blame here since I'm the one that modified this portion to perform a check - as opposed to the old way which was to always assume ComponentType::HEATING - to try to determine the true type of a WH:Mixed, which can be used as a Buffer+HX between loops that may be for cooling for eg. I didn't foresee the HPWH case, and I'm not too familiar with this object and the example files always have a capacity for the associated WaterHeater:Mixed/Stratified, but I guess that's probably just the electric/gas backup inside the tank, in which case I'd consider this a bug to fix so I opened issue#3164.