q09·intermediate
How much ice has Greenland or Antarctica lost?
cryospheresea-levelclimate Datasets: 6 30–60 min
▶ Find the data for your area
Draw a rectangle to pick your area of interest, then see what NASA data covers it (live, here in your browser) or download a ready-to-run notebook with your AOI pre-filled. The notebook runs in any Python environment — it needs a free Earthdata Login to fetch the data.
Current AOI:
-50, 60 → -20, 80 (Greenland ice sheet (central))How much ice has Greenland or Antarctica lost?
What you can answer
- Total annual mass loss in Gt/yr (gigatons per year) from GRACE-FO
- Surface elevation change in m/yr from ICESat-2 (the height-based view)
- Spatial pattern of where loss is concentrated (West Antarctica, SE Greenland, etc.)
- Sea-level rise contribution in mm/yr equivalent (1 Gt water = 0.00277 mm GSLR)
- Acceleration of mass loss (the canonical Greenland trend goes from ~120 Gt/yr in 2002-2010 to ~280 Gt/yr in 2016-2022)
What you can NOT answer with these alone
- Sub-glacier melt water flow without combining with surface meltwater products + climate models
- Pre-2002 mass balance — that’s the GRACE era’s start; older estimates rely on InSAR + altimeter heritage
- Individual outlet-glacier velocity — use ITS_LIVE (NSIDC) for that
Code template
import earthaccess
import xarray as xr
import icepyx as ipx
import pandas as pd
earthaccess.login(strategy="netrc")
# 1. GRACE-FO mass loss (the headline number)
greenland_aoi = (-75, 60, -10, 84)
grace = earthaccess.search_data(short_name="GRACEFO_L3_JPL_RL06.X_M",
bounding_box=greenland_aoi,
temporal=("2002-04-01", "2025-12-31"))
# Earlier GRACE for 2002-2017:
grace_old = earthaccess.search_data(short_name="TELLUS_GRAC_L3_JPL_RL06_LND_v04",
bounding_box=greenland_aoi,
temporal=("2002-04-01", "2017-06-30"))
# Sum mass anomaly × area density → Gt anomaly time series
# Fit linear trend → mass loss rate Gt/yr
# 2. ICESat-2 ATL06 elevation change (independent check)
region = ipx.Query("ATL06", greenland_aoi,
date_range=["2018-10-01", "2025-12-31"],
start_time="00:00:00", end_time="23:59:59")
# Use icepyx to query + open
# For each grid cell, compute dh/dt linear trend
# 3. Convert ICESat-2 elevation change to mass change
# Assumes firn density model + bedrock geometry
# (cross-validates the GRACE mass-loss estimate)
# 4. Plot: cumulative mass loss curve · spatial map of elevation change
Expected output
- Cumulative mass-loss chart: Greenland from 2002 in Gt total
- Spatial map: ice-sheet elevation change (m/yr) — colormap red/blue diverging
- Sea-level rise contribution: Greenland’s annual rate in mm/yr (compare to global ~3.4 mm/yr total)
- Acceleration: 2002-2010 trend vs 2016-2024 trend
Caveats
- GRACE-FO 1° resolution is real. Don’t claim individual-glacier signals from GRACE alone.
- ICESat-2 vs GRACE-FO disagreement on outlet glaciers is informative — GRACE captures meltwater export below the surface; ICESat-2 sees only the surface elevation.
- Glacial isostatic adjustment (GIA) correction is essential. Use the JPL GIA-corrected mascon product, not raw.
- Firn density assumptions in converting elevation to mass have ~10-15% uncertainty.
- The 2017-2018 GRACE → GRACE-FO gap affects trend estimates spanning it.
Cross-DAAC composition
PO.DAAC (GRACE-FO) + NSIDC DAAC (ICESat-2) — both via earthaccess + Earthdata Login.
Sources
- GRACE Tellus ice sheets: https://grace.jpl.nasa.gov/applications/ice-sheets/
- ICESat-2 ATL15: https://nsidc.org/data/atl15
- icepyx documentation: https://icepyx.readthedocs.io/
Datasets used
📚 Problem Finder KB
Not yet tracked in the KB.