gendaylit problems


We are working on calculation of annual illuminance profile for indoor
luminances, and we use Perez sky model (based on gendaylit program) for sky
luminance distribution. Input data used for sky definition are based on TRY

During the tests, we've found out that for some time moments we get negative
ground luminance, which leads to incorrect final illuminace results.

Here is the example of sky generated by gendaylit:
# ./gendaylit 6 1 16 -s -a 44.05 -o -5.05 -m -15 -g 0.2 -W 76 16
#gendaylit : the actual zenith radiance(W/m^2/sr) or luminance(cd/m^2) is :
# Ground ambient level: -13.3

void brightfunc skyfunc
2 skybright
10 7.339e+01 -2.651e+00 -1.278262 -0.168132 13.163915 -3.484597 0.260157
-0.717104 -0.140157 0.682729

You can see that negative zenith radiance, leads to negative ambient level
and ground brightness (2nd parameter in the skyfunc definition above), which
then leads to incorrect final results.
When sky with this luminance distribution is visualized in rvu, it looks
like there is "a black hole" in the middle of the sky surface.

Note that gendaylit doesn't raise any error or warnings, for this kind of

John Mardaljevic wrote about this problem for some combination of input
values in his thesis, and also there is a post on this list:

Does someone has information if they were some changes in original Perez
model, to avoid such problems (or maybe if it is an error in gendaylit code
- although I couldn't find it)?


For our TRY (Carpentes, France) file this kind of problem appears for 409
time moments (1 year period, 1h step irradiance data), so it is approx 10%
of total number of daylit hours, so I don't think we can underestimate this
If not possible to change sky model calculation and make it "more correct",
I'm wondering what solution would give the lowest errors in final
illuminance results?

Any ideas?

Marija, De Luminae.

Hi (Zdravo) Marija,

As far as I could tell, the fix given by Perez in the erratum (link below) is in the code:

  /* correction de modele de Perez solar energy ...*/
  if ( (epsilon > 1.065) && (epsilon < 2.8) )

Note that the AW model was based *only* on data from Berkeley. This is perhaps why the overcast conditions in the AW model are different to CIE overcast (which has been validated as a reliable overcast model for many European sites). See:
J. Mardaljevic. Sky model blends for predicting internal illuminance: a comparison founded on the BRE-IDMP dataset. Journal of Building Performance Simulation, 1(3):163–173, 2008.

E-mail me if you can't get access to this journal.



Dr. John Mardaljevic
Reader in Daylight Modelling
Institute of Energy and Sustainable Development
De Montfort University
The Gateway
+44 (0) 116 257 7972
+44 (0) 116 257 7981 (fax)

[email protected]