Skip to content

Commit 1b35bf9

Browse files
committed
Doc fix: docs/user_guide/examples/tutorial_dt_integrators.ipynb
1 parent 3b2a166 commit 1b35bf9

1 file changed

Lines changed: 18 additions & 8 deletions

File tree

docs/user_guide/examples/tutorial_dt_integrators.ipynb

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,8 @@
5353
"metadata": {},
5454
"outputs": [],
5555
"source": [
56+
"from pathlib import Path\n",
57+
"\n",
5658
"import matplotlib.pyplot as plt\n",
5759
"import numpy as np\n",
5860
"import pandas as pd\n",
@@ -67,6 +69,9 @@
6769
")\n",
6870
"ds_fields.load() # load the dataset into memory\n",
6971
"\n",
72+
"OUTPUT_FOLDER = Path(\"output\")\n",
73+
"OUTPUT_FOLDER.mkdir(exist_ok=True)\n",
74+
"\n",
7075
"# Convert to SGRID-compliant dataset and create FieldSet\n",
7176
"fields = {\"U\": ds_fields[\"uo\"], \"V\": ds_fields[\"vo\"]}\n",
7277
"ds_fset = parcels.convert.copernicusmarine_to_sgrid(fields=fields)\n",
@@ -239,7 +244,8 @@
239244
" outputdt = dt\n",
240245
"\n",
241246
" pfile = parcels.ParticleFile(\n",
242-
" path=f\"output/AdvectionRK2_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\",\n",
247+
" path=OUTPUT_FOLDER\n",
248+
" / f\"AdvectionRK2_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\",\n",
243249
" outputdt=outputdt,\n",
244250
" )\n",
245251
"\n",
@@ -291,7 +297,7 @@
291297
"temperature = ds_fields.isel(time=0, depth=0).thetao.plot(cmap=\"Greys\")\n",
292298
"for j, dt in enumerate(dt_choices):\n",
293299
" df = parcels.read_particlefile(\n",
294-
" f\"output/AdvectionRK2_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\"\n",
300+
" OUTPUT_FOLDER / f\"AdvectionRK2_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\"\n",
295301
" )\n",
296302
" for i, traj in enumerate(df.partition_by(\"particle_id\", maintain_order=True)):\n",
297303
" ax.plot(\n",
@@ -376,10 +382,10 @@
376382
"axs[1].set_ylim(0, 50)\n",
377383
"\n",
378384
"# set 5 minute dt as benchmark\n",
379-
"df_5min = parcels.read_particlefile(\"output/AdvectionRK2_dt_300s.parquet\")\n",
385+
"df_5min = parcels.read_particlefile(OUTPUT_FOLDER / \"AdvectionRK2_dt_300s.parquet\")\n",
380386
"for i, dt in enumerate(dt_choices[:-1]):\n",
381387
" df = parcels.read_particlefile(\n",
382-
" f\"output/AdvectionRK2_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\"\n",
388+
" OUTPUT_FOLDER / f\"AdvectionRK2_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\"\n",
383389
" )\n",
384390
"\n",
385391
" # subset 5 minute data to match dt\n",
@@ -581,7 +587,8 @@
581587
" outputdt = dt\n",
582588
"\n",
583589
" pfile = parcels.ParticleFile(\n",
584-
" path=f\"output/KernelCompare_{advection_scheme.__name__}_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\",\n",
590+
" path=OUTPUT_FOLDER\n",
591+
" / f\"KernelCompare_{advection_scheme.__name__}_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\",\n",
585592
" outputdt=outputdt,\n",
586593
" )\n",
587594
"\n",
@@ -620,7 +627,8 @@
620627
" axs[m, n].set_xlabel(\"Longitude\")\n",
621628
" for j, advection_scheme in enumerate(advection_schemes):\n",
622629
" df = parcels.read_particlefile(\n",
623-
" f\"output/KernelCompare_{advection_scheme.__name__}_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\"\n",
630+
" OUTPUT_FOLDER\n",
631+
" / f\"KernelCompare_{advection_scheme.__name__}_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\"\n",
624632
" )\n",
625633
" for i, traj in enumerate(df.partition_by(\"particle_id\", maintain_order=True)):\n",
626634
" axs[m, n].plot(\n",
@@ -670,11 +678,13 @@
670678
" axs[m, n].set_yscale(\"log\")\n",
671679
" axs[m, n].set_ylim(1e-4, 1e1)\n",
672680
" df_RK4 = parcels.read_particlefile(\n",
673-
" f\"output/KernelCompare_AdvectionRK4_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\"\n",
681+
" OUTPUT_FOLDER\n",
682+
" / f\"KernelCompare_AdvectionRK4_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\"\n",
674683
" )\n",
675684
" for j, advection_scheme in enumerate(advection_schemes[:-1]):\n",
676685
" df = parcels.read_particlefile(\n",
677-
" f\"output/KernelCompare_{advection_scheme.__name__}_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\"\n",
686+
" OUTPUT_FOLDER\n",
687+
" / f\"KernelCompare_{advection_scheme.__name__}_dt_{int(dt / np.timedelta64(1, 's'))}s.parquet\"\n",
678688
" )\n",
679689
"\n",
680690
" dist = dist_km(df[\"lon\"], df_RK4[\"lon\"], df[\"lat\"], df_RK4[\"lat\"])\n",

0 commit comments

Comments
 (0)