pvlib.pvsystem.PVSystem.get_irradiance#

PVSystem.get_irradiance(solar_zenith, solar_azimuth, dni, ghi, dhi, dni_extra=None, airmass=None, albedo=None, model='haydavies', **kwargs)[source]#

Uses pvlib.irradiance.get_total_irradiance() to calculate the plane of array irradiance components on the tilted surfaces defined by each array’s surface_tilt and surface_azimuth.

Parameters:
  • solar_zenith (float or Series) – Solar zenith angle.

  • solar_azimuth (float or Series) – Solar azimuth angle.

  • dni (float, Series, or tuple of float or Series) – Direct Normal Irradiance. [W/m2]

  • ghi (float, Series, or tuple of float or Series) – Global horizontal irradiance. [W/m2]

  • dhi (float, Series, or tuple of float or Series) – Diffuse horizontal irradiance. [W/m2]

  • dni_extra (float, Series or tuple of float or Series, optional) – Extraterrestrial direct normal irradiance. [W/m2]

  • airmass (float or Series, optional) – Airmass. [unitless]

  • albedo (float or Series, optional) – Ground surface albedo. [unitless]

  • model (String, default 'haydavies') – Irradiance model.

  • kwargs – Extra parameters passed to pvlib.irradiance.get_total_irradiance().

Notes

Each of dni, ghi, and dni may be passed as a float, Series, or tuple of float or Series. If passed as a float or Series, these values are used for all Arrays. If passed as a tuple, the tuple length must be the same as the number of Arrays. The first tuple element is used for the first Array, the second tuple element for the second Array, and so forth.

Some sky irradiance models require dni_extra. For these models, if dni_extra is not provided and solar_zenith has a DatetimeIndex, then dni_extra is calculated. Otherwise, dni_extra=1367 is assumed.

Returns:

poa_irradiance (DataFrame or tuple of DataFrame) – Column names are: 'poa_global', 'poa_direct', 'poa_diffuse', 'poa_sky_diffuse', 'poa_ground_diffuse'.