pvlib.irradiance.erbs_driesse#
- pvlib.irradiance.erbs_driesse(ghi, zenith, datetime_or_doy=None, dni_extra=None, min_cos_zenith=0.065, max_zenith=87)[source]#
Estimate DNI and DHI from GHI using the continuous Erbs-Driesse model.
The Erbs-Driesse model [1] is a reformulation of the original Erbs model [2] that provides continuity of the function and its first derivative at the two transition points.
\[DHI = DF \times GHI\]DNI is then estimated as
\[DNI = (GHI - DHI)/\cos(Z)\]where Z is the zenith angle.
- Parameters:
ghi (numeric) – Global horizontal irradiance. [Wm⁻²]
zenith (numeric) – True (not refraction-corrected) zenith angles in decimal degrees.
datetime_or_doy (int, float, array or pd.DatetimeIndex, optional) – Day of year or array of days of year e.g. pd.DatetimeIndex.dayofyear, or pd.DatetimeIndex. Either datetime_or_doy or dni_extra must be provided.
dni_extra (numeric, optional) – Extraterrestrial normal irradiance. dni_extra can be provided if available to avoid recalculating it inside this function. In this case datetime_or_doy is not required.
min_cos_zenith (numeric, default 0.065) – Minimum value of cos(zenith) to allow when calculating global clearness index kt. Equivalent to zenith = 86.273 degrees.
max_zenith (numeric, default 87) – Maximum value of zenith to allow in DNI calculation. DNI will be set to 0 for times with zenith values greater than max_zenith.
- Returns:
data (OrderedDict or DataFrame) – Contains the following keys/columns:
dni
: the modeled direct normal irradiance. [Wm⁻²]dhi
: the modeled diffuse horizontal irradiance in Wm⁻².kt
: Ratio of global to extraterrestrial irradiance on a horizontal plane.
- Raises:
ValueError – If neither datetime_or_doy nor dni_extra is provided.
Notes
The diffuse fraction DHI/GHI of the Erbs-Driesse model deviates from the original Erbs model by less than 0.0005.
References
See also