Energy balance difference using Annual load and HB model to osm method

I used AnnualLoads and HB model to osm compotents to run energy balance. The whole ratio of energy is quite same .But it generated different values for peak load.
My model is a residential unit with multiple rooms .

Here is the running enviroment of Ladybug 1.3.0

Here is the screenshot of Grasshopper compotents.

Two Energy balance diagram

Hey @minggangyin ,

Why are you not using LBT 1.4? There’s a high chance that whatever you are experiencing here is an issue that has since been fixed, though there are also plenty of other explanations (eg. Room multipliers). At a minimum, I see that the Annual Loads component is properly accounting for service hot water and gas equipment whereas you are not accounting for these in your OpenStudio-generated load balance. It looks like some of your components might not even be for LBT 1.3.

When in doubt, the Annual Loads component tends to be the correct one since there’s a smaller chance of making a mistake when everything is in one component.

Hi @chris Thanks for your reply . I will try LBT 1.4.0 to test the energy balance .And I will update the newest result.

I tried to compare HB Annual Loads and full E+ run, here’s the interesting findings:

  1. The E+ run’s results, when normalised, are normalised by AC areas only; while the HB annual loads are normalised by total area.
  2. For both E+ run and HB annual loads, the monthly total will sum up both air-conditioned (AC) hours and non-AC hours - which is misleading if we want to get the contribution of envelope gains to the cooling load.
  3. The way to find out the load balance, therefore, is to run E+ hourly simulation, and sum up the load of AC hours only

Hey @XavierZhouLadybug ,

Thank you for testing this but your findings are very specific to the Model and the Grasshopper script you have set up. To describe how things work more generally:

  1. Both the “HB Annual Loads” component and the “HB Thermal Load Balance” component treat conditioned vs. unconditioned rooms in the same way. However the “HB Annual Loads” component will always normalize everything by the gross floor area across the input rooms, accounting for room multipliers and excluding Rooms that have a True value for exclude_floor_area property (usually ensures that plenums are ignored). The HB Thermal Load Balance component will normalize the results by the floor are of the rooms that are connected to _rooms_model, accounting for room multipliers only. So, if you want certain rooms to be excluded from the calculation, you have to manually exclude them from the input to the “HB Thermal Load Balance” component. I originally did this to give people more control over which rooms get used in the input calculation but, now that I think about it, maybe this extra control creates extra confusion. So I just changed the “HB Thermal Load Balance” component to respect the exclude_floor_area property whenever a model is input (individual rooms still only use the floor area of just those rooms).
  1. Summing both the conditioned and unconditioned hours is the only way to ensure that everything is balanced across the thermal lag in the building. Looking only at the hours when the heating/cooling system is on will result in a load balance that does not follow the first law of thermodynamics. The logic follows that, just because I turn on the AC an hour after the sun was blasting through my windows does not mean that this hour didn’t have any envelope gains that contributed to the cooling load. So my recommendation is to NOT exclude certain hours from the load balance unless you’re doing it for some special reason where you aren’t actually concerned with understanding the energy balance of the simulation. If you have a more specific question about what can happen if you exclude certain hours, I recommend opening another topic to discuss it.