HB Energy Balance by zone

Hello Community,

I’m simulating a small house in Uruguay using Honeybee. I’ve obtained some results, but to properly evaluate them I want to analyze the energy balance. The problem is that I’m only able to analyze the balance for the whole building, not per zone. However, I really need to analyze it by zone, because from what I’m seeing in the results, I suspect there’s something wrong with the model: it only shows solar radiation loads in the zone that includes the living-dining-kitchen area, which is separated by an AirWall.

In other models, I used to analyze the energy balance per zone by creating a list of Rooms, and it worked. But now it gives me an error and doesn’t allow me to do that.

While I’m asking, I’d also appreciate it if anyone could check whether the adjacency solution between zones is correct — I suspect that might also be affecting the results.

I’ve marked the problematic code in red.

Thank you very much for your help!

vivienda-unifamiliar-consulta-balanceEnergtico.gh (306.4 KB)

Hey @cerianipascual ,

Yes, AirBoundaries mean that EnergyPlus no longer computes the solar load on a room-by-room basis and instead computes it on an enclosure basis. Enclousre is defined as the contiguous volume of all Rooms connected by AirBoundaries.

So, if you badly need solar results on the room level, then you can either build the load balance with the HB Annual Loads component, which is designed to compute load balances for Rooms instead of a whole model. Or you could change the air boundaries in your model to have opaque constructions while still having the AirBoundary face type. This will model air flow across the air boundary while using a radiant calculation that is still on a room by room basis. Here is an example of how to set this up:

Hi Chris,

Thank you very much for your prompt and detailed response. Everything is clear now. I went with your suggestion to create an opaque surface, and I believe the model is working better now.

Regarding your recommendation to use the HB Annual Loads component, I tried it, but I’m getting an error that I can’t figure out. I suspect I’m connecting something incorrectly.

I have a question: if I connect a component that outputs Rooms before the HB Airflow Network (AFN) component, does that override the airflow network configuration for the simulation?

Also, when I connect a component with a Room output, I get a message saying there are duplicated doors. I don’t understand why, since the doors in question are for the bathroom and bedroom. I assume this happens because I defined them in the adjacency resolution component for both the hallway and the adjacent spaces. As far as I know, that’s how it’s usually handled in EnergyPlus. However, it seems this component doesn’t allow that configuration.

vivienda-unifamiliar-consulta-balanceEnergtico.gh (353.6 KB)

I’ve marked the problematic part of the code in red.

Thanks again for your constant support.

Best regards,
Pascual

Glad that it is working, @cerianipascual .

The Annual Loads component cannot simulate the Airflow Network and I actually designed the AFN component to work only on Models so that it was clear the Annual Loads component always runs with the simpler airflow objects.

So, yes, if you need to model things with the AFN you’ll have to use the “Model to OSM” component along with postprocessing using the HB Thermal Load Balance component.

The .gh file you uploaded has no geometry internalized in it so I cannot recreate the error. It also has a lot of extra components in it that make it far from a minimal sample that asks a clear and concise question. So, if you want to go that route, please improve the file. Or, if you can tell me exactly what the error message is that you are getting, maybe it is clear enough for me to explain what you can change to get it to go away.

Hi Chris,

Oops! Sorry about that — I think I uploaded the wrong file. I’m now attaching a cleaner version of the .gh file. I’ve highlighted in red the two doors that are causing the error when trying to run the Annual Loads component.

vivienda-unifamiliar-consulta-AnnualLoads.gh (192.0 KB)

Here is the error message I’m getting:

Program Version,EnergyPlus, Version 22.2.0-aa78da9668, YMD=2025.04.20 16:10,
   ** Severe  ** Duplicate name found for object of type "FenestrationSurface:Detailed" named "puert-int-bano_af5111db". Overwriting existing object.
   ** Severe  ** Duplicate name found for object of type "FenestrationSurface:Detailed" named "puert-int-dormitorio_93aafe80". Overwriting existing object.
   **  Fatal  ** Errors occurred on processing input file. Preceding condition(s) cause termination.
   ...Summary of Errors that led to program termination:
   ..... Reference severe error count=2
   ..... Last severe error=Duplicate name found for object of type "FenestrationSurface:Detailed" named "puert-int-dormitorio_93aafe80". Overwriting existing object.
   ************* Warning:  Node connection errors not checked - most system input has not been read (see previous warning).
   ************* Fatal error -- final processing. Program exited before simulations began. See previous error messages.
   ************* EnergyPlus Warmup Error Summary. During Warmup: 0 Warning; 0 Severe Errors.
   ************* EnergyPlus Sizing Error Summary. During Sizing: 0 Warning; 0 Severe Errors.
   ************* EnergyPlus Terminated--Fatal Error Detected. 0 Warning; 2 Severe Errors; Elapsed Time=00hr 00min  0.12sec

Runtime error (PythonException):    **  Fatal  ** Errors occurred on processing input file. Preceding condition(s) cause termination.

Traceback:
  line 292, in script

To simulate the OSM model, I had to assign the doors to both adjacent zones: Dormitorio–Pasillo / Pasillo–Dormitorio and Bano–Pasillo / Pasillo–Bano. The simulation ran fine with the OSM, but I believe Annual Loads is having trouble with this setup, as it shows those doors as duplicates.

Thanks again for your support!
Pascual.

1 Like

Hey @cerianipascual

The components in your file are for all different versions of Ladybug Tools and nearly all of them are old like this your annual loads component:

I recommend making sure that you are using a relatively recent version of LBT (like the 1.8 stable release or the latest single-click pollination installer). Then, you should run the LB Sync Grasshopper File component to sync the versions of all the components on the canvas with the one you have installed. After that, I imagine things should work.

A post was split to a new topic: Question about Adaptive Comfort Map