Relation between Natural ventilation, Air flow volume and zone temperature

Hi guys,

I’ve been trying to understand how natural ventilation is working by correlating air flow volume and zone temperature results from ‘Honeybee_readEP Results’ and I’m noticing few issues that I’m not too sure why they’re happening.

To give you a bit of context, I have the minimum indoor tempt for nat vent in the natural ventilation component to 22°C (as shown in the image below) and I understand that air flow volume is combining both ventilation through windows and infiltration so I sat infiltration to 0 and what I find slightly strange is that I still get values for air flow volume when the temperature is below 22°C. I would assume air flow volume to be 0 in that case.

Also, I’ve tested that for all types of temperatures (air temperatures, mean radiant temperature and operative temperature) as I wasn’t too sure which temperature the natural ventilation component is referring to, however still the same case, air flow volume is not 0 when temperatures are below 22°C.

Please note that the zones are set to be unconditioned.

Any ideas what is the reason for that?


to narrow things down, would be great if you assist me understand

  • how the air flow volume is being calculated? as it’s not directly corresponding to the fraction of glazing area operable as I explained above.
  • which indoor temperature is the nat vent component referring to? (zone air tempt, operative tempt, or mean radiant tempt)? I’m assuming it’s zone air temperature but please correct me if I’m wrong. I’m trying to control window opening based on TM59 which states that ‘Windows in each room should be controlled separately and modelled as open when both the internal dry bulb temperature exceeds 22°C and the room is occupied’

@SaeranVasanthakumar any thoughts on the above please? I saw a few posts around similar topics
and thought you might be able to help.

You can use EPCustomResult to read these three air flow values for more detailed breakdown of the “Air flow volume” from readEPResult.

I think it is zone air temperature. This “natural ventilation” component is a setting of “ZoneVentilation:WindandStackOpenArea” in energyplus, please refer its:


Agree with @MingboPeng, and I’ll also add that, looking at your screenshot, I think you might be creating some logic errors by specifying multiple thresholds and schedules. For example, your minIndoorTemperatureForNatVent threshold may be overridden by the openingAreaFractionalSched.

Try simplifying the logic to something like this:


And see if that stops airflow when your indoor temp is below 22.


Thank you @SaeranVasanthakumar
I will try simplifying the conditions to get a sense of what’s happening but in reality I need windows to open when the indoor temperature is above 22°C and at certain times (for example, kitchen/living from 9am to 10pm) this is based on TM59 assessment criteria and that’s why I’m having both; a temperature threshold and an opening area fractional schedule as shown in the screenshot below.

do you reckon this might not get picked up correctly by honeybee? and if so are there other ways to workaround such level of control?


Thanks @MingboPeng ! I now know it is air temperature we are referring to in the natural ventilation component, which is great. :slight_smile:
With regards to air flow volume I think I now understand that wind pressure coefficient is not calculated in honeybee, is that correct?

@Farah.H if I remember correctly, yes, wind pressure coefficient is not calculated here. You will need to take care of this yourself.

1 Like


Yes, it’ll depend on how contradictory schedule and threshold inputs are resolved by EnergyPlus’s WindandStackOpenArea. It’s not an issue with Honeybee, I don’t think HB is doing anything other then passing both schedule and threshold inputs to EP.

Based on what you’re describing, I think EP is assuming a disjunctive relationship between schedule and thresholds. So basically the schedule is overriding your minimum thresholds. Should be easy to confirm with a quick test.


Thanks @SaeranVasanthakumar.
I’ve had a few tests with the same schedule linked, while changing the minimum thresholds and the results seem to be corresponding, for example:

  1. changed tempt setpoint to (25°C) and the operative temperature got up by around 2 degrees
  2. changed tempt setpoint to (100°C) and the operative temperature got up by more than 10 degrees
  3. changed tempt setpoint to (-100°C) and the operative temperature got down by around 1-2 degrees

In my understanding if the schedule was overriding my minimum thresholds, I would not have seen a difference in results. What do you think?

Thanks @MingboPeng are you aware of any ways to workaround this?