GithubHelp home page GithubHelp logo

glims-rgi / rgitools Goto Github PK

View Code? Open in Web Editor NEW
14.0 14.0 9.0 321.67 MB

Processing files from the Randolph Glacier Inventory

Home Page: http://rgitools.readthedocs.io

License: BSD 3-Clause "New" or "Revised" License

Python 31.53% Jupyter Notebook 68.47%
glaciers oggm python

rgitools's People

Contributors

afisc avatar dependabot[bot] avatar fmaussion avatar jlandmann avatar matthiasdusch avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

rgitools's Issues

TanDEM-X filtering

Noticed some artifacts in the RGI-TOPO figures of TanDEM-X 90-m DEM. I recommend the using a series of filters based on values in the AUX products. The workflow tested for HMA is in the tandemx_mask.py script here: https://github.com/dshean/tandemx.

This repository should be retired

Most of the tools are part of OGGM anyway, and the job for RGI was done in rgi_scripts.

There would be some advantage in moving some RGI scripts to an independent package (like https://github.com/ezwelty/rgi_links) but time is missing to clean all that up before RGI release...

What's certain is that RGITOPO will move to the OGGM domain, that's just much easier to maintain there (and is an OGGM product after all...)

proposal: switch from papermill to ploomber

Hi, I noticed you're using papermill for running some notebooks. I'm the author of Ploomber, a framework that allows the creation of notebook-based pipelines. Your current code is iterating over a few parameters and executing a notebook template; ploomber can efficiently parallelize and run all of them at the same time. I'm happy to open a pull request so you can see it's worth switching; let me know!

[DEM to add] CopernicusDEM

CopernicusDEM is another global elevation model of interest to include and was initiated within the Copernicus framework. This elevation model will also be used for the orthorectification of Sentinel-2, and it is envisioned that USGS will implement this as well in its pipeline, so Landsat imagery will also be based on this. CopernicusDEM is based upon the WorldDEM from TanDEM (DLR), but it's quality controlled by Airbus, which detected and corrected errors in this elevation model (where infilling was done with the help of SRTM/ASTER GDEM). Only pitfall is the availability of the dataset, as it has an open dataset with a resolution of 90 meters, while a protected version of 30 meter also exists.

for more info see:
https://spacedata.copernicus.eu/web/cscda/data-offer/core-datasets/-/asset_publisher/SMEFUkzOylMw/content/optical-hr-pan-eu-coverages-hr_image_2015-?_101_INSTANCE_SMEFUkzOylMw_redirect=%2Fweb%2Fcscda%2Fdata-offer%2Fcore-datasets

https://eop-cfi.esa.int/index.php/docs-and-mission-data/dem

The columns of hypso_df from the tool of glacier hypsometry need a sort.

If there is a valley between glaciers distribution regions, the column of hypso_df in the example of glacier hypsometry will be out of order, which result in the yaxis of the figure in chaos.

In my opinion, add a step of sorting before the plot :

hypso_df = hypso_df.reindex(sorted(hypso_df.columns, key=int), axis=1)

Automated detection of undivided glaciers

Based on simple heuristics and OGGM's flowline algorithm, it should be possible to develop a tool able to detect glaciers that need to be divided.

For example:

  • is the max elevation of a glacier on the outline of far into the geometry?
  • do the centerlines have to up glacier?
  • etc.

Having a flag in the RGI tagging potentially "undivided" geometries would be quite useful...

Environment: cftime not installed

I just browsed through the example code on readthedocs, and it seems that cftime is missing in the environment, causing documentation code to throw errors basically everywhere, e.g. here:

https://rgitools.readthedocs.io/en/latest/tools.html

I was wondering where that might come from, and I guess xarray is just installed silently without cftime (since it's optional):

https://readthedocs.org/projects/rgitools/builds/11287705/

Maybe cftime should be included in requirements.txt explicitly!?

pip install fails with setuptools error

rgitools fails to install using pip in environments with newer versions of setuptools, due to a conflict with PEP440:

image

I was able to fix this by changing changing line 86 from this:

FULLVERSION = rev.lstrip('v').replace(VERSION + '-', VERSION + '+')

to this:

FULLVERSION = rev.lstrip('v').replace(VERSION + '-', VERSION + '+').replace('-', '+', 1)

This fixes the version number error, and rgitools installs as expected:

image

Link RGI6 to RGI7

Use geopandas to create a look-up table linking RGI6 to RGI7. This can be tested with the GAMDAM inventory for example, since it will become RGI7

Script to fetch latest RGI, extract and process

Hi @matthiasdusch and @fmaussion. This is fantastic! Great work, and glad to see some of this streamlined and centralized. I have scripts/libraries to work with RGI, DEMs, and other glacier mass balance tools scattered across various repos, and it would be great to incorporate some of them here.
I'll submit separate issues on specifics. But will start with this one. I don't think you have a tool to automatically fetch the latest RGI zip - the following script should do so (can be simplified):
https://github.com/dshean/demcoreg/blob/master/demcoreg/get_rgi.sh
Might be useful to include?

Add license text

Add a license text to RGI-TOPO: say that we release the product under CC-BY, but that the license of the original data providers may vary. (or unclear)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.