Learn R Programming

solaR (version 0.38)

C_fCompI: Calculation of solar irradiance on a horizontal surface

Description

From the daily global, diffuse and direct irradiation values supplied by fCompD, the profile of the global, diffuse and direct irradiance is calculated with the rd and rg components of fSolI.

Usage

fCompI(sol, compD, G0I, corr='none', f)

Arguments

sol
A Sol object as provided by calcSol or a zoo object as provided by fSolI.
compD
A zoo object as provided by fCompD. It is not considered if G0I is provided.
G0I
A Meteo object from readBDi, dfI2Meteo or zoo2Meteo, or a zoo object c
corr
A character, the correlation between the the fraction of intradaily diffuse irradiation and the clearness index to be used. It is ignored if G0I is not provided.

With this version several correlations are available, as described

f
A function defininig a correlation between the fraction of diffuse irradiation and the clearness index. It is only neccessary when corr='user'

Value

  • A zoo with these components:
  • ktnumeric, clearness index.
  • fdnumeric, diffuse fraction.
  • G0numeric, global irradiance on a horizontal surface, (W/m²)
  • D0numeric, diffuse irradiance on a horizontal surface, (W/m²)
  • B0numeric, direct irradiance on a horizontal surface, (W/m²)

encoding

UTF-8

References

  • Collares-Pereira, M. y Rabl, A., The average distribution of solar radiation: correlations between diffuse and hemispherical and between daily and hourly insolation values. Solar Energy, 22:155–164, 1979.
  • Perpiñán, O, Energía Solar Fotovoltaica, 2013. (http://procomun.wordpress.com/documentos/libroesf/)
  • Perpiñán, O. (2012), "solaR: Solar Radiation and Photovoltaic Systems with R", Journal of Statistical Software, 50(9), 1-32,http://www.jstatsoft.org/v50/i09/

See Also

fCompD, fSolI, calcSol, corrFdKt.

Examples

Run this code
lat <- 37.2

BTd <- fBTd(mode='serie')
solD <- fSolD(lat, BTd[100])
solI <- fSolI(solD, sample='hour')
G0d <- zoo(5000, index(solD))
compD <- fCompD(solD, G0d, corr = "Page")
fCompI(solI, compD)

sol <- calcSol(lat, fBTd(mode='prom'), sample='hour', keep.night=FALSE)

G0dm <- c(2.766, 3.491, 4.494, 5.912, 6.989, 7.742,
          7.919, 7.027, 5.369, 3.562, 2.814, 2.179)*1000

Ta <- c(10, 14.1, 15.6, 17.2, 19.3, 21.2, 28.4, 29.9,
        24.3, 18.2, 17.2, 15.2)

BD <- readG0dm(G0dm = G0dm, Ta = Ta, lat = lat)
compD <- fCompD(sol, BD, corr = 'Page')
compI <- fCompI(sol, compD)
head(compI)

## Use of 'corr'.  The help page of calcG0 includes additional examples
## with intradaily data xyplot(fd ~ kt, data=compI)

climed <- fCompI(sol, G0I=compI, corr = 'CLIMEDh')
xyplot(fd ~ kt, data=climed)

ekdh <- fCompI(sol, G0I=compI, corr = 'EKDh')
xyplot(fd ~ kt, data=ekdh)

brl <- fCompI(sol, G0I=compI, corr = 'BRL')
xyplot(fd ~ kt, data=brl)

Run the code above in your browser using DataLab