PICPANTHER: A simple, concise implementation of the relativistic moment implicit particle-in-cell method
A three-dimensional, parallelized implementation of the electromagnetic relativistic moment implicit particle-in-cell method in Cartesian geometry (Noguchi et al., 2007) is presented. Particular care was taken to keep the C++11 codebase simple, concise, and approachable. GMRES is used as a field sol...
Gespeichert in:
Veröffentlicht in: | Computer physics communications 2015-03, Vol.188, p.198-207 |
---|---|
Hauptverfasser: | , , , , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | A three-dimensional, parallelized implementation of the electromagnetic relativistic moment implicit particle-in-cell method in Cartesian geometry (Noguchi et al., 2007) is presented. Particular care was taken to keep the C++11 codebase simple, concise, and approachable. GMRES is used as a field solver and during the Newton–Krylov iteration of the particle pusher. Drifting Maxwellian problem setups are available while more complex simulations can be implemented easily. Several test runs are described and the code’s numerical and computational performance is examined. Weak scaling on the SuperMUC system is discussed and found suitable for large-scale production runs.
Program title: PICPANTHER
Catalogue identifier: AEVA_v1_0
Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AEVA_v1_0.html
Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland
Licensing provisions: Standard CPC licence, http://cpc.cs.qub.ac.uk/licence/licence.html
No. of lines in distributed program, including test data, etc.: 359567
No. of bytes in distributed program, including test data, etc.: 105206138
Distribution format: tar.gz
Programming language: C++11.
Computer: Program should work on any system with a modern C++11 Compiler (e.g. g++ in GCC 4.7 and later) and MPI, HDF5 implementations.
Operating system: Linux / Unix.
Has the code been vectorized or parallelized?: Parallelized using the Message Passing Interface, successfully tested on SuperMUC with good scaling behavior.
RAM: Variable, depending on simulation size, ≈2kiB per cell, 56 B per particle
Classification: 19.3.
External routines: Eigen3 (header files, http://eigen.tuxfamily.org, tested with versions 3.2.1, 3.2.2), MPI2 (e.g. OpenMPI, http://open-mpi.org, tested with version 1.8.1), HDF5 1.8 (http://hdfgroup.org/HDF5, tested with version 1.8.13)
Nature of problem:
Kinetic simulations of collisionless plasma mostly need to resolve the smallest scales in a plasma, limiting the problem domains that can be tackled. The Courant–Friedrichs–Lewy condition poses further problems. Explicit algorithms require large amounts of computational power to cope with these restrictions. Implementations of implicit algorithms, on the other hand, are very complex. Very few implicit codes are openly available and approachable. Fully relativistic, three-dimensional electromagnetic implicit PiC codes in particular are rare in general.
Solution method:
PICPANTHER implements the relativistic moment implicit particle |
---|---|
ISSN: | 0010-4655 1879-2944 |
DOI: | 10.1016/j.cpc.2014.11.010 |