pvl_perez

Determine sky diffuse irradiance on a tilted surface using the Perez model.

Contents

Syntax

|[SkyDiffuse,SkyDiffuse_Iso,SkyDiffuse_Cir,SkyDiffuse_Hor] = pvl_perez(SurfTilt, SurfAz, DHI, DNI, HExtra, SunZen, SunAz, AM)|
|[SkyDiffuse,SkyDiffuse_Iso,SkyDiffuse_Cir,SkyDiffuse_Hor] = pvl_perez(SurfTilt, SurfAz, DHI, DNI, HExtra, SunZen, SunAz, AM, model)|

Description

The Perez model [3] determines the sky diffuse irradiance on a tilted surface using the surface tilt angle, surface azimuth angle, diffuse horizontal irradiance, direct normal irradiance, extraterrestrial irradiance, sun zenith angle, sun azimuth angle, and relative (not pressure-corrected) airmass. An optional selector may be used to specify any of Perez's model coefficient sets.

Inputs

Outputs

The comparison between different Perez model pararameter sets demonstrates the sensitivity of this model to the various parameter sets. The differences between models may be due to differences between the underlying quality of the irradiance data used to calibrate each parameter set. As with any model and especially empirical models such as this one, it is very important to verify parameter sets are adequate and valid for their intended use.

Example

Compare all parameter sets

clear
SurfTilt = ones(8760,1)*30;
SurfAz = ones(8760,1)*180;
TMYData = pvl_readtmy3('723650TY.csv');
TimeMatlab = TMYData.DateNumber;
%[Y, M, D, H, MN, S] = datevec(TMYData.DateNumber);
Time = pvl_maketimestruct(TimeMatlab, ones(size(TimeMatlab))*TMYData.SiteTimeZone);
HExtra = pvl_extraradiation(pvl_date2doy(Time.year,Time.month,Time.day));
Location = pvl_makelocationstruct(TMYData.SiteLatitude,TMYData.SiteLongitude,TMYData.SiteElevation);
PresPa = TMYData.Pressure*100; %Convert pressure from mbar to Pa
[SunAz, SunEl, AppSunEl, SolarTime] = pvl_ephemeris(Time,Location,PresPa,TMYData.DryBulb);
SunZen = 90 - AppSunEl;
AM = pvl_relativeairmass(SunZen);
AM(isnan(AM)) = 20;
models = {'1990' 'allsitescomposite1988' 'sandiacomposite1988' 'usacomposite1988' ...
    'france1988' 'phoenix1988' 'elmonte1988' 'osage1988' 'albuquerque1988' ...
    'capecanaveral1988' 'albany1988'};
for mod = 1:11
   [Ediff(:,mod) Ediff_Iso(:,mod) Ediff_Cir(:,mod) Ediff_Hor(:,mod)] = ...
       pvl_perez(SurfTilt, SurfAz, TMYData.DHI, TMYData.DNI, HExtra, SunZen, SunAz, AM, models{mod});
end
tfilter = and(Time.month == 8,Time.day == 2);

figure
plot(Time.hour(tfilter),Ediff(tfilter,1),'.-b')
hold all
for i=2:11
    plot(Time.hour(tfilter),Ediff(tfilter,i))
end
xlim([-5 22])
legend(models,'Location','NW')
xlabel('Hour of Day')
ylabel('Sky Diffuse POA Irradiance (W/m^2)')
title({'Sky Diffuse Irradiance from the Perez Model';'Albuquerque - Aug 2'},'FontSize',14)

figure
plot(Time.hour(tfilter),Ediff(tfilter,1),'.-b')
hold all
i = 1; % select '1990' model results
plot(Time.hour(tfilter),Ediff(tfilter,i))
plot(Time.hour(tfilter),Ediff_Cir(tfilter,i))
plot(Time.hour(tfilter),Ediff_Hor(tfilter,i))
plot(Time.hour(tfilter),Ediff_Iso(tfilter,i))
xlim([-5 22])
legend('Total', 'Circumsolar', 'Horizon Brightening', 'Isotropic', 'Location','NW')
xlabel('Hour of Day')
ylabel('Sky Diffuse POA Irradiance (W/m^2)')
title({'Components of Sky Diffuse Irradiance using 1990 Perez model';'Albuquerque - Aug 2'},'FontSize',14)

References

[1] Loutzenhiser P.G. et al., 2007. Empirical validation of models to compute solar irradiance on inclined surfaces for building energy simulation, Solar Energy vol. 81. pp. 254-267.

[2] Perez, R., Seals, R., Ineichen, P., Stewart, R., Menicucci, D., 1987. A new simplified version of the Perez diffuse irradiance model for tilted surfaces. Solar Energy 39 (3), 221–232.

[3] Perez, R., Ineichen, P., Seals, R., Michalsky, J., Stewart, R., 1990. Modeling daylight availability and irradiance components from direct and global irradiance. Solar Energy 44 (5), 271–289.

[4] Perez, R. et. al 1988. The Development and Verification of the Perez Diffuse Radiation Model, SAND88-7030, Sandia National Laboratories.

See Also

pvl_ephemeris , pvl_extraradiation , pvl_grounddiffuse , pvl_klucher1979 , pvl_haydavies1980 , pvl_isotropicsky , pvl_kingdiffuse , pvl_relativeairmass , pvl_absoluteairmass

Notes:

pvl_perez Copyright 2014 Sandia National Laboratories pvl_perez modified to provide components by Xingshu Sun of Purdue University, 2018.