I am trying to apply ceiling plenums through the table view. The model only has one floor, but with multiple roof heights. I imported even flat roofs and extruded spaces up to roofs using ceiling boundary condition of ‘exterior roof’ (previously ‘top exposed’). The geometry seems to preview correctly without plenums, but the plenum depth seems to be extruding down from the highest roof level, resulting in a gap between the occupied space and associated plenum. The floor-to-floor height in the table is listed as the highest roof elevation for all spaces. Does the space floor-to-floor height need to be adjusted manually for each space for the ceiling plenum to locate properly in elevation?
Hi @jacobanderson,
Welcome to the forum.
Thank you for posting this on the forum. Is it possible for you to share a small sample model to recreate this issue? @chriswmackey should be able to help you with explaining the logic for how plenums are calculated for each scenario.
Hi @jacobanderson ,
I am wondering why you did this?
If all of the roofs are flat, was there a reason for using detailed roof geometries? Things will be much simpler and straightforward if you can set each room floor-to-floor height to be the roof height rather than trying to edit detailed roof geometries. Or is there a case where you need the flat roof height to change within a single room and you don’t want to split the room into parts that have the different heights?
If so, I’ll just answer this second question assuming there’s some reason why you need the detailed roof geometry:
The ceiling plenum elevation is always determined through the following calculation:
plenum_elevation = floor_elevation + floor_to_floor_height - ceiling_plenum_depth
So it has nothing to do with the roof geometry when you have a case of sloped roofs. It’s all determined through those 3 properties that you can set on the room. And, while you can use the ceiling plenum depth with models that have sloped roofs, you may have to do some math to make sure that the plenum elevation is set correctly below all of the roof geometry. Also note that, if you set ceiling plenum depth to a value that collides with or is above the sloped roof geometry, you’ll get errors when you validate, meaning that your model geometry will not export correctly. Perhaps this is what you mean when you say:
Thanks for the quick replies. All spaces start at the first floor but have multi-level roofs. Each space only has one roof level (no sub-divided/partial roofs). Since only one roof level can be associated with a floor level when importing, I selected the highest roof level with the hope of using the ‘exterior roof’ boundary condition to limit the extrusion of lower roofs without having to manually edit each lower roof level.
Ok, thanks. The calculation is helpful. The floor_to_floor_height variable is the same for all spaces, even though lower roofs are capping the extrusion. This raises another question that I’ve had (particularly with sloped roof instances) - why wouldn’t the ceiling plenum depth subtract the ceiling height from the floor_to_floor_height elevation? I would presume in most (more?) instances that the floor is flat but that a roof may not. I am not sure of how I would calculate/account for the ceiling plenum volume of a sloped roof, aside from multiple subdivisions of a space? Similar to trying to determine the area under a curve using rectangles (thinking back to integral calculations in calculus
).
Hi @jacobanderson,
It is true that you can only assign one extrusion height to the rooms on the same level when importing the rooms to the Model Editor, but you can edit them quickly after adding them to the Model Editor.
Maybe it will be helpful to clarify the difference between the assigned floor-to-floor height and the final calculated height (that includes the roof). In the case of the formula, we use the assigned floor-to-floor extrusion height and not the final calculated height. The calculation is pretty simple and doesn’t include the roof. Here is a simple diagram that can help.
Here is a simple model that I put together to showcase how you can set up the values. In this example the floor-to-floor height for both rooms is 3 m and the plenum height is 0.3 m. I hope this clarifies the logic.
plenum depth example for room with sloped roof.pomf (10.0 KB)
This is not necessary! ![]()

