A single tree or chimney to the south-east can quietly erase a chunk of a solar array’s morning production. This estimator turns an obstruction’s position and size into an irradiance-weighted estimate of how much annual energy it costs, so you can judge a site before committing to a layout.
How it works
The tool samples the sun’s path across the day and tests each moment against the obstruction’s geometry:
for each daylight moment:
elevation, azimuth = sun position (equinox, your latitude)
shaded = sun elevation < obstruction elevation
AND |sun azimuth − obstruction azimuth| ≤ width / 2
weight = sin(elevation) (clear-sky irradiance proxy)
shaded fraction = shaded weight / total weight
annual loss ≈ shaded fraction × affected array share
Weighting by the sine of solar elevation means a blocked midday hour, when the sun is strongest, costs far more than a blocked hour just after sunrise.
Example and notes
A 25° tall obstruction at azimuth 135° (south-east), 40° wide, that shadows a quarter of the array yields a few percent of annual loss because it only bites during low-sun morning hours. Move that same obstruction due south at the same height and the loss climbs sharply, because it now blocks the high-value midday sun. Remember winter losses run higher than this equinox estimate, so for heating-season-critical systems, scout obstructions on the lowest-sun day too.