Electron Reconstruction Software IS UNDER WORK

Complete: 4

Goals of this page

This page introduces the basics of electron reconstruction, shows how to run reconstruction modules so to produce standard electrons, and briefly discuss the content of the resulting output file. Some related topics are:


The physical aspects of electron reconstruction are detailed here. Below is a short introduction to the reconstruction process.

Electrons are built starting from clusters in ECAL. Electron track seeds are built matching superclusters with hits from the standard trajectory seeds. 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. This seeding strategy is complemented by a tracker driven approach to cover cases of very low pT electrons and non isolated electrons.

The seeds are then used to trigger the track finding. The track fit is performed using a Gaussian Sum Filter (GSF), 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 measurement uncertainties.

Set up your Environment

Fisrtly prepare your runtime environment (shown for release 3_1_2):

    scram project CMSSW CMSSW_3_1_2
    cd CMSSW_3_1_2/src
    addpkg RecoEgamma/EgammaElectronProducers
    cd RecoEgamma/EgammaElectronProducers/test

For more general and/or detailed information, see also:

Run standard electron reconstruction OBSOLETE

The config file recHitsToPixelMatchGsfElectrons_cfg.py shows how to reconstruct standard electrons (GsfElectron) starting from RecHits, which are assumed to already exist in the input sample. Let's examine this example a little further.

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 }

Once you have customized the config file (you must at least provide the list of input files), you can run the reconstruction simply typing:

    cmsRun recHitsToPixelMatchGsfElectrons_cfg.py

Inspect the result

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:

Error and warning categories

All errors and warnings issued by electron reconstruction software are classified both in the general category GsfElectronAlgo and a in some more detailed category, as listed below.

Severity Category Comments
Error UnknownXtalRegion The seed xtal of an electron is neither in barrel nor in endcap.
Error BothEcalAndPureTrackerDriven A core electron is said to be both ecal and purely tracker driven.
Error NeitherEcalNorPureTrackerDriven A core electron is said to be neither ecal nor purely tracker driven.
Error NotElectronSeed The seed attached to a gsf track is not an instance of ElectronSeed.
Error UnexpectedMvaValue The mva value provided by pflow is below what we expect to be the lowest.
Error UnknownAmbiguitySortingStrategy The value of configurable "ambSortingStrategy" is not recognised.
Error UnknownAmbiguityClustersOverlapStrategy The value of configurable "ambClustersOverlapStrategy" is not recognised.
Error BadMvaCut The mva cut is below the lowest possible value, and thus every electron will be blessed whatever other criteria.
Warning UnreachableSeedsProvenance Seeds are not available, thus the configurables used for their generation are unreachable and cannot be compared with the similar configurables in current electron preselection.
Warning UndefinedPreselectionInfo All preselection flags are false, either the data is too old or electrons were not preselected.
Warning MvaCutTooLow The mva cut applied to pure tracker driven electrons is lower than the one previsouly applied by pflow, and therefore will have no effect.
Warning IncompletePflowInformation The mva cut applied to ecal driven electrons is largely lower than the one previously applied by pflow, and some electrons may lack their mva value and pflow supercluster.
Warning SpikeRemovalForIsolation The spike removal strategy configurable has not been recognized.

Review status

Reviewer/Editor and Date (copy from screen) Comments
DavidChamont - Mid Aug 2010 Upgrade errors and warnings.
DavidChamont - Mid Aug 2009 Upgrade for 3XX.
DavidFutyan - 20 Dec 2007 Separate SWGuideElectronRecoSoftware (electron reconstruction) from WorkBookElectronAnalysis (electron analysis).
ChrisSeez - 18 Dec 2006
Main.palmale - 05 Dec 2006 Review and edit.

Responsible: DavidChamont

Edit | Attach | Watch | Print version | History: r20 < r19 < r18 < r17 < r16 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r20 - 2011-05-11 - 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