Search/Navigation:
Related:
SLAC/EPP/HPS Public
Jefferson Lab/Hall B/HPS Run Wiki
S30XL-LESA/LDMX
Table of Contents |
---|
The HPS physics reconstruction is implemented within the HPS Java project as a chain of of org.lcsim Drivers (event processors) which process LCIO Data Format events that are accessed through the EventHeader API. The Drivers are described by an lcsim xml steering file, which is read described by lcsim xml and run by the lcsim job manager. Detector Conditions including per channel calibrations are read and applied in the initialization phase. The data from each event is processed to produce additional output collections containing reconstructed objects such as tracks and calorimeter clusters. First, the raw data must be converted from EVIO Data Format using an LCSimEventBuilder such as LCSimEngRunEventBuilder. The EvioToLcio command line tool is used to read EvioEvents with an EvioReader and then uses the event builder to create LCIO raw data events. The full Driver chain is run on the raw data collections to perform the physics reconstruction. These combined The EvioToLcio command line tool is used to convert the EVIO to LCIO events using an LCSimEventBuilder such as LCSimEngRunEventBuilder. The LCIO events are accessed in Java code through the EventHeader API. The Drivers add output collections to the event such as tracks, calorimeter clusters, reconstructed particles and vertices. The combined data/physics LCIO events are written out to an LCIO file, which can subsequently be converted to ROOT DST Data Format. The LCIO events may also be loaded back into the HPS Java environment for analysis.
...
This is the basic recipe for reconstructing HPS data:
These are the steps performed in reconstructing the data:
Steps 1-3 7 are typically performed in the same job (process) using the EvioToLcio command line utility.
User analysis can be performed on the LCIO files using the job manager command line tool or within the ROOT environment using the DSTs.
The reconstruction Driver chain is defined in production steering files such as EngineeringRun2015FullRecon.lcsim, which are kept in this SVN folder and typically accessed as a class resource from a jar file.
Order | Driver Name | Driver Class | Description |
---|---|---|---|
1 | RfFitter | RfFitterDriver | converts accelerator's RF wave form to time and inserts into event |
2 | EcalRunningPedestal | calculates per channel running averages for ECal signal pedestals | |
3 | EcalRawConverter | EcalRawConverterDriver | converts ECal digits to CalorimeterHit collection with energy and time measurements |
4 | ReconClusterer | ReconClusterDriver | performs calorimeter clustering algorithm on ECal hits |
5 | CopyCollection | CopyClusterCollectionDriver | copies calorimeter clusters to new collection to preserve uncorrected energy measurements |
6 | RawTrackerHitSensorSetup | RawTrackerHitSensorSetup | assigns RawTrackerHits to their sensors for use by track recon |
7 | RawTrackerHitFitterDriver | RawTrackerHitFitterDriver | fits ADC vs time signal and stores results associated to the raw hit |
8 | TrackerHitDriver | DataTrackerHitDriver | creates stereo pairs from SVT strip hits |
9 | HelicalTrackHitDriver | HelicalTrackHitDriver | creates 3D hit clusters from stereo pairs |
10 | TrackReconSeed345Conf2Extd16 | TrackerReconDriver | track finding using layers 3, 4 & 5 as a seed, layer 2 to confirm, and layers 1 and 6 to extend |
11 | TrackReconSeed456Conf3Extd21 | TrackerReconDriver | track finding using layers 4, 5 & 6 as a seed, layer 3 to confirm, and layers 2 and 1 to extend |
12 | TrackReconSeed123Conf4Extd56 | TrackerReconDriver | track finding using layers 1, 2 & 3 as a seed, layer 4 to confirm, and layers 5 and 6 to extend |
13 | TrackReconSeed123Conf5Extd46 | TrackerReconDriver | track finding using layers 1, 2 & 3 as a seed, layer 5 to confirm, and layers 4 and 6 to extend |
14 | MergeTrackCollections | MergeTrackCollections | merges collections from track finding into a single output collection |
15 | GBLRefitterDriver | GBLRefitterDriver | performs GBL track refit |
16 | TrackDataDriver | TrackDataDriver | adds additional collections containing track information to the output event |
17 | ReconParticleDriver | HpsReconParticleDriver | creates output reconstructed particle collections, associating tracks with clusters also performs vertex reconstruction and creates vertex collection |
18 | LCIOWriter | LCIODriver | writes output LCIO file |
19 | CleanupDriver | ReadoutCleanupDriver | cleans up readout state for next event (clears assignments of SVT raw hits to sensors) |
...
These are the primary steps involved in the HPS Java track reconstruction:
The tracking packages in lcsim form the basis for HPS's tracking algorithms through usage and extension. Seed Seed Tracker is used for track finding using a set of input tracking strategies. The
The track fit from lcsim is further refined using a Java implementation (port) of the GBL C++ algorithm.
...