CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
singleTopDQM_cfi.py
Go to the documentation of this file.
2 
3 
4 singleTopDQM = cms.EDAnalyzer("SingleTopTChannelLeptonDQM",
5  ## ------------------------------------------------------
6  ## SETUP
7  ##
8  ## configuration of the MonitoringEnsemble(s)
9  ## [mandatory] : optional PSets may be omitted
10  ##
11  setup = cms.PSet(
12  ## sub-directory to write the monitor histograms to
13  ## [mandatory] : should not be changed w/o explicit
14  ## communication to TopCom!
15  directory = cms.string("Physics/Top/SingleTopDQM/"),
16  ## [mandatory]
17  sources = cms.PSet(
18  muons = cms.InputTag("muons"),
19  elecs = cms.InputTag("gedGsfElectrons"),
20  jets = cms.InputTag("ak5PFJetsCHS"),
21  mets = cms.VInputTag("met", "tcMet", "pfMet"),
22  pvs = cms.InputTag("offlinePrimaryVertices")
23  ),
24  ## [optional] : when omitted the verbosity level is set to STANDARD
25  monitoring = cms.PSet(
26  verbosity = cms.string("DEBUG")
27  ),
28  ## [optional] : when omitted all monitoring plots for primary vertices
29  ## will be filled w/o extras
30 # pvExtras = cms.PSet(
31  ## when omitted electron plots will be filled w/o additional pre-
32  ## selection of the primary vertex candidates
33 # select = cms.string("abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake")
34 # ),
35  ## [optional] : when omitted all monitoring plots for electrons
36  ## will be filled w/o extras
37  elecExtras = cms.PSet(
38  ## when omitted electron plots will be filled w/o cut on electronId
39  electronId = cms.PSet( src = cms.InputTag("eidRobustLoose"), pattern = cms.int32(1) ),
40  ## when omitted electron plots will be filled w/o additional pre-
41  ## selection of the electron candidates
42  select = cms.string("pt>15 & abs(eta)<2.5 & abs(gsfTrack.d0)<1 & abs(gsfTrack.dz)<20"),
43  ## when omitted isolated electron multiplicity plot will be equi-
44  ## valent to inclusive electron multiplicity plot
45 # isolation = cms.string("(dr03TkSumPt+dr04EcalRecHitSumEt+dr04HcalTowerSumEt)/pt<0.1"),
46  ),
47  ## [optional] : when omitted all monitoring plots for muons
48  ## will be filled w/o extras
49  muonExtras = cms.PSet(
50  ## when omitted muon plots will be filled w/o additional pre-
51  ## selection of the muon candidates
52  select = cms.string("pt>10 & abs(eta)<2.1 & isGlobalMuon & abs(globalTrack.d0)<1 & abs(globalTrack.dz)<20"),
53  ## when omitted isolated muon multiplicity plot will be equi-
54  ## valent to inclusive muon multiplicity plot
55 # isolation = cms.string("(isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.1"),
56  ),
57  ## [optional] : when omitted all monitoring plots for jets will
58  ## be filled from uncorrected jets
59  jetExtras = cms.PSet(
60  ## when omitted monitor plots for pt will be filled from uncorrected
61  ## jets
62  jetCorrector = cms.string("ak5CaloL2L3"),
63  ## when omitted monitor plots will be filled w/o additional cut on
64  ## jetID
65 # jetID = cms.PSet(
66 # label = cms.InputTag("ak5JetID"),
67 # select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
68 # ),
69  ## when omitted no extra selection will be applied on jets before
70  ## filling the monitor histograms; if jetCorrector is present the
71  ## selection will be applied to corrected jets
72  select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
73  ),
74  ## [optional] : when omitted no mass window will be applied
75  ## for the W mass befor filling the event monitoring plots
76 # massExtras = cms.PSet(
77 # lowerEdge = cms.double( 70.),
78 # upperEdge = cms.double(110.)
79 # ),
80  ## [optional] : when omitted the monitoring plots for triggering
81  ## will be empty
82  triggerExtras = cms.PSet(
83  src = cms.InputTag("TriggerResults","","HLT"),
84  paths = cms.vstring(['HLT_Mu3:HLT_QuadJet15U',
85  'HLT_Mu5:HLT_QuadJet15U',
86  'HLT_Mu7:HLT_QuadJet15U',
87  'HLT_Mu9:HLT_QuadJet15U'])
88  )
89  ),
90  ## ------------------------------------------------------
91  ## PRESELECTION
92  ##
93  ## setup of the event preselection, which will not
94  ## be monitored
95  ## [mandatory] : but may be empty
96  ##
97  preselection = cms.PSet(
98  ## [optional] : when omitted no preselection is applied
99 # trigger = cms.PSet(
100 # src = cms.InputTag("TriggerResults","","HLT"),
101 # select = cms.vstring(['HLT_Mu11', 'HLT_Ele15_LW_L1R', 'HLT_QuadJet30'])
102 # ),
103  ## [optional] : when omitted no preselection is applied
104  vertex = cms.PSet(
105  src = cms.InputTag("offlinePrimaryVertices"),
106  select = cms.string('abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake')
107  )
108  ),
109  ## ------------------------------------------------------
110  ## SELECTION
111  ##
112  ## monitor histrograms are filled after each selection
113  ## step, the selection is applied in the order defined
114  ## by this vector
115  ## [mandatory] : may be empty or contain an arbitrary
116  ## number of PSets
117  ##
118  selection = cms.VPSet(
119  cms.PSet(
120  label = cms.string("jets/calo:step0"),
121  src = cms.InputTag("ak5CaloJets"),
122  select = cms.string("pt>20 & abs(eta)<2.1 & 0.05<emEnergyFraction"),
123  jetID = cms.PSet(
124  label = cms.InputTag("ak5JetID"),
125  select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
126  ),
127  min = cms.int32(2),
128  ),
129  )
130 )
131 
132 singleTopMuonMediumDQM = cms.EDAnalyzer("SingleTopTChannelLeptonDQM",
133  ## ------------------------------------------------------
134  ## SETUP
135  ##
136  ## configuration of the MonitoringEnsemble(s)
137  ## [mandatory] : optional PSets may be omitted
138  ##
139  setup = cms.PSet(
140  ## sub-directory to write the monitor histograms to
141  ## [mandatory] : should not be changed w/o explicit
142  ## communication to TopCom!
143  directory = cms.string("Physics/Top/SingleTopMuonMediumDQM/"),
144  ## [mandatory]
145  sources = cms.PSet(
146  muons = cms.InputTag("particleFlow"),
147 # muons = cms.InputTag("muons"),
148  elecs_gsf = cms.InputTag("gedGsfElectrons"),
149  elecs = cms.InputTag("particleFlow"),
150  jets = cms.InputTag("ak5PFJetsCHS"),
151  mets = cms.VInputTag("met", "tcMet", "pfMet"),
152  pvs = cms.InputTag("offlinePrimaryVertices")
153  ),
154  ## [optional] : when omitted the verbosity level is set to STANDARD
155  monitoring = cms.PSet(
156  verbosity = cms.string("DEBUG")
157  ),
158  ## [optional] : when omitted all monitoring plots for primary vertices
159  ## will be filled w/o extras
160 # pvExtras = cms.PSet(
161  ## when omitted electron plots will be filled w/o additional pre-
162  ## selection of the primary vertex candidates
163 # select = cms.string("") #abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake")
164 # ),
165  ## [optional] : when omitted all monitoring plots for muons
166  ## will be filled w/o extras
167  muonExtras = cms.PSet(
168  ## when omitted muon plots will be filled w/o additional pre-
169  ## selection of the muon candidates
170  select = cms.string("abs(muonRef.eta)<2.1")
171  ## & isGlobalMuon & innerTrack.numberOfValidHits>10 & globalTrack.normalizedChi2>-1 & globalTrack.normalizedChi2<10
172  ##& (isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.1"),
173  ## when omitted isolated muon multiplicity plot will be equi-
174  ## valent to inclusive muon multiplicity plot
175  ## isolation = cms.string("(muonRef.isolationR03.sumPt+muonRef.isolationR03.emEt+muonRef.isolationR03.hadEt)/muonRef.pt<10" )
176  ## isolation = cms.string("(muonRef.isolationR03.sumPt+muonRef.isolationR03.emEt+muonRef.isolationR03.hadEt)/muonRef.pt<0.1")
177  ),
178  ## [optional] : when omitted all monitoring plots for jets
179  ## will be filled w/o extras
180  jetExtras = cms.PSet(
181  ## when omitted monitor plots for pt will be filled from uncorrected
182  ## jets
183  jetCorrector = cms.string("ak5PFL2L3"),
184  ## when omitted monitor plots will be filled w/o additional cut on
185  ## jetID
186 # jetID = cms.PSet(
187 # label = cms.InputTag("ak5JetID"),
188 # select = cms.string(""), ##fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
189 # ),
190  ## when omitted no extra selection will be applied on jets before
191  ## filling the monitor histograms; if jetCorrector is present the
192  ## selection will be applied to corrected jets
193  select = cms.string("pt>15 & abs(eta)<2.5"), # & neutralEmEnergyFraction >0.01 & chargedEmEnergyFraction>0.01"),
194  ## when omitted monitor histograms for b-tagging will not be filled
195  jetBTaggers = cms.PSet(
196  trackCountingEff = cms.PSet(
197  label = cms.InputTag("trackCountingHighEffBJetTags" ),
198  workingPoint = cms.double(1.25)
199  ),
200  trackCountingPur = cms.PSet(
201  label = cms.InputTag("trackCountingHighPurBJetTags" ),
202  workingPoint = cms.double(3.41)
203  ),
204  secondaryVertex = cms.PSet(
205  label = cms.InputTag("simpleSecondaryVertexHighEffBJetTags"),
206  workingPoint = cms.double(2.05)
207  ),
208  combinedSecondaryVertex = cms.PSet(
209  label = cms.InputTag("combinedSecondaryVertexBJetTags"),
210  workingPoint = cms.double(0.898)
211  )
212  ),
213  ),
214  ## [optional] : when omitted no mass window will be applied
215  ## for the W mass before filling the event monitoring plots
216 # massExtras = cms.PSet(
217 # lowerEdge = cms.double( 70.),
218 # upperEdge = cms.double(110.)
219 # ),
220  ## [optional] : when omitted the monitoring plots for triggering
221  ## will be empty
222 # triggerExtras = cms.PSet(
223 # src = cms.InputTag("TriggerResults","","HLT"),
224 # paths = cms.vstring(['HLT_IsoMu17_eta2p1_CentralPFNoPUJet30_BTagIPIter_v1'])
225 # 'HLT_IsoMu24_eta2p1_v12',
226 # 'HLT_IsoMu20_eta2p1_CentralPFJet30_BTagIPIter_v2',
227 # 'HLT_IsoMu20_eta2p1_CentralPFJet30_BTagIPIter_v3'])
228 # )
229  ),
230  ## ------------------------------------------------------
231  ## PRESELECTION
232  ##
233  ## setup of the event preselection, which will not
234  ## be monitored
235  ## [mandatory] : but may be empty
236  ##
237  preselection = cms.PSet(
238  ## [optional] : when omitted no preselection is applied
239 # trigger = cms.PSet(
240 # src = cms.InputTag("TriggerResults","","HLT"),
241 # select = cms.vstring(['HLT_IsoMu17_eta2p1_CentralPFNoPUJet30_BTagIPIter_v1'])
242 # ),
243  ## [optional] : when omitted no preselection is applied
244  vertex = cms.PSet(
245  src = cms.InputTag("offlinePrimaryVertices"),
246  select = cms.string('!isFake && ndof >= 4 && abs(z)<24. && position.Rho <= 2.0')
247  )
248  ),
249  ## ------------------------------------------------------
250  ## SELECTION
251  ##
252  ## monitor histrograms are filled after each selection
253  ## step, the selection is applied in the order defined
254  ## by this vector
255  ## [mandatory] : may be empty or contain an arbitrary
256  ## number of PSets
257  selection = cms.VPSet(
258  cms.PSet(
259  label = cms.string("presel"),
260  src = cms.InputTag("offlinePrimaryVertices"),
261 # select = cms.string('!isFake && ndof >= 4 && abs(z)<24. && position.Rho <= 2.0 '),
262 
263  ),
264  cms.PSet(
265  label = cms.string("muons/pf:step0"),
266  src = cms.InputTag("particleFlow"),
267  select = cms.string("muonRef.pt>20 & abs(muonRef.eta)<2.1 & muonRef.isNonnull & muonRef.innerTrack.isNonnull & muonRef.isGlobalMuon & muonRef.isTrackerMuon & muonRef.innerTrack.numberOfValidHits>10 & muonRef.globalTrack.hitPattern.numberOfValidMuonHits>0 & muonRef.globalTrack.normalizedChi2<10 & muonRef.innerTrack.hitPattern.pixelLayersWithMeasurement>=1 & muonRef.numberOfMatches>1 & abs(muonRef.innerTrack.dxy)<0.02 & (muonRef.pfIsolationR04.sumChargedHadronPt + muonRef.pfIsolationR04.sumNeutralHadronEt + muonRef.pfIsolationR04.sumPhotonEt)/muonRef.pt < 0.15"),
268 
269  min = cms.int32(1),
270  max = cms.int32(1),
271  ),
272  cms.PSet(
273  label = cms.string("jets/pf:step1"),
274  src = cms.InputTag("ak5PFJetsCHS"),
275  jetCorrector = cms.string("ak5PFL2L3"),
276  select = cms.string(" pt>30 & abs(eta)<4.5 & numberOfDaughters>1 & ((abs(eta)>2.4) || ( chargedHadronEnergyFraction > 0 & chargedMultiplicity>0 & chargedEmEnergyFraction<0.99)) & neutralEmEnergyFraction < 0.99 & neutralHadronEnergyFraction < 0.99"),
277 
278  min = cms.int32(1),
279  max = cms.int32(1),
280  ),
281  cms.PSet(
282  label = cms.string("jets/pf:step2"),
283  src = cms.InputTag("ak5PFJetsCHS"),
284  jetCorrector = cms.string("ak5PFL2L3"),
285  select = cms.string(" pt>30 & abs(eta)<4.5 & numberOfDaughters>1 & ((abs(eta)>2.4) || ( chargedHadronEnergyFraction > 0 & chargedMultiplicity>0 & chargedEmEnergyFraction<0.99)) & neutralEmEnergyFraction < 0.99 & neutralHadronEnergyFraction < 0.99"),
286 
287  min = cms.int32(2),
288  max = cms.int32(2),
289  ),
290  )
291 )
292 
293 singleTopElectronMediumDQM = cms.EDAnalyzer("SingleTopTChannelLeptonDQM",
294  ## ------------------------------------------------------
295  ## SETUP
296  ##
297  ## configuration of the MonitoringEnsemble(s)
298  ## [mandatory] : optional PSets may be omitted
299  ##
300  setup = cms.PSet(
301  ## sub-directory to write the monitor histograms to
302  ## [mandatory] : should not be changed w/o explicit
303  ## communication to TopCom!
304  directory = cms.string("Physics/Top/SingleTopElectronMediumDQM/"),
305  ## [mandatory]
306  sources = cms.PSet(
307  muons = cms.InputTag("particleFlow"),
308  elecs_gsf = cms.InputTag("gedGsfElectrons"),
309  elecs = cms.InputTag("particleFlow"),
310  jets = cms.InputTag("ak5PFJetsCHS"),
311  mets = cms.VInputTag("met", "tcMet", "pfMet"),
312  pvs = cms.InputTag("offlinePrimaryVertices")
313 
314  ),
315  ## [optional] : when omitted the verbosity level is set to STANDARD
316  monitoring = cms.PSet(
317  verbosity = cms.string("DEBUG")
318  ),
319  ## [optional] : when omitted all monitoring plots for primary vertices
320  ## will be filled w/o extras
321 # pvExtras = cms.PSet(
322  ## when omitted electron plots will be filled w/o additional pre-
323  ## selection of the primary vertex candidates
324 # select = cms.string("abs(x)<1. & abs(y)<1. & abs(z)<20. & tracksSize>3 & !isFake")
325 # ),
326  ## [optional] : when omitted all monitoring plots for electrons
327  ## will be filled w/o extras
328  elecExtras = cms.PSet(
329  ## when omitted electron plots will be filled w/o cut on electronId
330  electronId = cms.PSet( src = cms.InputTag("simpleEleId70cIso"), pattern = cms.int32(1) ),
331  ## when omitted electron plots will be filled w/o additional pre-
332  ## selection of the electron candidates
333  select = cms.string("gsfElectronRef.pt>25"), ## & abs(eta)<2.5 & (dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.1"),
334  ## when omitted isolated electron multiplicity plot will be equi-
335  ## valent to inclusive electron multiplicity plot
336  ## isolation = cms.string("(dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.1"),
337  ),
338  ## [optional] : when omitted all monitoring plots for jets
339  ## will be filled w/o extras
340  jetExtras = cms.PSet(
341  ## when omitted monitor plots for pt will be filled from uncorrected
342  ## jets
343  jetCorrector = cms.string("ak5PFL2L3"),
344  ## when omitted monitor plots will be filled w/o additional cut on
345  ## jetID
346 # jetID = cms.PSet(
347 # label = cms.InputTag("ak5JetID"),
348 # select = cms.string(" ")
349 # ),
350  ## when omitted no extra selection will be applied on jets before
351  ## filling the monitor histograms; if jetCorrector is present the
352  ## selection will be applied to corrected jets
353  select = cms.string("pt>15 & abs(eta)<2.5"), ## & emEnergyFraction>0.01"),
354  ## when omitted monitor histograms for b-tagging will not be filled
355  jetBTaggers = cms.PSet(
356  trackCountingEff = cms.PSet(
357  label = cms.InputTag("trackCountingHighEffBJetTags" ),
358  workingPoint = cms.double(1.25)
359  ),
360  trackCountingPur = cms.PSet(
361  label = cms.InputTag("trackCountingHighPurBJetTags" ),
362  workingPoint = cms.double(3.41)
363  ),
364  secondaryVertex = cms.PSet(
365  label = cms.InputTag("simpleSecondaryVertexHighEffBJetTags"),
366  workingPoint = cms.double(2.05)
367  ),
368  combinedSecondaryVertex = cms.PSet(
369  label = cms.InputTag("combinedSecondaryVertexBJetTags"),
370  workingPoint = cms.double(0.898)
371  )
372  ),
373  ),
374  ## [optional] : when omitted no mass window will be applied
375  ## for the W mass before filling the event monitoring plots
376 # massExtras = cms.PSet(
377 # lowerEdge = cms.double( 70.),
378 # upperEdge = cms.double(110.)
379 # ),
380  ## [optional] : when omitted the monitoring plots for triggering
381  ## will be empty
382 # triggerExtras = cms.PSet(
383 # src = cms.InputTag("TriggerResults","","HLT"),
384 # paths = cms.vstring([ 'HLT_Ele15_LW_L1R:HLT_QuadJetU15'])
385 ## paths = cms.vstring([''])
386 # )
387  ),
388  ## ------------------------------------------------------
389  ## PRESELECTION
390  ##
391  ## setup of the event preselection, which will not
392  ## be monitored
393  ## [mandatory] : but may be empty
394  ##
395  preselection = cms.PSet(
396  ## [optional] : when omitted no preselection is applied
397 # trigger = cms.PSet(
398 # src = cms.InputTag("TriggerResults","","HLT"),
399 # select = cms.vstring(['HLT_Ele15_SW_CaloEleId_L1R'])
400 # ),
401  ## [optional] : when omitted no preselection is applied
402  vertex = cms.PSet(
403  src = cms.InputTag("offlinePrimaryVertices"),
404  select = cms.string('!isFake && ndof >= 4 && abs(z)<24. && position.Rho <= 2.0')
405  )
406  ),
407  ## ------------------------------------------------------
408  ## SELECTION
409  ##
410  ## monitor histrograms are filled after each selection
411  ## step, the selection is applied in the order defined
412  ## by this vector
413  ## [mandatory] : may be empty or contain an arbitrary
414  ## number of PSets
415  selection = cms.VPSet(
416  cms.PSet(
417  label = cms.string("presel"),
418  src = cms.InputTag("offlinePrimaryVertices"),
419 # select = cms.string('!isFake && ndof >= 4 && abs(z)<24. && position.Rho <= 2.0'),
420  ),
421  cms.PSet(
422  label = cms.string("elecs/pf:step0"),
423  src = cms.InputTag("particleFlow"),
424  electronId = cms.PSet( src = cms.InputTag("simpleEleId70cIso"), pattern = cms.int32(1) ),
425  select = cms.string("gsfElectronRef.pt>30 & abs(gsfElectronRef.eta)<2.5 & gsfElectronRef.isNonnull & gsfElectronRef.gsfTrack.isNonnull & ( abs(gsfElectronRef.superCluster.eta)> 1.5660 || abs(gsfElectronRef.superCluster.eta)<1.4442) & (gsfElectronRef.pfIsolationVariables.sumChargedHadronPt + gsfElectronRef.pfIsolationVariables.sumNeutralHadronEt + gsfElectronRef.pfIsolationVariables.sumPhotonEt)/gsfElectronRef.pt<0.125 & abs(gsfElectronRef.gsfTrack.dxy)<0.02 "),
426  min = cms.int32(1),
427  max = cms.int32(1),
428  ),
429  cms.PSet(
430  label = cms.string("jets/pf:step1"),
431  src = cms.InputTag("ak5PFJetsCHS"),
432  jetCorrector = cms.string("ak5PFL2L3"),
433  select = cms.string("pt>30 & abs(eta)<4.5 & numberOfDaughters>1 & ((abs(eta)>2.4) || ( chargedHadronEnergyFraction > 0 & chargedMultiplicity>0 & chargedEmEnergyFraction<0.99)) & neutralEmEnergyFraction < 0.99 & neutralHadronEnergyFraction < 0.99"),
434 
435  min = cms.int32(1),
436  max = cms.int32(1),
437 
438  ),
439  cms.PSet(
440  label = cms.string("jets/pf:step2"),
441  src = cms.InputTag("ak5PFJetsCHS"),
442  jetCorrector = cms.string("ak5PFL2L3"),
443  select = cms.string("pt>30 & abs(eta)<4.5 & numberOfDaughters>1 & ((abs(eta)>2.4) || ( chargedHadronEnergyFraction > 0 & chargedMultiplicity>0 & chargedEmEnergyFraction<0.99)) & neutralEmEnergyFraction < 0.99 & neutralHadronEnergyFraction < 0.99"),
444 
445  min = cms.int32(2),
446  max = cms.int32(2),
447 
448  ),
449  )
450 )