Swath processing toolbox for CryoSat-2
Project description
cryoswath
cryoswath is a python package containing processing pipelines, a tool library, and some pre-assembled data to retrieve and study CryoSat-2 data.
Adaptability lies at its core. The user can access many options simply by passing arguments to functions; everything else can be customized changing the concerned function or adding a new one.
🌱 state
cryoswath is being developed. Branch main is the release branch,
scripts contains tutorials, and data contains auxiliary data and the
required directory structure. You can have everything setup
automatically (see "getting started"). Other branches are for
development.
✨ features
- find all CryoSat-2 tracks passing over your region of interest
- download L1b data from ESA
- retrieve swath elevation estimates
- aggregate point data to gridded data
- fill data gaps using tested methods
- calculate change rates
🚀 getting started
There is a number of ways you can start off. I will give detailed instructions for UNIX systems. Make sure to use python 3.11 or higher. Further, I recommend to use a virtual environment and will involve python-venv in the instructions (however, conda works similar).
All of the following instructions consist of three main steps:
- making cryoswath available
- setting up a project directory
- initializing cryoswath
The instructions will use the variable $proj_dir for the project
directory. Please set it to a path that suits you like
proj_dir=altimetry-project.
In all cases, consider to download the data dependencies ArcticDEM and
the RGI glacier and complex shape files into the
$proj_dir/data/auxiliary/DEM and $proj_dir/data/auxiliary/RGI
directories (more in the docs).
with git 🐙
advantage: easy pulling bugfixes
git clone https://github.com/j-haacker/cryoswath.git $proj_dir
cd $proj_dir
python3.11 -m venv .venv
source .venv/bin/activate
pip install -e .
cryoswath-init
with pip 📦
advantage: easy installation
mkdir $proj_dir
cd $proj_dir
python3.11 -m venv .venv
source .venv/bin/activate
pip install cryoswath
cryoswath-init
with conda 🐍
advantage: most stable dependency resolution
First, choose an environment name and either define $env_name, e.g.,
env_name=cryoswath, or adapt the create and activate commands
accordingly.
conda create -n $env_name conda-forge::cryoswath
conda activate $env_name
mkdir $proj_dir
cd $proj_dir
cryoswath-init
with Docker 🐳
advantage: will almost always work
note: the first time running the docker image require to download ~ 1 Gb
docker run -it -p 8888:8888 -v $proj_dir$:/home/jovyan cryoswath/jupyterlab:v0.2.2- You will receive an address including a token with which you can connect to the jupyterlab using your browser
- In jupyterlab, open a regular shell and execute
cryoswath-init - Open the scripts folder in the explorer and select one of the notebooks or create your own (inside the scripts folder)
multiple projects
For each project, run cryoswath-init from the project directory.
📖 documentation
dependencies
- requirements.txt
- reference elevation model
- glacier outlines
cryoswath will point you to the required resources.
🐛 known issues
-
ESA's data server is not available from all internet service providers
-
projected RGI basins sometimes "invalid" -> add
.make_valid()if it is missing somewhere -
it has mostly been tested for the Arctic
Further: see open issues.
citation and attribution
You can cite this package using bibtex:
@software{cryoswath,
author = {Haacker, Jan},
title = {cryoswath: v0.2.2},
month = feb,
year = 2025,
publisher = {Zenodo},
version = {v0.2.2},
doi = {10.5281/zenodo.14837018}
}
Please mind that you likely used other resources on the way.
- ESA provides the L1b data under these Terms and Conditions
- RGI data is distributed under CC-BY-4.0 license
- if you (likely) used DEMs of the PGC, see their Acknowledgement Policy
- the many python packages and libraries this package depends on; some of which are indispensable.
📜 license
MIT. See LICENSE.txt.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cryoswath-0.2.2.post3.tar.gz.
File metadata
- Download URL: cryoswath-0.2.2.post3.tar.gz
- Upload date:
- Size: 8.1 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.32.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ef605c35f7d29ff7639a419e032e19344496062b5f905563072d3c75c17096b4
|
|
| MD5 |
229a11b49bca543fa91299efbecd4d74
|
|
| BLAKE2b-256 |
af496720b6700cd7ac273e51e3ff3d236004997618377f4454036eca1b12209c
|
File details
Details for the file cryoswath-0.2.2.post3-py3-none-any.whl.
File metadata
- Download URL: cryoswath-0.2.2.post3-py3-none-any.whl
- Upload date:
- Size: 76.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: python-requests/2.32.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
16e6f018cb329032d8491d664cdc632ffab035575865f44f176ead603ccd3eb0
|
|
| MD5 |
4687e5651e202a09afd5be781334adba
|
|
| BLAKE2b-256 |
5f8181bf11e9f7aabd53515aefe269cd67311de317b070949a00f50735a3de8f
|