SMOS (Soil Moisture and Ocean Salinity) data readers and time series conversion tools.
Works great in combination with pytesmo.
To see the latest full documentation click on the docs badge at the top. To cite this package follow the Zenodo badge at the top and export the citation there.
Before installing this package via pip, please install the necessary conda dependencies:
$ conda create -n smos python=3.12 $ conda env update -f environment.yml -n smos
Then
$ pip install smos
should work.
The following script will install miniconda and setup the environment on a UNIX
like system. Miniconda will be installed into $HOME/miniconda
.
wget https://repo.continuum.io/miniconda/Miniconda-latest-Linux-x86_64.sh -O miniconda.sh bash miniconda.sh -b -p $HOME/miniconda export PATH="$HOME/miniconda/bin:$PATH" git clone git@github.com:TUW-GEO/smos.git smos cd smos conda env create -f environment.yml source activate smos
This script adds $HOME/miniconda/bin
temporarily to the PATH
to do this
permanently add export PATH="$HOME/miniconda/bin:$PATH"
to your .bashrc
or .zshrc
The second to last line in the example activates the smos
environment.
After that you should be able to run:
pytest
to run the test suite.
Currently the following products are supported, additional products can be added.
- SMOS IC: SMOS INRA-CESBIO (SMOS-IC) 25 km
- SMOS L4 RZSM: SMOS CATDS-CESBIO (SMOS L4 RZSM) 25 km
- SMOS L2 Science Product: SMOS L2 Science Products (MIR_SMUDP2) 25 km
- SMOS L3
- Check out the repo at the branch/tag/commit you want bake into the image
- Make sure you have docker installed and run the command (replace the tag latest with something more meaningful, e.g. a version number)
docker build -t smos:latest . 2>&1 | tee docker_build.log
This will execute the commands from the Dockerfile. I.e. install a new environment from the environment.yml file and install the checked out version of the smos package.
To build and publish the image online, we have a GitHub Actions workflow in
.github/workflows/docker.yml
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.
If you want to contribute please follow these steps:
- Fork the smos repository to your account
- make a new feature branch from the smos master branch
- Add your feature
- please include tests for your contributions in one of the test directories We use py.test so a simple function called test_my_feature is enough
- submit a pull request to our master branch