002775922 001__ 2775922 002775922 005__ 20240829042447.0 002775922 0248_ $$aoai:cds.cern.ch:2775922$$pcerncds:FULLTEXT$$pcerncds:CERN:FULLTEXT$$pcerncds:CERN 002775922 0247_ $$2DOI$$9Springer$$a10.1007/s41781-021-00078-8 002775922 037__ $$9arXiv$$aarXiv:2106.13593$$cphysics.ins-det 002775922 035__ $$9arXiv$$aoai:arXiv.org:2106.13593 002775922 035__ $$9Inspire$$aoai:inspirehep.net:1870330$$d2024-08-28T01:30:56Z$$h2024-08-29T02:00:04Z$$mmarcxml$$ttrue$$uhttps://inspirehep.net/api/oai2d 002775922 035__ $$9Inspire$$a1870330 002775922 041__ $$aeng 002775922 100__ $$aAi, Xiaocong$$tGRID:grid.7683.a$$uDESY$$vDeutsches Elektronen Synchrotron, 22607 Hamburg, Germany 002775922 245__ $$9Springer$$aA Common Tracking Software Project 002775922 269__ $$c2021-06-25 002775922 260__ $$c2022-04-13 002775922 300__ $$a27 p 002775922 500__ $$9arXiv$$a27 pages 002775922 520__ $$9Springer$$aThe reconstruction of the trajectories of charged particles, or track reconstruction, is a key computational challenge for particle and nuclear physics experiments. While the tuning of track reconstruction algorithms can depend strongly on details of the detector geometry, the algorithms currently in use by experiments share many common features. At the same time, the intense environment of the High-Luminosity LHC accelerator and other future experiments is expected to put even greater computational stress on track reconstruction software, motivating the development of more performant algorithms. We present here A Common Tracking Software (ACTS) toolkit, which draws on the experience with track reconstruction algorithms in the ATLAS experiment and presents them in an experiment-independent and framework-independent toolkit. It provides a set of high-level track reconstruction tools which are agnostic to the details of the detection technologies and magnetic field configuration and tested for strict thread-safety to support multi-threaded event processing. We discuss the conceptual design and technical implementation of ACTS, selected applications and performance of ACTS, and the lessons learned. 002775922 520__ $$9arXiv$$aThe reconstruction of the trajectories of charged particles, or track reconstruction, is a key computational challenge for particle and nuclear physics experiments. While the tuning of track reconstruction algorithms can depend strongly on details of the detector geometry, the algorithms currently in use by experiments share many common features. At the same time, the intense environment of the High-Luminosity LHC accelerator and other future experiments is expected to put even greater computational stress on track reconstruction software, motivating the development of more performant algorithms. We present here A Common Tracking Software (ACTS) toolkit, which draws on the experience with track reconstruction algorithms in the ATLAS experiment and presents them in an experiment-independent and framework-independent toolkit. It provides a set of high-level track reconstruction tools which are agnostic to the details of the detection technologies and magnetic field configuration and tested for strict thread-safety to support multi-threaded event processing. We discuss the conceptual design and technical implementation of ACTS, selected applications and performance of ACTS, and the lessons learned. 002775922 540__ $$3preprint$$aCC BY 4.0$$uhttp://creativecommons.org/licenses/by/4.0/ 002775922 540__ $$3publication$$aCC-BY-4.0$$fCERN-RP : Nature$$uhttp://creativecommons.org/licenses/by/4.0/ 002775922 542__ $$3publication$$dThe Author(s)$$g2022 002775922 65017 $$2arXiv$$ahep-ex 002775922 65017 $$2SzGeCERN$$aParticle Physics - Experiment 002775922 65017 $$2arXiv$$aphysics.ins-det 002775922 65017 $$2SzGeCERN$$aDetectors and Experimental Techniques 002775922 693__ $$pCERN-EP-RDET 002775922 690C_ $$aCERN 002775922 690C_ $$aARTICLE 002775922 700__ $$aAllaire, Corentin$$tGRID:grid.9132.9$$uCERN$$vCERN, 1211 Geneva, Switzerland 002775922 700__ $$aCalace, Noemi$$tGRID:grid.9132.9$$uCERN$$vCERN, 1211 Geneva, Switzerland 002775922 700__ $$aCzirkos, Angéla$$tGRID:grid.5591.8$$uEotvos U.$$vEötvös Loránd University, 1053 Budapest, Hungary 002775922 700__ $$aElsing, Markus$$tGRID:grid.9132.9$$uCERN$$vCERN, 1211 Geneva, Switzerland 002775922 700__ $$aEne, Irina$$tGRID:grid.47840.3f$$uUC, Berkeley$$vDepartment of Physics, University of California, 94720 Berkeley, CA, USA 002775922 700__ $$aFarkas, Ralf$$tGRID:grid.10388.32$$uBonn U.$$vUniversität Bonn, 53012 Bonn, Germany 002775922 700__ $$aGagnon, Louis-Guillaume$$tGRID:grid.47840.3f$$uUC, Berkeley$$vDepartment of Physics, University of California, 94720 Berkeley, CA, USA 002775922 700__ $$aGarg, Rocky$$tGRID:grid.168010.e$$uStanford U.$$vStanford University, 94305 Stanford, CA, USA 002775922 700__ $$aGessinger, Paul$$tGRID:grid.9132.9$$uCERN$$vCERN, 1211 Geneva, Switzerland 002775922 700__ $$aGrasland, Hadrien$$tGRID:grid.508754.b$$uIJCLab, Orsay$$vUniversité Paris-Saclay, CNRS/IN2P3, IJCLab, 91405 Orsay, France 002775922 700__ $$aGray, Heather M.$$tGRID:grid.47840.3f$$tGRID:grid.184769.5$$uUC, Berkeley$$uLBNL, Berkeley$$vDepartment of Physics, University of California, 94720 Berkeley, CA, USA$$vLawrence Berkeley National Laboratory, 94720 Berkeley, CA, USA 002775922 700__ $$aGumpert, Christian$$tGRID:grid.5591.8$$uDresden, Tech. U.$$vEötvös Loránd University, 1053 Budapest, Hungary 002775922 700__ $$aHrdinka, Julia$$tGRID:grid.5591.8$$uTU Vienna$$vEötvös Loránd University, 1053 Budapest, Hungary 002775922 700__ $$aHuth, Benjamin$$tGRID:grid.7727.5$$uRegensburg U.$$vUniversität Regensburg, 93053 Regensburg, Germany 002775922 700__ $$aKiehn, Moritz$$tGRID:grid.9132.9$$uCERN$$vCERN, 1211 Geneva, Switzerland 002775922 700__ $$aKlimpel, Fabian$$tGRID:grid.9132.9$$tGRID:grid.6936.a$$uCERN$$vCERN, 1211 Geneva, Switzerland$$vTechnische Universität München, 80333 München, Germany 002775922 700__ $$aKolbinger, Bernadette$$tGRID:grid.9132.9$$uCERN$$vCERN, 1211 Geneva, Switzerland 002775922 700__ $$aKrasznahorkay, Attila$$tGRID:grid.9132.9$$uCERN$$vCERN, 1211 Geneva, Switzerland 002775922 700__ $$aLangenberg, Robert$$tGRID:grid.266684.8$$uMassachusetts U., Amherst$$vUniversity of Massachussets, 01003 Amherst, MA, USA 002775922 700__ $$aLeggett, Charles$$tGRID:grid.184769.5$$uLBNL, Berkeley$$vLawrence Berkeley National Laboratory, 94720 Berkeley, CA, USA 002775922 700__ $$aMania, Georgiana$$tGRID:grid.7683.a$$tGRID:grid.9026.d$$uHamburg U., IFI$$vDeutsches Elektronen Synchrotron, 22607 Hamburg, Germany$$vUniversität Hamburg, FB Informatik, 20148 Hamburg, Germany 002775922 700__ $$aMoyse, Edward$$tGRID:grid.266684.8$$uUMass Amherst$$vUniversity of Massachussets, 01003 Amherst, MA, USA 002775922 700__ $$aNiermann, Joana$$tGRID:grid.9132.9$$tGRID:grid.7450.6$$uCERN$$vCERN, 1211 Geneva, Switzerland$$vGeorg-August-Universität Göttingen, 37073 Göttingen, Germany 002775922 700__ $$aOsborn, Joseph D.$$tGRID:grid.135519.a$$uOak Ridge$$vOak Ridge National Laboratory, 37831 Oak Ridge, TN, USA 002775922 700__ $$aRousseau, David$$tGRID:grid.508754.b$$uIJCLab, Orsay$$vUniversité Paris-Saclay, CNRS/IN2P3, IJCLab, 91405 Orsay, France 002775922 700__ $$aSalzburger, Andreas$$jORCID:0000-0001-6004-3510$$tGRID:grid.9132.9$$uCERN$$vCERN, 1211 Geneva, Switzerland 002775922 700__ $$aSchlag, Bastian$$tGRID:grid.5802.f$$tGRID:grid.9132.9$$uCERN$$vInstitut für Physik, Johannes Gutenberg-Universität Mainz, 55128 Mainz, Germany$$vCERN, 1211 Geneva, Switzerland 002775922 700__ $$aTompkins, Lauren$$tGRID:grid.168010.e$$uStanford U.$$vStanford University, 94305 Stanford, CA, USA 002775922 700__ $$aYamazaki, Tomohiro$$tGRID:grid.47840.3f$$uUC, Berkeley$$vDepartment of Physics, University of California, 94720 Berkeley, CA, USA 002775922 700__ $$aYeo, Beomki$$tGRID:grid.47840.3f$$uUC, Berkeley$$vDepartment of Physics, University of California, 94720 Berkeley, CA, USA 002775922 700__ $$aZhang, Jin$$tGRID:grid.418741.f$$uBeijing, Inst. High Energy Phys.$$vInstitute of High Energy Physics, Chinese Academy of Sciences, 100 039 Beijing, China 002775922 773__ $$c8$$n1$$pComput. Softw. Big Sci.$$v6$$y2022 002775922 8564_ $$82309610$$s12517590$$uhttp://cds.cern.ch/record/2775922/files/2106.13593.pdf$$yFulltext 002775922 8564_ $$82309611$$s2058633$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_sphenix.png$$y00004 The geometry of the ATLAS ITk (\subref{fig:det_geometry_itk}), the PANDA silicon detector (\subref{fig:det_geometry_panda}) and the sPHENIX silicon tracking detectors (\subref{fig:det_geometry_sphenix}), implemented with \acts. Colors indicate different subsystems, in the top image, the High Granularity Timing Detector (HGTD)~\cite{CERN-LHCC-2020-007} is shown in orange. 002775922 8564_ $$82309612$$s2842021$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_ATLAS_ITk.png$$y00002 The geometry of the ATLAS ITk (\subref{fig:det_geometry_itk}), the PANDA silicon detector (\subref{fig:det_geometry_panda}) and the sPHENIX silicon tracking detectors (\subref{fig:det_geometry_sphenix}), implemented with \acts. Colors indicate different subsystems, in the top image, the High Granularity Timing Detector (HGTD)~\cite{CERN-LHCC-2020-007} is shown in orange. 002775922 8564_ $$82309613$$s8107$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_impl_bfieldbench.png$$y00001 Performance of the magnetic field lookup for a number of different scenarios. Results for the analytical solenoid field, and the interpolated magnetic field map are shown. Field queries at a fixed point, at a sequence of random points, and a sequence along a straight line are measured. Performance with and without field interpolation cell caching are shown. 002775922 8564_ $$82309614$$s9415$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_duplicationRate_vs_eta_ttbar.png$$y00013 The track reconstruction efficiency (top), fake rate (middle) and duplicate rate (bottom) for 1,000 $t\bar{t}$ events with \pu = 200 obtained using \acts CKF on the TrackML detector. The blue dots and orange triangles represent results using starting parameters based on truth track parameters and those estimated from seeds found the \acts seed finding algorithm, respectively. The truth particles used to calculate the track reconstruction efficiency are required to have $p_T>$ 1 \GeV and have nine measurements on the traversed detectors. The reconstructed tracks are required to have $p_T>$ 1 \GeV and have six measurements in the detectors. 002775922 8564_ $$82309615$$s415767$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_TrackML_layout.png$$y00010 Schematic layout of the TrackML detector showing the coverage of the pixel detector in blue, short strip detector in red and long strip detector in green. 002775922 8564_ $$82309616$$s92314$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_fit_perigee_singlemuon.png$$y00014 The pull distributions of the six bound track parameters, $d_0$, $z_0$, $\phi$, $\theta$, $\frac{q}{p}$, and $t$, as obtained with the KF on the TrackML detector. The blue dots are the obtained pull values and the orange lines are the fitted Gaussian curves. For each Gaussian fit, the fitted values (with negligible uncertainties) for the parameters mean ($\mu$) and standard deviation ($\sigma$) are shown in the legend. Truth-generated seeds are used for the KF. A sample of 100,000 single muons with 500 \MeV $<p_{T}<10$ \GeV and at least nine measurements on the detector is used. 002775922 8564_ $$82309617$$s56810$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_intro_cpu.png$$y00000 Estimated CPU resources (in MHS06~\cite{hepspec}) needed for the 2020 to 2032 time frame for both data and simulation processing for the ATLAS experiment. Three different scenarios considered by ATLAS are shown ranging from the baseline to that in which the aggressive R\&D program is successful (blue points). The common scenario agreed between the different experiments as a reference is shown with red triangles. The black lines indicate the amount of CPU that can be expected based on current budget models. From Ref.~\cite{Calafiura:2729668} 002775922 8564_ $$82309618$$s115732$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_itk_prop.png$$y00008 A projection of the magnetic field implemented with \acts for the ATLAS tracking system into the $x-y$ plane (\subref{fig:atlas_bfield_xy}). The strength of the magnetic field at each point is indicated in color. The $r-z$ coordinates of the intersections of propagated pion tracks with the ATLAS ITk detector elements, using the ATLAS magnetic field (\subref{fig:atlas_bfield_itk_prop}). Boundary intersections are shown in blue, while intersections with sensors are shown in orange. Green lines indicate a subset of extrapolated particle tracks. Grey points are the intermediate integration steps, required within a predefined tolerance threshold. 002775922 8564_ $$82309619$$s20050$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_fakerate_vs_eta_ttbar.png$$y00012 The track reconstruction efficiency (top), fake rate (middle) and duplicate rate (bottom) for 1,000 $t\bar{t}$ events with \pu = 200 obtained using \acts CKF on the TrackML detector. The blue dots and orange triangles represent results using starting parameters based on truth track parameters and those estimated from seeds found the \acts seed finding algorithm, respectively. The truth particles used to calculate the track reconstruction efficiency are required to have $p_T>$ 1 \GeV and have nine measurements on the traversed detectors. The reconstructed tracks are required to have $p_T>$ 1 \GeV and have six measurements in the detectors. 002775922 8564_ $$82309620$$s3303285$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_belle2.png$$y00005 Geometries of Belle~II (\subref{fig:det_geometry_belle2}) and FASER (\subref{fig:det_geometry_faser}) implemented in ACTS. Colors indicate the different subsystems. 002775922 8564_ $$82309621$$s9971$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_TrackFittingTime_vs_mu.png$$y00018 The CPU time of track fitting per event using \acts KF (blue dots) and combined track finding and track fitting (orange triangles) per event using the \acts CKF as a function of the \pu of the $t\bar{t}$ sample. Truth-generated seeds are used for both the KF and the CKF. Only simulated particles with $p_T>$ 500 \MeV and having at least nine measurements on the detector are considered. 002775922 8564_ $$82309622$$s9906$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_trackeff_vs_eta_ttbar.png$$y00011 The track reconstruction efficiency (top), fake rate (middle) and duplicate rate (bottom) for 1,000 $t\bar{t}$ events with \pu = 200 obtained using \acts CKF on the TrackML detector. The blue dots and orange triangles represent results using starting parameters based on truth track parameters and those estimated from seeds found the \acts seed finding algorithm, respectively. The truth particles used to calculate the track reconstruction efficiency are required to have $p_T>$ 1 \GeV and have nine measurements on the traversed detectors. The reconstructed tracks are required to have $p_T>$ 1 \GeV and have six measurements in the detectors. 002775922 8564_ $$82309623$$s16233$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_odd_mat.png$$y00009 Comparison of the mapped material obtained from \acts material mapping tool (orange line) and the \texttt{Geant4} material (blue line) as a function of $\eta$ for the Open Data Pixel Detector. The ratio of the material in ACTS to Geant4 is indicated in the panel below and the statistical uncertainty is indicated with the gray band. Agreement is within about 2\%, with excellent agreement seen in the central part of the detector. 002775922 8564_ $$82309624$$s1551241$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_panda.png$$y00003 The geometry of the ATLAS ITk (\subref{fig:det_geometry_itk}), the PANDA silicon detector (\subref{fig:det_geometry_panda}) and the sPHENIX silicon tracking detectors (\subref{fig:det_geometry_sphenix}), implemented with \acts. Colors indicate different subsystems, in the top image, the High Granularity Timing Detector (HGTD)~\cite{CERN-LHCC-2020-007} is shown in orange. 002775922 8564_ $$82309625$$s965052$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_faser.png$$y00006 Geometries of Belle~II (\subref{fig:det_geometry_belle2}) and FASER (\subref{fig:det_geometry_faser}) implemented in ACTS. Colors indicate the different subsystems. 002775922 8564_ $$82309626$$s11953$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_NRecoVsNTruthVtx.png$$y00015 Number of reconstructed primary vertices with the \acts AMVF for different numbers of true $pp$ collisions in simulated $t\bar{t}$ events. For reference, the gray dashed line indicates a $100\%$ vertex reconstruction efficiency and the blue dots indicate the vertex reconstruction efficiency given a detector acceptance of $|\eta|<2.5$ and $p_{T}>400$ \MeV 002775922 8564_ $$82309627$$s6973$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_CPU_util_HaswellInter_propagation.png$$y00016 The fraction of wall time during which different numbers of threads were running simultaneously while running track propagation through the TrackML detector. Either a static (blue) or contextual (orange) geometry is used for 100,000 events with 1,000 pions per event using multi-threads on a Cori-Haswell node. 002775922 8564_ $$82309628$$s34452$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_atlas_bfield_xy.png$$y00007 A projection of the magnetic field implemented with \acts for the ATLAS tracking system into the $x-y$ plane (\subref{fig:atlas_bfield_xy}). The strength of the magnetic field at each point is indicated in color. The $r-z$ coordinates of the intersections of propagated pion tracks with the ATLAS ITk detector elements, using the ATLAS magnetic field (\subref{fig:atlas_bfield_itk_prop}). Boundary intersections are shown in blue, while intersections with sensors are shown in orange. Green lines indicate a subset of extrapolated particle tracks. Grey points are the intermediate integration steps, required within a predefined tolerance threshold. 002775922 8564_ $$82309629$$s34556$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_PropagationTime_vs_pt.png$$y00017 The mean number of propagation steps (top), propagation time for 1,000 pions (middle) and mean propagation time per step (bottom) of the track parameter propagation as a function of the $p_T$ of the pions ($|\eta|<2.5$) with the array-like math implementation (blue dots), the main Eigen-based stepper (orange triangles) and the straight-line stepper (green stars). 002775922 8564_ $$82309630$$s9418$$uhttp://cds.cern.ch/record/2775922/files/acts_fig_appl_TrackFindingTime_vs_mu.png$$y00019 The average CPU time for seed finding (blue dots) per event, and combined track finding and track fitting (orange triangles) per event with \acts CKF using reconstructed seeds as a function of \pu of the $t\bar{t}$ sample. Only seeds with $p_T>$ 500 MeV are considered. 002775922 8564_ $$82362839$$s1950755$$uhttp://cds.cern.ch/record/2775922/files/document.pdf$$yFulltext 002775922 960__ $$a13 002775922 980__ $$aARTICLE