Understanding the Severe error ‘’DetermineShadowingCombinations’’ in EnergyPlus

Modified on Wed, 6 Aug at 4:53 PM

You may encounter the following error in EnergyPlus:


** Severe  ** DetermineShadowingCombinations: There are # surfaces which are casting surfaces and are non-convex.

**   ~~~   ** ...Shadowing values may be inaccurate. Check .shd report file for more surface shading details

 

This error arises from a documented limitation in EnergyPlus’s Polygon Clipping algorithm, which does not support non-convex shading surfaces as shadow casters. 


For more details, see: EnergyPlus Engineering Reference Overlapping Shadows.


Non-convex casting surfaces cause:

  • Incorrect shadow polygons: Overlaps or gaps in calculated shading.
  • Overestimated solar gains: Missing shadows on windows/walls.
  • Underestimated cooling loads: Reduced shading effects in hot climates.

 

In reality, building surfaces can be any shape, including non-convex (concave) forms or surfaces with geometric holes (not openings, but actual hard geometric holes). When DesignBuilder encounters such surfaces, it automatically subdivides them into two or more convex polygons to comply with EnergyPlus’s requirements. This preprocessing is why you will generally not see non-convex surface errors, even with L-shaped component blocks or other complex shapes. 


However, while DesignBuilder’s automatic subdivision handles simple cases, complex shading devices may still require manual adjustment.

 

For more details, see: Surface Polygons Generated for EnergyPlus - Technical Description.


There are two possible ways to resolve this non-convex shadow casting surfaces error:


  1. Manual Subdivision of Problematic Surfaces
    For the flagged component blocks, split along natural edges to ensure all sub-surfaces have ≤4 vertices and no interior angles >180°.

  2. Pixel Counting Algorithm
    Switch to GPU-accelerated Pixel Counting to bypass geometric limitations. The Pixel Counting method tessellates all surfaces (convex, concave, and even those with windows) into many triangles (which are by definition convex), removing any limitations of non-convex (i.e., concave) surfaces from the shading algorithm. Note that the Pixel counting method does not currently support semi-transparent shading surfaces. So, this option should be avoided in models that have Standard component blocks with Maximum transmittance set to a value greater than 0. For more details, see: Use Pixel Counting for Greater Speed, Flexibility and Accuracy.

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article