New scalable Direct Simulation Monte Carlo code available for modeling gas flows
New scalable Direct Simulation Monte Carlo code available for modeling gas flows lead image
Direct Simulation Monte Carlo (DSMC) is an algorithm used to model gas dynamics, such as simulating the re-entry aerodynamics of spacecraft. Compared to other methods, DSMC is capable of realistic simulations of gas flow because it considers physics such as thermal fluctuations and deviations from equilibrium. However, DSMC also has a high computational cost, which has prevented it from being used extensively.
Plimpton et al. present a new open-source DSMC code, called SPARTA, that allows DSMC to run efficiently on large parallel supercomputers. The code, which uses a rectilinear hierarchical grid that can be adapted up to 16 levels, can be scaled to any modern supercomputer platforms.
To demonstrate the performance of SPARTA, the authors modeled gas flow patterns around the Apollo capsule. They tested SPARTA with the largest DSMC models thus far, with 100 billion particles and billions of grid cells. SPARTA makes it possible to address new problems using DSMC, such as hydrodynamic instabilities and the effect of thermal non-equilibrium in turbulent flows. Author Michael Gallis said that their results imply that supercomputers can be used not only to make currently feasible calculations faster but also as tools of scientific discovery in their own right.
SPARTA has already garnered around 100 users and co-developers worldwide. The authors will continue collaborating with these international colleagues to improve the code. The National Aeronautics and Space Administration’s Jet Propulsion Laboratory is also currently using the code to explore the physics surrounding interplanetary flights.
Source: “Direct simulation Monte Carlo on petaflop supercomputers and beyond,” by S. J. Plimpton, S. G. Moore, A. Borner, A. K. Stagg, T. P. Koehler, J. R. Torczynski and M. A. Gallis, Physics of Fluids (2019). The article can be accessed at https://doi.org/10.1063/1.5108534