GithubHelp home page GithubHelp logo

tylern4 / glacierstats Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gatorglaciology/gstatsim

0.0 1.0 0.0 9.26 MB

Geostatistical tools and demos for ice sheet analysis

Jupyter Notebook 99.53% Python 0.47%

glacierstats's Introduction

GlacierStats

GlacierStats is a collection of functions and demos specifically designed for stochastic methods in glaciology. It is inspired by open source geostatistical resources such as GeostatsPy and Geostatistics Lessons. In my own research, I have found that geostatistical tools designed for industry applications do not have the flexibility to address the unique combination of challenges in ice sheet problems, including large crossover errors, spatially variable measurement uncertainty, extremely large datasets, non-linear trends, variability in measurement density, and non-stationarity. These tools are part of our ongoing effort to develop and adapt geostatistical techniques and other machine learning methods to glaciology.

In its current state, the demos focus on the geostatistical simulation of subglacial topography. However, these protocols could be applied to a number topics in glaciology, or remote sensing problems in general.

We will continuously develop new tools and tutorials to address specific technical challenges in glaciology. Do you have feedback or suggestions? Specific things that we should account for? Feel free to contact me at [email protected]. Our goal is to create tools that are useful and accessible, so we welcome your thoughts and insight.

Features

Functions

Some of the tools in GlacierStats:

  • axis_var - Obtain the variogram for the major or minor axis
  • skrige - Simple kriging
  • okrige - Ordinary kriging
  • sgsim - Sequential Gaussian simulation

Demos

We have created tutorials that are designed to provide an intuitive understanding of geostatistical methods and to demonstrate how these methods can be used for ice sheet analysis. The current demos are:

  • Experimental_Variogram.ipynb - Demonstration of experimental variogram calculation to quantify spatial relationships.
  • Variogram_model.ipynb - A tutorial on fitting a variogram model to an experimental variogram.
  • Outlier_removal.ipynb - Outlier removal to minimize artifacts from measurement crossover errors.
  • Kriging.ipynb - Demonstration of simple kriging and ordinary kriging interpolation with commentary on glaciology-specific considerations.
  • Sequential_Gaussian_simulation.ipynb - An introduction to stochastic simulation of subglacial topography.

The author

(Emma) Mickey MacKie is an assistant professor at the University of Florida.

Useage

The functions are in the GlacierStats.py document. Just download the GlacierStats folder and make sure the GlacierStats.py script is in your working directory. The datasets for the demos are in the Data folder.

Dependencies

  • Numpy
  • Pandas
  • Math
  • Scipy
  • Matplotlib
  • tqdm
  • Sklearn
  • earthpy
  • GeostatsPy
  • random

These can all be installed using the command pip install (package name)

Datasets

The demos use radar bed measurements from the Center for the Remote Sensing of Ice Sheets (CReSIS, 2020) and elevation data from BedMachine Greenland (Morlighem et al., 2017).

CReSIS. 2020. REPLACE_WITH_RADAR_NAME Data, Lawrence, Kansas, USA. Digital Media. http://data.cresis.ku.edu/.

Morlighem, M., Williams, C. N., Rignot, E., An, L., Arndt, J. E., Bamber, J. L., ... & Fenty, I. (2017). BedMachine v3: Complete bed topography and ocean bathymetry mapping of Greenland from multibeam echo sounding combined with mass conservation. Geophysical research letters, 44(21), 11-051.

glacierstats's People

Contributors

gatorglaciology avatar

Watchers

 avatar

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.