DGCOM at a Glance

 
 

What is DGCOM?


DGCOM is a flexible modeling environment for solving the 2D shallow water equations on a plane. DGCOM can read unstructured triangular grids produced off-line by grid generators and so is very general. Once the grid, along with the corresponding boundary conditions, are read in, DGCOM is able to run the simulation. Currently, DGCOM is a serial code but a CUDA implementation of the model is currently underway. DGCOM is written in modern Fortran in a modular fashion but also uses C interfaces to CUDA. The goal is to produce a model that is capable to run on a variety of platforms.



Who is Developing NUMA?


DGCOM is being developed by the Department of Applied Mathematics of the Naval Postgraduate

School. DGCOM is funded by the Office of Naval Research Computational Mathematics program.



DGCOM Equations


DGCOM uses the conservative form of the shallow water equations. In addition, it includes terms for the bathymetry, Coriolis, bottom friction, and viscosity if needed. In addition, in order to couple DGCOM with real wind data for simulating storm-surges, DGCOM is equipped with a term for the wind stresses. In addition, DGCOM uses 1) reflecting boundary conditions, 2) non-reflecting boundary conditions, and/or

3) wetting and drying boundary conditions at the interface between wet and dry elements.



DGCOM Spatial Discretization


DGCOM uses discontinuous Galerkin (DG) methods for approximating the spatial differential operators. DG is high-order accurate, local, and highly efficient on massively parallel computers. To add geometric flexibility to the model, DGCOM uses triangle-based DG methods - the basis functions are Lagrange polynomials produced from the Proriol-Koornwinder-Dubiner modal set.



DGCOM Time-Integration


DGCOM contains a suite of time-integrators including:

  1. 1)explicit Runge-Kutta Methods (SSP and non-SSP methods)

  2. 2)Implicit-Explicit (IMEX) Backward Difference Formula (order 2)

  3. 3)IMEX Additive Runge-Kutta Methods (orders 2 through 5)



DGCOM Grids


DGCOM can use any unstructured triangular grid. While grid conformity is not a requirement of DG methods, DGCOM currently only allows conforming grids. In the future, non-conforming grids will be included.


DGCOM Software Development


DGCOM is written in Fortran 95 in a modular fashion. DGCOM is stored using the GIT, a distributed version control system.