pvlib.pvsystem.sapm_aoi_loss(aoi, module, upper=None)[source]

Calculates the SAPM angle of incidence loss coefficient, F2.

  • aoi (numeric) – Angle of incidence in degrees. Negative input angles will return zeros.

  • module (dict-like) – A dict, Series, or DataFrame defining the SAPM performance parameters. See the sapm() notes section for more details.

  • upper (None or float, default None) – Upper limit on the results.


F2 (numeric) – The SAPM angle of incidence loss coefficient.


The SAPM traditionally does not define an upper limit on the AOI loss function and values slightly exceeding 1 may exist for moderate angles of incidence (15-40 degrees). However, users may consider imposing an upper limit of 1.


[1] King, D. et al, 2004, “Sandia Photovoltaic Array Performance Model”, SAND Report 3535, Sandia National Laboratories, Albuquerque, NM.

[2] B.H. King et al, “Procedure to Determine Coefficients for the Sandia Array Performance Model (SAPM),” SAND2016-5284, Sandia National Laboratories (2016).

[3] B.H. King et al, “Recent Advancements in Outdoor Measurement Techniques for Angle of Incidence Effects,” 42nd IEEE PVSC (2015). DOI: 10.1109/PVSC.2015.7355849