Type: | Package |
Title: | Meteorological Tools |
Version: | 0.1.1 |
Maintainer: | Ullrich Dettmann <ullrich.dettmann@thuenen.de> |
Description: | Meteorological Tools following the FAO56 irrigation paper of Allen et al. (1998) [1]. Functions for calculating: reference evapotranspiration (ETref), extraterrestrial radiation (Ra), net radiation (Rn), saturation vapor pressure (satVP), global radiation (Rs), soil heat flux (G), daylight hours, and more. [1] Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9). |
BugReports: | https://bitbucket.org/UlliD/meto/issues |
Imports: | lubridate |
License: | GPL-2 | GPL-3 [expanded from: GPL (≥ 2)] |
Depends: | R (≥ 3.3.0) |
Encoding: | UTF-8 |
RoxygenNote: | 7.2.0 |
Suggests: | testthat |
NeedsCompilation: | no |
Packaged: | 2022-05-25 07:22:04 UTC; ullrich |
Author: | Ullrich Dettmann [aut, cre], R. Grima [aut] |
Repository: | CRAN |
Date/Publication: | 2022-05-25 08:20:16 UTC |
FAO-56 Penman-Monteith grass reference evapotranspiration
Description
FAO Penman-Monteith equations to compute grass reference evapotranspiration from weather data for daily, monthly, hourly or shorter periods.
Usage
ETref(
x,
Tmax = NULL,
Tmin = NULL,
Rhmax = NULL,
Rhmin = NULL,
Tmean = NULL,
Rhmean = NULL,
u = NULL,
Rs = NULL,
n = NULL,
P = NULL,
elev,
lat.rad = NULL,
lat.deg = NULL,
long.deg = NULL,
tl,
G = NULL,
actVP = NULL,
control = list()
)
Arguments
x |
date-time object or day of the year (must be date-time object if calculation period is shorter than a day) |
Tmax |
maximum temperature [degreeC] during 24-hour period (for daily values) |
Tmin |
minimum temperature [degreeC] during 24-hour period (for daily values) |
Rhmax |
maximum of air humidity [percent] during 24-hour period (for daily values) |
Rhmin |
minimum of air humidity [percent] during 24-hour period(for daily values) |
Tmean |
mean air temperature [degreeC]. For periods shorter 1 day. |
Rhmean |
mean relative air humidity [percent]. For periods shorter 1 day or if Rhmax and Rhmin are missing. |
u |
wind speed [m/s] at 2 meter height. If measurement height is not 2 m, define height with control <- list(uz = 2) |
Rs |
solar radiation [MJ/(m2 time)] |
n |
actual hours of sunshine. Used to calculate Rs if Rs messurements are not available (see |
P |
air pressure [kPa]. Estimated with |
elev |
station elevation above sea level [m] |
lat.rad |
latitude [rad]. Use either lat.rad or lat.deg. Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
lat.deg |
latitude [degree]. Use either lat.deg or lat.rad. Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
long.deg |
longitude [degree] east of Greenwich (for periods < 1 day) |
tl |
length of calculation period [hour] (1 for hourly, 0.5 for 30-minute and 24 for daily period). Only needed if x is date-time object with length of 1. |
G |
soil heat flux (Assumed to be 0 for daily calculations) (for calculation periods shorter than a day estimated with |
actVP |
Actual vapor pressure [kPa]. If Rhmax, Rhmin and Rhmean are NULL |
control |
list for control parameters and empirical factors (see details, |
Details
- x:
-
must be provided as.numeric (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
- control: (see also
controlDefaults
andconstDefaults
) -
Lz:
longitude of the centre of the local time zone (degrees west of Greenwich)
- 0 for Greenwich
- 345 for Germany
- 330 for Cairo (Egypt)
- 255 for Bangkok (Thailand)
- 75, 90, 105 and 120 for Eastern, Central, Rocky Mountain and Pacific time zones (United States)
Lz is only needed if calculation period is shorter than 1 day.
uz: height of wind measurements (m)
albedo: default 0.23 for the hypothetical grass and alfalfa reference crops used in the FAO-56 PM equations
as: regression constant, expressing fraction of extraterrestrial radiation reaching earth on overcast days (n = 0) (default = 0.25)
bs: as + bs fraction of extraterrestrial radiation reaching earth on clear days (n = N) (default = 0.5)
Tko: reference temperature [degreeC] at elevation z0. Only needed if atmospheric pressure is missing. Often assumed to be 20 degreeC.
z0: elevation at reference level (fefault = 0 [m])
est.ratio.Rs.Rso:
Rs/Rso is used to represent cloud cover. For hourly or shorter periods during the nighttime, the ratio Rs/Rso is set equal to the Rs/Rso calculated for a time period occurring 2-3 hours before sunset. If single values during nighttime are calculated Rs/Rso ration 2-3 hours before sunset can not be calculated and an approximation is needed. Following Allen (1999) one can assume Rs/Rso = 0.4 to 0.6 during nighttime periods in humid and subhumid climates and Rs/Rso = 0.7 to 0.8 in arid and semiarid climates. A value of Rs/Rso = 0.3 presumes total cloud cover.
Value
grass reference evapotranspiration [mm]
Note
eq. 6 from reference for daily and eq. 53 for hourly or shorter periods
Author(s)
Ullrich Dettmann
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
# --------------------------------------------
# Daily Evapotranspiration
# --------------------------------------------
ETref(x = 187, Rs = 22.07, elev = 100, lat.deg = 50.8, Tmax = 21.5, Tmin = 12.3,
Rhmax = 84, Rhmin = 63,
u = 2.78, control = list(uz = 10), P = 100.1)
# Calculation with sunshine hour (n) instead of
# global radiation (Rs) (Rs ist estimated from n with estRs):
ETref(x = 187, n = 9.25, elev = 100, lat.deg = 50.8, Tmax = 21.5, Tmin = 12.3,
Rhmax = 84, Rhmin = 63,
u = 2.78, control = list(uz = 10), P = 100.1)
# --------------------------------------------
# Hourly Evapotranspiration
# --------------------------------------------
ETref(x = as.POSIXct(c('2018-10-01 14:30', '2018-10-01 15:30')),
Tmean = c(38, 37.8), Rhmean = c(52, 52.3), u = c(3.3, 3.2), Rs = c(2.450, 2.5), elev = 8,
lat.deg = 16.22, long.deg = 343.75, G = c(0.175, 0.178) , P = c(101.21, 101.21) ,
control = list(Lz = 15))
# If only one time step is calculated tl must be provided (1 for hourly, 0.5 for 30 minute periods):
ETref(x = as.POSIXct('2018-10-01 14:30'), tl = 1,
Tmean = 38, Rhmean = 52, u = 3.3, Rs = 2.450, elev = 8,
lat.deg = 16.22, long.deg = 343.75, G = 0.1749218, P = 101.2056,
control = list(Lz = 15))
# Calculation with missing soil heat flux (G) and atmospheric pressure (P) (G is estimated with estG
# and P with estP)
ETref(x = as.POSIXct('2018-10-01 14:30'), tl = 1,
Tmean = 38, Rhmean = 52, u = 3.3, Rs = 2.450, elev = 8,
lat.deg = 16.22, long.deg = 343.75,
control = list(Lz = 15))
# --------------------------------------------
Extraterrestrial radiation
Description
Extraterrestrial radiation [MJ/(m2 time)] in dependence to time, latitude and longitude.
Usage
Ra(x, lat.rad = NULL, lat.deg = NULL, long.deg, tl, control = list(Lz = 345))
Arguments
x |
date-time object or day of the year (must be date-time object if calculation period is smaller 1 day) |
lat.rad |
latitude [rad]. Use either lat.rad or lat.deg. Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
lat.deg |
latitude [degree]. Use either lat.deg or lat.rad. Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
long.deg |
longitude of the measurement site (degrees east of Greenwich) (only needed for periods shorter 1 day) |
tl |
length of calculation period [hour] (1 for hourly period, 0.5 for a 30-minute period or 24 for daily period). Only needed if x is date-time object with length of 1. |
control |
list for control parameters and empirical factors defined in
|
Details
- x:
-
must be provided as.numeric (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
- control:
-
Lz (for periods < 1 day):
longitude of the centre of the local time zone (degrees west of Greenwich)
- 0 for Greenwich
- 345 for Germany
- 330 for Cairo (Egypt)
- 255 for Bangkok (Thailand)
- 75, 90, 105 and 120 for Eastern, Central, Rocky Mountain and Pacific time zones (United States)
Note
eq. 21 (period = 1 day) and eq. 28 (hourly or shorter) of the reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
# --------------------------------------------
# Daily period
# --------------------------------------------
Ra(x = 105, lat.deg = 13.73)
# --------------------------------------------
# Hourly period
# --------------------------------------------
Ra(x = as.POSIXct(c('2018-10-01 14:30', '2018-10-01 15:30')),
lat.deg = 16.21, long.deg = 343.75, control = list(Lz = 15))
Ra(x = as.POSIXct('2018-10-01 14:30'), tl = 1,
lat.deg = 16.21, long.deg = 343.75, control = list(Lz = 15))
Net radiation (Rn)
Description
Difference between the incoming net shortwave radiation (Rns
) and the outgoing net longwave radiation (Rnl
).
Usage
Rn(
x,
Tmax = NULL,
Tmin = NULL,
Rhmax = NULL,
Rhmin = NULL,
Rs = NULL,
n = NULL,
elev,
lat.rad = NULL,
lat.deg = NULL,
long.deg = NULL,
Rhmean = NULL,
actVP = NULL,
Tmean = NULL,
tl,
control = list()
)
Arguments
x |
date-time object or day of the year (must be date-time object if calculation period is shorter than a day) |
Tmax |
maximum temperature [degreeC] during 24-hour period (for daily values) |
Tmin |
minimum temperature [degreeC] during 24-hour period (for daily values) |
Rhmax |
daily maximum of air humidity [percent] (for daily values) |
Rhmin |
daily minimum of air humidity [percent] (for daily values) |
Rs |
incoming solar radiation [MJ/(m2 time)] |
n |
Actual hours of sunshine. Used to calculate Rs if missing. |
elev |
station elevation above sea level [m] |
lat.rad |
latitude [rad]. Use either lat.rad or lat.deg. Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
lat.deg |
latitude [degree]. Use either lat.deg or lat.rad. Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
long.deg |
longitude of the measurement site (degrees east of Greenwich) (for periods < 1 day) |
Rhmean |
Mean air humidity [percent] for periods < day or if Rhmax and Rhmin are missing |
actVP |
Actual vapor pressure [kPa]. If Rhmax, Rhmin and Rhmean are NULL |
Tmean |
Mean air temperature [degree C] for periods < day |
tl |
length of calculation period [hour] (1 for hourly period, 0.5 for a 30-minute period or 24 for daily period). Only needed if x is date-time object with length of 1. |
control |
list for control parameters and empirical factors (see Details) |
Details
for daily and hourly calculations
- x:
-
must be provided as.numeric (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
- control:
-
albedo: default 0.23 for the hypothetical grass and alfalfa reference crops used in the FAO-56 PM equations
as: regression constant, expressing fraction of extraterrestrial radiation reaching earth on overcast days (n = 0) (default = 0.25)
bs: as + bs fraction of extraterrestrial radiation reaching earth on clear days (n = N) (default = 0.5)
Value
net radiation
Note
eq. 40 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
See Also
Examples
# --------------------------------------------
# Daily period
# --------------------------------------------
Rn(x = 105, n = 8.5, elev = 2, actVP = 2.85, Tmax = 34.8,
Tmin = 25.6, lat.deg = 13.73)
Rn(x = 135, elev = 1, Rs = 14.5, Tmax = 25.1, Tmin = 19.1,
lat.deg = -22.9, actVP = 2.1)
# --------------------------------------------
# Hourly period
# --------------------------------------------
Rn(x = as.POSIXct(c('2018-10-01 14:30', '2018-10-01 15:30')), Tmean = c(38, 37.8),
Rhmean = c(52, 52.2), Rs = c(2.450, 2.1), elev = 8, lat.deg = 16.2,
long.deg = 343.75, control = list(Lz = 15))
Rn(x = as.POSIXct('2018-10-01 14:30'), Tmean = 38, Rhmean = 52, tl = 1, Rs = 2.450,
elev = 8, lat.deg = 16.2, long.deg = 343.75, control = list(Lz = 15))
Net longwave radiation (Rnl)
Description
Net longwave radiation (Rnl).
Usage
Rnl(
x,
Tmax = NULL,
Tmin = NULL,
Rhmax = NULL,
Rhmin = NULL,
Rs = NULL,
lat.rad = NULL,
lat.deg = NULL,
long.deg = NULL,
elev,
actVP = NULL,
tl,
Tmean = NULL,
Rhmean = NULL,
control = list()
)
Arguments
x |
date-time object or day of the year (must be date-time object if calculation period is shorter than a day) |
Tmax |
maximum temperature [degreeC] during 24-hour period (for daily values) |
Tmin |
minimum temperature [degreeC] during 24-hour period (for daily values) |
Rhmax |
daily maximum of air humidity [percent] (for daily values) |
Rhmin |
daily minimum of air humidity [percent] (for daily values) |
Rs |
incoming solar radiation [MJ/(m2 time)] |
lat.rad |
latitude [rad]. Use either lat.rad or lat.deg. Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
lat.deg |
latitude [degree]. Use either lat.deg or lat.rad. Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
long.deg |
see |
elev |
station elevation above sea level [m] |
actVP |
Actual vapor pressure [kPa]. If Rhmax, Rhmin and Rhmean are NULL |
tl |
length of calculation period [hour] (1 for hourly period, 0.5 for a 30-minute period or 24 for daily period). Only needed if length of x is date-time object with length of 1. |
Tmean |
mean temperature [degreeC] during the time period (for periods shorter than a day) |
Rhmean |
Mean air humidity [percent] (for periods shorter than a day or if Rhmax and Rhmin are missing) |
control |
list for control parameters and empirical factors (see Details and |
Details
- x:
-
must be provided as.numeric (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
- control:
-
Lz:
longitude of the centre of the local time zone (degrees west of Greenwich)
- 0 for Greenwich
- 345 for Germany
- 330 for Cairo (Egypt)
- 255 for Bangkok (Thailand)
- 75, 90, 105 and 120 for Eastern, Central, Rocky Mountain and Pacific time zones (United States)
Lz is only needed if calculation period is shorter 1 day.
est.ratio.Rs.Rso:
Rs/Rso is used to represent cloud cover. For hourly or shorter periods during the nighttime, the ratio Rs/Rso is set equal to the Rs/Rso calculated for a time period occurring 2-3 hours before sunset. If single values during nighttime are calculated Rs/Rso ration 2-3 hours before sunset can not be calculated and an approximation is needed. Following Allen (1999) one can assume Rs/Rso = 0.4 to 0.6 during nighttime periods in humid and subhumid climates and Rs/Rso = 0.7 to 0.8 in arid and semiarid climates. A value of Rs/Rso = 0.3 presumes total cloud cover.
Value
Rnl net outgoing longwave radiation [MJ(/m2 time)]
Note
eq. 39 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Net solar or net shortwave radiation (Rns)
Description
Net shortwave radiation is the balance between incoming and reflected solar radiation.
Usage
Rns(Rs, control = list(albedo = 0.23))
Arguments
Rs |
incoming solar radiation [MJ/(m2 time)] |
control |
list for control parameters and empirical factors (see Details) |
Details
- control:
-
albedo [-]: 0.23 for hypothetical grass and alfalfa reference crops used in the FAO-56 PM equations
valid for daily and shorter periods
Value
Rns net solar or shortwave radiation [MJ/(m2 time)]
Note
eq. 38 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
Rns(Rs = 22.1)
Rns(Rs = 22.1, control = list(albedo = 0.20))
Clear-sky solar radiation (Rso)
Description
Clear-sky solar radiation for daily and shorter periods.
Usage
Rso(
x,
lat.rad = NULL,
lat.deg = NULL,
long.deg = NULL,
elev,
tl,
control = list(Lz = 345)
)
Arguments
x |
date-time object or day of the year (must be date-time object if calculation period is shorter than a day) |
lat.rad |
latitude [rad]. Use either lat.rad or lat.deg. Latitude is positive for the northern and negative for the southern hemisphere |
lat.deg |
latitude [degree]. Use either lat.deg or lat.rad. Latitude is positive for the northern and negative for the southern hemisphere |
long.deg |
longitude of the measurement site (degrees east of Greenwich) (only needed for periods < 1 day) |
elev |
station elevation above sea level [m] |
tl |
length of calculation period [hour] (1 for hourly period, 0.5 for a 30-minute period or 24 for daily period). |
control |
list for control parameters and empirical factors defined in
|
Details
- x:
-
must be provided as.numeric (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt, and Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
- control:
-
Lz:
longitude of the centre of the local time zone (degrees west of Greenhich)
- 0 for Greenwich
- 345 for Germany
- 330 for Cairo (Egypt)
- 255 for Bangkok (Thailand)
- 75, 90, 105 and 120 for Eastern, Central, Rocky Mountain and Pacific time zones (United States)
Lz is only needed if calculation period is shorter 1 day.
for day, hour and shorter periods
References
eq. 37; Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
# --------------------------------------------
# Daily period
# --------------------------------------------
Rso(x = 135, elev = 1, lat.deg = -22.9)
# --------------------------------------------
# Hourly period
# --------------------------------------------
Rso(x = as.POSIXct('2018-10-01 12:30'), tl = 1, elev = 8, lat.deg = 16.2,
long.deg = 343.75, control = list(Lz = 15))
Solar declination
Description
Calculate solar declination for daily and shorther periods.
Usage
SolarDec(x)
Arguments
x |
date or day of the year |
Details
- x:
-
must be provided as number (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
Note
eq. 24 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Actual vapor pressure
Description
Calculate actual vapour pressure [kPa] either from psychrometric data or from relative humidity data.
Usage
VP(
Tmax = NULL,
Tmin = NULL,
Rhmax = NULL,
Rhmin = NULL,
interval = "day",
Tmean = NULL,
Rhmean = NULL,
Twet = NULL,
Tdry = NULL,
apsy = NULL,
P = NULL
)
Arguments
Tmax |
maximum temperature during 24-hour period (for daily values) |
Tmin |
minimum temperature during 24-hour period (for daily values) |
Rhmax |
maximum relative humidity [precent] (for daily values) |
Rhmin |
minimum relative humidity [precent] (for daily values) |
interval |
hour, day, week or month |
Tmean |
Mean air temperature [degreeC] (for periods shorter 1 day) |
Rhmean |
Mean air humidity [percent] (for periods shorter 1 day or if Rhmax and Rhmin are missing) |
Twet |
wet bulb temperature (for calculation with psychrometric data) |
Tdry |
dry bulb tamperature (for calculation with psychrometric data) |
apsy |
coefficient depending on the type of ventilation of the wet bulb [kPa/(degreeC)] (for calculation with psychrometric data) |
P |
atmospheric pressure [kPa] |
Details
- x:
-
must be provided as.numeric (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
- interval:
-
- use hour for periods <= one hour
- for day, week or month the same equations are used
Note
eq. 17 of reference (Determination of actual vapour pressure from relative maximum and minimum humidity)
eq. 15 of reference (Actual vapour pressure derived from psychrometric data) (see psyc_cons
)
eq. 19 of reference (used in the absence of RHmax and RHmin)
eq. 54 of reference (for periods shorter than a day)
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
See Also
Examples
VP(Tmax = 25, Tmin = 18, Rhmax = 82, Rhmin = 54)
VP(Tmax = 25, Tmin = 18, Rhmean = 68)
Adjust wind speed data
Description
Adjust wind speed data to 2 meter height.
Usage
adj_u2(u, uz)
Arguments
u |
measured wind speed at uz above ground surface [m/s] |
uz |
height of windspeed measurement above ground surface [m] |
Note
eq. 47 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
adj_u2(3.2, uz = 10)
Constants
Description
Constants required for calculations.
Usage
constDefaults
Format
GSC: solar constant (0.0820 [MJ/(m2 min)])
sigma: Stefan-Boltzmann constant (4.903 10^-9 [MJ/(K4 m2 day)])
a1: constant lapse rate moist air (0.0065 [K/m]) (e.g. in estP
)
R: specific gas constant (287 [J/(kg K)]) (e.g. in estP
)
g: gravitational acceleration (9.807 [m/s2]) (e.g. in estP
)
eps: ratio molecular weight of water vapour/dry air (0.622) (e.g. in psyc_cons
)
lambda: latent heat of vaporization (2.45 [MJ/kg]) (e.g. in psyc_cons
)
cp: specific heat at constant pressure (1.013 10-3 [MJ/(kg degreeC)]) (e.g. in psyc_cons
)
Control default values
Description
Default values for control. If necessary modify with control = list() in function call.
Usage
controlDefaults
Format
albedo: 0.23 [-] for hypothetical grass and alfalfa reference crops used in
the FAO-56 PM equations (e.g. in ETref
, Rn
or estG
)
Po: atmospheric pressure at sea level (101.3 [kPa])
z0: elevation at reference level (0 [m]) (e.g. in ETref
or estP
)
Tko: reference temperature [degreeC] at elevation z0. Often assumed to be 20 degreeC (e.g. in ETref
or estP
)
uz: height of windspeed measurement above ground surface (2 [m]) (e.g. in ETref
or adj_u2
)
Lz:
longitude of the centre of the local time zone (degrees west of Greenwich)
- 0 for Greenwich
- 345 for Germany
- 330 for Cairo (Egypt)
- 255 for Bangkok (Thailand)
- 75, 90, 105 and 120 for Eastern, Central, Rocky Mountain and Pacific time zones (United States)
Lz is only needed if calculation period is shorter 1 day.
as: regression constant, expressing fraction of extraterrestrial radiation reaching earth on overcast days (default = 0.25) (e.g. in ETref
, Rn
or estRs
)
bs: as + bs fraction of extraterrestrial radiation reaching earth on clear days (default = 0.5) (e.g. in ETref
, Rn
or estRs
)
est.ratio.Rs.Rso:
Rs/Rso is used to represent cloud cover. For hourly or shorter periods during the nighttime,
the ratio Rs/Rso is set equal to the Rs/Rso calculated for a time period occurring 2-3 hours before sunset.
If single values during nighttime are calculated Rs/Rso ratio 2-3 hours before sunset can not be calculated
and an approximation is needed. Following Allen (1999) one can assume Rs/Rso = 0.4 to 0.6 during nighttime periods
in humid and subhumid climates and Rs/Rso = 0.7 to 0.8 in arid and semiarid climates. A value of Rs/Rso = 0.3 presumes
total cloud cover.
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Slope of the saturation vapor pressure curve
Description
Slope of the saturation vapor pressure curve [kPa/degreeC].
Usage
deltaVP(Tmean = NULL, Tmax = NULL, Tmin = NULL)
Arguments
Tmean |
Mean Temperature [degreeC] (mean daily, mean hourly, etc. air temperature) |
Tmax |
maximum temperature during 24-hour period [degreeC] (if Tmean is missing) |
Tmin |
minimum temperature during 24-hour period [degreeC] (if Tmean is missing) |
Details
valid for daily, hourly and shorter periods
Value
slope of the saturation vapor pressure curve [kPa/degreeC]
Note
eq. 13 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
deltaVP(Tmax = 34.8, Tmin = 25.6)
deltaVP(Tmean = 30.2)
Dayligth hours (N)
Description
Dayligth hours in dependence to latitude.
Usage
dlh(x, lat.rad = NULL, lat.deg = NULL)
Arguments
x |
date-time object or day of the year |
lat.rad |
latitude [rad] (either lat.rad or lat.deg). Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
lat.deg |
latitude [degree] (either lat.rad or lat.deg). Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
Details
- x:
-
must be provided as number (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
Note
eq. 34 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
dlh(x = 105, lat.deg = 13.73)
dlh(x = 105, lat.rad = 0.283)
dlh(x = as.Date('2018-04-15'), lat.deg = 13.73)
Inverse relative distance Earth-Sun
Description
Calculate inverse relative distance Earth-Sun for daily and shorther periods.
Usage
dr(x)
Arguments
x |
date-time object or Day of the year |
Details
- x:
-
must be provided as number (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
Note
eq. 23 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Saturation Vapor Pressure
Description
Mean saturation vapour pressure [kPa] for short time intervals less than a day. Calculated with air temperature.
Usage
e0(Temp)
Arguments
Temp |
Temperature [degreeC] |
Value
saturation vapour pressure at air temperature [kPa/degreeC])
Note
eq. 11 of the reference
for day, week, decade or month, the mean saturation vapour pressure should be computed with satVP
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
See Also
Estimate soil heat flux (G)
Description
Estimate soil heat flux (G) for periods shorter than a day.
Usage
estG(
x,
Rs,
Tmean,
Rhmean,
lat.rad = NULL,
lat.deg = NULL,
long.deg = NULL,
elev = 1,
tl,
control = list(albedo = 0.23, Lz = 345, est.ratio.Rs.Rso = NA)
)
Arguments
x |
date-time object (see details) |
Rs |
incoming solar radiation [MJ/(m2 time)] |
Tmean |
Mean air temperature [degreeC] |
Rhmean |
Mean air humidity [percent] |
lat.rad |
latitude [rad]. Use either lat.rad or lat.deg. Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
lat.deg |
latitude [degree]. Use either lat.deg or lat.rad. Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
long.deg |
longitude of the measurement site (degrees east of Greenwich) |
elev |
station elevation above sea level [m] |
tl |
length of calculation period [hour] (1 for hourly period, 0.5 for a 30-minute period or 24 for daily period). Only needed if x is date-time object with length of 1. |
control |
list for control parameters and empirical factors defined in
|
Details
during daylight periods G is estimated to be Rn
x 0.1 During nighttime G = Rn
x 0.5.
Day is defined for extraterrestrial radiation > 0.
- x:
-
must be provided as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
- control:
-
albedo:
default 0.23 for the hypothetical grass and alfalfa reference crops used in
the FAO-56 PM equations
Lz:
longitude of the centre of the local time zone (degrees west of Greenwich)
- 0 for Greenwich
- 345 for Germany
- 330 for Cairo (Egypt)
- 255 for Bangkok (Thailand)
- 75, 90, 105 and 120 for Eastern, Central, Rocky Mountain and Pacific time zones (United States)
Lz is only needed if calculation period is shorter 1 day.
est.ratio.Rs.Rso:
Rs/Rso is used to represent cloud cover. For hourly periods during the nighttime, the ratio Rs/Rso is set equal to the Rs/Rso calculated for a time period occurring 2-3 hours before sunset. If single values during nighttime are calculated Rs/Rso ration 2-3 hours before sunset can not be calculated and an approximation is needed. Following Allen (1999) one can assume Rs/Rso = 0.4 to 0.6 during nighttime periods in humid and subhumid climates and Rs/Rso = 0.7 to 0.8 in arid and semiarid climates. A value of Rs/Rso = 0.3 presumes total cloud cover.
Note
eq. 45 and 46 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
estG(x = as.POSIXct(c('2018-10-01 14:30', '2018-10-01 15:00')), Tmean = 38, Rhmean = 52, Rs = 2.450,
elev = 8, lat.deg = 16.21, long.deg = 343.75, control = list(Lz = 15))
estG(x = as.POSIXct('2018-10-01 02:30'), Tmean = 28, Rhmean = 90, tl = 1, Rs = 0, elev = 8,
lat.deg = 16.2, long.deg = 343.75, control = list(Lz = 15, est.ratio.Rs.Rso = 0.8))
estG(x = as.POSIXct('2018-10-01 14:30'), Tmean = 38, Rhmean = 52, tl = 1, Rs = 2.450, elev = 8,
lat.deg = 16.21, long.deg = 343.75, control = list(Lz = 15))
Estimate atmospheric pressure (P)
Description
Values for atmospheric pressure as a function of altitude.
Usage
estP(elev, control = list(Tko = 20))
Arguments
elev |
elevation [m] |
control |
list for control parameters and empirical factors defined in
|
Details
- Control variables:
-
Tko: reference temperature [degreeC] at elevation z0. Often assumed to be 20 degreeC
z0: elevation at reference level [m]
a1: constant lapse rate moist air (0.0065 [K/m])
g: gravitational acceleration (9.807 [m/s2])
R: specific gas constant (287 [J/(kg K)])
Value
atmospheric pressure [kPa]
Note
eq. 3-2 of Reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
estP(elev = 25, control = list(Tko = 20))
Estimate solar radiation (Rs)
Description
Rs is calculated from relative sunshine duration and extraterrestrial radiation with the Angstrom formula.
Usage
estRs(
x,
n,
lat.rad = NULL,
lat.deg = NULL,
tl,
control = list(as = 0.25, bs = 0.5)
)
Arguments
x |
date-time object or Day of the year |
n |
actual duration of sunshine [hour] |
lat.rad |
latitude [rad] (either lat.rad or lat.deg). Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
lat.deg |
latitude [degree] (either lat.rad or lat.deg). Latitude is positive for the northern hemisphere and negative for the southern hemisphere |
tl |
length of calculation period [hour] (1 for hourly, 0.5 for a 30-minute or 24 for daily period). Only needed if length of x is date-time object with length of 1. |
control |
list for control parameters and empirical factors defined in |
Details
- control:
-
as: regression constant, expressing fraction of extraterrestrial radiation reaching earth on overcast days (n = 0) (default = 0.25)
bs: as + bs fraction of extraterrestrial radiation reaching earth on clear days (n = N) (default = 0.5)
- x:
-
must be provided as.numeric (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
Value
solar or shortwave radiation (Rs) [MJ/(m2 day)]
Note
eq. 35 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
estRs(x = 135, n = 7, lat.rad = NULL, lat.deg = -22.9)
Prepare date
Description
Checks if x is date-time object or day of the year (doy) and returns doy.
Usage
prep.date(x)
Arguments
x |
date-time object or Day of the year |
Value
Day of the year
psychrometric constant
Description
The psychrometric constant [kPa/degreeC]
Usage
psyc_cons(elev, P = NULL, control = list())
Arguments
elev |
elevation [m] |
P |
atmospheric pressure [kPa] |
control |
list for control parameters and empirical factors
defined in |
Details
- control:
-
Tko: reference temperature [degreeC] at elevation z0. Only needed if atmospheric pressure is missing. Often assumed to be 20 degreeC
elev: station elevation above sea level [m]. Needed if P = NULL forestP
lambda: latent heat of vaporization [MJ/kg]
eps: ratio molecular weight of water vapor/dry air = 0.622
cp: specific heat of moist air = 1.013 x 10-3 [MJ/(kg degreeC)]
Value
psychrometric constant [kPa/degreeC]
Note
eq. 8 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
psyc_cons(elev = 2, P = 101.3)
Saturation Vapor Pressure
Description
Saturation vapor pressure [kPa].
Usage
satVP(
Tmax = NULL,
Tmin = NULL,
Tmean = NULL,
interval = "day",
print.warning = T
)
Arguments
Tmax |
maximum temperature [degreeC] for daily, weekly, monthly periods |
Tmin |
minimum temperature [degreeC] for daily, weekly, monthly periods |
Tmean |
mean air temperature [degreeC] for hourly or shorter periods |
interval |
hour, day, week or month |
print.warning |
TRUE or FALSE |
Details
- interval:
hour (eq. 11 of reference)
- interval:
day, week or month (eq. 12 of reference or eq. 11 if only Tmean is provided)
Value
Saturation Vapor Pressure [kPa]
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
See Also
Examples
satVP(Tmax = 24.5, Tmin = 15, interval = 'day')
satVP(Tmax = 24.5, Tmin = 15, interval = 'week')
satVP(Tmax = 24.5, Tmin = 15, interval = 'month')
satVP(Tmax = 24.5, Tmin = 15, interval = 'hour')
satVP(Tmean = 19.75, interval = 'hour')
Solar time angle
Description
Solar time angle at midpoint of the period (for periods < 1 day).
Usage
w(x, long.deg, control = list(Lz = 345))
Arguments
x |
date-time object (e.g, POSIXct, POSIXlt or Date objects). |
long.deg |
longitude of the measurement site (degrees east of Greenwich) (for periods < 1 day) |
control |
list for control parameters and empirical factors (see Details) |
Details
- control:
-
Lz:
longitude of the centre of the local time zone (degrees west of Greenwich)
- 0 for Greenwich
- 345 for Germany
- 330 for Cairo (Egypt)
- 255 for Bangkok (Thailand)
- 75, 90, 105 and 120 for the Eastern, Central, Rocky Mountain and Pacific time zones (United States)
Note
eq. 31 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Sunset hour angle
Description
Sunset hour angle for given latitude and solar declination (SolarDec
).
Usage
ws(x, lat.rad)
Arguments
x |
date-time object or day of the year |
lat.rad |
latitude [rad] |
Details
- x:
-
must be provided as number (1-366) or as a common date-time object (e.g, POSIXct, POSIXlt or Date objects). All formats for which is.timepoint from the lubridate package returns TRUE can be used
Value
Sunset hour angle
Note
eq. 25 of reference
References
Allen, R. G., Pereira, L. S., Raes, D., & Smith, M. (1998). Crop evapotranspiration-Guidelines for computing crop water requirements-FAO Irrigation and drainage paper 56. FAO, Rome, 300(9).
Examples
ws(x = 246, lat.rad = -0.35)