Calculates daily photosynthetic photon flux density (ppfd) and other solar parameters as a function of latitude, day of year, elevation, and fraction of sunshine hours. Unless specified differently (by setting argument `y` different from `y=0`) it assumes 365-day years.

calc_daily_solar(lat, n, elv = 0, y = 0, sf = 1, year = 2000)

Arguments

lat

latitude (degrees)

n

day of year

elv

(Optional) elevation (m.a.s.l), defaults to 0 m.a.s.l

y

(Optional) year for day-of-year calculation, defaults to y=0 which disables leap years

sf

(Optional) fraction of sunshine hours, defaults to 1.0

year

year for calculation of orbital parameters

Value

A list of numeric values for various parameters, namely: 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

Details

The method uses orbital parameters of earth to compute photosynthetic photon flux density for any latitude, year and day of year. It computes top-of- the-atmosphere irradiation ('extraterrestrial') and considers atmosphere's transmissivity and the elevation of the study area to derive ppfd.

Orbital parameters as a function of year are calculated by the method outlines in: Andre L. Berger, 1978, "Long-Term Variations of Daily Insolation and Quaternary Climatic Changes", JAS, v.35, p.2362.

References

Andre L. Berger, 1978, "Long-Term Variations of Daily Insolation and Quaternary Climatic Changes", JAS, v.35, p.2362.

Berger et al. (1993), Woolf (1968), Eq. 1.10.3, Duffy & Beckman (1993), Eq. 11, Linacre (1968); Eq. 2, Allen (1996)

Examples

print("Daily ppfd, in mol/m2/day, on a sunny day (sf=1.0) in summer 2024 (DOY=180):")
#> [1] "Daily ppfd, in mol/m2/day, on a sunny day (sf=1.0) in summer 2024 (DOY=180):"
          print(calc_daily_solar(lat=46.95, n=180, elv=558, sf=1.0, year=2024)$ppfd_mol.m2)
#> [1] 62.61457