Package for running track reconstructions using the ACTS library. This is not tied to a given geometry, but has been developed for the Muon Collider detector model v1.
ACTSTracking is distributed under the GPLv3 License.
Copyright (C), ACTSTracking Authors
ACTSTracking is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License long with this program. If not, see http://www.gnu.org/licenses/.
The ACTSTracking package contains several resource files (tracking geometry, material description). Their path is given to processors via configuration parameters (ie TGeoFile
). If the path is relative, then the following locations are search for it:
- current working directory
ACTSTRACKING_SOURCEDIR = ${CMAKE_SOURCE_DIR}
, aka source code locationACTSTRACKING_DATADIR = ${CMAKE_INSTALL_FULL_DATADIR}/ACTSTracking}
, aka result ofmake install
See examples/
for steering files demonstrating the usage of the provided processors.
Base processor implementing some of the common actions. This processor is not to be used directly. It is designed to be inherited by other processors that implement the specific track reconstruction algorithm
The responsibilities include:
- Load tracking detector geometry and material.
- Create magnetic field description.
Parameter | Description |
---|---|
MatFile | Path to the material description json file. Can be empty. |
TGeoFile | Path to the tracker geometry file. |
The tracking geometry is loaded from a TGeoManager
stored inside a ROOT file at parameter TGeoFile
. The building of the ACTS volumes is done using the ACTS TGeo plugin. The builder parameters are currently hardcoded for the MuColl_v1 detector model.
Material is optionally loaded using by specifying the MatFile
parameter. It should corresponds to the JSON file generated using the ACTS material mapping tools.
Files corresponding to the MuColl_v1 detector model are available inside data/
.
A constant magnetic field is assumed. The strength is taken from the loaded DD4hep detector description.
Processor that implements truth tracking. Pseudo-tracks are formed by finding hits associated to a charged MC particles. The pseudo-tracks are then fit using a Kalman Filter. This processor is equivalent to TruthTrackFinder
.
Parameter | Description |
---|---|
TrackerHitCollectionNames | Name of the TrackerHit input collections |
SimTrackerHitRelCollectionNames | Name of TrackerHit to SimTrackerHit relation collections |
MCParticleCollectionName | Name of the MCParticle input collection |
TrackCollectionName | Name of track output collection |
Processor that implements truth-seeded Combinatorial Kalman Filter. Seeds for the CKF algorithm are formed by using the kinematics of charged MC particles, with vertex set at (0,0,0).
Parameter | Description |
---|---|
TrackerHitCollectionNames | Name of the TrackerHit input collections. |
MCParticleCollectionName | Name of the MCParticle input collection (used for seeding). |
TrackCollectionName | Name of track output collection. |
Parameter | Description |
---|---|
CKF_Chi2CutOff | Maximum local chi2 contribution. |
CKF_NumMeasurementsCutOff | Maximum number of associated measurements on a single surface. |
Processor that implements tripled seeding Combinatorial Kalman Filter. This processor can be used for track reconstruction without any truth assumptions.
Parameter | Description |
---|---|
TrackerHitCollectionNames | Name of the TrackerHit input collections. |
SeedCollectionName | Name of seed output collection. |
TrackCollectionName | Name of track output collection. |
Parameter | Description |
---|---|
SeedingLayers | Layers to use for seeding in format VolID LayID , one per line. ID's are ACTS GeometryID's. * can be used to wildcard. |
SeedFinding_RMax | Maximum radius of hits to consider. |
SeedFinding_DeltaRMin | Minimum dR between hits in a seed. |
SeedFinding_DeltaRMax | Maximum dR between hits in a seed. |
SeedFinding_CollisionRegion | Size of the collision region in one direction (assumed symmetric). |
SeedFinding_ZMax | Maximum z of hits hits to consider. |
SeedFinding_RadLengthPerSeed | Average radiation length per seed. |
SeedFinding_SigmaScattering | Number of sigmas to allow in scattering angle. |
SeedFinding_MinPt | Minimum pT of tracks to seed. |
Parameter | Description |
---|---|
RunCKF | Run tracking using CKF. False means stop at the seeding stage. |
InitialTrackError_RelP | Track error estimate, momentum component (relative). |
InitialTrackError_Phi | Track error estimate, phi (radians). |
InitialTrackError_Lambda | Track error estimate, lambda (radians). |
InitialTrackError_Pos | Track error estimate, local position (mm). |
CKF_Chi2CutOff | Maximum local chi2 contribution. |
CKF_NumMeasurementsCutOff | Maximum number of associated measurements on a single surface. |
Processors to remove overlapping (sharing multiple hits) tracks. The algorithms works as follows:
- Sort input tracks by tan(lambda).
- Create final tracks container
- Compare each sorted input track against last 10 final tracks
- Skip tracks not sharing more than 50% of hits. Shared fractions are defined as
shared hits / min(track 1 hits, track 2 hits)
- Replace final track if input track is of higher quality. Higher quality tracks has more hits. In case of same number of hits, the higher quality track has a smaller chi2.
- Skip tracks not sharing more than 50% of hits. Shared fractions are defined as