Julia in HEP

Fuente: arXiv
Saved in:
Bibliographic Details
Main Authors: Stewart, Graeme Andrew, Briceño, Alexander Moreno, Gras, Philippe, Hegner, Benedikt, Acosta, Uwe Hernandez, Gal, Tamas, Ling, Jerry, Mato, Pere, Mikhasenko, Mikhail, Schulz, Oliver, Skipsey, Sam
Format: Preprint
Published: 2025
Subjects:
Online Access:
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866909940478640128
author Stewart, Graeme Andrew
Briceño, Alexander Moreno
Gras, Philippe
Hegner, Benedikt
Acosta, Uwe Hernandez
Gal, Tamas
Ling, Jerry
Mato, Pere
Mikhasenko, Mikhail
Schulz, Oliver
Skipsey, Sam
author_facet Stewart, Graeme Andrew
Briceño, Alexander Moreno
Gras, Philippe
Hegner, Benedikt
Acosta, Uwe Hernandez
Gal, Tamas
Ling, Jerry
Mato, Pere
Mikhasenko, Mikhail
Schulz, Oliver
Skipsey, Sam
contents Julia is a mature general-purpose programming language, with a large ecosystem of libraries and more than 12000 third-party packages, which specifically targets scientific computing. As a language, Julia is as dynamic, interactive, and accessible as Python with NumPy, but achieves run-time performance on par with C/C++. In this paper, we describe the state of adoption of Julia in HEP, where momentum has been gathering over a number of years. HEP-oriented Julia packages can already, via UnROOT.jl, read HEP's major file formats, including TTree and RNTuple. Interfaces to some of HEP's major software packages, such as through Geant4.jl, are available too. Jet reconstruction algorithms in Julia show excellent performance. A number of full HEP analyses have been performed in Julia. We show how, as the support for HEP has matured, developments have benefited from Julia's core design choices, which makes reuse from and integration with other packages easy. In particular, libraries developed outside HEP for plotting, statistics, fitting, and scientific machine learning are extremely useful. We believe that the powerful combination of flexibility and speed, the wide selection of scientific programming tools, and support for all modern programming paradigms and tools, make Julia the ideal choice for a future language in HEP.
format Preprint
id arxiv_https___arxiv_org_abs_2503_08184
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Julia in HEP
Stewart, Graeme Andrew
Briceño, Alexander Moreno
Gras, Philippe
Hegner, Benedikt
Acosta, Uwe Hernandez
Gal, Tamas
Ling, Jerry
Mato, Pere
Mikhasenko, Mikhail
Schulz, Oliver
Skipsey, Sam
High Energy Physics - Experiment
Computational Physics
Julia is a mature general-purpose programming language, with a large ecosystem of libraries and more than 12000 third-party packages, which specifically targets scientific computing. As a language, Julia is as dynamic, interactive, and accessible as Python with NumPy, but achieves run-time performance on par with C/C++. In this paper, we describe the state of adoption of Julia in HEP, where momentum has been gathering over a number of years. HEP-oriented Julia packages can already, via UnROOT.jl, read HEP's major file formats, including TTree and RNTuple. Interfaces to some of HEP's major software packages, such as through Geant4.jl, are available too. Jet reconstruction algorithms in Julia show excellent performance. A number of full HEP analyses have been performed in Julia. We show how, as the support for HEP has matured, developments have benefited from Julia's core design choices, which makes reuse from and integration with other packages easy. In particular, libraries developed outside HEP for plotting, statistics, fitting, and scientific machine learning are extremely useful. We believe that the powerful combination of flexibility and speed, the wide selection of scientific programming tools, and support for all modern programming paradigms and tools, make Julia the ideal choice for a future language in HEP.
title Julia in HEP
topic High Energy Physics - Experiment
Computational Physics
url https://arxiv.org/abs/2503.08184