13def TrigMETMonConfig(inputFlags):
14 '''Function to configures some algorithms in the monitoring system.'''
15
16
17
18 from AthenaMonitoring import AthMonitorCfgHelper
19 helper = AthMonitorCfgHelper(inputFlags,'TrigMETAthMonitorCfg')
20
21
28
29 from AthenaConfiguration.ComponentFactory import CompFactory
30 TrigMETMonAlg = helper.addAlgorithm(CompFactory.TrigMETMonitorAlgorithm,'TrigMETMonAlg')
31
32
33
34 TrigMETMonChain1Alg = helper.addAlgorithm(CompFactory.TrigMETMonitorAlgorithm,'TrigMETMonChain1Alg')
35 TrigMETMonChain2Alg = helper.addAlgorithm(CompFactory.TrigMETMonitorAlgorithm,'TrigMETMonChain2Alg')
36 TrigMETMonChain3Alg = helper.addAlgorithm(CompFactory.TrigMETMonitorAlgorithm,'TrigMETMonChain3Alg')
37 TrigMETMonChain4Alg = helper.addAlgorithm(CompFactory.TrigMETMonitorAlgorithm,'TrigMETMonChain4Alg')
38
39
40
41
42
43
44
45
46 mt_chains = True
47 if ( inputFlags.Trigger.EDMVersion < 3 ) :
48 mt_chains = False
49
50
51 lowMu = "lowMu" in inputFlags.Trigger.triggerMenuSetup
52
53 if lowMu:
54 TrigMETMonChain5Alg = helper.addAlgorithm(CompFactory.TrigMETMonitorAlgorithm,'TrigMETMonChain5Alg')
55 TrigMETMonChain6Alg = helper.addAlgorithm(CompFactory.TrigMETMonitorAlgorithm,'TrigMETMonChain6Alg')
56 TrigMETMonChain7Alg = helper.addAlgorithm(CompFactory.TrigMETMonitorAlgorithm,'TrigMETMonChain7Alg')
57 TrigMETMonChain8Alg = helper.addAlgorithm(CompFactory.TrigMETMonitorAlgorithm,'TrigMETMonChain8Alg')
58
59
66
67 TrigMETMonChain1 = 'HLT_xe80_cell_xe115_tcpufit_L1jXE100'
68 TrigMETMonChain2 = 'HLT_xe65_cell_xe90_pfopufit_L1jXE100'
69 TrigMETMonChain3 = 'HLT_xe65_cell_xe105_nn_L1jXE100'
70 TrigMETMonChain4 = 'HLT_xe65_cell_xe105_nn_L1cXE110'
71 if lowMu:
72 TrigMETMonChain5 = 'HLT_xe25_cell_L1eEM12L'
73 TrigMETMonChain6 = 'HLT_xe25_pfopufit_L1eEM12L'
74 TrigMETMonChain7 = 'HLT_xe30_cell_L1eEM15'
75 TrigMETMonChain8 = 'HLT_xe30_pfopufit_L1eEM15'
76
77 if mt_chains:
78 TrigMETMonChain1Alg.TriggerChain = TrigMETMonChain1
79 TrigMETMonChain2Alg.TriggerChain = TrigMETMonChain2
80 TrigMETMonChain3Alg.TriggerChain = TrigMETMonChain3
81 TrigMETMonChain4Alg.TriggerChain = TrigMETMonChain4
82 if lowMu:
83 TrigMETMonChain5Alg.TriggerChain = TrigMETMonChain5
84 TrigMETMonChain6Alg.TriggerChain = TrigMETMonChain6
85 TrigMETMonChain7Alg.TriggerChain = TrigMETMonChain7
86 TrigMETMonChain8Alg.TriggerChain = TrigMETMonChain8
87 else:
88 TrigMETMonChain1Alg.TriggerChain = 'HLT_xe110_pufit_xe65_L1XE50'
89 TrigMETMonChain2Alg.TriggerChain = 'HLT_xe110_pufit_xe65_L1XE50'
90 TrigMETMonChain3Alg.TriggerChain = 'HLT_xe110_pufit_xe65_L1XE50'
91 TrigMETMonChain4Alg.TriggerChain = 'HLT_xe110_pufit_xe65_L1XE50'
92
93
94
95 from TrigConfigSvc.TriggerConfigAccess import getHLTMonitoringAccess
96 moniAccess=getHLTMonitoringAccess(inputFlags)
97 metChains=moniAccess.monitoredChains(signatures="metMon",monLevels=["shifter"])
98 metChainsVal=moniAccess.monitoredChains(signatures="metMon",monLevels=["val"])
99 metChainsT0=moniAccess.monitoredChains(signatures="metMon",monLevels=["t0"])
100
101
102 if mt_chains:
103 TrigMETMonAlg.hlt_electron_key = 'HLT_egamma_Electrons'
104 TrigMETMonAlg.hlt_muon_key = 'HLT_MuonsCB_RoI'
105 TrigMETMonAlg.offline_met_key = 'MET_Reference_AntiKt4EMTopo'
106 TrigMETMonAlg.hlt_pfsum_key = 'HLT_MET_pfsum'
107 TrigMETMonAlg.l1_jFexMet_key = 'L1_jFexMETRoI'
108 TrigMETMonAlg.l1_jFexSumEt_key = 'L1_jFexSumETRoI'
109 TrigMETMonAlg.l1_gFexJwojScalar_key = 'L1_gScalarEJwoj'
110 TrigMETMonAlg.l1_gFexJwojMETComponents_key = 'L1_gMETComponentsJwoj'
111 TrigMETMonAlg.l1_gFexJwojMHTComponents_key = 'L1_gMHTComponentsJwoj'
112 TrigMETMonAlg.l1_gFexJwojMSTComponents_key = 'L1_gMSTComponentsJwoj'
113 TrigMETMonAlg.l1_gFexNCMETScalar_key = 'L1_gScalarENoiseCut'
114 TrigMETMonAlg.l1_gFexNCMETComponents_key = 'L1_gMETComponentsNoiseCut'
115 TrigMETMonAlg.l1_gFexRhoMETScalar_key = 'L1_gScalarERms'
116 TrigMETMonAlg.l1_gFexRhoMETComponents_key = 'L1_gMETComponentsRms'
117 else:
118 TrigMETMonAlg.hlt_electron_key = 'HLT_xAOD__ElectronContainer_egamma_Electrons'
119 TrigMETMonAlg.hlt_muon_key = 'HLT_xAOD__MuonContainer_MuonEFInfo'
120 TrigMETMonAlg.offline_met_key = 'MET_Reference_AntiKt4LCTopo'
121 TrigMETMonAlg.hlt_cell_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET'
122 TrigMETMonAlg.hlt_mht_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_mht'
123 TrigMETMonAlg.hlt_tc_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl'
124 TrigMETMonAlg.hlt_tc_em_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl'
125 TrigMETMonAlg.hlt_tcpufit_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl_PUC'
126 TrigMETMonAlg.hlt_trkmht_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl'
127 TrigMETMonAlg.hlt_pfsum_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl'
128 TrigMETMonAlg.hlt_pfsum_vssk_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl'
129 TrigMETMonAlg.hlt_pfsum_cssk_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl'
130 TrigMETMonAlg.hlt_pfopufit_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl'
131 TrigMETMonAlg.hlt_cvfpufit_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl'
132 TrigMETMonAlg.hlt_mhtpufit_pf_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl'
133 TrigMETMonAlg.hlt_mhtpufit_em_key = 'HLT_xAOD__TrigMissingETContainer_TrigEFMissingET_topocl'
134
135
136 L1Chains = ["L1_jXE100",
137 "L1_gXEJWOJ100",
138 "L1_cXE110"]
139 HLTChains = []
140 HLTChainsVal = []
141 HLTChainsT0 = []
142 if mt_chains == 0:
143 L1Chains = ["L1_XE50"]
144 HLTChains = ["HLT_xe70_mht",
145 "HLT_xe90_mht_L1XE50",
146 "HLT_xe100_mht_L1XE50",
147 "HLT_xe110_mht_L1XE50",
148 "HLT_xe90_pufit_L1XE50",
149 "HLT_xe100_pufit_L1XE50",
150 "HLT_xe100_pufit_L1XE55",
151 "HLT_xe110_pufit_L1XE50",
152 "HLT_xe110_pufit_L1XE55",
153 "HLT_xe110_pufit_xe65_L1XE50",
154 "HLT_xe110_pufit_xe65_L1XE60",
155 "HLT_xe110_pufit_xe70_L1XE50"]
156
157 if len(metChains) > 0:
158 HLTChains = metChains
159 if len(metChainsVal) > 0:
160 HLTChainsVal = metChainsVal
161 if len(metChainsT0) > 0:
162 HLTChainsT0 = metChainsT0
163
164
165 HLTChainEl = ["HLT_e26_lhtight_ivarloose_L1.*","HLT_e28_lhtight_ivarloose_L1.*"]
166 HLTChainMu = ["HLT_mu24_ivarmedium_L1.*"]
167
168 TrigMETMonAlg.L1Chains = L1Chains
169 TrigMETMonAlg.HLTChains = HLTChains
170 TrigMETMonAlg.HLTChainsVal = HLTChainsVal
171 TrigMETMonAlg.HLTChainsT0 = HLTChainsT0
172 TrigMETMonAlg.HLTChainEl = HLTChainEl
173 TrigMETMonAlg.HLTChainMu = HLTChainMu
174
175
176 algsL1 = ["roi"]
177 algsL1Fex = ["jFex",
178 "gFexJwoj",
179 "gFexNC",
180 "gFexRho"]
181 algsHLT = ["cell",
182 "tcpufit",
183 "pfopufit",
184 "met_nn"]
185 algsHLTChain1 = ["cell",
186 "tcpufit"]
187 algsHLTChain2 = ["cell",
188 "pfopufit"]
189 algsHLTChain3 = ["cell",
190 "met_nn"]
191 algsHLTChain4 = ["cell",
192 "nn"]
193 algsHLTChain5 = ["cell"]
194 algsHLTChain6 = ["pfopufit"]
195 algsHLTChain7 = ["cell"]
196 algsHLTChain8 = ["pfopufit"]
197 algsHLTPreSel = ["cell",
198 "tcpufit",
199 "tcpufit_sig30",
200 "pfsum_cssk",
201 "pfsum_vssk",
202 "pfopufit",
203 "pfopufit_sig30",
204 "mhtpufit_pf",
205 "mhtpufit_em",
206 "met_nn"]
207 algsHLT2d = ["cell",
208 "tcpufit",
209 "pfopufit"]
210 algsHLTExpert = ["mht",
211 "tc_em",
212 "cvfpufit",
213 "pfsum",
214 "trkmht",
215 "mhtpufit_pf",
216 "mhtpufit_em",
217 "tcpufit_sig30",
218 "pfopufit_sig30",
219 "pfsum_cssk",
220 "pfsum_vssk"]
221 algsMET2d_tcpufit = ["pfopufit",
222 "pfsum_cssk",
223 "mhtpufit_pf"]
224
225
226 TrigMETMonAlg.algsL1 = algsL1
227 TrigMETMonAlg.algsHLT = algsHLT
228 TrigMETMonAlg.algsHLTPreSel = algsHLTPreSel
229 TrigMETMonAlg.algsHLT2d = algsHLT2d
230 TrigMETMonAlg.algsHLTExpert = algsHLTExpert
231 TrigMETMonAlg.algsMET2d_tcpufit = algsMET2d_tcpufit
232 TrigMETMonChain1Alg.algsHLT = algsHLTChain1
233 TrigMETMonChain2Alg.algsHLT = algsHLTChain2
234 TrigMETMonChain3Alg.algsHLT = algsHLTChain3
235 TrigMETMonChain4Alg.algsHLT = algsHLTChain4
236 if lowMu:
237 TrigMETMonChain5Alg.algsHLT = algsHLTChain5
238 TrigMETMonChain6Alg.algsHLT = algsHLTChain6
239 TrigMETMonChain7Alg.algsHLT = algsHLTChain7
240 TrigMETMonChain8Alg.algsHLT = algsHLTChain8
241
242
243 l1MetAlg = 1
244 l1MetCut = 48.0
245 TrigMETMonAlg.L1MetAlg = l1MetAlg
246 TrigMETMonAlg.L1MetCut = l1MetCut
247
248
249 comp_names = ["PreSamplB", "EMB1", "EMB2", "EMB3",
250 "PreSamplE", "EME1", "EME2", "EME3",
251 "HEC0", "HEC1", "HEC2", "HEC3",
252 "TileBar0", "TileBar1", "TileBar2",
253 "TileGap1", "TileGap2", "TileGap3",
254 "TileExt0", "TileExt1", "TileExt2",
255 "FCalEM", "FCalHad2", "FCalHad3"]
256
257 bit_names = [
258 "Processing",
259 "ErrBSconv",
260 "ErrMuon",
261 "ErrFEB",
262 "Skipped",
263 "CompBigMEtSEtRatio",
264 "BadCompEnergy",
265 "BadEnergyRatio",
266 "spare",
267 "BadCellQuality",
268 "BadCellEnergy",
269 "BadCellTime",
270 "NoMuonTrack",
271 "spare",
272 "Processed",
273 "CompError",
274 "EMB_A_Missing",
275 "EMB_C_Missing",
276 "EME_A_Missing",
277 "EME_C_Missing",
278 "HEC_A_Missing",
279 "HEC_C_Missing",
280 "FCAL_A_Missing",
281 "FCAL_C_Missing",
282 "TileB_A_Missing",
283 "TileB_C_Missing",
284 "TileE_A_Missing",
285 "TileE_C_Missing",
286 "BadEMfraction",
287 "GlobBigMEtSEtRatio",
288 "ObjInCrack",
289 "GlobError"
290 ]
291
292 TrigMETMonAlg.compNames = comp_names
293 TrigMETMonAlg.bitNames = bit_names
294
295 electronPtCut = 30.0
296 muonPtCut = 30.0
297 electronEtaCut = 2.5
298 muonEtaCut = 2.5
299 LArNoiseBurstVetoAlgs = [
300 "pfopufit",
301 "cell",
302 ]
303 signalLepAlgs = ["pfopufit",
304 "cell",
305 "tcpufit"]
306
307 TrigMETMonAlg.electronPtCut = electronPtCut
308 TrigMETMonAlg.electronEtaCut = electronEtaCut
309 TrigMETMonAlg.muonPtCut = muonPtCut
310 TrigMETMonAlg.muonEtaCut = muonEtaCut
311 TrigMETMonAlg.signalLepAlgs = signalLepAlgs
312 TrigMETMonAlg.LArNoiseBurstVetoAlgs = LArNoiseBurstVetoAlgs
313
314
317
318
319
320
321
322
323
324
325 metGroup = helper.addGroup(TrigMETMonAlg,'TrigMETMonitor','HLT/METMon/')
326
327
328 metChain1Group = helper.addGroup(TrigMETMonChain1Alg,'TrigMETMonitor','HLT/METMon/{}'.format(TrigMETMonChain1))
329 metChain2Group = helper.addGroup(TrigMETMonChain2Alg,'TrigMETMonitor','HLT/METMon/{}'.format(TrigMETMonChain2))
330 metChain3Group = helper.addGroup(TrigMETMonChain3Alg,'TrigMETMonitor','HLT/METMon/{}'.format(TrigMETMonChain3))
331 metChain4Group = helper.addGroup(TrigMETMonChain4Alg,'TrigMETMonitor','HLT/METMon/{}'.format(TrigMETMonChain4))
332 if lowMu:
333 metChain5Group = helper.addGroup(TrigMETMonChain5Alg,'TrigMETMonitor','HLT/METMon/{}'.format(TrigMETMonChain5))
334 metChain6Group = helper.addGroup(TrigMETMonChain6Alg,'TrigMETMonitor','HLT/METMon/{}'.format(TrigMETMonChain6))
335 metChain7Group = helper.addGroup(TrigMETMonChain7Alg,'TrigMETMonitor','HLT/METMon/{}'.format(TrigMETMonChain7))
336 metChain8Group = helper.addGroup(TrigMETMonChain8Alg,'TrigMETMonitor','HLT/METMon/{}'.format(TrigMETMonChain8))
337
338
343 et_bins=205
344 et_min=-13.5
345 et_max=401.5
346 et_bins_log=20
347 et_min_log=-1.875
348 et_max_log=4.125
349 ec_bins=199
350 ec_min=-298.5
351 ec_max=298.5
352 ec_bins_log=27
353 ec_min_log=-4.125
354 ec_max_log=4.125
355 sumet_bins=305
356 sumet_min=-27.0
357 sumet_max=4203.0
358 sumet_bins_log=20
359 sumet_min_log=-1.875
360 sumet_max_log=4.125
361
369 phi_bins=64
370 phi_bins_2d=32
371 phi_min=-3.1416
372 phi_max=3.1416
373 eta_bins_2d=24
374 eta_min=-4.8
375 eta_max=4.8
376 eff_bins=42
377 eff_min=-13.5
378 eff_max=401.5
379
380
381 metGroup.defineHistogram('offline_Ex',title='Offline Missing E_{x};E_{x} [GeV];Events',
382 path='Expert/Offline',xbins=ec_bins,xmin=ec_min,xmax=ec_max)
383 metGroup.defineHistogram('offline_Ey',title='Offline Missing E_{y};E_{y} [GeV];Events',
384 path='Expert/Offline',xbins=ec_bins,xmin=ec_min,xmax=ec_max)
385 metGroup.defineHistogram('offline_Et',title='Offline Missing E_{T};E_{T} [GeV];Events',
386 path='Expert/Offline',xbins=et_bins,xmin=et_min,xmax=et_max)
387 metGroup.defineHistogram('offline_sumEt',title='Offline sumE_{T};sumE_{T} [GeV];Events',
388 path='Expert/Offline',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
389 metGroup.defineHistogram('offline_NoMu_Ex',title='Offline (No Mu) Missing E_{x};E_{x} [GeV];Events',
390 path='Expert/Offline',xbins=ec_bins,xmin=ec_min,xmax=ec_max)
391 metGroup.defineHistogram('offline_NoMu_Ey',title='Offline (No Mu) Missing E_{y};E_{y} [GeV];Events',
392 path='Expert/Offline',xbins=ec_bins,xmin=ec_min,xmax=ec_max)
393 metGroup.defineHistogram('offline_NoMu_Et',title='Offline (No Mu) Missing E_{T};E_{T} [GeV];Events',
394 path='Expert/Offline',xbins=et_bins,xmin=et_min,xmax=et_max)
395 metGroup.defineHistogram('offline_NoMu_sumEt',title='Offline (No Mu) sumE_{T};sumE_{T} [GeV];Events',
396 path='Expert/Offline',xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
397
398 metGroup.defineHistogram('hlt_el_mult',title='HLT Electron Multiplicity;Number of electrons;Events',
399 path='Expert/ElMu',xbins=10,xmin=0,xmax=10)
400 metGroup.defineHistogram('hlt_el_pt',title='HLT Electron p_{T};p_{T} [GeV];Events',
401 path='Expert/ElMu',xbins=100,xmin=0,xmax=100)
402 metGroup.defineHistogram('hlt_mu_mult',title='HLT Muon Multiplicity;Number of muons;Events',
403 path='Expert/ElMu',xbins=10,xmin=0,xmax=10)
404 metGroup.defineHistogram('hlt_mu_pt',title='HLT Muon p_{T};p_{T} [GeV];Events',
405 path='Expert/ElMu',xbins=100,xmin=0,xmax=100)
406
407 metGroup.defineHistogram('hlt_topoclusters_mult',title='HLT Topoclusters Multiplicity;Number of Clusters;Events',
408 path='Expert/Topoclusters',xbins=120,xmin=0,xmax=1200)
409 metGroup.defineHistogram('hlt_topoclusters_pt',title='HLT Topoclusters p_{T};p_{T} [GeV];Events',
410 path='Expert/Topoclusters',xbins=50,xmin=0,xmax=20)
411
412 metGroup.defineHistogram('hlt_tracks_mult',title='HLT Tracks Multiplicity;Number of Tracks;Events',
413 path='Expert/Tracks',xbins=120,xmin=0,xmax=1200)
414 metGroup.defineHistogram('hlt_tracks_pt',title='HLT Tracks p_{T};p_{T} [GeV];Events',
415 path='Expert/Tracks',xbins=50,xmin=0,xmax=20)
416 metGroup.defineHistogram('hlt_tracks_leading_pt',title='HLT Tracks Leading p_{T};p_{T} [GeV];Events',
417 path='Expert/Tracks',xbins=50,xmin=0,xmax=20)
418 metGroup.defineHistogram('hlt_tracks_vec_sumPt',title='HLT Tracks Vector Sum p_{T};p_{T} [GeV];Events',
419 path='Expert/Tracks',xbins=100,xmin=0,xmax=100)
420 metGroup.defineHistogram('hlt_tracks_sca_sumPt',title='HLT Tracks Scalar Sum p_{T};p_{T} [GeV];Events',
421 path='Expert/Tracks',xbins=100,xmin=0,xmax=1000)
422 metGroup.defineHistogram('hlt_tracks_eta,hlt_tracks_phi;hlt_tracks_eta_phi',
423 type='TH2F',
424 title='HLT Tracks #eta - #phi (p_{T} > 3 GeV);#eta;#phi',
425 path='Expert/Tracks',
426 xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max)
427
428 metGroup.defineHistogram('hlt_vertex_mult',title='HLT Vertex Multiplicity;Number of Vertexs;Events',
429 path='Expert/Vertex',xbins=55,xmin=-5,xmax=50)
430 metGroup.defineHistogram('hlt_vertex_z',title='HLT Vertex Z;Vertex Z [mm];Events',
431 path='Expert/Vertex',xbins=100,xmin=-200,xmax=200)
432 metGroup.defineHistogram('hlt_vertex_z_diff',title='(HLT-Offline) Vertex Z Diff;Vertex Z [mm];Events',
433 path='Expert/Vertex',xbins=100,xmin=-200,xmax=200)
434 metGroup.defineHistogram('hlt_vertex_mult_mu,act_IPBC;hlt_vertex_mult_mu',
435 type='TProfile',
436 title='Average Vertex Mult. per IPBC;Actual IPBC;Average Vertex Mult.',
437 path='Expert/Vertex',
438 xbins=55, xmin=-5, xmax=55)
439
440
441 for alg in algsL1:
442 metGroup.defineHistogram('L1_{}_Ex'.format(alg),
443 title='L1_{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
444 path='Shifter/L1_{}'.format(alg),
445 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
446 metGroup.defineHistogram('L1_{}_Ex_log'.format(alg),
447 title='L1_{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
448 path='Shifter/L1_{}'.format(alg),
449 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
450 metGroup.defineHistogram('L1_{}_Ey'.format(alg),
451 title='L1_{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
452 path='Shifter/L1_{}'.format(alg),
453 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
454 metGroup.defineHistogram('L1_{}_Ey_log'.format(alg),
455 title='L1_{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
456 path='Shifter/L1_{}'.format(alg),
457 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
458 metGroup.defineHistogram('L1_{}_Et'.format(alg),
459 title='L1_{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
460 path='Shifter/L1_{}'.format(alg),
461 xbins=et_bins,xmin=et_min,xmax=et_max)
462 metGroup.defineHistogram('L1_{}_Et_log'.format(alg),
463 title='L1_{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
464 path='Shifter/L1_{}'.format(alg),
465 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
466 metGroup.defineHistogram('L1_{}_sumEt'.format(alg),
467 title='L1_{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
468 path='Shifter/L1_{}'.format(alg),
469 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
470 metGroup.defineHistogram('L1_{}_sumEt_log'.format(alg),
471 title='L1_{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
472 path='Shifter/L1_{}'.format(alg),
473 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
474 metGroup.defineHistogram('L1_{}_phi'.format(alg),
475 title='L1_{} #phi;#phi;Events'.format(alg),
476 path='Shifter/L1_{}'.format(alg),
477 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
478
479 for alg in algsL1Fex:
480 metGroup.defineHistogram('L1_{}_Ex'.format(alg),
481 title='L1_{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
482 path='Shifter/L1_{}'.format(alg),
483 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
484 metGroup.defineHistogram('L1_{}_HT_Ex'.format(alg),
485 title='L1_{} HT Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
486 path='Shifter/L1_{}'.format(alg),
487 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
488 metGroup.defineHistogram('L1_{}_ST_Ex'.format(alg),
489 title='L1_{} ST Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
490 path='Shifter/L1_{}'.format(alg),
491 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
492 metGroup.defineHistogram('L1_{}_Ex_log'.format(alg),
493 title='L1_{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
494 path='Shifter/L1_{}'.format(alg),
495 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
496 metGroup.defineHistogram('L1_{}_HT_Ex_log'.format(alg),
497 title='L1_{} HT Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
498 path='Shifter/L1_{}'.format(alg),
499 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
500 metGroup.defineHistogram('L1_{}_ST_Ex_log'.format(alg),
501 title='L1_{} ST Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
502 path='Shifter/L1_{}'.format(alg),
503 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
504 metGroup.defineHistogram('L1_{}_Ey'.format(alg),
505 title='L1_{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
506 path='Shifter/L1_{}'.format(alg),
507 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
508 metGroup.defineHistogram('L1_{}_HT_Ey'.format(alg),
509 title='L1_{} HT Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
510 path='Shifter/L1_{}'.format(alg),
511 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
512 metGroup.defineHistogram('L1_{}_ST_Ey'.format(alg),
513 title='L1_{} ST Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
514 path='Shifter/L1_{}'.format(alg),
515 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
516 metGroup.defineHistogram('L1_{}_Ey_log'.format(alg),
517 title='L1_{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
518 path='Shifter/L1_{}'.format(alg),
519 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
520 metGroup.defineHistogram('L1_{}_HT_Ey_log'.format(alg),
521 title='L1_{} HT Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
522 path='Shifter/L1_{}'.format(alg),
523 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
524 metGroup.defineHistogram('L1_{}_ST_Ey_log'.format(alg),
525 title='L1_{} ST Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
526 path='Shifter/L1_{}'.format(alg),
527 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
528 metGroup.defineHistogram('L1_{}_Et'.format(alg),
529 title='L1_{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
530 path='Shifter/L1_{}'.format(alg),
531 xbins=et_bins,xmin=et_min,xmax=et_max)
532 metGroup.defineHistogram('L1_{}_Et_log'.format(alg),
533 title='L1_{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
534 path='Shifter/L1_{}'.format(alg),
535 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
536 metGroup.defineHistogram('L1_{}_sumEt'.format(alg),
537 title='L1_{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
538 path='Shifter/L1_{}'.format(alg),
539 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
540 metGroup.defineHistogram('L1_{}_sumEt_log'.format(alg),
541 title='L1_{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
542 path='Shifter/L1_{}'.format(alg),
543 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
544 metGroup.defineHistogram('L1_{}_phi'.format(alg),
545 title='L1_{} #phi;#phi;Events'.format(alg),
546 path='Shifter/L1_{}'.format(alg),
547 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
548 metGroup.defineHistogram('L1_{}_ST_phi'.format(alg),
549 title='L1_{} ST #phi;#phi;Events'.format(alg),
550 path='Shifter/L1_{}'.format(alg),
551 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
552 metGroup.defineHistogram('L1_{}_HT_phi'.format(alg),
553 title='L1_{} HT #phi;#phi;Events'.format(alg),
554 path='Shifter/L1_{}'.format(alg),
555 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
556
557 for alg in algsHLT:
558 metGroup.defineHistogram('{}_Ex'.format(alg),
559 title='{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
560 path='Shifter/HLT_{}'.format(alg),
561 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
562 metGroup.defineHistogram('{}_Ex_log'.format(alg),
563 title='{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
564 path='Shifter/HLT_{}'.format(alg),
565 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
566 metGroup.defineHistogram('{}_Ey'.format(alg),
567 title='{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
568 path='Shifter/HLT_{}'.format(alg),
569 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
570 metGroup.defineHistogram('{}_Ey_log'.format(alg),
571 title='{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
572 path='Shifter/HLT_{}'.format(alg),
573 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
574 metGroup.defineHistogram('{}_Et'.format(alg),
575 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
576 path='Shifter/HLT_{}'.format(alg),
577 xbins=et_bins,xmin=et_min,xmax=et_max)
578 metGroup.defineHistogram('{}_Et_log'.format(alg),
579 title='{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
580 path='Shifter/HLT_{}'.format(alg),
581 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
582 metGroup.defineHistogram('{}_sumEt'.format(alg),
583 title='{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
584 path='Shifter/HLT_{}'.format(alg),
585 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
586 metGroup.defineHistogram('{}_sumEt_log'.format(alg),
587 title='{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
588 path='Shifter/HLT_{}'.format(alg),
589 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
590 metGroup.defineHistogram('{}_phi'.format(alg),
591 title='{} #phi;#phi;Events'.format(alg),
592 path='Shifter/HLT_{}'.format(alg),
593 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
594 metGroup.defineHistogram('{0}_phi;{0}_phi_etweight'.format(alg),
595 title='{} #phi (etweighted);#phi;Et weighted events'.format(alg),
596 weight='{}_Et'.format(alg),
597 path='Shifter/HLT_{}'.format(alg),
598 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
599
600 for alg in algsHLTPreSel:
601 metGroup.defineHistogram('{}_presel_Et'.format(alg),
602 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
603 path='Shifter/preSel',
604 xbins=et_bins,xmin=et_min,xmax=et_max)
605
606 for alg in LArNoiseBurstVetoAlgs:
607 metGroup.defineHistogram('{}_LArNoiseBurstVeto_Ex'.format(alg),
608 title='{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
609 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
610 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
611 metGroup.defineHistogram('{}_LArNoiseBurstVeto_Ex_log'.format(alg),
612 title='{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
613 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
614 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
615 metGroup.defineHistogram('{}_LArNoiseBurstVeto_Ey'.format(alg),
616 title='{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
617 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
618 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
619 metGroup.defineHistogram('{}_LArNoiseBurstVeto_Ey_log'.format(alg),
620 title='{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
621 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
622 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
623 metGroup.defineHistogram('{}_LArNoiseBurstVeto_Et'.format(alg),
624 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
625 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
626 xbins=et_bins,xmin=et_min,xmax=et_max)
627 metGroup.defineHistogram('{}_LArNoiseBurstVeto_Et_log'.format(alg),
628 title='{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
629 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
630 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
631 metGroup.defineHistogram('{}_LArNoiseBurstVeto_sumEt'.format(alg),
632 title='{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
633 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
634 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
635 metGroup.defineHistogram('{}_LArNoiseBurstVeto_sumEt_log'.format(alg),
636 title='{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
637 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
638 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
639 metGroup.defineHistogram('{}_LArNoiseBurstVeto_phi'.format(alg),
640 title='{} #phi;#phi;Events'.format(alg),
641 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
642 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
643 metGroup.defineHistogram('{0}_LArNoiseBurstVeto_phi;{0}_phi_etweight'.format(alg),
644 title='{} #phi (etweighted);#phi;Et weighted events'.format(alg),
645 weight='{}_Et'.format(alg),
646 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
647 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
648 metGroup.defineHistogram('{0}_LArNoiseBurstVeto_eta,{0}_LArNoiseBurstVeto_phi;{0}_LArNoiseBurstVeto_eta_phi'.format(alg),
649 type='TH2F',
650 title='{} #eta - #phi;#eta;#phi'.format(alg),
651 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
652 xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max)
653 metGroup.defineHistogram('{0}_LArNoiseBurstVeto_eta,{0}_LArNoiseBurstVeto_phi;{0}_LArNoiseBurstVeto_eta_phi_etweight'.format(alg),
654 type='TH2F',
655 title='{} #eta - #phi (etweighted);#eta;#phi'.format(alg),
656 weight='{}_LArNoiseBurstVeto_Et'.format(alg),
657 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
658 xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max)
659 metGroup.defineHistogram('{0}_LArNoiseBurstVeto_phi;{0}_LArNoiseBurstVeto_phi_etweight'.format(alg),
660 title='{} #phi (etweighted);#phi;Events'.format(alg),
661 path='Shifter/LArNoiseBurstVetoed/{}'.format(alg),
662 weight='{}_LArNoiseBurstVeto_Et'.format(alg),
663 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
664
665 for alg in signalLepAlgs:
666 metGroup.defineHistogram('{}_SigEl_Ex'.format(alg),
667 title='{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
668 path='Shifter/SignalEl/{}'.format(alg),
669 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
670 metGroup.defineHistogram('{}_SigEl_Ex_log'.format(alg),
671 title='{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
672 path='Shifter/SignalEl/{}'.format(alg),
673 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
674 metGroup.defineHistogram('{}_SigEl_Ey'.format(alg),
675 title='{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
676 path='Shifter/SignalEl/{}'.format(alg),
677 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
678 metGroup.defineHistogram('{}_SigEl_Ey_log'.format(alg),
679 title='{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
680 path='Shifter/SignalEl/{}'.format(alg),
681 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
682 metGroup.defineHistogram('{}_SigEl_Et'.format(alg),
683 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
684 path='Shifter/SignalEl/{}'.format(alg),
685 xbins=et_bins,xmin=et_min,xmax=et_max)
686 metGroup.defineHistogram('{}_SigEl_Et_log'.format(alg),
687 title='{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
688 path='Shifter/SignalEl/{}'.format(alg),
689 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
690 metGroup.defineHistogram('{}_SigEl_sumEt'.format(alg),
691 title='{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
692 path='Shifter/SignalEl/{}'.format(alg),
693 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
694 metGroup.defineHistogram('{}_SigEl_sumEt_log'.format(alg),
695 title='{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
696 path='Shifter/SignalEl/{}'.format(alg),
697 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
698 metGroup.defineHistogram('{}_SigEl_phi'.format(alg),
699 title='{} #phi;#phi;Events'.format(alg),
700 path='Shifter/SignalEl/{}'.format(alg),
701 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
702 metGroup.defineHistogram('{0}_SigEl_phi;{0}_SigEl_phi_etweight'.format(alg),
703 title='{} #phi (etweighted);#phi;Et weighted events'.format(alg),
704 weight='{}_SigEl_Et'.format(alg),
705 path='Shifter/SignalEl/{}'.format(alg),
706 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
707 metGroup.defineHistogram('{0}_SigEl_eta,{0}_SigEl_phi;{0}_SigEl_eta_phi'.format(alg),
708 type='TH2F',
709 title='{} #eta - #phi;#eta;#phi'.format(alg),
710 path='Shifter/SignalEl/{}'.format(alg),
711 xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max)
712 metGroup.defineHistogram('{0}_SigEl_eta,{0}_SigEl_phi;{0}_SigEl_eta_phi_etweight'.format(alg),
713 type='TH2F',
714 title='{} #eta - #phi (etweighted);#eta;#phi'.format(alg),
715 weight='{}_SigEl_Et'.format(alg),
716 path='Shifter/SignalEl/{}'.format(alg),
717 xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max)
718 metGroup.defineHistogram('{}_SigMu_Ex'.format(alg),
719 title='{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
720 path='Shifter/SignalMu/{}'.format(alg),
721 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
722 metGroup.defineHistogram('{}_SigMu_Ex_log'.format(alg),
723 title='{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
724 path='Shifter/SignalMu/{}'.format(alg),
725 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
726 metGroup.defineHistogram('{}_SigMu_Ey'.format(alg),
727 title='{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
728 path='Shifter/SignalMu/{}'.format(alg),
729 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
730 metGroup.defineHistogram('{}_SigMu_Ey_log'.format(alg),
731 title='{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
732 path='Shifter/SignalMu/{}'.format(alg),
733 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
734 metGroup.defineHistogram('{}_SigMu_Et'.format(alg),
735 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
736 path='Shifter/SignalMu/{}'.format(alg),
737 xbins=et_bins,xmin=et_min,xmax=et_max)
738 metGroup.defineHistogram('{}_SigMu_Et_log'.format(alg),
739 title='{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
740 path='Shifter/SignalMu/{}'.format(alg),
741 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
742 metGroup.defineHistogram('{}_SigMu_sumEt'.format(alg),
743 title='{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
744 path='Shifter/SignalMu/{}'.format(alg),
745 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
746 metGroup.defineHistogram('{}_SigMu_sumEt_log'.format(alg),
747 title='{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
748 path='Shifter/SignalMu/{}'.format(alg),
749 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
750 metGroup.defineHistogram('{}_SigMu_phi'.format(alg),
751 title='{} #phi;#phi;Events'.format(alg),
752 path='Shifter/SignalMu/{}'.format(alg),
753 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
754 metGroup.defineHistogram('{0}_SigMu_phi;{0}_SigMu_phi_etweight'.format(alg),
755 title='{} #phi (etweighted);#phi;Et weighted events'.format(alg),
756 weight='{}_SigMu_Et'.format(alg),
757 path='Shifter/SignalMu/{}'.format(alg),
758 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
759 metGroup.defineHistogram('{0}_SigMu_eta,{0}_SigMu_phi;{0}_SigMu_eta_phi'.format(alg),
760 type='TH2F',
761 title='{} #eta - #phi;#eta;#phi'.format(alg),
762 path='Shifter/SignalMu/{}'.format(alg),
763 xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max)
764 metGroup.defineHistogram('{0}_SigMu_eta,{0}_SigMu_phi;{0}_SigMu_eta_phi_etweight'.format(alg),
765 type='TH2F',
766 title='{} #eta - #phi (etweighted);#eta;#phi'.format(alg),
767 weight='{}_SigMu_Et'.format(alg),
768 path='Shifter/SignalMu/{}'.format(alg),
769 xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max)
770
771
772 for alg in algsHLT2d:
773 metGroup.defineHistogram('{0}_eta,{0}_phi;{0}_eta_phi'.format(alg),
774 type='TH2F',
775 title='{} #eta - #phi;#eta;#phi'.format(alg),
776 path='Shifter/HLT_{}'.format(alg),
777 xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max)
778 metGroup.defineHistogram('{a}_eta,{a}_phi;{a}_eta_phi_etweight'.format(a=alg),
779 type='TH2F',
780 title='{} #eta - #phi (etweighted);#eta;#phi'.format(alg),
781 weight='{}_Et'.format(alg),
782 path='Shifter/HLT_{}'.format(alg),
783 xbins=eta_bins_2d,xmin=eta_min,xmax=eta_max,ybins=phi_bins_2d,ymin=phi_min,ymax=phi_max)
784
785
786 for chain in L1Chains:
787 metGroup.defineHistogram('offline_NoMu_Et_eff,pass_{};{}_eff'.format(chain,chain),
788 type='TProfile',
789 title='{} efficiency;offline E_{{T}} [GeV];Efficiency'.format(chain),
790 path='Shifter/eff',
791 xbins=eff_bins, xmin=eff_min, xmax=eff_max)
792
793 for chain in HLTChains:
794 metGroup.defineHistogram('offline_NoMu_Et_eff,pass_{};{}_eff'.format(chain,chain),
795 type='TProfile',
796 title='{} efficiency;offline E_{{T}} [GeV];Efficiency'.format(chain),
797 path='Shifter/eff',
798 xbins=eff_bins, xmin=eff_min, xmax=eff_max)
799
800 for chain in HLTChainsVal:
801 metGroup.defineHistogram('offline_NoMu_Et_eff,pass_{};{}_eff'.format(chain,chain),
802 type='TProfile',
803 title='{} efficiency;offline E_{{T}} [GeV];Efficiency'.format(chain),
804 path='Expert/eff',
805 xbins=eff_bins, xmin=eff_min, xmax=eff_max)
806 for chain in HLTChainsT0:
807 metGroup.defineHistogram('offline_NoMu_Et_eff,pass_{};{}_eff'.format(chain,chain),
808 type='TProfile',
809 title='{} efficiency;offline E_{{T}} [GeV];Efficiency'.format(chain),
810 path='Expert/eff',
811 xbins=eff_bins, xmin=eff_min, xmax=eff_max)
812
813
814 metGroup.defineHistogram('act_IPBC', type='TH1F',title='Actual IPBC;Actual IPBC;Events',
815 path='Shifter/Component',xbins=100,xmin=0,xmax=100)
816
817 metGroup.defineHistogram('HLT_MET_status',type='TH1F',title='HLT MET Status;;',
818 weight='MET_status',
819 path='Shifter/Component',
820 xbins=len(bit_names),xmin=-0.5,xmax=31.5, xlabels=bit_names)
821 metGroup.defineHistogram('HLT_MET_component,component_Et;compN_compEt',
822 type='TH2F',
823 title='HLT Missing E_{T} VS component;;Missing E_{T} [GeV]',
824 path='Shifter/Component',
825 xbins=len(comp_names),xmin=-0.5,xmax=24.5,ybins=et_bins,ymin=et_min,ymax=et_max,
826 xlabels=comp_names)
827 metGroup.defineHistogram('component,component_status;compN_HLT_MET_status',
828 type='TH2F',
829 title='HLT MET Status VS component;;',
830 weight='component_status_weight',
831 path='Shifter/Component',
832 xbins=len(comp_names),xmin=-0.5,xmax=24.5,ybins=len(comp_names),ymin=-0.5,ymax=31.5,
833 xlabels=comp_names, ylabels=bit_names)
834
835 for alg in algsHLTExpert:
836 metGroup.defineHistogram('{}_Ex'.format(alg),
837 title='{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
838 path='Expert/HLT_{}'.format(alg),
839 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
840 metGroup.defineHistogram('{}_Ey'.format(alg),
841 title='{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
842 path='Expert/HLT_{}'.format(alg),
843 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
844 metGroup.defineHistogram('{}_Et'.format(alg),
845 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
846 path='Expert/HLT_{}'.format(alg),
847 xbins=et_bins,xmin=et_min,xmax=et_max)
848 metGroup.defineHistogram('{}_sumEt'.format(alg),
849 title='{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
850 path='Expert/HLT_{}'.format(alg),
851 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
852
853 for alg in algsMET2d_tcpufit:
854 metGroup.defineHistogram('{}_2D_Et,tcpufit_2D_Et;hlt_tcpufit_Et_{}_Et'.format(alg, alg),
855 type='TH2F',
856 title='HLT tcpufit Missing E_{{T}} vs. HLT {} Missing Et;{} E_{{T}} [GeV];tcpufit E_{{T}} [GeV]'.format(alg, alg),
857 path='Expert/HLT_MET2D',
858 xbins=40,xmin=et_min,xmax=et_max,ybins=40,ymin=et_min,ymax=et_max)
859
860 for alg in algsHLTChain1:
861 metChain1Group.defineHistogram('{}_Ex'.format(alg),
862 title='{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
863 path='HLT_{}'.format(alg),
864 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
865 metChain1Group.defineHistogram('{}_Ex_log'.format(alg),
866 title='{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
867 path='HLT_{}'.format(alg),
868 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
869 metChain1Group.defineHistogram('{}_Ey'.format(alg),
870 title='{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
871 path='HLT_{}'.format(alg),
872 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
873 metChain1Group.defineHistogram('{}_Ey_log'.format(alg),
874 title='{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
875 path='HLT_{}'.format(alg),
876 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
877 metChain1Group.defineHistogram('{}_Et'.format(alg),
878 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
879 path='HLT_{}'.format(alg),
880 xbins=et_bins,xmin=et_min,xmax=et_max)
881 metChain1Group.defineHistogram('{}_Et_log'.format(alg),
882 title='{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
883 path='HLT_{}'.format(alg),
884 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
885 metChain1Group.defineHistogram('{}_sumEt'.format(alg),
886 title='{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
887 path='HLT_{}'.format(alg),
888 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
889 metChain1Group.defineHistogram('{}_sumEt_log'.format(alg),
890 title='{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
891 path='HLT_{}'.format(alg),
892 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
893 metChain1Group.defineHistogram('{}_phi'.format(alg),
894 title='{} #phi;#phi;Events'.format(alg),
895 path='HLT_{}'.format(alg),
896 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
897 metChain1Group.defineHistogram('{0}_phi;{0}_phi_etweight'.format(alg),
898 title='{} #phi (etweighted);#phi;Et weighted events'.format(alg),
899 weight='{}_Et'.format(alg),
900 path='HLT_{}'.format(alg),
901 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
902
903 for alg in algsHLTChain2:
904 metChain2Group.defineHistogram('{}_Ex'.format(alg),
905 title='{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
906 path='HLT_{}'.format(alg),
907 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
908 metChain2Group.defineHistogram('{}_Ex_log'.format(alg),
909 title='{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
910 path='HLT_{}'.format(alg),
911 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
912 metChain2Group.defineHistogram('{}_Ey'.format(alg),
913 title='{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
914 path='HLT_{}'.format(alg),
915 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
916 metChain2Group.defineHistogram('{}_Ey_log'.format(alg),
917 title='{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
918 path='HLT_{}'.format(alg),
919 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
920 metChain2Group.defineHistogram('{}_Et'.format(alg),
921 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
922 path='HLT_{}'.format(alg),
923 xbins=et_bins,xmin=et_min,xmax=et_max)
924 metChain2Group.defineHistogram('{}_Et_log'.format(alg),
925 title='{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
926 path='HLT_{}'.format(alg),
927 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
928 metChain2Group.defineHistogram('{}_sumEt'.format(alg),
929 title='{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
930 path='HLT_{}'.format(alg),
931 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
932 metChain2Group.defineHistogram('{}_sumEt_log'.format(alg),
933 title='{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
934 path='HLT_{}'.format(alg),
935 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
936 metChain2Group.defineHistogram('{}_phi'.format(alg),
937 title='{} #phi;#phi;Events'.format(alg),
938 path='HLT_{}'.format(alg),
939 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
940 metChain2Group.defineHistogram('{0}_phi;{0}_phi_etweight'.format(alg),
941 title='{} #phi (etweighted);#phi;Et weighted events'.format(alg),
942 weight='{}_Et'.format(alg),
943 path='HLT_{}'.format(alg),
944 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
945
946 for alg in algsHLTChain3:
947 metChain3Group.defineHistogram('{}_Ex'.format(alg),
948 title='{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
949 path='HLT_{}'.format(alg),
950 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
951 metChain3Group.defineHistogram('{}_Ex_log'.format(alg),
952 title='{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
953 path='HLT_{}'.format(alg),
954 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
955 metChain3Group.defineHistogram('{}_Ey'.format(alg),
956 title='{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
957 path='HLT_{}'.format(alg),
958 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
959 metChain3Group.defineHistogram('{}_Ey_log'.format(alg),
960 title='{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
961 path='HLT_{}'.format(alg),
962 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
963 metChain3Group.defineHistogram('{}_Et'.format(alg),
964 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
965 path='HLT_{}'.format(alg),
966 xbins=et_bins,xmin=et_min,xmax=et_max)
967 metChain3Group.defineHistogram('{}_Et_log'.format(alg),
968 title='{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
969 path='HLT_{}'.format(alg),
970 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
971 metChain3Group.defineHistogram('{}_sumEt'.format(alg),
972 title='{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
973 path='HLT_{}'.format(alg),
974 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
975 metChain3Group.defineHistogram('{}_sumEt_log'.format(alg),
976 title='{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
977 path='HLT_{}'.format(alg),
978 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
979 metChain3Group.defineHistogram('{}_phi'.format(alg),
980 title='{} #phi;#phi;Events'.format(alg),
981 path='HLT_{}'.format(alg),
982 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
983 metChain3Group.defineHistogram('{0}_phi;{0}_phi_etweight'.format(alg),
984 title='{} #phi (etweighted);#phi;Et weighted events'.format(alg),
985 weight='{}_Et'.format(alg),
986 path='HLT_{}'.format(alg),
987 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
988
989 for alg in algsHLTChain4:
990 metChain4Group.defineHistogram('{}_Ex'.format(alg),
991 title='{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
992 path='HLT_{}'.format(alg),
993 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
994 metChain4Group.defineHistogram('{}_Ex_log'.format(alg),
995 title='{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
996 path='HLT_{}'.format(alg),
997 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
998 metChain4Group.defineHistogram('{}_Ey'.format(alg),
999 title='{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
1000 path='HLT_{}'.format(alg),
1001 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
1002 metChain4Group.defineHistogram('{}_Ey_log'.format(alg),
1003 title='{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
1004 path='HLT_{}'.format(alg),
1005 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
1006 metChain4Group.defineHistogram('{}_Et'.format(alg),
1007 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
1008 path='HLT_{}'.format(alg),
1009 xbins=et_bins,xmin=et_min,xmax=et_max)
1010 metChain4Group.defineHistogram('{}_Et_log'.format(alg),
1011 title='{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
1012 path='HLT_{}'.format(alg),
1013 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
1014 metChain4Group.defineHistogram('{}_sumEt'.format(alg),
1015 title='{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
1016 path='HLT_{}'.format(alg),
1017 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
1018 metChain4Group.defineHistogram('{}_sumEt_log'.format(alg),
1019 title='{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
1020 path='HLT_{}'.format(alg),
1021 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
1022 metChain4Group.defineHistogram('{}_phi'.format(alg),
1023 title='{} #phi;#phi;Events'.format(alg),
1024 path='HLT_{}'.format(alg),
1025 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
1026 metChain4Group.defineHistogram('{0}_phi;{0}_phi_etweight'.format(alg),
1027 title='{} #phi (etweighted);#phi;Et weighted events'.format(alg),
1028 weight='{}_Et'.format(alg),
1029 path='HLT_{}'.format(alg),
1030 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
1031
1032 if lowMu:
1033 for (chainGroup, algsChain) in [(metChain5Group, algsHLTChain5),
1034 (metChain6Group, algsHLTChain6),
1035 (metChain7Group, algsHLTChain7),
1036 (metChain8Group, algsHLTChain8)]:
1037 for alg in algsChain:
1038 chainGroup.defineHistogram('{}_Ex'.format(alg),
1039 title='{} Missing E_{{x}};E_{{x}} [GeV];Events'.format(alg),
1040 path='HLT_{}'.format(alg),
1041 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
1042 chainGroup.defineHistogram('{}_Ex_log'.format(alg),
1043 title='{} Missing E_{{x}} log;sgn(E_{{x}}) log(E_{{x}}/GeV);Events'.format(alg),
1044 path='HLT_{}'.format(alg),
1045 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
1046 chainGroup.defineHistogram('{}_Ey'.format(alg),
1047 title='{} Missing E_{{y}};E_{{y}} [GeV];Events'.format(alg),
1048 path='HLT_{}'.format(alg),
1049 xbins=ec_bins,xmin=ec_min,xmax=ec_max)
1050 chainGroup.defineHistogram('{}_Ey_log'.format(alg),
1051 title='{} Missing E_{{y}} log;sgn(E_{{y}}) log(E_{{y}}/GeV);Events'.format(alg),
1052 path='HLT_{}'.format(alg),
1053 xbins=ec_bins_log,xmin=ec_min_log,xmax=ec_max_log)
1054 chainGroup.defineHistogram('{}_Et'.format(alg),
1055 title='{} Missing E_{{T}};E_{{T}} [GeV];Events'.format(alg),
1056 path='HLT_{}'.format(alg),
1057 xbins=et_bins,xmin=et_min,xmax=et_max)
1058 chainGroup.defineHistogram('{}_Et_log'.format(alg),
1059 title='{} Missing E_{{T}} log;log(E_{{T}}/GeV);Events'.format(alg),
1060 path='HLT_{}'.format(alg),
1061 xbins=et_bins_log,xmin=et_min_log,xmax=et_max_log)
1062 chainGroup.defineHistogram('{}_sumEt'.format(alg),
1063 title='{} sumE_{{T}};sumE_{{T}} [GeV];Events'.format(alg),
1064 path='HLT_{}'.format(alg),
1065 xbins=sumet_bins,xmin=sumet_min,xmax=sumet_max)
1066 chainGroup.defineHistogram('{}_sumEt_log'.format(alg),
1067 title='{} sumE_{{T}} log;log(sumE_{{T}}/GeV);Events'.format(alg),
1068 path='HLT_{}'.format(alg),
1069 xbins=sumet_bins_log,xmin=sumet_min_log,xmax=sumet_max_log)
1070 chainGroup.defineHistogram('{}_phi'.format(alg),
1071 title='{} #phi;#phi;Events'.format(alg),
1072 path='HLT_{}'.format(alg),
1073 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
1074 chainGroup.defineHistogram('{0}_phi;{0}_phi_etweight'.format(alg),
1075 title='{} #phi (etweighted);#phi;Et weighted events'.format(alg),
1076 weight='{}_Et'.format(alg),
1077 path='HLT_{}'.format(alg),
1078 xbins=phi_bins,xmin=phi_min,xmax=phi_max)
1079
1080 for (chainGroup, chainName) in [(metChain5Group, TrigMETMonChain5),
1081 (metChain6Group, TrigMETMonChain6),
1082 (metChain7Group, TrigMETMonChain7),
1083 (metChain8Group, TrigMETMonChain8)]:
1084 chainGroup.defineHistogram('hlt_el_pt',title='HLT Electron p_{{T}};p_{{T}} [GeV];Events',
1085 path='ElMu',xbins=100,xmin=0,xmax=100)
1086 chainGroup.defineHistogram('hlt_mu_pt',title='HLT Muon p_{{T}};p_{{T}} [GeV];Events',
1087 path='ElMu',xbins=100,xmin=0,xmax=100)
1088
1089
1094 return helper.result()
1095