Best Practice for Modeling Trees in Ladybug Radiation Analysis?

Hi all,

I was wondering if anyone had recommendations for best practice / efficient methods for modeling trees as part of a Ladybug simple surface radiation analysis?

Quick Background: For use in a separate simplified numerical energy-model (for a specific green-building certification process) I need to calculate ‘Shading Factors’ for the glazing units on a small residential project. I have a ladybug set-up which calculates these factors (100% = no shading, 0%=fully shaded) just fine using the LadyBug ‘radiationAnalysis’ component. But I’m wondering about how it would be best to integrate some site-trees into such an analysis and if anyone has any recommendations for that?

the project is a simple mid-row townhouse in a dense urban area:

The grasshopper setup is pretty simple for this and just uses two ‘radiationAnalysis’ components (one calc’s radiation with all the site shading, the other calcs radiation without any site shading) to determine the ‘Shading Factor’ for use in the separate model to find total solar gain for a couple time periods (summer, winter).

in my ladybug set-up, these factors are calc’d and then just exported into excel for me to use later in a different model. So far though I’m only taking into account the opaque surfaces / neighbors in this analysis. But as you can see in the overhead view though there are some very substantial trees around the site which I’d like to take into account as part of this analysis:

Does anyone have any thoughts or workflows that they like for modeling something like this as part of a
simple radiation analysis?

Thanks very much for any advice or suggestions!


hi @edpmay, In Ladybug there is not much that you can do with materials. As soon as you put a surface it will be considered as a solid surface. You can use an approach like this (Tree Modelling in Radiance) to create some tree-like objects or you use Honeybee instead and then take advantage of what is possible in Radiance with using different types of Radiance materials.

ah thats interesting - thanks Mostapha. I was trying to stick with Ladybug to keep it a bit quicker but I suppose that doing it through Radiance / E+ does give more control for those sorts of details.

Do you think I should just evaluate the ‘windowBeamEnergy’ in the ‘readEPSrfResult’ to infer total incident solar energy on the surface? That result is technically ‘Transmitted Beam Solar Radiation Energy’ right so not the energy on the exterior surface but rather the energy that comes through the window into the interior?

But I suppose that shouldn’t matter if I’m just trying to calc simple shading factors / evaluate solar radiation on the exterior of surface due to shading objects. There doesn’t seem to be a straight E+ output for incident solar radiation on the exterior of a surface though is there?

I’ll give that tree builder a try first and see if I can make it work though - thanks!


One way to do it might be to use the genCumSky component to generate a cumulative sky radiance file, and then run it with the runDaylightAnalysis component via the the grid-based simulation recipe:

I wouldn’t use the transmitted beam solar radiation energy output since that accounts for glass properties like SHGC, VLT, emissivity in complex ways, and will model interior dynamics like the amount of solar radiation reflected/emitted back out of the window from indoors.

FWIW, my office actually dealt with the problem of modeling tree shade benefit by developing a model to approximate the fraction of radiation that was transmitted through a tree. From what I remember (I wasn’t very involved with this project), they found something like transmittance was based on the exponential decay of radiation w/r/t tree canopy distance; roughly e^-x, where x is distance of penetration into canopy.


@edpmay I have some practices for modeling Trees in Radiation Analysis. Method 1 is using Ladybug Radiation Analysis. Method 2 is using cumulative sky and Radiance Daylighting Analysis.
Here is the link:Modeling Tree In Radiation Analysis Using Two Methods

Hope this demo file can help you


To be tested

1 Like


thank you so much for providing that example - that was really helpful. I was able to get it to work no problem and I think this an excellent process. Can I ask one question about the Radiance material though? I notice here you are using an ‘Opaque’ material - do you think there is any reason you wouldn’t use a transparent material (apply a more opaque vale for summer when the tree is leafed out, a less opaque value for winter when its bare). It seems to work when I do that but I was just wondering if there was another reason you chose to use the opaque material here that I’m missing?

thanks so much!

In case this helps, the BRE Site Layout Planning for Daylight and Sunlight includes some information regarding trees transparency to solar radiation.

It also points to a couple other references, but I haven´t checked them.


used real tree model with real leaves for radiation analysis.As we know, treal leaves is opaque material. Based on the two points,I decided to using opaque material for real 3D tree.

Hi @edpmay and @minggangyin , I tried out @mostapha 's method (Tree Modeling in Radiance along with @minggangyin HB radiation sim method to achieve 3D trees and vary foliage density (with schedule).
Hope it helps.
Any suggestions for improving?
HB Radiation Analysis with tree (503.8 KB)

1 Like

1 Like


I remembered some useful resources related to the modelling of trees:

I am not really a GH user, so I am not sure exactly how can you implement these things in it. But I guess that can help!