Skip to content

Commit

Permalink
address reviews v2
Browse files Browse the repository at this point in the history
  • Loading branch information
navidcy committed Mar 30, 2021
1 parent a2e0b7c commit 4699eea
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 4 deletions.
30 changes: 30 additions & 0 deletions paper/paper.bib
Original file line number Diff line number Diff line change
@@ -1,3 +1,33 @@
@article{Oceananigans,
title={Oceananigans.jl: {Fast} and friendly geophysical fluid dynamics on {GPUs}},
author={Ramadhan, Ali and Wagner, Gregory LeClaire and Hill, Chris and Campin, Jean-Michel and Churavy, Valentin and Besard, Tim and Souza, Andre and Edelman, Alan and Ferrari, Raffaele and Marshall, John},
journal={Journal of Open Source Software},
volume={5},
number={53},
pages={2018},
year={2020}
}

@article{MAOOAM,
author = {De Cruz, L. and Demaeyer, J. and Vannitsem, S.},
doi = {10.5194/gmd-9-2793-2016},
journal = {Geoscientific Model Development},
volume = {9},
number = {8},
pages = {2793--2808},
title = {The Modular Arbitrary-Order Ocean-Atmosphere Model: \textsc{maooam}~v1.0},
year = {2016}}

@article{qgs,
author = {Demaeyer, J. and De Cruz, L. and Vannitsem, S.},
doi = {10.21105/joss.02597},
journal = {Geoscientific Model Development},
volume = {5},
number = {56},
pages = {2597},
title = {qgs: {A} flexible {Python} framework of reduced-order multiscale climate models},
year = {2020}}

@software{FourierFlows,
author = {Constantinou, N. C. and
Wagner, L. C. and
Expand Down
12 changes: 8 additions & 4 deletions paper/paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,9 @@ pseudospectral numerical methods and leverage the framework provided by the `Fou

# Statement of need

Conceptual models in simple domain configurations often provide stepping stones for better understanding in geophysical and astrophysical settings: atmospheric, oceanic, climate, and planetary atmospheres. These conceptual models are used in research but also invalueable for grasping concepts in teaching. Moreover, the explosion of machine-learning applications in atmospheric and oceanic scieces advocates for the need of being able to solve partial differential equations on GPUs. Often people code up their own versions of solvers for the same partial differential equation.
Conceptual models in simple domains often provide stepping stones for better understanding in geophysical and astrophysical settings: atmospheric, oceanic, climate, and planetary atmospheres. These conceptual models are used in research but also are of great value for helping students in class to grasp on new concepts and phenomena. Oftentimes people end up coding their own versions of solvers for the same partial differential equation.

On top of the above-mentioned needs, the recent explosion of machine-learning applications in atmospheric and oceanic sciences advocates for the need that solvers for partial differential equations can be run on GPUs.

`GeophysicalFlows.jl` provides a collection of modules for solving sets of partial differential equations often used as conceptual models. These modules are continuously tested (unit tests and tests for the physics involved) and are well-documented. `GeophysicalFlows.jl` utilizes Julia's functionality and abstraction to enable all modules to run on CPUs or GPUs, and to provide a high level of customizability within modules. The abstractions allow simulations to be tailored for specific research questions, via the choice of parameters, domain properties, and schemes for damping, forcing, time-stepping etc. Simulations can easily be carried out on different computing architectures. Selection of the architecture on which equations are solved is done by providing the argument `CPU()` or `GPU()` during the construction of a particular problem.

Expand Down Expand Up @@ -80,9 +82,11 @@ packages are that `GeophysicalFlows.jl` can be run on GPUs or CPUs and leverages
package (`FourierFlows.jl`; which is continuously developed) to solve differential equations
and compute diagnostics, while `pyqg` can only be run on CPUs and uses a self-contained kernel.
Dedalus [@Burns2020] is Python package with an intuitive script-based interface that uses spectral
methods to solve general partial differential equations, such as the ones within `GeophysicalFlows.jl`.
There are also some other isolated codes/scripts in personal websites and in open-source public
repositories that have similar functionality as some `GeophysicalFlows.jl` modules.
methods to solve general partial differential equations, such as the ones within `GeophysicalFlows.jl`. There are also some other isolated codes/scripts in personal websites and in open-source public repositories that have similar functionality as some `GeophysicalFlows.jl` modules.

[@qgs]
[@MAOOAM]
[@Oceananigans]

`GeophysicalFlows.jl` can be used to investigate a variety of scientific research questions
thanks to its various modules and high customizability, and its ease-of-use makes it an ideal
Expand Down

0 comments on commit 4699eea

Please sign in to comment.