High performance high-order numerical methods: applications in ocean modeling
Doctor of Philosophy
This thesis presents high-order numerical methods for time-dependent simulations of oceanic wave propagation on modern many-core hardware architecture. Simulation of the waves such as tsunami, is challenging because of the varying fluid depths, propagation in many regions, requirement of high resolution near the shore, complex nonlinear wave phenomenon, and necessity of faster than real-time predictions. This thesis addresses issues related to stability, accuracy, and efficiency of the numerical simulation of these waves. For the simulation of tsunami waves, a two-dimensional nonlinear shallow water PDE model is considered. Discontinuous Galerkin (DG) methods on unstructured triangular meshes are used for the numerical solution of the model. These methods are not stable for nonlinear problems. To address the stability of these methods, a total variational bounded slope limiter in conjunction with a positive preserving scheme is developed, in particular for unstructured triangular meshes. Accuracy and stability of the methods are verified with test cases found in literature. These methods are also validated using 2004 Indian Ocean tsunami data to demonstrate faster than real-time simulation capability for practical problems using a commodity workstation. For accurate modeling of tsunami and ocean waves, in general, a three-dimensional hydrostatic incompressible Navier-Stokes model along with free surface conditions is considered. DG discretizations on unstructured prismatic elements are used for the numerical solutions. These prismatic elements are obtained by extruding the triangular meshes from ocean free surface to the ocean bottom. The governing equations are represented in a fixed sigma coordinate reference system. The limiting procedure, time-stepping method, accelerated implementations are adopted from two-dimensional formulations. The runtime performance of this three-dimensional method is compared with the performance of the two-dimensional shallow water model, to give an estimate of computational overhead in moving forward to three-dimensional models in practical ocean modeling applications. A GPU accelerated unsmooth aggregation algebraic method is developed. Algebraic multi-grid method is used as a linear solver in many engineering applications such as computational fluid dynamics. The developed method involves a setup stage and a solution stage. This method is parallelized for both stages unlike most of the methods that are parallelized only for the solution stage. Efficiency of the setup is crucial in these applications since the setup has to be performed many times. The efficiency of the method is demonstrated using a sequence of downsized problems. The computational kernels are expressed in an extensive multi-threading library OCCA. Using OCCA, the developed implementations achieve portability across various hardware architectures such as GPUs, CPUs, and multi-threading programming models OpenCL, CUDA, and OpenMP. The optimal performance of these kernels across various thread models and hardware architecture is compared.