CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/RecoEgamma/EgammaElectronProducers/python/gsfElectrons_cfi.py

Go to the documentation of this file.
00001 
00002 import FWCore.ParameterSet.Config as cms
00003 
00004 from RecoEcal.EgammaClusterProducers.ecalRecHitFlags_cfi import *
00005 from RecoEcal.EgammaClusterProducers.ecalSeverityLevelAlgos_cfi import *
00006 from RecoEcal.EgammaClusterProducers.ecalSeverityLevelFlags_cfi import *
00007 
00008 #==============================================================================
00009 # Producer of transient ecal driven gsf electrons
00010 #==============================================================================
00011 
00012 ecalDrivenGsfElectrons = cms.EDProducer("GsfElectronEcalDrivenProducer",
00013 
00014     # input collections
00015     previousGsfElectronsTag = cms.InputTag(""),
00016     pflowGsfElectronsTag = cms.InputTag(""),
00017     gsfElectronCoresTag = cms.InputTag("ecalDrivenGsfElectronCores"),
00018     reducedBarrelRecHitCollectionTag = cms.InputTag("ecalRecHit","EcalRecHitsEB"),
00019     reducedEndcapRecHitCollectionTag = cms.InputTag("ecalRecHit","EcalRecHitsEE"),
00020     hcalTowers = cms.InputTag("towerMaker"),
00021     pfMvaTag =  cms.InputTag("pfElectronTranslator:pf"),
00022     seedsTag = cms.InputTag("ecalDrivenElectronSeeds"),
00023     beamSpotTag = cms.InputTag("offlineBeamSpot"),
00024     gsfPfRecTracksTag = cms.InputTag("pfTrackElec"),
00025     
00026     # backward compatibility mechanism for ctf tracks
00027     ctfTracksCheck = cms.bool(True),
00028     ctfTracksTag = cms.InputTag("generalTracks"),
00029     
00030     # steering
00031     useGsfPfRecTracks = cms.bool(True),
00032     applyPreselection = cms.bool(False),
00033     applyEtaCorrection = cms.bool(False),
00034     applyAmbResolution = cms.bool(False),
00035     ambSortingStrategy = cms.uint32(1),
00036     ambClustersOverlapStrategy = cms.uint32(1),
00037     addPflowElectrons = cms.bool(True), # this one should be transfered to the "core" level
00038     
00039     # preselection parameters (ecal driven electrons)
00040     minSCEtBarrel = cms.double(4.0),
00041     minSCEtEndcaps = cms.double(4.0),
00042     minEOverPBarrel = cms.double(0.0),
00043     maxEOverPBarrel = cms.double(999999999.),
00044     minEOverPEndcaps = cms.double(0.0),
00045     maxEOverPEndcaps = cms.double(999999999.),
00046     maxDeltaEtaBarrel = cms.double(0.02),
00047     maxDeltaEtaEndcaps = cms.double(0.02),
00048     maxDeltaPhiBarrel = cms.double(0.15),
00049     maxDeltaPhiEndcaps = cms.double(0.15),
00050     #useHcalTowers = cms.bool(True),
00051     #useHcalRecHits = cms.bool(False),
00052     hOverEConeSize = cms.double(0.15),
00053     hOverEPtMin = cms.double(0.),
00054     #maxHOverEDepth1Barrel = cms.double(0.1),
00055     #maxHOverEDepth1Endcaps = cms.double(0.1),
00056     #maxHOverEDepth2 = cms.double(0.1),
00057     maxHOverEBarrel = cms.double(0.15),
00058     maxHOverEEndcaps = cms.double(0.15),
00059     maxHBarrel = cms.double(0.0),
00060     maxHEndcaps = cms.double(0.0),
00061     maxSigmaIetaIetaBarrel = cms.double(999999999.),
00062     maxSigmaIetaIetaEndcaps = cms.double(999999999.),
00063     maxFbremBarrel = cms.double(999999999.),
00064     maxFbremEndcaps = cms.double(999999999.),
00065     isBarrel = cms.bool(False),
00066     isEndcaps = cms.bool(False),
00067     isFiducial = cms.bool(False),
00068     maxTIP = cms.double(999999999.),
00069     seedFromTEC = cms.bool(True),
00070     minMVA = cms.double(-0.4),
00071 
00072     # preselection parameters (tracker driven only electrons)    
00073     minSCEtBarrelPflow = cms.double(0.0),
00074     minSCEtEndcapsPflow = cms.double(0.0),
00075     minEOverPBarrelPflow = cms.double(0.0),
00076     maxEOverPBarrelPflow = cms.double(999999999.),
00077     minEOverPEndcapsPflow = cms.double(0.0),
00078     maxEOverPEndcapsPflow = cms.double(999999999.),
00079     maxDeltaEtaBarrelPflow = cms.double(999999999.),
00080     maxDeltaEtaEndcapsPflow = cms.double(999999999.),
00081     maxDeltaPhiBarrelPflow = cms.double(999999999.),
00082     maxDeltaPhiEndcapsPflow = cms.double(999999999.),
00083     hOverEConeSizePflow = cms.double(0.15),
00084     hOverEPtMinPflow = cms.double(0.),
00085     #maxHOverEDepth1BarrelPflow = cms.double(999999999.),
00086     #maxHOverEDepth1EndcapsPflow = cms.double(999999999.),
00087     #maxHOverEDepth2Pflow = cms.double(999999999.),
00088     maxHOverEBarrelPflow = cms.double(999999999.),
00089     maxHOverEEndcapsPflow = cms.double(999999999.),
00090     maxHBarrelPflow = cms.double(0.0),
00091     maxHEndcapsPflow = cms.double(0.0),
00092     maxSigmaIetaIetaBarrelPflow = cms.double(999999999.),
00093     maxSigmaIetaIetaEndcapsPflow = cms.double(999999999.),
00094     maxFbremBarrelPflow = cms.double(999999999.),
00095     maxFbremEndcapsPflow = cms.double(999999999.),
00096     isBarrelPflow = cms.bool(False),
00097     isEndcapsPflow = cms.bool(False),
00098     isFiducialPflow = cms.bool(False),
00099     maxTIPPflow = cms.double(999999999.),
00100     minMVAPflow = cms.double(-0.4),
00101     
00102     # Isolation algos configuration
00103     intRadiusBarrelTk = cms.double(0.015), 
00104     intRadiusEndcapTk = cms.double(0.015), 
00105     stripBarrelTk = cms.double(0.015), 
00106     stripEndcapTk = cms.double(0.015), 
00107     ptMinTk = cms.double(0.7), 
00108     maxVtxDistTk = cms.double(0.2), 
00109     maxDrbTk = cms.double(999999999.), 
00110     intRadiusHcal = cms.double(0.15),
00111     etMinHcal = cms.double(0.0), 
00112     intRadiusEcalBarrel = cms.double(3.0), 
00113     intRadiusEcalEndcaps = cms.double(3.0), 
00114     jurassicWidth = cms.double(1.5), 
00115     etMinBarrel = cms.double(0.0),
00116     eMinBarrel = cms.double(0.08), 
00117     etMinEndcaps = cms.double(0.1), 
00118     eMinEndcaps = cms.double(0.0),  
00119     vetoClustered  = cms.bool(False),  
00120     useNumCrystals = cms.bool(True),  
00121     severityLevelCut = cms.int32(4),
00122 #    severityRecHitThreshold = cms.double(5.0),
00123 #    spikeIdThreshold = cms.double(0.95),
00124 #    spikeIdString = cms.string('kSwissCrossBordersIncluded'),
00125 
00126     recHitFlagsToBeExcluded = cms.vint32(
00127         ecalRecHitFlag_kFaultyHardware,
00128         ecalRecHitFlag_kPoorCalib,
00129 #        ecalRecHitFlag_kSaturated,
00130 #        ecalRecHitFlag_kLeadingEdgeRecovered,
00131 #        ecalRecHitFlag_kNeighboursRecovered,
00132         ecalRecHitFlag_kTowerRecovered,
00133         ecalRecHitFlag_kDead
00134     ),
00135 
00136     
00137     TransientInitialStateEstimatorParameters = cms.PSet(
00138         propagatorAlongTISE = cms.string('PropagatorWithMaterial'),
00139         propagatorOppositeTISE = cms.string('PropagatorWithMaterialOpposite')
00140     ),
00141     
00142     # Corrections
00143     superClusterErrorFunction = cms.string("EcalClusterEnergyUncertainty")
00144 
00145 )
00146 
00147 
00148 #==============================================================================
00149 # Final producer of persistent gsf electrons
00150 #==============================================================================
00151 
00152 gsfElectrons = cms.EDProducer("GsfElectronProducer",
00153 
00154     # input collections
00155     previousGsfElectronsTag = cms.InputTag("ecalDrivenGsfElectrons"),
00156     pflowGsfElectronsTag = cms.InputTag("pfElectronTranslator:pf"),
00157     gsfElectronCoresTag = cms.InputTag("gsfElectronCores"),
00158     hcalTowers = cms.InputTag("towerMaker"),
00159     reducedBarrelRecHitCollectionTag = cms.InputTag("ecalRecHit","EcalRecHitsEB"),
00160     reducedEndcapRecHitCollectionTag = cms.InputTag("ecalRecHit","EcalRecHitsEE"),
00161     pfMvaTag =  cms.InputTag("pfElectronTranslator:pf"),
00162     seedsTag = cms.InputTag("ecalDrivenElectronSeeds"),
00163     beamSpotTag = cms.InputTag("offlineBeamSpot"),
00164     gsfPfRecTracksTag = cms.InputTag("pfTrackElec"),
00165     
00166     # backward compatibility mechanism for ctf tracks
00167     ctfTracksCheck = cms.bool(True),
00168     ctfTracksTag = cms.InputTag("generalTracks"),
00169     
00170     # steering
00171     useGsfPfRecTracks = cms.bool(True),
00172     applyPreselection = cms.bool(True),
00173     applyEtaCorrection = cms.bool(False),
00174     applyAmbResolution = cms.bool(True),
00175     ambSortingStrategy = cms.uint32(1),
00176     ambClustersOverlapStrategy = cms.uint32(1),
00177     addPflowElectrons = cms.bool(True),
00178     
00179     # preselection parameters (ecal driven electrons)
00180     minSCEtBarrel = cms.double(4.0),
00181     minSCEtEndcaps = cms.double(4.0),
00182     minEOverPBarrel = cms.double(0.0),
00183     maxEOverPBarrel = cms.double(999999999.),
00184     minEOverPEndcaps = cms.double(0.0),
00185     maxEOverPEndcaps = cms.double(999999999.),
00186     maxDeltaEtaBarrel = cms.double(0.02),
00187     maxDeltaEtaEndcaps = cms.double(0.02),
00188     maxDeltaPhiBarrel = cms.double(0.15),
00189     maxDeltaPhiEndcaps = cms.double(0.15),
00190     #useHcalTowers = cms.bool(True),
00191     #useHcalRecHits = cms.bool(False),
00192     hOverEConeSize = cms.double(0.15),
00193     hOverEPtMin = cms.double(0.),
00194     #maxHOverEDepth1Barrel = cms.double(0.1),
00195     #maxHOverEDepth1Endcaps = cms.double(0.1),
00196     #maxHOverEDepth2 = cms.double(0.1),
00197     maxHOverEBarrel = cms.double(0.15),
00198     maxHOverEEndcaps = cms.double(0.15),
00199     maxHBarrel = cms.double(0.0),
00200     maxHEndcaps = cms.double(0.0),
00201     maxSigmaIetaIetaBarrel = cms.double(999999999.),
00202     maxSigmaIetaIetaEndcaps = cms.double(999999999.),
00203     maxFbremBarrel = cms.double(999999999.),
00204     maxFbremEndcaps = cms.double(999999999.),
00205     isBarrel = cms.bool(False),
00206     isEndcaps = cms.bool(False),
00207     isFiducial = cms.bool(False),
00208     seedFromTEC = cms.bool(True),
00209     maxTIP = cms.double(999999999.),
00210     minMVA = cms.double(-0.1),
00211 
00212     # preselection parameters (tracker driven only electrons)    
00213     minSCEtBarrelPflow = cms.double(0.0),
00214     minSCEtEndcapsPflow = cms.double(0.0),
00215     minEOverPBarrelPflow = cms.double(0.0),
00216     maxEOverPBarrelPflow = cms.double(999999999.),
00217     minEOverPEndcapsPflow = cms.double(0.0),
00218     maxEOverPEndcapsPflow = cms.double(999999999.),
00219     maxDeltaEtaBarrelPflow = cms.double(999999999.),
00220     maxDeltaEtaEndcapsPflow = cms.double(999999999.),
00221     maxDeltaPhiBarrelPflow = cms.double(999999999.),
00222     maxDeltaPhiEndcapsPflow = cms.double(999999999.),
00223     hOverEConeSizePflow = cms.double(0.15),
00224     hOverEPtMinPflow = cms.double(0.),
00225     #maxHOverEDepth1BarrelPflow = cms.double(999999999.),
00226     #maxHOverEDepth1EndcapsPflow = cms.double(999999999.),
00227     #maxHOverEDepth2Pflow = cms.double(999999999.),
00228     maxHOverEBarrelPflow = cms.double(999999999.),
00229     maxHOverEEndcapsPflow = cms.double(999999999.),
00230     maxHBarrelPflow = cms.double(0.0),
00231     maxHEndcapsPflow = cms.double(0.0),
00232     maxSigmaIetaIetaBarrelPflow = cms.double(999999999.),
00233     maxSigmaIetaIetaEndcapsPflow = cms.double(999999999.),
00234     maxFbremBarrelPflow = cms.double(999999999.),
00235     maxFbremEndcapsPflow = cms.double(999999999.),
00236     isBarrelPflow = cms.bool(False),
00237     isEndcapsPflow = cms.bool(False),
00238     isFiducialPflow = cms.bool(False),
00239     maxTIPPflow = cms.double(999999999.),
00240     minMVAPflow = cms.double(-0.1),
00241     
00242     # Isolation algos configuration
00243     intRadiusBarrelTk = cms.double(0.015), 
00244     intRadiusEndcapTk = cms.double(0.015), 
00245     stripBarrelTk = cms.double(0.015), 
00246     stripEndcapTk = cms.double(0.015), 
00247     ptMinTk = cms.double(0.7), 
00248     maxVtxDistTk = cms.double(0.2), 
00249     maxDrbTk = cms.double(999999999.), 
00250     intRadiusHcal = cms.double(0.15),
00251     etMinHcal = cms.double(0.0), 
00252     intRadiusEcalBarrel = cms.double(3.0), 
00253     intRadiusEcalEndcaps = cms.double(3.0), 
00254     jurassicWidth = cms.double(1.5), 
00255     etMinBarrel = cms.double(0.0),
00256     eMinBarrel = cms.double(0.08), 
00257     etMinEndcaps = cms.double(0.1), 
00258     eMinEndcaps = cms.double(0.0),  
00259     vetoClustered  = cms.bool(False),  
00260     useNumCrystals = cms.bool(True),  
00261     severityLevelCut = cms.int32(4),
00262 #    severityRecHitThreshold = cms.double(5.0),
00263 #    spikeIdThreshold = cms.double(0.95),
00264 #    spikeIdString = cms.string('kSwissCrossBordersIncluded'),
00265 
00266     recHitFlagsToBeExcluded = cms.vint32(
00267         ecalRecHitFlag_kFaultyHardware,
00268         ecalRecHitFlag_kPoorCalib,
00269 #        ecalRecHitFlag_kSaturated,
00270 #        ecalRecHitFlag_kLeadingEdgeRecovered,
00271 #        ecalRecHitFlag_kNeighboursRecovered,
00272         ecalRecHitFlag_kTowerRecovered,
00273         ecalRecHitFlag_kDead
00274     ),
00275 
00276     
00277     TransientInitialStateEstimatorParameters = cms.PSet(
00278         propagatorAlongTISE = cms.string('PropagatorWithMaterial'),
00279         propagatorOppositeTISE = cms.string('PropagatorWithMaterialOpposite')
00280     ),
00281     
00282     # Corrections
00283     superClusterErrorFunction = cms.string("EcalClusterEnergyUncertainty")
00284 
00285 )
00286 
00287