/deepicedrain

Mapping and monitoring deep subglacial water activity in Antarctica using remote sensing and machine learning, with ICESat-2!

Primary LanguageJupyter NotebookGNU Lesser General Public License v3.0LGPL-3.0

DeepIceDrain

Mapping and monitoring deep subglacial water activity in Antarctica using remote sensing and machine learning.

GitHub top language Code style: black Test DeepIceDrain package Dependabot Status License

ICESat-2 ATL11 rate of height change over time in Antarctica 2018-10-14 to 2020-04-04

DeepIceDrain Pipeline

Getting started

Quickstart

Launch in Pangeo Binder (Interactive jupyter lab environment in the cloud).

Binder

Usage

Once you've installed properly installed the deepicedrain package (see installation instructions further below), you'll have access to a range of tools for downloading and performing quick calculations on ICESat-2 datasets. The example below shows how to calculate ice surface elevation change on a sample ATL11 dataset between ICESat's Cycle 3 and Cycle 4.

import deepicedrain
import xarray as xr

# Loads a sample ATL11 file from the intake catalog into xarray
atl11_dataset: xr.Dataset = deepicedrain.catalog.test_data.atl11_test_case.read()

# Calculate elevation change in metres from ICESat-2 Cycle 3 to Cycle 4
delta_height: xr.DataArray = deepicedrain.calculate_delta(
      dataset=atl11_dataset, oldcyclenum=3, newcyclenum=4, variable="h_corr"
)

# Quick plot of delta_height along the ICESat-2 track
delta_height.plot()

ATL11 delta_height along ref_pt track

Installation

Basic

To just try out the scripts, download the environment.yml file from the repository and run the commands below:

cd deepicedrain
conda env create --name deepicedrain --file environment.yml
pip install git+https://github.com/weiji14/deepicedrain.git

Advanced

To help out with development, start by cloning this repo-url

git clone <repo-url>

Then I recommend using conda to install the non-python binaries. The conda virtual environment will also be created with Python and poetry installed.

cd deepicedrain
conda env create -f environment.yml

Activate the conda environment first.

conda activate deepicedrain

Then install the python libraries listed in the pyproject.toml/poetry.lock file.

poetry install

Finally, double-check that the libraries have been installed.

poetry show

(Optional) Install jupyterlab extensions for interactive bokeh visualizations.

jupyter labextension install @pyviz/jupyterlab_pyviz
jupyter labextension install dask-labextension

jupyter labextension list  # ensure that extensions are installed

Running jupyter lab

conda activate deepicedrain
python -m ipykernel install --user --name deepicedrain  # to install conda env properly
jupyter kernelspec list --json                          # see if kernel is installed
jupyter lab &

Related Projects

This work would not be possible without inspiration from the following cool open source projects! Go check them out if you have time.