{ "cells": [ { "cell_type": "code", "execution_count": 1, "id": "22be82f8-f882-4407-a6b3-d468d14c42ce", "metadata": {}, "outputs": [], "source": [ "import xarray as xr\n", "import numpy as np\n", "import pandas as pd\n", "from oggm import utils\n", "import oggm" ] }, { "cell_type": "code", "execution_count": 2, "id": "3f9dc5ab-6625-4c45-90c7-e73f4ac1e03e", "metadata": {}, "outputs": [], "source": [ "df_itmix = pd.read_hdf(oggm.utils.get_demo_file('rgi62_itmix_df.h5'))\n", "df_rgi6g = pd.read_hdf(utils.file_downloader('https://cluster.klima.uni-bremen.de/~oggm/rgi/rgi62_stats.h5'))\n", "# level 2 glaciers should be excluded (as was the case for GlacierMIP2)\n", "df_rgi6g = df_rgi6g.loc[df_rgi6g.Connect != 2]\n", "rgi_regs = list(df_rgi6g['O1Region'].unique())\n", "rgi_regs.append('All')\n", "# directly copy/paste from Farinotti et al. (2019) – Table 1 \n", "rgidf_vol_1e3_km3_farinotti={\n", " \"01\": 18.98,\n", " \"02\": 1.06,\n", " \"03\": 28.33,\n", " \"04\": 8.61,\n", " \"05\": 15.69,\n", " \"06\": 3.77,\n", " \"07\": 7.47,\n", " \"08\": 0.30,\n", " \"09\": 14.64,\n", " \"10\": 0.14,\n", " \"11\": 0.13,\n", " \"12\": 0.06,\n", " \"13\": 3.27,\n", " \"14\": 2.87,\n", " \"15\": 0.88,\n", " \"16\": 0.10,\n", " \"17\": 5.34,\n", " \"18\": 0.07,\n", " \"19\": 46.47,\n", " \"All\": 158.17\n", "}" ] }, { "cell_type": "code", "execution_count": 3, "id": "24521596-ee5e-4295-9fec-5de05b6065a7", "metadata": {}, "outputs": [], "source": [ "rgidf_mass_gt = pd.DataFrame()\n", "for rgi_reg in rgi_regs:\n", " if rgi_reg != 'All':\n", " rgidf = df_rgi6g.loc[df_rgi6g.O1Region == rgi_reg]\n", " else:\n", " rgidf = df_rgi6g\n", " rgidf_mass_gt.loc[rgi_reg,'oggm_version'] = (df_itmix.loc[rgidf.index]['vol_itmix_m3'].sum()*900 *1e-12).round()\n", " # 1e3 km³ --> into GT \n", " rgidf_mass_gt_farinotti_reg = rgidf_vol_1e3_km3_farinotti[rgi_reg] * 900\n", " rgidf_mass_gt.loc[rgi_reg,'original_farinotti_2019_version'] = rgidf_mass_gt_farinotti_reg\n", " _perc = (100 * rgidf_mass_gt.loc[rgi_reg,'oggm_version']/rgidf_mass_gt_farinotti_reg).round(2)\n", " rgidf_mass_gt.loc[rgi_reg,'perc_oggm_original_farinotti_2019_version'] = _perc" ] }, { "cell_type": "code", "execution_count": 4, "id": "f99e2429-9d8f-4410-877f-2e1e63719dbf", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
| \n", " | oggm_version | \n", "original_farinotti_2019_version | \n", "perc_oggm_original_farinotti_2019_version | \n", "
|---|---|---|---|
| 01 | \n", "17081.0 | \n", "17082.0 | \n", "99.99 | \n", "
| 02 | \n", "942.0 | \n", "954.0 | \n", "98.74 | \n", "
| 03 | \n", "25498.0 | \n", "25497.0 | \n", "100.00 | \n", "
| 04 | \n", "7750.0 | \n", "7749.0 | \n", "100.01 | \n", "
| 05 | \n", "14123.0 | \n", "14121.0 | \n", "100.01 | \n", "
| 06 | \n", "3393.0 | \n", "3393.0 | \n", "100.00 | \n", "
| 07 | \n", "6723.0 | \n", "6723.0 | \n", "100.00 | \n", "
| 08 | \n", "269.0 | \n", "270.0 | \n", "99.63 | \n", "
| 09 | \n", "13176.0 | \n", "13176.0 | \n", "100.00 | \n", "
| 10 | \n", "122.0 | \n", "126.0 | \n", "96.83 | \n", "
| 11 | \n", "115.0 | \n", "117.0 | \n", "98.29 | \n", "
| 12 | \n", "57.0 | \n", "54.0 | \n", "105.56 | \n", "
| 13 | \n", "2944.0 | \n", "2943.0 | \n", "100.03 | \n", "
| 14 | \n", "2579.0 | \n", "2583.0 | \n", "99.85 | \n", "
| 15 | \n", "790.0 | \n", "792.0 | \n", "99.75 | \n", "
| 16 | \n", "89.0 | \n", "90.0 | \n", "98.89 | \n", "
| 17 | \n", "4806.0 | \n", "4806.0 | \n", "100.00 | \n", "
| 18 | \n", "66.0 | \n", "63.0 | \n", "104.76 | \n", "
| 19 | \n", "41820.0 | \n", "41823.0 | \n", "99.99 | \n", "
| All | \n", "142341.0 | \n", "142353.0 | \n", "99.99 | \n", "