Skip to content

siddharthabishnu/Rotating_Shallow_Water_Verification_Suite

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rotating_Shallow_Water_Verification_Suite (RSWVS)

DOI

Overview

The RSWVS repository is dedicated to solving the rotating shallow water system of equations using object-oriented Python. It features: a. two types of spatial discretizations: i. a TRiSK-based mimetic finite volume method used in MPAS-Ocean; ii. a discontinuous Galerkin Spectral Element Method (DGSEM); and b. a variety of time-stepping methods, including: i. standard predictor-corrector and multi-step methods, such as Runge-Kutta and Adams-Bashforth methods; ii. methods popular in ocean modeling, such as leapfrog trapezoidal, leapfrog Adams-Moulton, forward-backward with RK2 feedback, and generalized forward-backward methods.

Verification Suite

The repository includes a verification suite of shallow water test cases for the barotropic solver of ocean models. These test cases are designed to verify the implementation of specific terms in the prognostic momentum and continuity equations, such as the linear pressure gradient term, the linear constant or variable-coefficient Coriolis and bathymetry terms, and the non-linear advection terms.

Convergence Studies

The spatial and temporal orders of accuracy can be verified by conducting convergence studies with refinement in: a. both space and time (for test cases equipped with exact solutions); b. only in space; and c. only in time.

Development and Testing Platform

RSWVS serves as an optimal platform for the development and verification of: a. new shallow water test cases; b. novel time-stepping methods to advance the barotropic equations of an ocean model.

Repository Structure

Rotating_Shallow_Water_Verification_Suite/
|-- meshes
|   |-- MPAS_Ocean_Shallow_Meshes
|-- src
|   |-- MPAS_Ocean_Shallow_Water
|   |-- DGSEM_Rotating_Shallow_Water
|-- tests
|   |-- MPAS_Ocean_Shallow_Water_Tests
|   |-- DGSEM_Rotating_Shallow_Water_Tests
|-- output
|   |-- MPAS_Ocean_Shallow_Water_Output
|   |-- DGSEM_Rotating_Shallow_Water_Output
|-- CITATION.cff
|-- LICENSE
|-- README.md

The src directory contains the source and visualization code. The tests directory house code for testing the functions in the scripts of the src directory. Each of the src, tests, and output directories contains two subdirectories corresponding to the two types of spatial discretizations: the TRiSK-based mimetic finite volume method and DGSEM. The MPAS_Ocean_Shallow_Water_Meshes subdirectory within the meshes directory should contain the planar hexagonal MPAS-Ocean mesh files for simulating the numerical solutions and conducting convergence studies. These mesh files being of considerable size, are not included within the Github repository. But the entire MPAS_Ocean_Shallow_Water_Meshes subdirectory can be downloaded from here. The output generated by the two types of spatial discretizations will be saved in the respective subdirectories within the output directory. Interested modelers can download sample output files and plots from here. These include plots of the exact solution and the numerical error of the various test cases at specific instants of time; and convergence plots of the L2 error norm with respect to the exact solution for refinement in both space and time, and convergence plots of the L2 norm of the difference in the numerical solution for refinement only in space and only in time.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages