ICESAT-2HackWeek / xtrak

Repo for the cross-track project group, for fine-scale spatiotemporal interpolation between ICESat-2 tracks

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

xtrak

Fine-scale spatiotemporal interpolation between ICESat-2 tracks

Collaborators

Project Lead: Tim Bartholomaus, University of Idaho

Data Science Lead: Fernando Paolo, NASA Jet Propulsion Laboratory

Lavanya Ashokkumar, University of Arizona

Taryn Black, University of Washington

Allison Chartrand, Ohio State University

Jukes Liu, University of Maine

Evan Carnahan, University of Texas

The Problem

How well can we interpolate between ICESat-2 tracks?

ICESat-2 products will eventually include quarterly (91-day) gridded land ice elevations. We want to be able to also estimate elevations effectively continuously through time, so that we can get rough elevation profiles on shorter time scales. We will interpolate elevations between neighboring tracks to create gridded elevation data from which we can extract our elevation profiles. We do not expect the shape of an elevation profile to change significantly between the collection of neighboring tracks, so interpolating between them should be safe.

Pie-in-the-sky goal: essentially continuously updating elevation profiles, such that we can enter a location and date and get an estimated elevation profile.

Application Example

Interpolate ICESat-2 tracks to build elevation profiles of Zachariae Isstrom, an outlet glacier in northeastern Greenland.

Most tracks over Greenland outlet glaciers are across-flow rather than along-flow, so it is hard to get a single temporally-consistent elevation profile of a glacier. By interpolating between neighboring tracks, we can build an along-flow elevation profiles of Zachariae Isstrom roughly every two weeks.

Sample Data

  • Operation IceBridge, ATM profiles over Zachariae Isstrom, 2014 & 2018. ~1.3 MB as CSV, from NSIDC.
  • ICESat-2 tracks over Zachariae Isstrom. ~1.8 GB as HDF5, from NSIDC.

Specific Questions

Can we reasonably estimate elevation z(x,y,t) for any arbitrary space (x,y) and time (t)?

Existing Methods

Airborne and satellite altimetry (e.g. Operation IceBridge ATM)

Proposed Methods/Tools

  • pandas, geopandas
  • linear interpolation with scipy.griddata

Workflow

Get data

script input data output data notes
data_raw/downloadData.sh NSIDC data_raw/ATL06evan over ZI, all dates
manual download NSIDC data_raw/ATM_20**
manual download NSIDC data_raw/ATL06lavanya over ZI, December only

Subset and extract variables of interest

script input data output data notes
IS2ZachExtract.ipynb data_raw/ATL06evan data_prod/ICESat2ZachData.csv
ATMprocessing.ipynb data-raw/ATM_20** data_prod/ATMprof_20**_slopes.csv

Error checks, smoothing, and filtering

script input data output data notes
CheckForBadISatTransects.ipynb data_prod/IceSat2ZachData.csv data_prod/ZachISatData_wSmooth.csv
SmoothAtm.ipynb data_prod/ATMprof_20**_slopes.csv data_prod/ATMprof_20**\slopes_wSmooth.csv

Identify crossover points

script input data output data notes
Intersections.ipynb data_prod/ZachISatData_wSmooth.csv, ATMprof_20**_slopes_wSmooth.csv data_prod/InterX_ATM20**_AllSmooth.csv

Get residuals

script input data output data notes
calculate_residuals.ipynb data_prod/InterX_ATM2014_AllSmooth.csv data_prod/residuals.csv

Interpolation

script input data output data notes
fit_residuals.ipynb data_prod/residuals.csv plots

About

Repo for the cross-track project group, for fine-scale spatiotemporal interpolation between ICESat-2 tracks


Languages

Language:Jupyter Notebook 99.8%Language:Shell 0.2%