dbekaert / RAiDER

Raytracing Atmospheric Delay Estimation for RADAR
Apache License 2.0
71 stars 39 forks source link

RAiDER

Raytracing Atmospheric Delay Estimation for RADAR

Language License CircleCI Coverage Status

RAiDER-tools is a package in Python which contains tools to calculate tropospheric corrections for Radar using a raytracing implementation. Its development was funded under the NASA Sea-level Change Team (NSLCT) program, the Earth Surface and Interior (ESI) program, and the NISAR Science Team (NISAR-ST) (NTR-51433). U.S. Government sponsorship acknowledged.

Copyright (c) 2019-2022, California Institute of Technology ("Caltech"). All rights reserved.

THIS IS RESEARCH CODE PROVIDED TO YOU "AS IS" WITH NO WARRANTIES OF CORRECTNESS. USE AT YOUR OWN RISK.

Contents

  1. Getting Started
  2. Setup of third party weather model access
  3. Running RAiDER and Documentation
  4. Citing
  5. Development

1. Getting Started

RAiDER has been tested on the following systems:

RAiDER does not currently run on arm64 processors on Mac. We will update this note once the build becomes available.

Installing With Conda

RAiDER is available on conda-forge. Conda is a cross-platform way to use Python that allows you to setup and use "virtual environments." These can help to keep dependencies for different sets of code separate. We recommend using Miniforge, a conda environment manager that uses conda-forge as its default code repo. Alternatively, see here for help installing Anaconda and here for installing Miniconda.

Installing RAiDER:

conda env create --name RAiDER  -c conda-forge raider
conda activate RAiDER

Using the Docker image

RAiDER provides a docker container image with all the necessary dependencies pre-installed. To get the latest released version:

docker pull ghcr.io/dbekaert/raider:latest

a specific release version (>=v0.2.0 only):

docker pull ghcr.io/dbekaert/raider:0.2.0

or the current development version:

docker pull ghcr.io/dbekaert/raider:test

To run raider.py inside the container:

docker run -it --rm ghcr.io/dbekaert/raider:latest

To mount your current directory inside the container so that files will be written back to your local machine:

docker run -it -v ${PWD}:/home/raider/work --rm ghcr.io/dbekaert/raider:latest
cd work

To jump into a bash shell inside the container:

docker run -it --rm --entrypoint /bin/bash ghcr.io/dbekaert/raider:latest -l

For more docker run options, see: https://docs.docker.com/engine/reference/run/.


2. Setup of third party weather model access

RAiDER has the ability to download weather models from third-parties; some of which require license agreements. See here for details.


3. Running RAiDER and Documentation

For detailed documentation, examples, and Jupyter notebooks see the RAiDER-docs repository. We welcome contributions of other examples on how to leverage the RAiDER (see here for instructions).
raider.py -h provides a help menu and set of example run configurations to get started. The RAiDER scripts are highly modularized in Python and allows for building your own processing workflow.


4. Citation

TODO


5. Development

Contributions are welcome and heartily encourage! See our contributing guide.

Development install

For development, we recommend installing directly from source.

git clone https://github.com/dbekaert/RAiDER.git
cd RAiDER
conda env create -f environment.yml
conda activate RAiDER
python -m pip install -e .

For more details on installing from source see here.


Contributors

We welcome community contributions! For instructions see here.