From 2b304714b5094d87273068c5252f9f78c4bbb0d4 Mon Sep 17 00:00:00 2001 From: Marc Anoma Date: Tue, 7 Mar 2017 14:23:27 -0800 Subject: [PATCH] Created optional argument ``zenith_threshold`` to allow user to decide.. ... what value to filter on * put default value to 87 --- pvlib/irradiance.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pvlib/irradiance.py b/pvlib/irradiance.py index c258ab3e46..dd01e8a26c 100644 --- a/pvlib/irradiance.py +++ b/pvlib/irradiance.py @@ -1069,7 +1069,7 @@ def perez(surface_tilt, surface_azimuth, dhi, dni, dni_extra, return sky_diffuse -def disc(ghi, zenith, datetime_or_doy, pressure=101325): +def disc(ghi, zenith, datetime_or_doy, pressure=101325, zenith_threshold=87.): """ Estimate Direct Normal Irradiance from Global Horizontal Irradiance using the DISC model. @@ -1094,6 +1094,9 @@ def disc(ghi, zenith, datetime_or_doy, pressure=101325): pressure : numeric Site pressure in Pascal. + zenith_threshold: numeric + Filtering threshold on zenith angles in decimal degrees. + Returns ------- output : OrderedDict or DataFrame @@ -1155,7 +1158,7 @@ def disc(ghi, zenith, datetime_or_doy, pressure=101325): dni = Kn * I0 - dni = np.where((zenith > 87) | (ghi < 0) | (dni < 0), 0, dni) + dni = np.where((zenith > zenith_threshold) | (ghi < 0) | (dni < 0), 0, dni) output = OrderedDict() output['dni'] = dni