Skip to content

Commit

Permalink
JOSS paper (#87)
Browse files Browse the repository at this point in the history
* JOSS paper

* Fix tests (updated WOA API)

* Fix SciML API (no Val{:jac})

* Fix #88
  • Loading branch information
briochemc authored Dec 10, 2021
1 parent f3fb682 commit 382b4dd
Show file tree
Hide file tree
Showing 21 changed files with 190 additions and 92 deletions.
6 changes: 3 additions & 3 deletions Project.toml
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
name = "AIBECS"
uuid = "ace601d6-714c-11e9-04e5-89b7fad23838"
authors = ["Benoit Pasquier <[email protected]>"]
version = "0.11.0"
version = "0.11.1"

[deps]
Bijectors = "76274a88-744f-5084-9051-94815aaf08c4"
CodecZlib = "944b1d66-785c-5afd-91f1-9de20f533193"
DataDeps = "124859b0-ceae-595e-8997-d05f6a7a8dfe"
DataFrames = "a93c6f00-e57d-5684-b7b6-d8193f3e46c0"
Dates = "ade2ca70-3891-5945-98fb-dc099432e06a"
DiffEqBase = "2b5f629d-d688-5b77-993f-72d75c75574e"
Distances = "b4f34e82-e78d-54a5-968a-f98e89d6e8f7"
Distributions = "31c24e10-a181-5473-b8eb-7969acd0382f"
Downloads = "f43a241f-c20a-4ad4-852c-f6b1247861c6"
Expand All @@ -27,6 +26,7 @@ OceanGrids = "cfe838f4-859f-11e9-2ea1-df7d4e7c3537"
Printf = "de0858da-6303-5e67-8744-51eddeeeb8d7"
RecipesBase = "3cdcf5f2-1ef4-517c-9805-6587b60abb01"
Reexport = "189a3867-3050-52da-a836-e630ba90ab69"
SciMLBase = "0bca4576-84f4-4d90-8ffe-ffa030f20462"
Shapefile = "8e980c4a-a4fe-5da2-b3a7-4b4b0353a2f4"
SparseArrays = "2f01184e-e22b-5df5-ae63-d93ebab69eaf"
StringDistances = "88034a9c-02f8-509d-84a9-84ec65e18404"
Expand All @@ -40,7 +40,6 @@ Bijectors = "0.8, 0.9"
CodecZlib = "0.7"
DataDeps = "0.7"
DataFrames = "0.20, 0.21, 0.22, 1.0"
DiffEqBase = "6"
Distances = "0.9, 0.10"
Distributions = "0.23, 0.24, 0.25"
FieldMetadata = "0.3"
Expand All @@ -55,6 +54,7 @@ NearestNeighbors = "0.4"
OceanGrids = "0.4"
RecipesBase = "1"
Reexport = "0.2, 1.0"
SciMLBase = "1"
Shapefile = "0.6, 0.7"
StringDistances = "0.10, 0.11"
UnPack = "1"
Expand Down
5 changes: 5 additions & 0 deletions docs/lit/howtos/1_parameters.jl
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@
#md # [![](https://mybinder.org/badge_logo.svg)](@__BINDER_ROOT_URL__/notebooks/1_parameters.ipynb)
#md # [![](https://img.shields.io/badge/show-nbviewer-579ACA.svg)](@__NBVIEWER_ROOT_URL__/notebooks/1_parameters.ipynb)

#md # !!! note
#md # All the AIBECS tutorials and how-to guides are available as Jupyter notebooks.
#md # You can view them with [nbviewer](https://nbviewer.jupyter.org/)or execute them online with [binder](https://mybinder.org/) by clicking on the badges above!
#md # (Note that binder can be slow to launch and its memory caps can be a problem when running.)

# Here we will describe the AIBECS interface.
# This guide will take you through some examples of setting up model parameters.

Expand Down
4 changes: 4 additions & 0 deletions docs/lit/howtos/2_plot.jl
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@
#md # [![](https://mybinder.org/badge_logo.svg)](@__BINDER_ROOT_URL__/notebooks/2_plot.ipynb)
#md # [![](https://img.shields.io/badge/show-nbviewer-579ACA.svg)](@__NBVIEWER_ROOT_URL__/notebooks/2_plot.ipynb)

#md # !!! note
#md # All the AIBECS tutorials and how-to guides are available as Jupyter notebooks.
#md # You can view them with [nbviewer](https://nbviewer.jupyter.org/)or execute them online with [binder](https://mybinder.org/) by clicking on the badges above!
#md # (Note that binder can be slow to launch and its memory caps can be a problem when running.)

# This guide is organized as follows
# - [Horizontal maps](@ref horizontal-plots)
Expand Down
4 changes: 4 additions & 0 deletions docs/lit/howtos/3_cruiseplot.jl
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,10 @@
#md # [![](https://mybinder.org/badge_logo.svg)](@__BINDER_ROOT_URL__/notebooks/3_cruiseplot.ipynb)
#md # [![](https://img.shields.io/badge/show-nbviewer-579ACA.svg)](@__NBVIEWER_ROOT_URL__/notebooks/3_cruiseplot.ipynb)

#md # !!! note
#md # All the AIBECS tutorials and how-to guides are available as Jupyter notebooks.
#md # You can view them with [nbviewer](https://nbviewer.jupyter.org/)or execute them online with [binder](https://mybinder.org/) by clicking on the badges above!
#md # (Note that binder can be slow to launch and its memory caps can be a problem when running.)

# This guide follows the [basic plotting guide](@ref plots) and its goal is to plot data related to oceanographic observations from cruise expeditions.
# In this walkthrough, we will
Expand Down
5 changes: 5 additions & 0 deletions docs/lit/howtos/4_fluxes.jl
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@
#md # [![](https://mybinder.org/badge_logo.svg)](@__BINDER_ROOT_URL__/notebooks/4_fluxes.ipynb)
#md # [![](https://img.shields.io/badge/show-nbviewer-579ACA.svg)](@__NBVIEWER_ROOT_URL__/notebooks/4_fluxes.ipynb)

#md # !!! note
#md # All the AIBECS tutorials and how-to guides are available as Jupyter notebooks.
#md # You can view them with [nbviewer](https://nbviewer.jupyter.org/)or execute them online with [binder](https://mybinder.org/) by clicking on the badges above!
#md # (Note that binder can be slow to launch and its memory caps can be a problem when running.)

# This will take you through the process of extracting flux information from a given transport operator.
# It is split into 3 parts
# 1. [Figure out the stencil of the operator](@ref operatorstencil)
Expand Down
5 changes: 3 additions & 2 deletions docs/lit/tutorials/1_ideal_age.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@

#md # !!! note
#md # All the AIBECS tutorials and how-to guides are available as Jupyter notebooks.
#md # You can execute them online with [binder](https://mybinder.org/) or just view them with [nbviewer](https://nbviewer.jupyter.org/) by clicking on the badges above!
#md # You can view them with [nbviewer](https://nbviewer.jupyter.org/)or execute them online with [binder](https://mybinder.org/) by clicking on the badges above!
#md # (Note that binder can be slow to launch and its memory caps can be a problem when running.)

# The tracer equation for the ideal age is
#
Expand Down Expand Up @@ -86,7 +87,7 @@ F = AIBECSFunction(TOCIM2, G)

# Now that `F` and `p` are defined, we are going to solve for the steady-state.
# But first, we must create a `SteadyStateProblem` object that contains `F`, `p`, and an initial guess `x_init` for the age.
# (`SteadyStateProblem` comes from [DiffEqBase](https://github.com/JuliaDiffEq/DiffEqBase.jl).)
# (`SteadyStateProblem` comes from [SciMLBase](https://github.com/JuliaDiffEq/SciMLBase.jl).)

# Let's make a vector of 0's for our initial guess.

Expand Down
5 changes: 5 additions & 0 deletions docs/lit/tutorials/2_radiocarbon.jl
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@
#md # [![](https://mybinder.org/badge_logo.svg)](@__BINDER_ROOT_URL__/notebooks/2_radiocarbon.ipynb)
#md # [![](https://img.shields.io/badge/show-nbviewer-579ACA.svg)](@__NBVIEWER_ROOT_URL__/notebooks/2_radiocarbon.ipynb)

#md # !!! note
#md # All the AIBECS tutorials and how-to guides are available as Jupyter notebooks.
#md # You can view them with [nbviewer](https://nbviewer.jupyter.org/)or execute them online with [binder](https://mybinder.org/) by clicking on the badges above!
#md # (Note that binder can be slow to launch and its memory caps can be a problem when running.)

# In this tutorial, we will simulate the radiocarbon age using the AIBECS by
# 1. defining the transport `T(p)` and the sources and sinks `G(x,p)`,
# 1. defining the parameters `p`,
Expand Down
5 changes: 5 additions & 0 deletions docs/lit/tutorials/3_Pmodel.jl
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@
#md # [![](https://mybinder.org/badge_logo.svg)](@__BINDER_ROOT_URL__/notebooks/3_Pmodel.ipynb)
#md # [![](https://img.shields.io/badge/show-nbviewer-579ACA.svg)](@__NBVIEWER_ROOT_URL__/notebooks/3_Pmodel.ipynb)

#md # !!! note
#md # All the AIBECS tutorials and how-to guides are available as Jupyter notebooks.
#md # You can view them with [nbviewer](https://nbviewer.jupyter.org/)or execute them online with [binder](https://mybinder.org/) by clicking on the badges above!
#md # (Note that binder can be slow to launch and its memory caps can be a problem when running.)

# In this tutorial we will explicitly simulate 2 tracers whose distributions control and feed back on each other.

# We consider a simple model for the cycling of phosphorus with 2 state variables consisting of phosphate (PO₄) AKA dissolved inorganic phosphorus (DIP) and particulate organic phosphorus (POP).
Expand Down
5 changes: 5 additions & 0 deletions docs/lit/tutorials/4_dustmodel.jl
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@
#md # [![](https://mybinder.org/badge_logo.svg)](@__BINDER_ROOT_URL__/notebooks/4_dustmodel.ipynb)
#md # [![](https://img.shields.io/badge/show-nbviewer-579ACA.svg)](@__NBVIEWER_ROOT_URL__/notebooks/4_dustmodel.ipynb)

#md # !!! note
#md # All the AIBECS tutorials and how-to guides are available as Jupyter notebooks.
#md # You can view them with [nbviewer](https://nbviewer.jupyter.org/)or execute them online with [binder](https://mybinder.org/) by clicking on the badges above!
#md # (Note that binder can be slow to launch and its memory caps can be a problem when running.)

# In this tutorial we will simulate particles of dust that graviationally settle.
# 2D maps of dust deposition are available from within the AIBECS.
# To use these, we will convert them into sources in the top layer of the model grid.
Expand Down
5 changes: 5 additions & 0 deletions docs/lit/tutorials/5_river_discharge.jl
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@
#md # [![](https://mybinder.org/badge_logo.svg)](@__BINDER_ROOT_URL__/notebooks/5_river_discharge.ipynb)
#md # [![](https://img.shields.io/badge/show-nbviewer-579ACA.svg)](@__NBVIEWER_ROOT_URL__/notebooks/5_river_discharge.ipynb)

#md # !!! note
#md # All the AIBECS tutorials and how-to guides are available as Jupyter notebooks.
#md # You can view them with [nbviewer](https://nbviewer.jupyter.org/)or execute them online with [binder](https://mybinder.org/) by clicking on the badges above!
#md # (Note that binder can be slow to launch and its memory caps can be a problem when running.)

# In this tutorial we will simulate a fictitious radioactive tracer that is injected into the ocean by the 200 largest rivers (by estimated discharge).
# The 200 major rivers dataset from [*Dai and Trenberth* (2002)](https://rda.ucar.edu/datasets/ds551.0/) is available from within the AIBECS.
# Once "born", our ficitious tracer decays with a parameter timescale $\tau$ as it flows through ocean basins.
Expand Down
5 changes: 5 additions & 0 deletions docs/lit/tutorials/6_groundwater_discharge.jl
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@
#md # [![](https://mybinder.org/badge_logo.svg)](@__BINDER_ROOT_URL__/notebooks/6_groundwater_discharge.ipynb)
#md # [![](https://img.shields.io/badge/show-nbviewer-579ACA.svg)](@__NBVIEWER_ROOT_URL__/notebooks/6_groundwater_discharge.ipynb)

#md # !!! note
#md # All the AIBECS tutorials and how-to guides are available as Jupyter notebooks.
#md # You can view them with [nbviewer](https://nbviewer.jupyter.org/)or execute them online with [binder](https://mybinder.org/) by clicking on the badges above!
#md # (Note that binder can be slow to launch and its memory caps can be a problem when running.)

#md # !!! note
#md # This tutorial is very similar to the [river discharge notebook](@id river-discharge)

Expand Down
Loading

2 comments on commit 382b4dd

@briochemc
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@JuliaRegistrator
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Registration pull request created: JuliaRegistries/General/50287

After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.

This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:

git tag -a v0.11.1 -m "<description of version>" 382b4dda563e85c810b9c1ca91149c24eb5d6cac
git push origin v0.11.1

Please sign in to comment.