pytesmo, the Python Toolbox for the Evaluation of Soil Moisture Observations, is a package/python toolbox which aims to provide a library that can be used for the comparison and validation of geospatial time series datasets with a (initial) focus on soil moisture.
To see the latest full documentation click on the docs badge at the top.
If you use the software in a publication then please cite it using the Zenodo DOI. Be aware that this badge links to the latest package version.
Please select your specific version at https://doi.org/10.5281/zenodo.596422 to get the DOI of that version. You should normally always use the DOI for the specific version of your record in citations. This is to ensure that other researchers can access the exact research artefact you used for reproducibility.
You can find additional information regarding DOI versioning at http://help.zenodo.org/#versioning
If you want to contribute, take a look at the developers guide .
This package can be installed through pip which downloads the package from the python package repository Pypi.
pip install pytesmo
Note that pytesmo>=0.17
will only work with numpy>=2.0
and python>=3.9
.
If you still require a version compatible with numpy v1, install pytesmo<0.17
.
Compiled C extensions are available as wheels for Windows and Linux for python 3.9 to 3.12.
For other operating systems and/or python versions, it might be necessary to compile the binaries yourself. This should happen automatically, if you have a C compiler installed (e.g. GCC ).
git clone https://github.com/TUW-GEO/pytesmo.git --recursive cd pytesmo mamba create -n pytesmo python=3.12 # or any supported python version conda activate pytesmo pip install -e .[testing] # install source package python setup.py build_ext --inplace --cythonize # optional compile cython C extensions pytest # Run tests to check if everything works
Soil moisture is observed using different methods and instruments, in this version several satellite datasets as well as in situ and reanalysis data are supported through independent and optional (reader) packages:
- ERS & H-SAF ASCAT products
- SMAP
- GLDAS Noah
- ERA5 and ERA5-Land
- SMOS
- C3S SM
- ESA CCI SM
- MERRA
- Data from the International Soil Moisture Network (ISMN)
- In case of the ISMN, two different formats are provided: An example of how to use the dataset in the pytesmo validation framework can be found in the "Examples" chapter. * Variables stored in separate files (CEOP formatted)
Some former pytesmo modules are now provided as separate packages.
- pygeogrids : Creation and handling of Discrete Global Grids or Point collections
- cadati : Calender, Date and Time functions
- repurpose : Time series - image conversion and resampling routines
- colorella : Color maps and color map handling
We are happy if you want to contribute. Please raise an issue explaining what is missing or if you find a bug. We will also gladly accept pull requests against our master branch for new features or bug fixes.
Please follow the developers guide.