pvlib.atmosphere.first_solar_spectral_correction(precipitable_water, airmass_absolute, module_type=None, coefficients=None, min_precipitable_water=0.1, max_precipitable_water=8)#

Deprecated since version 0.10.0: The spectral_factor_firstsolar function was deprecated in pvlib 0.10.0 and will be removed soon. Use pvlib.spectrum.spectral_factor_firstsolar instead.

Spectral mismatch modifier based on precipitable water and absolute (pressure-adjusted) airmass.

Estimates a spectral mismatch modifier \(M\) representing the effect on module short circuit current of variation in the spectral irradiance. \(M\) is estimated from absolute (pressure currected) air mass, \(AM_a\), and precipitable water, \(Pw\), using the following function:

\[M = c_1 + c_2 AM_a + c_3 Pw + c_4 AM_a^{0.5} + c_5 Pw^{0.5} + c_6 \frac{AM_a} {Pw^{0.5}}\]

Default coefficients are determined for several cell types with known quantum efficiency curves, by using the Simple Model of the Atmospheric Radiative Transfer of Sunshine (SMARTS) 1. Using SMARTS, spectrums are simulated with all combinations of AMa and Pw where:

  • \(0.5 \textrm{cm} <= Pw <= 5 \textrm{cm}\)

  • \(1.0 <= AM_a <= 5.0\)

  • Spectral range is limited to that of CMP11 (280 nm to 2800 nm)

  • spectrum simulated on a plane normal to the sun

  • All other parameters fixed at G173 standard

From these simulated spectra, M is calculated using the known quantum efficiency curves. Multiple linear regression is then applied to fit Eq. 1 to determine the coefficients for each module.

Based on the PVLIB Matlab function pvl_FSspeccorr by Mitchell Lee and Alex Panchula of First Solar, 2016 2.

  • precipitable_water (numeric) – atmospheric precipitable water. [cm]

  • airmass_absolute (numeric) – absolute (pressure-adjusted) airmass. [unitless]

  • module_type (str, optional) –

    a string specifying a cell type. Values of ‘cdte’, ‘monosi’, ‘xsi’, ‘multisi’, and ‘polysi’ (can be lower or upper case). If provided, module_type selects default coefficients for the following modules:

    • ’cdte’ - First Solar Series 4-2 CdTe module.

    • ’monosi’, ‘xsi’ - First Solar TetraSun module.

    • ’multisi’, ‘polysi’ - anonymous multi-crystalline silicon module.

    • ’cigs’ - anonymous copper indium gallium selenide module.

    • ’asi’ - anonymous amorphous silicon module.

    The module used to calculate the spectral correction coefficients corresponds to the Multi-crystalline silicon Manufacturer 2 Model C from 3. The spectral response (SR) of CIGS and a-Si modules used to derive coefficients can be found in 4

  • coefficients (array-like, optional) – Allows for entry of user-defined spectral correction coefficients. Coefficients must be of length 6. Derivation of coefficients requires use of SMARTS and PV module quantum efficiency curve. Useful for modeling PV module types which are not included as defaults, or to fine tune the spectral correction to a particular PV module. Note that the parameters for modules with very similar quantum efficiency should be similar, in most cases limiting the need for module specific coefficients.

  • min_precipitable_water (float, default 0.1) – minimum atmospheric precipitable water. Any precipitable_water value lower than min_precipitable_water is set to min_precipitable_water to avoid model divergence. [cm]

  • max_precipitable_water (float, default 8) – maximum atmospheric precipitable water. Any precipitable_water value greater than max_precipitable_water is set to np.nan to avoid model divergence. [cm]


modifier (array-like) – spectral mismatch factor (unitless) which can be multiplied with broadband irradiance reaching a module’s cells to estimate effective irradiance, i.e., the irradiance that is converted to electrical current.



Gueymard, Christian. SMARTS2: a simple model of the atmospheric radiative transfer of sunshine: algorithms and performance assessment. Cocoa, FL: Florida Solar Energy Center, 1995.


Lee, Mitchell, and Panchula, Alex. “Spectral Correction for Photovoltaic Module Performance Based on Air Mass and Precipitable Water.” IEEE Photovoltaic Specialists Conference, Portland, 2016


Marion, William F., et al. User’s Manual for Data for Validating Models for PV Module Performance. National Renewable Energy Laboratory, 2014. http://www.nrel.gov/docs/fy14osti/61610.pdf


Schweiger, M. and Hermann, W, Influence of Spectral Effects on Energy Yield of Different PV Modules: Comparison of Pwat and MMF Approach, TUV Rheinland Energy GmbH report 21237296.003, January 2017