{ "cells": [ { "cell_type": "markdown", "id": "e6861fa5-2163-41a9-a664-23da0e6b712d", "metadata": {}, "source": [ "# Time Series Extraction" ] }, { "cell_type": "code", "execution_count": 1, "id": "cb0a84e6-57e8-4307-965f-64e87ecfa671", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import xarray as xr\n", "import cf_xarray\n", "import extract_model as em\n", "import pandas as pd\n", "from glob import glob\n", "import matplotlib.pyplot as plt\n", "import cmocean.cm as cmo\n", "\n", "# For this notebook, it's nicer if we don't show the array values by default\n", "xr.set_options(display_expand_data=False)\n", "xr.set_options(display_expand_coords=False)\n", "xr.set_options(display_expand_attrs=False)\n" ] }, { "cell_type": "markdown", "id": "4a75fbd7-4ad1-4289-9c8d-cb3edc5b3d95", "metadata": {}, "source": [ "## Example model to use" ] }, { "cell_type": "code", "execution_count": 2, "id": "81808f63-ec8c-4439-96fd-bfbf19a89647", "metadata": { "tags": [] }, "outputs": [], "source": [ "# !wget https://www.ncei.noaa.gov/thredds/fileServer/model-ciofs-files/2022/03/nos.ciofs.fields.n001.20220301.t12z.nc\n", "# !wget https://www.ncei.noaa.gov/thredds/fileServer/model-ciofs-files/2022/03/nos.ciofs.fields.n001.20220301.t18z.nc" ] }, { "cell_type": "code", "execution_count": 3, "id": "1614df4c-2ce9-4377-9e09-3ffcecde0b38", "metadata": { "tags": [] }, "outputs": [], "source": [ "# Structured: CIOFS: ROMS Cook Inlet model\n", "# get some model output locally\n", "# loc1 = glob('nos.ciofs.*.nc')\n", "# ds1 = xr.open_mfdataset([loc1], drop_variables=\"ocean_time\", preprocess=em.preprocess).sel(time=slice(\"2022-03-01T07\", \"2022-03-01T08\"))\n", "loc1 = \"https://www.ncei.noaa.gov/thredds/dodsC/model-ciofs-agg/Aggregated_CIOFS_Fields_Forecast_best.ncd\"\n", "ds1 = xr.open_dataset(loc1, drop_variables=\"ocean_time\")\n", "ds1 = em.preprocess(ds1, kwargs={\"interp_vertical\": False})\n", "ds1 = ds1.sel(time=slice(\"2022-03-01T07\", \"2022-03-01T08\"))\n", "ds1\n", "\n", "# # Unstructured: CREOFS: SELFE Columbia River model\n", "# today = pd.Timestamp.today()\n", "# loc2 = [today.strftime('https://opendap.co-ops.nos.noaa.gov/thredds/dodsC/NOAA/CREOFS/MODELS/%Y/%m/%d/nos.creofs.fields.n000.%Y%m%d.t03z.nc'),\n", "# today.strftime('https://opendap.co-ops.nos.noaa.gov/thredds/dodsC/NOAA/CREOFS/MODELS/%Y/%m/%d/nos.creofs.fields.n001.%Y%m%d.t03z.nc')]\n" ] }, { "cell_type": "markdown", "id": "d4f12f55-b93b-43bb-af3a-20571920f6c5", "metadata": {}, "source": [ "## Demo code" ] }, { "cell_type": "markdown", "id": "c8e70df6-9f5b-492a-afd4-745c429c4b21", "metadata": {}, "source": [ "### Select time series from nearest point" ] }, { "cell_type": "markdown", "id": "d658b229-17b4-4ce5-b206-7bbc0dae5c05", "metadata": {}, "source": [ "Use a DataArray or a Dataset, but keep in mind that when there are multiple horizontal grids (like there are for ROMS models), you will need to specify which grid's longitude and latitude coordinates to use. The API is meant to be analogous to that of selecting with `xarray` using `.sel()`.\n", "\n", "This functionality uses [`xoak`](https://xoak.readthedocs.io/en/latest/)." ] }, { "cell_type": "code", "execution_count": 5, "id": "809310c6-5b02-4cfb-8ed0-7ba146f77b35", "metadata": {}, "outputs": [], "source": [ "da1 = ds1['temp']\n", "lon0, lat0 = -151.4, 59 # cook inlet" ] }, { "cell_type": "markdown", "id": "b6ba0d43-ff0e-487a-ae15-a297bc7875ea", "metadata": {}, "source": [ "For any of the following results, access the depth values with\n", "\n", "```\n", "[output].cf['vertical'].values\n", "```" ] }, { "cell_type": "markdown", "id": "2c28a2c8-9016-488f-8546-5d14cfe3b967", "metadata": {}, "source": [ "#### 2D lon/lat" ] }, { "cell_type": "markdown", "id": "4ae8af03-dc46-4c29-bb91-d51c02f48fa1", "metadata": {}, "source": [ "The first request will take longer than a second request would because the second request uses the index calculated the first time." ] }, { "cell_type": "code", "execution_count": 6, "id": "5bac3373-4ccc-4f8e-851c-ee4895d04bd7", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 608 ms, sys: 15.1 ms, total: 623 ms\n", "Wall time: 624 ms\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'temp' (time: 2, s_rho: 30)>\n",
       "...\n",
       "Coordinates: (7)\n",
       "Attributes: (9)
" ], "text/plain": [ "\n", "...\n", "Coordinates: (7)\n", "Attributes: (9)" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%time\n", "output = da1.em.sel2d(lon_rho=lon0, lat_rho=lat0).squeeze()\n", "output" ] }, { "cell_type": "code", "execution_count": 7, "id": "8809abb1-8c27-4370-b4cb-f96e93b59cc1", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 4.02 ms, sys: 1.92 ms, total: 5.95 ms\n", "Wall time: 4.24 ms\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'temp' (time: 2, s_rho: 30)>\n",
       "...\n",
       "Coordinates: (7)\n",
       "Attributes: (9)
" ], "text/plain": [ "\n", "...\n", "Coordinates: (7)\n", "Attributes: (9)" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%time\n", "output = da1.em.sel2d(lon_rho=lon0, lat_rho=lat0).squeeze()\n", "output" ] }, { "cell_type": "markdown", "id": "53c1732d-586f-4792-887b-4ce63776f443", "metadata": {}, "source": [ "Access the associated indices:" ] }, { "cell_type": "code", "execution_count": 8, "id": "6976b013-5c5f-4e4b-bbf0-02ae18c87163", "metadata": {}, "outputs": [], "source": [ "j, i = int(output.eta_rho.values), int(output.xi_rho.values)" ] }, { "cell_type": "markdown", "id": "49e9c872-374b-4fc9-8064-7a09727756ad", "metadata": {}, "source": [ "Profile for first time matches:" ] }, { "cell_type": "code", "execution_count": 9, "id": "7ba2ad85-0603-43a0-a744-6e651ca4dd2b", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[]" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "output.cf.isel(T=0).cf.plot(y='vertical', lw=4)\n", "da1.cf.isel(X=i, Y=j, T=0).cf.plot(y='vertical', lw=2)" ] }, { "cell_type": "markdown", "id": "66efa661-4109-4b13-a816-2669ce69aa6f", "metadata": {}, "source": [ "Surface value for first time matches map:" ] }, { "cell_type": "code", "execution_count": 10, "id": "cfc55fd2-ef9d-48b4-b5d4-500b7cba8e8d", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "mappable = da1.cf.isel(T=0, Z=-1).cf.plot(x='longitude', y='latitude')\n", "vmin, vmax = mappable.get_clim()\n", "plt.scatter(lon0, lat0, c=output.cf.isel(T=0, Z=-1).values, cmap=mappable.cmap, vmin=vmin, vmax=vmax, edgecolors='k')" ] }, { "cell_type": "markdown", "id": "a758d6fb-18bb-4dad-ab51-d25d2993ee2c", "metadata": {}, "source": [ "To retrieve the values:\n", "\n", "`output.values`" ] }, { "cell_type": "code", "execution_count": 11, "id": "f8a3ee03-c11b-4647-8cb0-d23477dbfc34", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[4.4214993, 4.421684 , 4.4218173, 4.421909 , 4.4219575, 4.421951 ,\n", " 4.4218597, 4.4216237, 4.421123 , 4.4200873, 4.4176564, 4.408428 ,\n", " 4.3901873, 4.371695 , 4.350696 , 4.325884 , 4.297998 , 4.270254 ,\n", " 4.248803 , 4.2355056, 4.226392 , 4.2209353, 4.218213 , 4.2172427,\n", " 4.216388 , 4.2152452, 4.213435 , 4.2106075, 4.206378 , 4.199108 ],\n", " [4.434471 , 4.4342895, 4.4340544, 4.4337626, 4.4333944, 4.4329157,\n", " 4.4322686, 4.4313636, 4.4300494, 4.428064 , 4.4249015, 4.4193425,\n", " 4.4073486, 4.377332 , 4.3381915, 4.306614 , 4.281716 , 4.261284 ,\n", " 4.2448688, 4.2351127, 4.2280526, 4.222328 , 4.2180495, 4.216049 ,\n", " 4.214684 , 4.2133946, 4.2117043, 4.209222 , 4.2054753, 4.1987357]],\n", " dtype=float32)" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "output.values" ] }, { "cell_type": "markdown", "id": "7f07edc8-02d8-4216-af8a-1a74c7aaec99", "metadata": {}, "source": [ "To retrieve the associated depths:\n", "\n", "`output.cf['vertical'].values`" ] }, { "cell_type": "code", "execution_count": 12, "id": "3c2d1497-713a-488d-9801-6375db33eeb0", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-0.98333333, -0.95 , -0.91666667, -0.88333333, -0.85 ,\n", " -0.81666667, -0.78333333, -0.75 , -0.71666667, -0.68333333,\n", " -0.65 , -0.61666667, -0.58333333, -0.55 , -0.51666667,\n", " -0.48333333, -0.45 , -0.41666667, -0.38333333, -0.35 ,\n", " -0.31666667, -0.28333333, -0.25 , -0.21666667, -0.18333333,\n", " -0.15 , -0.11666667, -0.08333333, -0.05 , -0.01666667])" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "output.cf['vertical'].values" ] }, { "cell_type": "markdown", "id": "66f93af1-ba28-4af8-8689-f011b8bd8f84", "metadata": {}, "source": [ "#### 3D lon/lat/Z or iZ" ] }, { "cell_type": "markdown", "id": "e8135735-cf34-4d8f-a371-3301ae602ac9", "metadata": {}, "source": [ "Return model output nearest to lon, lat, Z value. `z_rho` has two values because the depth changes in time." ] }, { "cell_type": "code", "execution_count": 13, "id": "4e0d6bf3-9f30-4bc3-bfb4-ed2d6009a092", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'temp' (time: 2, s_rho: 30)>\n",
       "...\n",
       "Coordinates: (7)\n",
       "Attributes: (9)
" ], "text/plain": [ "\n", "...\n", "Coordinates: (7)\n", "Attributes: (9)" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "out = da1.em.sel2d(lon_rho=lon0, lat_rho=lat0).squeeze()\n", "out" ] }, { "cell_type": "code", "execution_count": 14, "id": "00ba4bfd-9263-4378-ac45-543d5a0cdb47", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'temp' (time: 2)>\n",
       "4.421 4.434\n",
       "Coordinates: (7)\n",
       "Attributes: (9)
" ], "text/plain": [ "\n", "4.421 4.434\n", "Coordinates: (7)\n", "Attributes: (9)" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "out.em.selZ(depths=-40)" ] }, { "cell_type": "markdown", "id": "c027eea2-ba8d-4e98-9d79-2587310d9cd7", "metadata": {}, "source": [ "Return model output nearest to lon, lat, at index iZ in Z dimension." ] }, { "cell_type": "code", "execution_count": 15, "id": "f857dfdf-fc55-4fde-a60d-5ff7eda16f80", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'temp' (time: 2, loc: 1)>\n",
       "...\n",
       "Coordinates: (7)\n",
       "Dimensions without coordinates: loc\n",
       "Attributes: (9)
" ], "text/plain": [ "\n", "...\n", "Coordinates: (7)\n", "Dimensions without coordinates: loc\n", "Attributes: (9)" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "da1.em.sel2d(lon_rho=lon0, lat_rho=lat0).cf.isel(Z=-1)" ] }, { "cell_type": "markdown", "id": "b92711c5-1980-4450-90af-1c9886d96e60", "metadata": {}, "source": [ "### Interpolate time series at exact point" ] }, { "cell_type": "code", "execution_count": 16, "id": "7a2b279d-4e94-4e8e-9cae-c292186b6f23", "metadata": {}, "outputs": [], "source": [ "da1 = ds1['salt']\n", "lon0, lat0 = -152, 58\n", "lons, lats = [-151, -152], [59,58]" ] }, { "cell_type": "markdown", "id": "40ddc50d-0ee1-45ab-8b9a-7d12631133f8", "metadata": {}, "source": [ "#### 2D lon/lat" ] }, { "cell_type": "markdown", "id": "742e8b66-3971-4d4c-b553-44793d4e6990", "metadata": {}, "source": [ "1 lon/lat pair" ] }, { "cell_type": "code", "execution_count": 17, "id": "3245157f-f29d-4a62-a70f-654b0166ae1f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 8.95 s, sys: 2.08 s, total: 11 s\n", "Wall time: 30.1 s\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'salt' (time: 2, s_rho: 30)>\n",
       "32.94 32.94 32.94 32.94 32.94 32.94 ... 32.87 32.87 32.87 32.87 32.87 32.87\n",
       "Coordinates: (5)\n",
       "Attributes: (8)
" ], "text/plain": [ "\n", "32.94 32.94 32.94 32.94 32.94 32.94 ... 32.87 32.87 32.87 32.87 32.87 32.87\n", "Coordinates: (5)\n", "Attributes: (8)" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%time\n", "output = da1.em.interp2d(lon0, lat0)\n", "output" ] }, { "cell_type": "markdown", "id": "34f46e07-b56e-4c64-ab62-1286448a7341", "metadata": {}, "source": [ "Surface value for first time matches map:" ] }, { "cell_type": "code", "execution_count": 18, "id": "80c34c14-f9b9-44b1-8c98-3846af0dabb8", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 18, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "cmap=cmo.haline\n", "mappable = da1.cf.isel(T=0, Z=-1).cf.plot(x='longitude', y='latitude', cmap=cmap)\n", "vmin, vmax = mappable.get_clim()\n", "plt.scatter(lon0, lat0, c=output.cf.isel(T=0, Z=-1).values, cmap=cmap, vmin=vmin, vmax=vmax, edgecolors='k')" ] }, { "cell_type": "markdown", "id": "1d6ed194-87c3-4961-aead-65dc55ae09aa", "metadata": {}, "source": [ "To retrieve the values:\n", "\n", "`output.values`" ] }, { "cell_type": "code", "execution_count": 19, "id": "3fd21859-1b92-495d-ab27-5930ecd731ab", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[32.93971 , 32.939648, 32.939594, 32.93954 , 32.939472, 32.939392,\n", " 32.939293, 32.93917 , 32.93898 , 32.93863 , 32.937885, 32.936424,\n", " 32.933247, 32.92608 , 32.918026, 32.910328, 32.903812, 32.898037,\n", " 32.892227, 32.88485 , 32.877373, 32.875435, 32.875843, 32.87596 ,\n", " 32.875977, 32.875988, 32.875996, 32.875996, 32.87599 , 32.875977],\n", " [32.938396, 32.93832 , 32.938255, 32.93819 , 32.938118, 32.93803 ,\n", " 32.93791 , 32.93775 , 32.937523, 32.937138, 32.9364 , 32.934933,\n", " 32.931953, 32.92531 , 32.917496, 32.90954 , 32.90272 , 32.896683,\n", " 32.89059 , 32.882954, 32.8751 , 32.87288 , 32.87316 , 32.873245,\n", " 32.873253, 32.873257, 32.873257, 32.873253, 32.873245, 32.873226]],\n", " dtype=float32)" ] }, "execution_count": 19, "metadata": {}, "output_type": "execute_result" } ], "source": [ "output.values" ] }, { "cell_type": "markdown", "id": "ac2fc6b5-88a0-40e1-8b2a-fd64a9035ca9", "metadata": {}, "source": [ "To retrieve the associated depths:\n", "\n", "`output.cf['vertical'].values`" ] }, { "cell_type": "code", "execution_count": 20, "id": "a28ec8a9-5105-43b7-b93d-d6726e9fc75f", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([-0.98333333, -0.95 , -0.91666667, -0.88333333, -0.85 ,\n", " -0.81666667, -0.78333333, -0.75 , -0.71666667, -0.68333333,\n", " -0.65 , -0.61666667, -0.58333333, -0.55 , -0.51666667,\n", " -0.48333333, -0.45 , -0.41666667, -0.38333333, -0.35 ,\n", " -0.31666667, -0.28333333, -0.25 , -0.21666667, -0.18333333,\n", " -0.15 , -0.11666667, -0.08333333, -0.05 , -0.01666667])" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "output.cf['vertical'].values" ] }, { "cell_type": "markdown", "id": "8a3c52a6-c85c-43ba-8c37-d337f039b39e", "metadata": {}, "source": [ "multiple lon/lat pairs" ] }, { "cell_type": "code", "execution_count": 21, "id": "2177876c-042d-4cf4-bd0a-847a1a919a47", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "CPU times: user 8.4 s, sys: 1.72 s, total: 10.1 s\n", "Wall time: 27.6 s\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'salt' (time: 2, s_rho: 30, lat: 2, lon: 2)>\n",
       "32.49 32.05 32.95 32.94 32.49 32.05 ... 32.78 32.87 31.97 32.03 32.78 32.87\n",
       "Coordinates: (5)\n",
       "Attributes: (8)
" ], "text/plain": [ "\n", "32.49 32.05 32.95 32.94 32.49 32.05 ... 32.78 32.87 31.97 32.03 32.78 32.87\n", "Coordinates: (5)\n", "Attributes: (8)" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "%%time\n", "da1.em.interp2d(lons, lats)" ] }, { "cell_type": "markdown", "id": "6d499549-0f08-4a97-817a-9d59e6f5dc5e", "metadata": {}, "source": [ "#### 3D: lon, lat, iZ" ] }, { "cell_type": "markdown", "id": "461dcf6a-d740-4821-8e89-72e354b53f1f", "metadata": {}, "source": [ "Return model output interpolated to lon, lat, Z value." ] }, { "cell_type": "code", "execution_count": 22, "id": "aec9700a-b977-4b9a-ae35-dad961c933be", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'salt' (time: 2)>\n",
       "nan nan\n",
       "Coordinates: (5)\n",
       "Attributes: (8)
" ], "text/plain": [ "\n", "nan nan\n", "Coordinates: (5)\n", "Attributes: (8)" ] }, "execution_count": 22, "metadata": {}, "output_type": "execute_result" } ], "source": [ "da1.em.interp2d(lon0, lat0, Z=-40)" ] }, { "cell_type": "markdown", "id": "6876c933-a0c2-41ba-b8e6-929d65013adf", "metadata": {}, "source": [ "Return model output interpolated to lon, lat, at index iZ in Z dimension." ] }, { "cell_type": "code", "execution_count": 23, "id": "7c54af50-d9be-4388-8a3b-62ce8bd47958", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "
<xarray.DataArray 'salt' (time: 2)>\n",
       "32.88 32.87\n",
       "Coordinates: (5)\n",
       "Attributes: (8)
" ], "text/plain": [ "\n", "32.88 32.87\n", "Coordinates: (5)\n", "Attributes: (8)" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "da1.em.interp2d(lon0, lat0, iZ=-1)" ] }, { "cell_type": "markdown", "id": "bcfff4ee-129f-4d83-a33d-1840b7a85ed7", "metadata": {}, "source": [ "Note that it is not currently possible to interpolate in depth when there are both multiple times and locations.\n", "\n", "If uncommented, the following cell will return:\n", "> NotImplementedError: Currently it is not possible to interpolate in depth with more than 1 other (time) dimension." ] }, { "cell_type": "code", "execution_count": 24, "id": "a16099f1-5813-4fb4-823a-b33c5dd0b13c", "metadata": {}, "outputs": [], "source": [ "# da1.em.interp2d(lons, lats, Z=-40)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3.9.13 ('extract_model')", "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.9.13" }, "vscode": { "interpreter": { "hash": "8838a114cb9af02008a6426a5905618667030dfe4375f4e8b79cae9729b737db" } } }, "nbformat": 4, "nbformat_minor": 5 }