The diffuse irradiance loss caused by row-to-row sky diffuse shading.

Even when the sun is high in the sky, a row’s view of the sky dome will be partially blocked by the row in front. This causes a reduction in the diffuse irradiance incident on the module. The reduction depends on the masking angle, the elevation angle from a point on the shaded module to the top of the shading row. In 1 the masking angle is calculated as the average across the module height. SAM assumes the “worst-case” loss where the masking angle is calculated for the bottom of the array 2.

This function, as in 1, makes the assumption that sky diffuse irradiance is isotropic.


masking_angle (numeric) – The elevation angle below which diffuse irradiance is blocked [degrees].


derate (numeric) – The fraction [0-1] of blocked sky diffuse irradiance.



D. Passias and B. Källbäck, “Shading effects in rows of solar cell panels”, Solar Cells, Volume 11, Pages 281-291. 1984. DOI: 10.1016/0379-6787(84)90017-6


Gilman, P. et al., (2018). “SAM Photovoltaic Model Technical Reference Update”, NREL Technical Report NREL/TP-6A20-67399. Available at https://www.nrel.gov/docs/fy18osti/67399.pdf

Examples using pvlib.shading.sky_diffuse_passias