{ "cells": [ { "cell_type": "markdown", "id": "59f0eaf7", "metadata": {}, "source": [ "# Regridding\n", "\n", "PyLag includes functionality that makes it possible to interpolate input data to particle positions. With v0.6, basic support for utilising this functionality to regrid model outputs has been included via the subpackage `pylag.regrid`. We demonstrate this facility here using FVCOM model outputs for the Tamar Estuary. More details on the FVCOM domain can be found in the [FVCOM Forward Tracking tutorial](../../examples/fvcom_forward_tracking.ipynb).\n", "\n", "## The input grid\n", "\n", "PyLag reads information about the input grid from a grid metrics file, which must be created first. As in the FVCOM Forward Tracking tutorial, we need two types of file to create a FVCOM grid metrics file: 1) an example FVCOM output file, and 2) the file that lists the location of the domain’s open boundary nodes. With these two files in place, we can create the grid metrics file in the same way we did in the FVCOM Forward Tracking Tutorial. Here, we save the file into a new directory called `regridding`." ] }, { "cell_type": "code", "execution_count": 1, "id": "071634c3", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Creating FVCOM grid metrics file ./regridding/grid_metrics.nc\n", "\n", "Calculating element areas ... done\n", "Grid has 45 nodes on the open boundary\n" ] } ], "source": [ "import os\n", "import pathlib\n", "\n", "from pylag.grid_metrics import create_fvcom_grid_metrics_file\n", "\n", "# Root directory for PyLag example input files\n", "home_dir = os.environ['HOME']\n", "data_dir=f'{home_dir}/data/pylag_doc'\n", "\n", "# An example FVCOM output file\n", "fvcom_file_name = f'{data_dir}/fvcom_tamar_estuary_0001.nc'\n", "\n", "# The file listing the location of open boundary nodes\n", "obc_file_name = f'{data_dir}/fvcom_tamar_estuary_obc.dat'\n", "\n", "# Name and create the directory in which the grid metrics file will be saved\n", "regridding_dir = f'./regridding'\n", "pathlib.Path(regridding_dir).mkdir(parents=True, exist_ok=True)\n", "\n", "# The name of the output file\n", "grid_metrics_file_name = f'{regridding_dir}/grid_metrics.nc'\n", "\n", "# Generate the file\n", "create_fvcom_grid_metrics_file(fvcom_file_name, obc_file_name=obc_file_name,\n", " grid_metrics_file_name=grid_metrics_file_name)" ] }, { "cell_type": "markdown", "id": "7cfb7e7f", "metadata": {}, "source": [ "## Creating the new grid\n", "\n", "Next we import all required modules, including plotting libraries, and define a helper function for creating new lat-lon grids." ] }, { "cell_type": "code", "execution_count": 2, "id": "c5eb62cb", "metadata": {}, "outputs": [], "source": [ "# Required imports\n", "from collections import namedtuple\n", "import numpy as np\n", "import datetime\n", "from netCDF4 import Dataset\n", "import configparser\n", "from matplotlib import pyplot as plt\n", "from cftime import num2pydate\n", "import cartopy.crs as ccrs\n", "from mpl_toolkits.axes_grid1 import make_axes_locatable\n", "from cartopy.mpl.gridliner import LONGITUDE_FORMATTER, LATITUDE_FORMATTER\n", "\n", "from pylag.regrid import regridder\n", "from pylag.processing.ncview import Viewer\n", "from pylag.processing.plot import FVCOMPlotter\n", "from pylag.processing.plot import create_figure\n", "from pylag.processing.utils import get_grid_bands\n", "\n", "\n", "# Named tuple for the grid limits\n", "GridLims = namedtuple('GridLims', ('lon_min', 'lon_max', 'lat_min', 'lat_max'))\n", "\n", "\n", "def get_lons_lats(grid_lims, points_per_degree):\n", " \"\"\" Helper function for generating lat and lon grids\n", " \n", " Parameters\n", " ----------\n", " grid_lims : GridLims\n", " Named tuple giving the grid limits.\n", " \n", " points_per_degree : int\n", " The number of points per degree longitude and latitude.\n", " \n", " Returns\n", " -------\n", " lon, lat : NDArray\n", " 1D lon and lat arrays for the new grid.\n", " \"\"\"\n", " # Generate lat and lon grids \n", " n_lon = int((grid_lims.lon_max - grid_lims.lon_min) * points_per_degree)\n", " n_lat = int((grid_lims.lat_max - grid_lims.lat_min) * points_per_degree)\n", " lon = np.linspace(grid_lims.lon_min, grid_lims.lon_max, n_lon, dtype=float)\n", " lat = np.linspace(grid_lims.lat_min, grid_lims.lat_max, n_lat, dtype=float)\n", "\n", " return lon, lat" ] }, { "cell_type": "markdown", "id": "8a87f4ef", "metadata": {}, "source": [ "Next, we define the grid that we want to interpolate FVCOM data onto. We base this on the latitude and longitude limits of the original grid, and define a set number of points per degree longtitude and latitude (72 in this case). Here, we only want surface data, so we create a depth array that is equal to zero throughout." ] }, { "cell_type": "code", "execution_count": 3, "id": "ef4dc5ac", "metadata": {}, "outputs": [], "source": [ "# Set date limits for interpolating data. PyLag will use this\n", "# to confirm that data is available between these time points.\n", "datetime_start = datetime.datetime(2020,5,2,3)\n", "datetime_end = datetime.datetime(2020,5,2,18)\n", "\n", "# Generate the new grid on which to interpolate data\n", "# --------------------------------------------------\n", "\n", "# Use lon and lat lims for the (unstructured) input grid for the new grid\n", "ds = Dataset(grid_metrics_file_name, 'r')\n", "grid_lims = GridLims(ds['longitude_c'][:].min(),\n", " ds['longitude_c'][:].max(),\n", " ds['latitude_c'][:].min(),\n", " ds['latitude_c'][:].max())\n", "ds.close()\n", "del(ds)\n", "\n", "# The number of points per degree on the new grid\n", "points_per_degree = 72\n", "\n", "# Generate the grid\n", "lon, lat = get_lons_lats(grid_lims, points_per_degree)\n", "\n", "# Save grid shape\n", "n_lon = lon.shape[0]\n", "n_lat = lat.shape[0]\n", "\n", "# Save grid bands for plotting\n", "lon_edges = get_grid_bands(lon)\n", "lat_edges = get_grid_bands(lat)\n", "\n", "# Lon and lat grids (2D)\n", "lat2D, lon2D = np.meshgrid(lat, lon, indexing='ij')\n", "lon2D_flat = lon2D.flatten()\n", "lat2D_flat = lat2D.flatten()\n", "\n", "# The total number of grid points\n", "n_points = lon2D_flat.shape[0]\n", "\n", "# Depth grid (surface only)\n", "depth = np.array([0.0], dtype=float)\n", "depth_flat = np.ones(n_points, dtype=float) * depth[0]\n", "\n", "# Save grid shape\n", "n_depth = depth.shape[0]" ] }, { "cell_type": "markdown", "id": "c8e1f910", "metadata": {}, "source": [ "## Regridding the data\n", "\n", "Next we create a small config, which PyLag will use to work out where the data is and some details about its format. Following this, we instantiate the regridder. During this process, PyLag computes a set of interpolation weights, which can take some time. However, this is a one-off process." ] }, { "cell_type": "code", "execution_count": 4, "id": "60255e3c", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Computing weights ... done!\n" ] } ], "source": [ "# Create config\n", "config = configparser.ConfigParser()\n", "config.add_section('SIMULATION')\n", "config.set('SIMULATION', 'coordinate_system', 'geographic')\n", "config.add_section('OCEAN_DATA')\n", "config.set('OCEAN_DATA', 'name', 'FVCOM')\n", "config.set('OCEAN_DATA', 'data_dir', f'{data_dir}')\n", "config.set('OCEAN_DATA', 'grid_metrics_file', f'{grid_metrics_file_name}')\n", "config.set('OCEAN_DATA', 'data_file_stem', 'fvcom_tamar_estuary_0')\n", "config.set('OCEAN_DATA', 'rounding_interval', '3600')\n", "config.set('OCEAN_DATA', 'Kz_method', 'none')\n", "config.set('OCEAN_DATA', 'Ah_method', 'none')\n", "config.set('OCEAN_DATA', 'has_is_wet', 'True')\n", "\n", "# Explicitly list the environmental variables we are interested in. This\n", "# ensures the required ariables are read into memory.\n", "config.add_section('OUTPUT')\n", "config.set('OUTPUT', 'environmental_variables', 'thetao, so')\n", "\n", "# Extra options to help the config pass PyLag's internal checks\n", "config.add_section('NUMERICS')\n", "config.set('NUMERICS', 'num_method', 'test')\n", "config.set('NUMERICS', 'time_step_adv', '1')\n", "\n", "# Create the regridder. \n", "r = regridder.Regridder(config, lon2D_flat, lat2D_flat, depth_flat, datetime_start, datetime_end)" ] }, { "cell_type": "markdown", "id": "0a99215f", "metadata": {}, "source": [ "We now need to define the variables we would like to regrid. The regridder accepts a list of variables for regridding, making it possible to regrid more than one variable at a time. Here, we generate regridded data for the lateral velocity components, salinity and sea water potential temperature. We must also state the date and time we would like to interpolate data to. As long as this is covered by the input data, PyLag will interpolate the data to the correct time point. Note it is only possible to pass in a single time point per call. The data can be interpolated to multiple time points through multiple calls.\n", "\n", "The interpolated data is returned in the form of 1D arrays stored in a dictionary. These 1D arrays can be reshaped, giving the data on the original 3D grid." ] }, { "cell_type": "code", "execution_count": 5, "id": "c4141637", "metadata": {}, "outputs": [], "source": [ "# The names of the variables we want interpolated data for\n", "var_names = ['uo', 'vo', 'so', 'thetao']\n", "\n", "# Time at which we want the interpolated data\n", "datetime_now = datetime.datetime(2020,5,2,12)\n", "\n", "# Get interpolated data\n", "data = r.interpolate(datetime_now, var_names)\n", "\n", "# Reshape 1D arrays\n", "for var_name in var_names:\n", " data[var_name] = data[var_name].reshape(n_depth, n_lat, n_lon).astype(float)" ] }, { "cell_type": "markdown", "id": "6fe3f9b6", "metadata": {}, "source": [ "## Plotting the result\n", "\n", "To demonstrate the regidder is working, we plot the surface temperature field at the given time point. We do this twice: once for the original FVCOM temperature data, and once for the regridded data. First, we define some useful variables to assist with plotting." ] }, { "cell_type": "code", "execution_count": 6, "id": "60f3d512", "metadata": {}, "outputs": [], "source": [ "# Variable name\n", "temp_var_name = 'thetao'\n", "\n", "# FVCOM var name(s)\n", "fvcom_var_name = {temp_var_name: 'temp'}\n", "\n", "# Limits\n", "vmin = {temp_var_name: 10}\n", "vmax = {temp_var_name: 14}" ] }, { "cell_type": "markdown", "id": "af571098", "metadata": {}, "source": [ "### FVCOM surface temperature\n", "\n", "To plot the FVCOM surface temperature field, we first extract data at the corrsponding time point, then plot it." ] }, { "cell_type": "code", "execution_count": 6, "id": "1e101480", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZUAAAETCAYAAAD+spv+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8/fFQqAAAACXBIWXMAAAsTAAALEwEAmpwYAACvBUlEQVR4nO19eZzV1N3+c5J7Zx+GZRg64yCIoCAgKIOKKKh02LTQaS0KolCk6KvUtba0dX9rxQUsbj9ri4obuLWCChSqqG9xobYvtBaLvFasCGVHmP3e5Pz+SM7JSXKSm9y5dxbI4ycyN8k5OTlJznO+6yGUUooIESJEiBAhA1DaugERIkSIEOHIQUQqESJEiBAhY4hIJUKECBEiZAwRqUSIECFChIwhIpUIESJEiJAxRKQSIUKECBEyhohUIhzVWL9+Pfr164eioiK8+uqrbdaOc845B7/97W/b7PoRImQKEakcpejduzfy8/NRVFTEtx07dqBz58546623XOdff/31uPDCC/nv559/HlVVVSgqKkJ5eTkmTJiAP/3pT/z45s2bMWnSJJSUlKC4uBjnnnsu3nvvPX5827ZtIITg1FNPtV1n7969yMnJQe/evTN/0xLceuutmDt3Lmpra/Htb3+7Va55++23Y/r06RmrLyKkCO0JEakcxXjttddQW1vLt4qKClx00UV4+umnbedpmoalS5dixowZAICFCxfiuuuuw89+9jPs2rUL//73v3HVVVdh+fLlAIDPPvsMI0eOxODBg/H5559jx44dqKmpwdixY/H+++/b6q6rq8PHH3/Mfz///PM47rjjsnznQDKZBAB88cUXGDhwYNavFyHCUQMa4ahEr1696Nq1a137169fT4uKimhdXR3f98Ybb9Du3bvTRCJBDx48SAsLC+mLL77oWff06dPphAkTXPuvvPJKevbZZ1NKKf38888pAPrf//3f9Ec/+hE/Z9iwYfQXv/gF7dWrl7RuXdfpddddR7t37047depEBw8eTP/+979TSikdPXo0/c1vfsPPffLJJ+nIkSP5bwD04Ycfpn379qW9e/emffr0oYQQmpeXRwsLC2ljYyN94oknaP/+/WlRURE97rjj6GOPPWa7/quvvkqHDBlCi4uLaZ8+feiqVasopZQePHiQzpo1i37jG9+gFRUV9Oc//zlNJpOu9q9atYrG43Eai8Vo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GerT2VqKadOm4ZVXXpEeY8b7srIy1NTUYMOGDS2+nhcC34nTyDN//nyMGTMGW7duxZgxYzB//nzPsosWLcKAAQNs+x588EE89NBDmD17Np599lm+v7S0FAsWLAh8A239EoVFR2pv1NbMYtXWe6HHCUCAZL6Kl3f+uq2bFAgdoW8Z2rqtFAQaTW9LB1u3buV/r1ixAv3793edU1dXh8OHD/O/16xZg0GDBqV3gwGQNj0uX74cM2bMAADMmDEDr776qvS87du344033sDs2bNt+zVNg6IoUBTF9hLMmjULL7zwAvbv359u0yJEaJcYN+w2NHZWQBIUWm7HkFIihEe20rRMnToVI0aMwJYtW1BZWYnFixdj3rx5GDRoEE4++WSsWbMGixYZSyrs2LEDEydOBADs2rULZ511FoYMGYLTTjsN559/PsaPH5+1+w9kU5EZeXbt2oXy8nIAQHl5uU1lJeK6667Dvffey5mSYe7cubj00ktRUlKC559/nu8vKirCrFmzsGjRIqluUEQymcS+fftcbQ3jAeE1swmbQltWj6wtTE3oVb+u6659bXVP+/fvD3RPqdAa95SqX/3qaa17OnCMima9DvV5FInmBs+JU7bevVTwuqegfevVlqBlU9UT5J6cbW3t74lSZC2ifunSpa59l19+ufTciooKrFy5EgDQp08fbNq0KSttkiEQqciMPEHAAnWGDRuGt99+23asV69eePfdd6XlrrnmGgwdOhQ33nhjoOtEiNAeceF5Rqr6r84rRsF/AFKooKkrkCgieP2qyzuMSilCGJAooj7ISTIjT48ePbBz506Ul5dj586dKCsrc5Vbv349VqxYgZUrV6KxsRGHDh3C9OnTbTYUGTp37oxp06bh0Ucf9W98LIbS0lIAQLdu3YLcSpuDDSROf/P2CNbWjtC37aFfR154P2JNFF/3ioEqwDdi+dgxugRKAdDcC9ByAFUB4glg6rylKNzRhHfev6vN2hsWHemdbau2UmRPUukoSHn3XkaeSZMmYcmSJQCAJUuWYPLkya6yd999N7Zv345t27Zh2bJlOO+881ISCsMNN9yAX//610gmk77npSPmtyU6UnuPtraOOeeXGHOO9xonXhj9rftwytUPoPYYFQf6xqDlAHoc2HVGCeJ1QNFXFJ226cjfA1ACJIqB2p4Kdp+Sj6FzH2hRm1sDR9t7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X//1X7bjbdG3ubm5eOutt/gzX716NT744APbOb/85S8xdOhQ/O1vf8PTTz+Na6+9lh9rzb6NYEe7IpXt27fjjTfecA0YDIQQHD58GJRS1NbWomvXrojFDAc2NkMihIBSilNOOQWffvopGhoa8PXXX6OgoABDhw7F3//+dwDGS3TmmWdmtH3PP/88vvOd7+DYY48FAKknhhOapkFRFCiKwu9h5MiR/AN47733cP3119t+h213kLb7oT30bVFREXeDrKurC+QS2Rp9m6rdZ555Jk+bccYZZ/CZO9A6/RqkjcuXL8dll10GQgjOOOMMHDx4EDt37vStM9t9SwhBUVERACCRSCCRSLie+ebNmzFmzBgAQP/+/bFt2zbs2rULQOv1bQQ32hWpXHfddbj33ns9ZzNz587FJ598goqKCgwePBiLFi3i537nO99BVVUVqqqqUFxcjFgshqFDh/LZyumnn44zzjgD7733Hnbs2AFKqS0gKBPt+/TTT3HgwAGcc845GDZsGJ5++ml+jBCCsWPHYtiwYXj88cdt93TFFVfgsccew/Tp0wHANqv617/+he9973t8lpjujCpV2wFDZTFkyBBMmDAB//jHP/j+9tC3APD73/8e/fv3x/nnn48nnniC72/Lvg3SbobFixdjwoQJ/Hdr9GuQNsqC47766isAbdu3mqZh6NChKCsrQ3V1NU4//XTb8SFDhuB3v/sdACNq/IsvvuCk3Vp9G8GNdhOnwhKlDRs2jKcdcOIPf/gDhg4dirfeegufffYZqqurcfbZZ6NTp06YMWMGZsyYYTufzZwaGhowYsQI9OvXD7/85S/RvXv30LOSIO1LJpP4y1/+gjfffJNf84wzzsAJJ5yA9evXo6KiArt370Z1dTX69++PUaNGoVevXnj33Xdd7Z4/fz4+//xz9O7dG3l5eVw6+8tf/oLTTjst420/9dRT8cUXX6CoqAgrV67Et7/9bWzduhUA2kXfAkBNTQ1qamrw7rvv4pZbbsEf//hHAGizvg3absBQIS1evNhmC8p2vwZto19wXFu+t6qqYuPGjTh48CBqamrw8ccfY9CgQfz4vHnzcO2112Lo0KEYPHgwTjnlFK65aI2+jSBHu5FU1q9fjxUrVqB37964+OKL8dZbb/EZEMOTTz6J73znOyCEoG/fvjjuuOPwz3/+07NONnN6//33MWLECAwYMACbN29Oa9YUpH2VlZUYP348CgsLUVpailGjRnHDLAs2KisrQ01NDTZs2OB5rX79+uHAgQN47bXXMGLECADAsGHD8OSTT+K4447jaoFMtr1Tp0683okTJyKRSPjmp2rtvhUxatQofPbZZ7x9bdW3Qdv9t7/9DbNnz8by5cvRrVs33zoz2a9B2+gXHNeW7y1D586dcc4557gCCzt16oQnn3wSGzduxNNPP409e/bguOOO86wn030bwQO0HWLdunX0/PPPd+2/8sor6W233UYppfQ///kPraiooHv27PGsZ//+/bR79+506NChfN/YsWPpcccdRz/66KOMt2/z5s30vPPOo4lEgtbV1dGBAwfSv//977S2tpYeOnSIUkppbW0tHTFiBF21apXvNSZPnkz79OlD3333XUoppc8//zzt06cPnTt3btrt9mv7zp07qa7rlFJKP/zwQ9qzZ0/+W4bW7tutW7fy9vzlL3+hFRUVVNf1dtO3Xu3+4osv6PHHH0/Xr18fqJ5s9atfG19//XU6fvx4qus6ff/99+nw4cMppbRN+3b37t30wIEDlFJK6+vr6VlnnUVfe+012zkHDhygTU1NlFJKH3/8cXrppZf61pnNvo1god2ov7zw2GOPAQCuvPJK3HLLLZg5cyYGDx4MSinuueceW94dJ7p06YLu3bvbAn1GjBiB9evXY8iQIRlv34ABAzB+/HicfPLJUBQFs2fPxqBBg/Cvf/0LNTU1AAwV2bRp01LmLBs5ciRWrlzJ3ThHjBiBf/3rXxkV08W2v/zyy/h//+//IRaLIT8/H8uWLfM1hrd2377yyit4+umnEY/HkZ+fjxdeeAGEEOzatavd9a3Y7jvvvBP79u3DVVddBcAIRPNLL9Qa/eps48SJE7Fy5Ur07dsXBQUF3FW/Lft2586dmDFjBjRNg67rmDJlCi644AJbuz/55BNcdtllUFUVJ510EhYvXuxbZ2v17dGOKPgxQoQIESJkDO3GphIhQoQIETo+IlKJECFChAgZQ0QqESJEiBAhY4hIJUKECBEiZAwRqUSIECFChIwhIpUIESJEiJAxRKQSIUKECBEyhohUIkSIECFCxvD/AQI+1BFXfXXBAAAAAElFTkSuQmCC\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Read in the original FVCOM data at the correct time index\n", "fvcom_viewer = Viewer(fvcom_file_name)\n", "time_raw = fvcom_viewer('Itime')[:] + fvcom_viewer('Itime2')[:] / 1000. / 60. / 60. / 24.\n", "units = fvcom_viewer('Itime').units\n", "fvcom_datetime = num2pydate(time_raw[:], units=units)\n", "fvcom_tidx = fvcom_datetime.tolist().index(datetime_now)\n", "fvcom_surface_var = fvcom_viewer(fvcom_var_name[temp_var_name])[fvcom_tidx, 0, :]\n", "\n", "# Plot surface temperature data on the original FVCOM grid\n", "plotter = FVCOMPlotter(grid_metrics_file_name)\n", "fig, ax = create_figure(figure_size=(14,14), projection=ccrs.PlateCarree())\n", "plot = plotter.plot_field(ax, fvcom_surface_var, vmin=vmin[temp_var_name], vmax=vmax[temp_var_name],\n", " cb_label='Temperature (deg. C)')\n", "title = ax.set_title(f'FVCOM surface {temp_var_name}', fontsize=10)" ] }, { "cell_type": "markdown", "id": "f676b3c0", "metadata": {}, "source": [ "### Regridded surface temperature field\n", "\n", "We plot the regridded field directly, using data from the dictionary." ] }, { "cell_type": "code", "execution_count": 7, "id": "50bea313", "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAZUAAAEXCAYAAABlI9noAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8/fFQqAAAACXBIWXMAAAsTAAALEwEAmpwYAABjT0lEQVR4nO2de1xUdf7/X2cYrwzhBTAIhVw1UVRUNE2/aBpqWBLVapoKi4T+yqw0v7HZRdta0dJd07XLrhaut64rXogVTfMbXshabc3W/KaYCF8UweQiwsx8fn8Mc5zzOWfmnBlngIPvZ48Jzzmfy/t8zuVzPp/35/1+C4wxBoIgCILwAoamFoAgCIJoOVCnQhAEQXgN6lQIgiAIr0GdCkEQBOE1qFMhCIIgvAZ1KgRBEITXoE6FkPHLL7/AZDLBYrEoHl+8eDGmT5/uNH9kZCT27NnjUd3u5r2ZunzNyZMnERsb29RiKOKrdnv44YeRm5vr9XIJ/UCdik6IjIxEu3btYDKZcPvttyMlJQVVVVU+qatbt26oqqqCn5+fT8r3lJSUFLz00kteK8/XHdLLL7+M559/Xtxes2YNYmNj0aZNG6SkpCjm+eMf/4gXX3wRmzZtgslkEn/t27eHIAj49ttvAQBvvvkmoqOjERAQgDvvvBNvvvmmz87DHTIyMrBo0aKmFoNoQqhT0RE7duxAVVUVjh07hn/9619YunSp1+swm81eL/NWpKSkBPv27cNDDz0k7gsLC8NLL72E1NRUp/lycnKQkJCAxx9/HFVVVeJv7dq16N69OwYNGgQAYIxhw4YNqKioQG5uLtasWYOtW7f6+rRUGTp0KK5evYqjR482tShEE0Gdig65/fbbMX78eBw7dkzcd/jwYdxzzz3o0KEDBgwYgP3794vHzp49i7i4OAQEBOC+++7DU089JU5fFRYWQhAErFu3Dt26dcOYMWPEffYO5uzZsxg1ahQCAgIQHx+PsrIyiTx///vfERERgc6dO+ONN96QHLNarcjMzMRvfvMbdO7cGZMnT0Z5ebmmvI68//772LRpE5YvXw6TyYQHH3xQPHbs2DH0798fgYGBmDJlCmpra8VjO3fuRExMDDp06IB77rkH33//PQBgxowZ+OWXX/Dggw/CZDJh+fLlAIDf/va3uP322xEYGIi4uDj88MMPYlm//vorZs6cieDgYEREROD111+H1WpVlDcvLw+DBg1C27ZtxX0PP/wwHnroIXTu3FkxT0VFBX766ScMHz5cdiwrKwszZ86EIAgAgP/+7//GoEGDYDQacddddyExMRH5+flO2+9mrtGGDRvEvH/4wx9UR3ijR4/Grl27nB4nWjiM0AUREREsLy+PMcbY+fPnWXR0NJs3bx5jjLGioiLWqVMntmvXLmaxWNju3btZp06d2MWLFxljjA0bNowtWLCAXb9+nf3P//wPCwgIYI8//jhjjLGzZ88yAGzGjBmsqqqK1dTUiPvq6+vF/M899xyrra1lX331FTOZTGL+H374gfn7+7OvvvqK1dbWsueee475+fmJsv7pT39id999Nzt//jyrra1l6enp7LHHHtOUlyc5OZktWrRI1i5DhgxhFy5cYJcvX2a9e/dm77zzDmOMsW+//ZYFBwezw4cPM7PZzD788EMWERHBamtrZW1qZ926dezq1austraWPfPMM2zAgAHisRkzZrBJkyaxq1evsrNnz7KePXuyv/3tb4qyPv/88+zJJ59UPLZo0SKWnJws279lyxaxbRwpLCxkBoOBnTlzRrE8q9XKYmJixPPm8cY1+p//+R92/fp1tmDBAmY0Gp1eI8YYW7FiBUtKSnJ6nGjZUKeiEyIiIpi/vz8zmUwMABszZgyrqKhgjDGWmZnJpk+fLkk/btw49uGHH7Jz584xPz8/Vl1dLR57/PHHZZ3Kzz//LB537FTs+auqqsTjU6dOFfMvWbKETZkyRTxWVVXFWrVqJb50evfuzfbs2SMeLy4uZkajkdXX16vm5XHWqfz9738XtxcuXMhmz57NGGNszpw57KWXXpKk79WrF9u/f7+Y19XLsaKiggFgV65cYWazmbVu3Zr98MMP4vF3332XjRo1SjFvWloae+GFFxSPOetUpk+fzjZs2CDb/9prrzmthzHGXnnlFda/f3+xs+S52Wvk2NFVV1e7vEaMMfb++++ze++91+lxomVD0186Ytu2baisrMT+/fvxn//8R5yGOnfuHD755BN06NBB/H399dcoKSlBcXExOnXqhPbt24vldO3aVVa20j4AKC4uRseOHeHv7y/ui4iIkBx3zOvv7y+Z3jl37hySkpJEuaKiouDn54fS0lLVvFq5/fbbxX+3b99eXMBw7tw5rFixQtIu58+fR3FxsWI5FosFGRkZ+M1v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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Create the figure\n", "fig, ax = create_figure(figure_size=(14,14), projection=ccrs.PlateCarree())\n", "\n", "# Plot temperature\n", "plot = ax.pcolormesh(lon_edges, lat_edges, data[temp_var_name][0, :],\n", " vmin=vmin[temp_var_name], vmax=vmax[temp_var_name],\n", " transform=ccrs.PlateCarree())\n", "_ = ax.set_title(f'Regridded {temp_var_name} (1/{points_per_degree} deg.)', fontsize=10)\n", "\n", "# Add colour bar\n", "divider = make_axes_locatable(ax)\n", "cax = divider.append_axes(\"right\", size=\"5%\", pad=0.05, axes_class=plt.Axes)\n", "cbar = fig.colorbar(plot, cax=cax)\n", "cbar.ax.tick_params(labelsize=10)\n", "cbar.set_label('Temperature (deg. C)', fontsize=10)\n", "\n", "extents = np.array([lon_edges.min(), lon_edges.max(), lat_edges.min(), lat_edges.max()])\n", "ax.set_extent(extents)\n", "\n", "gl = ax.gridlines(linewidth=0.2, draw_labels=True, linestyle='--', color='k')\n", "\n", "gl.xlabel_style = {'fontsize': 10}\n", "gl.ylabel_style = {'fontsize': 10}\n", "\n", "gl.top_labels=False\n", "gl.right_labels=False\n", "gl.bottom_labels=True\n", "gl.left_labels=True\n", "\n", "gl.xformatter = LONGITUDE_FORMATTER\n", "gl.yformatter = LATITUDE_FORMATTER\n", "\n", "_ = ax.set_xlabel('Longitude (E)', fontsize=10)\n", "_ = ax.set_ylabel('Longitude (N)', fontsize=10)" ] }, { "cell_type": "markdown", "id": "a7db80f3", "metadata": {}, "source": [ "In qualitative terms, it can be seen the two are a close match. Note that PyLag returns masked data for all points that lie outside of the domain. It is evident the Tamar Estuary is poorly resolved, but this is to be expected - we have regridded the data onto a relatively coarse regular grid." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "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.7" } }, "nbformat": 4, "nbformat_minor": 5 }