Nata: Python package for post-processing and visualization of simulation output for particle-in-cell codes

ORAL

Abstract

In plasma science and technology, large-scale, massively parallel simulations play a prominent role, in scenarios as diverse as the design of future accelerators, the dynamics of astrophysical plasmas, secondary sources driven by intense lasers and their applications in biology and medicine, or nuclear fusion. Particle-in-cell (PIC) simulations play a fundamental role in plasma physics research. It is due to their ability to resolve the smallest and shortest plasma scales and to couple to other physics modules from first principles or phenomenologically (e.g., collisions, ionization processes, Quantum Electrodynamics). PIC simulations produce very high-fidelity output, which results in large amounts of data. The post-processing, analysis, and preparation of publication-quality plots from PIC simulation codes quickly becomes a cumbersome task. We present the open-source Python package nata, developed to provide a user-friendly and straightforward interface to read, process, and visualize output generated by PIC codes. It is designed to benefit from the vibrant scientific ecosystem of Python and be minimalistic yet rich in functionality, allowing users to adopt the workflow quickly. We describe the core concepts and capabilities of nata and illustrate them with real simulation data from multiples PIC codes. We discuss how the plasma physics community can use nata to ease their day-to-day workflow and contribute to the project. We also discuss potential uses for nata beyond PIC codes.

Authors

  • Anton Helm

    Instituto Superior Tecnico, Lisbon, Portugal

  • Fabio Cruz

    GoLP/Instituto de Plasmas e Fus\~{a}o Nuclear, Instituto Superior T\'{e}cnico, Universidade de Lisboa, 1049-001 Lisboa, Portugal, Instituto Superior Tecnico, Instituto Superior Tecnico, Lisbon, Portugal, Instituto Superior Técnico, Lisboa, Portugal, GoLP/IPFN, Instituto Superior Tecnico, Lisbon, Portugal

  • Ricardo Fonseca

    GoLP/Instituto de Plasmas e Fusão Nuclear, Instituto Superior Técnico, Universidade de Lisboa, Lisboa, Portugal, Instituto Superior Tecnico, Lisbon, Portugal

  • Luis O Silva

    GoLP/Instituto de Plasmas e Fusão Nuclear, Instituto Superior Técnico, Universidade de Lisboa, Lisboa, Portugal, Instituto Superior Tecnico, Lisbon, Portugal, Instituto Superior Tecnico, Instituto Superior Técnico, Lisboa, Portugal, GoLP/IPFN, Instituto Superior Tecnico, Lisbon, Portugal