C_fCompI {solaR}R Documentation

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, filterG0 = TRUE)

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 containing intradaily global irradiation (Wh/m²) on a horizontal surface.

See below for corr = 'none'.

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 in corrFdKt. You should choose one of intradaily proposals. For example, the FdKtCLIMEDh is selected with corr = 'CLIMEDh'.

If corr = 'user' the use of a correlation defined by a function f is possible.

If corr = 'none' the G0I object must include information about global, diffuse and direct intradaily irradiation with columns named G0, D0 and B0, respectively.

f

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

filterG0

A logical. If TRUE (default) this function sets the global irradiation values to NA when they are higher than the extra-atmospheric irradiation values.

Value

A zoo with these components:

kt

numeric, clearness index.

fd

numeric, diffuse fraction.

G0

numeric, global irradiance on a horizontal surface, (W/m²)

D0

numeric, diffuse irradiance on a horizontal surface, (W/m²)

B0

numeric, direct irradiance on a horizontal surface, (W/m²)

Author(s)

Oscar Perpiñán Lamigueiro.

References

See Also

fCompD, fSolI, calcSol, corrFdKt.

Examples


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)

[Package solaR version 0.46 Index]