pyet
:sunflower: pyet is a Python package to estimate reference and potential evaporation.
Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 7 DOI reference(s) in README -
✓Academic publication links
Links to: springer.com, zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (7.6%) to scientific vocabulary
Keywords
Repository
:sunflower: pyet is a Python package to estimate reference and potential evaporation.
Basic Info
- Host: GitHub
- Owner: pyet-org
- License: mit
- Language: Python
- Default Branch: master
- Homepage: https://pyet.readthedocs.io/
- Size: 138 MB
Statistics
- Stars: 146
- Watchers: 5
- Forks: 38
- Open Issues: 9
- Releases: 12
Topics
Metadata Files
README.md

pyet: Estimation of Potential Evapotranspiration
pyet is an open source python package for calculating reference and potential Evapotranspiration (PET) for 1D (pandas.Series) and 3D (xarray.DataArrray) data. Currently, eighteen methods for calculating daily PET are implemented:
| Method name | pyet function | T | RH | R | u2 | Lat. | El. | Benchmarked? | |:------------------|:------------------|:-------|:-----------|:-------|:-------|:-------|:-------|:------------------| | Penman | penman | ✓ $^a$ | ✓ $^{b,c}$ | ✓ $^d$ | ✓ | ✓ $^d$ | ✓ $^e$ | ✓ | | Penman-Monteith | pm | ✓ $^a$ | ✓ $^{b,c}$ | ✓ $^d$ | ✓ | ✓ $^d$ | ✓ $^e$ | ✓ | | ASCE-PM | pmasce | ✓ $^a$ | ✓ $^{b,c}$ | ✓ $^d$ | ✓ | ✓ $^d$ | ✓ $^e$ | ✓ | | FAO-56 | pmfao56 | ✓ $^a$ | ✓ $^{b,c}$ | ✓ $^d$ | ✓ | ✓ $^d$ | ✓ $^e$ | ✓ | | Priestley-Taylor | priestleytaylor | ✓ | ✓ $^h$ | ✓ $^h$ | - | ✓ $^h$ | ✓ $^e$ | ✓ | | Kimberly-Penman | kimberlypenman | ✓ $^a$ | ✓ $^{b,c}$ | ✓ $^d$ | ✓ | ✓ $^d$ | ✓ $^e$ | - | | Thom-Oliver | thomoliver | ✓ $^a$ | ✓ $^{b,c}$ | ✓ $^d$ | ✓ | ✓ $^d$ | ✓ $^e$ | - | | Blaney-Criddle | blaneycriddle | ✓ | - $^i$ | - $^i$ | - $^i$ | ✓ | - | ✓ | | Hamon | hamon | ✓ | - | - | - | ✓ | - | ✓ | | Romanenko | romanenko | ✓ | ✓ | - | - | - | - | ✓ | | Linacre | linacre | ✓ $^j$ | - | - | - | - | ✓ | ✓ | | Haude | haude | ✓ | ✓ $^k$ | - | - | - | - | ✓ | | Turc | turc | ✓ | ✓ | ✓ | - | - | - | ✓ | | Jensen-Haise | jensenhaise | ✓ | - | ✓ $^l$ | - | ✓ $^l$ | - | ✓ | | McGuinness-Bordne | mcguinnessbordne | ✓ | - | - | - | ✓ | - | ✓ | | Hargreaves | hargreaves | ✓ $^m$ | - | - | - | ✓ | - | ✓ | | FAO-24 radiation | fao_24 | ✓ | ✓ | ✓ | ✓ | - | ✓ $^e$ | - | | Abtew | abtew | ✓ | - | ✓ | - | - | - | ✓ | | Makkink | makkink | ✓ | - | ✓ | - | - | ✓ $^e$ | ✓ | | Oudin | oudin | ✓ | - | - | - | ✓ | - | - |
$^a$ $T{max}$ and $T{min}$ can also be provided. $^b$ $RH{max}$ and $RH{min}$ can also be provided. $^c$ If actual vapor pressure is provided, RH is not needed. $^d$ Input for radiation can be (1) Net radiation, (2) solar radiation or (3) sunshine hours. If (1), then latitude is not needed. If (1, 3) latitude and elevation is needed. $^e$ One must provide either the atmospheric pressure or elevation. $^f$ The PM method can be used to estimate potential crop evapotranspiration, if leaf area index or crop height data is available. $^g$ The effect of $CO2$ on stomatal resistance can be included using the formulation of Yang et al. 2019. $^h$ If net radiation is provided, RH and Lat are not needed. $^i$ If method==2, $u2$, $RH{min}$ and sunshine hours are required. $^j$ Additional input of $T{max}$ and $T{min}$, or $T{dew}$. $^k$ Input can be $RH$ or actual vapor pressure. $^l$ If method==1, latitude is needed instead of $Rs$. $^m$ $T{max}$ and $T_{min}$ also needed.
Examples and Documentation
Examples of using pyet can be found in the example folder:
Example 1: Estimating PET using pandas.Series
Example 2: Estimating PET using xarray.DataArray
Example 4: Benchmarking FAO56 against CoAgMET data
Example 5: Calibrating the Romanenko and Abtew method against the PM-FAO56
Example 6: Worked examples for estimating meteorological variables and potential evapotranspiration after McMahon et al., 2013
Example 7: Example for estimating potential evapotranspiration under warming and elevated $CO_2$ concentrations following Yang et al., (2019)
Example 8: Determining the crop coefficient function with Python
Example 9: Estimating PET using CMIP data
Example 10: Notebook supporting PyEt manuscript
Documentation is hosted on ReadTheDocs.
After defining the input data, evapotranspiration is estimated using only one line of python code:
>>> pyet.pm_fao56(tmean, wind, rn=rn, tmax=tmax, tmin=tmin, rh=rh, elevation=elevation)
Benchmarking
Most of the methods implemented in pyet are benchmarked against literature values from the FAO Irrigation and drainage paper 56, McMahon et al., 2013 (supplementary) and Schrödter, 1985. In addition, two comparative analysis between daily PE estimated with pyet and other organizations is made:
pyet.pm_fao56against daily PET estimated with ASCE Penman-Monteith from CoAgMET ( Colorado State University),pyet.makkinkagainst daily PET estimated with Makkink from The Royal Netherlands Meteorological Institute (KNMI).
Data dimensions
As of version v1.2., pyet is compatible with both Pandas.Series and xarray.DataArray, which means you can now estimate potential evapotranspiration for both point and gridded data.
Bug reports and Questions
pyet is in active development, and bug reports are welcome as GitHub Issues. General questions or discussions are possible through GitHub Discussions.
Installation
The pyet package is available from the Pypi package index and can be installed as follows::
>>> pip install pyet
To install in developer mode, use the following syntax:
>>> pip install -e .
Citing
If you use pyet in one of your studies, please cite the pyet EGU abstract:
- Vremec, M., Collenteur, R. A., and Birk, S.: PyEt v1.3.1: a Python package for the estimation of potential evapotranspiration, Geosci. Model Dev., 17, 7083–7103, https://doi.org/10.5194/gmd-17-7083-2024, 2024.
Reference
@Article{gmd-17-7083-2024,
AUTHOR = {Vremec, M. and Collenteur, R. A. and Birk, S.},
TITLE = {\textit{PyEt} v1.3.1: a Python package for the estimation of potential evapotranspiration},
JOURNAL = {Geoscientific Model Development},
VOLUME = {17},
YEAR = {2024},
NUMBER = {18},
PAGES = {7083--7103},
URL = {https://gmd.copernicus.org/articles/17/7083/2024/},
DOI = {10.5194/gmd-17-7083-2024}
}
Owner
- Name: pyet
- Login: pyet-org
- Kind: organization
- Website: https://github.com/phydrus/pyet
- Repositories: 1
- Profile: https://github.com/pyet-org
This organization holds the open source python package pyet.
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Vremec"
given-names: "Matevz"
orcid: "https://orcid.org/0000-0002-2730-494X"
- family-names: "Collenteur"
given-names: "Matevz"
orcid: "https://orcid.org/0000-0001-7843-1538"
- family-names: "Birk"
given-names: "Steffen"
orcid: "https://orcid.org/0000-0001-7474-3884"
title: "Technical note: Improved handling of potential evapotranspiration in hydrological studies with PyEt"
doi: https://doi.org/10.5194/hess-2022-417
date-released: 2023
url: "https://github.com/phydrus/pyet"
preferred-citation:
type: journal
authors:
- family-names: "Vremec"
given-names: "Matevz"
orcid: "https://orcid.org/0000-0002-2730-494X"
- family-names: "Collenteur"
given-names: "Matevz"
orcid: "https://orcid.org/0000-0001-7843-1538"
- family-names: "Birk"
given-names: "Steffen"
orcid: "https://orcid.org/0000-0001-7474-3884"
doi: "https://doi.org/10.5194/hess-2022-417"
journal: "Hydrol. Earth Syst. Sci. Discuss. [preprint]"
year: "2023"
title: "Technical note: Improved handling of potential evapotranspiration in hydrological studies with PyEt"
GitHub Events
Total
- Create event: 1
- Release event: 1
- Issues event: 5
- Watch event: 15
- Issue comment event: 5
- Push event: 2
- Pull request review event: 3
- Pull request event: 2
- Fork event: 7
Last Year
- Create event: 1
- Release event: 1
- Issues event: 5
- Watch event: 15
- Issue comment event: 5
- Push event: 2
- Pull request review event: 3
- Pull request event: 2
- Fork event: 7
Committers
Last synced: 11 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| MatevzVremec | m****c@g****m | 275 |
| Raoul Collenteur | r****r@g****m | 84 |
| Martin Vonk | v****t@g****m | 3 |
| AinurKoki | a****a@g****m | 1 |
| The Codacy Badger | b****r@c****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 34
- Total pull requests: 47
- Average time to close issues: about 1 month
- Average time to close pull requests: 13 days
- Total issue authors: 16
- Total pull request authors: 7
- Average comments per issue: 1.74
- Average comments per pull request: 0.32
- Merged pull requests: 32
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 4
- Pull requests: 4
- Average time to close issues: 2 days
- Average time to close pull requests: N/A
- Issue authors: 4
- Pull request authors: 3
- Average comments per issue: 1.0
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- raoulcollenteur (17)
- JannisHoch (2)
- mvremec (2)
- madapegue (1)
- miaozewei (1)
- Darren-Ray (1)
- Engel23 (1)
- deltamarnix (1)
- bombilator (1)
- mbakker7 (1)
- WieFel (1)
- schymans (1)
- Koni2020 (1)
- WARD-CODE (1)
- fmanquehual (1)
Pull Request Authors
- mvremec (23)
- raoulcollenteur (18)
- anshuverma2000 (2)
- WieFel (1)
- codacy-badger (1)
- aldotapia (1)
- martinvonk (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
- Total downloads: unknown
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 5
proxy.golang.org: github.com/pyet-org/pyet
- Documentation: https://pkg.go.dev/github.com/pyet-org/pyet#section-documentation
- License: mit
-
Latest release: v1.4.0
published 10 months ago
Rankings
Dependencies
- actions/checkout v2 composite
- actions/setup-python v2 composite
- codacy/codacy-coverage-reporter-action master composite
- actions/checkout v2 composite
- actions/setup-python v2 composite
- numpy >=1.16
- pandas >=1.2
- xarray >=0.18.0
- actions/checkout v3 composite
- actions/setup-python v3 composite
- numpy >= 1.16
- pandas >= 1.2
- xarray >= 0.18.0