cuPSS: a package for pseudo-spectral integration of stochastic PDEs

Fernando Caballero
2024-10-02
Abstract:A large part of modern research, especially in the broad field of complex systems, relies on the numerical integration of PDEs, with and without stochastic noise. This is usually done with eiher in-house made codes or external packages like MATLAB, Mathematica, Fenicsx, OpenFOAM, Dedalus, and others. These packages rarely offer a good combination of speed, generality, and the option to easily add stochasticity to the system, while in-house codes depend on certain expertise to obtain good performance, and are usually written for each specific use case, sacrificing modularity and reusability. This paper introduces a package written in CUDA C++, thus enabling by default gpu acceleration, that performs pseudo-spectral integration of generic stochastic PDEs in flat lattices in one, two and three dimensions. This manuscript describes the basic functionality of cuPSS, with an example and benchmarking, showing that cuPSS offers a considerable improvement in speed over other popular finite-difference and spectral solvers.
Computational Physics
What problem does this paper attempt to address?