This function calculates daily solar radiation fluxes.
calc_daily_solar(
lat,
n,
elv = 0,
y = 0,
sf = 1,
tc = 23,
ke = 0.0167,
keps = 23.44,
komega = 283,
kA = 107,
kalb_sw = 0.17,
kalb_vis = 0.03,
kb = 0.2,
kc = 0.25,
kd = 0.5,
kfFEC = 2.04,
kGsc = 1360.8
)
double, decimal degrees.
double, day of year.
double, elevation, m A.S.L. Default: \(0\).
double, year. Default: \(0\).
double, fraction of sunshine hours. Default: \(1\).
double, mean daily air temperature, degrees C. Default: \(23.0\).
double, eccentricity of earth's orbit. Default: \(0.01670\), 2000CE (Berger, 1978).
double, obliquity of earth's elliptic. Default: \(23.44\), 2000CE (Berger, 1978).
double, lon. of perihelion, degrees Default: \(283\), 2000CE (Berger, 1978).
double, empirical constant, degrees Celsius. Default: \(107\) (Monteith and Unsworth, 1990).
double, shortwave albedo. Default: \(0.17\) (Federer, 1968).
double, visible light albedo. Default: \(0.03\) (Sellers, 1985).
double, empirical constant. Default: \(0.20\) (Linacre, 1968).
double, cloudy transmittivity. Default: \(0.25\) (Linacre, 1968).
double, angular coefficient of transmittivity. Default: \(0.50\) (Linacre, 1968).
double, flux-to-energy conversion, umol/J. Default: \(2.04\) (Meek et al., 1984).
double, solar constant, W/m^2. Default: \(1360.8\) (Kopp and Lean, 2011).
Returns a list
object with the following variables:
nu_deg ............ true anomaly, degrees
lambda_deg ........ true longitude, degrees
dr ................ distance factor, unitless
delta_deg ......... declination angle, degrees
hs_deg ............ sunset angle, degrees
ra_j.m2 ........... daily extraterrestrial radiation, J/m^2
tau ............... atmospheric transmittivity, unitless
ppfd_mol.m2 ....... daily photosyn. photon flux density, mol/m^2
hn_deg ............ net radiation hour angle, degrees
rn_j.m2 ........... daily net radiation, J/m^2
rnn_j.m2 .......... daily nighttime net radiation, J/m^2
Berger, A.L., 1978. Long-term variations of daily insolation and Quaternary climatic changes. Journal of Atmospheric Sciences, 35(12), pp.2362-2367. doi:10.1175/1520-0469(1978)035<2362:LTVODI>2.0.CO;2
Federer, C.A., 1968. Spatial variation of net radiation, albedo and surface temperature of forests. Journal of Applied Meteorology and Climatology, 7(5), pp.789-795. doi:10.1175/1520-0450(1968)007<0789:SVONRA>2.0.CO;2
Kopp, G. and Lean, J.L., 2011. A new, lower value of total solar irradiance: Evidence and climate significance. Geophys. Res. Lett. 38, L01706. doi:10.1029/2010GL045777
Linacre, E.T., 1968. Estimating the net-radiation flux. Agricultural meteorology, 5(1), pp.49-63. doi:10.1016/0002-1571(68)90022-8
Meek, D.W., Hatfield, J.L., Howell, T.A., Idso, S.B. and Reginato, R.J., 1984. A generalized relationship between photosynthetically active radiation and solar radiation 1. Agronomy journal, 76(6), pp.939-945. doi:10.2134/agronj1984.00021962007600060018x
Monteith, J., and Unsworth, M., 1990. Principles of Environmental Physics, Butterworth-Heinemann, Oxford.
Sellers, P.J., 1985. Canopy reflectance, photosynthesis and transpiration, International Journal of Remote Sensing, 6:8, 1335-1372, doi:10.1080/01431168508948283
solar <- splash::calc_daily_solar(lat = 37.7,
n = 172,
elv = 142,
y = 2000,
sf = 1,
tc = 23.0)
cat(sprintf("Solar values:\n"))
#> Solar values:
cat(sprintf(" kn: %d\n", solar$kN))
#> kn: 366
cat(sprintf(" nu: %0.6f degrees\n", solar$nu_deg))
#> nu: 166.097934 degrees
cat(sprintf(" lambda: %0.6f degrees\n", solar$lambda_deg))
#> lambda: 89.097934 degrees
cat(sprintf(" rho: %0.6f\n", solar$rho))
#> rho: 1.016194
cat(sprintf(" dr: %0.6f\n", solar$dr))
#> dr: 0.968381
cat(sprintf(" delta: %0.6f degrees\n", solar$delta_deg))
#> delta: 23.436921 degrees
cat(sprintf(" ru: %0.6f\n", solar$ru))
#> ru: 0.243228
cat(sprintf(" rv: %0.6f\n", solar$rv))
#> rv: 0.725946
cat(sprintf(" rw: %0.6f\n", solar$rw))
#> rw: 823.423931
cat(sprintf(" hs: %0.6f degrees\n", solar$hs_deg))
#> hs: 109.575573 degrees
cat(sprintf(" hn: %0.6f degrees\n", solar$hn_deg))
#> hn: 101.217016 degrees
cat(sprintf(" tau_o: %0.6f\n", solar$tau_o))
#> tau_o: 0.750000
cat(sprintf(" tau: %0.6f\n", solar$tau))
#> tau: 0.752844
cat(sprintf(" Qn: %0.6f mol/m^2\n", solar$ppfd_mol.m2))
#> Qn: 62.042300 mol/m^2
cat(sprintf(" Rnl: %0.6f w/m^2\n", solar$rnl_w.m2))
#> Rnl: 84.000000 w/m^2
cat(sprintf(" Ho: %0.6f MJ/m^2\n", (1.0e-6) * solar$ra_j.m2))
#> Ho: 41.646763 MJ/m^2
cat(sprintf(" Hn: %0.6f MJ/m^2\n", (1.0e-6) * solar$rn_j.m2))
#> Hn: 21.774953 MJ/m^2
cat(sprintf(" Hnn: %0.6f MJ/m^2\n", (1.0e-6) * solar$rnn_j.m2))
#> Hnn: -3.009150 MJ/m^2