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("gsfElectrons"),
20  jets = cms.InputTag("ak5CaloJets"),
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("eidRobustLoose"),
33  pattern = cms.int32(1)
34  ),
35  ## when omitted electron plots will be filled w/o additional pre-
36  ## selection of the electron candidates
37  select = cms.string("pt>5 && abs(eta)<2.4 && abs(gsfTrack.d0)<1 && abs(gsfTrack.dz)<20"),
38  ## when omitted isolated electron multiplicity plot will be equi-
39  ## valent to inclusive electron multiplicity plot
40  isolation = cms.string("(dr03TkSumPt+dr03EcalRecHitSumEt+dr03HcalTowerSumEt)/pt<0.2"),
41  ),
42  ## [optional] : when omitted all monitoring plots for muons
43  ## will be filled w/o extras
44  muonExtras = cms.PSet(
45  ## when omitted muon plots will be filled w/o additional pre-
46  ## selection of the muon candidates
47  select = cms.string("pt>1 && abs(eta)<2.4 && abs(globalTrack.d0)<1 && abs(globalTrack.dz)<20"),
48  ## when omitted isolated muon multiplicity plot will be equi-
49  ## valent to inclusive muon multiplicity plot
50  isolation = cms.string("(isolationR03.sumPt+isolationR03.emEt+isolationR03.hadEt)/pt<0.2"),
51  ),
52  ## [optional] : when omitted all monitoring plots for jets will
53  ## be filled from uncorrected jets
54  jetExtras = cms.PSet(
55  ## when omitted monitor plots for pt will be filled from uncorrected
56  ## jets
57  jetCorrector = cms.string("ak5CaloL2L3"),
58  ## when omitted monitor plots will be filled w/o additional cut on
59  ## jetID
60  jetID = cms.PSet(
61  label = cms.InputTag("ak5JetID"),
62  select = cms.string("fHPD < 0.98 & n90Hits>1 & restrictedEMF<1")
63  ),
64  ## when omitted no extra selection will be applied on jets before
65  ## filling the monitor histograms; if jetCorrector is present the
66  ## selection will be applied to corrected jets
67  select = cms.string("pt>15 & abs(eta)<2.5 & emEnergyFraction>0.01"),
68  ),
69  ## [optional] : when omitted no mass window will be applied
70  ## for the same flavor lepton monitoring plots
71  massExtras = cms.PSet(
72  lowerEdge = cms.double(3.0),
73  upperEdge = cms.double(3.2)
74  ),
75  ## [optional] : when omitted all monitoring plots for triggering
76  ## will be empty
77  triggerExtras = cms.PSet(
78  src = cms.InputTag("TriggerResults","","HLT"),
79  pathsELECMU = cms.vstring(['HLT_Mu9:HLT_Ele15_SW_L1R',
80  'HLT_Mu15:HLT_Ele15_SW_L1R',
81  'HLT_DoubleMu3:HLT_Ele15_SW_L1R',
82  'HLT_Ele15_SW_L1R:HLT_Mu9',
83  'HLT_Ele15_SW_L1R:HLT_DoubleMu3']),
84  pathsDIMUON = cms.vstring(['HLT_Mu15:HLT_Mu9',
85  'HLT_DoubleMu3:HLT_Mu9',
86  'HLT_Mu9:HLT_DoubleMu3',
87  'HLT_Mu15:HLT_DoubleMu3'])
88  )
89  ),
90 
91  ## ------------------------------------------------------
92  ## PRESELECTION
93  ##
94  ## setup of the event preselection, which will not
95  ## be monitored
96  ## [mandatory] : but may be empty
97  ##
98  preselection = cms.PSet(
99  ## [optional] : when omitted no preselection is applied
100  trigger = cms.PSet(
101  src = cms.InputTag("TriggerResults","","HLT"),
102  select = cms.vstring(['HLT_Mu9','HLT_Ele15_SW_L1R','HLT_DoubleMu3'])
103  ),
104  ## [optional] : when omitted no preselection is applied
105  vertex = cms.PSet(
106  src = cms.InputTag("offlinePrimaryVertices"),
107  select = cms.string('abs(x)<1. && abs(y)<1. && abs(z)<20. && tracksSize>3 && !isFake')
108  )
109  ),
110 
111  ## ------------------------------------------------------
112  ## SELECTION
113  ##
114  ## monitor histrograms are filled after each selection
115  ## step, the selection is applied in the order defined
116  ## by this vector
117  ## [mandatory] : may be empty or contain an arbitrary
118  ## number of PSets as given below:
119  ##
120  selection = cms.VPSet(
121  cms.PSet(
122  ## [mandatory] : 'jets' defines the objects to
123  ## select on, 'step0' labels the histograms;
124  ## instead of 'step0' you can choose any label
125  label = cms.string("empty:step0")
126  ),
127  ),
128 )