# GNSSVOD
Python Toolkit for deriving Vegetation Optical Depth (VOD) from pairs of GNSS receivers developed by Vincent Humphrey (vincent.humphrey {at} meteoswiss.ch). Many functions are based on the GNSSpy Toolkit.

![illustration image](examples/figures/illustration_snr.png)

![illustration image](examples/figures/illustration_vod.png)

## Installation

Directly install package from PyPI via
```
pip install gnssvod
```

If you haven't installed numpy yet and an error occurs. First install numpy.
```
pip install numpy
```

## Documentation

Documentation is available at [https://gnssvod.readthedocs.io](https://gnssvod.readthedocs.io)

## Versions

Refer to the
[list of changes](https://github.com/vincenthumphrey/gnssvod/blob/main/CHANGELOG.md)

## Step-by-step tutorials

1. [Processing raw RINEX data](examples/01_demo_processing)
2. [Merging processed data](examples/02_demo_gathering)
3. [Plotting raw data](examples/03_demo_hemispheric_plotting)
4. [Calculating and plotting GNSS-VOD](examples/04_demo_gnss_vod)

## Contributing

Contributions to `gnssvod` are very welcome!  

- **Reporting issues or ideas:** If you encounter a problem or have an idea for a new feature, please open an [issue](https://github.com/vincenthumphrey/gnssvod/issues) on GitHub.
- **Submitting code changes:** If you have a new feature or bug fix, please create a pull request (PR) targeting the `dev` branch. Make sure your branch is up-to-date with `dev` before submitting the PR.

By participating, you help improve `gnssvod` for everyone — thank you!
