Skip to content

Commit 02ae568

Browse files
committed
muneer transposition model
still not tested
1 parent e2b1d9b commit 02ae568

File tree

1 file changed

+50
-0
lines changed

1 file changed

+50
-0
lines changed

pvlib/irradiance.py

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -994,6 +994,56 @@ def king(surface_tilt, dhi, ghi, solar_zenith):
994994
return sky_diffuse
995995

996996

997+
def muneer(surface_tilt, dhi, b):
998+
'''
999+
Determine diffuse irradiance from the sky on a tilted surface using
1000+
the Muneer [1]_ model.
1001+
1002+
Parameters
1003+
----------
1004+
surface_tilt : numeric
1005+
Surface tilt angle in decimal degrees. Tilt must be >=0 and
1006+
<=180. The tilt angle is defined as degrees from horizontal
1007+
(e.g. surface facing up = 0, surface facing horizon = 90)
1008+
1009+
dhi : numeric
1010+
Diffuse horizontal irradiance in W/m^2. DHI must be >=0.
1011+
1012+
b : numeric
1013+
Radiance distribution index, introduced by Moon and Spencer [2]_ to model
1014+
luminance distribution of overcast sky.
1015+
1016+
'best' values of b as found for Easthampstead data:
1017+
isotropic: b = 0
1018+
shaded surface: b = 5.73
1019+
sunlit surface under overcast sky: b = 1.68
1020+
sunlit surface under non-overcast sky: b = -0.62
1021+
1022+
1023+
Returns
1024+
-------
1025+
diffuse : numeric
1026+
The sky diffuse component of the solar radiation.
1027+
1028+
References
1029+
----------
1030+
.. [1] Muneer, T., 1990, Solar radiation model for Europe.
1031+
Building services engineering research and technology, 11: 153-163.
1032+
1033+
.. [2] Moon P and Spencer D E Illumination from a non-uniform sky
1034+
Trans. Illum. Eng. Soc. (London) 37 707-725 (1942)
1035+
'''
1036+
1037+
term1 = 2 * b / (np.pi * (3 + 2 * b))
1038+
term2 = (tools.sind(surface_tilt)
1039+
- surface_tilt * tools.cosd(surface_tilt)
1040+
- np.pi * (1 - tools.cosd(surface_tilt)) * 0.5
1041+
)
1042+
sky_diffuse = dhi * ((1 + tools.cosd(surface_tilt)) * 0.5 + term1 * term2)
1043+
1044+
return sky_diffuse
1045+
1046+
9971047
def perez(surface_tilt, surface_azimuth, dhi, dni, dni_extra,
9981048
solar_zenith, solar_azimuth, airmass,
9991049
model='allsitescomposite1990', return_components=False):

0 commit comments

Comments
 (0)