Vector: JIT-compilable mathematical manipulations of ragged Lorentz vectors
Mathematical manipulation of vectors is a crucial component of data analysis pipelines in high energy physics, enabling physicists to transform raw data into meaningful results that can be visualized.More specifically, high energy physicists work with 2D and 3D Euclidean vectors, and 4D Lorentz vectors that can be used as physical quantities, such as position, momentum, and forces.Given that high energy physics data are not uniform, vector manipulation frameworks or libraries are expected to work readily on non-uniform or ragged data, data with variable-sized rows (or a nested data structure with variable-sized entries); thus, the library is expected to perform operations on an entire ragged structure in minimum passes.Furthermore, optimizing memory usage and processing time has become essential with the increasing computational demands at the Large Hadron Collider (LHC), the world's largest particle accelerator.Vector is a Python library for creating and manipulating 2D, 3D, and Lorentz vectors, especially arrays of vectors, to solve common physics problems in a NumPy-like (Harris et al., 2020) way.The library enables physicists to operate on high energy physics data in a high level language without compromising speed.The library is already in use at LHC and is a part of frameworks, like Coffea (Gray et al., 2023), employed by physicists across multiple high energy physics experiments.
Authors
- Henry Schreiner (ORCID: https://orcid.org/0000-0002-7833-783X)
- E. Rodrigues (ORCID: https://orcid.org/0000-0003-2846-7625)
- J. Pivarski (ORCID: https://orcid.org/0000-0002-6649-343X)
- Saransh Chopra (ORCID: https://orcid.org/0000-0003-3046-7675)
- Jonas Nathanael Eschle (ORCID: https://orcid.org/0000-0002-7312-3699)
Institutions
- University of Liverpool (GB)
- Princeton University (US)
- University College London (GB)
- Syracuse University (US)
Publication Details
- Journal
- The Journal of Open Source Software
- Published
- 2025-05-23
- DOI
- https://doi.org/10.21105/joss.07791
- Primary Topic
- Computational Physics and Python Applications
- Type
- article
- Field-Weighted Citation Impact
- 0.00
Funders
- National Science Foundation