A python toolbox for deriving rainfall information from commercial microwave link (CML) data.
pycomlink
is tested with Python 3.9, 3.10 and 3.11. There have been problems with Python 3.8, see pycomlink#120. Many things might work with older version, but there is no support for this.
It can be installed via conda-forge
:
$ conda install -c conda-forge pycomlink
If you are new to conda
or if you are unsure, it is recommended to create a new conda environment, activate it, add the conda-forge channel and then install.
Installation via pip
is also possible:
$ pip install pycomlink
At the time of writing, with pycomlink v0.4.0
which dropped tensorflow
as dependency, pip
install works fine. But, if we add new dependencies in the future, we might again run into issues with pip
install.
To run the example notebooks you will also need the Jupyter Notebook
and ipython
, both also available via conda
or pip
.
If you want to clone the repository for developing purposes follow these steps (installation of Jupyter Notebook included):
$ git clone https://github.com/pycomlink/pycomlink.git
$ cd pycomlink
$ conda env create -f environment_dev.yml
$ conda activate pycomlink-dev
$ cd ..
$ pip install -e pycomlink
The following jupyter notebooks showcase some use cases of pycomlink
- Basic example CML processing workflow
- Compare interpolation methods
- Get radar data along CML paths
- Nearby-link approach for rain event detection from RAINLINK
- Compare different WAA methods
- Detect data gaps stemming from heavy rainfall events that cause a loss of connection along a CML
Note that the links point to static versions of the example notebooks. You can run all these notebook online via mybinder if you click on the "launch binder" buttom at the top.
- Perform all required CML data processing steps to derive rainfall information from raw signal levels:
- data sanity checks
anomaly detection(removed because using outdatedtensorflow
code)- wet/dry classification
- baseline calculation
- wet antenna correction
- transformation from attenuation to rain rate
- Generate rainfall maps from the data of a CML network
- Validate you results against gridded rainfall data or rain gauges networks
The documentation is hosted by readthedocs.org: https://pycomlink.readthedocs.io/en/latest/