The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
The ET0models package provides 10 temperature-based
empirical models for estimating daily reference evapotranspiration
(ET0). The FAO Penman-Monteith method is included as the standard
reference against which the temperature-based models are compared and
evaluated.
Temperature-based models are particularly valuable in data-scarce environments because they require only readily available temperature data (plus humidity, day of year, and location in some cases), unlike methods that require wind speed or solar radiation measurements.
| # | Model | Function | Primary Inputs |
|---|---|---|---|
| 1 | Blaney-Criddle (1950) | et0_blaney_criddle() |
Tmean |
| 2 | Schendel (Bormann, 2011) | et0_schendel() |
Tmean, RH |
| 3 | Hargreaves-Samani (1985) | et0_hargreaves_samani() |
Tmin, Tmax, J, lat |
| 4 | Linacre (1977) | et0_linacre() |
Tmean, Tmin, Tmax, RH, z, lat |
| 5 | Tabari-Talaee 1 (2011) | et0_tabari_talee1() |
Tmin, Tmax, J, lat |
| 6 | Tabari-Talaee 2 (2011) | et0_tabari_talee2() |
Tmin, Tmax, J, lat |
| 7 | Droogers-Allen (2002) | et0_droogers_allen() |
Tmin, Tmax, J, lat |
| 8 | Berti et al. (2014) | et0_berti() |
Tmin, Tmax, J, lat |
| 9 | Dorji et al. (2016) | et0_dorji() |
Tmin, Tmax, J, lat |
| 10 | Baier-Robertson (1965) | et0_baier_robertson() |
Tmin, Tmax, J, lat |
library(ET0TempModels)
data(jhansi_weather)
head(jhansi_weather)
#> Date J Tmax Tmin RH_morning RH_evening SSH WS
#> 1 2010-01-01 1 24.1 5.1 89 49 7.2 0.20
#> 2 2010-01-02 2 25.5 4.8 88 43 8.0 1.27
#> 3 2010-01-03 3 26.5 5.8 84 32 8.0 1.32
#> 4 2010-01-04 4 24.6 5.2 94 27 6.9 1.00
#> 5 2010-01-05 5 27.1 4.9 93 44 9.1 0.35
#> 6 2010-01-06 6 26.2 1.7 69 36 5.7 1.15# FAO Penman-Monteith (reference)
et0_fao_pm(Tmin = 15, Tmax = 30, RH_morning = 90, RH_evening = 40,
u2 = 1.5, n = 8, J = 172, lat = 25.43, z = 216)
#> [1] 4.895006
# Blaney-Criddle (needs only Tmean)
et0_blaney_criddle(Tmean = 22.5)
#> [1] 5.06352
# Hargreaves-Samani (needs Tmin, Tmax, day of year, latitude)
et0_hargreaves_samani(Tmin = 15, Tmax = 30, J = 172, lat = 25.43)
#> [1] 59.36421The et0_temp_all() function runs all 10
temperature-based models plus the FAO-PM reference in a single call:
result <- et0_temp_all(
Tmin = jhansi_weather$Tmin[1:5],
Tmax = jhansi_weather$Tmax[1:5],
RH_morning = jhansi_weather$RH_morning[1:5],
RH_evening = jhansi_weather$RH_evening[1:5],
u2 = jhansi_weather$WS[1:5],
n = jhansi_weather$SSH[1:5],
J = jhansi_weather$J[1:5],
lat = 25.43,
z = 216
)
round(result, 2)
#> FAO_PM Blaney_Criddle Schendel Hargreaves_Samani Linacre Tabari_Talee1
#> 1 1.60 4.07 3.39 30.11 3.63 40.32
#> 2 2.54 4.14 3.70 32.03 4.01 42.92
#> 3 2.84 4.26 4.46 33.08 4.93 44.37
#> 4 2.38 4.11 3.94 30.92 4.77 41.42
#> 5 1.98 4.24 3.74 34.28 4.05 45.97
#> Tabari_Talee2 Droogers_Allen Berti Dorji Baier_Robertson
#> 1 3.64 3.10 2.64 2.14 2.40
#> 2 3.88 3.27 2.81 2.22 2.89
#> 3 4.01 3.38 2.91 2.27 3.05
#> 4 3.74 3.18 2.71 2.18 2.55
#> 5 4.15 3.48 3.02 2.33 3.39The package includes 9 statistical metrics for comparing temperature-based model performance against the FAO-PM reference: NSE, d, MSE, RMSE, NRMSE, MAE, MBE, r, and R-squared.
# Compute ET0 for the full year
full_result <- et0_temp_all(
Tmin = jhansi_weather$Tmin,
Tmax = jhansi_weather$Tmax,
RH_morning = jhansi_weather$RH_morning,
RH_evening = jhansi_weather$RH_evening,
u2 = jhansi_weather$WS,
n = jhansi_weather$SSH,
J = jhansi_weather$J,
lat = 25.43,
z = 216
)
# FAO-PM is the reference (observed)
obs <- full_result$FAO_PM
preds <- full_result[, c("Blaney_Criddle", "Hargreaves_Samani",
"Linacre", "Droogers_Allen")]
metrics <- evaluate_models(obs, preds)
print(metrics)
#> Model NSE d MSE RMSE NRMSE
#> 1 Blaney_Criddle 0.1042414 0.67330968 3.009673 1.734841 0.4050492
#> 2 Hargreaves_Samani -732.5828615 0.07652684 2464.776474 49.646515 11.5914262
#> 3 Linacre -3.4288074 0.62586836 14.880419 3.857515 0.9006492
#> 4 Droogers_Allen 0.3534099 0.84318367 2.172488 1.473936 0.3441334
#> MAE MBE r R2
#> 1 1.543601 49.58758 0.7861069 0.6179640
#> 2 47.203326 1183.36625 0.8433294 0.7112044
#> 3 3.441673 85.39739 0.9138930 0.8352004
#> 4 1.252408 36.82482 0.8608050 0.7409853The package exports helper functions for computing intermediate meteorological variables used internally by the models:
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.