CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
topDiLeptonOfflineDQM_cfi.py
Go to the documentation of this file.
2 
3 topDiLeptonOfflineDQM = cms.EDAnalyzer("TopDiLeptonOfflineDQM",
4  ## ------------------------------------------------------
5  ## SETUP
6  ##
7  ## configuration of the MonitoringEnsemble(s)
8  ## [mandatory] : optional PSets may be omitted
9  ##
10  setup = cms.PSet(
11  ## sub-directory to write the monitor histograms to
12  ## [mandatory] : should not be changed w/o explicit
13  ## communication to TopCom!
14  directory = cms.string("Physics/Top/TopDiLeptonDQM/"),
15 
16  ## [mandatory]
17  sources = cms.PSet(
18  muons = cms.InputTag("muons"),
19  elecs = cms.InputTag("gedGsfElectrons"),
20  jets = cms.InputTag("ak4PFJetsCHS"),
21  mets = cms.VInputTag("met", "tcMet", "pfMet")
22  ),
23  ## [optional] : when omitted the verbosity level is set to STANDARD
24  monitoring = cms.PSet(
25  verbosity = cms.string("DEBUG")
26  ),
27  ## [optional] : when omitted all monitoring plots for electrons
28  ## will be filled w/o extras
29  elecExtras = cms.PSet(
30  ## when omitted electron plots will be filled w/o cut on electronId
31  #electronId = cms.PSet(
32  # src = cms.InputTag("simpleEleId70cIso"),
33  # #src = cms.InputTag("eidRobustLoose"),
34  # pattern = cms.int32(1)
35  #),
36  ## when omitted electron plots will be filled w/o additional pre-
37  ## selection of the electron candidates
38  select = cms.string("pt>10. && abs(eta)<2.4 && abs(gsfTrack.d0)<1. && abs(gsfTrack.dz)<20."),
39  ## when omitted isolated electron multiplicity plot will be equi-
40  ## valent to inclusive electron multiplicity plot
41  isolation = cms.string("(dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.2"),
42  ),
43  ## [optional] : when omitted all monitoring plots for muons
44  ## will be filled w/o extras
45  muonExtras = cms.PSet(
46  ## when omitted muon plots will be filled w/o additional pre-
47  ## selection of the muon candidates
48  select = cms.string("pt>10. && abs(eta)<2.4 && abs(globalTrack.d0)<1. && abs(globalTrack.dz)<20."),
49  ## when omitted isolated muon multiplicity plot will be equi-
50  ## valent to inclusive muon multiplicity plot
51  isolation = cms.string("(isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.2"),
52  ),
53  ## [optional] : when omitted all monitoring plots for jets will
54  ## be filled from uncorrected jets
55  jetExtras = cms.PSet(
56  ## when omitted monitor plots for pt will be filled from uncorrected
57  ## jets
58  jetCorrector = cms.string("ak4PFL2L3"),
59  ## when omitted monitor plots will be filled w/o additional cut on
60  ## jetID
61 # jetID = cms.PSet(
62 # label = cms.InputTag("ak4JetID"),
63 # select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
64 # ),
65  ## when omitted no extra selection will be applied on jets before
66  ## filling the monitor histograms; if jetCorrector is present the
67  ## selection will be applied to corrected jets
68 # select = cms.string("pt>30. & abs(eta)<2.4 & emEnergyFraction>0.01"),
69  select = cms.string("pt>30. & abs(eta)<2.4 "),
70  ),
71  ## [optional] : when omitted no mass window will be applied
72  ## for the same flavor lepton monitoring plots
73  massExtras = cms.PSet(
74  lowerEdge = cms.double( 76.0),
75  upperEdge = cms.double(106.0)
76  ),
77  ## [optional] : when omitted all monitoring plots for triggering
78  ## will be empty
79  #triggerExtras = cms.PSet(
80  #src = cms.InputTag("TriggerResults","","HLT"),
81  #pathsELECMU = cms.vstring([ 'HLT_Mu9:HLT_Ele15_SW_L1R',
82  #'HLT_Mu15:HLT_Ele15_SW_L1R',
83  #'HLT_DoubleMu3:HLT_Ele15_SW_L1R',
84  #'HLT_Ele15_SW_L1R:HLT_Mu9',
85  #'HLT_Ele15_SW_L1R:HLT_DoubleMu3']),
86  #pathsDIMUON = cms.vstring([ 'HLT_Mu15:HLT_Mu9',
87  #'HLT_DoubleMu3:HLT_Mu9',
88  #'HLT_Mu9:HLT_DoubleMu3',
89  #'HLT_Mu15:HLT_DoubleMu3'])
90  #)
91  ),
92 
93  ## ------------------------------------------------------
94  ## PRESELECTION
95  ##
96  ## setup of the event preselection, which will not
97  ## be monitored
98  ## [mandatory] : but may be empty
99  ##
100  preselection = cms.PSet(
101  ## [optional] : when omitted no preselection is applied
102  #trigger = cms.PSet(
103  #src = cms.InputTag("TriggerResults","","HLT"),
104  #select = cms.vstring(['HLT_Mu9','HLT_Ele15_SW_L1R','HLT_DoubleMu3'])
105  #),
106  ## [optional] : when omitted no preselection is applied
107  vertex = cms.PSet(
108  src = cms.InputTag("offlinePrimaryVertices"),
109  select = cms.string('abs(x)<1. && abs(y)<1. && abs(z)<20. && tracksSize>3 && !isFake')
110  )
111  ),
112 
113  ## ------------------------------------------------------
114  ## SELECTION
115  ##
116  ## monitor histrograms are filled after each selection
117  ## step, the selection is applied in the order defined
118  ## by this vector
119  ## [mandatory] : may be empty or contain an arbitrary
120  ## number of PSets as given below:
121  ##
122  selection = cms.VPSet(
123  #cms.PSet(
124  ### [mandatory] : 'jets' defines the objects to
125  ### select on, 'step0' labels the histograms;
126  ### instead of 'step0' you can choose any label
127  #label = cms.string("empty:step0")
128  #),
129  cms.PSet(
130  label = cms.string("muons:step0"),
131  src = cms.InputTag("muons"),
132  select = cms.string("pt>20 & abs(eta)<2.4 & isGlobalMuon & innerTrack.numberOfValidHits>10 & globalTrack.normalizedChi2>-1 & globalTrack.normalizedChi2<10"),
133  min = cms.int32(2),
134  max = cms.int32(2),
135  ),
136  cms.PSet(
137  label = cms.string("jets/pf:step1"),
138  src = cms.InputTag("ak4PFJetsCHS"),
139  jetCorrector = cms.string("ak4PFL2L3"),
140 # select = cms.string("pt>30. & abs(eta)<2.4 & emEnergyFraction>0.01"),
141 # jetID = cms.PSet(
142 # label = cms.InputTag("ak4JetID"),
143 # select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
144 # ),
145  min = cms.int32(2),
146  #max = cms.int32(2),
147  )
148  )
149 )
150 
151 
152 
153 DiMuonDQM = cms.EDAnalyzer("TopDiLeptonOfflineDQM",
154  ## ------------------------------------------------------
155  ## SETUP
156  ##
157  ## configuration of the MonitoringEnsemble(s)
158  ## [mandatory] : optional PSets may be omitted
159  ##
160  setup = cms.PSet(
161  ## sub-directory to write the monitor histograms to
162  ## [mandatory] : should not be changed w/o explicit
163  ## communication to TopCom!
164  directory = cms.string("Physics/Top/TopDiMuonDQM/"),
165 
166  ## [mandatory]
167  sources = cms.PSet(
168  muons = cms.InputTag("muons"),
169  elecs = cms.InputTag("gedGsfElectrons"),
170  jets = cms.InputTag("ak4PFJetsCHS"),
171  mets = cms.VInputTag("met", "tcMet", "pfMet")
172  ),
173  ## [optional] : when omitted the verbosity level is set to STANDARD
174  monitoring = cms.PSet(
175  verbosity = cms.string("DEBUG")
176  ),
177  ## [optional] : when omitted all monitoring plots for electrons
178  ## will be filled w/o extras
179  elecExtras = cms.PSet(
180  ## when omitted electron plots will be filled w/o cut on electronId
181  #electronId = cms.PSet(
182  # src = cms.InputTag("simpleEleId70cIso"),
183  #src = cms.InputTag("eidRobustLoose"),
184  # pattern = cms.int32(1)
185  #),
186  ## when omitted electron plots will be filled w/o additional pre-
187  ## selection of the electron candidates
188  select = cms.string("pt>500. && abs(eta)<2.4 && abs(gsfTrack.d0)<1. && abs(gsfTrack.dz)<20."),
189  ## when omitted isolated electron multiplicity plot will be equi-
190  ## valent to inclusive electron multiplicity plot
191  isolation = cms.string("(dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.2"),
192  ),
193  ## [optional] : when omitted all monitoring plots for muons
194  ## will be filled w/o extras
195  muonExtras = cms.PSet(
196  ## when omitted muon plots will be filled w/o additional pre-
197  ## selection of the muon candidates
198  select = cms.string("pt>20. && abs(eta)<2.4 && abs(globalTrack.d0)<1. && abs(globalTrack.dz)<20."),
199  ## when omitted isolated muon multiplicity plot will be equi-
200  ## valent to inclusive muon multiplicity plot
201  isolation = cms.string("(isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.2"),
202  ),
203  ## [optional] : when omitted all monitoring plots for jets will
204  ## be filled from uncorrected jets
205  jetExtras = cms.PSet(
206  ## when omitted monitor plots for pt will be filled from uncorrected
207  ## jets
208  jetCorrector = cms.string("ak4PFL2L3"),
209  ## when omitted monitor plots will be filled w/o additional cut on
210  ## jetID
211 # jetID = cms.PSet(
212 # label = cms.InputTag("ak4JetID"),
213 # select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
214 # ),
215  ## when omitted no extra selection will be applied on jets before
216  ## filling the monitor histograms; if jetCorrector is present the
217  ## selection will be applied to corrected jets
218 # select = cms.string("pt>30. & abs(eta)<2.4 & emEnergyFraction>0.01"),
219  select = cms.string("pt>30. & abs(eta)<2.4 "),
220  ),
221  ## [optional] : when omitted no mass window will be applied
222  ## for the same flavor lepton monitoring plots
223  massExtras = cms.PSet(
224  lowerEdge = cms.double( 76.0),
225  upperEdge = cms.double(106.0)
226  ),
227  ## [optional] : when omitted all monitoring plots for triggering
228  ## will be empty
229  #triggerExtras = cms.PSet(
230  #src = cms.InputTag("TriggerResults","","HLT"),
231  #pathsELECMU = cms.vstring([ 'HLT_Mu9:HLT_Ele15_SW_L1R',
232  #'HLT_Mu15:HLT_Ele15_SW_L1R',
233  #'HLT_DoubleMu3:HLT_Ele15_SW_L1R',
234  #'HLT_Ele15_SW_L1R:HLT_Mu9',
235  #'HLT_Ele15_SW_L1R:HLT_DoubleMu3']),
236  #pathsDIMUON = cms.vstring([ 'HLT_Mu15:HLT_Mu9',
237  #'HLT_DoubleMu3:HLT_Mu9',
238  #'HLT_Mu9:HLT_DoubleMu3',
239  #'HLT_Mu15:HLT_DoubleMu3'])
240  #)
241  ),
242 
243  ## ------------------------------------------------------
244  ## PRESELECTION
245  ##
246  ## setup of the event preselection, which will not
247  ## be monitored
248  ## [mandatory] : but may be empty
249  ##
250  preselection = cms.PSet(
251  ## [optional] : when omitted no preselection is applied
252  #trigger = cms.PSet(
253  #src = cms.InputTag("TriggerResults","","HLT"),
254  #select = cms.vstring(['HLT_Mu9','HLT_Ele15_SW_L1R','HLT_DoubleMu3'])
255  #),
256  ## [optional] : when omitted no preselection is applied
257  vertex = cms.PSet(
258  src = cms.InputTag("offlinePrimaryVertices"),
259  select = cms.string('abs(x)<1. && abs(y)<1. && abs(z)<20. && tracksSize>3 && !isFake')
260  )
261  ),
262 
263  ## ------------------------------------------------------
264  ## SELECTION
265  ##
266  ## monitor histrograms are filled after each selection
267  ## step, the selection is applied in the order defined
268  ## by this vector
269  ## [mandatory] : may be empty or contain an arbitrary
270  ## number of PSets as given below:
271  ##
272  selection = cms.VPSet(
273  #cms.PSet(
274  ### [mandatory] : 'jets' defines the objects to
275  ### select on, 'step0' labels the histograms;
276  ### instead of 'step0' you can choose any label
277  #label = cms.string("empty:step0")
278  #),
279  cms.PSet(
280  label = cms.string("muons:step0"),
281  src = cms.InputTag("muons"),
282  select = cms.string("pt>20 & abs(eta)<2.4 & isGlobalMuon & innerTrack.numberOfValidHits>10 & globalTrack.normalizedChi2>-1 & globalTrack.normalizedChi2<10"),
283  min = cms.int32(2),
284  max = cms.int32(2),
285  ),
286  cms.PSet(
287  label = cms.string("jets/pf:step1"),
288  src = cms.InputTag("ak4PFJetsCHS"),
289  jetCorrector = cms.string("ak4PFL2L3"),
290 # select = cms.string("pt>30. & abs(eta)<2.4 & emEnergyFraction>0.01"),
291  select = cms.string("pt>30. & abs(eta)<2.4 "),
292 # jetID = cms.PSet(
293 # label = cms.InputTag("ak4JetID"),
294 # select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
295 # ),
296  min = cms.int32(2),
297  #max = cms.int32(2),
298  ),
299  ),
300 )
301 
302 DiElectronDQM = cms.EDAnalyzer("TopDiLeptonOfflineDQM",
303  ## ------------------------------------------------------
304  ## SETUP
305  ##
306  ## configuration of the MonitoringEnsemble(s)
307  ## [mandatory] : optional PSets may be omitted
308  ##
309  setup = cms.PSet(
310  ## sub-directory to write the monitor histograms to
311  ## [mandatory] : should not be changed w/o explicit
312  ## communication to TopCom!
313  directory = cms.string("Physics/Top/TopDiElectronDQM/"),
314 
315  ## [mandatory]
316  sources = cms.PSet(
317  muons = cms.InputTag("muons"),
318  elecs = cms.InputTag("gedGsfElectrons"),
319  jets = cms.InputTag("ak4PFJetsCHS"),
320  mets = cms.VInputTag("met", "tcMet", "pfMet")
321  ),
322  ## [optional] : when omitted the verbosity level is set to STANDARD
323  monitoring = cms.PSet(
324  verbosity = cms.string("DEBUG")
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(
331  # src = cms.InputTag("simpleEleId70cIso"),
332  # #src = cms.InputTag("eidRobustLoose"),
333  # pattern = cms.int32(1)
334  #),
335  ## when omitted electron plots will be filled w/o additional pre-
336  ## selection of the electron candidates
337  select = cms.string("pt>10. && abs(eta)<2.4 && abs(gsfTrack.d0)<1. && abs(gsfTrack.dz)<20."),
338  ## when omitted isolated electron multiplicity plot will be equi-
339  ## valent to inclusive electron multiplicity plot
340  isolation = cms.string("(dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.2"),
341  ),
342  ## [optional] : when omitted all monitoring plots for muons
343  ## will be filled w/o extras
344  muonExtras = cms.PSet(
345  ## when omitted muon plots will be filled w/o additional pre-
346  ## selection of the muon candidates
347  select = cms.string("pt>500. && abs(eta)<2.4 && abs(globalTrack.d0)<1. && abs(globalTrack.dz)<20."),
348  ## when omitted isolated muon multiplicity plot will be equi-
349  ## valent to inclusive muon multiplicity plot
350  isolation = cms.string("(isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.2"),
351  ),
352  ## [optional] : when omitted all monitoring plots for jets will
353  ## be filled from uncorrected jets
354  jetExtras = cms.PSet(
355  ## when omitted monitor plots for pt will be filled from uncorrected
356  ## jets
357  jetCorrector = cms.string("ak4PFL2L3"),
358  ## when omitted monitor plots will be filled w/o additional cut on
359  ## jetID
360 # jetID = cms.PSet(
361 # label = cms.InputTag("ak4JetID"),
362 # select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
363 # ),
364  ## when omitted no extra selection will be applied on jets before
365  ## filling the monitor histograms; if jetCorrector is present the
366  ## selection will be applied to corrected jets
367 # select = cms.string("pt>30. & abs(eta)<2.4 & emEnergyFraction>0.01"),
368  select = cms.string("pt>30. & abs(eta)<2.4 "),
369  ),
370  ## [optional] : when omitted no mass window will be applied
371  ## for the same flavor lepton monitoring plots
372  massExtras = cms.PSet(
373  lowerEdge = cms.double( 76.0),
374  upperEdge = cms.double(106.0)
375  ),
376  ## [optional] : when omitted all monitoring plots for triggering
377  ## will be empty
378  #triggerExtras = cms.PSet(
379  #src = cms.InputTag("TriggerResults","","HLT"),
380  #pathsELECMU = cms.vstring([ 'HLT_Mu9:HLT_Ele15_SW_L1R',
381  #'HLT_Mu15:HLT_Ele15_SW_L1R',
382  #'HLT_DoubleMu3:HLT_Ele15_SW_L1R',
383  #'HLT_Ele15_SW_L1R:HLT_Mu9',
384  #'HLT_Ele15_SW_L1R:HLT_DoubleMu3']),
385  #pathsDIMUON = cms.vstring([ 'HLT_Mu15:HLT_Mu9',
386  #'HLT_DoubleMu3:HLT_Mu9',
387  #'HLT_Mu9:HLT_DoubleMu3',
388  #'HLT_Mu15:HLT_DoubleMu3'])
389  #)
390  ),
391 
392  ## ------------------------------------------------------
393  ## PRESELECTION
394  ##
395  ## setup of the event preselection, which will not
396  ## be monitored
397  ## [mandatory] : but may be empty
398  ##
399  preselection = cms.PSet(
400  ## [optional] : when omitted no preselection is applied
401  #trigger = cms.PSet(
402  #src = cms.InputTag("TriggerResults","","HLT"),
403  #select = cms.vstring(['HLT_Mu9','HLT_Ele15_SW_L1R','HLT_DoubleMu3'])
404  #),
405  ## [optional] : when omitted no preselection is applied
406  vertex = cms.PSet(
407  src = cms.InputTag("offlinePrimaryVertices"),
408  select = cms.string('abs(x)<1. && abs(y)<1. && abs(z)<20. && tracksSize>3 && !isFake')
409  )
410  ),
411 
412  ## ------------------------------------------------------
413  ## SELECTION
414  ##
415  ## monitor histrograms are filled after each selection
416  ## step, the selection is applied in the order defined
417  ## by this vector
418  ## [mandatory] : may be empty or contain an arbitrary
419  ## number of PSets as given below:
420  ##
421  selection = cms.VPSet(
422  #cms.PSet(
423  ### [mandatory] : 'jets' defines the objects to
424  ### select on, 'step0' labels the histograms;
425  ### instead of 'step0' you can choose any label
426  #label = cms.string("empty:step0")
427  #),
428  cms.PSet(
429  label = cms.string("elecs:step0"),
430  src = cms.InputTag("gedGsfElectrons"),
431 # electronId = cms.PSet(
432 # src = cms.InputTag("simpleEleId70cIso"),
433 # pattern = cms.int32(1)
434 # ),
435  select = cms.string("pt>20 & abs(eta)<2.4 & (dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.17"),
436  min = cms.int32(2),
437  max = cms.int32(2),
438  ),
439  cms.PSet(
440  label = cms.string("jets/pf:step1"),
441  src = cms.InputTag("ak4PFJetsCHS"),
442  jetCorrector = cms.string("ak4PFL2L3"),
443  select = cms.string("pt>30. & abs(eta)<2.4"),
444 # select = cms.string("pt>30. & abs(eta)<2.4 & emEnergyFraction>0.01"),
445 # jetID = cms.PSet(
446 # label = cms.InputTag("ak4JetID"),
447 # select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
448 # ),
449  min = cms.int32(2),
450  #max = cms.int32(2),
451  ),
452  ),
453 )
454 
455 ElecMuonDQM = cms.EDAnalyzer("TopDiLeptonOfflineDQM",
456  ## ------------------------------------------------------
457  ## SETUP
458  ##
459  ## configuration of the MonitoringEnsemble(s)
460  ## [mandatory] : optional PSets may be omitted
461  ##
462  setup = cms.PSet(
463  ## sub-directory to write the monitor histograms to
464  ## [mandatory] : should not be changed w/o explicit
465  ## communication to TopCom!
466  directory = cms.string("Physics/Top/TopElecMuonDQM/"),
467 
468  ## [mandatory]
469  sources = cms.PSet(
470  muons = cms.InputTag("muons"),
471  elecs = cms.InputTag("gedGsfElectrons"),
472  jets = cms.InputTag("ak4PFJetsCHS"),
473  mets = cms.VInputTag("met", "tcMet", "pfMet")
474  ),
475  ## [optional] : when omitted the verbosity level is set to STANDARD
476  monitoring = cms.PSet(
477  verbosity = cms.string("DEBUG")
478  ),
479  ## [optional] : when omitted all monitoring plots for electrons
480  ## will be filled w/o extras
481  elecExtras = cms.PSet(
482  ## when omitted electron plots will be filled w/o cut on electronId
483 # electronId = cms.PSet(
484 # src = cms.InputTag("simpleEleId70cIso"),
485  #src = cms.InputTag("eidRobustLoose"),
486 # pattern = cms.int32(1)
487 # ),
488  ## when omitted electron plots will be filled w/o additional pre-
489  ## selection of the electron candidates
490  select = cms.string("pt>10. && abs(eta)<2.4 && abs(gsfTrack.d0)<1. && abs(gsfTrack.dz)<20."),
491  ## when omitted isolated electron multiplicity plot will be equi-
492  ## valent to inclusive electron multiplicity plot
493  isolation = cms.string("(dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.2"),
494  ),
495  ## [optional] : when omitted all monitoring plots for muons
496  ## will be filled w/o extras
497  muonExtras = cms.PSet(
498  ## when omitted muon plots will be filled w/o additional pre-
499  ## selection of the muon candidates
500  select = cms.string("pt>10. && abs(eta)<2.4 && abs(globalTrack.d0)<1. && abs(globalTrack.dz)<20."),
501  ## when omitted isolated muon multiplicity plot will be equi-
502  ## valent to inclusive muon multiplicity plot
503  isolation = cms.string("(isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.2"),
504  ),
505  ## [optional] : when omitted all monitoring plots for jets will
506  ## be filled from uncorrected jets
507  jetExtras = cms.PSet(
508  ## when omitted monitor plots for pt will be filled from uncorrected
509  ## jets
510  jetCorrector = cms.string("ak4PFL2L3"),
511  ## when omitted monitor plots will be filled w/o additional cut on
512  ## jetID
513 # jetID = cms.PSet(
514 # label = cms.InputTag("ak4JetID"),
515 # select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
516 # ),
517  ## when omitted no extra selection will be applied on jets before
518  ## filling the monitor histograms; if jetCorrector is present the
519  ## selection will be applied to corrected jets
520 # select = cms.string("pt>30. & abs(eta)<2.4 & emEnergyFraction>0.01"),
521  select = cms.string("pt>30. & abs(eta)<2.4 "),
522  ),
523  ## [optional] : when omitted no mass window will be applied
524  ## for the same flavor lepton monitoring plots
525  massExtras = cms.PSet(
526  lowerEdge = cms.double( 76.0),
527  upperEdge = cms.double(106.0)
528  ),
529  ## [optional] : when omitted all monitoring plots for triggering
530  ## will be empty
531  #triggerExtras = cms.PSet(
532  #src = cms.InputTag("TriggerResults","","HLT"),
533  #pathsELECMU = cms.vstring([ 'HLT_Mu9:HLT_Ele15_SW_L1R',
534  #'HLT_Mu15:HLT_Ele15_SW_L1R',
535  #'HLT_DoubleMu3:HLT_Ele15_SW_L1R',
536  #'HLT_Ele15_SW_L1R:HLT_Mu9',
537  #'HLT_Ele15_SW_L1R:HLT_DoubleMu3']),
538  #pathsDIMUON = cms.vstring([ 'HLT_Mu15:HLT_Mu9',
539  #'HLT_DoubleMu3:HLT_Mu9',
540  #'HLT_Mu9:HLT_DoubleMu3',
541  #'HLT_Mu15:HLT_DoubleMu3'])
542  #)
543  ),
544 
545  ## ------------------------------------------------------
546  ## PRESELECTION
547  ##
548  ## setup of the event preselection, which will not
549  ## be monitored
550  ## [mandatory] : but may be empty
551  ##
552  preselection = cms.PSet(
553  ## [optional] : when omitted no preselection is applied
554  #trigger = cms.PSet(
555  #src = cms.InputTag("TriggerResults","","HLT"),
556  #select = cms.vstring(['HLT_Mu9','HLT_Ele15_SW_L1R','HLT_DoubleMu3'])
557  #),
558  ## [optional] : when omitted no preselection is applied
559  vertex = cms.PSet(
560  src = cms.InputTag("offlinePrimaryVertices"),
561  select = cms.string('abs(x)<1. && abs(y)<1. && abs(z)<20. && tracksSize>3 && !isFake')
562  )
563  ),
564 
565  ## ------------------------------------------------------
566  ## SELECTION
567  ##
568  ## monitor histrograms are filled after each selection
569  ## step, the selection is applied in the order defined
570  ## by this vector
571  ## [mandatory] : may be empty or contain an arbitrary
572  ## number of PSets as given below:
573  ##
574  selection = cms.VPSet(
575  #cms.PSet(
576  ### [mandatory] : 'jets' defines the objects to
577  ### select on, 'step0' labels the histograms;
578  ### instead of 'step0' you can choose any label
579  #label = cms.string("empty:step0")
580  #),
581  cms.PSet(
582  label = cms.string("muons:step0"),
583  src = cms.InputTag("muons"),
584  select = cms.string("pt>20 & abs(eta)<2.4 & isGlobalMuon & innerTrack.numberOfValidHits>10 & globalTrack.normalizedChi2>-1 & globalTrack.normalizedChi2<10"),
585  min = cms.int32(1),
586  max = cms.int32(1),
587  ),
588  cms.PSet(
589  label = cms.string("elecs:step1"),
590  src = cms.InputTag("gedGsfElectrons"),
591  #electronId = cms.PSet(
592  # src = cms.InputTag("simpleEleId70cIso"),
593  # pattern = cms.int32(1)
594  #),
595  select = cms.string("pt>20 & abs(eta)<2.4 & (dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.17"),
596  min = cms.int32(1),
597  max = cms.int32(1),
598  ),
599  cms.PSet(
600  label = cms.string("jets/pf:step2"),
601  src = cms.InputTag("ak4PFJetsCHS"),
602  jetCorrector = cms.string("ak4PFL2L3"),
603 # select = cms.string("pt>30. & abs(eta)<2.4 & emEnergyFraction>0.01"),
604  select = cms.string("pt>30. & abs(eta)<2.4 "),
605 # jetID = cms.PSet(
606 # label = cms.InputTag("ak4JetID"),
607 # select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
608 # ),
609  min = cms.int32(2),
610  #max = cms.int32(2),
611  ),
612  ),
613 )
614