The ideal tool for exploring global marine biogeochemical cycles.
Author JuliaOcean
21 Stars
Updated Last
2 Years Ago
Started In
May 2019


The ideal tool for exploring global marine biogeochemical cycles.

License: MIT

AIBECS (for Algebraic Implicit Biogeochemical Elemental Cycling System, pronounced like the cool ibex) is a Julia package that provides ocean biogeochemistry modellers with an easy-to-use interface for creating and running models of the ocean system.

AIBECS is a system because it allows you to choose some biogeochemical tracers, define their interactions, select an ocean circulation and Voilà! — your model is ready to run.

Getting started

If you are new to AIBECS, head over to the documentation and look for the tutorials. (You can also click on the big "Documentation" badge above.)


This package was developed to exploit linear-algebra tools and algorithms in Julia to efficiently simulate marine tracers. AIBECS represents global biogeochemical cycles with a discretized system of nonlinear partial differential equations that takes the generic form

(∂/∂𝑡 + 𝓣)x = G(x)

where x represents the model state variables, i.e., the marine tracer(s) concentration. For a single tracer, x can be interpreted as the 3D field of its concentration. In AIBECS, x is represented as a column vector.

The operator 𝓣 is a spatial differential operator that represents the transport of tracers. For example, for a single tracer transported by ocean circulation,

𝓣 = ∇ ⋅ (u + K∇)

represents the effects of advection and eddy-diffusion. (u is the 3D vector of the marine currents and K is a 3×3 diffusivity matrix.) Thus, 𝓣 acts on x such that 𝓣x is the flux divergence of that tracer. In AIBECS, 𝓣 is represented by matrices.

Lastly, G(x) represents the local sources minus sinks of each tracer. In AIBECS, G(x) is represented by functions of the tracer(s).

To simulate tracers using the AIBECS, you just need to define the transport operators 𝓣 and the net sources and sinks G. That's pretty much the whole concept!


If you use this package, please cite it.

If you use data provided by this package (like the ocean circulation from the OCIM), please cite them as well.

For convenience, all the references are available in BibTeX format in the CITATION.bib file.

Also, if you want to do research using the AIBECS, and you think I could help, do not hesitate to contact me directly (contacts on my website), I would be happy to contribute and collaborate!


The authors acknowledge funding from the Department of Energy grant DE-SC0016539 and from the National Science Foundation grant 1658380.