pydaymet.pet#
Core class for the Daymet functions.
Module Contents#
- pydaymet.pet.potential_et(clm: pandas.DataFrame, coords: tuple[float, float], crs: CRSTYPE, method: Literal['penman_monteith', 'priestley_taylor', 'hargreaves_samani'] = ..., params: dict[str, float] | None = ...) pandas.DataFrame #
- pydaymet.pet.potential_et(clm: xarray.Dataset, coords: None = None, crs: None = None, method: Literal['penman_monteith', 'priestley_taylor', 'hargreaves_samani'] = ..., params: dict[str, float] | None = ...) xarray.Dataset
Compute Potential EvapoTranspiration for both gridded and a single location.
- Parameters:
clm (
pandas.DataFrame
orxarray.Dataset
) – The dataset must include at least the following variables:Minimum temperature in degree celsius
Maximum temperature in degree celsius
Solar radiation in in W/m2
Daylight duration in seconds
Optionally, for
penman_monteith
, wind speed at 2-m level will be used if available, otherwise, default value of 2 m/s will be assumed. Table below shows the variable names that the function looks for in the input data.pandas.DataFrame
xarray.Dataset
tmin (degrees C)
tmin
tmax (degrees C)
tmax
srad (W/m2)
srad
dayl (s)
dayl
u2m (m/s)
u2m
coords (
tuple
offloats
, optional) – Coordinates of the daymet data location as a tuple, (x, y). This is required whenclm
is aDataFrame
.crs (
str
,int
, orpyproj.CRS
, optional) – The spatial reference of the input coordinate, defaults toEPSG:4326
. This is only used whenclm
is aDataFrame
.method (
str
, optional) – Method for computing PET. Supported methods arepenman_monteith
,priestley_taylor
, andhargreaves_samani
. Thepenman_monteith
method is based on Allen et al.[1] assuming that soil heat flux density is zero. Thepriestley_taylor
method is based on Priestley and TAYLOR[2] assuming that soil heat flux density is zero. Thehargreaves_samani
method is based on Hargreaves and Samani[3]. Defaults tohargreaves_samani
.params (
dict
, optional) – Model-specific parameters as a dictionary, defaults toNone
. Valid parameters are:penman_monteith
:soil_heat_flux
,albedo
,alpha
, andarid_correction
.priestley_taylor
:soil_heat_flux
,albedo
, andarid_correction
.hargreaves_samani
: None.
Default values for the parameters are:
soil_heat_flux
= 0,albedo
= 0.23,alpha
= 1.26, andarid_correction
= False. An important parameter forpriestley_taylor
andpenman_monteith
methods isarid_correction
which is used to correct the actual vapor pressure for arid regions. Since relative humidity is not provided by Daymet, the actual vapor pressure is computed assuming that the dewpoint temperature is equal to the minimum temperature. However, for arid regions, FAO 56 suggests subtracting minimum temperature by 2-3 °C to account for the fact that in arid regions, the air might not be saturated when its temperature is at its minimum. For such areas, you can pass{"arid_correction": True, ...}
to subtract 2 °C from the minimum temperature for computing the actual vapor pressure.
- Returns:
pandas.DataFrame
orxarray.Dataset
– The input DataFrame/Dataset with an additional variable namedpet (mm/day)
forpandas.DataFrame
andpet
forxarray.Dataset
.
References