{ "cells": [ { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "# Curvilinear grids\n" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "Parcels also supports [curvilinear grids](https://www.nemo-ocean.eu/doc/node108.html) such as those used in the [NEMO models](https://www.nemo-ocean.eu/).\n", "\n", "We will be using the example data in the `NemoCurvilinear_data/` directory. These fields are a purely zonal flow on an aqua-planet (so zonal-velocity is 1 m/s and meridional-velocity is 0 m/s everywhere, and no land). However, because of the curvilinear grid, the `U` and `V` fields vary north of 20N.\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from datetime import timedelta as delta\n", "\n", "import matplotlib.pyplot as plt\n", "import numpy as np\n", "import xarray as xr\n", "\n", "from parcels import (\n", " AdvectionRK4,\n", " FieldSet,\n", " JITParticle,\n", " ParticleFile,\n", " ParticleSet,\n", " download_example_dataset,\n", ")" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "We can create a `FieldSet` just like we do for normal grids.\n", "Note that NEMO is discretised on a C-grid. U and V velocities are not located on the same nodes (see https://www.nemo-ocean.eu/doc/node19.html ).\n", "\n", "```\n", " __V1__\n", "| |\n", "U0 U1\n", "|__V0__|\n", "```\n", "\n", "To interpolate U, V velocities on the C-grid, Parcels needs to read the f-nodes, which are located on the corners of the cells (for indexing details: https://www.nemo-ocean.eu/doc/img360.png ).\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "example_dataset_folder = download_example_dataset(\"NemoCurvilinear_data\")\n", "filenames = {\n", " \"U\": {\n", " \"lon\": f\"{example_dataset_folder}/mesh_mask.nc4\",\n", " \"lat\": f\"{example_dataset_folder}/mesh_mask.nc4\",\n", " \"data\": f\"{example_dataset_folder}/U_purely_zonal-ORCA025_grid_U.nc4\",\n", " },\n", " \"V\": {\n", " \"lon\": f\"{example_dataset_folder}/mesh_mask.nc4\",\n", " \"lat\": f\"{example_dataset_folder}/mesh_mask.nc4\",\n", " \"data\": f\"{example_dataset_folder}/V_purely_zonal-ORCA025_grid_V.nc4\",\n", " },\n", "}\n", "variables = {\"U\": \"U\", \"V\": \"V\"}\n", "\n", "dimensions = {\"lon\": \"glamf\", \"lat\": \"gphif\", \"time\": \"time_counter\"}\n", "\n", "fieldset = FieldSet.from_nemo(\n", " filenames, variables, dimensions, allow_time_extrapolation=True\n", ")" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "And we can plot the `U` field.\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/var/folders/1n/500ln6w97859_nqq86vwpl000000gr/T/ipykernel_24135/4022207771.py:1: UserWarning: The input coordinates to pcolormesh are interpreted as cell centers, but are not monotonically increasing or decreasing. This may lead to incorrectly calculated cell edges, in which case, please supply explicit cell edges to pcolormesh.\n", " plt.pcolormesh(\n" ] }, { "data": { "image/png": "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gM7O9WBkMkMQH6ycdNJJ+NznPofjjz8ev/jFL/Dxj38cJ598Mh599FF/LmXn+dRTT83E4U6aTs5lZGQElUoFixcvblrmYP9dzzrrLLztbW/D0UcfjSeffBJ/+qd/ite//vXYsmULqtXqrD43JmPeWybKgryKn+985zsdb++jH/0o1q5di1e96lV4//vfj6uvvhrXX399bpmpGO61U6b6/MqO0RSGt53O8wvp5lzf97734bTTTsMrXvEKvPvd78anPvUp3HHHHXjuuedangedS7/PYyrodgjig5GzzjoLv/M7v4OXv/zl+I3f+A189atfBQDcddddfpm5cJ7EZM5lNpzvueeei7PPPhurV6/GOeecg6997Wv40Y9+5H/PVsyGc2My5r1l4tJLL8U73vGOtssUe9rd8Ku/+qsYHR3FL37xCyxdurTlcK9Ac89kKpjK81u2bBm+9a1v5abt2rULjUbDH/t0n19IL+dK0eU/+clPcNhhh3V0rgcjkxmCeLawYMECvPzlL8ePf/xjvOUtbwFge+zLly/3y8zG86QMlXbnsmzZMtTrdezatSvXg9+5c2fL0SAPVpYvX46jjz4aP/7xjwHMrXObz8x7y8SSJUvwkpe8pO2nVqtNevtbt25FrVbzqZZr167FN77xjZx//r777sOKFSt6Ei2tmMrzW7t2LX7wgx9gx44duWOvVqtYs2aNX2Y6zy+kl3PdunUrAPiHeSfnejAymSGIZwvj4+N4/PHHsXz5cqxatQrLli3LnWe9Xsf9998/686zk3NZs2YN4jjOLbNjxw784Ac/mHXn+9xzz2H79u2+rc2lc5vXzFjo5yzkqaeeMlu3bjUf+9jHzMKFC83WrVvN1q1bzZ49e4wxxnzlK18xt99+u3nkkUfMT37yE/PXf/3XZnh42Fx22WV+Gy+88IJZunSp+b3f+z3zyCOPmC996UtmeHjY3HDDDTN1Wp6Jzi9JErN69Wrzhje8wXz3u981//qv/2qOPPJIc+mll/ptHMznRzz00EPmxhtvNFu3bjVPPPGEueeee8yKFSvMb/3Wb/llOjnXg5UvfOELJo5jc8cdd5jHHnvMXH755WbBggXmZz/72UwfWle8//3vN1//+tfNE088Yb75zW+a3/zN3zRDQ0P+PP78z//cLFq0yHzpS18yjzzyiPm93/s9s3z5cjM6OjrDR97Mnj17fHsC4O+/p556yhjT2bmsX7/eHHnkkeZf//VfzXe/+13z+te/3rzyla80SZLM1GkZY9qf2549e8z73/9+89BDD5knn3zS/Md//IdZu3atedGLXjQrzo3pHBYTXXDhhRcaAE2f//iP/zDGGPO1r33NvOpVrzILFy40g4ODZvXq1eamm24yjUYjt53/+q//MqeeeqqpVqtm2bJlZuPGjQdF2uRE52eMFRxnn322GRgYMIceeqi59NJLc2mgxvz/7d0tqoRQAIbhpI5JGBDUoNE+xWY0mSxGN+AeXIXrGWYBJnED7kFtfpPuheH+4OWEEe77VA3nC8IbDnjefR+GYVCWZfI8T5fLRWmaqus6Lcvy8t6RrWfV972SJJFt27rdbno8Hu8+0p/Vda0wDGVZlqIoUlVVmqbp8/m+7+q6TkEQyHEc5XmucRzfeOKf3e/3b7+tpmkkHduybZvattX1epXruirLUvM8v2HNq9+2reuqoijk+74sy1Icx2qa5su5z7oNx/ELcgAAYOTf35kAAABmiAkAAGCEmAAAAEaICQAAYISYAAAARogJAABghJgAAABGiAkAAGCEmAAAAEaICQAAYISYAAAARp6RLvhHvxWJbwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.pcolormesh(\n", " fieldset.U.grid.lon,\n", " fieldset.U.grid.lat,\n", " fieldset.U.data[0, :, :],\n", " vmin=0,\n", " vmax=1,\n", ")\n", "plt.colorbar()\n", "plt.show()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "As you see above, the `U` field indeed is 1 m/s south of 20N, but varies with longitude and latitude north of that. We can confirm by doing a field evaluation at (60N, 50E):" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(u, v) = (1.000, -0.000)\n" ] } ], "source": [ "u, v = fieldset.UV.eval(0, 0, 60, 50, applyConversion=False)\n", "print(f\"(u, v) = ({u:.3f}, {v:.3f})\")\n", "assert np.isclose(u, 1.0, atol=1e-3)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now we can run particles as normal. Parcels will take care to rotate the `U` and `V` fields." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "INFO: Output files are stored in nemo_particles.zarr.\n", "100%|██████████| 2592000.0/2592000.0 [00:00<00:00, 4185822.54it/s]\n" ] } ], "source": [ "# Start 20 particles on a meridional line at 180W\n", "npart = 20\n", "lonp = -180 * np.ones(npart)\n", "latp = [i for i in np.linspace(-70, 85, npart)]\n", "\n", "pset = ParticleSet.from_list(fieldset, JITParticle, lon=lonp, lat=latp)\n", "pfile = ParticleFile(\"nemo_particles\", pset, outputdt=delta(days=1))\n", "\n", "pset.execute(AdvectionRK4, runtime=delta(days=30), dt=delta(hours=6), output_file=pfile)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "And then we can plot these trajectories. As expected, all trajectories go exactly zonal and due to the curvature of the earth, ones at higher latitude move more degrees eastward (even though the distance in km is equal for all particles).\n" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ds = xr.open_zarr(\"nemo_particles.zarr\")\n", "\n", "plt.plot(ds.lon.T, ds.lat.T, \".-\")\n", "plt.show()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": {}, "source": [ "## Speeding up `ParticleSet` initialisation by efficiently finding particle start-locations on the `Grid`\n", "\n", "On a Curvilinear grid, determining the location of each `Particle` on the grid is more complicated and therefore takes longer than on a Rectilinear grid. Since Parcels version 2.2.2, a function is available on the `ParticleSet` class, that speeds up the look-up. After creating the `ParticleSet`, but before running the `ParticleSet.execute()`, simply call the function `ParticleSet.populate_indices()`. Note that this only works if you have the [pykdtree](https://anaconda.org/conda-forge/pykdtree) package installed, which is only included in the Parcels dependencies in version >= 2.2.2\n" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "pset = ParticleSet.from_list(fieldset, JITParticle, lon=lonp, lat=latp)\n", "pset.populate_indices()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.5" } }, "nbformat": 4, "nbformat_minor": 4 }