Skip to content

Commit

Permalink
adds most of @BrodiePearson's remarks
Browse files Browse the repository at this point in the history
  • Loading branch information
navidcy committed Apr 2, 2021
1 parent 7db7d38 commit 19ada9e
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 4 deletions.
3 changes: 2 additions & 1 deletion paper/paper.bib
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,8 @@ @article{Pearson2021
title = {Advective structure functions in anisotropic two-dimensional turbulence},
author = {Pearson, B. C. and Pearson, J. L. and Fox-Kemper, B.},
journal = {J. Fluid Mech.},
year = {Under Review}
year = {2021},
note = {in press}
}

@article{Karrasch2020,
Expand Down
6 changes: 3 additions & 3 deletions paper/paper.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ pseudospectral numerical methods and leverage the framework provided by the `Fou

# Statement of need

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.
Conceptual models in simple domains often provide stepping stones for better understanding geophysical and astrophysical systems, particularly the atmospheres and oceans of Earth and other planets. 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 equations for research or classwork. `GeophysicalFlows.jl` package is designed to be easily utilized and adaptable for a wide variety of both research and pedagogical purposes.

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.

Expand Down Expand Up @@ -81,8 +81,8 @@ the Python package `pyqg` [@pyqg]. Beyond their base language, the major differe
packages are that `GeophysicalFlows.jl` can be run on GPUs or CPUs and leverages a separate
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`. `Oceananigans.jl` [@Oceananigans] is not bad either. It also runs on GPUs, it allows for more variety of boundary conditions but is slower and does not have spectral accuracy. (Greg could you write a blurp (e.g. 1 sentence) comparing it with `GeophysicalFlows.jl`? Just delete my sentence all together if you like --- I just wrote up something simply as a placeholder.) The `MAOOAM` [@MAOOAM] package (and its Python implementation `qgs` [@qgs]) provides a reduced-order quasi-geostrophic coupled ocean–atmosphere model. These packages are fully spectral and thus allow to study how the solutions depend on the number of spectral-mode truncation in the ocean and atmosphere. The physics in `MAOOAM` and `qgs` share similarities with the `SingleLayerQG` and `MultiLayerQG` modules of `GeophysicalFlows.jl`; but neither `MAOOAM` nor `qgs` can run on GPUs. 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.
Dedalus [@Burns2020] is a 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`. `Oceananigans.jl` [@Oceananigans] is an incompressible fluid solver that can be run in 1-D, 2-D, and 3-D domains. Both Oceananigans.jl and GeophysicalFlows.jl contain modules for two-dimensional flow, but the other examples provided with Oceananigans focus on three-dimensional flows which are generally present at smaller scales than the dynamics of GeophysicalFlows.jl's other modules. The `MAOOAM` [@MAOOAM] package, and its expanded Python implementation `qgs` [@qgs], simulate two atmospheric layers with QG dynamics, above either land or an oceanic layer with reduced-gravity QG dynamics. The dynamics of individual layers have overlap with the `MultiLayerQG` and `SingleLayerQG` modules, however the layer configuration of `MOAAM` and `qgs` is specifically designed to study the dynamics of Earth's mid-latitude atmosphere. Neither `MAOOAM` nor `qgs` can run on GPUs. There exist also some other isolated codes/scripts in personal websites and in open-source public repositories that have similar functionality as some `GeophysicalFlows.jl` modules.

`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 19ada9e

Please sign in to comment.