You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 49 Next »

Overview

The HPS physics reconstruction is implemented in the HPS Java project as a series of org.lcsim Drivers.  The drivers and their parameters and execution order are described in an lcsim xml steering file which configures the lcsim job manager.  The EvioToLcio command line tool reads the EVIO data events using an EvioReader and these are converted into LCIO events by an LCSimEventBuilder such as LCSimEngRunEventBuilder.  These collections have types such as RawTrackerHit.  With the data now in a compatible format for lcsim, the driver chain from the lcsim job manager is run on the event to add additional physics object collections to the EventHeader.  The events with the data and recon collections are written out to LCIO files.  The LCIO output can be converted to ROOT DST Data Format for ROOT compatibility, or it may be loaded back into HPS Java for analysis. 

Basic Recipe

This is the basic recipe for reconstructing HPS data:

  1. EVIO data files are converted to LCIO events using the EvioToLcio command line utility (if you have an LCIO file you don't need to do this).
  2. The HPS Java reconstruction is run to produce physics object collections.
  3. The recon LCIO is converted to ROOT DST Data Format so that the events can be easily analyzed in ROOT.

Oftentimes, the physics reconstruction is performed in the same job (process) as the conversion from raw data to LCIO for efficiency, typically using the EvioToLcio command line utility.

Data Conversion

The EvioToLcio utility converts EVIO to LCIO using an LCSimEventBuilder implementation such as LCSimEngRunEventBuilder.  The generated LCIO events are then optionally written to disk using an LCIODriver.  The physics reconstruction may also be run in the same process for efficiency.

SVT data banks are handled by an SvtEvioReader and converted into RawTrackerHit and GenericObject collections.

Various modes of EVIO ECal data are converted using the EcalEvioReader.

The following collections are added to the event by the ECal reader.

  • EcalReadoutHits
  • FADCGenericHits
  • EcalReadoutExtraDataRelations
  • EcalReadoutExtraData 

This builder will also convert and write DAQ config information, EPICS control data, and scalar bank data into the output LCSim events, if these banks are present in the EVIO data.

Track Reconstruction

These are the steps in the HPS Java track reconstruction:

  1. RawTrackerHitFitterDriver fits time vs ADC signal from raw data into fitted hits collection.
  2. DataTrackerHitDriver creates stereo hit pairs from fitted hits.
  3. HelicalTrackHitDriver creates 3D hit clusters from input stereo hits.
  4. TrackerReconDriver runs track finding multiple times with different tracking strategy files, creating a track collection for each strategy.
  5. The MergeTrackCollections Driver is used to merge the multiple track collections together.
  6. The GBLRefitterDriver refits the tracks using GBL.
  7. TrackDataDriver adds a Generic Object collection containing additional information about the track for persistency.

The tracking packages in lcsim form the basis for HPS's tracking algorithms through usage and extension.  Seed Tracker is used for track finding using a set of input tracking strategies.  The track fit from lcsim is further refined using a Java implementation (port) of the GBL C++ algorithm. 

ECal Reconstruction

These are the basic steps of the ECal reconstruction:

  1. EcalRawConverterDriver converts RawTrackerHit input collection into CalorimeterHit collection using the EcalRawConverter.
  2. ReconClusterDriver uses the ReconClusterer to create calorimeter Cluster collection from input hits collection.
  3. CopyClusterCollectionDriver copies the clusters (with raw energies) to a different collection with a corrected energy.

The copied collection will be updated with corrected energies in the next step which creates recon particles.

Reconstructed Particles

The ReconParticleDriver creates ReconstructedParticle objects representing the final state particles from the event reconstruction.  These are tracks with matching clusters (when applicable).  It also performs vertex reconstruction and creates a number of candidate particle collections.

The ReconParticleDriver is sub-classed by the actual HpsReconParticleDriver from the steering which adds Moller candidate collections.

Package Documentation

The  HPS Java Documentation can be used to browse the packages and classes used for physics reconstruction.

The following packages are related to physics reconstruction in HPS Java.

HPS Java Reconstruction Packages

Java PackageDescriptionNotesModule
org.hps.evioconverts EVIO raw data to LCIOevio readers for converting EVIO raw data to LCIO eventsevio
org.hps.recon.ecalECal reconstruction utilitiesprimarily for converting from raw data to CalorimeterHits ecal-recon
org.hps.recon.ecal.clusterECal hit clustering frameworkincludes recon clustering and GTP/CTP hardware emulation clusterersecal-recon
org.hps.recon.trackingtrack reconstruction from SVT hitsbased on Seed Tracker from lcsimtracking
org.hps.recon.tracking.gblGBLtrack refitported from C++ to Java; actual Java package now outside HPS Javatracking
org.hps.recon.particlebuilds ReconstructedParticles from tracks and clustersbuilds reconstructed particles from input event collectionsrecon  
org.hps.recon.vertexingvertex reconstructionbased on Billoir vertexing algorithmrecon
org.hps.recon.filteringevent skimming utilities recon

LCSim Packages

These lcsim packages are used extensively in the HPS Java reconstruction code.

Java PackageDescriptionNotesModule
org.lcsim.eventphysics event interfaces (implemented by LCIO)interfaces used extensively in HPS Java Drivers 
org.lcsim.util.loopevent processing loopextends Freehep loop classes for lcsim usage 
org.lcsim.joblcsim job manager which reads lcsim xml steering files  
org.lcsim.lcioJava implementation of LCIO file formatimplements event interfaces 
org.lcsim.recon.tracking.seedtrackerSeed Tracker track reconstruction algorithmbasis for HPS Java tracking 
org.lcsim.utilDriver class for event data processing  
org.lcsim.conditionsdetector conditions system backend  
org.lcsim.geometry, org.lcsim.detectordetector description and geometry classes  
    
    
  • No labels