{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Spinup in USP mode" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from pyclmuapp import usp_clmu" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## spinup case\n", "\n", "Run 10 year for spinup\n", "\n", "The default SET `RUN_TYPE=\"coldstart\"`, the parameters will set to be in a cold state." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Copying the file forcing.nc to the /Users/user/Documents/GitHub/pyclmuapp/docs/notebooks/usp/workdir/inputfolder/usp\n" ] }, { "data": { "text/plain": [ "['/Users/user/Documents/GitHub/pyclmuapp/docs/notebooks/usp/workdir/outputfolder/lnd/hist/usp_spinup_clm0_2024-11-23_14-41-16_clm.nc']" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "usp = usp_clmu()\n", "\n", "# before running container, you need the image\n", "# usp.docker(\"pull\") # to pull the docker image if you don't have it\n", "usp_spinup = usp.run(\n", " case_name = \"usp_spinup\", \n", " SURF=\"surfdata.nc\", # path to surfdata.nc\n", " FORCING=\"forcing.nc\", # path to forcing.nc\n", " RUN_STARTDATE = \"2002-01-01\",\n", " STOP_OPTION = \"nyears\", \n", " STOP_N = \"10\",\n", " RUN_TYPE= \"coldstart\",\n", " )\n", "usp_spinup" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.Dataset> Size: 123MB\n",
       "Dimensions:             (levgrnd: 25, levlak: 10, levdcmp: 1, time: 175297,\n",
       "                         hist_interval: 2, lndgrid: 1, column: 6, gridcell: 1,\n",
       "                         landunit: 2, pft: 6, levsoi: 20)\n",
       "Coordinates:\n",
       "  * levgrnd             (levgrnd) float32 100B 0.01 0.04 0.09 ... 28.87 42.0\n",
       "  * levlak              (levlak) float32 40B 0.05 0.6 2.1 ... 25.6 34.33 44.78\n",
       "  * levdcmp             (levdcmp) float32 4B 1.0\n",
       "  * time                (time) datetime64[ns] 1MB 2002-01-01 ... 2012-01-01\n",
       "Dimensions without coordinates: hist_interval, lndgrid, column, gridcell,\n",
       "                                landunit, pft, levsoi\n",
       "Data variables: (12/129)\n",
       "    mcdate              (time) int32 701kB ...\n",
       "    mcsec               (time) int32 701kB ...\n",
       "    mdcur               (time) int32 701kB ...\n",
       "    mscur               (time) int32 701kB ...\n",
       "    nstep               (time) int32 701kB ...\n",
       "    time_bounds         (time, hist_interval) datetime64[ns] 3MB ...\n",
       "    ...                  ...\n",
       "    URBAN_AC            (time, gridcell) float32 701kB ...\n",
       "    URBAN_HEAT          (time, gridcell) float32 701kB ...\n",
       "    WASTEHEAT           (time, gridcell) float32 701kB ...\n",
       "    WBT                 (time, gridcell) float32 701kB ...\n",
       "    Wind                (time, gridcell) float32 701kB ...\n",
       "    ZWT                 (time, gridcell) float32 701kB ...\n",
       "Attributes: (12/38)\n",
       "    title:                                     CLM History file information\n",
       "    comment:                                   NOTE: None of the variables ar...\n",
       "    Conventions:                               CF-1.0\n",
       "    history:                                   created on 11/23/24 14:34:27\n",
       "    source:                                    Community Land Model CLM4.0\n",
       "    hostname:                                  clmu-app\n",
       "    ...                                        ...\n",
       "    ctype_urban_shadewall:                     73\n",
       "    ctype_urban_impervious_road:               74\n",
       "    ctype_urban_pervious_road:                 75\n",
       "    cft_c3_crop:                               1\n",
       "    cft_c3_irrigated:                          2\n",
       "    time_period_freq:                          minute_30
" ], "text/plain": [ " Size: 123MB\n", "Dimensions: (levgrnd: 25, levlak: 10, levdcmp: 1, time: 175297,\n", " hist_interval: 2, lndgrid: 1, column: 6, gridcell: 1,\n", " landunit: 2, pft: 6, levsoi: 20)\n", "Coordinates:\n", " * levgrnd (levgrnd) float32 100B 0.01 0.04 0.09 ... 28.87 42.0\n", " * levlak (levlak) float32 40B 0.05 0.6 2.1 ... 25.6 34.33 44.78\n", " * levdcmp (levdcmp) float32 4B 1.0\n", " * time (time) datetime64[ns] 1MB 2002-01-01 ... 2012-01-01\n", "Dimensions without coordinates: hist_interval, lndgrid, column, gridcell,\n", " landunit, pft, levsoi\n", "Data variables: (12/129)\n", " mcdate (time) int32 701kB ...\n", " mcsec (time) int32 701kB ...\n", " mdcur (time) int32 701kB ...\n", " mscur (time) int32 701kB ...\n", " nstep (time) int32 701kB ...\n", " time_bounds (time, hist_interval) datetime64[ns] 3MB ...\n", " ... ...\n", " URBAN_AC (time, gridcell) float32 701kB ...\n", " URBAN_HEAT (time, gridcell) float32 701kB ...\n", " WASTEHEAT (time, gridcell) float32 701kB ...\n", " WBT (time, gridcell) float32 701kB ...\n", " Wind (time, gridcell) float32 701kB ...\n", " ZWT (time, gridcell) float32 701kB ...\n", "Attributes: (12/38)\n", " title: CLM History file information\n", " comment: NOTE: None of the variables ar...\n", " Conventions: CF-1.0\n", " history: created on 11/23/24 14:34:27\n", " source: Community Land Model CLM4.0\n", " hostname: clmu-app\n", " ... ...\n", " ctype_urban_shadewall: 73\n", " ctype_urban_impervious_road: 74\n", " ctype_urban_pervious_road: 75\n", " cft_c3_crop: 1\n", " cft_c3_irrigated: 2\n", " time_period_freq: minute_30" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "usp.nc_view()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## startup" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Copying the file forcing.nc to the /Users/user/Documents/GitHub/pyclmuapp/docs/notebooks/usp/workdir/inputfolder/usp\n" ] }, { "data": { "text/plain": [ "['/Users/user/Documents/GitHub/pyclmuapp/docs/notebooks/usp/workdir/outputfolder/lnd/hist/usp_start_clm0_2024-11-23_14-43-55_clm.nc']" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "usp = usp_clmu()\n", "\n", "usp_london_start = usp.run(\n", " case_name = \"usp_start\", \n", " SURF=\"surfdata.nc\",\n", " FORCING=\"forcing.nc\",\n", " RUN_STARTDATE = \"2012-01-01\",\n", " STOP_OPTION = \"nyears\", \n", " STOP_N = \"2\",\n", " RUN_TYPE= \"branch\",\n", " RUN_REFCASE= \"usp_spinup\",\n", " RUN_REFDATE= \"2012-01-01\",\n", " )\n", "usp_london_start" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## no spinup" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Copying the file forcing.nc to the /Users/user/Documents/GitHub/pyclmuapp/docs/notebooks/usp/workdir/inputfolder/usp\n" ] }, { "data": { "text/plain": [ "['/Users/user/Documents/GitHub/pyclmuapp/docs/notebooks/usp/workdir/outputfolder/lnd/hist/usp_start_no_clm0_2024-11-23_14-46-29_clm.nc']" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "usp = usp_clmu()\n", "\n", "usp_london_start_no = usp.run(\n", " case_name = \"usp_start_no\", \n", " SURF=\"surfdata.nc\",\n", " FORCING=\"forcing.nc\",\n", " RUN_STARTDATE = \"2012-01-01\",\n", " STOP_OPTION = \"nyears\", \n", " STOP_N = \"2\",\n", " RUN_TYPE= \"coldstart\",\n", " RUN_REFCASE= \"usp_spinup\",\n", " RUN_REFDATE= \"2012-01-01\",\n", " )\n", "usp_london_start_no" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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2GOP4datW2asmKxBYlrxfGR5hWqIOdmlL1Cs2HcVN+/niL7PVfuuit5Xik3Hb5rkuEREVExyi9PRo0dx5IhuP5MjR47g2LFjshRVni+//BLjxo3D+PHjERYWhoULFyIoKAjLli2r8HYvv/wyRo4ciU6dOpm0PkvAb/bKuJySKWn/D7edN1ElRERkSpKD0+TJk3Hjhu7pgISEBEyePFmWovTJz8/H8ePHERERobU9IiICBw8eLPd2a9euxZUrVzBnzhyT1aaUvRdv4/HF+3A20bLmBTp107LqkULufu29v9yDaAs4hSeFUOZfOY9JRGTtJAenc+fOoW3btjrb27Rpg3PnzslSlD537txBUVERAgICtLYHBAQgOTlZ720uXbqEt99+Gxs2bICTk7izknl5eUhPT9f6sVRj1vyHMwnpGLfOtC19Uo1axXmKSlxOycTo1f8pXYbi7KkllCGRyLZJDk6urq56+wklJSWJDifGKLtYqCAIehcQLSoqwsiRIzF37lw0atRI9PHnz58PLy8vzU9QUJDRNZtaWo72vECc+dmyZOYZN3M5GefanSyMXn0EB6/cUboUIrIBkoNTnz59MHPmTKSlPTwdk5qainfeeceko+r8/Pzg6Oio07qUkpKi0woFABkZGTh27BheffVVODk5wcnJCfPmzcPJkyfh5OSEnTt36r2fksdW8qPvtKSlUXqiQuY021IyD5cp5uNSwms/RmPfpTsYudI8LaH21LpGZI8kNxF98cUX6N69O4KDgzUTXsbExCAgIADff/+97AWWcHFxQXh4OKKiojB06FDN9qioKAwePFhnf09PT5w+fVpr29KlS7Fz505s2rQJISEheu/H1dUVrq6GLalhKfQ0wFk9cz0kG8kKVEpyeq5Z7+/qHWkDBYjIukgOTrVr18apU6ewYcMGnDx5Eu7u7njhhRfw7LPPwtnZ2RQ1akyfPh2jR49Gu3bt0KlTJ6xYsQLx8fGYOHEigOLWooSEBKxfvx4ODg5o3ry51u39/f3h5uams93WmPvD3xyhhnnGfEzROVyK6ZExuHI7E7+80hlOjpIbxRX3za4rmNG3idJlEJGJGNQpqUqVKnjppZfkrqVSw4cPx927dzFv3jwkJSWhefPm2L59O4KDgwEU97OKj483e11EVDEpIWxzdAIA4Oi1++jUwNc0BRERGcig4HTx4kXs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4F9Nd526Vx5tgKfa1i53DTuyTwxORERk83bP6Kl3u4ODSm9oKsHQRGXxVB0RERGRSAxOCuIoDiIiIuvC4GQBzLX6NxERERmHwYmIiKzOV8NbaV3m0lVkLgxORERkdYa2qaN1+cD/eilUCdkbBiciIrJ6tbzdlS6B7ASDExERWaXXHytek07f/ExEpsLgREREVmlan0a48EE/jHykrs51f03trvm9TnW2RpF8OAEmERFZLTdnR73bGwdWQ8zsPvjp6A080aqWmasiW8bgRERENsnbwwUTezRQugyyMTxVpyBOf0lERGRdGJwsAOcfISIisg4MTkREREQiMTgRERERicTgRERERCQSgxMRERGRSAxORERERCIxOBERERGJxOBEREREJBKDExEREZFIDE4KEjh1OBERkVVhcCIiIiISicGJiIiISCQGJyIiIiKRGJyIiIiIRGJwIiIiIhKJwYmIiIhIJKsJTvfv38fo0aPh5eUFLy8vjB49GqmpqeXuX1BQgP/9739o0aIFqlSpglq1amHMmDFITEw0X9FERERkU6wmOI0cORIxMTHYsWMHduzYgZiYGIwePbrc/bOzs3HixAnMmjULJ06cwObNm3Hx4kU88cQTZqyaiIiIbImT0gWIcf78eezYsQOHDx/GI488AgBYuXIlOnXqhNjYWDRu3FjnNl5eXoiKitLatnjxYnTo0AHx8fGoW7euWWqviADOgElERGRNrKLF6dChQ/Dy8tKEJgDo2LEjvLy8cPDgQdHHSUtLg0qlgre3twmqNJxKpXQFREREJIZVtDglJyfD399fZ7u/vz+Sk5NFHSM3Nxdvv/02Ro4cCU9Pz3L3y8vLQ15enuZyenq69IKJiIjIJina4vT+++9DpVJV+HPs2DEAgEpPs4wgCHq3l1VQUIARI0ZArVZj6dKlFe47f/58TQd0Ly8vBAUFGfbgiIiIyOYo2uL06quvYsSIERXuU69ePZw6dQq3bt3Sue727dsICAio8PYFBQUYNmwY4uLisHPnzgpbmwBg5syZmD59uuZyeno6wxMREREBUDg4+fn5wc/Pr9L9OnXqhLS0NPz333/o0KEDAODIkSNIS0tD586dy71dSWi6dOkSdu3aBV9f30rvy9XVFa6uruIfBBEREdkNq+gcHhYWhn79+mHChAk4fPgwDh8+jAkTJuDxxx/XGlHXpEkTbNmyBQBQWFiIp59+GseOHcOGDRtQVFSE5ORkJCcnIz8/X6mHQkRERFbMKoITAGzYsAEtWrRAREQEIiIi0LJlS3z//fda+8TGxiItLQ0AcPPmTfz++++4efMmWrdujZo1a2p+pIzEIyIiIiphFaPqAMDHxwc//PBDhfsIwsN5kerVq6d1mYiIiMhYVtPiRERERKQ0BicFsUGMiIjIujA4WQAxc1ERERGR8hiciIiIiERicCIiIiISicGJiIiISCQGJyIiIiKRGJyIiIiIRGJwIiIiIhKJwYmIiIhIJAYnBXH+SyIiIuvC4GQBOP0lERGRdWBwIiIiIhKJwYmIiIhIJAYnIiIiIpEYnIiIiIhEYnAiIiIiEonBiYiIiEgkBiciIiIikRiciIiIiERyUroAe/bJUy2gVgPeHs5Kl0JEREQiMDgpaGibOkqXQERERBLwVB0RERGRSAxORERERCIxOBERERGJxOBEREREJBKDExEREZFIDE5EREREIjE4EREREYnE4EREREQkEoMTERERkUgMTkREREQiMTgRERERicTgRERERCQSgxMRERGRSAxORERERCIxOBERERGJxOBEREREJJKT0gVYOkEQAADp6ekKV0JERESmUPIZX/KZXxEGp0pkZGQAAIKCghSuhIiIiEwpIyMDXl5eFe6jEsTEKzumVquRmJiIatWqQaVSyXrs9PR0BAUF4caNG/D09JT12JbCHh4jwMdpa+zhcfIx2g4+TuMJgoCMjAzUqlULDg4V92Jii1MlHBwcUKdOHZPeh6enp00/2QH7eIwAH6etsYfHycdoO/g4jVNZS1MJdg4nIiIiEonBiYiIiEgkBicFubq6Ys6cOXB1dVW6FJOxh8cI8HHaGnt4nHyMtoOP07zYOZyIiIhIJLY4EREREYnE4EREREQkEoMTkQmpVCr8+uuvSpdBRKXwdUnGYHAywvz589G+fXtUq1YN/v7+GDJkCGJjY7X2EQQB77//PmrVqgV3d3c8+uijOHv2rNY+K1aswKOPPgpPT0+oVCqkpqZqXX/t2jWMGzcOISEhcHd3R4MGDTBnzhzk5+eb+iFW6uDBg3B0dES/fv2ULsUsxo4diyFDhihdhsncuHED48aNQ61ateDi4oLg4GC8/vrruHv3rqjb7969W+9z2NzM9doEgCeeeAJ169aFm5sbatasidGjRyMx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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " Size: 4B\n", "array(285.07147, dtype=float32)\n", " Size: 4B\n", "array(284.97766, dtype=float32)\n" ] } ], "source": [ "import matplotlib.pyplot as plt\n", "fig = plt.figure(figsize=(6, 5))\n", "ax = fig.add_subplot(111)\n", "usp_london_start_no_nc=usp.nc_view(usp_london_start[0])\n", "usp_london_start_nc=usp.nc_view(usp_london_start_no[0])\n", "diff = usp_london_start_no_nc['TSA']-usp_london_start_nc['TSA']\n", "diff.plot(ax=ax)\n", "ax.set_ylabel('Temperature difference [K]')\n", "ax.set_xlabel('Time')\n", "plt.tight_layout()\n", "plt.savefig('figs/usp_london_spinuptest.pdf', dpi=300)\n", "plt.show()\n", "print(usp_london_start_no_nc['TSA'].mean())\n", "print(usp_london_start_nc['TSA'].mean())" ] } ], "metadata": { "kernelspec": { "display_name": "pymet", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.8" } }, "nbformat": 4, "nbformat_minor": 2 }