From 09f0647645b2e14bce1c5bca89a32d4792f127b8 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Thu, 20 Jun 2024 19:41:08 +0200 Subject: [PATCH 1/4] Add hint about Perez discontinuities --- pvlib/irradiance.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pvlib/irradiance.py b/pvlib/irradiance.py index 1f16bdf854..7086b6bf2c 100644 --- a/pvlib/irradiance.py +++ b/pvlib/irradiance.py @@ -360,6 +360,13 @@ def get_sky_diffuse(surface_tilt, surface_azimuth, * perez * perez-driesse + Hint + ---- + The Perez transposition model feature discontinuities in the + predicted tilted diffuse irradiance due to relying discrete input values. + For applications that benefit from continuous output, consider using the + :py:func:`~pvlib.irradiance.perez-driesse`. + Parameters ---------- surface_tilt : numeric From 5d1e70a75364ef3efef39829154f28b9030a1901 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Thu, 20 Jun 2024 19:54:06 +0200 Subject: [PATCH 2/4] Update warning --- pvlib/irradiance.py | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/pvlib/irradiance.py b/pvlib/irradiance.py index 7086b6bf2c..c6f8cdaa9d 100644 --- a/pvlib/irradiance.py +++ b/pvlib/irradiance.py @@ -360,13 +360,6 @@ def get_sky_diffuse(surface_tilt, surface_azimuth, * perez * perez-driesse - Hint - ---- - The Perez transposition model feature discontinuities in the - predicted tilted diffuse irradiance due to relying discrete input values. - For applications that benefit from continuous output, consider using the - :py:func:`~pvlib.irradiance.perez-driesse`. - Parameters ---------- surface_tilt : numeric @@ -411,6 +404,11 @@ def get_sky_diffuse(surface_tilt, surface_azimuth, require ``'dni_extra'``. Values can be calculated using :py:func:`~pvlib.irradiance.get_extra_radiation`. + The ``'Perez'`` transposition model features discontinuities in the + predicted tilted diffuse irradiance due to relying on discrete input + values. For applications that benefit from continuous output, consider + using the :py:func:`~pvlib.irradiance.perez-driesse`. + The ``'perez'`` and ``'perez-driesse'`` models require relative airmass (``airmass``) as input. If ``airmass`` is not provided, it is calculated using the defaults in :py:func:`~pvlib.atmosphere.get_relative_airmass`. @@ -1011,6 +1009,13 @@ def perez(surface_tilt, surface_azimuth, dhi, dni, dni_extra, pressure-corrected) airmass. Optionally a selector may be used to use any of Perez's model coefficient sets. + Warning + ------- + The Perez transposition model features discontinuities in the + predicted tilted diffuse irradiance due to relying on discrete input + values. For applications that benefit from continuous output, consider + using the :py:func:`~pvlib.irradiance.perez-driesse`. + Parameters ---------- surface_tilt : numeric From adab27824aee2d1c1a1f474b2dab691789de2ae5 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Thu, 20 Jun 2024 20:09:15 +0200 Subject: [PATCH 3/4] Apply suggestions from code review Co-authored-by: Cliff Hansen --- pvlib/irradiance.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pvlib/irradiance.py b/pvlib/irradiance.py index c6f8cdaa9d..b64fe9fbca 100644 --- a/pvlib/irradiance.py +++ b/pvlib/irradiance.py @@ -407,7 +407,7 @@ def get_sky_diffuse(surface_tilt, surface_azimuth, The ``'Perez'`` transposition model features discontinuities in the predicted tilted diffuse irradiance due to relying on discrete input values. For applications that benefit from continuous output, consider - using the :py:func:`~pvlib.irradiance.perez-driesse`. + using :py:func:`~pvlib.irradiance.perez-driesse`. The ``'perez'`` and ``'perez-driesse'`` models require relative airmass (``airmass``) as input. If ``airmass`` is not provided, it is calculated @@ -1014,7 +1014,7 @@ def perez(surface_tilt, surface_azimuth, dhi, dni, dni_extra, The Perez transposition model features discontinuities in the predicted tilted diffuse irradiance due to relying on discrete input values. For applications that benefit from continuous output, consider - using the :py:func:`~pvlib.irradiance.perez-driesse`. + using :py:func:`~pvlib.irradiance.perez-driesse`. Parameters ---------- From 7d5ee1ec00a1c89b979194cbbc7c6cde22f8d127 Mon Sep 17 00:00:00 2001 From: "Adam R. Jensen" <39184289+AdamRJensen@users.noreply.github.com> Date: Thu, 20 Jun 2024 21:28:18 +0200 Subject: [PATCH 4/4] Apply suggestions from code review Co-authored-by: Echedey Luis <80125792+echedey-ls@users.noreply.github.com> --- pvlib/irradiance.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pvlib/irradiance.py b/pvlib/irradiance.py index b64fe9fbca..435c318562 100644 --- a/pvlib/irradiance.py +++ b/pvlib/irradiance.py @@ -407,7 +407,7 @@ def get_sky_diffuse(surface_tilt, surface_azimuth, The ``'Perez'`` transposition model features discontinuities in the predicted tilted diffuse irradiance due to relying on discrete input values. For applications that benefit from continuous output, consider - using :py:func:`~pvlib.irradiance.perez-driesse`. + using :py:func:`~pvlib.irradiance.perez_driesse`. The ``'perez'`` and ``'perez-driesse'`` models require relative airmass (``airmass``) as input. If ``airmass`` is not provided, it is calculated @@ -1014,7 +1014,7 @@ def perez(surface_tilt, surface_azimuth, dhi, dni, dni_extra, The Perez transposition model features discontinuities in the predicted tilted diffuse irradiance due to relying on discrete input values. For applications that benefit from continuous output, consider - using :py:func:`~pvlib.irradiance.perez-driesse`. + using :py:func:`~pvlib.irradiance.perez_driesse`. Parameters ----------