Section: New Results

PIC method for Vlasov equation

Parallel computing for PIC method

Participants: Y. Barsamian, A. Chargueraud, S. Hirstoaga, M. Mehrenberger

Particle-in-Cell (PIC) codes are widely used for plasma simulations. On recent multi-core hardware, performance of these codes is often limited by memory bandwidth. We describe a multi-core PIC algorithm that achieves close-to-minimal number of memory transfers with the main memory, while at the same time exploiting SIMD instructions for numerical computations and exhibiting a high degree of OpenMP-level parallelism [6]. Our algorithm keeps particles sorted by cell at every time step, and represents particles from a same cell using a linked list of fixed-capacity arrays, called chunks. Chunks support either sequential or atomic insertions, the latter being used to handle fast-moving particles. To validate our code, called Pic-Vert, we consider a 3d electrostatic Landau-damping simulation as well as a 2d3v transverse instability of magnetized electron holes. Performance results on a 24-core Intel Sky-lake hardware confirm the effectiveness of our algorithm, in particular its high throughput and its ability to cope with fast moving particles.

Two species Vlasov solver

Participants: Y. Barsamian, J. Bernier, S. Hirstoaga, M. Mehrenberger

Thanks to a classical first order dispersion analysis, we are able to check the validity of 1Dx1D two-species Vlasov-Poisson simulations. The extension to second order is performed and shown to be relevant for explaining further details. In order to validate multidimensional effects, we propose a 2Dx2D single species test problem that has true 2D effects coming from the sole second order dispersion analysis. Finally, we perform, in the same code, full 2Dx2D nonlinear two-species simulations with mass ratio around 0.01, and consider the mixing of semi-Lagrangian and Particle-in-Cell methods.