Skip to content

Latest commit

 

History

History
49 lines (35 loc) · 2.5 KB

README.md

File metadata and controls

49 lines (35 loc) · 2.5 KB

PlanktonIndividuals.jl

Linux doc doc codecov DOI DOI

animation

PlanktonIndividuals.jl is a fast individual-based model written in Julia that can be run on both CPU and GPU. It simulates the life cycle of phytoplankton cells as Lagrangian particles in the ocean while nutrients are represented as Eulerian, density-based tracers using a 3rd order advection scheme. The model is used to simulate and interpret the temporal and spacial variations of phytoplankton cell densities and stoichiometry as well as growth and division behaviors induced by diel cycle and physical motions ranging from sub-mesoscale to large scale processes.

Installation

To add PlanktonIndividuals.jl to your Julia environment:

using Pkg; Pkg.add("PlanktonIndividuals.jl")

Use Examples

1. Simple Flow Fields In Two Dimensions

using PlanktonIndividuals
p = dirname(pathof(PlanktonIndividuals))
#include(joinpath(p,"../examples/vertical_2D_example.jl"))
include(joinpath(p,"../examples/horizontal_2D_example.jl"))

2. Closer Look Into One Grid Box

using PlanktonIndividuals
p = dirname(pathof(PlanktonIndividuals))
include(joinpath(p,"../examples/0D_experiment.jl"))

3. Turbulent Flow Fields In Three Dimensions

Here Oceananigans.jl is used to generate velocity fields and then use those to drive the individual-based model.

using PlanktonIndividuals
p = dirname(pathof(PlanktonIndividuals))
include(joinpath(p,"../examples/surface_mixing_3D_example.jl"))