aibecs.jl-ace601d6-714c-11e9-04e5-89b7fad23838
Last mirrored from https://github.com/briochemc/AIBECS.jl.git on 2019-11-18T17:49:06.457-05:00 by @UnofficialJuliaMirrorBot via Travis job 481.5 , triggered by Travis cron job on branch "master"
https://github.com/unofficialjuliamirror/aibecs.jl-ace601d6-714c-11e9-04e5-89b7fad23838
Science Score: 41.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 3 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.5%) to scientific vocabulary
Repository
Last mirrored from https://github.com/briochemc/AIBECS.jl.git on 2019-11-18T17:49:06.457-05:00 by @UnofficialJuliaMirrorBot via Travis job 481.5 , triggered by Travis cron job on branch "master"
Basic Info
- Host: GitHub
- Owner: UnofficialJuliaMirror
- License: other
- Language: Julia
- Default Branch: master
- Size: 5.46 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
ReadMe.md
AIBECS.jl
The ideal tool for exploring global marine biogeochemical cycles.
AIBECS (for Algebraic Implicit Biogeochemical Elemental Cycling System, pronounced like the cool ibex) is a Julia package that provides ocean biogeochmistry modelers with an easy-to-use interface for creating and running models of the ocean system.
AIBECS is a system because it allows you to chose some biogeochemical tracers, define their interactions, select an ocean circulation and Voilà! — your model is ready to run.
Getting started
Head over to the documentation and find your way to some simple Jupyter notebooks to get you started with AIBECS!
The Maths
AIBECS represents global biogeochemical cycles with a discretized system of nonlinear partial differential equations that takes the generic form
julia
∂x/∂t = F(x,p)
where x is a column vector of the model state variables (i.e., the tracers) and p is a vector of model parameters.
(For now, AIBECS only handles steady-state models, for which F does not depend on time.)
This package was developed for models to exploit techniques from linear algebra. A typical example is if the model is linear (affine), i.e., if
julia
F(x,p) = A * x + b
In that case, the model's steady state solution can be computed in a single use of "backslash", via s = A \ -b.
However, AIBECS also works for nonlinear problems, i.e., when F(x,p) is nonlinear, covering a much larger range of models!
In this case, AIBECS uses a state-of-the-art Newton-type solver to find the steady-state solution for you, which is much faster than time-stepping the system until it reaches equilibrium.
(See, e.g., the work of C.T. Kelley.)
Motivation
The idea for this package came about in part from the AWESOME OCIM by Seth John and others. The idea behind the AWESOME OCIM is that modeling simple global steady-state marine biogeochemical tracers should be an easy task. The AWSEOME OCIM provides a MATLAB GUI to model biogeochemical tracers embedded in a sparse "transport" matrix circulation, AKA the Ocean Circulation Inverse Model (OCIM) by Tim DeVries. (OCIM matrices and references can be found on Tim's website here.) However awesome it is, the AWESOME OCIM lacks some important features, which motivated this package. A non-exhaustive list of some of the features that we were looking for: - Use something else than MATLAB, which is not available to everyone. Julia provides the perfect free alternative, with better performance and better syntax. - Allow for nonlinear systems. OCIM users regularly model nonlinear mechanisms, and use Newton-type solvers to run simulations. The AIBECS makes it easy to model nonlinear mechanisms by providing solvers under the hood, so that you don't have to worry about them. Additionally, having these solvers in an open package that is thoroughly tested greatly reduces the chance of bugs! - Allow for coupling of tracers, which is fundamental to our understanding of global marine biogeochmical cycles. The AIBECS aims to provide the easiest possible interface for you to create multi-tracer models. In the tests (and soon in the documentation), should be some examples of multiple and nonlinear tracer model implementations. - Allow optimizations of model parameters. Arguably, using the fast simulations that are afforded by steady-state circulations should standardize objective optimization of model parameters constrained by available observational data (see, e.g., Pasquier and Holzer, 2017). With AIBECS, we developed a state-of-the-art autodifferentation tool, the F-1 method (see Pasquier et al., in preparation). It was developed specifically for this type of optimizations to run as fast as possible, i.e., it allows you to compute gradient and Hessians of an objective function as fast as if you had gone through the trouble of deriving each second-order derivative by hand! (In the future, monthly circulation matrices, see, e.g., the CYCLOCIM project, should be available from AIBECS) - Use other circulations than the output of the OCIM. AIBECS aims to provide a simple API for you to load any transport matrix for the ocean circulation, as long as the matrix creator made it publicly available. - Plotting publication-quality figures. Every modeler has reinvented the wheel when it comes to plotting. But it should not be this way. Eventually, AIBECS will provide users with a plotting interface that can be used to directly produce flawless vectorized figures for your publications.
We emphasize that this package is under active development, so that not all the features advertized above are implemented. (Plotting publication-quality figures will likely be a feature that takes time, considering the current state of plotting in Julia!)
References
Please cite us of you use this package. The references under bibtex format are available 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
Owner
- Name: Unofficial Julia Mirror
- Login: UnofficialJuliaMirror
- Kind: organization
- Website: https://github.com/UnofficialJuliaMirror/MirrorUpdater.jl
- Repositories: 3
- Profile: https://github.com/UnofficialJuliaMirror
Mirror of all registered Julia packages. Updated weekly by @UnofficialJuliaMirrorBot. See also: @UnofficialJuliaMirrorSnapshots.
Citation (CITATION.bib)
AIBECS ------------------------------------------
@misc{AIBECS.jl-2019,
author = {Beno\^{i}t Pasquier},
title = {{AIBECS}.jl: The ideal tool for simple global marine biogeochemistry models},
month = may,
year = 2019,
doi = {10.5281/zenodo.2864051},
}
OCIM0 -------------------------------------------
@article{Primeau_Holzer_DeVries_2013,
AUTHOR = "F. W. Primeau and M. Holzer and T. DeVries",
TITLE = {{S}outhern {O}cean nutrient trapping and the efficiency of the biological pump},
JOURNAL = {Journal of Geophysical Research},
VOLUME = "118",
doi = "10.1002/jgrc.20181",
PAGES = "2547-2564",
YEAR = "2013"
}
OCIM1 -------------------------------------------
@article{DeVries_2014,
author = {DeVries, Tim},
title = {The oceanic anthropogenic {CO}\textsubscript{2} sink: Storage, air-sea fluxes, and transports over the industrial era},
journal = {Global Biogeochemical Cycles},
volume = {28},
number = {7},
issn = {1944-9224},
doi = {10.1002/2013GB004739},
pages = {631--647},
year = {2014},
}
@article{DeVries_Primeau_2011,
TITLE="Dynamically and Observationally Constrained Estimates of Water-Mass Distributions and Ages in the Global Ocean",
AUTHOR = "DeVries, Tim and Primeau, Fran\c{c}ois",
JOURNAL = "Journal of Physical Oceanography",
YEAR = "2011",
pages = "2381--2401",
VOLUME = "41",
doi = "10.1175/JPO-D-10-05011.1",
}
Archer_etal_2000 3-box model -------------------------------------------
@article{Archer_etal_2000,
author = {Archer, David E. and Eshel, Gidon and Winguth, Arne and Broecker, Wallace and Pierrehumbert, Ray and Tobis, Michael and Jacob, Robert},
title = {Atmospheric pCO\textsupscript{2} sensitivity to the biological pump in the ocean},
journal = {Global Biogeochemical Cycles},
volume = {14},
number = {4},
pages = {1219--1230},
doi = {10.1029/1999GB001216},
year = {2000}
}
OCIM2 -------------------------------------------
POP -------------------------------------------
MITgcm -------------------------------------------