Skip to content

Commit fb9a598

Browse files
authored
add citation
1 parent ddc37ce commit fb9a598

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

docs/joss/paper.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -33,18 +33,18 @@ Marine phytoplankton contributes ~50% of the total primary production on Earth f
3333

3434
The equations included in `PlanktonIndividuals.jl` to describe phytoplankton physiology are state of the art (\autoref{fig:phyto}) with the widely-used Droop model [@Droop1973] implemented for nutrient uptakes. The photosynthesis formulation by Geider et al [@geider1997dynamic] is also implemented for carbon fixation. Additionally, exudation and mixotrophy are also accounted for in the model [@wu2021modeling]. Both simulated phytoplankton cells and nutrient tracers are advected by the same velocity field provided externally. The growth rate and nutrient uptake rates of each simulated cell are decided by the nutrient availability, light intensity, and ambient temperature at the position of the cell. And in turn, the nutrient consumed or released by phytoplankton cells are added to (or subtracted from) the nutrient fields at the grid point the cells are in.
3535

36-
The simulations can be set up not only in a zero-dimensional domain (like lab experiments) but also in one-, two-, or three-dimensional domains. The external inputs required by the package include velocity fields, temperature fields, and surface photosynthetically active radiation (PAR) fields. Our package is able to use velocity and temperature fields provided by different fluid dynamic models (e.g. `Oceananigans.jl`, `MITgcm`, etc.) and observations. Two default parameter sets are inclued in the package, biogeochemical parameters of nutrient tracers, and phytoplankton physiological parameters for individual phytoplankton cells. These parameters can be varied to simulate different phytoplankton species and biogeochemistry. The outputs of `PlanktonIndividuals.jl` include time series of individual trajectories, cell density, biomass, and vital rates such as cell division rates, photosynthesis rate, and nutrient uptake rates (\autoref{fig:0D}).
36+
The simulations can be set up not only in a zero-dimensional domain (like lab experiments) but also in one-, two-, or three-dimensional domains. The external inputs required by the package include velocity fields, temperature fields, and surface photosynthetically active radiation (PAR) fields. Our package is able to use velocity and temperature fields provided by different fluid dynamic models (e.g., `Oceananigans.jl`, `MITgcm`) and observations. Two default parameter sets are inclued in the package, biogeochemical parameters of nutrient tracers, and phytoplankton physiological parameters for individual phytoplankton cells. These parameters can be varied to simulate different phytoplankton species and biogeochemistry. The outputs of `PlanktonIndividuals.jl` include time series of individual trajectories, cell density, biomass, and vital rates such as cell division rates, photosynthesis rate, and nutrient uptake rates (\autoref{fig:0D}).
3737

3838
![Model results of a zero-dimensional setup.\label{fig:0D}](0D_plot.png)
3939

4040
# Statement of need
41-
Phytoplankton models, like those incorporated in ecological and biogeochemical models, are essential tools to explore and understand phytoplankton life cycles, interactions between species, population dynamics, and community structures in various water bodies [e.g. lakes, coastal waters, and open ocean, @follows2007emergent; @geider1997dynamic]. Individual-based / Lagrangian models differ from Eulerian models in the way they represent heterogeneous populations like cells of different sizes, nutrient quotas, and life cycle stages [@hellweger2016advancing; @hellweger2014biogeographic; @clark2011individual].
41+
Phytoplankton models, like those incorporated in ecological and biogeochemical models, are essential tools to explore and understand phytoplankton life cycles, interactions between species, population dynamics, and community structures in various water bodies [e.g., lakes, coastal waters, and open ocean, @follows2007emergent; @geider1997dynamic]. Individual-based / Lagrangian models differ from Eulerian models in the way they represent heterogeneous populations like cells of different sizes, nutrient quotas, and life cycle stages [@hellweger2016advancing; @hellweger2014biogeographic; @clark2011individual].
4242

43-
The unique power of individual-based modeling lies in the ability to track the position, biomass, and physiological state of individual cells or plankton patches, as they move through space over time. Eulerian models in turn can only track the density of plankton biomass in “well-mixed” grids of simulated water bodies. Furthermore, individual-based models are able to introduce randomness in individuals which allows stochastic processes (e.g. cell division, grazing, death etc.) to reproduce the diversity found in real ecosystems.
43+
The unique power of individual-based modeling lies in the ability to track the position, biomass, and physiological state of individual cells or plankton patches, as they move through space over time. Eulerian models in turn can only track the density of plankton biomass in “well-mixed” grids of simulated water bodies. Furthermore, individual-based models are able to introduce randomness in individuals which allows stochastic processes (e.g., cell division, grazing, and death) to reproduce the diversity found in real ecosystems.
4444

4545
Due to computational limitations, previous microbial individual-based models could only simulate a limited number of individuals, with each individual representing cell populations rather than individual cells [@hellweger2016advancing]. In order to overcome this obstacle, `PlanktonIndividuals.jl` exploits the power of GPU which was first developed for video rendering but now offer extremely efficient, highly parallelized computing power. With GPU support, the simulations in `PlanktonIndividuals.jl` are sped up over 50 times compared with CPU simulations.
4646

47-
There are many software packages for individual-based modeling, both in Julia and other programming languages, aimed at different purposes. For example, `Netlogo` [@NetLogo1999] and `Agents.jl` [@Agents2021] provide generic agent-based frameworks -- with a focus on generality but lack of physical and biogeochemical equations, which are the core of `PlanktonIndividuals.jl`. In contrast, `oceanParcels` [@gmd-10-4175-2017] and `IndividualDisplacements.jl` [@Forget2021] focus on the Lagrangian simulation of individual displacements in the ocean and climate system. However, these packages mainly focus on simulation of passive particles that do not feed back on gridded variables. In addition, they do not include detailed equations of phytoplankton physiology and biochemistry.
47+
There are many software packages for individual-based modeling, both in Julia and other programming languages, aimed at different purposes. For example, `Netlogo` [@NetLogo1999] and `Agents.jl` [@Agents2022; @Agents2019] provide generic agent-based frameworks -- with a focus on generality but lack of physical and biogeochemical equations, which are the core of `PlanktonIndividuals.jl`. In contrast, `oceanParcels` [@gmd-10-4175-2017] and `IndividualDisplacements.jl` [@Forget2021] focus on the Lagrangian simulation of individual displacements in the ocean and climate system. However, these packages mainly focus on simulation of passive particles that do not feed back on gridded variables. In addition, they do not include detailed equations of phytoplankton physiology and biochemistry.
4848

4949
Our package is unique in the way that it is tailored to the analysis of marine ecosystems across a wide range of scales using HPC systems. To this end, `PlanktonIndividuals.jl` provides a comprehensive description of phytoplankton physiology and biogeochemistry, written in a fast language, Julia, and with GPU support. It further innovates in combining the Eulerian and Lagrangian perspectives. Plankton individuals (Lagrangian) indeed have two-way interactions with gridded nutrient fields (Eulerian) that are advected by the same flow fields (in one-, two-, or three-dimensions) in our package.
5050

0 commit comments

Comments
 (0)