Electron Reconstruction

Complete: 4

Goals of this page

This page introduces the basics of electron reconstruction, showing how to run reconstruction to produce a dataset containing PixelMatchGsfElectrons. For standalone ECAL clustering, please refer to SWGuideEcalRecoClustering

A version of this page for release 2_1_0 can be found here


Electrons are built starting from a supercluster in ECAL. The supercluster is first matched to hits in the pixel detector. This matching takes advantage of the fact that the energy-weighted average impact point of the electron and its bremstrahlung photons is precisely where a non-radiating track would have impacted the ECAL. The position measured by the supercluster can thus be used to predict the position of hits in the pixel detector. Since most of the material of the tracker lies after the pixel layers, most of the electrons have not radiated significantly before them and most photon conversion takes place after them. So matching hits are given by most electrons and by few photons.

The pixel hits are used to seed track finding. The track fit is performed using a Gaussian Sum Filter, which allows the track to be reconstructed right out to the ECAL surface, despite kinks due to radiated bremsstrahlung. The electron object contains edm::Refs to both the track and the supercluster. The four-vector is obtained by combining information from the track and SuperCluster weighted according to mesurement uncertainties. See section 7 of CMS Note 2006/40 for details.

More information can be found in the Offline Guide

Set up your Environment

Set your runtime environment (shown for release %WBRELEASENEW%):

Run standard electron reconstruction

The following example shows how to reconstruct standard electrons (PixelMatchGsfElectron) starting from RecHits, which are assumed to already exist in the input sample.

Check out the package RecoEgamma/Examples with tag V00-01-09 from the CVS repository.

cvs co -r  V00-01-09 RecoEgamma/Examples

Go into the test directory of RecoEgamma/Examples and examine the file recHitsToPixelMatchGsfElectrons.cfg.

The maxEvents parameter is used to define the number of events to be processed, in this case 1000. The next part specifies the input files, in this case a release validation sample of particle gun back-to-back electrons with pT in the range 5 to 100 GeV, generated with CMSSW_1_6_0. Any sample containing RecHits generated with CMSSW_1_6_X can be used here. Such samples can be found using DBS2.

    source = PoolSource {
        untracked vstring fileNames = {

The following specifies the output filename, in this case pixelMatchGsfElectrons.root, and the event content to be stored, in this case, the RECOSIM content:

    include "Configuration/EventContent/data/EventContent.cff"    
    module RECO = PoolOutputModule {
        untracked string fileName = 'pixelMatchGsfelectrons.root'
        using RECOSIMEventContent

The next 2 lines are standard includes for running reconstruction. Using FakeConditions means that no conditions data (alignment and calibration coefficients) are read from the conditions database.

    include "Configuration/StandardSequences/data/FakeConditions.cff"
    include "Configuration/StandardSequences/data/Reconstruction.cff"

Next, the path is defined, which specifies the sequences of modules which will be run. In this case, the sequences run are:

  • ecalClusteringSequence, defined in ecalClusteringSequence.cff: Standalone ECAL reconstruction strting from EcalRecHits: BasicClusters, SuperClusters and PreshowerClusters.
  • pixelMatchGsfElectronSequence, defined in pixelMatchGsfElectronSequence.cff: Reconstructs electrons by matching pixel hits to a SuperCluster and using them to seed GSF tracking.

    path p = { ecalClusteringSequence, pixelMatchGsfElectronSequence }

Run the reconstruction

To run the reconstruction, go the RecoEgamma/Examples/test directory and type:
cmsRun recHitsToPixelMatchGsfElectrons.cfg

Open the file pixelMatchGsfElectrons.root in a TBrowser and browse the contents:

Collections ending with __Rec were already in the events that were read in. The collections reconstructed in the example end with __electrons, the name of the process in the first line of recHitsToPixelMatchGsfElectrons.cfg

The newly constructed electron objects are in the collection:

The GSF tracks associated to the electrons are in the collections:
The SuperClusters associated to the electrons are in the collections:

Review status

Reviewer/Editor and Date (copy from screen) Comments
Main.palmale - 05 Dec 2006 Review and edit
DavidFutyan - 20 Dec 2007 separate SWGuideElectronRecoSoftware (electron reconstruction) from WorkBookElectronAnalysis (electron analysis)

Responsible: UrsulaBerthon Last reviewed by: ChrisSeez - 18 Dec 2006

-- DavidChamont - 11 Aug 2009

Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r2 - 2009-09-24 - DavidChamont
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    CMSPublic All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2019 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback