
Frank Giraldo

Distinguished Professor of Applied Mathematics
Naval Postgraduate School
Monterey, California 93943 USA
ESDG
Welcome to the ESDG page (under construction).
What's new with ESDG
ESDG is currently a collection of solvers rather than one unified code base, although the final goal is to make it just that -- a framework for solving various problems in fluid dynamics. ESDG is written in Julia and is fully GPU-capable. It is also designed to be fully differentiable.
Publications
The ESDG papers that have been published and/or submitted include these:
-
ESDG for non-conservative terms for 3D global atmospheric modeling [JCP].
-
GPU performance of the ESDG for 3D atmospheric model [arXiv].
Documentation
Documentation will be made available in the near future.
What is ESDG
The collection of solvers currently available include: space-time DG for simple flow problems, a 3D Euler solver, and a 3D hydrostatic ocean solver (multilayer shallow water equations).
What can ESDG be used for
The goal is to make ESDG usable for interesting problems in atmospheric and ocean modeling, with special emphasis on the ocean processes. The fully-differentiable capability of ESDG allows the construction of data assimilation and neural network models for developing a digital twin of the ocean.
What can ESDG do
The 3D Euler solvers are capable of running global atmospheric simulations (e.g., baroclinic instability) and LES simulations (e.g., rising thermal bubble). The 3D hydrostatic ocean model can run a series of tests including manufactured solutions to confirm the theoretical order of accuracy of the model. The ocean solver can also run balanced tests of internal wave formulation, the Stommel problem, as well as the double-gyre problem.
Numerical Methods in ESDG
As the name suggests, we use entropy-stable discontinuous Galerkin methods. ESDG also relies on both explicit and fully implicit time-integrators, in addition to space-time DG.
Who built ESDG
The main developer of this code is Henry Waterhouse (UC Santa Cruz PhD student), with some of the infrastructure developed by Maciek Waruszewski (now at Sandia), Jeremy Kozdon (now at NVIDIA), and Lucas Wilcox (at NPS). The goal is to make this work available within the Raven.jl framework of Lucas Wilcox.
Who funded ESDG
The ESDG atmospheric solver was developed with funding from Schmidt Futures and the National Science Foundation Division of Atmospheric and Geospace Sciences. The ocean solver is currently unfunded.
ESDG Development
The starting point for the ESDG model is available on Github under Raven.jl. Raven.jl contains a full 3D atmospheric solver that is GPU-capable but is not the solver used in our recent GPU paper on ESDG for the Euler equations (that solver will be released once the paper is accepted). Raven.jl also has modest tests for the ocean solver but the main solver under development is currently housed in a private Github repo and will be released once the first paper is accepted.