CMS 3D CMS Logo

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