CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/DQM/Physics/python/topSingleLeptonDQM_cfi.py

Go to the documentation of this file.
00001 import FWCore.ParameterSet.Config as cms
00002 
00003 TopSingleLeptonDQM = cms.EDAnalyzer("TopSingleLeptonDQM",
00004   ## ------------------------------------------------------
00005   ## SETUP
00006   ##
00007   ## configuration of the MonitoringEnsemble(s)
00008   ## [mandatory] : optional PSets may be omitted
00009   ##
00010   setup = cms.PSet(
00011     ## sub-directory to write the monitor histograms to
00012     ## [mandatory] : should not be changed w/o explicit 
00013     ## communication to TopCom!
00014     directory = cms.string("Physics/Top/TopSingleLeptonDQM/"),
00015     ## [mandatory]
00016     sources = cms.PSet(
00017       muons = cms.InputTag("muons"),
00018       elecs = cms.InputTag("gsfElectrons"),
00019       jets  = cms.InputTag("ak5CaloJets"),
00020       mets  = cms.VInputTag("met", "tcMet", "pfMet"),
00021       pvs   = cms.InputTag("offlinePrimaryVertices")
00022     ),
00023     ## [optional] : when omitted the verbosity level is set to STANDARD
00024     monitoring = cms.PSet(
00025       verbosity = cms.string("DEBUG")
00026     ),
00027     ## [optional] : when omitted all monitoring plots for primary vertices
00028     ## will be filled w/o extras
00029     pvExtras = cms.PSet(
00030       ## when omitted electron plots will be filled w/o additional pre-
00031       ## selection of the primary vertex candidates                                                                                            
00032       select = cms.string("abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake")
00033     ),
00034     ## [optional] : when omitted all monitoring plots for electrons
00035     ## will be filled w/o extras
00036     elecExtras = cms.PSet(
00037       ## when omitted electron plots will be filled w/o cut on electronId
00038       electronId = cms.PSet( src = cms.InputTag("eidRobustLoose"), pattern = cms.int32(1) ),
00039       ## when omitted electron plots will be filled w/o additional pre-
00040       ## selection of the electron candidates                                                                                            
00041       select = cms.string("pt>15 & abs(eta)<2.5 & abs(gsfTrack.d0)<1 & abs(gsfTrack.dz)<20"),
00042       ## when omitted isolated electron multiplicity plot will be equi-
00043       ## valent to inclusive electron multiplicity plot 
00044       isolation = cms.string("(dr03TkSumPt+dr04EcalRecHitSumEt+dr04HcalTowerSumEt)/pt<0.1"),
00045     ),
00046     ## [optional] : when omitted all monitoring plots for muons
00047     ## will be filled w/o extras
00048     muonExtras = cms.PSet(
00049       ## when omitted muon plots will be filled w/o additional pre-
00050       ## selection of the muon candidates                                                                                            
00051       select = cms.string("pt>10 & abs(eta)<2.1 & isGlobalMuon & abs(globalTrack.d0)<1 & abs(globalTrack.dz)<20"),
00052       ## when omitted isolated muon multiplicity plot will be equi-
00053       ## valent to inclusive muon multiplicity plot                                                    
00054       isolation = cms.string("(isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.1"),
00055     ),
00056     ## [optional] : when omitted all monitoring plots for jets will
00057     ## be filled from uncorrected jets
00058     jetExtras = cms.PSet(
00059       ## when omitted monitor plots for pt will be filled from uncorrected
00060       ## jets                                            
00061       jetCorrector = cms.string("ak5CaloL2L3"),
00062       ## when omitted monitor plots will be filled w/o additional cut on
00063       ## jetID                                                   
00064       jetID  = cms.PSet(
00065         label  = cms.InputTag("ak5JetID"),
00066         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00067       ),
00068       ## when omitted no extra selection will be applied on jets before
00069       ## filling the monitor histograms; if jetCorrector is present the
00070       ## selection will be applied to corrected jets
00071       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00072     ),
00073     ## [optional] : when omitted no mass window will be applied
00074     ## for the W mass befor filling the event monitoring plots
00075     massExtras = cms.PSet(
00076       lowerEdge = cms.double( 70.),
00077       upperEdge = cms.double(110.)
00078     ),
00079     ## [optional] : when omitted the monitoring plots for triggering
00080     ## will be empty
00081     triggerExtras = cms.PSet(
00082       src   = cms.InputTag("TriggerResults","","HLT"),
00083       paths = cms.vstring(['HLT_Mu3:HLT_QuadJet15U',
00084                            'HLT_Mu5:HLT_QuadJet15U',
00085                            'HLT_Mu7:HLT_QuadJet15U',
00086                            'HLT_Mu9:HLT_QuadJet15U'])
00087     )                                            
00088   ),                                  
00089   ## ------------------------------------------------------
00090   ## PRESELECTION
00091   ##
00092   ## setup of the event preselection, which will not
00093   ## be monitored
00094   ## [mandatory] : but may be empty
00095   ##
00096   preselection = cms.PSet(
00097     ## [optional] : when omitted no preselection is applied
00098     trigger = cms.PSet(
00099       src    = cms.InputTag("TriggerResults","","HLT"),
00100       select = cms.vstring(['HLT_Mu11', 'HLT_Ele15_LW_L1R', 'HLT_QuadJet30'])
00101     ),
00102     ## [optional] : when omitted no preselection is applied
00103     vertex = cms.PSet(
00104       src    = cms.InputTag("offlinePrimaryVertices"),
00105       select = cms.string('abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake')
00106     )                                        
00107   ),  
00108   ## ------------------------------------------------------    
00109   ## SELECTION
00110   ##
00111   ## monitor histrograms are filled after each selection
00112   ## step, the selection is applied in the order defined
00113   ## by this vector
00114   ## [mandatory] : may be empty or contain an arbitrary
00115   ## number of PSets
00116   ##    
00117   selection = cms.VPSet(
00118     cms.PSet(
00119       label  = cms.string("jets/calo:step0"),
00120       src    = cms.InputTag("ak5CaloJets"),
00121       select = cms.string("pt>20 & abs(eta)<2.1 & 0.05<emEnergyFraction"),
00122       jetID  = cms.PSet(
00123         label  = cms.InputTag("ak5JetID"),
00124         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00125       ),
00126       min = cms.int32(2),
00127     ),
00128   )
00129 )
00130 
00131 topSingleMuonLooseDQM = cms.EDAnalyzer("TopSingleLeptonDQM",
00132   ## ------------------------------------------------------
00133   ## SETUP
00134   ##
00135   ## configuration of the MonitoringEnsemble(s)
00136   ## [mandatory] : optional PSets may be omitted
00137   ##
00138   setup = cms.PSet(
00139     ## sub-directory to write the monitor histograms to
00140     ## [mandatory] : should not be changed w/o explicit
00141     ## communication to TopCom!
00142     directory = cms.string("Physics/Top/TopSingleMuonLooseDQM/"),
00143     ## [mandatory]
00144     sources = cms.PSet(
00145       muons = cms.InputTag("muons"),
00146       elecs = cms.InputTag("gsfElectrons"),
00147       jets  = cms.InputTag("ak5CaloJets"),
00148       mets  = cms.VInputTag("met", "tcMet", "pfMet"),
00149       pvs   = cms.InputTag("offlinePrimaryVertices")
00150     ),
00151     ## [optional] : when omitted the verbosity level is set to STANDARD
00152     monitoring = cms.PSet(
00153       verbosity = cms.string("DEBUG")
00154     ),
00155     pvExtras = cms.PSet(
00156       ## when omitted electron plots will be filled w/o additional pre-
00157       ## selection of the primary vertex candidates                                                                                            
00158       select = cms.string("abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake")
00159     ),
00160     ## [optional] : when omitted all monitoring plots for muons
00161     ## will be filled w/o extras                                           
00162     muonExtras = cms.PSet(
00163       ## when omitted muon plots will be filled w/o additional pre-
00164       ## selection of the muon candidates                                                                                               
00165       select = cms.string("pt > 10 & abs(eta)<2.1 & isGlobalMuon & innerTrack.numberOfValidHits>10 & globalTrack.normalizedChi2>-1 & globalTrack.normalizedChi2<10"),
00166       ## when omitted isolated muon multiplicity plot will be equi-
00167       ## valent to inclusive muon multiplicity plot                                                    
00168       isolation = cms.string("(isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.1")                                               
00169     ),
00170     ## [optional] : when omitted all monitoring plots for jets
00171     ## will be filled w/o extras
00172     jetExtras = cms.PSet(
00173       ## when omitted monitor plots for pt will be filled from uncorrected
00174       ## jets                                               
00175       jetCorrector = cms.string("ak5CaloL2L3"),
00176       ## when omitted monitor plots will be filled w/o additional cut on
00177       ## jetID                                                                                                                     
00178       jetID  = cms.PSet(
00179         label  = cms.InputTag("ak5JetID"),
00180         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00181       ),                                                    
00182       ## when omitted no extra selection will be applied on jets before
00183       ## filling the monitor histograms; if jetCorrector is present the
00184       ## selection will be applied to corrected jets                                                
00185       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00186       ## when omitted monitor histograms for b-tagging will not be filled 
00187       jetBTaggers  = cms.PSet(
00188         trackCountingEff = cms.PSet(
00189           label = cms.InputTag("trackCountingHighEffBJetTags" ),
00190           workingPoint = cms.double(1.25)
00191         ),
00192         trackCountingPur = cms.PSet(
00193           label = cms.InputTag("trackCountingHighPurBJetTags" ),
00194           workingPoint = cms.double(3.00)
00195         ),
00196         secondaryVertex  = cms.PSet(
00197           label = cms.InputTag("simpleSecondaryVertexHighEffBJetTags"),
00198           workingPoint = cms.double(2.05)
00199         )
00200       ),
00201     ),
00202     ## [optional] : when omitted no mass window will be applied
00203     ## for the W mass befor filling the event monitoring plots
00204     massExtras = cms.PSet(
00205       lowerEdge = cms.double( 70.),
00206       upperEdge = cms.double(110.)
00207     ),
00208     ## [optional] : when omitted the monitoring plots for triggering
00209     ## will be empty
00210     triggerExtras = cms.PSet(
00211       src   = cms.InputTag("TriggerResults","","HLT"),
00212       paths = cms.vstring(['HLT_Mu3:HLT_QuadJet15U',
00213                            'HLT_Mu5:HLT_QuadJet15U',
00214                            'HLT_Mu7:HLT_QuadJet15U',
00215                            'HLT_Mu9:HLT_QuadJet15U',
00216                            'HLT_Mu11:HLT_QuadJet15U'])
00217     )
00218   ),
00219   ## ------------------------------------------------------
00220   ## PRESELECTION
00221   ##
00222   ## setup of the event preselection, which will not
00223   ## be monitored
00224   ## [mandatory] : but may be empty
00225   ##
00226   preselection = cms.PSet(
00227     ## [optional] : when omitted no preselection is applied
00228     #trigger = cms.PSet(
00229     #  src    = cms.InputTag("TriggerResults","","HLT"),
00230     #  select = cms.vstring(['HLT_Mu11'])
00231     #),
00232     ## [optional] : when omitted no preselection is applied
00233     vertex = cms.PSet(
00234       src    = cms.InputTag("offlinePrimaryVertices"),
00235       select = cms.string('abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake')
00236     )
00237   ),
00238   ## ------------------------------------------------------
00239   ## SELECTION
00240   ##
00241   ## monitor histrograms are filled after each selection
00242   ## step, the selection is applied in the order defined
00243   ## by this vector
00244   ## [mandatory] : may be empty or contain an arbitrary
00245   ## number of PSets
00246   selection = cms.VPSet(
00247     cms.PSet(
00248       label  = cms.string("muons:step0"),
00249       src    = cms.InputTag("muons"),
00250       select = cms.string("pt>10 & abs(eta)<2.1 & isGlobalMuon & innerTrack.numberOfValidHits>10 & globalTrack.normalizedChi2>-1 & globalTrack.normalizedChi2<10"),
00251       min    = cms.int32(1),
00252     ),
00253     #cms.PSet(
00254     #  label  = cms.string("jets/calo:24jets"),
00255     #  src    = cms.InputTag("ak5CaloJets"),
00256     #  jetCorrector = cms.string("ak5CaloL2L3"),
00257     #  select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00258     #  jetID  = cms.PSet(
00259     #    label  = cms.InputTag("ak5JetID"),
00260     #    select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00261     #  ),
00262     #  min = cms.int32(2),                                               
00263     #  max = cms.int32(4),                                               
00264     #), 
00265     cms.PSet(
00266       label  = cms.string("jets/calo:step1"),
00267       src    = cms.InputTag("ak5CaloJets"),
00268       jetCorrector = cms.string("ak5CaloL2L3"),
00269       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00270       jetID  = cms.PSet(
00271         label  = cms.InputTag("ak5JetID"),
00272         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00273       ),
00274       min = cms.int32(1),                                               
00275     ), 
00276     cms.PSet(
00277       label  = cms.string("jets/calo:step2"),
00278       src    = cms.InputTag("ak5CaloJets"),
00279       jetCorrector = cms.string("ak5CaloL2L3"),
00280       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00281       jetID  = cms.PSet(
00282         label  = cms.InputTag("ak5JetID"),
00283         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00284       ),
00285       min = cms.int32(2),                                               
00286     ), 
00287     cms.PSet(
00288       label  = cms.string("jets/calo:step3"),
00289       src    = cms.InputTag("ak5CaloJets"),
00290       jetCorrector = cms.string("ak5CaloL2L3"),
00291       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00292       jetID  = cms.PSet(
00293         label  = cms.InputTag("ak5JetID"),
00294         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00295       ),
00296       min = cms.int32(3),                                               
00297     ), 
00298     cms.PSet(
00299       label  = cms.string("jets/calo:step4"),
00300       src    = cms.InputTag("ak5CaloJets"),
00301       jetCorrector = cms.string("ak5CaloL2L3"),
00302       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00303       jetID  = cms.PSet(
00304         label  = cms.InputTag("ak5JetID"),
00305         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00306       ),
00307       min = cms.int32(4),                                               
00308     ), 
00309   )
00310 )
00311 topSingleMuonMediumDQM = cms.EDAnalyzer("TopSingleLeptonDQM",
00312   ## ------------------------------------------------------
00313   ## SETUP
00314   ##
00315   ## configuration of the MonitoringEnsemble(s)
00316   ## [mandatory] : optional PSets may be omitted
00317   ##
00318   setup = cms.PSet(
00319     ## sub-directory to write the monitor histograms to
00320     ## [mandatory] : should not be changed w/o explicit
00321     ## communication to TopCom!
00322     directory = cms.string("Physics/Top/TopSingleMuonMediumDQM/"),
00323     ## [mandatory]
00324     sources = cms.PSet(
00325       muons = cms.InputTag("muons"),
00326       elecs = cms.InputTag("gsfElectrons"),
00327       jets  = cms.InputTag("ak5CaloJets"),
00328       mets  = cms.VInputTag("met", "tcMet", "pfMet"),
00329       pvs   = cms.InputTag("offlinePrimaryVertices")
00330 
00331     ),
00332     ## [optional] : when omitted the verbosity level is set to STANDARD
00333     monitoring = cms.PSet(
00334       verbosity = cms.string("DEBUG")
00335     ),
00336     ## [optional] : when omitted all monitoring plots for primary vertices
00337     ## will be filled w/o extras
00338     pvExtras = cms.PSet(
00339       ## when omitted electron plots will be filled w/o additional pre-
00340       ## selection of the primary vertex candidates                                                                                            
00341       select = cms.string("abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake")
00342     ),
00343     ## [optional] : when omitted all monitoring plots for muons
00344     ## will be filled w/o extras                                           
00345     muonExtras = cms.PSet(
00346       ## when omitted muon plots will be filled w/o additional pre-
00347       ## selection of the muon candidates                                                
00348       select    = cms.string("pt>20 & abs(eta)<2.1 & isGlobalMuon & innerTrack.numberOfValidHits>10 & globalTrack.normalizedChi2>-1 & globalTrack.normalizedChi2<10 & (isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.1"),  
00349       ## when omitted isolated muon multiplicity plot will be equi-
00350       ## valent to inclusive muon multiplicity plot                                                    
00351       isolation = cms.string("(isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.1")
00352     ),
00353     ## [optional] : when omitted all monitoring plots for jets
00354     ## will be filled w/o extras
00355     jetExtras = cms.PSet(
00356       ## when omitted monitor plots for pt will be filled from uncorrected
00357       ## jets
00358       jetCorrector = cms.string("ak5CaloL2L3"),
00359       ## when omitted monitor plots will be filled w/o additional cut on
00360       ## jetID                                                                                                   
00361       jetID  = cms.PSet(
00362         label  = cms.InputTag("ak5JetID"),
00363         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00364       ),
00365       ## when omitted no extra selection will be applied on jets before
00366       ## filling the monitor histograms; if jetCorrector is present the
00367       ## selection will be applied to corrected jets                                                
00368       select = cms.string("pt>15 & abs(eta)<2.5& emEnergyFraction>0.01"),
00369       ## when omitted monitor histograms for b-tagging will not be filled                                                                                                   
00370       jetBTaggers  = cms.PSet(
00371         trackCountingEff = cms.PSet(
00372           label = cms.InputTag("trackCountingHighEffBJetTags" ),
00373           workingPoint = cms.double(1.25)
00374         ),
00375         trackCountingPur = cms.PSet(
00376           label = cms.InputTag("trackCountingHighPurBJetTags" ),
00377           workingPoint = cms.double(3.00)
00378         ),
00379         secondaryVertex  = cms.PSet(
00380           label = cms.InputTag("simpleSecondaryVertexHighEffBJetTags"),
00381           workingPoint = cms.double(2.05)
00382         )
00383       ),                                                
00384     ),
00385     ## [optional] : when omitted no mass window will be applied
00386     ## for the W mass before filling the event monitoring plots
00387     massExtras = cms.PSet(
00388       lowerEdge = cms.double( 70.),
00389       upperEdge = cms.double(110.)
00390     ),
00391     ## [optional] : when omitted the monitoring plots for triggering
00392     ## will be empty
00393     triggerExtras = cms.PSet(
00394       src   = cms.InputTag("TriggerResults","","HLT"),
00395      paths = cms.vstring(['HLT_Mu3:HLT_QuadJet15U',
00396                           'HLT_Mu5:HLT_QuadJet15U',
00397                           'HLT_Mu7:HLT_QuadJet15U',
00398                           'HLT_Mu9:HLT_QuadJet15U',
00399                           'HLT_Mu11:HLT_QuadJet15U'])      
00400     )
00401   ),
00402   ## ------------------------------------------------------
00403   ## PRESELECTION
00404   ##
00405   ## setup of the event preselection, which will not
00406   ## be monitored
00407   ## [mandatory] : but may be empty
00408   ##
00409   preselection = cms.PSet(
00410     ## [optional] : when omitted no preselection is applied
00411     #trigger = cms.PSet(
00412     #  src    = cms.InputTag("TriggerResults","","HLT"),
00413     #  select = cms.vstring(['HLT_Mu15_v2'])
00414     #),
00415     ## [optional] : when omitted no preselection is applied
00416     vertex = cms.PSet(
00417       src    = cms.InputTag("offlinePrimaryVertices"),
00418       select = cms.string('abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake')
00419     )
00420   ),
00421   ## ------------------------------------------------------
00422   ## SELECTION
00423   ##
00424   ## monitor histrograms are filled after each selection
00425   ## step, the selection is applied in the order defined
00426   ## by this vector
00427   ## [mandatory] : may be empty or contain an arbitrary
00428   ## number of PSets
00429   selection = cms.VPSet(
00430     cms.PSet(
00431       label  = cms.string("muons:step0"),
00432       src    = cms.InputTag("muons"),
00433       select = cms.string("pt>20 & abs(eta)<2.1 & isGlobalMuon & innerTrack.numberOfValidHits>10 & globalTrack.normalizedChi2>-1 & globalTrack.normalizedChi2<10 & (isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.1"),       
00434       min    = cms.int32(1),
00435       max    = cms.int32(1),
00436     ),
00437     cms.PSet(
00438       label  = cms.string("jets/calo:step1"),
00439       src    = cms.InputTag("ak5CaloJets"),
00440       jetCorrector = cms.string("ak5CaloL2L3"),
00441       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00442       jetID  = cms.PSet(
00443         label  = cms.InputTag("ak5JetID"),
00444         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00445       ),
00446       min = cms.int32(1),
00447     ), 
00448     cms.PSet(
00449       label  = cms.string("jets/calo:step2"),
00450       src    = cms.InputTag("ak5CaloJets"),
00451       jetCorrector = cms.string("ak5CaloL2L3"),
00452       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00453       jetID  = cms.PSet(
00454         label  = cms.InputTag("ak5JetID"),
00455         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00456       ),
00457       min = cms.int32(2),
00458     ), 
00459     cms.PSet(
00460       label  = cms.string("jets/calo:step3"),
00461       src    = cms.InputTag("ak5CaloJets"),
00462       jetCorrector = cms.string("ak5CaloL2L3"),
00463       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00464       jetID  = cms.PSet(
00465         label  = cms.InputTag("ak5JetID"),
00466         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00467       ),
00468       min = cms.int32(3),                                                
00469     ), 
00470     cms.PSet(
00471       label  = cms.string("jets/calo:step4"),
00472       src    = cms.InputTag("ak5CaloJets"),
00473       jetCorrector = cms.string("ak5CaloL2L3"),
00474       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00475       jetID  = cms.PSet(
00476         label  = cms.InputTag("ak5JetID"),
00477         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00478       ),
00479       min = cms.int32(4),                                                
00480     ),
00481   )
00482 )
00483 
00484 topSingleElectronLooseDQM = cms.EDAnalyzer("TopSingleLeptonDQM",
00485   ## ------------------------------------------------------
00486   ## SETUP
00487   ##
00488   ## configuration of the MonitoringEnsemble(s)
00489   ## [mandatory] : optional PSets may be omitted
00490   ##
00491   setup = cms.PSet(
00492     ## sub-directory to write the monitor histograms to
00493     ## [mandatory] : should not be changed w/o explicit
00494     ## communication to TopCom!
00495     directory = cms.string("Physics/Top/TopSingleElectronLooseDQM/"),
00496     ## [mandatory]
00497     sources = cms.PSet(
00498       muons = cms.InputTag("muons"),
00499       elecs = cms.InputTag("gsfElectrons"),
00500       jets  = cms.InputTag("ak5CaloJets"),
00501       mets  = cms.VInputTag("met", "tcMet", "pfMet"),
00502       pvs   = cms.InputTag("offlinePrimaryVertices")
00503 
00504     ),
00505     ## [optional] : when omitted the verbosity level is set to STANDARD
00506     monitoring = cms.PSet(
00507       verbosity = cms.string("DEBUG")
00508     ),
00509     ## [optional] : when omitted all monitoring plots for primary vertices
00510     ## will be filled w/o extras
00511     pvExtras = cms.PSet(
00512       ## when omitted electron plots will be filled w/o additional pre-
00513       ## selection of the primary vertex candidates                                                                                            
00514       select = cms.string("abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake")
00515     ),
00516     ## [optional] : when omitted all monitoring plots for electrons
00517     ## will be filled w/o extras
00518     elecExtras = cms.PSet(
00519       ## when omitted electron plots will be filled w/o cut on electronId
00520       electronId = cms.PSet( src = cms.InputTag("simpleEleId70cIso"), pattern = cms.int32(1) ),
00521       ## when omitted electron plots will be filled w/o additional pre-
00522       ## selection of the electron candidates
00523       select     = cms.string("pt>15 & abs(eta)<2.5"),
00524       ## when omitted isolated electron multiplicity plot will be equi-
00525       ## valent to inclusive electron multiplicity plot                                                    
00526       isolation  = cms.string("(dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.1"),                                                   
00527     ),
00528     ## [optional] : when omitted all monitoring plots for jets
00529     ## will be filled w/o extras
00530     jetExtras = cms.PSet(
00531       ## when omitted monitor plots for pt will be filled from uncorrected
00532       ## jets
00533       jetCorrector = cms.string("ak5CaloL2L3"),
00534       ## when omitted monitor plots will be filled w/o additional cut on
00535       ## jetID                                                   
00536       jetID  = cms.PSet(
00537         label  = cms.InputTag("ak5JetID"),
00538         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00539       ),
00540       ## when omitted no extra selection will be applied on jets before
00541       ## filling the monitor histograms; if jetCorrector is present the
00542       ## selection will be applied to corrected jets
00543       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"), 
00544       ## when omitted monitor histograms for b-tagging will not be filled                                                   
00545       jetBTaggers  = cms.PSet(
00546         trackCountingEff = cms.PSet(
00547           label = cms.InputTag("trackCountingHighEffBJetTags" ),
00548           workingPoint = cms.double(1.25)
00549         ),
00550         trackCountingPur = cms.PSet(
00551           label = cms.InputTag("trackCountingHighPurBJetTags" ),
00552           workingPoint = cms.double(3.00)
00553         ),
00554         secondaryVertex  = cms.PSet(
00555           label = cms.InputTag("simpleSecondaryVertexHighEffBJetTags"),
00556           workingPoint = cms.double(2.05)
00557         )
00558       ),
00559     ),
00560     ## [optional] : when omitted no mass window will be applied
00561     ## for the W mass before filling the event monitoring plots
00562     massExtras = cms.PSet(
00563       lowerEdge = cms.double( 70.),
00564       upperEdge = cms.double(110.)
00565     ),
00566     ## [optional] : when omitted the monitoring plots for triggering
00567     ## will be empty
00568     triggerExtras = cms.PSet(
00569       src   = cms.InputTag("TriggerResults","","HLT"),
00570       paths = cms.vstring(['HLT_Ele15_LW_L1R:HLT_QuadJetU15'])
00571     )
00572   ),
00573   ## ------------------------------------------------------
00574   ## PRESELECTION
00575   ##
00576   ## setup of the event preselection, which will not
00577   ## be monitored
00578   ## [mandatory] : but may be empty
00579   ##
00580   preselection = cms.PSet(
00581     ## [optional] : when omitted no preselection is applied
00582     #trigger = cms.PSet(
00583     #  src    = cms.InputTag("TriggerResults","","HLT"),
00584     #  select = cms.vstring(['HLT_Ele15_SW_CaloEleId_L1R'])
00585     #),
00586     ## [optional] : when omitted no preselection is applied
00587     vertex = cms.PSet(
00588       src    = cms.InputTag("offlinePrimaryVertices"),
00589       select = cms.string('abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake')
00590     )
00591   ),
00592   ## ------------------------------------------------------
00593   ## SELECTION
00594   ##
00595   ## monitor histrograms are filled after each selection
00596   ## step, the selection is applied in the order defined
00597   ## by this vector
00598   ## [mandatory] : may be empty or contain an arbitrary
00599   ## number of PSets
00600   selection = cms.VPSet(
00601     cms.PSet(
00602       label  = cms.string("elecs:step0"),
00603       src    = cms.InputTag("gsfElectrons"),
00604       electronId = cms.PSet( src = cms.InputTag("simpleEleId70cIso"), pattern = cms.int32(1) ),
00605       select = cms.string("pt>15 & abs(eta)<2.5"),
00606       min    = cms.int32(1),
00607     ),
00608     cms.PSet(
00609       label  = cms.string("jets/calo:step1"),
00610       src    = cms.InputTag("ak5CaloJets"),
00611       jetCorrector = cms.string("ak5CaloL2L3"),
00612       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00613       jetID  = cms.PSet(
00614         label  = cms.InputTag("ak5JetID"),
00615         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00616       ),
00617       min = cms.int32(1),                                                   
00618     ), 
00619     cms.PSet(
00620       label  = cms.string("jets/calo:step2"),
00621       src    = cms.InputTag("ak5CaloJets"),
00622       jetCorrector = cms.string("ak5CaloL2L3"),
00623       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00624       jetID  = cms.PSet(
00625         label  = cms.InputTag("ak5JetID"),
00626         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00627       ),
00628       min = cms.int32(2),
00629     ), 
00630     cms.PSet(
00631       label  = cms.string("jets/calo:step3"),
00632       src    = cms.InputTag("ak5CaloJets"),
00633       jetCorrector = cms.string("ak5CaloL2L3"),
00634       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00635       jetID  = cms.PSet(
00636         label  = cms.InputTag("ak5JetID"),
00637         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00638       ),
00639       min = cms.int32(3),
00640     ), 
00641     cms.PSet(
00642       label  = cms.string("jets/calo:step4"),
00643       src    = cms.InputTag("ak5CaloJets"),
00644       jetCorrector = cms.string("ak5CaloL2L3"),
00645       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00646       jetID  = cms.PSet(
00647         label  = cms.InputTag("ak5JetID"),
00648         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00649       ),
00650       min = cms.int32(4),
00651     ), 
00652   )
00653 )
00654 
00655 topSingleElectronMediumDQM = cms.EDAnalyzer("TopSingleLeptonDQM",
00656   ## ------------------------------------------------------
00657   ## SETUP
00658   ##
00659   ## configuration of the MonitoringEnsemble(s)
00660   ## [mandatory] : optional PSets may be omitted
00661   ##
00662   setup = cms.PSet(
00663     ## sub-directory to write the monitor histograms to
00664     ## [mandatory] : should not be changed w/o explicit
00665     ## communication to TopCom!
00666     directory = cms.string("Physics/Top/TopSingleElectronMediumDQM/"),
00667     ## [mandatory]
00668     sources = cms.PSet(
00669       muons = cms.InputTag("muons"),
00670       elecs = cms.InputTag("gsfElectrons"),
00671       jets  = cms.InputTag("ak5CaloJets"),
00672       mets  = cms.VInputTag("met", "tcMet", "pfMet"),
00673       pvs   = cms.InputTag("offlinePrimaryVertices")
00674 
00675     ),
00676     ## [optional] : when omitted the verbosity level is set to STANDARD
00677     monitoring = cms.PSet(
00678       verbosity = cms.string("DEBUG")
00679     ),
00680     ## [optional] : when omitted all monitoring plots for primary vertices
00681     ## will be filled w/o extras
00682     pvExtras = cms.PSet(
00683       ## when omitted electron plots will be filled w/o additional pre-
00684       ## selection of the primary vertex candidates                                                                                            
00685       select = cms.string("abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake")
00686     ),
00687     ## [optional] : when omitted all monitoring plots for electrons
00688     ## will be filled w/o extras
00689     elecExtras = cms.PSet(
00690       ## when omitted electron plots will be filled w/o cut on electronId
00691       electronId = cms.PSet( src = cms.InputTag("simpleEleId70cIso"), pattern = cms.int32(1) ),
00692       ## when omitted electron plots will be filled w/o additional pre-
00693       ## selection of the electron candidates
00694       select     = cms.string("pt>25 & abs(eta)<2.5 & (dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.1"),
00695       ## when omitted isolated electron multiplicity plot will be equi-
00696       ## valent to inclusive electron multiplicity plot 
00697       isolation  = cms.string("(dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.1"),
00698     ),
00699     ## [optional] : when omitted all monitoring plots for jets
00700     ## will be filled w/o extras
00701     jetExtras = cms.PSet(
00702       ## when omitted monitor plots for pt will be filled from uncorrected
00703       ## jets
00704       jetCorrector = cms.string("ak5CaloL2L3"),
00705       ## when omitted monitor plots will be filled w/o additional cut on
00706       ## jetID
00707       jetID  = cms.PSet(
00708         label  = cms.InputTag("ak5JetID"),
00709         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00710       ),
00711       ## when omitted no extra selection will be applied on jets before
00712       ## filling the monitor histograms; if jetCorrector is present the
00713       ## selection will be applied to corrected jets 
00714       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00715       ## when omitted monitor histograms for b-tagging will not be filled
00716       jetBTaggers  = cms.PSet(
00717         trackCountingEff = cms.PSet(
00718           label = cms.InputTag("trackCountingHighEffBJetTags" ),
00719           workingPoint = cms.double(1.25)
00720         ),
00721         trackCountingPur = cms.PSet(
00722           label = cms.InputTag("trackCountingHighPurBJetTags" ),
00723           workingPoint = cms.double(3.00)
00724         ),
00725         secondaryVertex  = cms.PSet(
00726           label = cms.InputTag("simpleSecondaryVertexHighEffBJetTags"),
00727           workingPoint = cms.double(2.05)
00728         )
00729       ),
00730     ),
00731     ## [optional] : when omitted no mass window will be applied
00732     ## for the W mass before filling the event monitoring plots
00733     massExtras = cms.PSet(
00734       lowerEdge = cms.double( 70.),
00735       upperEdge = cms.double(110.)
00736     ),
00737     ## [optional] : when omitted the monitoring plots for triggering
00738     ## will be empty
00739     triggerExtras = cms.PSet(
00740       src   = cms.InputTag("TriggerResults","","HLT"),
00741       paths = cms.vstring([ 'HLT_Ele15_LW_L1R:HLT_QuadJetU15'])
00742     )
00743   ),
00744   ## ------------------------------------------------------
00745   ## PRESELECTION
00746   ##
00747   ## setup of the event preselection, which will not
00748   ## be monitored
00749   ## [mandatory] : but may be empty
00750   ##
00751   preselection = cms.PSet(
00752     ## [optional] : when omitted no preselection is applied
00753     #trigger = cms.PSet(
00754     #  src    = cms.InputTag("TriggerResults","","HLT"),
00755     #  select = cms.vstring(['HLT_Ele15_SW_CaloEleId_L1R'])
00756     #),
00757     ## [optional] : when omitted no preselection is applied
00758     vertex = cms.PSet(
00759       src    = cms.InputTag("offlinePrimaryVertices"),
00760       select = cms.string('abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake')
00761     )
00762   ),
00763   ## ------------------------------------------------------
00764   ## SELECTION
00765   ##
00766   ## monitor histrograms are filled after each selection
00767   ## step, the selection is applied in the order defined
00768   ## by this vector
00769   ## [mandatory] : may be empty or contain an arbitrary
00770   ## number of PSets
00771   selection = cms.VPSet(
00772     cms.PSet(
00773       label = cms.string("elecs:step0"),
00774       src   = cms.InputTag("gsfElectrons"),
00775       electronId = cms.PSet( src = cms.InputTag("simpleEleId70cIso"), pattern = cms.int32(1) ),
00776       select = cms.string("pt>25 & abs(eta)<2.5 & (dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.1"),
00777       min = cms.int32(1),
00778       max = cms.int32(1),
00779     ),
00780     cms.PSet(
00781       label = cms.string("jets/calo:step1"),
00782       src   = cms.InputTag("ak5CaloJets"),
00783       jetCorrector = cms.string("ak5CaloL2L3"),
00784       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00785       jetID  = cms.PSet(
00786         label  = cms.InputTag("ak5JetID"),
00787         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00788       ),
00789       min = cms.int32(1),
00790     ), 
00791     cms.PSet(
00792       label  = cms.string("jets/calo:step2"),
00793       src    = cms.InputTag("ak5CaloJets"),
00794       jetCorrector = cms.string("ak5CaloL2L3"),
00795       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00796       jetID  = cms.PSet(
00797         label  = cms.InputTag("ak5JetID"),
00798         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00799       ),
00800       min = cms.int32(2),
00801     ), 
00802     cms.PSet(
00803       label  = cms.string("jets/calo:step3"),
00804       src    = cms.InputTag("ak5CaloJets"),
00805       jetCorrector = cms.string("ak5CaloL2L3"),
00806       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00807       jetID  = cms.PSet(
00808         label  = cms.InputTag("ak5JetID"),
00809         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00810       ),
00811       min = cms.int32(3),
00812     ), 
00813     cms.PSet(
00814       label  = cms.string("jets/calo:step4"),
00815       src    = cms.InputTag("ak5CaloJets"),
00816       jetCorrector = cms.string("ak5CaloL2L3"),
00817       select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
00818       jetID  = cms.PSet(
00819         label  = cms.InputTag("ak5JetID"),
00820         select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
00821       ),
00822       min = cms.int32(4),
00823     ), 
00824   )
00825 )