*Result*: GPU-parallelized MATLAB software for atom-ion dynamics.

Title:
GPU-parallelized MATLAB software for atom-ion dynamics.
Authors:
Chowdhury, Saajid1 (AUTHOR) saajid.chowdhury@stonybrook.edu, Pérez-Ríos, Jesús1 (AUTHOR)
Source:
Computer Physics Communications. Apr2026, Vol. 321, pN.PAG-N.PAG. 1p.
Reviews & Products:
Database:
Academic Search Index

*Further Information*

*We present a MATLAB script, atomiongpu.m, which can use GPU parallelization to run several million independent simulations per day of a trapped ion interacting with a low-density cloud of atoms, calculating classical trajectories of a trapped ion and an atom starting far away. The script uses ode45gpu, which is our optimized and specialized implementation of the Runge-Kutta algorithm used in MATLAB's ODE solver ode45. We first discuss the physical system and show how ode45gpu can, on a CPU, solve it about 7x faster than MATLAB's ode45, leading to a 600x-3500x speedup when running a million trajectories using ode45gpu in parallel on a GPU compared to ode45 on a CPU. Then, we show how to easily modify the inputs to atomiongpu.m to account for different kinds of atoms, ions, atom-ion interactions, trap potentials, simulation parameters, initial conditions, and computational hardware, so that atomiongpu.m automatically finds the probability of complex formation, the distribution of observables such as the scattering angle and complex lifetime, and plots of specific trajectories. Program Title: atomiongpu.m CPC Library link to program files: https://doi.org/10.17632/sjw4hzw9jx.1 Developer's repository link: https://github.com/saajidchowdhury/supplementGPU Licensing provisions: CC0 1.0 Programming language: MATLAB R2023a, with Parallel Computing Toolbox installed Supplementary material: https://github.com/saajidchowdhury/supplementGPU Nature of problem: Simulate classical dynamics (Newton's laws) of an ion and atom, with up to several million different sets of initial conditions, store the final conditions and a few other scalar observables and their distributions, and plot specific trajectories. Solution method: Implementing the algorithm behind ode45, MATLAB's fourth/fifth-order adaptive-timestep Runge-Kutta method for propagating ordinary differential equations, we write a single, self-contained function, ode45gpu. Then, we use MATLAB's arrayfun to parallelize it on multiple CPUs or GPUs. Finally, we wrote the wrapper script atomiongpu.m for quickly and conveniently using ode45gpu. Additional comments: The source code for atomiongpu.m, ode45gpu, and figures can be found on the repository. [ABSTRACT FROM AUTHOR]*