SPARKX: A Software Package for Analyzing Relativistic Kinematics in Collision Experiments
Nils Sass, Hendrik Roch, Niklas Götz, Renata Krupczak, Carl B. Rosenkvist
TL;DR
SPARKX provides a Python-based, modular framework for analyzing heavy-ion collision simulations, addressing the fragility and learning-curve issues of ad-hoc scripts and C++-heavy toolchains. It offers a class-based architecture with dedicated loaders for OSCAR2013 and JETSCAPE/X-SCAPE outputs, a rich set of observables (bulk yields, eccentricities, flow coefficients, and jets), and a clear three-step workflow from data loading to analysis. The paper details its SOLID-design, comprehensive testing, performance benchmarking against Rivet, and practical example applications, demonstrating improved reliability and reproducibility. It also outlines future enhancements, including binary IO, parallelization, and broader format support, aiming to accelerate and democratize relativistic kinematics studies in high-energy nuclear physics.
Abstract
SPARKX is an open-source Python package developed to analyze simulation data from heavy-ion collision experiments. By offering a comprehensive suite of tools, SPARKX simplifies data analysis workflows, supports multiple formats such as OSCAR2013, and integrates seamlessly with SMASH and JETSCAPE/X-SCAPE. This paper describes SPARKX's architecture, features, and applications and demonstrates its effectiveness through detailed examples and performance benchmarks. SPARKX enhances productivity and precision in relativistic kinematics studies.
