airGR (version 1.3.2.23)

PE_Oudin: Computation of series of potential evapotranspiration at the daily or hourly time steps with Oudin's formula

Description

Function which computes PE using the formula from Oudin et al. (2005). PE can be computed at the daily time step from hourly or daily temperature and at the hourly time step with hourly or daily temperature through a disaggregation of daily PE (see details).

Usage

PE_Oudin(JD, Temp, Lat, LatUnit,
         TimeStepIn = "daily", TimeStepOut = "daily")

## deprectated function PEdaily_Oudin(JD, Temp, LatRad, Lat, LatUnit)

Arguments

JD

[numeric] time series of Julian day of the year [-]; see details

Temp

[numeric] time series of daily (or hourly) mean air temperature [<U+00B0>C]

LatRad

(deprecated)[numeric] latitude of measurement for the temperature series [radians]. Please use Lat instead

Lat

[numeric] latitude of measurement for the temperature series [radians or degrees]

LatUnit

[character] latitude unit (default = "rad" or "deg")

TimeStepIn

[character] time step of inputs (e.g. "daily" or "hourly", default = "daily")

TimeStepOut

[character] time step of outputs (e.g. "daily" or "hourly", default = "daily")

Value

[numeric] time series of daily potential evapotranspiration [mm/time step]

Details

In the JD argument, the Julian day of the year of the 1st of January is equal to 1 and the 31st of December to 365 (366 in leap years)). If the Julian day of the year is computed on an object of the POSIXlt class, the user has to add 1 to the returned value (e.g. as.POSIXlt("2016-12-31")$yday + 1).

When hourly temperature is provided, all the values of the same day have to be set to the same Julian day of the year (e.g. as.POSIXlt("2016-12-31 00:00:00")$yday + 1 and as.POSIXlt("2016-12-31 00:01:00")$yday + 1). Each single day must be provided 24 identical Julian day values (one for each hour).

Four cases are possible:

  • TimeStepIn = "daily" and TimeStepOut = "daily": this is the classical application of the Oudin et al. (2005) formula

  • TimeStepIn = "daily" and TimeStepOut = "hourly": the daily temperature is used inside the PE_Oudin function to calculate daily PE, which is then disaggregated at the hourly time step with use of a sinusoidal function (see Lobligeois, 2014, p. 78)

  • TimeStepIn = "hourly" and TimeStepOut = "daily": the hourly temperature is aggregated at the daily time step and the daily PE is calculated normally within PE_Oudin

  • TimeStepIn = "hourly" and TimeStepOut = "hourly": the hourly temperature is aggregated at the daily time step, the daily PE is then calculated normally within PE_Oudin, which is finally disaggregated at the hourly time step with use of a sinusoidal function (see Lobligeois, 2014, p. 78)

The use of the PEdaily_Oudin corresponds to the first case of the use of PE_Oudin.

References

Oudin, L., F. Hervieu, C. Michel, C. Perrin, V. Andr<U+00E9>assian, F. Anctil and C. Loumagne (2005). Which potential evapotranspiration input for a lumped rainfall-runoff model?: Part 2-Towards a simple and efficient potential evapotranspiration model for rainfall-runoff modelling. Journal of Hydrology, 303(1-4), 290-306. doi:10.1016/j.jhydrol.2004.08.026.

Lobligeois, F. (2014). Mieux connaitre la distribution spatiale des pluies am<U+00E9>liore-t-il la mod<U+00E9>lisation des crues ? Diagnostic sur 181 bassins versants fran<U+00E7>ais. PhD thesis (in French), AgroParisTech (Paris), IRSTEA (Antony), France.

Examples

Run this code
# NOT RUN {
library(airGR)
data(L0123001)
PotEvap <- PE_Oudin(JD = as.POSIXlt(BasinObs$DatesR)$yday + 1,
                    Temp = BasinObs$T,
                    Lat = 0.8, LatUnit = "rad")
# }

Run the code above in your browser using DataLab