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.

Introduction to ET0MassModels

Overview

The ET0MassModels package provides 10 mass transfer-based empirical models for estimating daily reference evapotranspiration (ET0). The FAO Penman-Monteith method is included as the standard reference against which the mass transfer-based models are compared and evaluated.

Mass transfer-based models estimate evaporation from the vapor pressure deficit and wind speed, making them suitable where humidity and wind data are available but radiation data are limited.

Mass Transfer-Based Models

# Model Function Primary Inputs
1 Dalton (1802) et0_dalton() Tmin, Tmax, RH, u
2 Trabert (1896) et0_trabert() Tmin, Tmax, RH, u
3 Meyer (1926) et0_meyer() Tmin, Tmax, RH, u
4 Rohwer (1931) et0_rohwer() Tmin, Tmax, RH, u
5 Penman (1948) et0_penman() Tmin, Tmax, RH, u
6 Albrecht (1950) et0_albrecht() Tmin, Tmax, RH, u
7 WMO (1966) et0_wmo() Tmin, Tmax, RH, u
8 Brockamp-Wenner (1963) et0_brockamp_wenner() Tmin, Tmax, RH, u
9 Romanenko (1961) et0_romanenko() Tmean, Tmin, Tmax, RH
10 Mahringer (1970) et0_mahringer() Tmin, Tmax, RH, u

Quick Start

Loading the Package and Data

library(ET0MassModels)
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

Computing ET0 for a Single Day

# FAO Penman-Monteith (reference)
et0_fao_pm(Tmin = 15, Tmax = 35, RH_morning = 90, RH_evening = 40,
           u2 = 1.5, n = 9, J = 172, lat = 25.43, z = 216)
#> [1] 5.611876

# Dalton (linear wind function)
et0_dalton(Tmin = 15, Tmax = 35, RH_morning = 90, RH_evening = 40, u = 1.5)
#> [1] 8.384469

# Romanenko (temperature and humidity based)
et0_romanenko(Tmean = 25, Tmin = 15, Tmax = 35,
              RH_morning = 90, RH_evening = 40)
#> [1] 8.70556

Computing All 10 Mass Transfer-Based Models at Once

result <- et0_mass_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 Dalton Trabert Meyer Rohwer Penman Albrecht  WMO Brockamp_Wenner
#> 1   1.60   3.09    1.12  3.13   2.83  16.05     1.30 1.12            2.12
#> 2   2.54   4.48    3.40  4.31   4.35  19.57     4.69 1.77            5.94
#> 3   2.84   5.76    4.42  5.52   5.60  24.95     6.16 2.27            7.71
#> 4   2.38   5.05    3.55  4.91   4.84  22.97     4.59 1.96            6.27
#> 5   1.98   4.04    1.88  4.06   3.74  20.44     2.12 1.49            3.48
#>   Romanenko Mahringer
#> 1      4.74      1.04
#> 2      5.53      3.16
#> 3      6.96      4.11
#> 4      6.66      3.30
#> 5      5.62      1.75

Evaluating Model Performance Against FAO-PM

full_result <- et0_mass_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
)

obs   <- full_result$FAO_PM
preds <- full_result[, c("Dalton", "Meyer", "WMO", "Mahringer")]
metrics <- evaluate_models(obs, preds)
print(metrics)
#>       Model         NSE         d       MSE     RMSE     NRMSE      MAE
#> 1    Dalton -11.0745334 0.5145592 40.569413 6.369412 1.4871250 4.576065
#> 2     Meyer  -9.1394406 0.5390250 34.067664 5.836751 1.3627597 4.237460
#> 3       WMO   0.3758223 0.8909920  2.097184 1.448166 0.3381165 1.193545
#> 4 Mahringer  -3.4615148 0.6982560 14.990313 3.871733 0.9039688 2.502738
#>        MBE         r        R2
#> 1 95.24875 0.8980270 0.8064524
#> 2 89.56579 0.8909122 0.7937246
#> 3 30.81095 0.9058781 0.8206152
#> 4 47.04053 0.9241537 0.8540601

Visualization

Scatter Plot

plot_scatter(obs, preds,
             main = "Mass Transfer-Based Models vs FAO-PM")

Taylor Diagram

plot_taylor(obs, preds,
            main = "Taylor Diagram - Mass Transfer-Based Models")

References

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.