ATLAS Offline Software
Loading...
Searching...
No Matches
EFMuonMonConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
2
3import ROOT
4
5def EFMuonMonConfig(helper):
6
7 from AthenaConfiguration.ComponentFactory import CompFactory
8
9 GroupName = 'EFMuon'
10
11 from MuonSelectorTools.MuonSelectorToolsConfig import MuonSelectionToolCfg
12 from .MuonMatchingToolConfig import MuonMatchingToolConfig
13 monAlg = helper.addAlgorithm(CompFactory.EFMuonMon,'EFMuonMon',
14 MuonSelectionTool = helper.result().popToolsAndMerge(MuonSelectionToolCfg(helper.flags, MuQuality=1)),
15 MuonMatchingTool = helper.result().popToolsAndMerge(MuonMatchingToolConfig(helper.flags)))
16
17
18 from TrigConfigSvc.TriggerConfigAccess import getHLTMonitoringAccess
19 moniAccess = getHLTMonitoringAccess(helper.flags)
20 monAlg.MonitoredChains = moniAccess.monitoredChains(signatures="muonMon",monLevels=["shifter","t0","val"])
21
22 # if mon groups not found fall back to hard-coded trigger monitoring list
23 if len(monAlg.MonitoredChains) == 0:
24 # HLT_mu6_L1MU6 is test chain for small statistics, so it will be removed.
25 monAlg.MonitoredChains = ['HLT_mu6_L1MU5VF', 'HLT_mu24_ivarmedium_L1MU14FCH', 'HLT_mu50_L1MU14FCH', 'HLT_mu60_0eta105_msonly_L1MU14FCH', 'HLT_2mu14_L12MU8F', 'HLT_mu22_mu8noL1_L1MU14FCH']
26
27 monAlg.Group = GroupName
28
29 # configuration of etaphi2D and Ratio plots for non-specific chain
30 histGroupNonSpecificChain = helper.addGroup(monAlg, GroupName, 'HLT/MuonMon/')
31
32 histGroupNonSpecificChain.defineHistogram('EFSAEta,EFSAPhi;EFSA_Eta_vs_Phi',
33 title='EFSA Eta vs Phi ;#eta;#phi',
34 type='TH2F', path='etaphi2D',xbins=108,xmin=-2.7,xmax=2.7, ybins=96,ymin=-ROOT.TMath.Pi(),ymax=ROOT.TMath.Pi())
35
36 histGroupNonSpecificChain.defineHistogram('EFCBEta,EFCBPhi;EFCB_Eta_vs_Phi',
37 title='EFCB Eta vs Phi ;#eta;#phi',
38 type='TH2F', path='etaphi2D',xbins=108,xmin=-2.7,xmax=2.7, ybins=96,ymin=-ROOT.TMath.Pi(),ymax=ROOT.TMath.Pi())
39
40 histGroupNonSpecificChain.defineHistogram('EFSAAboveCut,LB;EFSA_Over_OfflineSA_4GeV_Cut',
41 title='EFSA Over OfflineSA 4GeV Cut;LB;Ratio',
42 type='TEfficiency', path='Ratio',xbins=400,xmin=1.,xmax=801.)
43
44 histGroupNonSpecificChain.defineHistogram('EFCBAboveCut,LB;EFCB_Over_OfflineCB_4GeV_Cut',
45 title='EFCB Over OfflineCB 4GeV Cut;LB;Ratio',
46 type='TEfficiency', path='Ratio',xbins=400,xmin=1.,xmax=801.)
47
48
49 # configration for specific chain
50 for chain in monAlg.MonitoredChains:
51
52 histGroup = helper.addGroup(monAlg, GroupName+'_'+chain, 'HLT/MuonMon/EFMuon/'+chain)
53
54 # basic EDM variables
55 # EFSA
56 histGroup.defineHistogram(chain+'_EFSA_Pt;EFSA_Pt',
57 title='EFSA Pt '+chain+';p_{T} [GeV];Events',
58 type='TH1F', path='',xbins=210,xmin=-105.,xmax=105.)
59
60 histGroup.defineHistogram(chain+'_EFSA_Eta;EFSA_Eta',
61 title='EFSA Eta '+chain+';#eta;Events',
62 type='TH1F', path='',xbins=108,xmin=-2.7,xmax=2.7)
63
64 histGroup.defineHistogram(chain+'_EFSA_Phi;EFSA_Phi',
65 title='EFSA Phi '+chain+';#phi;Events',
66 type='TH1F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi())
67
68 histGroup.defineHistogram(chain+'_EFSA_Eta,'+chain+'_EFSA_Phi;EFSA_Eta_vs_Phi',
69 title='EFSA Eta vs Phi '+chain+';#eta;#phi',
70 type='TH2F', path='',xbins=108,xmin=-2.7,xmax=2.7, ybins=96,ymin=-ROOT.TMath.Pi(),ymax=ROOT.TMath.Pi())
71
72
73 # EFCB
74 histGroup.defineHistogram(chain+'_EFCB_Pt;EFCB_Pt',
75 title='EFCB Pt '+chain+';p_{T} [GeV];Events',
76 type='TH1F', path='',xbins=210,xmin=-105.,xmax=105.)
77
78 histGroup.defineHistogram(chain+'_EFCB_Eta;EFCB_Eta',
79 title='EFCB Eta '+chain+';#eta;Events',
80 type='TH1F', path='',xbins=108,xmin=-2.7,xmax=2.7)
81
82 histGroup.defineHistogram(chain+'_EFCB_Phi;EFCB_Phi',
83 title='EFCB Phi '+chain+';#phi;Events',
84 type='TH1F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi())
85
86 histGroup.defineHistogram(chain+'_EFCB_Eta,'+chain+'_EFCB_Phi;EFCB_Eta_vs_Phi',
87 title='EFCB Eta vs Phi '+chain+';#eta;#phi',
88 type='TH2F', path='',xbins=108,xmin=-2.7,xmax=2.7, ybins=96,ymin=-ROOT.TMath.Pi(),ymax=ROOT.TMath.Pi())
89
90 # EFIso
91 histGroup.defineHistogram(chain+'_PtCone03;EFIso_PtCone03',
92 title='EFIso sum Pt in 0.3 cone '+chain+';Sum p_{T} [GeV];Events',
93 type='TH1F', path='',xbins=50, xmin=0., xmax=25.)
94
95 histGroup.defineHistogram(chain+'_PtCone03overMuonPt;EFIso_PtCone03overMuonPt',
96 title='EFIso sum Pt in 0.3 cone / muon Pt '+chain+';Sum p_{T} in 0.3 cone / muon p_{T};Events',
97 type='TH1F', path='',xbins=100,xmin=0.,xmax=0.5)
98
99
100 # OfflineSA
101 histGroup.defineHistogram(chain+'_OfflineSA_Pt;OfflineSA_Pt',
102 title='OfflineSA Pt '+chain+';p_{T} [GeV];Events',
103 type='TH1F', path='',xbins=210,xmin=-105.,xmax=105.)
104
105 histGroup.defineHistogram(chain+'_OfflineSA_Eta;OfflineSA_Eta',
106 title='OfflineSA Eta '+chain+';#eta;Events',
107 type='TH1F', path='',xbins=108,xmin=-2.7,xmax=2.7)
108
109 histGroup.defineHistogram(chain+'_OfflineSA_Phi;OfflineSA_Phi',
110 title='OfflineSA Phi '+chain+';#phi;Events',
111 type='TH1F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi())
112
113 histGroup.defineHistogram(chain+'_OfflineSA_Eta,'+chain+'_OfflineSA_Phi;OfflineSA_Eta_vs_Phi',
114 title='OfflineSA Eta vs Phi '+chain+';#eta;#phi',
115 type='TH2F', path='',xbins=108,xmin=-2.7,xmax=2.7, ybins=96,ymin=-ROOT.TMath.Pi(),ymax=ROOT.TMath.Pi())
116
117
118 # OfflineCB
119 histGroup.defineHistogram(chain+'_OfflineCB_Pt;OfflineCB_Pt',
120 title='OfflineCB Pt '+chain+';p_{T} [GeV];Events',
121 type='TH1F', path='',xbins=210,xmin=-105.,xmax=105.)
122
123 histGroup.defineHistogram(chain+'_OfflineCB_Eta;OfflineCB_Eta',
124 title='OfflineCB Eta '+chain+';#eta;Events',
125 type='TH1F', path='',xbins=108,xmin=-2.7,xmax=2.7)
126
127 histGroup.defineHistogram(chain+'_OfflineCB_Phi;OfflineCB_Phi',
128 title='OfflineCB Phi '+chain+';#phi;Events',
129 type='TH1F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi())
130
131 histGroup.defineHistogram(chain+'_OfflineCB_Eta,'+chain+'_OfflineCB_Phi;OfflineCB_Eta_vs_Phi',
132 title='OfflineCB Eta vs Phi '+chain+';#eta;#phi',
133 type='TH2F', path='',xbins=108,xmin=-2.7,xmax=2.7, ybins=96,ymin=-ROOT.TMath.Pi(),ymax=ROOT.TMath.Pi())
134
135
136
137 # correlation histograms
138 # EFSA vs. OfflineSA muons
139 histGroup.defineHistogram(chain+'_OfflineSA_Pt,'+chain+'_MatchedEFSA_Pt;EFSA_OfflineSA_PtCor',
140 title='PtCor EFSA OfflineSA '+chain+';OfflineSA p_{T} [GeV];EFSA p_{T} [GeV]',
141 cutmask=chain+'_matchedEFSA',
142 type='TH2F', path='',xbins=210,xmin=-105.,xmax=105., ybins=210,ymin=-105.,ymax=105.)
143
144 histGroup.defineHistogram(chain+'_OfflineSA_Phi,'+chain+'_MatchedEFSA_Phi;EFSA_OfflineSA_PhiCor',
145 title='PhiCor EFSA OfflineSA '+chain+';OfflineSA #phi;EFSA #phi',
146 cutmask=chain+'_matchedEFSA',
147 type='TH2F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi(), ybins=96,ymin=-ROOT.TMath.Pi(),ymax=ROOT.TMath.Pi())
148
149 histGroup.defineHistogram(chain+'_OfflineSA_Eta,'+chain+'_MatchedEFSA_Eta;EFSA_OfflineSA_EtaCor',
150 title='EtaCor EFSA OfflineSA '+chain+';OfflineSA #eta;EFSA #eta',
151 cutmask=chain+'_matchedEFSA',
152 type='TH2F', path='',xbins=108,xmin=-2.7,xmax=2.7, ybins=108,ymin=-2.7,ymax=2.7)
153
154 histGroup.defineHistogram(chain+'_SAdPt;EFSA_OfflineSA_dPt',
155 title='dPt EFSA OfflineSA '+chain+';dPt [GeV];Events',
156 cutmask=chain+'_matchedEFSA',
157 type='TH1F', path='',xbins=100,xmin=-10.,xmax=10.)
158
159 histGroup.defineHistogram(chain+'_SAdEta;EFSA_OfflineSA_dEta',
160 title='dEta EFSA OfflineSA '+chain+';dEta;Events',
161 cutmask=chain+'_matchedEFSA',
162 type='TH1F', path='',xbins=200,xmin=-5.,xmax=5.)
163
164 histGroup.defineHistogram(chain+'_SAdPhi;EFSA_OfflineSA_dPhi',
165 title='dPhi EFSA OfflineSA '+chain+';dPhi;Events',
166 cutmask=chain+'_matchedEFSA',
167 type='TH1F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi())
168
169 histGroup.defineHistogram(chain+'_SAdR;EFSA_OfflineSA_dR',
170 title='dR EFSA OfflineSA '+chain+';dR;Events',
171 cutmask=chain+'_matchedEFSA',
172 type='TH1F', path='',xbins=110,xmin=0.,xmax=11.)
173
174 histGroup.defineHistogram(chain+'_OfflineSA_Pt;OfflineSA_Pt_AwareEFSA',
175 title='OfflineSA Pt AwareEFSA '+chain+';OfflineSA p_{T} [GeV];Events',
176 cutmask=chain+'_matchedEFSA',
177 type='TH1F', path='',xbins=210,xmin=-105.,xmax=105.)
178
179 histGroup.defineHistogram(chain+'_OfflineSA_Phi;OfflineSA_Phi_AwareEFSA',
180 title='OfflineSA Phi AwareEFSA '+chain+';OfflineSA #phi;Events',
181 cutmask=chain+'_matchedEFSA',
182 type='TH1F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi())
183
184 histGroup.defineHistogram(chain+'_OfflineSA_Eta;OfflineSA_Eta_AwareEFSA',
185 title='OfflineSA Eta AwareEFSA '+chain+';OfflineSA #eta;Events',
186 cutmask=chain+'_matchedEFSA',
187 type='TH1F', path='',xbins=108,xmin=-2.7,xmax=2.7)
188
189
190 # OfflineSA (matched to EFSA) vs. OfflineSA (matched to L2SA)
191 histGroup.defineHistogram(chain+'_OfflineSA_Pt,'+chain+'_OfflineSAmatchedL2SA_Pt;OfflineSA_matchedEFSA_matchedL2SA_PtCor',
192 title='PtCor OfflineSA (matched to EFSA) vs. OfflineSA (matched to L2SA) '+chain+';OfflineSA matched to EFSA p_{T} [GeV];OfflineSA matched to L2SA p_{T} [GeV]',
193 cutmask=chain+'_matchedL2SA',
194 type='TH2F', path='',xbins=210,xmin=-105.,xmax=105., ybins=210,ymin=-105.,ymax=105.)
195
196 histGroup.defineHistogram(chain+'_OfflineSA_Phi,'+chain+'_OfflineSAmatchedL2SA_Phi;OfflineSA_matchedEFSA_matchedL2SA_PhiCor',
197 title='PhiCor OfflineSA (matched to EFSA) vs. OfflineSA (matched to L2SA) '+chain+';OfflineSA matched to EFSA #phi;OfflineSA matched to L2SA #phi',
198 cutmask=chain+'_matchedL2SA',
199 type='TH2F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi(), ybins=96,ymin=-ROOT.TMath.Pi(),ymax=ROOT.TMath.Pi())
200
201 histGroup.defineHistogram(chain+'_OfflineSA_Eta,'+chain+'_OfflineSAmatchedL2SA_Eta;OfflineSA_matchedEFSA_matchedL2SA_EtaCor',
202 title='EtaCor OfflineSA (matched to EFSA) vs. OfflineSA (matched to L2SA) '+chain+';OfflineSA matched to EFSA #eta;OfflineSA matched to L2SA #eta',
203 cutmask=chain+'_matchedL2SA',
204 type='TH2F', path='',xbins=108,xmin=-2.7,xmax=2.7, ybins=108,ymin=-2.7,ymax=2.7)
205
206
207 # EFCB vs. OfflineCB muons
208 histGroup.defineHistogram(chain+'_OfflineCB_Pt,'+chain+'_MatchedEFCB_Pt;EFCB_OfflineCB_PtCor',
209 title='PtCor EFCB OfflineCB '+chain+';OfflineCB p_{T} [GeV];EFCB p_{T} [GeV];',
210 cutmask=chain+'_matchedEFCB',
211 type='TH2F', path='',xbins=210,xmin=-105.,xmax=105., ybins=210,ymin=-105.,ymax=105.)
212
213 histGroup.defineHistogram(chain+'_OfflineCB_Phi,'+chain+'_MatchedEFCB_Phi;EFCB_OfflineCB_PhiCor',
214 title='PhiCor EFCB OfflineCB '+chain+';OfflineCB #phi;EFCB #phi;',
215 cutmask=chain+'_matchedEFCB',
216 type='TH2F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi(), ybins=96,ymin=-ROOT.TMath.Pi(),ymax=ROOT.TMath.Pi())
217
218 histGroup.defineHistogram(chain+'_OfflineCB_Eta,'+chain+'_MatchedEFCB_Eta;EFCB_OfflineCB_EtaCor',
219 title='EtaCor EFCB OfflineCB '+chain+';OfflineCB #eta;EFCB #eta;',
220 cutmask=chain+'_matchedEFCB',
221 type='TH2F', path='',xbins=108,xmin=-2.7,xmax=2.7, ybins=108,ymin=-2.7,ymax=2.7)
222
223 histGroup.defineHistogram(chain+'_CBdPt;EFCB_OfflineCB_dPt',
224 title='dPt EFCB OfflineCB '+chain+';dPt [GeV];Events',
225 cutmask=chain+'_matchedEFCB',
226 type='TH1F', path='',xbins=100,xmin=-10.,xmax=10.)
227
228 histGroup.defineHistogram(chain+'_CBdEta;EFCB_OfflineCB_dEta',
229 title='dEta EFCB OfflineCB '+chain+';dEta;Events',
230 cutmask=chain+'_matchedEFCB',
231 type='TH1F', path='',xbins=200,xmin=-5.,xmax=5.)
232
233 histGroup.defineHistogram(chain+'_CBdPhi;EFCB_OfflineCB_dPhi',
234 title='dPhi EFCB OfflineCB '+chain+';dPhi;Events',
235 cutmask=chain+'_matchedEFCB',
236 type='TH1F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi())
237
238 histGroup.defineHistogram(chain+'_CBdR;EFCB_OfflineCB_dR',
239 title='dR EFCB OfflineCB '+chain+';dR;Events',
240 cutmask=chain+'_matchedEFCB',
241 type='TH1F', path='',xbins=110,xmin=0.,xmax=11.)
242
243 histGroup.defineHistogram(chain+'_OfflineCB_Pt;OfflineCB_Pt_AwareEFCB',
244 title='OfflineCB Pt AwareEFCB '+chain+';OfflineCB p_{T} [GeV];Events',
245 cutmask=chain+'_matchedEFCB',
246 type='TH1F', path='',xbins=210,xmin=-105.,xmax=105.)
247
248 histGroup.defineHistogram(chain+'_OfflineCB_Phi;OfflineCB_Phi_AwareEFCB',
249 title='OfflineCB Phi AwareEFCB '+chain+';OfflineCB #phi;Events',
250 cutmask=chain+'_matchedEFCB',
251 type='TH1F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi())
252
253 histGroup.defineHistogram(chain+'_OfflineCB_Eta;OfflineCB_Eta_AwareEFCB',
254 title='OfflineCB Eta AwareEFCB '+chain+';OfflineCB #eta;Events',
255 cutmask=chain+'_matchedEFCB',
256 type='TH1F', path='',xbins=108,xmin=-2.7,xmax=2.7)
257
258
259 # OfflineCB (matched to EFCB) vs. OfflineCB (matched to L2CB)
260 histGroup.defineHistogram(chain+'_OfflineCB_Pt,'+chain+'_OfflineCBmatchedL2CB_Pt;OfflineCB_matchedEFCB_matchedL2CB_PtCor',
261 title='PtCor OfflineCB (matched to EFCB) vs. OfflineCB (matched to L2CB) '+chain+';OfflineCB matched to EFCB p_{T} [GeV];OfflineCB matched to L2CB p_{T} [GeV]',
262 cutmask=chain+'_matchedL2CB',
263 type='TH2F', path='',xbins=210,xmin=-105.,xmax=105., ybins=210,ymin=-105.,ymax=105.)
264
265 histGroup.defineHistogram(chain+'_OfflineCB_Phi,'+chain+'_OfflineCBmatchedL2CB_Phi;OfflineCB_matchedEFCB_matchedL2CB_PhiCor',
266 title='PhiCor OfflineCB (matched to EFCB) vs. OfflineCB (matched to L2CB) '+chain+';OfflineCB matched to EFCB #phi;OfflineCB matched to L2CB #phi',
267 cutmask=chain+'_matchedL2CB',
268 type='TH2F', path='',xbins=96,xmin=-ROOT.TMath.Pi(),xmax=ROOT.TMath.Pi(), ybins=96,ymin=-ROOT.TMath.Pi(),ymax=ROOT.TMath.Pi())
269
270 histGroup.defineHistogram(chain+'_OfflineCB_Eta,'+chain+'_OfflineCBmatchedL2CB_Eta;OfflineCB_matchedEFCB_matchedL2CB_EtaCor',
271 title='EtaCor OfflineCB (matched to EFCB) vs. OfflineCB (matched to L2CB) '+chain+';OfflineCB matched to EFCB #eta;OfflineCB matched to L2CB #eta',
272 cutmask=chain+'_matchedL2CB',
273 type='TH2F', path='',xbins=108,xmin=-2.7,xmax=2.7, ybins=108,ymin=-2.7,ymax=2.7)
274
275
276 # EFIso vs. OfflineIso muons
277 histGroup.defineHistogram(chain+'_MatchedEFPIsotCone03,'+chain+'_OfflineIsoPtCone03;EFIso_OfflineIso_CorPtCone03',
278 title='sum Pt in 0.3 cone correlation EFIso vs. OfflineIso '+chain+';EFIso Sum p_{T} [GeV];OfflineIso Sum p_{T} [GeV];Events',
279 type='TH2F', path='',xbins=50, xmin=0., xmax=25., ybins=50, ymin=0., ymax=25.)
280
281 histGroup.defineHistogram(chain+'_MatchedEFIsoPtCone03overMuonPt,'+chain+'_OfflineIsoPtCone03overMuonPt;EFIso_OfflineIso_CorPtCone03overMuonPt',
282 title='sum Pt in 0.3 cone / muon Pt correlation EFIso vs. OfflineIso '+chain+';EFIso Sum p_{T} in 0.3 cone / muon p_{T};OfflineIso Sum p_{T} in 0.3 cone / muon p_{T};Events',
283 type='TH2F', path='',xbins=100,xmin=0.,xmax=0.5, ybins=100,ymin=0.,ymax=0.5)
284
285
286 return