Highly parallel drift-kinetic semi-Lagrangian simulations in Python

Emily Bourne, Yaman Güçlü · ESAIM Proceedings and Surveys · 2024

This paper describes PyGyro, a parallel 4D drift-kinetic code which implements backward semi-Lagrangian methods combined with field-aligned interpolation and time-splitting. The purpose of PyGyro is twofold: to develop an advanced parallelisation scheme based on fast data transpositions, and to demonstrate the efficacy of a development workflow with code written in Python. Bottlenecks are accelerated with the Pyccel transpiler to achieve Fortran-like execution times. The resulting simulations are shown to correctly reproduce the expected physics and demonstrate good strong scaling, well beyond what was achieved by an existing Fortran code.

Read the paper · More papers on PaperTik