From a76eba7b36755f217e928924ec3c07edfecfcf97 Mon Sep 17 00:00:00 2001 From: Teagan King Date: Mon, 5 Aug 2024 09:48:22 -0600 Subject: [PATCH 1/7] adding key metrics: Isla's NMSE metric --- examples/key_metrics/config.yml | 32 +- examples/nblibrary/atm/averaging_utils.py | 55 ++ examples/nblibrary/atm/nmse_PSL.ipynb | 962 ++++++++++++++++++++++ examples/nblibrary/atm/nmse_utils.py | 40 + 4 files changed, 1073 insertions(+), 16 deletions(-) create mode 100644 examples/nblibrary/atm/averaging_utils.py create mode 100644 examples/nblibrary/atm/nmse_PSL.ipynb create mode 100644 examples/nblibrary/atm/nmse_utils.py diff --git a/examples/key_metrics/config.yml b/examples/key_metrics/config.yml index ceed3e6..ea794a7 100644 --- a/examples/key_metrics/config.yml +++ b/examples/key_metrics/config.yml @@ -54,9 +54,9 @@ timeseries: case_name: 'b.e23_alpha17f.BLT1850.ne30_t232.092' atm: - vars: ['ACTNI', 'ACTNL', 'ACTREI', 'ACTREL', 'AODDUST'] - derive_vars: [] # {'PRECT':['PRECL', 'PRECC'], 'RESTOM':['FLNT', 'FSNT']} - hist_str: 'h0' + vars: ['PSL'] + derive_vars: [] + hist_str: 'h0a' start_years: [1] end_years: [100] level: 'lev' @@ -107,13 +107,14 @@ compute_notebooks: parameter_groups: none: {} -# atm: -# adf_quick_run: -# parameter_groups: -# none: -# adf_path: ../../../externals/ADF -# config_path: . -# config_fil_str: "config_f.cam6_3_119.FLTHIST_ne30.r328_gamma0.33_soae.001.yaml" + atm: + nmse_PSL: + parameter_groups: + none: + case: b.e23_alpha17f.BLT1850.ne30_t232.092 + component: atm + start_date: '0001-01-01' + end_date: '0101-01-01' glc: LIWG_SMB_diagnostic: @@ -181,13 +182,12 @@ book_toc: # Parts group notebooks into different sections in the Jupyter book # table of contents, so you can organize different parts of your project. + # Each chapter is the name of one of the notebooks that you executed + # in compute_notebooks above, also without .ipynb - # - caption: Atmosphere - - # # Each chapter is the name of one of the notebooks that you executed - # # in compute_notebooks above, also without .ipynb - # chapters: - # - file: atm/adf_quick_run + - caption: Atmosphere + chapters: + - file: atm/nmse_PSL # - caption: Ocean # chapters: diff --git a/examples/nblibrary/atm/averaging_utils.py b/examples/nblibrary/atm/averaging_utils.py new file mode 100644 index 0000000..ec7dd35 --- /dev/null +++ b/examples/nblibrary/atm/averaging_utils.py @@ -0,0 +1,55 @@ +from __future__ import annotations + +import xarray as xr + +dpseas = {"DJF": 90, "MAM": 92, "JJA": 92, "SON": 91} + + +def seasonal_climatology_weighted(dat): + """Calculate seasonal and annual average climatologies""" + days_in_month = dat.time.dt.days_in_month + mons = dat.time.dt.month + wgts = mons.copy(deep=True) + wgts = xr.where( + (mons == 1) | (mons == 2) | (mons == 12), + days_in_month / dpseas["DJF"], + wgts, + ) + wgts = xr.where( + (mons == 3) | (mons == 4) | (mons == 5), + days_in_month / dpseas["MAM"], + wgts, + ) + wgts = xr.where( + (mons == 6) | (mons == 7) | (mons == 8), + days_in_month / dpseas["JJA"], + wgts, + ) + wgts = xr.where( + (mons == 9) | (mons == 10) | (mons == 11), + days_in_month / dpseas["SON"], + wgts, + ) + datw = dat * wgts + + wgts_am = days_in_month / 365.0 + datw_am = dat * wgts_am + + ds_season = ( + datw.rolling(min_periods=3, center=True, time=3).sum().dropna("time", how="all") + ) + dat_djf = ds_season.where(ds_season.time.dt.month == 1, drop=True).mean("time") + dat_mam = ds_season.where(ds_season.time.dt.month == 4, drop=True).mean("time") + dat_jja = ds_season.where(ds_season.time.dt.month == 7, drop=True).mean("time") + dat_son = ds_season.where(ds_season.time.dt.month == 10, drop=True).mean("time") + dat_am = datw_am.groupby("time.year").sum("time") + dat_am = dat_am.mean("year") + + dat_djf = dat_djf.rename("DJF") + dat_mam = dat_mam.rename("MAM") + dat_jja = dat_jja.rename("JJA") + dat_son = dat_son.rename("SON") + dat_am = dat_am.rename("AM") + + alldat = xr.merge([dat_djf, dat_mam, dat_jja, dat_son, dat_am]) + return alldat diff --git a/examples/nblibrary/atm/nmse_PSL.ipynb b/examples/nblibrary/atm/nmse_PSL.ipynb new file mode 100644 index 0000000..c85cb09 --- /dev/null +++ b/examples/nblibrary/atm/nmse_PSL.ipynb @@ -0,0 +1,962 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 19, + "id": "2292c691-9bd9-44d2-8a3f-cb90dbe2e383", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "import xarray as xr\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "from nmse_utils import *\n", + "from averaging_utils import *\n", + "import glob\n", + "\n", + "import warnings\n", + "\n", + "warnings.filterwarnings(\"ignore\")" + ] + }, + { + "cell_type": "markdown", + "id": "9d67416c-a2d4-403b-85f4-647aa0a816eb", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### Parameters" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "b7486e94-e493-4369-9767-90eb15c0ac3a", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [ + "parameters" + ] + }, + "outputs": [], + "source": [ + "sname = \"\"\n", + "CESM_output_dir = \"\"\n", + "case_name = \"\"\n", + "component = \"\"\n", + "start_date = \"\"\n", + "end_date = \"\"" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "14b554f3-40e1-4c12-9f26-c1684ac03fbf", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "\n", + "\n" + ] + } + ], + "source": [ + "print(start_date)\n", + "print(end_date)\n", + "print(CESM_output_dir)\n", + "print(case_name)\n", + "print(component)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "80edad94-426a-4304-9003-78e12960613a", + "metadata": {}, + "outputs": [], + "source": [ + "dat = xr.open_mfdataset(\n", + " CESM_output_dir + \"/\" + case_name + \"/\" + component + \"/proc/tseries/*.PSL*.nc\"\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "e0527e3e-cd26-46b5-8c1e-08882109e12e", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### Read in validation data and other CMIP models for comparison (precomputed)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "126e65b3-2b8c-400c-af02-2ad0b0f82e6e", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "# This will need to be changed if we have a common repo\n", + "validpath = \"/glade/campaign/cgd/cas/islas/python_savs/CUPID/PSL_validation/\"\n", + "validpath_old = (\n", + " \"/glade/campaign/cgd/cas/islas/python_savs/CUPID/NMSE/validation_data_example/\"\n", + ")\n", + "\n", + "# ---ERA5\n", + "era5 = xr.open_dataset(validpath_old + \"PSL_ERA5.nc\")\n", + "# era5 = xr.open_dataset(\"/glade/campaign/cgd/cas/islas/python_savs/CUPID/NMSE/validation_data_example/PSL_ERA5.nc\")\n", + "era5 = era5 / 100.0 # convert to hPa\n", + "\n", + "# ---CESM2\n", + "lens2 = xr.open_dataset(validpath_old + \"PSL_LENS2.nc\")\n", + "lens2 = lens2 / 100.0 # convert to hPa\n", + "lens2[\"lon\"] = era5.lon\n", + "lens2[\"lat\"] = era5.lat\n", + "\n", + "# ---CMIP6\n", + "modelfiles = sorted(glob.glob(validpath_old + \"CMIP6/*.nc\"))\n", + "datcmip6 = [xr.open_dataset(ifile).mean(\"M\") for ifile in modelfiles]\n", + "datcmip6 = xr.concat(datcmip6, dim=\"model\")\n", + "datcmip6 = datcmip6 / 100.0\n", + "datcmip6[\"lon\"] = era5.lon\n", + "datcmip6[\"lat\"] = era5.lat" + ] + }, + { + "cell_type": "markdown", + "id": "ab5f1441-4b6b-4386-b3aa-a0f6fa9109b8", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### Read in the current case" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "id": "5a36af8c-c8c0-42df-b162-07c6c244ab0a", + "metadata": {}, + "outputs": [], + "source": [ + "CESM_output_dir = \"/glade/campaign/cesm/development/cross-wg/diagnostic_framework/CESM_output_for_testing/\"\n", + "case_name = \"b.e23_alpha17f.BLT1850.ne30_t232.092\"\n", + "component = \"atm\"" + ] + }, + { + "cell_type": "code", + "execution_count": 22, + "id": "2b4883ef-f3a7-458b-b96e-bdb79d5abdd6", + "metadata": {}, + "outputs": [ + { + "data": { + "text/html": [ + "
\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "\n", + "
<xarray.DataArray 'PSL' (time: 1200, ncol: 48600)> Size: 233MB\n",
+       "dask.array<truediv, shape=(1200, 48600), dtype=float32, chunksize=(1, 48600), chunktype=numpy.ndarray>\n",
+       "Coordinates:\n",
+       "  * time     (time) object 10kB 0001-01-16 12:00:00 ... 0100-12-16 12:00:00\n",
+       "Dimensions without coordinates: ncol
" + ], + "text/plain": [ + " Size: 233MB\n", + "dask.array\n", + "Coordinates:\n", + " * time (time) object 10kB 0001-01-16 12:00:00 ... 0100-12-16 12:00:00\n", + "Dimensions without coordinates: ncol" + ] + }, + "execution_count": 22, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "dat" + ] + }, + { + "cell_type": "code", + "execution_count": 21, + "id": "09397e30-62b9-474b-a47c-4a1174137bce", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [ + { + "ename": "ValueError", + "evalue": "cannot add coordinates with new dimensions to a DataArray", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)", + "Cell \u001b[0;32mIn[21], line 5\u001b[0m\n\u001b[1;32m 2\u001b[0m dat \u001b[38;5;241m=\u001b[39m xr\u001b[38;5;241m.\u001b[39mopen_mfdataset(CESM_output_dir\u001b[38;5;241m+\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;241m+\u001b[39mcase_name\u001b[38;5;241m+\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;241m+\u001b[39mcomponent\u001b[38;5;241m+\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/proc/tseries/*.PSL*.nc\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[1;32m 4\u001b[0m dat \u001b[38;5;241m=\u001b[39m dat\u001b[38;5;241m.\u001b[39mPSL\u001b[38;5;241m/\u001b[39m\u001b[38;5;241m100.\u001b[39m\n\u001b[0;32m----> 5\u001b[0m dat[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mlon\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m=\u001b[39m era5\u001b[38;5;241m.\u001b[39mlon ; dat[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mlat\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m=\u001b[39m era5\u001b[38;5;241m.\u001b[39mlat\n\u001b[1;32m 7\u001b[0m \u001b[38;5;66;03m#--Compute seasonal and annual means\u001b[39;00m\n\u001b[1;32m 8\u001b[0m dat \u001b[38;5;241m=\u001b[39m seasonal_climatology_weighted(dat)\u001b[38;5;241m.\u001b[39mload()\n", + "File \u001b[0;32m/glade/work/islas/conda-envs/cupid-analysis/lib/python3.11/site-packages/xarray/core/dataarray.py:879\u001b[0m, in \u001b[0;36mDataArray.__setitem__\u001b[0;34m(self, key, value)\u001b[0m\n\u001b[1;32m 877\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m__setitem__\u001b[39m(\u001b[38;5;28mself\u001b[39m, key: Any, value: Any) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m 878\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(key, \u001b[38;5;28mstr\u001b[39m):\n\u001b[0;32m--> 879\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcoords\u001b[49m\u001b[43m[\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m]\u001b[49m \u001b[38;5;241m=\u001b[39m value\n\u001b[1;32m 880\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 881\u001b[0m \u001b[38;5;66;03m# Coordinates in key, value and self[key] should be consistent.\u001b[39;00m\n\u001b[1;32m 882\u001b[0m \u001b[38;5;66;03m# TODO Coordinate consistency in key is checked here, but it\u001b[39;00m\n\u001b[1;32m 883\u001b[0m \u001b[38;5;66;03m# causes unnecessary indexing. It should be optimized.\u001b[39;00m\n\u001b[1;32m 884\u001b[0m obj \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m[key]\n", + "File \u001b[0;32m/glade/work/islas/conda-envs/cupid-analysis/lib/python3.11/site-packages/xarray/core/coordinates.py:528\u001b[0m, in \u001b[0;36mCoordinates.__setitem__\u001b[0;34m(self, key, value)\u001b[0m\n\u001b[1;32m 527\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m__setitem__\u001b[39m(\u001b[38;5;28mself\u001b[39m, key: Hashable, value: Any) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m--> 528\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mupdate\u001b[49m\u001b[43m(\u001b[49m\u001b[43m{\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m:\u001b[49m\u001b[43m \u001b[49m\u001b[43mvalue\u001b[49m\u001b[43m}\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[0;32m/glade/work/islas/conda-envs/cupid-analysis/lib/python3.11/site-packages/xarray/core/coordinates.py:566\u001b[0m, in \u001b[0;36mCoordinates.update\u001b[0;34m(self, other)\u001b[0m\n\u001b[1;32m 560\u001b[0m \u001b[38;5;66;03m# special case for PandasMultiIndex: updating only its dimension coordinate\u001b[39;00m\n\u001b[1;32m 561\u001b[0m \u001b[38;5;66;03m# is still allowed but depreciated.\u001b[39;00m\n\u001b[1;32m 562\u001b[0m \u001b[38;5;66;03m# It is the only case where we need to actually drop coordinates here (multi-index levels)\u001b[39;00m\n\u001b[1;32m 563\u001b[0m \u001b[38;5;66;03m# TODO: remove when removing PandasMultiIndex's dimension coordinate.\u001b[39;00m\n\u001b[1;32m 564\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_drop_coords(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_names \u001b[38;5;241m-\u001b[39m coords_to_align\u001b[38;5;241m.\u001b[39m_names)\n\u001b[0;32m--> 566\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_update_coords\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcoords\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mindexes\u001b[49m\u001b[43m)\u001b[49m\n", + "File \u001b[0;32m/glade/work/islas/conda-envs/cupid-analysis/lib/python3.11/site-packages/xarray/core/coordinates.py:844\u001b[0m, in \u001b[0;36mDataArrayCoordinates._update_coords\u001b[0;34m(self, coords, indexes)\u001b[0m\n\u001b[1;32m 842\u001b[0m dims \u001b[38;5;241m=\u001b[39m calculate_dimensions(coords_plus_data)\n\u001b[1;32m 843\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mset\u001b[39m(dims) \u001b[38;5;241m<\u001b[39m\u001b[38;5;241m=\u001b[39m \u001b[38;5;28mset\u001b[39m(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mdims):\n\u001b[0;32m--> 844\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\n\u001b[1;32m 845\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mcannot add coordinates with new dimensions to a DataArray\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 846\u001b[0m )\n\u001b[1;32m 847\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_data\u001b[38;5;241m.\u001b[39m_coords \u001b[38;5;241m=\u001b[39m coords\n\u001b[1;32m 849\u001b[0m \u001b[38;5;66;03m# TODO(shoyer): once ._indexes is always populated by a dict, modify\u001b[39;00m\n\u001b[1;32m 850\u001b[0m \u001b[38;5;66;03m# it to update inplace instead.\u001b[39;00m\n", + "\u001b[0;31mValueError\u001b[0m: cannot add coordinates with new dimensions to a DataArray" + ] + } + ], + "source": [ + "# Need to change file paths here to be read in using the parameters thing\n", + "dat = xr.open_mfdataset(\n", + " CESM_output_dir + \"/\" + case_name + \"/\" + component + \"/proc/tseries/*.PSL*.nc\"\n", + ")\n", + "dat = dat.sel(time=slice(start_date, end_date))\n", + "\n", + "dat = dat.PSL / 100.0\n", + "dat[\"lon\"] = era5.lon\n", + "dat[\"lat\"] = era5.lat\n", + "\n", + "# --Compute seasonal and annual means\n", + "dat = seasonal_climatology_weighted(dat).load()" + ] + }, + { + "cell_type": "markdown", + "id": "22cc331d-413c-4a87-bd89-812ad118cf8c", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### Compute the NMSE" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "6857717d-7514-45b5-ba33-a774f38b7c3e", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "nmse_dat = []\n", + "nmse_cesm2 = []\n", + "nmse_cmip6 = []\n", + "for ivar in era5.data_vars:\n", + " nmse_dat.append(nmse(era5[ivar], dat[ivar]))\n", + " nmse_cesm2.append(nmse(era5[ivar], lens2[ivar]))\n", + " nmse_cmip6.append(nmse(era5[ivar], datcmip6[ivar]))\n", + "nmse_dat = xr.merge(nmse_dat)\n", + "nmse_cesm2 = xr.merge(nmse_cesm2)\n", + "nmse_cmip6 = xr.merge(nmse_cmip6)" + ] + }, + { + "cell_type": "markdown", + "id": "1014f119-fc3f-428b-99ca-ab9de700148d", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "### Set up the plot panel" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "53494900-0145-4ab2-85b8-5ed6ae347892", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [], + "source": [ + "def plotnmse(fig, cmip6, cesm2, cesm3, x1, x2, y1, y2, titlestr):\n", + " ax = fig.add_axes([x1, y1, x2 - x1, y2 - y1])\n", + "\n", + " cmip6 = cmip6.sortby(cmip6, ascending=False)\n", + " binedges = np.arange(0, cmip6.size, 1)\n", + " ax.bar(\n", + " binedges,\n", + " cmip6,\n", + " width=1,\n", + " bottom=0,\n", + " edgecolor=\"black\",\n", + " color=\"gray\",\n", + " label=\"CMIP6\",\n", + " )\n", + "\n", + " ax.plot(cmip6.size + 1, cesm3, \"o\", color=\"blue\", label=\"THIS RUN\")\n", + "\n", + " ax.fill_between(\n", + " np.arange(0, cmip6.size + 3, 1) - 0.5,\n", + " np.arange(0, cmip6.size + 3, 1) * 0 + np.array(cesm2.min()),\n", + " np.arange(0, cmip6.size + 3, 1) * 0 + np.array(cesm2.max()),\n", + " color=\"salmon\",\n", + " alpha=0.5,\n", + " label=\"LENS2\",\n", + " )\n", + "\n", + " ax.set_xlim(-0.5, cmip6.size + 2 - 0.5)\n", + " ax.set_xticks([])\n", + " ax.set_ylabel(\"NMSE\", fontsize=14)\n", + " ax.set_title(titlestr, fontsize=16)\n", + "\n", + " ax.legend()\n", + "\n", + " return ax" + ] + }, + { + "cell_type": "code", + "execution_count": 17, + "id": "56b4cd99-a27e-4f28-86c2-8013e7c7bc78", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [ + { + "data": { + "text/plain": [ + "Text(0.5, 0.96, 'Validation data = ERA5 1979-01-01 to 2023-12-31')" + ] + }, + "execution_count": 17, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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ePCguW7Pnj3Vo0cPSVKPHj00ceJE85GV0aNHa8iQITp//ryGDRump59+WhcuXNCQIUPMSaC7HTp0SK1bt5aDg4N5redVq1apQ4cOSkhIsOl+bN26Ve3atdP+/fvVu3dvPfvsszpz5oxatmypf/75J1397Dw3wcHBqlevniTppZdeMt+LO9d1HjdunH7//Xe1atVKL730kvr06aM///xTvXv31kcffWTTGAqLtNe+g4P11TLTEviDBg3Sww8/LB8fHy1atCjT5zIyMlKffvqppk2bpgULFuj8+fN5H/gdLl++rFu3bsnX19dqwrlSpUqSpO3bt2fZVtp4n376aYvyv//+26KtOxUrVkzFixfX2bNnbfrgQJJ54+tOnTqlO5e27E92EqzZVVD92/L+W7FihQIDA7Vjxw717NlTwcHBcnd31+TJk9WhQwclJibmKgZHR0dJ6V/zeXlPMuojI2vXrpWUvSWq8lJ2483M5cuXtX//frm5ualy5cq5bg8AABQs1tQHAAD3FR8fH3Xs2FEbN27Url27FBgYaD6XmJioRYsWyc3Nzbzmfrt27RQdHS13d3eLdr7++msNHjxYH3/8scaPH5+jWMaNG6cLFy7orbfesmhj7ty5Gj58eLr6xYsXV0RERLo18H///Xc1b95cr732mjZv3izpdlI/NjZWq1evVs+ePW3elHD37t2aPXu2atasqb1795pnrk6ePFnNmzfX+++/r169epnXaE+zdu1aLVmyREFBQeayQYMG6ZtvvtGqVasy3cNAklJTU/Xss8/q1q1b2rVrl7l9wzA0YMAALVq0KN012XlugoODFRYWpl9++UXBwcHy8/NL1966devSJaOuXbumFi1aaMKECRo2bJhN+yKEhIRk6xsKPXv2VP369W2u/+WXX2rDhg1Wz40dOzbDWcFpUlJSNG/ePElK9zxK0qVLl7RmzRo99NBDqlu3riRpwIABmjZtmlasWJFuzfc0mzdvNr/+pNuJwhdffFEzZ860OrM3t4oXLy57e3udPXvWvPb/nc6cOSNJ+uuvvzJt5+zZs9q6davKly+vLl26WJxL228gra07xcXFmT9s+uuvvyzW7s/IiRMnJEn+/v7pzqWVpdW5F06cOCF3d3eVKVMmX/vP6v139epVPf3007K3t9fevXvNr7s73/8zZ87U66+/nuMY0l7zdyfv8+qe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sby8vPTuu+9KkkaPHm1eWz+3zp07p507d0r6v82TJalYsWLq1q2bJNtm66c937GxsVq7dq0kadGiRUpJSWGDXAAAANiEpD4AAABgA3t7e/Ns/TfffFO3bt3K1vWOjo7q27evLl++rHXr1iksLExHjx5V586dVapUqSyvd3Fx0ZgxY3Ts2DFduHBBK1eu1OjRo1WpUiVJ0urVq9WrV68Mr//uu+8UGhpq9Zg/f362xpKVXr16aceOHbpy5Yo2b96sN998U02bNpUk/f777+rQoYMuXbqUJ31dvHhRP/30k3766SeFhYXJxcVFXbt21ffff69Zs2blSR+SzJvbNm/eXJUrV7Y4l7YET1pyPit3f2vjm2++kb29vcWHBQAAAEBGSOoDAAAANnriiSdUvXp1nTx50uY11O+UNhN74cKF5g1yczI7u1y5cnrsscc0a9Ys/fXXX3r55ZclSdu3b0+3AWtB8vDwUIcOHfT6669r//79+u6772RnZ6eLFy9q7ty5edLH4MGDZRiGDMPQrVu3dPHiRa1bt049e/bMk/bTWFt6J81//vMfeXh4KDo6Wlu2bMmyrSZNmqhGjRpat26ddu3apV9++UUdO3aUt7d3nsYMAACABxNJfQAAAMBG9vb2euONNyTlbLZ+8+bN5e/vrzVr1mjhwoXy8PDQo48+mquYHBwcNGPGDJUpU0aSdODAgVy1dy/17t1bjz/+uKT7O867HTp0SH/88Yck6cUXX0y3J4Grq6vi4+Ml2b5h7oABA5SUlGT+UIeldwAAAGArkvoAAABANvTr10+1atXSmTNnFBISku3rn3zySSUmJurvv//W448/LldX11zHZGdnJ19fX0m3N4q9n6UtXXO/x3mntES9m5ubvL29rR5pSyh9//33unbtWpZtDhgwQCaTSREREXJ3d8/zbxYAAADgwUVSHwAAAMgGOzs7TZw4UZL01ltvmTe9tdXAgQPVvn17tW/fXs8884xN11y8eDHT87GxsTp27Jgkyd/fP1vx5KWs4pSkPXv2SCrYOLPj1q1bWrJkiSTpk08+UXR0dIZHhQoVdOPGDa1cuTLLdn19fTV8+HC1b99er7zyitzc3O71UAAAAPCAIKkPAAAAZFOfPn300EMP6ezZs9lew75y5crasmWLtmzZooCAAJuu6datm5588klt27Yt3YcIYWFh6tGjh65e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67Dz2bRpU5nHCggIUNu2bXXfffdp0aJFysnJKTfG7/8Wl//WZZ3L5dtdd93lsPMBAABAzWN8YTtXH198/fXXFbbv0qWLte2oUaMqbPvLL7/I09NTJpNJPXv2vGIuv//v8oknnqiw7Zw5c0rkDcA5edR2AgBQU6ZOnapBgwbZfOFy8eJFJSUlafz48WV+v27dOp04caLCGI888ojmzZsnSapfv77Cw8NVr149HTlyRJ9++qk+/fRTZWZmaubMmWX2j4yMlLe3d7nxfXx8Knk2FXv//fc1evRo5efny9PTUyEhIWrUqJGys7O1efNmbd68WWvXrtXOnTsdcrymTZsqPDxcknThwgX98MMPWrNmjdasWaP4+Hi99NJLDjlOseILY4vFojNnzujnn3/WBx98oA8++EBPPvmkXnnllXL/zlfy+3O5XPv27W3OGQAAAMbC+KLyXH18IUlLly7Vq6++WuZ33333ndLT0ysda/ny5SooKJAkbd++XT/++KNat25dqb7Lli3Tq6++Knd393LzBOD8KOoDqBPc3d21Z88erVq1SkOHDq1y//DwcB08eFDvvfdeuRfd7733niSpTZs2+v7770t9v3z5cs2bN09ubm6aPXu2Hn744RIX0Hv37tWyZcvk5+dXbh4rV65Uq1atqpx/VRw+fFhjxoxRfn6+Ro8erRkzZqhp06bW77OysrRq1Sp98cUXDjvmgAEDSsy+yc/P15QpUzRz5kzNmDFDd9xxh6Kiohx2vK1bt5b4bLFY9M0332j27NlKTEzUhAkTdPToUc2YMaPKsS8/FwAAALgexheV5+rji+DgYJ05c0bLli3Tyy+/LDe30otiXOlvWV77q666SqdOndLSpUv13HPPXbFfcfwNGzaof//+pb7//vvvtXPnzkrnAcC4WH4HQJ1w3333SZKmTZsmi8VS5f4hISG6+eab9fnnn+vgwYOlvj9z5ow++eQThYWFlft45LvvvitJGj16tB577LFSM2Lat2+vF154QU899VSV83OkDz74QHl5eWrTpo3+8Y9/lLjglqSgoCBNmDBBS5YsqbYcvLy89Oqrr6pz587WnKqTyWTS9ddfr3feeUeLFy+WJL388svatGlTtR4XAAAAzonxReW5+vjC19dXgwcP1rFjx7Rx48ZS31ssFi1btkz169fX3XfffcV4e/fu1X//+1/5+vrq9ddfl/S/Iv+VjBw5UlL5s/GL48TExFQqHgDjoqgPoE4YPXq0WrVqpW+//VYrVqywKUZFF0gffvihzp8/rxEjRpT7+O1PP/0kSdYLSaMqzrNTp05lzjKpKSaTSb169ZIkHThwoMaOO27cOA0aNEhSUWEfAAAAuBzji8qrC+OL4r9lWcX3TZs26ejRo7r77rtVv379K8YqjnH77bfr/vvvl5+fn3788Uft2LHjin1vueUWtWzZUqtXr9bZs2dLfGexWPT+++9bb0IAcG4U9QHUCZ6enpoyZYqkotk0ly5dqnKMe+65Rz4+Pnr//fdLfVd8IV58MVeW4sdev/zyyyofuyYV55menq6LFy/Wai62zHpyhNjYWEnSxo0bdf78+VrJAQAAAMbF+KLy6sL44g9/+IOaN2+u5ORknTt3rsR3xX/LysyOv3TpkvW/h/vvv18+Pj7WAnxlZuubTCaNGDFCZ8+e1erVq0t8t3XrVh0+fFh33XWXGjZsWKnzAmBcFPUB1BmjRo3SNddco3379tn0uKW/v7/uuOMOHTx4sMQsiZ9//lmbNm1S165d1aZNm3L7//GPf5RUdDH2l7/8RV999ZUKCwurfiLVrDjPgwcPasCAAVq7dm2pC9OaYLFYtG3bNknStddeW6PH7tGjh0wmk/Lz87Vnz54aPTYAAACcA+OLyqkL4ws3Nzfdf//9OnPmjD7++GPr/gsXLujDDz9Us2bN1KdPnyvGKZ7Vf/XVV2vgwIGSpBEjRkiSkpKSlJ+ff8UYxTcPLr8JwNI7gGuhqA+gzvDw8NAzzzwjSZo+fbpNF7xlPVb5/vvv69KlSxXOopGkv/3tb4qIiJDFYtHChQvVtWtX+fn5qVevXpo8ebJ27tx5xeOHhYXJZDKVuTnqsdu+ffvqoYcekiT9+9//1sCBA+Xv768bbrhBsbGx+vTTT6t9sJCfn6+nnnpK6enpkqRhw4ZV6/Eu5+fnJ39/f0lSdnZ2lfq+++675f6NAAAA4DoYX1ROXRlflFVM//jjj5WTk6P77rtP7u7uV4xR3HfIkCHy8vKSVPQUQFBQkH799VelpKRcMUb79u3VpUsX/fvf/1ZmZqYkKS8vTytXrlTTpk3Vr1+/Kp8bAOOhqA+gTomJiVF4eLi+//77Mh9zvZIBAwYoICBAK1assD46unTpUnl4eOjee++tsG/Dhg21detWvf7662rXrp0k6dy5c9q2bZteeeUV3XTTTbrrrrt06tSpcmNERkaqZ8+eZW5dunSp8vmUZ9GiRVq1apVuueUWubu7q6CgQF9//bUWLVqkO+64QzfccIO++eYbhx1v7dq16tWrl3r16qXIyEgFBARo5syZkqRJkyZZ176sScXrXZ45c6ZK/Zo2bVru3wgAAACuhfFF5dSF8UWnTp10/fXXKzU11ToxqCpL75w/f16rVq2SVLT0TjE3NzfrfwuVfWFuTEyMCgsLtXz5cknSp59+qlOnTum+++6Th4dH5U8KgGFR1AdQp7i7u1tn0zz//PMqKCioUn9PT08NGzZMJ0+eVEpKitLT0/Xtt9+qf//+atKkyRX7+/j4KC4uTnv37tWxY8eUnJysSZMmKSwsTFLRTI6KXlq0cuVKbd26tcztnXfeqdK5XMngwYO1adMm/frrr0pNTdXzzz+vrl27SpK+++479e3bVydOnHDIsbKzs7Vt2zZt27ZN6enp8vHx0YABA7R69WrNmjXLIceoqtzcXEn/WwO0sgYMGFDu3wgAAACuhfFF5dWF8cXIkSNVUFCg5cuXy2w267PPPlOHDh0q9dTDRx99pDNnzig4OFi33HJLie+Kl+D59NNP9dtvv10xVvGTAcU3AYr/eaWnPwA4D4r6AOqc+++/X23atNHBgwcrPdPh94pnWSxdurRKMy8uFxwcrLvvvluzZs3SDz/8oCeeeEJS0ctZi9d6NAI/Pz/17dtXTz/9tL744gutXLlSbm5uys7O1uLFix1yjAcffFAWi0UWi0UFBQXKzs5WSkqK7rrrLofEr6rTp08rJydHUtHMewAAAKA8jC+qxpXHFyNGjJCbm5uWLl2qDz74QAUFBZX+Wxb/t3PvvffKza1kuS4yMlLXXXed8vPztWLFiivGCgoKUt++fZWenq4tW7Zo7dq1atu2rSIjI6t+UgAMiaI+gDrH3d1dzz77rCTbZtN0795d4eHhWrNmjZYuXSo/Pz/deeedduXk4eGhV199VUFBQZKkL7/80q541Wno0KEaMmSIJGPnaY9t27bJYrHIy8tLN9xwQ22nAwAAAANjfGEfVxpfBAcH6w9/+IN27typ1157TW5ubtZZ9hX55ZdftH79eknSrFmzynzHwQ8//CCpakvwFP8zPz+fF+QCLoaiPoA66d5771X79u116NAhJSYmVrn/iBEjlJeXp19++UVDhgyRr6+v3Tm5ubkpNDRUUtGLnIzsmmuukWT8PG21cOFCSVKfPn3k4+NTy9kAAADA6Bhf2MeVxhfFS9xkZGTolltuUYsWLa7YZ9myZSosLJS3t7cCAwPL3aSiCUg//fTTFWPefffdatCggTIyMmQymSp1cwGA86CoD6BOcnNz03PPPSdJeuGFF6wvpaqsmJgY9enTR3369NG4ceMq1af4ZUnlOXXqlPbu3StJCg8Pr1I+jnSlPCVp+/btkmo3z+ryj3/8Q2vWrJEkxcfH13I2AAAAcAaML8pX18YXQ4YMUXR0tPr06aPHHnusUn2KZ99PnjxZWVlZ5W5RUVGS/vcC3orUq1dPTzzxhPr06aOHH37YeoMHgGugqA+gzrrnnnvUqVMnHTlypMprTF5zzTXasGGDNmzYYL2wupKBAwdqxIgR+s9//lPqIj89PV2DBg3SmTNn1KxZM/Xv379K+ZRn1KhRMplMGjVqVKX7vPTSS+rdu7eWL1+uM2fOlPguMzNTsbGxSktLk8lk0oMPPuiQPKuqVatWMplMNs2CKovFYtHXX3+t0aNH66GHHpIkPf300+rdu7dD4gMAAMD1Mb4oW10bXzRo0EDr1q3Thg0bKrWG/3fffafdu3dLuvKLbIu/r0xRX5KmTp2qDRs2aMGCBZVqD8B5eNR2AgBQW0wmk5577jkNHTpUhYWF1X68wsJCLVu2TMuWLZOPj4+uvfZa+fj46Pjx4zp+/Lgk6aqrrtKKFStUv379MmPcc8898vb2LvcYM2bMsLsQbTKZtHXrVm3dulVubm5q3bq1rr76ap04cUJHjx5VQUGB3N3dNWvWLEVERJQZ49FHH9WTTz5Z7jE2bdqkjh072pWnPXr16mX99zNnzujo0aP67bffJEkNGzbUK6+8or/85S+1lR4AAACcEOOLstWF8YU9imfpR0VF6dprr62w7fDhwzVx4kQdOHBAn3/+ubp3714TKQIwIIr6AOq0wYMHq3PnzkpPT6/2Y61fv17r1q3T2rVr9e233+r48eM6deqUGjRooG7duql///6aMGGCmjZtWm6MnTt3VniMkydPlviclZUlSercuXOl83zppZfUr18/rV27Vl988YWOHTumw4cPy9vbW9ddd51uvvlm/eUvf9H1119fbozc3Fzl5uaW+31VXx72e4WFhTKbzZJk80tsi2dOeXh4yM/PT02bNlV0dLRuu+023X///WrYsGG5xy7m5eVl07EBAADguhhflFYXxhe2unTpkt5//31JV56lL0mNGzfWH//4R61Zs0bvvfceRX2gDjNZLBZLbScBAHC8S5cuqVGjRrJYLPr555/LLVQ7m//+97+KiIjQbbfdpv/85z+1cmxJOnv2rOrVq1ejxwcAAABqC+MLADAO1tQHABf13Xff6fTp03rooYdc5oJb+t8s+yeeeKLGj/31119LkkJCQijoAwAAoE5hfAEAxkFRHwBc1Pbt2+Xh4aHHHnustlNxqO3bt6tt27YaOHBgjR73+PHjeu211yRJd9xxR40eGwAAAKhtjC8AwDhYfgcAgAqsXLlSL7zwgr7//nvl5eWpSZMm2r17t5o3b17bqQEAAAAAgDqImfoAAFTg2LFj+u6779SoUSPFxMTo888/p6APAAAAAABqDUV9AAAqMHHiRBUUFOj48eNasmSJrrnmmtpOCQBQC+bPn6+wsDD5+PgoIiJCaWlpleq3bds2eXh4qHPnztWbIAAAAOoMivoAAAAAUIGkpCRNnDhRU6ZM0e7du9W7d28NGDBAGRkZFfY7ffq0HnjgAfXp06eGMgUAAEBdwJr6AAAAAFCBbt266cYbb9SCBQus+9q1a6e77rpLM2bMKLffvffeq/DwcLm7u+ujjz5Senp6DWQLAAAAV+dR2wk4i0uXLun48eNq2LChTCZTbacDAACAamaxWHTmzBkFBwfLzY0HXOuq/Px87dq1S5MnTy6xPzo6Wtu3by+33zvvvKMff/xRS5cu1QsvvHDF4+Tl5SkvL8/6+dKlS/r111/VuHFjxh8AAAB1QFXGHxT1K+n48eNq2bJlbacBAACAGnb06FG1aNGittNALTGbzSosLFRgYGCJ/YGBgcrKyiqzz4EDBzR58mSlpaXJw6NyQ64ZM2Zo2rRpducLAAAA51aZ8QdF/Upq2LChpKIf1c/Pr5azAQAAQHXLyclRy5YtrdeBqNsuny1vsVjKnEFfWFio+++/X9OmTdN1111X6fjx8fGKi4uzfj59+rRCQkIYfwAAANQRVRl/UNSvpOILdj8/Py6qAQAA6hCWPqnbAgIC5O7uXmpWfnZ2dqnZ+5J05swZ7dy5U7t379YjjzwiqWgpHYvFIg8PD61fv15/+MMfSvXz9vaWt7d3qf2MPwAAAOqWyow/WBwUAAAAAMrh5eWliIgIpaamltifmpqqHj16lGrv5+enb775Runp6dYtNjZWbdq0UXp6urp161ZTqQMAAMBFMVMfAAAAACoQFxenmJgYRUZGKioqSosXL1ZGRoZiY2MlFS2dc+zYMS1ZskRubm7q2LFjif5NmzaVj49Pqf0AAACALSjqAwAA2KiwsFAXL16s7TRgBy8vL7m58fAqKjZ8+HCdPHlS06dPV2Zmpjp27KiUlBSFhoZKkjIzM5WRkVHLWQIAAFfH+MP5OWr8YbJYLBYH5OPycnJy5O/vr9OnT7OmJQAAdZzFYlFWVpZOnTpV26nATm5ubgoLC5OXl1ep77j+Q23ivz8AAFCM8YfrcNT4g5n6AAAAVVR8Qd20aVPVq1ePF6k6qUuXLun48ePKzMxUSEgIf0cAAAAYEuMP1+DI8QdFfQAAgCooLCy0XlA3bty4ttOBnZo0aaLjx4+roKBAnp6etZ0OAAAAUALjD9fiqPEHC4gCAABUQfEalvXq1avlTOAIxY+9FhYW1nImAAAAQGmMP1yLo8YfzNSvovT0dDVo0MCuGAEBAQoJCXFQRgAAoDbwyKtr4O8Io2P8AQAAJK5bXYWj/o4U9avolltusTuGr6+v9u/fz4U1AAAAgAox/gAAAMDlKOpX0R133KFmzZrZ3N9sNis5OVlms5mLagAAAAAVYvwBAACAy7GmfhU1btxYwcHBNm8BAQG1fQoAAMAACgulTZuk5cuL/lmdS7qbTKYKt1GjRlnbffTRR6X6jxo1SnfddVe5n7Ozs/Xwww8rJCRE3t7eCgoKUv/+/bVjx45yc5o6dar1+G5ubgoODtaIESN09OjREu1atWqlhISEUv0TEhLUqlWrUvFiY2NLtEtPT5fJZNLhw4fLzQUwMsYfAADAERh/uNb4w5BF/fnz5yssLEw+Pj6KiIhQWlpauW23bt2qnj17qnHjxvL19VXbtm01e/bsEm0SExPL/A/owoUL1X0qAAAApSQnS61aSbfdJt1/f9E/W7Uq2l8dMjMzrVtCQoL8/PxK7JszZ45d8YcMGaI9e/bo3Xff1Q8//KBPPvlEt956q3799dcK+3Xo0EGZmZn6+eeflZSUpG+++UbDhg2zOQ8fHx+99dZb+uGHH2yOAQAAALgaxh9FXGn8Ybjld5KSkjRx4kTNnz9fPXv21KJFizRgwADt3bu3zMdF69evr0ceeUTXX3+96tevr61bt+rhhx9W/fr19dBDD1nb+fn56fvvvy/R18fHp9rPBwAA4PeSk6WhQyWLpeT+Y8eK9n/4oTR4sGOPGRQUZP13f39/mUymEvvscerUKW3dulWbNm2yrv0dGhqqrl27XrGvh4eHNY/g4GCNGzdOjz32mHJycuTn51flXNq0aaOmTZvq6aef1ooVK6rcHwAAAHA1jD/+x5XGH4abqT9r1iyNGTNGY8eOVbt27ZSQkKCWLVtqwYIFZbbv0qWL7rvvPnXo0EGtWrXSyJEj1b9//1Kz+4v/4/n9BgAAUJMKC6XHHy99QS39b9/EidX7KKyjNWjQQA0aNNBHH32kvLw8m+NkZWUpOTlZ7u7ucnd3tznOyy+/rFWrVumrr76yOQYAAADgChh/lM/Zxx+GKurn5+dr165dio6OLrE/Ojpa27dvr1SM3bt3a/v27dY7NcVyc3MVGhqqFi1a6Pbbb9fu3bsdljcAAEBlpKVJP/9c/vcWi3T0aFG72nLfffdZL5SLt/fff7/c9h4eHkpMTNS7776rq666Sj179tTf//53ff3111c81jfffKMGDRqoXr16atasmTZt2qQJEyaofv36Nud/4403atiwYZo8ebLNMQAAAABXwPijJFcafxiqqG82m1VYWKjAwMAS+wMDA5WVlVVh3xYtWsjb21uRkZGaMGGCxo4da/2ubdu2SkxM1CeffKLly5fLx8dHPXv21IEDB8qNl5eXp5ycnBIbAACAPTIzHduuOsyePVvp6ekltjvvvLPCPkOGDNHx48f1ySefqH///tq0aZNuvPFGJSYmVtivTZs2Sk9P11dffaUXX3xRnTt31osvvmj3ObzwwgtKS0vT+vXr7Y4FAAAAOCvGHyW50vjDUEX9YiaTqcRni8VSat/l0tLStHPnTi1cuFAJCQlavny59bvu3btr5MiRuuGGG9S7d2+tWLFC1113nd54441y482YMUP+/v7WrWXLlvadFAAAqPOaNXNsu+oQFBSka6+9tsTWsGHDK/bz8fFRv3799Oyzz2r79u0aNWqUnnvuuQr7eHl56dprr1WHDh3097//XZ07d9Zf/vKXEm38/Px0+vTpUn1PnTolf3//MuO2bt1a48aN0+TJk2Up61ljAAAAoA5g/FGSK40/DFXUDwgIkLu7e6lZ+dnZ2aVm718uLCxMnTp10rhx4zRp0iRNnTq13LZubm666aabKpypHx8fr9OnT1u3o0ePVulcAAAALte7t9SihVTeXAWTSWrZsqids2vfvr3Onj1bpT7PPPOMli9frv/+97/WfW3bti1zfcqvvvpKbdq0KTfWs88+qx9++EEffPBBlXIAAAAAXAXjj4o58/jDUEV9Ly8vRUREKDU1tcT+1NRU9ejRo9JxLBZLhS9KsFgsSk9PV7MKbkN5e3vLz8+vxAYAAGAPd3dpzpyif7/8wrr4c0JCUTtncfLkSf3hD3/Q0qVL9fXXX+vQoUNauXKlXn31VQ0aNKhKsa655hoNGjRIzz77rHVfXFyc1q5dq+nTp2vv3r3au3evnn/+eX322Wd64oknyo0VGBiouLg4zZ071+ZzAwAAAJwZ44+KOfP4w1BFfanoh/vnP/+pt99+W/v27dOkSZOUkZGh2NhYSUUz6B944AFr+3nz5mnNmjU6cOCADhw4oHfeeUczZ87UyJEjrW2mTZumdevW6aefflJ6errGjBmj9PR0a0wAAICaMniw9OGHUvPmJfe3aFG0f/Dg2snLVg0aNFC3bt00e/Zs3XzzzerYsaOeeeYZjRs3Tm+++WaV4z3xxBP617/+pS+++EJS0TKK69at04YNG9SrVy/16tVL69ev17p169StW7cKY/31r39VgwYNbDovAAAAwBUw/qiYs44/TBYDLjQ6f/58vfrqq8rMzFTHjh2tfyRJGjVqlA4fPqxNmzZJkt544w0tWrRIhw4dkoeHh3UNo4cfflhubkX3LCZNmqTk5GRlZWXJ399fXbp00dSpUxUVFVXpnHJycuTv769Ro0apVatWNp/b8ePHtXjxYu3atUs33nijzXEAAEDtuHDhgg4dOqSwsDD5+PjYHKewUEpLK3opVbNmRY+8OtMMGVdR0d+z+Prv9OnTPLWJGsf4AwAASIw/XI2jxh8e1ZmkrcaPH6/x48eX+d3lbzF+9NFH9eijj1YYb/bs2Zo9e7aj0gMAALCbu7t06621nQUAAACAuoDxh2sx3PI7AAAAAAAAAACgbBT1AQAAAAAAAABwEhT1AQAAAAAAAABwEhT1AQAAAAAAAABwEhT1AQAAAAAAAABwEhT1AQAAAAAAAABwEhT1AQAAAAAAAABwEhT1AQAAAAAAAABwEh61nQAAAIArsFw4L128WHMH9PSUyce35o4HAAAAwDAYf9RtFPUBAADsZLlwXpe2pMpy7myNHdNUr77cbu5XpQvrUaNG6dSpU/roo49KfdeqVSsdOXKk1P4ZM2Zo8uTJOnz4sMLCwtSkSRP9+OOPatiwobVN586dddddd2nq1KmSpJ9++klTpkzR5s2b9euvvyogIEARERF67bXXdN111+nw4cN6/vnn9Z///EdZWVkKDg7WyJEjNWXKFHl5eVX5twAAAADqEsYfjD8o6gMAANjr4sWiC2oPT8mzBi4KL+YXHe/iRcmBs2WmT5+ucePGldj3+4tnSTpz5oxmzpypadOmlRkjPz9f/fr1U9u2bZWcnKxmzZrp559/VkpKik6fPi1J2r9/vy5duqRFixbp2muv1bfffqtx48bp7NmzmjlzpsPOBwAAAHBJjD+s6ur4g6I+AACAo3h6yeTtXe2HsUhSgeMftW3YsKGCgoIqbPPoo49q1qxZmjBhgpo2bVrq+7179+qnn37Sf/7zH4WGhkqSQkND1bNnT2ubP/7xj/rjH/9o/XzNNdfo+++/14IFC5z2ohoAAACocYw/6uz4gxflAgAAoNLuu+8+XXvttZo+fXqZ3zdp0kRubm768MMPVVhYWOm4p0+fVqNGjRyVJgAAAAAXwPijbBT1AQAAIEn629/+pgYNGpTYNm3aVKKNyWTSyy+/rMWLF+vHH38sFaN58+aaO3eunn32WV199dX6wx/+oOeff14//fRTucf98ccf9cYbbyg2NtbRpwQAAADAoBh/2I6iPgAAACRJf/3rX5Wenl5i69atW6l2/fv3V69evfTMM8+UGWfChAnKysrS0qVLFRUVpZUrV6pDhw5KTU0t1fb48eP64x//qHvuuUdjx451+DkBAAAAMCbGH7ajqA8AAABJUkBAgK699toSm69v2S/Cevnll5WUlKTdu3eX+X3Dhg1155136sUXX9SePXvUu3dvvfDCCyXaHD9+XLfddpuioqK0ePFih58PAAAAAONi/GE7ivoAAACosq5du2rw4MGaPHnyFduaTCa1bdtWZ8+ete47duyYbr31Vt14441655135ObGZSkAAACAsjH+KMmjthMAAABAzTl9+rTS09NL7Ct+QdSZM2eUlZVV4rt69erJz8+vzFgvvviiOnToIA+P/11Spqen67nnnlNMTIzat28vLy8v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PvlEkZGRevXVV9W8eXNdd911evLJJ2v00WGgqmbNmqUxY8Zo7NixateunRISEtSyZUstWLCgzPZdunTRfffdpw4dOqhVq1YaOXKk+vfvr7S0tBrOHAAAoHYw/qheFPUBAADqgIMHD8pisaht27aVaj969GglJibKYrHoww8/VOvWrdW5c+cqHbOgoECJiYn65ptv1KdPH0nSTz/9pK1bt+rbb7/V6tWrlZCQoA8//FATJkyo6ikBNSI/P1+7du1SdHR0if3R0dHavn17pWLs3r1b27dv1y233FJum7y8POXk5JTYAAAAnBXjj+pFUR8AAKAOsFgskiSTyVSp9n/605+Um5urLVu26O23367SLJm//e1vatCggXx9fTVhwgT99a9/tb6o6tKlSzKZTHr//ffVtWtXDRw4ULNmzVJiYqLTz5aBazKbzSosLFRgYGCJ/YGBgcrKyqqwb4sWLeTt7a3IyEhNmDBBY8eOLbftjBkz5O/vb92KHz0HAABwRow/qhdFfQAAgDogPDxcJpNJ+/btq1R7Dw8PxcTE6LnnntMXX3yhESNGVPpYf/3rX5Wenq4jR44oNzdXr776qtzcii47mzVrpubNm8vf39/avl27drJYLPr555+rdlJADbp8QGqxWK44SE1LS9POnTu1cOFCJSQkaPny5eW2jY+P1+nTp63b0aNHHZI3AABAbWD8Ub0o6gMAANQBjRo1Uv/+/TVv3jydPXu21PenTp0qtW/06NHavHmzBg0apKuvvrrSxwoICNC1116r4ODgUkXPnj176vjx48rNzbXu++GHH+Tm5qYWLVpU/oSAGhIQECB3d/dSs/Kzs7NLzd6/XFhYmDp16qRx48Zp0qRJmjp1arltvb295efnV2IDAABwVow/qhdFfQAAgDpi/vz5KiwsVNeuXbVq1SodOHBA+/bt09y5cxUVFVWqfbt27WQ2m/XOO+84LIf7779fjRs31p///Gft3btXW7Zs0V//+leNHj1avr6+DjsO4CheXl6KiIhQampqif2pqanq0aNHpeNYLBbl5eU5Oj0AAADDYvxRfTxqOwEAAABXYTabDX2csLAw/fe//9WLL76oJ554QpmZmWrSpIkiIiK0YMGCMvs0btzYnlRLadCggVJTU/Xoo48qMjJSjRs31rBhw/TCCy849DiAI8XFxSkmJkaRkZGKiorS4sWL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IMYUleOqYwpbf//t27dLkm655ZZKHefmm2+WpArfA9CmTRvdf//9ys/PZ7Y+4OIo6gOo0zw8PPTMM89IkqZPn27TxW/xrJnfL7vy/vvv69KlSxXOqJGkv/3tb4qIiJDFYtHChQvVtWtX+fn5qVevXpo8ebJ27tx5xeOHhYXJZDKVuTnqEdy+ffvqoYcekiT9+9//1sCBA+Xv768bbrhBsbGx+vTTT6t94JCfn6+nnnpK6enpkqRhw4ZV6/EqcvjwYW3dulUmk0n33nuvdT9L8AAAANQ9jCkqx1XHFLb+/seOHZMktW7dulLHKW53pfXyi2frJyYm6tChQ1U4EwDOhKI+gDovJiZG4eHh+v7778t85PVKBgwYoICAAK1YscL6GOnSpUvl4eFRouBbloYNG2rr1q16/fXX1a5dO0nSuXPntG3bNr3yyiu66aabdNddd+nUqVPlxoiMjFTPnj3L3Lp06VLl8ynPokWLtGrVKt1yyy1yd3dXQUGBvv76ay1atEh33HGHbrjhBn3zzTcOO97atWvVq1cv9erVS5GRkQoICNDMmTMlSZMmTbKug1kbli5dKovFot69e6tly5bW/cOGDZOnp6f27Nnj0N8CAAAAxsaYonJccUxh6+9/5swZSVL9+vUrdZzidsX9ynPttdcqJiZGFy9e1PPPP1/FswHgLCjqA6jz3N3drTNrnn/+eRUUFFSpv6enp4YNG6aTJ08qJSVF6enp+vbbb9W/f381adLkiv19fHwUFxenvXv36tixY0pOTtakSZMUFhYmSfr44481ePDgcvuvXLlSW7duLXN75513qnQuVzJ48GBt2rRJv/76q1JTU/X888+ra9eukqTvvvtOffv21YkTJxxyrOzsbG3btk3btm1Tenq6fHx8NGDAAK1evVqzZs1yyDFsVby2afHM/GIBAQGKjo6WxGx9AACAuoQxReW54pjClt+/YcOGkqSzZ89W6hjF7Yr7VeTZZ5+Vh4eH3nvvPf34449VORUAToKiPgCoqDjbpk0bHTx40KZibExMjKSiYm9xwbd4X1UEBwfr7rvv1qxZs/TDDz/oiSeekCRt3LjRuu6jEfj5+alv3756+umn9cUXX2jlypVyc3NTdna2Fi9e7JBjPPjgg7JYLLJYLCooKFB2drZSUlJ01113OSS+rb788kt9//338vT01D333FPq++I1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j1d+fr4mT55s25+fn69JkyY1eUxCQoLefvttu307duzQqFGj1KFDhyaPCQkJUUhIiN2+rl27Opc8AAAAvEpERER7pwA3cldtkZCQoPz8fC1dutRuzNixY5vNhfoDAAAALa0/vO5FuZKUlpam5557Tps2bdL+/fu1dOlSlZWVKSUlRVLDLJdZs2bZxqekpOibb75RWlqa9u/fr02bNun555/Xvffe216XAAAAAMADuKO2uPvuu7Vjxw499dRTOnDggJ566int3LlTS5YsaevLAwAAgA/yupn6kjR9+nQdP35cq1atktls1rBhw7Rt2zbFxsZKanhBQllZmW183759tW3bNi1dulTr169XVFSU1q1bp1tvvbW9LgEAAACAB3BHbTF27Fi98sorevDBB/XQQw+pX79+ys3N1ejRo9v8+gAAAOB7DFZrS16nCwAAAAAAAAAA2ptXLr8DAAAAAAAAAIA/oqkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICX+P8uZR6NkLFSrAAAAABJRU5ErkJggg==", + "text/plain": [ + "
" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig = plt.figure(figsize=(16, 16))\n", + "\n", + "ax = plotnmse(\n", + " fig,\n", + " nmse_cmip6.AM,\n", + " nmse_cesm2.AM,\n", + " nmse_dat.AM,\n", + " 0.3,\n", + " 0.7,\n", + " 0.77,\n", + " 0.93,\n", + " \"NMSE, SLP, AM\",\n", + ")\n", + "ax = plotnmse(\n", + " fig,\n", + " nmse_cmip6.DJF,\n", + " nmse_cesm2.DJF,\n", + " nmse_dat.DJF,\n", + " 0.05,\n", + " 0.45,\n", + " 0.57,\n", + " 0.72,\n", + " \"NMSE, SLP, DJF\",\n", + ")\n", + "ax = plotnmse(\n", + " fig,\n", + " nmse_cmip6.MAM,\n", + " nmse_cesm2.MAM,\n", + " nmse_dat.MAM,\n", + " 0.55,\n", + " 0.95,\n", + " 0.57,\n", + " 0.72,\n", + " \"NMSE, SLP, MAM\",\n", + ")\n", + "ax = plotnmse(\n", + " fig,\n", + " nmse_cmip6.JJA,\n", + " nmse_cesm2.JJA,\n", + " nmse_dat.JJA,\n", + " 0.05,\n", + " 0.45,\n", + " 0.37,\n", + " 0.52,\n", + " \"NMSE, SLP, JJA\",\n", + ")\n", + "ax = plotnmse(\n", + " fig,\n", + " nmse_cmip6.SON,\n", + " nmse_cesm2.SON,\n", + " nmse_dat.SON,\n", + " 0.55,\n", + " 0.95,\n", + " 0.37,\n", + " 0.52,\n", + " \"NMSE, SLP, SON\",\n", + ")\n", + "\n", + "fig.text(\n", + " 0.5,\n", + " 0.99,\n", + " \"THIS RUN = \" + case_name + \" \" + start_date + \" to \" + end_date,\n", + " ha=\"center\",\n", + " va=\"center\",\n", + " fontsize=14,\n", + " color=\"royalblue\",\n", + ")\n", + "fig.text(\n", + " 0.5,\n", + " 0.975,\n", + " \"Other runs = 1979-01-01 to 2023-12-31\",\n", + " ha=\"center\",\n", + " va=\"center\",\n", + " fontsize=14,\n", + ")\n", + "fig.text(\n", + " 0.5,\n", + " 0.96,\n", + " \"Validation data = ERA5 1979-01-01 to 2023-12-31\",\n", + " ha=\"center\",\n", + " va=\"center\",\n", + " fontsize=14,\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d01c7860-b4ca-4ab4-a05f-3d0f248a56c2", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python [conda env:cupid-analysis]", + "language": "python", + "name": "conda-env-cupid-analysis-py" + }, + "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.4" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} diff --git a/examples/nblibrary/atm/nmse_utils.py b/examples/nblibrary/atm/nmse_utils.py new file mode 100644 index 0000000..46f9da1 --- /dev/null +++ b/examples/nblibrary/atm/nmse_utils.py @@ -0,0 +1,40 @@ +from __future__ import annotations + +import numpy as np + + +def nmse(obs, mod): + """Calculate the normalized mean squared error metric of Williamson (1995) + "Skill Scores from the AMIP Simulations". + nmse = overbar( (z_m - z_a)**2 ) / overbar( (z_a')**2 ) + where overbar is the weighted spatial average and prime is the deviation + from that + """ + + # make sure the model and obs have the same lons and lats + mod["lon"] = obs.lon + mod["lat"] = obs.lat + + # get the weights and weight by zero if the model or obs is nan + w = np.cos(np.deg2rad(obs.lat)) + w = w.expand_dims({"lon": obs.lon}, axis=1) + w = w.where(~(np.isnan(obs) | np.isnan(mod)), 0) + obs = obs.where(w != 0, 0) + mod = mod.where(w != 0, 0) + + # numerator + num = (mod - obs) ** 2.0 + numw = num.weighted(w) + numwm = numw.mean(["lon", "lat"]) + + # denomenator + obsw = obs.weighted(w) + obswm = obsw.mean(["lon", "lat"]) + obsprime = obs - obswm + obsprime2 = obsprime**2.0 + obsprime2w = obsprime2.weighted(w) + obsprime2wm = obsprime2w.mean(["lon", "lat"]) + + nmse = numwm / obsprime2wm + + return nmse From 8d84d3fa1be46c023c3577a3840f5ad12ff91d2b Mon Sep 17 00:00:00 2001 From: Teagan King Date: Mon, 5 Aug 2024 13:01:25 -0600 Subject: [PATCH 2/7] remove unnecessary saving of local copy --- examples/nblibrary/atm/averaging_utils.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/examples/nblibrary/atm/averaging_utils.py b/examples/nblibrary/atm/averaging_utils.py index ec7dd35..b98625b 100644 --- a/examples/nblibrary/atm/averaging_utils.py +++ b/examples/nblibrary/atm/averaging_utils.py @@ -51,5 +51,4 @@ def seasonal_climatology_weighted(dat): dat_son = dat_son.rename("SON") dat_am = dat_am.rename("AM") - alldat = xr.merge([dat_djf, dat_mam, dat_jja, dat_son, dat_am]) - return alldat + return xr.merge([dat_djf, dat_mam, dat_jja, dat_son, dat_am]) From 9620a5906a4223f42da30d360a12c4ac0e1dfaa0 Mon Sep 17 00:00:00 2001 From: Teagan King Date: Mon, 5 Aug 2024 13:07:54 -0600 Subject: [PATCH 3/7] updates from Mike's suggestions --- examples/key_metrics/config.yml | 2 - examples/nblibrary/atm/nmse_PSL.ipynb | 572 ++------------------------ 2 files changed, 29 insertions(+), 545 deletions(-) diff --git a/examples/key_metrics/config.yml b/examples/key_metrics/config.yml index ea794a7..e350c53 100644 --- a/examples/key_metrics/config.yml +++ b/examples/key_metrics/config.yml @@ -111,8 +111,6 @@ compute_notebooks: nmse_PSL: parameter_groups: none: - case: b.e23_alpha17f.BLT1850.ne30_t232.092 - component: atm start_date: '0001-01-01' end_date: '0101-01-01' diff --git a/examples/nblibrary/atm/nmse_PSL.ipynb b/examples/nblibrary/atm/nmse_PSL.ipynb index c85cb09..2c4ac16 100644 --- a/examples/nblibrary/atm/nmse_PSL.ipynb +++ b/examples/nblibrary/atm/nmse_PSL.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 19, + "execution_count": null, "id": "2292c691-9bd9-44d2-8a3f-cb90dbe2e383", "metadata": { "editable": true, @@ -41,7 +41,7 @@ }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "id": "b7486e94-e493-4369-9767-90eb15c0ac3a", "metadata": { "editable": true, @@ -57,32 +57,21 @@ "sname = \"\"\n", "CESM_output_dir = \"\"\n", "case_name = \"\"\n", - "component = \"\"\n", "start_date = \"\"\n", "end_date = \"\"" ] }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "id": "14b554f3-40e1-4c12-9f26-c1684ac03fbf", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n", - "\n" - ] - } - ], + "outputs": [], "source": [ "print(start_date)\n", "print(end_date)\n", "print(CESM_output_dir)\n", - "print(case_name)\n", - "print(component)" + "print(case_name)" ] }, { @@ -93,7 +82,7 @@ "outputs": [], "source": [ "dat = xr.open_mfdataset(\n", - " CESM_output_dir + \"/\" + case_name + \"/\" + component + \"/proc/tseries/*.PSL*.nc\"\n", + " CESM_output_dir + \"/\" + case_name + \"/atm/proc/tseries/*.PSL*.nc\"\n", ")" ] }, @@ -113,7 +102,7 @@ }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "id": "126e65b3-2b8c-400c-af02-2ad0b0f82e6e", "metadata": { "editable": true, @@ -166,502 +155,28 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": null, "id": "5a36af8c-c8c0-42df-b162-07c6c244ab0a", "metadata": {}, "outputs": [], "source": [ "CESM_output_dir = \"/glade/campaign/cesm/development/cross-wg/diagnostic_framework/CESM_output_for_testing/\"\n", - "case_name = \"b.e23_alpha17f.BLT1850.ne30_t232.092\"\n", - "component = \"atm\"" + "case_name = \"b.e23_alpha17f.BLT1850.ne30_t232.092\"" ] }, { "cell_type": "code", - "execution_count": 22, + "execution_count": null, "id": "2b4883ef-f3a7-458b-b96e-bdb79d5abdd6", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "
<xarray.DataArray 'PSL' (time: 1200, ncol: 48600)> Size: 233MB\n",
-       "dask.array<truediv, shape=(1200, 48600), dtype=float32, chunksize=(1, 48600), chunktype=numpy.ndarray>\n",
-       "Coordinates:\n",
-       "  * time     (time) object 10kB 0001-01-16 12:00:00 ... 0100-12-16 12:00:00\n",
-       "Dimensions without coordinates: ncol
" - ], - "text/plain": [ - " Size: 233MB\n", - "dask.array\n", - "Coordinates:\n", - " * time (time) object 10kB 0001-01-16 12:00:00 ... 0100-12-16 12:00:00\n", - "Dimensions without coordinates: ncol" - ] - }, - "execution_count": 22, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ "dat" ] }, { "cell_type": "code", - "execution_count": 21, + "execution_count": null, "id": "09397e30-62b9-474b-a47c-4a1174137bce", "metadata": { "editable": true, @@ -670,34 +185,25 @@ }, "tags": [] }, - "outputs": [ - { - "ename": "ValueError", - "evalue": "cannot add coordinates with new dimensions to a DataArray", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)", - "Cell \u001b[0;32mIn[21], line 5\u001b[0m\n\u001b[1;32m 2\u001b[0m dat \u001b[38;5;241m=\u001b[39m xr\u001b[38;5;241m.\u001b[39mopen_mfdataset(CESM_output_dir\u001b[38;5;241m+\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;241m+\u001b[39mcase_name\u001b[38;5;241m+\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;241m+\u001b[39mcomponent\u001b[38;5;241m+\u001b[39m\u001b[38;5;124m'\u001b[39m\u001b[38;5;124m/proc/tseries/*.PSL*.nc\u001b[39m\u001b[38;5;124m'\u001b[39m)\n\u001b[1;32m 4\u001b[0m dat \u001b[38;5;241m=\u001b[39m dat\u001b[38;5;241m.\u001b[39mPSL\u001b[38;5;241m/\u001b[39m\u001b[38;5;241m100.\u001b[39m\n\u001b[0;32m----> 5\u001b[0m dat[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mlon\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m=\u001b[39m era5\u001b[38;5;241m.\u001b[39mlon ; dat[\u001b[38;5;124m'\u001b[39m\u001b[38;5;124mlat\u001b[39m\u001b[38;5;124m'\u001b[39m] \u001b[38;5;241m=\u001b[39m era5\u001b[38;5;241m.\u001b[39mlat\n\u001b[1;32m 7\u001b[0m \u001b[38;5;66;03m#--Compute seasonal and annual means\u001b[39;00m\n\u001b[1;32m 8\u001b[0m dat \u001b[38;5;241m=\u001b[39m seasonal_climatology_weighted(dat)\u001b[38;5;241m.\u001b[39mload()\n", - "File \u001b[0;32m/glade/work/islas/conda-envs/cupid-analysis/lib/python3.11/site-packages/xarray/core/dataarray.py:879\u001b[0m, in \u001b[0;36mDataArray.__setitem__\u001b[0;34m(self, key, value)\u001b[0m\n\u001b[1;32m 877\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m__setitem__\u001b[39m(\u001b[38;5;28mself\u001b[39m, key: Any, value: Any) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[1;32m 878\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;28misinstance\u001b[39m(key, \u001b[38;5;28mstr\u001b[39m):\n\u001b[0;32m--> 879\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mcoords\u001b[49m\u001b[43m[\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m]\u001b[49m \u001b[38;5;241m=\u001b[39m value\n\u001b[1;32m 880\u001b[0m \u001b[38;5;28;01melse\u001b[39;00m:\n\u001b[1;32m 881\u001b[0m \u001b[38;5;66;03m# Coordinates in key, value and self[key] should be consistent.\u001b[39;00m\n\u001b[1;32m 882\u001b[0m \u001b[38;5;66;03m# TODO Coordinate consistency in key is checked here, but it\u001b[39;00m\n\u001b[1;32m 883\u001b[0m \u001b[38;5;66;03m# causes unnecessary indexing. It should be optimized.\u001b[39;00m\n\u001b[1;32m 884\u001b[0m obj \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mself\u001b[39m[key]\n", - "File \u001b[0;32m/glade/work/islas/conda-envs/cupid-analysis/lib/python3.11/site-packages/xarray/core/coordinates.py:528\u001b[0m, in \u001b[0;36mCoordinates.__setitem__\u001b[0;34m(self, key, value)\u001b[0m\n\u001b[1;32m 527\u001b[0m \u001b[38;5;28;01mdef\u001b[39;00m \u001b[38;5;21m__setitem__\u001b[39m(\u001b[38;5;28mself\u001b[39m, key: Hashable, value: Any) \u001b[38;5;241m-\u001b[39m\u001b[38;5;241m>\u001b[39m \u001b[38;5;28;01mNone\u001b[39;00m:\n\u001b[0;32m--> 528\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43mupdate\u001b[49m\u001b[43m(\u001b[49m\u001b[43m{\u001b[49m\u001b[43mkey\u001b[49m\u001b[43m:\u001b[49m\u001b[43m \u001b[49m\u001b[43mvalue\u001b[49m\u001b[43m}\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[0;32m/glade/work/islas/conda-envs/cupid-analysis/lib/python3.11/site-packages/xarray/core/coordinates.py:566\u001b[0m, in \u001b[0;36mCoordinates.update\u001b[0;34m(self, other)\u001b[0m\n\u001b[1;32m 560\u001b[0m \u001b[38;5;66;03m# special case for PandasMultiIndex: updating only its dimension coordinate\u001b[39;00m\n\u001b[1;32m 561\u001b[0m \u001b[38;5;66;03m# is still allowed but depreciated.\u001b[39;00m\n\u001b[1;32m 562\u001b[0m \u001b[38;5;66;03m# It is the only case where we need to actually drop coordinates here (multi-index levels)\u001b[39;00m\n\u001b[1;32m 563\u001b[0m \u001b[38;5;66;03m# TODO: remove when removing PandasMultiIndex's dimension coordinate.\u001b[39;00m\n\u001b[1;32m 564\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_drop_coords(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_names \u001b[38;5;241m-\u001b[39m coords_to_align\u001b[38;5;241m.\u001b[39m_names)\n\u001b[0;32m--> 566\u001b[0m \u001b[38;5;28;43mself\u001b[39;49m\u001b[38;5;241;43m.\u001b[39;49m\u001b[43m_update_coords\u001b[49m\u001b[43m(\u001b[49m\u001b[43mcoords\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mindexes\u001b[49m\u001b[43m)\u001b[49m\n", - "File \u001b[0;32m/glade/work/islas/conda-envs/cupid-analysis/lib/python3.11/site-packages/xarray/core/coordinates.py:844\u001b[0m, in \u001b[0;36mDataArrayCoordinates._update_coords\u001b[0;34m(self, coords, indexes)\u001b[0m\n\u001b[1;32m 842\u001b[0m dims \u001b[38;5;241m=\u001b[39m calculate_dimensions(coords_plus_data)\n\u001b[1;32m 843\u001b[0m \u001b[38;5;28;01mif\u001b[39;00m \u001b[38;5;129;01mnot\u001b[39;00m \u001b[38;5;28mset\u001b[39m(dims) \u001b[38;5;241m<\u001b[39m\u001b[38;5;241m=\u001b[39m \u001b[38;5;28mset\u001b[39m(\u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39mdims):\n\u001b[0;32m--> 844\u001b[0m \u001b[38;5;28;01mraise\u001b[39;00m \u001b[38;5;167;01mValueError\u001b[39;00m(\n\u001b[1;32m 845\u001b[0m \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mcannot add coordinates with new dimensions to a DataArray\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 846\u001b[0m )\n\u001b[1;32m 847\u001b[0m \u001b[38;5;28mself\u001b[39m\u001b[38;5;241m.\u001b[39m_data\u001b[38;5;241m.\u001b[39m_coords \u001b[38;5;241m=\u001b[39m coords\n\u001b[1;32m 849\u001b[0m \u001b[38;5;66;03m# TODO(shoyer): once ._indexes is always populated by a dict, modify\u001b[39;00m\n\u001b[1;32m 850\u001b[0m \u001b[38;5;66;03m# it to update inplace instead.\u001b[39;00m\n", - "\u001b[0;31mValueError\u001b[0m: cannot add coordinates with new dimensions to a DataArray" - ] - } - ], + "outputs": [], "source": [ "# Need to change file paths here to be read in using the parameters thing\n", "dat = xr.open_mfdataset(\n", - " CESM_output_dir + \"/\" + case_name + \"/\" + component + \"/proc/tseries/*.PSL*.nc\"\n", + " CESM_output_dir + \"/\" + case_name + \"/atm/proc/tseries/*.PSL*.nc\"\n", ")\n", "dat = dat.sel(time=slice(start_date, end_date))\n", "\n", "dat = dat.PSL / 100.0\n", - "dat[\"lon\"] = era5.lon\n", - "dat[\"lat\"] = era5.lat\n", - "\n", + "dat = dat.expand_dims(lon=era5.lon, lat=era5.lat)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "073a2ad0-81e6-4817-9024-4b9b718fabb4", + "metadata": {}, + "outputs": [], + "source": [ "# --Compute seasonal and annual means\n", "dat = seasonal_climatology_weighted(dat).load()" ] @@ -718,7 +224,7 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "id": "6857717d-7514-45b5-ba33-a774f38b7c3e", "metadata": { "editable": true, @@ -729,6 +235,7 @@ }, "outputs": [], "source": [ + "print('moving on to compute the nmse')\n", "nmse_dat = []\n", "nmse_cesm2 = []\n", "nmse_cmip6 = []\n", @@ -757,7 +264,7 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "id": "53494900-0145-4ab2-85b8-5ed6ae347892", "metadata": { "editable": true, @@ -806,7 +313,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": null, "id": "56b4cd99-a27e-4f28-86c2-8013e7c7bc78", "metadata": { "editable": true, @@ -815,28 +322,7 @@ }, "tags": [] }, - "outputs": [ - { - "data": { - "text/plain": [ - "Text(0.5, 0.96, 'Validation data = ERA5 1979-01-01 to 2023-12-31')" - ] - }, - "execution_count": 17, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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ePCguW7Pnj3Vo0cPSVKPHj00ceJE85GV0aNHa8iQITp//ryGDRump59+WhcuXNCQIUPMSaC7HTp0SK1bt5aDg4N5redVq1apQ4cOSkhIsOl+bN26Ve3atdP+/fvVu3dvPfvsszpz5oxatmypf/75J1397Dw3wcHBqlevniTppZdeMt+LO9d1HjdunH7//Xe1atVKL730kvr06aM///xTvXv31kcffWTTGAqLtNe+g4P11TLTEviDBg3Sww8/LB8fHy1atCjT5zIyMlKffvqppk2bpgULFuj8+fN5H/gdLl++rFu3bsnX19dqwrlSpUqSpO3bt2fZVtp4n376aYvyv//+26KtOxUrVkzFixfX2bNnbfrgQJJ54+tOnTqlO5e27E92EqzZVVD92/L+W7FihQIDA7Vjxw717NlTwcHBcnd31+TJk9WhQwclJibmKgZHR0dJ6V/zeXlPMuojI2vXrpWUvSWq8lJ2483M5cuXtX//frm5ualy5cq5bg8AABQs1tQHAAD3FR8fH3Xs2FEbN27Url27FBgYaD6XmJioRYsWyc3Nzbzmfrt27RQdHS13d3eLdr7++msNHjxYH3/8scaPH5+jWMaNG6cLFy7orbfesmhj7ty5Gj58eLr6xYsXV0RERLo18H///Xc1b95cr732mjZv3izpdlI/NjZWq1evVs+ePW3elHD37t2aPXu2atasqb1795pnrk6ePFnNmzfX+++/r169epnXaE+zdu1aLVmyREFBQeayQYMG6ZtvvtGqVasy3cNAklJTU/Xss8/q1q1b2rVrl7l9wzA0YMAALVq0KN012XlugoODFRYWpl9++UXBwcHy8/NL1966devSJaOuXbumFi1aaMKECRo2bJhN+yKEhIRk6xsKPXv2VP369W2u/+WXX2rDhg1Wz40dOzbDWcFpUlJSNG/ePElK9zxK0qVLl7RmzRo99NBDqlu3riRpwIABmjZtmlasWJFuzfc0mzdvNr/+pNuJwhdffFEzZ860OrM3t4oXLy57e3udPXvWvPb/nc6cOSNJ+uuvvzJt5+zZs9q6davKly+vLl26WJxL228gra07xcXFmT9s+uuvvyzW7s/IiRMnJEn+/v7pzqWVpdW5F06cOCF3d3eVKVMmX/vP6v139epVPf3007K3t9fevXvNr7s73/8zZ87U66+/nuMY0l7zdyfv8+qe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sby8vPTuu+9KkkaPHm1eWz+3zp07p507d0r6v82TJalYsWLq1q2bJNtm66c937GxsVq7dq0kadGiRUpJSWGDXAAAANiEpD4AAABgA3t7e/Ns/TfffFO3bt3K1vWOjo7q27evLl++rHXr1iksLExHjx5V586dVapUqSyvd3Fx0ZgxY3Ts2DFduHBBK1eu1OjRo1WpUiVJ0urVq9WrV68Mr//uu+8UGhpq9Zg/f362xpKVXr16aceOHbpy5Yo2b96sN998U02bNpUk/f777+rQoYMuXbqUJ31dvHhRP/30k3766SeFhYXJxcVFXbt21ffff69Zs2blSR+SzJvbNm/eXJUrV7Y4l7YET1pyPit3f2vjm2++kb29vcWHBQAAAEBGSOoDAAAANnriiSdUvXp1nTx50uY11O+UNhN74cKF5g1yczI7u1y5cnrsscc0a9Ys/fXXX3r55ZclSdu3b0+3AWtB8vDwUIcOHfT6669r//79+u6772RnZ6eLFy9q7ty5edLH4MGDZRiGDMPQrVu3dPHiRa1bt049e/bMk/bTWFt6J81//vMfeXh4KDo6Wlu2bMmyrSZNmqhGjRpat26ddu3apV9++UUdO3aUt7d3nsYMAACABxNJfQAAAMBG9vb2euONNyTlbLZ+8+bN5e/vrzVr1mjhwoXy8PDQo48+mquYHBwcNGPGDJUpU0aSdODAgVy1dy/17t1bjz/+uKT7O867HTp0SH/88Yck6cUXX0y3J4Grq6vi4+Ml2b5h7oABA5SUlGT+UIeldwAAAGArkvoAAABANvTr10+1atXSmTNnFBISku3rn3zySSUmJurvv//W448/LldX11zHZGdnJ19fX0m3N4q9n6UtXXO/x3mntES9m5ubvL29rR5pSyh9//33unbtWpZtDhgwQCaTSREREXJ3d8/zbxYAAADgwUVSHwAAAMgGOzs7TZw4UZL01ltvmTe9tdXAgQPVvn17tW/fXs8884xN11y8eDHT87GxsTp27Jgkyd/fP1vx5KWs4pSkPXv2SCrYOLPj1q1bWrJkiSTpk08+UXR0dIZHhQoVdOPGDa1cuTLLdn19fTV8+HC1b99er7zyitzc3O71UAAAAPCAIKkPAAAAZFOfPn300EMP6ezZs9lew75y5crasmWLtmzZooCAAJuu6datm5588klt27Yt3YcIYWFh6tGjh65e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67Dz2bRpU5nHCggIUNu2bXXfffdp0aJFysnJKTfG7/8Wl//WZZ3L5dtdd93lsPMBAABAzWN8YTtXH198/fXXFbbv0qWLte2oUaMqbPvLL7/I09NTJpNJPXv2vGIuv//v8oknnqiw7Zw5c0rkDcA5edR2AgBQU6ZOnapBgwbZfOFy8eJFJSUlafz48WV+v27dOp04caLCGI888ojmzZsnSapfv77Cw8NVr149HTlyRJ9++qk+/fRTZWZmaubMmWX2j4yMlLe3d7nxfXx8Knk2FXv//fc1evRo5efny9PTUyEhIWrUqJGys7O1efNmbd68WWvXrtXOnTsdcrymTZsqPDxcknThwgX98MMPWrNmjdasWaP4+Hi99NJLDjlOseILY4vFojNnzujnn3/WBx98oA8++EBPPvmkXnnllXL/zlfy+3O5XPv27W3OGQAAAMbC+KLyXH18IUlLly7Vq6++WuZ33333ndLT0ysda/ny5SooKJAkbd++XT/++KNat25dqb7Lli3Tq6++Knd393LzBOD8KOoDqBPc3d21Z88erVq1SkOHDq1y//DwcB08eFDvvfdeuRfd7733niSpTZs2+v7770t9v3z5cs2bN09ubm6aPXu2Hn744RIX0Hv37tWyZcvk5+dXbh4rV65Uq1atqpx/VRw+fFhjxoxRfn6+Ro8erRkzZqhp06bW77OysrRq1Sp98cUXDjvmgAEDSsy+yc/P15QpUzRz5kzNmDFDd9xxh6Kiohx2vK1bt5b4bLFY9M0332j27NlKTEzUhAkTdPToUc2YMaPKsS8/FwAAALgexheV5+rji+DgYJ05c0bLli3Tyy+/LDe30otiXOlvWV77q666SqdOndLSpUv13HPPXbFfcfwNGzaof//+pb7//vvvtXPnzkrnAcC4WH4HQJ1w3333SZKmTZsmi8VS5f4hISG6+eab9fnnn+vgwYOlvj9z5ow++eQThYWFlft45LvvvitJGj16tB577LFSM2Lat2+vF154QU899VSV83OkDz74QHl5eWrTpo3+8Y9/lLjglqSgoCBNmDBBS5YsqbYcvLy89Oqrr6pz587WnKqTyWTS9ddfr3feeUeLFy+WJL388svatGlTtR4XAAAAzonxReW5+vjC19dXgwcP1rFjx7Rx48ZS31ssFi1btkz169fX3XfffcV4e/fu1X//+1/5+vrq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sFw4L128WHMH9PSUyce35o4HAAAAwDAYf9RtFPUBAADsZLlwXpe2pMpy7myNHdNUr77cbu5XpQvrUaNG6dSpU/roo49KfdeqVSsdOXKk1P4ZM2Zo8uTJOnz4sMLCwtSkSRP9+OOPatiwobVN586dddddd2nq1KmSpJ9++klTpkzR5s2b9euvvyogIEARERF67bXXdN111+nw4cN6/vnn9Z///EdZWVkKDg7WyJEjNWXKFHl5eVX5twAAAADqEsYfjD8o6gMAANjr4sWiC2oPT8mzBi4KL+YXHe/iRcmBs2WmT5+ucePGldj3+4tnSTpz5oxmzpypadOmlRkjPz9f/fr1U9u2bZWcnKxmzZrp559/VkpKik6fPi1J2r9/vy5duqRFixbp2muv1bfffqtx48bp7NmzmjlzpsPOBwAAAHBJjD+s6ur4g6I+AACAo3h6yeTtXe2HsUhSgeMftW3YsKGCgoIqbPPoo49q1qxZmjBhgpo2bVrq+7179+qnn37Sf/7zH4WGhkqSQkND1bNnT2ubP/7xj/rjH/9o/XzNNdfo+++/14IFC5z2ohoAAACocYw/6uz4gxflAgAAoNLuu+8+XXvttZo+fXqZ3zdp0kRubm768MMPVVhYWOm4p0+fVqNGjRyVJgAAAAAXwPijbBT1AQAAIEn629/+pgYNGpTYNm3aVKKNyWTSyy+/rMWLF+vHH38sFaN58+aaO3eunn32WV199dX6wx/+oOeff14//fRTucf98ccf9cYbbyg2NtbRpwQAAADAoBh/2I6iPgAAACRJf/3rX5Wenl5i69atW6l2/fv3V69evfTMM8+UGWfChAnKysrS0qVLFRUVpZUrV6pDhw5KTU0t1fb48eP64x//qHvuuUdjx451+DkBAAAAMCbGH7ajqA8AAABJUkBAgK699toSm69v2S/Cevnll5WUlKTdu3eX+X3Dhg1155136sUXX9SePXvUu3dvvfDCCyXaHD9+XLfddpuioqK0ePFih58PAAAAAONi/GE7ivoAAACosq5du2rw4MGaPHnyFduaTCa1bdtWZ8+ete47duyYbr31Vt14441655135ObGZSkAAACAsjH+KMmjthMAAABAzTl9+rTS09NL7Ct+QdSZM2eUlZVV4rt69erJz8+vzFgvvviiOnToIA+P/11Spqen67nnnlNMTIzat28vLy8v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PvlEkZGRevXVV9W8eXNdd911evLJJ2v00WGgqmbNmqUxY8Zo7NixateunRISEtSyZUstWLCgzPZdunTRfffdpw4dOqhVq1YaOXKk+vfvr7S0tBrOHAAAoHYw/qheFPUBAADqgIMHD8pisaht27aVaj969GglJibKYrHoww8/VOvWrdW5c+cqHbOgoECJiYn65ptv1KdPH0nSTz/9pK1bt+rbb7/V6tWrlZCQoA8//FATJkyo6ikBNSI/P1+7du1SdHR0if3R0dHavn17pWLs3r1b27dv1y233FJum7y8POXk5JTYAAAAnBXjj+pFUR8AAKAOsFgskiSTyVSp9n/605+Um5urLVu26O23367SLJm//e1vatCggXx9fTVhwgT99a9/tb6o6tKlSzKZTHr//ffVtWtXDRw4ULNmzVJiYqLTz5aBazKbzSosLFRgYGCJ/YGBgcrKyqqwb4sWLeTt7a3IyEhNmDBBY8eOLbftjBkz5O/vb92KHz0HAABwRow/qhdFfQAAgDogPDxcJpNJ+/btq1R7Dw8PxcTE6LnnntMXX3yhESNGVPpYf/3rX5Wenq4jR44oNzdXr776qtzcii47mzVrpubNm8vf39/avl27drJYLPr555+rdlJADbp8QGqxWK44SE1LS9POnTu1cOFCJSQkaPny5eW2jY+P1+nTp63b0aNHHZI3AABAbWD8Ub0o6gMAANQBjRo1Uv/+/TVv3jydPXu21PenTp0qtW/06NHavHmzBg0apKuvvrrSxwoICNC1116r4ODgUkXPnj176vjx48rNzbXu++GHH+Tm5qYWLVpU/oSAGhIQECB3d/dSs/Kzs7NLzd6/XFhYmDp16qRx48Zp0qRJmjp1arltvb295efnV2IDAABwVow/qhdFfQAAgDpi/vz5KiwsVNeuXbVq1SodOHBA+/bt09y5cxUVFVWqfbt27WQ2m/XOO+84LIf7779fjRs31p///Gft3btXW7Zs0V//+leNHj1avr6+DjsO4CheXl6KiIhQampqif2pqanq0aNHpeNYLBbl5eU5Oj0AAADDYvxRfTxqOwEAAABXYTabDX2csLAw/fe//9WLL76oJ554QpmZmWrSpIkiIiK0YMGCMvs0btzYnlRLadCggVJTU/Xoo48qMjJSjRs31rBhw/TCCy849DiAI8XFxSkmJkaRkZGKiorS4sWL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IMYUleOqYwpbf//t27dLkm655ZZKHefmm2+WpArfA9CmTRvdf//9ys/PZ7Y+4OIo6gOo0zw8PPTMM89IkqZPn27TxW/xrJnfL7vy/vvv69KlSxXOqJGkv/3tb4qIiJDFYtHChQvVtWtX+fn5qVevXpo8ebJ27tx5xeOHhYXJZDKVuTnqEdy+ffvqoYcekiT9+9//1sCBA+Xv768bbrhBsbGx+vTTT6t94JCfn6+nnnpK6enpkqRhw4ZV6/EqcvjwYW3dulUmk0n33nuvdT9L8AAAANQ9jCkqx1XHFLb+/seOHZMktW7dulLHKW53pfXyi2frJyYm6tChQ1U4EwDOhKI+gDovJiZG4eHh+v7778t85PVKBgwYoICAAK1YscL6GOnSpUvl4eFRouBbloYNG2rr1q16/fXX1a5dO0nSuXPntG3bNr3yyiu66aabdNddd+nUqVPlxoiMjFTPnj3L3Lp06VLl8ynPokWLtGrVKt1yyy1yd3dXQUGBvv76ay1atEh33HGHbrjhBn3zzTcOO97atWvVq1cv9erVS5GRkQoICNDMmTMlSZMmTbKug1kbli5dKovFot69e6tly5bW/cOGDZOnp6f27Nnj0N8CAAAAxsaYonJccUxh6+9/5swZSVL9+vUrdZzidsX9ynPttdcqJiZGFy9e1PPPP1/FswHgLCjqA6jz3N3drTNrnn/+eRUUFFSpv6enp4YNG6aTJ08qJSVF6enp+vbbb9W/f381adLkiv19fHwUFxenvXv36tixY0pOTtakSZMUFhYmSfr44481ePDgcvuvXLlSW7duLXN75513qnQuVzJ48GBt2rRJv/76q1JTU/X888+ra9eukqTvvvtOffv21YkTJxxyrOzsbG3btk3btm1Tenq6fHx8NGDAAK1evVqzZs1yyDFsVby2afHM/GIBAQGKjo6WxGx9AACAuoQxReW54pjClt+/YcOGkqSzZ89W6hjF7Yr7VeTZZ5+Vh4eH3nvvPf34449VORUAToKiPgCoqDjbpk0bHTx40KZibExMjKSiYm9xwbd4X1UEBwfr7rvv1qxZs/TDDz/oiSeekCRt3LjRuu6jEfj5+alv3756+umn9cUXX2jlypVyc3NTdna2Fi9e7JBjPPjgg7JYLLJYLCooKFB2drZSUlJ01113OSS+rb788kt9//338vT01D333FPq++I1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j1d+fr4mT55s25+fn69JkyY1eUxCQoLefvttu307duzQqFGj1KFDhyaPCQkJUUhIiN2+rl27Opc8AAAAvEpERER7pwA3cldtkZCQoPz8fC1dutRuzNixY5vNhfoDAAAALa0/vO5FuZKUlpam5557Tps2bdL+/fu1dOlSlZWVKSUlRVLDLJdZs2bZxqekpOibb75RWlqa9u/fr02bNun555/Xvffe216XAAAAAMADuKO2uPvuu7Vjxw499dRTOnDggJ566int3LlTS5YsaevLAwAAgA/yupn6kjR9+nQdP35cq1atktls1rBhw7Rt2zbFxsZKanhBQllZmW183759tW3bNi1dulTr169XVFSU1q1bp1tvvbW9LgEAAACAB3BHbTF27Fi98sorevDBB/XQQw+pX79+ys3N1ejRo9v8+gAAAOB7DFZrS16nCwAAAAAAAAAA2ptXLr8DAAAAAAAAAIA/oqkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICXoKkPAAAAAAAAAICX+P8uZR6NkLFSrAAAAABJRU5ErkJggg==", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "fig = plt.figure(figsize=(16, 16))\n", "\n", From 8bc645c4dd22dad5a35e87875ed12a00d2853354 Mon Sep 17 00:00:00 2001 From: Teagan King Date: Mon, 5 Aug 2024 13:12:38 -0600 Subject: [PATCH 4/7] with precommit fixes... --- examples/nblibrary/atm/nmse_PSL.ipynb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/nblibrary/atm/nmse_PSL.ipynb b/examples/nblibrary/atm/nmse_PSL.ipynb index 2c4ac16..625e0b3 100644 --- a/examples/nblibrary/atm/nmse_PSL.ipynb +++ b/examples/nblibrary/atm/nmse_PSL.ipynb @@ -235,7 +235,7 @@ }, "outputs": [], "source": [ - "print('moving on to compute the nmse')\n", + "print(\"moving on to compute the nmse\")\n", "nmse_dat = []\n", "nmse_cesm2 = []\n", "nmse_cmip6 = []\n", From 2f01853682f7bda934adea233bce636b6d54e7b8 Mon Sep 17 00:00:00 2001 From: Teagan King Date: Mon, 5 Aug 2024 13:20:44 -0600 Subject: [PATCH 5/7] remove lines that overwrite parameters --- examples/nblibrary/atm/nmse_PSL.ipynb | 15 --------------- 1 file changed, 15 deletions(-) diff --git a/examples/nblibrary/atm/nmse_PSL.ipynb b/examples/nblibrary/atm/nmse_PSL.ipynb index 625e0b3..9c4c407 100644 --- a/examples/nblibrary/atm/nmse_PSL.ipynb +++ b/examples/nblibrary/atm/nmse_PSL.ipynb @@ -153,17 +153,6 @@ "### Read in the current case" ] }, - { - "cell_type": "code", - "execution_count": null, - "id": "5a36af8c-c8c0-42df-b162-07c6c244ab0a", - "metadata": {}, - "outputs": [], - "source": [ - "CESM_output_dir = \"/glade/campaign/cesm/development/cross-wg/diagnostic_framework/CESM_output_for_testing/\"\n", - "case_name = \"b.e23_alpha17f.BLT1850.ne30_t232.092\"" - ] - }, { "cell_type": "code", "execution_count": null, @@ -187,10 +176,6 @@ }, "outputs": [], "source": [ - "# Need to change file paths here to be read in using the parameters thing\n", - "dat = xr.open_mfdataset(\n", - " CESM_output_dir + \"/\" + case_name + \"/atm/proc/tseries/*.PSL*.nc\"\n", - ")\n", "dat = dat.sel(time=slice(start_date, end_date))\n", "\n", "dat = dat.PSL / 100.0\n", From 98fd753f53aa162ac5cc94e7dd358b808d39ce1e Mon Sep 17 00:00:00 2001 From: Teagan King Date: Tue, 6 Aug 2024 20:56:53 -0600 Subject: [PATCH 6/7] working version of nmse metric --- examples/nblibrary/atm/nmse_PSL.ipynb | 29 +++++++++++++++++---------- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/examples/nblibrary/atm/nmse_PSL.ipynb b/examples/nblibrary/atm/nmse_PSL.ipynb index 9c4c407..294088d 100644 --- a/examples/nblibrary/atm/nmse_PSL.ipynb +++ b/examples/nblibrary/atm/nmse_PSL.ipynb @@ -82,7 +82,7 @@ "outputs": [], "source": [ "dat = xr.open_mfdataset(\n", - " CESM_output_dir + \"/\" + case_name + \"/atm/proc/tseries/*.PSL*.nc\"\n", + " CESM_output_dir + \"/\" + case_name + \"/atm/proc/tseries/regrid/*PSL*.nc\"\n", ")" ] }, @@ -114,24 +114,22 @@ "outputs": [], "source": [ "# This will need to be changed if we have a common repo\n", - "validpath = \"/glade/campaign/cgd/cas/islas/python_savs/CUPID/PSL_validation/\"\n", - "validpath_old = (\n", + "validation_path = (\n", " \"/glade/campaign/cgd/cas/islas/python_savs/CUPID/NMSE/validation_data_example/\"\n", ")\n", "\n", "# ---ERA5\n", - "era5 = xr.open_dataset(validpath_old + \"PSL_ERA5.nc\")\n", - "# era5 = xr.open_dataset(\"/glade/campaign/cgd/cas/islas/python_savs/CUPID/NMSE/validation_data_example/PSL_ERA5.nc\")\n", + "era5 = xr.open_dataset(validation_path + \"PSL_ERA5.nc\")\n", "era5 = era5 / 100.0 # convert to hPa\n", "\n", "# ---CESM2\n", - "lens2 = xr.open_dataset(validpath_old + \"PSL_LENS2.nc\")\n", + "lens2 = xr.open_dataset(validation_path + \"PSL_LENS2.nc\")\n", "lens2 = lens2 / 100.0 # convert to hPa\n", "lens2[\"lon\"] = era5.lon\n", "lens2[\"lat\"] = era5.lat\n", "\n", "# ---CMIP6\n", - "modelfiles = sorted(glob.glob(validpath_old + \"CMIP6/*.nc\"))\n", + "modelfiles = sorted(glob.glob(validation_path + \"CMIP6/*.nc\"))\n", "datcmip6 = [xr.open_dataset(ifile).mean(\"M\") for ifile in modelfiles]\n", "datcmip6 = xr.concat(datcmip6, dim=\"model\")\n", "datcmip6 = datcmip6 / 100.0\n", @@ -177,9 +175,19 @@ "outputs": [], "source": [ "dat = dat.sel(time=slice(start_date, end_date))\n", - "\n", - "dat = dat.PSL / 100.0\n", - "dat = dat.expand_dims(lon=era5.lon, lat=era5.lat)" + "dat = dat.PSL / 100.0" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "b11ed849-c8b2-4079-bde0-598f60ab4463", + "metadata": {}, + "outputs": [], + "source": [ + "# this requires the same grid\n", + "dat[\"lon\"] = era5.lon\n", + "dat[\"lat\"] = era5.lat" ] }, { @@ -220,7 +228,6 @@ }, "outputs": [], "source": [ - "print(\"moving on to compute the nmse\")\n", "nmse_dat = []\n", "nmse_cesm2 = []\n", "nmse_cmip6 = []\n", From a38b0b022048e4d7b78d36d522378b0df028cfd1 Mon Sep 17 00:00:00 2001 From: Michael Levy Date: Wed, 7 Aug 2024 14:53:14 -0600 Subject: [PATCH 7/7] Refactor nmse_PSL to work with CESM2 f19 output 1. To work with CESM2 output, needed to include a fix_time_dim() function that sets time to the averaging midpoint rather than the endpoint. 2. Output that has been been regridded in post-processing is in proc/tseries/ rather than proc/tseries/regrid/, so user needs to control that from config.yml 3. Runs on the fv1.9x2.5 grid need to compare against coarser observational data (so the location of validation data is set in config.yml) --- examples/key_metrics/config.yml | 4 +- examples/nblibrary/atm/nmse_PSL.ipynb | 201 +++++++++--------- examples/nblibrary/atm/nmse_utils.py | 4 - .../nblibrary/glc/LIWG_SMB_diagnostic.ipynb | 20 +- 4 files changed, 118 insertions(+), 111 deletions(-) diff --git a/examples/key_metrics/config.yml b/examples/key_metrics/config.yml index e350c53..0bd44e2 100644 --- a/examples/key_metrics/config.yml +++ b/examples/key_metrics/config.yml @@ -99,7 +99,7 @@ compute_notebooks: # parameters are specified. Several examples of different # types of notebooks are provided. - # The first key (here simple_no_params_nb) is the name of the + # The first key (here infrastructure) is the name of the # notebook from nb_path_root, minus the .ipynb infrastructure: @@ -111,6 +111,8 @@ compute_notebooks: nmse_PSL: parameter_groups: none: + regridded_output: True + validation_path: '/glade/campaign/cesm/development/cross-wg/diagnostic_framework/nmse_validation/fv0.9x1.25' start_date: '0001-01-01' end_date: '0101-01-01' diff --git a/examples/nblibrary/atm/nmse_PSL.ipynb b/examples/nblibrary/atm/nmse_PSL.ipynb index 294088d..93d14c2 100644 --- a/examples/nblibrary/atm/nmse_PSL.ipynb +++ b/examples/nblibrary/atm/nmse_PSL.ipynb @@ -1,5 +1,22 @@ { "cells": [ + { + "cell_type": "markdown", + "id": "3f230d52-dca7-4ce4-98cc-6267fc04893d", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, + "source": [ + "# Normalized Mean Square Error\n", + "\n", + "This notebook computes the normalized mean square error of atmospheric surface pressure.\n", + "It is compared to ERA5 observations, as well as the CESM2 large ensemble and CMIP6 model output." + ] + }, { "cell_type": "code", "execution_count": null, @@ -13,16 +30,14 @@ }, "outputs": [], "source": [ - "import xarray as xr\n", - "import numpy as np\n", - "import matplotlib.pyplot as plt\n", - "from nmse_utils import *\n", - "from averaging_utils import *\n", "import glob\n", "\n", - "import warnings\n", + "import matplotlib.pyplot as plt\n", + "import numpy as np\n", + "import xarray as xr\n", "\n", - "warnings.filterwarnings(\"ignore\")" + "from nmse_utils import nmse\n", + "from averaging_utils import seasonal_climatology_weighted" ] }, { @@ -36,7 +51,9 @@ "tags": [] }, "source": [ - "### Parameters" + "## Parameters\n", + "\n", + "These variables are set in `config.yml`" ] }, { @@ -54,41 +71,17 @@ }, "outputs": [], "source": [ - "sname = \"\"\n", "CESM_output_dir = \"\"\n", "case_name = \"\"\n", "start_date = \"\"\n", - "end_date = \"\"" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "14b554f3-40e1-4c12-9f26-c1684ac03fbf", - "metadata": {}, - "outputs": [], - "source": [ - "print(start_date)\n", - "print(end_date)\n", - "print(CESM_output_dir)\n", - "print(case_name)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "80edad94-426a-4304-9003-78e12960613a", - "metadata": {}, - "outputs": [], - "source": [ - "dat = xr.open_mfdataset(\n", - " CESM_output_dir + \"/\" + case_name + \"/atm/proc/tseries/regrid/*PSL*.nc\"\n", - ")" + "end_date = \"\"\n", + "validation_path = \"\"\n", + "regridded_output = False" ] }, { "cell_type": "markdown", - "id": "e0527e3e-cd26-46b5-8c1e-08882109e12e", + "id": "74c7803f-a8c5-445d-9233-0aa2663c58bd", "metadata": { "editable": true, "slideshow": { @@ -97,13 +90,13 @@ "tags": [] }, "source": [ - "### Read in validation data and other CMIP models for comparison (precomputed)" + "## Read in the current case" ] }, { "cell_type": "code", "execution_count": null, - "id": "126e65b3-2b8c-400c-af02-2ad0b0f82e6e", + "id": "ccca8e3a-a52f-4202-9704-9d4470eda984", "metadata": { "editable": true, "slideshow": { @@ -113,33 +106,37 @@ }, "outputs": [], "source": [ - "# This will need to be changed if we have a common repo\n", - "validation_path = (\n", - " \"/glade/campaign/cgd/cas/islas/python_savs/CUPID/NMSE/validation_data_example/\"\n", - ")\n", + "def fix_time_dim(dat):\n", + " \"\"\"CESM2 output sets time as the end of the averaging interval (e.g. January average is midnight on February 1st);\n", + " This function sets the time dimension to the midpoint of the averaging interval.\n", + " Note that CESM3 output sets time to the midpoint already, so this function should not change CESM3 data.\"\"\"\n", + " if \"time\" not in dat.dims:\n", + " return dat\n", + " if \"bounds\" not in dat.time.attrs:\n", + " return dat\n", + " time_bounds_avg = dat[dat.time.attrs[\"bounds\"]].mean(\"nbnd\")\n", + " time_bounds_avg.attrs = dat.time.attrs\n", + " dat = dat.assign_coords({\"time\": time_bounds_avg})\n", + " return xr.decode_cf(dat)\n", "\n", - "# ---ERA5\n", - "era5 = xr.open_dataset(validation_path + \"PSL_ERA5.nc\")\n", - "era5 = era5 / 100.0 # convert to hPa\n", "\n", - "# ---CESM2\n", - "lens2 = xr.open_dataset(validation_path + \"PSL_LENS2.nc\")\n", - "lens2 = lens2 / 100.0 # convert to hPa\n", - "lens2[\"lon\"] = era5.lon\n", - "lens2[\"lat\"] = era5.lat\n", + "if regridded_output:\n", + " file_path = f\"{CESM_output_dir}/{case_name}/atm/proc/tseries/regrid\"\n", + "else:\n", + " file_path = f\"{CESM_output_dir}/{case_name}/atm/proc/tseries\"\n", "\n", - "# ---CMIP6\n", - "modelfiles = sorted(glob.glob(validation_path + \"CMIP6/*.nc\"))\n", - "datcmip6 = [xr.open_dataset(ifile).mean(\"M\") for ifile in modelfiles]\n", - "datcmip6 = xr.concat(datcmip6, dim=\"model\")\n", - "datcmip6 = datcmip6 / 100.0\n", - "datcmip6[\"lon\"] = era5.lon\n", - "datcmip6[\"lat\"] = era5.lat" + "dat = (\n", + " fix_time_dim(xr.open_mfdataset(f\"{file_path}/*PSL*.nc\", decode_times=False))\n", + " .sel(time=slice(start_date, end_date))\n", + " .PSL\n", + " / 100.0\n", + ")" ] }, { - "cell_type": "markdown", - "id": "ab5f1441-4b6b-4386-b3aa-a0f6fa9109b8", + "cell_type": "code", + "execution_count": null, + "id": "073a2ad0-81e6-4817-9024-4b9b718fabb4", "metadata": { "editable": true, "slideshow": { @@ -147,24 +144,15 @@ }, "tags": [] }, - "source": [ - "### Read in the current case" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2b4883ef-f3a7-458b-b96e-bdb79d5abdd6", - "metadata": {}, "outputs": [], "source": [ - "dat" + "# --Compute seasonal and annual means\n", + "dat = seasonal_climatology_weighted(dat).load()" ] }, { - "cell_type": "code", - "execution_count": null, - "id": "09397e30-62b9-474b-a47c-4a1174137bce", + "cell_type": "markdown", + "id": "e0527e3e-cd26-46b5-8c1e-08882109e12e", "metadata": { "editable": true, "slideshow": { @@ -172,33 +160,62 @@ }, "tags": [] }, - "outputs": [], "source": [ - "dat = dat.sel(time=slice(start_date, end_date))\n", - "dat = dat.PSL / 100.0" + "## Read in validation data and other CMIP models for comparison (precomputed)" ] }, { "cell_type": "code", "execution_count": null, - "id": "b11ed849-c8b2-4079-bde0-598f60ab4463", - "metadata": {}, + "id": "1ff152b1-2168-4a0d-826b-cf8d11f66ab7", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, "outputs": [], "source": [ - "# this requires the same grid\n", - "dat[\"lon\"] = era5.lon\n", - "dat[\"lat\"] = era5.lat" + "# Ensure all validation datasets have the same coordinates as the ERA5 data\n", + "# (Avoid round-off level differences since all data should be on the same grid)\n", + "lon = dat.lon.data\n", + "lat = dat.lat.data" ] }, { "cell_type": "code", "execution_count": null, - "id": "073a2ad0-81e6-4817-9024-4b9b718fabb4", - "metadata": {}, + "id": "126e65b3-2b8c-400c-af02-2ad0b0f82e6e", + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, "outputs": [], "source": [ - "# --Compute seasonal and annual means\n", - "dat = seasonal_climatology_weighted(dat).load()" + "# ---ERA5\n", + "era5 = xr.open_dataset(f\"{validation_path}/PSL_ERA5.nc\").assign_coords(\n", + " {\"lon\": lon, \"lat\": lat}\n", + ")\n", + "era5 = era5 / 100.0 # convert to hPa\n", + "\n", + "# ---CESM2\n", + "lens2 = xr.open_dataset(f\"{validation_path}/PSL_LENS2.nc\").assign_coords(\n", + " {\"lon\": lon, \"lat\": lat}\n", + ")\n", + "lens2 = lens2 / 100.0 # convert to hPa\n", + "\n", + "# ---CMIP6\n", + "modelfiles = sorted(glob.glob(f\"{validation_path}/CMIP6/*.nc\"))\n", + "datcmip6 = [\n", + " xr.open_dataset(ifile).assign_coords({\"lon\": lon, \"lat\": lat}).mean(\"M\")\n", + " for ifile in modelfiles\n", + "]\n", + "datcmip6 = xr.concat(datcmip6, dim=\"model\")\n", + "datcmip6 = datcmip6 / 100.0" ] }, { @@ -212,7 +229,7 @@ "tags": [] }, "source": [ - "### Compute the NMSE" + "## Compute the NMSE" ] }, { @@ -400,20 +417,6 @@ " fontsize=14,\n", ")" ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "d01c7860-b4ca-4ab4-a05f-3d0f248a56c2", - "metadata": { - "editable": true, - "slideshow": { - "slide_type": "" - }, - "tags": [] - }, - "outputs": [], - "source": [] } ], "metadata": { diff --git a/examples/nblibrary/atm/nmse_utils.py b/examples/nblibrary/atm/nmse_utils.py index 46f9da1..efd1ec2 100644 --- a/examples/nblibrary/atm/nmse_utils.py +++ b/examples/nblibrary/atm/nmse_utils.py @@ -11,10 +11,6 @@ def nmse(obs, mod): from that """ - # make sure the model and obs have the same lons and lats - mod["lon"] = obs.lon - mod["lat"] = obs.lat - # get the weights and weight by zero if the model or obs is nan w = np.cos(np.deg2rad(obs.lat)) w = w.expand_dims({"lon": obs.lon}, axis=1) diff --git a/examples/nblibrary/glc/LIWG_SMB_diagnostic.ipynb b/examples/nblibrary/glc/LIWG_SMB_diagnostic.ipynb index 64a356c..fc23c64 100644 --- a/examples/nblibrary/glc/LIWG_SMB_diagnostic.ipynb +++ b/examples/nblibrary/glc/LIWG_SMB_diagnostic.ipynb @@ -3,7 +3,13 @@ { "cell_type": "markdown", "id": "e45c723f-aa6f-4db4-a197-492132cc8156", - "metadata": {}, + "metadata": { + "editable": true, + "slideshow": { + "slide_type": "" + }, + "tags": [] + }, "source": [ "# Land ice SMB model comparison\n", "This notebook compares the downscaled output of surface mass balance (SMB) over the Greenland ice sheet (GrIS) to the regional model MAR. In what follows, we interchangeably call the MAR data \"observation\".\n", @@ -62,17 +68,17 @@ "source": [ "# Parameter Defaults\n", "\n", - "CESM_output_dir = \"/glade/campaign/cesm/development/cross-wg/diagnostic_framework/CESM_output_for_testing\"\n", - "case_name = \"b.e23_alpha17f.BLT1850.ne30_t232.092\" # case name\n", - "climo_nyears = 40 # number of years to compute the climatology\n", - "last_year = 101\n", + "CESM_output_dir = \"\"\n", + "case_name = \"\" # case name\n", + "climo_nyears = 0 # number of years to compute the climatology\n", + "last_year = 0\n", "\n", "base_case_output_dir = CESM_output_dir\n", "base_case_name = None\n", "base_last_year = last_year\n", "\n", - "obs_path = \"/glade/u/home/gunterl/obs_diagnostic_cesm\" # path to observed dataset\n", - "obs_name = \"GrIS_MARv3.12_climo_1960_1999.nc\"" + "obs_path = \"\" # directory containing observed dataset\n", + "obs_name = \"\" # file name for observed dataset" ] }, {