Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
fc3733a
Adding information on the required data to run plasticparcels
michaeldenes May 27, 2024
e1de5a0
Making the required data a list instead of all in one line.
michaeldenes May 27, 2024
935ccd9
Fixing minor grammar mistakes
michaeldenes May 27, 2024
eef396e
Making PlasticParcels lowercase in the physics kernels and initialisa…
michaeldenes May 27, 2024
0a7568a
Removing empty code block in initialisation maps tutorial
michaeldenes May 27, 2024
80197bf
Adding a sentence to the required data section informing the user to …
michaeldenes May 27, 2024
2fdabf1
Adding a github readme to the examples folder to link to the readthed…
michaeldenes May 27, 2024
5259eb6
Near-complete draft of the paper. Needs an updated initialisation_map…
michaeldenes May 27, 2024
e49a79d
Updates to paper based on Erik's suggestions in github
michaeldenes May 27, 2024
58812e5
Updated initialisation maps example to include a 4-part plot of all i…
michaeldenes May 28, 2024
19f8b91
Updates to the initialisation maps figure an schematic figure for the…
michaeldenes May 28, 2024
f784f36
Merge branch 'main' into update_documentation
michaeldenes May 28, 2024
80570e8
Updated example tutorial to include figure that will be used in the p…
michaeldenes May 28, 2024
351ab61
Adding usage example to the draft paper
michaeldenes May 28, 2024
30f7f59
Removing the import os statement
michaeldenes May 28, 2024
299784f
Fixing the references text that wasn't showing before
michaeldenes May 28, 2024
04c316e
Missing ` quotes around plasticparcels
michaeldenes May 28, 2024
0647543
Fixing 'van Sebille' in .bib file so that the references don't show a…
michaeldenes May 28, 2024
a3ad945
Fixing capitalisation and escaping the percentage symbol in the .bib …
michaeldenes May 28, 2024
ad4cfc4
Removing the rhs latitude labels that are overlapped by the colorbar …
michaeldenes May 28, 2024
82c9066
Fixing broken url links (don't use \url{} like latex!)
michaeldenes May 28, 2024
85b13d7
Fixing width of second figure in paper.
michaeldenes May 28, 2024
8b75b18
Some textual/grammar changes to the manuscript
erikvansebille May 29, 2024
7d7a4d7
Merge pull request #35 from OceanParcels/suggestions_evs
michaeldenes May 29, 2024
c7af024
Updated schematic figure for paper, to use the word 'kernel' instead …
michaeldenes May 29, 2024
c495e88
Updating the example python code to better match parcels style
michaeldenes May 29, 2024
16a6404
Missed a couple of variable name changes in the last commit
michaeldenes May 29, 2024
ce0141f
Changing start_date to startdate
michaeldenes May 29, 2024
6fd2f0b
Changing settings variables to be inline with parcels style
michaeldenes May 29, 2024
21a0b83
Updating Greek coast settings variable names to be more inline with p…
michaeldenes May 29, 2024
ec3169a
Update to Croatian fisheries example settings variables to be inline …
michaeldenes May 29, 2024
99ec3dc
Fixing small spacing issue on comments in the code
michaeldenes May 29, 2024
3f389ad
Updates to the add your own kernel tutorial settings variable names t…
michaeldenes May 29, 2024
037ff5d
Changing parcels version to v3.0.3 in the paper
michaeldenes May 29, 2024
62f39db
Italy example rerun to ensure it works with the variable name changes
michaeldenes May 29, 2024
7ab2bdf
initialisation maps example rerun to ensure it works with the variabl…
michaeldenes May 29, 2024
fff5309
Greece example rerun to ensure it works with the variable name changes
michaeldenes May 29, 2024
9a82151
Rerunning the Croatian fisheries example with changed settings variab…
michaeldenes May 29, 2024
23653a9
Rerunning the 'add your own kernel' tutorial with changed settings va…
michaeldenes May 29, 2024
fd36e00
Removing superfluous code in kernels.py
michaeldenes May 29, 2024
186c51b
Update docs/index.rst
michaeldenes May 29, 2024
e14fd0a
Remove two plots from Italy example, and only show the combined plot
michaeldenes May 29, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions docs/examples/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Examples

Up-to-date documentation on the `plasticparcels` examples can be found [here](https://plastic.oceanparcels.org/en/latest/examples.html).
28 changes: 14 additions & 14 deletions docs/examples/example_Croatian_fisheries.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,10 @@
"source": [
"# Create the simulation settings\n",
"settings['simulation'] = {\n",
" 'start_date': datetime.strptime('2019-01-01-00:00:00', '%Y-%m-%d-%H:%M:%S'), # Start date of simulation\n",
" 'startdate': datetime.strptime('2019-01-01-00:00:00', '%Y-%m-%d-%H:%M:%S'), # Start date of simulation\n",
" 'runtime': timedelta(days=30), # Runtime of simulation\n",
" 'dt_write': timedelta(hours=12), # Timestep of output\n",
" 'dt_timestep': timedelta(minutes=20), # Timestep of advection\n",
" 'outputdt': timedelta(hours=12), # Timestep of output\n",
" 'dt': timedelta(minutes=20), # Timestep of advection\n",
" }\n",
"\n",
"# Overwrite some settings\n",
Expand Down Expand Up @@ -155,8 +155,8 @@
"outputs": [],
"source": [
"runtime = settings['simulation']['runtime']\n",
"dt_timestep = settings['simulation']['dt_timestep']\n",
"dt_write = settings['simulation']['dt_write']"
"dt = settings['simulation']['dt']\n",
"outputdt = settings['simulation']['outputdt']"
]
},
{
Expand All @@ -174,7 +174,7 @@
"outputs": [],
"source": [
"# Create the particle file where output will be stored\n",
"pfile = pp.ParticleFile('example_Croatia_fisheries.zarr', pset, settings=settings, outputdt=dt_write)"
"pfile = pp.ParticleFile('example_Croatia_fisheries.zarr', pset, settings=settings, outputdt=outputdt)"
]
},
{
Expand All @@ -187,13 +187,13 @@
"output_type": "stream",
"text": [
"INFO: Output files are stored in example_Croatia_fisheries.zarr.\n",
"100%|██████████| 2592000.0/2592000.0 [07:16<00:00, 5938.88it/s] \n"
"100%|██████████| 2592000.0/2592000.0 [07:49<00:00, 5524.98it/s]\n"
]
}
],
"source": [
"# Execute the simulation\n",
"pset.execute(kernels, runtime=runtime, dt=dt_timestep, output_file=pfile)"
"pset.execute(kernels, runtime=runtime, dt=dt, output_file=pfile)"
]
},
{
Expand Down Expand Up @@ -284,9 +284,9 @@
"metadata": {},
"outputs": [],
"source": [
"settings['bgc']['constants']['biofilm_density'] = 1400.0 # Biofilm density (kg/m^3)\n",
"settings['bgc']['constants']['collision_probability'] = 0.75 # Probability of collision with ambient algae\n",
"settings['bgc']['constants']['algae_mortality_rate'] = 0.80 # Mortality rate of biofilm"
"settings['bgc']['constants']['biofilm_density'] = 1400.0 # Biofilm density (kg/m^3)\n",
"settings['bgc']['constants']['collision_probability'] = 0.75 # Probability of collision with ambient algae\n",
"settings['bgc']['constants']['algae_mortality_rate'] = 0.80 # Mortality rate of biofilm"
]
},
{
Expand Down Expand Up @@ -326,7 +326,7 @@
"outputs": [],
"source": [
"# Create the particle file where output will be stored\n",
"pfile = pp.ParticleFile('example_Croatia_fisheries_sensitivity.zarr', pset, settings=settings, outputdt=dt_write)"
"pfile = pp.ParticleFile('example_Croatia_fisheries_sensitivity.zarr', pset, settings=settings, outputdt=outputdt)"
]
},
{
Expand All @@ -339,13 +339,13 @@
"output_type": "stream",
"text": [
"INFO: Output files are stored in example_Croatia_fisheries_sensitivity.zarr.\n",
"100%|██████████| 2592000.0/2592000.0 [12:43<00:00, 3394.83it/s] \n"
"100%|██████████| 2592000.0/2592000.0 [19:57<00:00, 2163.97it/s] \n"
]
}
],
"source": [
"# Execute the simulation\n",
"pset.execute(kernels, runtime=runtime, dt=dt_timestep, output_file=pfile)"
"pset.execute(kernels, runtime=runtime, dt=dt, output_file=pfile)"
]
},
{
Expand Down
18 changes: 9 additions & 9 deletions docs/examples/example_Greece_coast.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -62,10 +62,10 @@
"source": [
"# Create the simulation settings\n",
"settings['simulation'] = {\n",
" 'start_date': datetime.strptime('2019-06-01-00:00:00', '%Y-%m-%d-%H:%M:%S'), # Start date of simulation\n",
" 'runtime': timedelta(days=30), # Runtime of simulation\n",
" 'dt_write': timedelta(hours=12), # Timestep of output\n",
" 'dt_timestep': timedelta(minutes=20), # Timestep of advection\n",
" 'startdate': datetime.strptime('2019-06-01-00:00:00', '%Y-%m-%d-%H:%M:%S'), # Start date of simulation\n",
" 'runtime': timedelta(days=30), # Runtime of simulation\n",
" 'outputdt': timedelta(hours=12), # Timestep of output\n",
" 'dt': timedelta(minutes=20), # Timestep of advection\n",
" }\n",
"\n",
"# Overwrite some settings\n",
Expand Down Expand Up @@ -164,8 +164,8 @@
"outputs": [],
"source": [
"runtime = settings['simulation']['runtime']\n",
"dt_timestep = settings['simulation']['dt_timestep']\n",
"dt_write = settings['simulation']['dt_write']"
"dt = settings['simulation']['dt']\n",
"outputdt = settings['simulation']['outputdt']"
]
},
{
Expand All @@ -183,7 +183,7 @@
"outputs": [],
"source": [
"# Create the particle file where output will be stored\n",
"pfile = pp.ParticleFile('example_Greece_coast.zarr', pset, settings=settings, outputdt=dt_write)"
"pfile = pp.ParticleFile('example_Greece_coast.zarr', pset, settings=settings, outputdt=outputdt)"
]
},
{
Expand All @@ -196,13 +196,13 @@
"output_type": "stream",
"text": [
"INFO: Output files are stored in example_Greece_coast.zarr.\n",
"100%|██████████| 2592000.0/2592000.0 [00:53<00:00, 48730.82it/s]\n"
"100%|██████████| 2592000.0/2592000.0 [00:59<00:00, 43331.55it/s]\n"
]
}
],
"source": [
"# Execute the simulation\n",
"pset.execute(kernels, runtime=runtime, dt=dt_timestep, output_file=pfile)"
"pset.execute(kernels, runtime=runtime, dt=dt, output_file=pfile)"
]
},
{
Expand Down
77 changes: 58 additions & 19 deletions docs/examples/example_Italy_coast.ipynb

Large diffs are not rendered by default.

82 changes: 41 additions & 41 deletions docs/examples/example_add_your_own_kernel.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -57,10 +57,10 @@
"source": [
"# Create the simulation settings\n",
"settings['simulation'] = {\n",
" 'start_date': datetime.strptime('2019-01-01-00:00:00', '%Y-%m-%d-%H:%M:%S'), # Start date of simulation\n",
" 'runtime': timedelta(days=30), # Runtime of simulation, use negative if releasing particles backwards in time\n",
" 'dt_write': timedelta(hours=12), # Timestep of output\n",
" 'dt_timestep': timedelta(minutes=20), # Timestep of advection\n",
" 'startdate': datetime.strptime('2019-01-01-00:00:00', '%Y-%m-%d-%H:%M:%S'), # Start date of simulation\n",
" 'runtime': timedelta(days=30), # Runtime of simulation\n",
" 'outputdt': timedelta(hours=12), # Timestep of output\n",
" 'dt': timedelta(minutes=20), # Timestep of advection\n",
" }\n",
"\n",
"# Subset the ocean data to just include the Mediterranean Sea\n",
Expand Down Expand Up @@ -210,15 +210,15 @@
"name": "stdout",
"output_type": "stream",
"text": [
"<function PolyTEOS10_bsq at 0x7f38b955f910>\n",
"<function AdvectionRK4_3D at 0x7f38ba1b2d40>\n",
"<function Biofouling at 0x7f38b955f880>\n",
"<function StokesDrift at 0x7f38b955f6d0>\n",
"<function unbeaching at 0x7f38b955fa30>\n",
"<function checkThroughBathymetry at 0x7f38b955fac0>\n",
"<function checkErrorThroughSurface at 0x7f38b955fbe0>\n",
"<function periodicBC at 0x7f38b955fb50>\n",
"<function deleteParticle at 0x7f38b955fc70>\n"
"<function PolyTEOS10_bsq at 0x7f19fefcb910>\n",
"<function AdvectionRK4_3D at 0x7f19ffd2ad40>\n",
"<function Biofouling at 0x7f19fefcb880>\n",
"<function StokesDrift at 0x7f19fefcb6d0>\n",
"<function unbeaching at 0x7f19fefcba30>\n",
"<function checkThroughBathymetry at 0x7f19fefcbac0>\n",
"<function checkErrorThroughSurface at 0x7f19fefcbbe0>\n",
"<function periodicBC at 0x7f19fefcbb50>\n",
"<function deleteParticle at 0x7f19fefcbc70>\n"
]
}
],
Expand All @@ -245,21 +245,21 @@
"output_type": "stream",
"text": [
"INFO: Output files are stored in example_Tunisia_fisheries_prebuilt.zarr.\n",
"100%|██████████| 2592000.0/2592000.0 [14:30<00:00, 2977.08it/s]\n"
"100%|██████████| 2592000.0/2592000.0 [07:48<00:00, 5529.73it/s]\n"
]
}
],
"source": [
"# Define the runtime, the timestepping, and the output frequency of the simulation from the settings\n",
"runtime = settings['simulation']['runtime']\n",
"dt_timestep = settings['simulation']['dt_timestep']\n",
"dt_write = settings['simulation']['dt_write']\n",
"dt = settings['simulation']['dt']\n",
"outputdt = settings['simulation']['outputdt']\n",
"\n",
"# Create the particle file where output will be stored\n",
"pfile = pp.ParticleFile('example_Tunisia_fisheries_prebuilt.zarr', pset, settings=settings, outputdt=dt_write)\n",
"pfile = pp.ParticleFile('example_Tunisia_fisheries_prebuilt.zarr', pset, settings=settings, outputdt=outputdt)\n",
"\n",
"# Execute the simulation\n",
"pset.execute(kernels, runtime=runtime, dt=dt_timestep, output_file=pfile)"
"pset.execute(kernels, runtime=runtime, dt=dt, output_file=pfile)"
]
},
{
Expand Down Expand Up @@ -359,15 +359,15 @@
"name": "stdout",
"output_type": "stream",
"text": [
"<function PolyTEOS10_bsq at 0x7f38b955f910>\n",
"<function AdvectionRK4_3D at 0x7f38ba1b2d40>\n",
"<function Biofouling at 0x7f38b955f880>\n",
"<function StokesDrift at 0x7f38b955f6d0>\n",
"<function unbeaching at 0x7f38b955fa30>\n",
"<function checkThroughBathymetry at 0x7f38b955fac0>\n",
"<function checkErrorThroughSurface at 0x7f38b955fbe0>\n",
"<function periodicBC at 0x7f38b955fb50>\n",
"<function deleteParticle at 0x7f38b955fc70>\n"
"<function PolyTEOS10_bsq at 0x7f19fefcb910>\n",
"<function AdvectionRK4_3D at 0x7f19ffd2ad40>\n",
"<function Biofouling at 0x7f19fefcb880>\n",
"<function StokesDrift at 0x7f19fefcb6d0>\n",
"<function unbeaching at 0x7f19fefcba30>\n",
"<function checkThroughBathymetry at 0x7f19fefcbac0>\n",
"<function checkErrorThroughSurface at 0x7f19fefcbbe0>\n",
"<function periodicBC at 0x7f19fefcbb50>\n",
"<function deleteParticle at 0x7f19fefcbc70>\n"
]
}
],
Expand All @@ -392,17 +392,17 @@
"name": "stdout",
"output_type": "stream",
"text": [
"<function PolyTEOS10_bsq at 0x7f38b955f910>\n",
"<function AdvectionRK4_3D at 0x7f38ba1b2d40>\n",
"<function Biofouling at 0x7f38b955f880>\n",
"<function StokesDrift at 0x7f38b955f6d0>\n",
"<function NorthwardDrift at 0x7f38889ba440>\n",
"<function EastwardDrift at 0x7f38889ba290>\n",
"<function unbeaching at 0x7f38b955fa30>\n",
"<function checkThroughBathymetry at 0x7f38b955fac0>\n",
"<function checkErrorThroughSurface at 0x7f38b955fbe0>\n",
"<function periodicBC at 0x7f38b955fb50>\n",
"<function deleteParticle at 0x7f38b955fc70>\n"
"<function PolyTEOS10_bsq at 0x7f19fefcb910>\n",
"<function AdvectionRK4_3D at 0x7f19ffd2ad40>\n",
"<function Biofouling at 0x7f19fefcb880>\n",
"<function StokesDrift at 0x7f19fefcb6d0>\n",
"<function NorthwardDrift at 0x7f19d409a4d0>\n",
"<function EastwardDrift at 0x7f19d409a440>\n",
"<function unbeaching at 0x7f19fefcba30>\n",
"<function checkThroughBathymetry at 0x7f19fefcbac0>\n",
"<function checkErrorThroughSurface at 0x7f19fefcbbe0>\n",
"<function periodicBC at 0x7f19fefcbb50>\n",
"<function deleteParticle at 0x7f19fefcbc70>\n"
]
}
],
Expand Down Expand Up @@ -432,16 +432,16 @@
"output_type": "stream",
"text": [
"INFO: Output files are stored in example_Tunisia_fisheries_custom.zarr.\n",
"100%|██████████| 2592000.0/2592000.0 [15:12<00:00, 2839.68it/s]\n"
"100%|██████████| 2592000.0/2592000.0 [19:57<00:00, 2164.59it/s] \n"
]
}
],
"source": [
"# Create the particle file where output will be stored\n",
"pfile = pp.ParticleFile('example_Tunisia_fisheries_custom.zarr', pset, settings=settings, outputdt=dt_write)\n",
"pfile = pp.ParticleFile('example_Tunisia_fisheries_custom.zarr', pset, settings=settings, outputdt=outputdt)\n",
"\n",
"# Execute the simulation\n",
"pset.execute(kernels, runtime=runtime, dt=dt_timestep, output_file=pfile)"
"pset.execute(kernels, runtime=runtime, dt=dt, output_file=pfile)"
]
},
{
Expand Down
142 changes: 133 additions & 9 deletions docs/examples/example_initialisation_maps.ipynb

Large diffs are not rendered by default.

18 changes: 17 additions & 1 deletion docs/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,25 @@ Installation
conda install conda-forge::plasticparcels


Or downloaded from https://github.com/OceanParcels/PlasticParcels
Or downloaded from https://github.com/OceanParcels/plasticparcels


Required Data
^^^^^^^^^^^^^

``plasticparcels`` has been developed for use with data from the Copernicus Marine Service, and requires the following data to run:

* Hydrodynamic model data: `MOI GLO12 (psy4v3r1) <https://www.mercator-ocean.eu/en/solutions-expertise/accessing-digital-data/product-details/?offer=4217979b-2662-329a-907c-602fdc69c3a3&system=d35404e4-40d3-59d6-3608-581c9495d86a>`_
* Biogeochemical model data: `MOI BIO4 (biomer4v2r1) <https://www.mercator-ocean.eu/en/solutions-expertise/accessing-digital-data/product-details/?offer=8d0c01f3-81c7-0a59-0d06-602fdf63c5b6&system=dc40b324-7de7-0732-880b-5d9dcf7d344a>`_
* Wave data: `ECMWF ERA5 Wave <https://cds.climate.copernicus.eu/cdsapp#!/dataset/reanalysis-era5-single-levels>`_ (specifically, the variables ``mean_wave_period``, ``peak_wave_period``, ``u_component_stokes_drift``, and ``v_component_stokes_drift``.)
* Wind data: `ECMWF ERA5 Wind <https://cds.climate.copernicus.eu/cdsapp#!/dataset/reanalysis-era5-single-levels>`_ (specifically, the variables ``10m_u_component_of_wind`` and ``10m_v_component_of_wind``)

For the wind and wave data, we recommend using the `CDS API <https://cds.climate.copernicus.eu/api-how-to>`_.

To run the examples, you will need to update the data directories in settings ``.json`` files.

Just like the ``parcels`` framework, ``plasticparcels`` can be adapted to use other hydrodynamic, biogeochemical, wave, and atmospheric models. If you require assistance, please contact us through the [Discussions page on GitHub](https://github.com/OceanParcels/plasticparcels/discussions).

.. toctree::
:maxdepth: 2
:caption: Contents
Expand Down
10 changes: 5 additions & 5 deletions docs/initialisationmaps.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Description of algorithms for particle initialisation maps
Included in the `PlasticParcels` package are four particle initialisation maps, along with the algorithms to create them. These maps represent best estimates for plastic pollution emissions along coastlines [@Jambeck2015](http://dx.doi.org/10.1126/science.1260352), from river sources [@Meijer2021](http://dx.doi.org/10.1126/sciadv.aaz5803), in the open-ocean from fishing-related activities [@Kroodsma2018](http://dx.doi.org/10.1126/science.aao5646), as well as a current best estimate of buoyant plastic concentrations globally [@Kaandorp2023](http://dx.doi.org/10.1038/s41561-023-01216-0).
Included in the `plasticparcels` package are four particle initialisation maps, along with the algorithms to create them. These maps represent best estimates for plastic pollution emissions along coastlines [@Jambeck2015](http://dx.doi.org/10.1126/science.1260352), from river sources [@Meijer2021](http://dx.doi.org/10.1126/sciadv.aaz5803), in the open-ocean from fishing-related activities [@Kroodsma2018](http://dx.doi.org/10.1126/science.aao5646), as well as a current best estimate of buoyant plastic concentrations globally [@Kaandorp2023](http://dx.doi.org/10.1038/s41561-023-01216-0).
Each initialisation map, however, requires that particles be placed in ocean grid cells, so we also provide algorithms to generate these ocean masks too.

The code for these algorithims can be found in `plasticparcels/scripts/create_release_maps.py`. Below we describe each of the algorithms.
Expand All @@ -20,7 +20,7 @@ To generate a particle initialisation map of plastic pollution that enters the o
4. Create an array with the coastal model grid-cell and its associated area, the country name, continent name, region name, and subregion name from the shapefile, and the identified population density.
5. Combine all entries generated in Step 4.4. into one array.
6. Load the global mismanaged plastic waste data [@Jambeck2015](http://dx.doi.org/10.1126/science.1260352), and join it to the array generated in Step 5, by 'left joining' on country name$^*$. Create an additional column 'MPW_cell', which represents the mismanaged plastic waste across the grid cell, by multiplying the mismanaged plastic waste per kilogram per day with the population density and the grid-cell area.
7. Save the data into a `.csv` file, to be read and processed by `PlasticParcels`.
7. Save the data into a `.csv` file, to be read and processed by `plasticparcels`.


$^*$We pre-process the country names in the [@Jambeck2015](http://dx.doi.org/10.1126/science.1260352) data to account for small differences in the naming conventions of each country. We use $`r=50`$ km, and $`\phi`$ is chosen as the model grid width in degrees. A sample plot of the initialisation map is shown in Figure X **add link**.
Expand All @@ -36,7 +36,7 @@ To generate a particle initialisation map of plastic pollution that enters the o
1. Compute the distance from the emission source to the center of every coastal grid cell, and identify the closest coastal grid cell.
2. Compute the distance from the emission source to every country border point, and identify the closest country border point.
3. Create an array with the coastal model grid-cell, the country name, continent name, region name, and subregion name of the closest border point from the Natural Earth shapefile, and the associated emissions amount.
5. Save the data into a `.csv` file, to be read and processed by `PlasticParcels`.
5. Save the data into a `.csv` file, to be read and processed by `plasticparcels`.


## Open-sea fishing-related plastic emissions <a name="fishingrelease"></a>
Expand All @@ -51,7 +51,7 @@ To generate a particle initialisation map of plastic pollution emitted into the
6. Load (or generate) the coast mask file from the selected ocean model.
7. Find the closest ocean grid cell for each entry in the aggregated dataset from Step 5. using a KD-Tree approach.
8. Aggregate the data by summing the fishing hours over the following columns: country name, continent name, flag, gear type, date (month and year), ocean grid cell.
9. Save the data into a `.csv` file, to be read and processed by `PlasticParcels`.
9. Save the data into a `.csv` file, to be read and processed by `plasticparcels`.

$^*$We use the `fleet-daily-csvs-100-v2-2020` files, which are for the year 2020 only.

Expand All @@ -70,4 +70,4 @@ To generate a particle initialisation map of the current best-estimate of global
8. Interpolate the `concentration_mass_log10` to the ocean-grid cells, using an `RegularGridInterpolator` function from `scipy.interpolate`, with the grid and data being `(lon, lat)` and `concentration_mass_log10` from the `concentration_mass_log10` dataset.
9. For all valid concentrations identified in Step 8., identify the closest country boundary vertex from the Natural Earth shapefile.
10. Create an array with the ocean model cell, the interpolated plastic concentration amount (converting it into a mass insteaf of a `log10` mass), and the continent name, region name, subregion name, country name, and country flag from the Natural Earth shapefile.
11. Combine the arrays generated in Steps 6. and 10., and save the data as a `.csv` file, to be read and processed `PlasticParcels`.
11. Combine the arrays generated in Steps 6. and 10., and save the data as a `.csv` file, to be read and processed `plasticparcels`.
Binary file added docs/paper/example.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified docs/paper/initialisation_maps.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading