DiNuSphere - A Scalable Pseudospectral Code for Flows in Spherical Geometries
Chayut Teeraratkul-MS Defense-Advised by Hussein Aluie
Friday, April 12, 2019
The capability for accurate and efficient simulations of flows on the sphere is critical in the study of planetary flows, including atmospheric and oceanic circulation. The development of highly scalable codes that can run on $O(10^6)$ computing cores efficiently while also maintaining high accuracy is important to take advantage of petascale and future exascale computing systems. In this work, we develop a complete package comprising of a dynamical core which utilizes a pseudospectral scheme to simulate barotropic flows on a 2-dimensional spherical surface. Pseudospectral schemes are the "cream of the crop" amongst schemes for their accuracy and conservation properties, and are ideally suited for simulating complex and turbulent flows. Our code relies on two modes of parallelism: shared memory using OpenMP and distributed memory using MPI. In this thesis, we discuss the numerical method, including spatial discretization, spectral truncation, and parallelization schemes. We also present data on how our code scales with the number of processors, and test for accuracy and convergence. We carry out a suite of turbulence simulations which we use to provide support for a recent generalized filtering framework developed for the dynamical analysis of flows on the sphere. We show that the generalized filtering operation commutes with spatial derivatives, unlike straightforward filtering. We then discuss plans for future work to develop a fully 3-dimensional turbulence simulation employing this framework.