ATLAS Offline Software
Functions
JfexMonitorAlgorithm Namespace Reference

Functions

def JfexMonitoringConfig (flags)
 

Function Documentation

◆ JfexMonitoringConfig()

def JfexMonitorAlgorithm.JfexMonitoringConfig (   flags)
Function to configure LVL1 Jfex algorithm in the monitoring system.

Definition at line 4 of file JfexMonitorAlgorithm.py.

4 def JfexMonitoringConfig(flags):
5  '''Function to configure LVL1 Jfex algorithm in the monitoring system.'''
6 
7  import math
8  # get the component factory - used for getting the algorithms
9  from AthenaConfiguration.ComponentFactory import CompFactory
10  from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
11  result = ComponentAccumulator()
12 
13  from TrigT1CaloMonitoring.LVL1CaloMonitoringConfig import L1CaloMonitorCfgHelper
14  helper = L1CaloMonitorCfgHelper(flags,CompFactory.JfexMonitorAlgorithm,'JfexMonAlg')
15  JfexMonAlg = helper.alg
16 
17  # add any steering
18  groupName = 'JfexMonitor' # the monitoring group name is also used for the package name
19  mapGroupName = 'jFEXMaps'
20  mapHighPtGroupName = 'jFEXMapsHighPt'
21  JfexMonAlg.Grouphist = groupName
22 
23  # mainDir = 'L1Calo'
24  developerPath = 'Developer/Jfex/'
25  expertPath = 'Expert/Outputs/'
26 
27 
28  # define jfex histograms
29 
30  FPGA_names = ["U1","U2","U4","U3"]
31  Modules_names = ["jFEX 0","jFEX 1","jFEX 2","jFEX 3","jFEX 4","jFEX 5"]
32 
33  from ROOT import TMath
34 
35  x_phi = []
36  for i in range(67):
37  phi = (-TMath.Pi()- TMath.Pi()/32) + TMath.Pi()/32*i
38  x_phi.append(phi)
39  x_phi = sorted(x_phi)
40 
41  phi_bins = {
42  'xbins': x_phi
43  }
44 
45  eta_bins_central = [-2.5 + 0.1*i for i in range(51)]
46 
47  # C-side irregular region
48  eta_bins = [-4.8 + 0.1*i for i in range(16)]
49  eta_bins_jets = [-4.8 + 0.1*i for i in range(16)]
50  # C-side coarse region
51  eta_bins += [-3.2,-3.1,-2.9,-2.7]
52  eta_bins_jets += [-3.2,-3.15,-3.1,-2.9,-2.7]
53  # central region
54  eta_bins += eta_bins_central
55  eta_bins_jets += eta_bins_central
56  # A-side coarse region
57  eta_bins += [2.7,2.9,3.1,3.2]
58  eta_bins_jets += [2.7,2.9,3.1,3.15,3.2]
59  # A-side irregular region
60  eta_bins += [3.3 + 0.1*i for i in range(16)]
61  eta_bins_jets += [3.3 + 0.1*i for i in range(16)]
62 
63  JfexMonAlg.jJEtaBins = eta_bins_jets
64  JfexMonAlg.jTauEtaBins = eta_bins_central
65  JfexMonAlg.jEMEtaBins = eta_bins
66 
67  eta_phi_bins = {
68  'xbins': eta_bins,
69  'ybins': 64, 'ymin': -TMath.Pi(), 'ymax': TMath.Pi()
70  }
71 
72  eta_phi_bins_jets = {
73  'xbins': eta_bins_jets,
74  'ybins': 64, 'ymin': -TMath.Pi(), 'ymax': TMath.Pi()
75  }
76 
77  eta_phi_bins_central = {
78  'xbins': eta_bins_central,
79  'ybins': 64, 'ymin': -TMath.Pi(), 'ymax': TMath.Pi()
80  }
81 
82  n_bins_total = (len(eta_bins) - 1) * 64
83  n_bins_total_jets = (len(eta_bins_jets) - 1) * 64
84  n_bins_eta_2p5 = (len(eta_bins_central) - 1) * 64
85  n_bins_eta_2p3 = 46 * 64
86  # number of bins above |eta| = 3.2 that will never be filled with TOBs
87  # due to the low granularity and irregular structure of the FCAL
88  # (given by the length of the list of empty bin in JfexMapForwardEmptyBins.h)
89  n_empty_bins_fcal = 2036
90  # number of bins in 3.15 < |eta| < 3.2 where no jets are produced
91  n_empty_bins_fcal_overlap = 96
92 
93  # all bins should be filled with jets, except the always empty ones in FCAL
94  n_expected_filled_bins_jJ = n_bins_total_jets - n_empty_bins_fcal - n_empty_bins_fcal_overlap
95  # taus are only produced for |eta| < 2.5
96  n_expected_filled_bins_jTAU = n_bins_eta_2p5
97  # forward electrons are produced for |eta| > 2.3
98  n_expected_filled_bins_jEM = n_bins_total - n_empty_bins_fcal - n_bins_eta_2p3
99 
100  helper.defineDQAlgorithm("Jfex_etaPhiMapFilled",
101  hanConfig={"libname":"libdqm_summaries.so","name":"Bins_LessThanAbs_Threshold","BinThreshold":"1"}, # counts bins with |value|<1
102  thresholdConfig={"NBins":[0,n_expected_filled_bins_jJ]}, # 0 bins expected empty, warning above that, error if entirely empty (save for known empties)
103  )
104  helper.defineDQAlgorithm("Jfex_etaPhiMapFilled_EM",
105  hanConfig={"libname":"libdqm_summaries.so","name":"Bins_LessThanAbs_Threshold","BinThreshold":"1"}, # counts bins with |value|<1
106  thresholdConfig={"NBins":[0,n_expected_filled_bins_jEM]}, # 0 bins expected empty, warning above that, error if entirely empty (save for known empties)
107  )
108  helper.defineDQAlgorithm("Jfex_etaPhiMapFilled_TAU",
109  hanConfig={"libname":"libdqm_summaries.so","name":"Bins_LessThanAbs_Threshold","BinThreshold":"1"}, # counts bins with |value|<1
110  thresholdConfig={"NBins":[0,n_expected_filled_bins_jTAU]}, # 0 bins expected empty, warning above that, error if entirely empty (save for known empties)
111  )
112 
113 
114 
115 
116 
117  helper.defineHistogram('jJ_Eta,jJ_Phi;h_jJ_EtaPhiMap', title="jFex SRJet #eta vs #phi;#eta;#phi",
118  fillGroup=mapGroupName,
119  type='TH2I',path=expertPath+'jJ/',
120  hanConfig={
121  "algorithm": "Jfex_etaPhiMapFilled",
122  "description": "Bins with negative number of entries (in the FCAL) signify that no TOBs can be produced at that position. In the region 3.1 < |eta| < 3.2 seeded in EMEC and FCAL1 are displayed next to each other, though in reality have similar eta coordinates. Inspect for hot/cold spots - check help for list of known hot/coldspots",
123  "display":"SetPalette(55),Draw=COL1Z"
124  },
125  weight="weight",opt=['kAlwaysCreate'],
126  **eta_phi_bins_jets)
127 
128  helper.defineHistogram('jJ_Eta,jJ_Phi;h_jJ_EtaPhiMap_Pt20', title="jFex SRJet #geq 20 GeV #eta vs #phi;#eta;#phi",
129  fillGroup=mapHighPtGroupName,
130  type='TH2I',path=expertPath+'jJ/',
131  hanConfig={
132  "algorithm": "Jfex_etaPhiMapFilled",
133  "description": "Bins with negative number of entries (in the FCAL) signify that no TOBs can be produced at that position. In the region 3.1 < |eta| < 3.2 seeded in EMEC and FCAL1 are displayed next to each other, though in reality have similar eta coordinates. Inspect for hot/cold spots - check help for list of known hot/coldspots",
134  "display":"SetPalette(55),Draw=COL1Z"
135  },
136  weight="weight",opt=['kAlwaysCreate'],
137  **eta_phi_bins_jets)
138 
139  helper.defineHistogram('LBN,jJ_binNumber;h_jJ_posVsLBN', title=f"jFex SRJet count vs LB;LB;{len(eta_bins_jets)-1}(x-1)+y",
140  fillGroup=mapGroupName,
141  type="TH2I", path=expertPath+'jJ/detail/',
142  hanConfig={
143  "description": "Timeseries of TOB counts at each location, y-axis relates to x and y bin numbers from <a href='../h_jJ_EtaPhiMap'>eta-phi map</a>. Use projection X1 for 1D plot."
144  },
145  xbins=1, xmin=0, xmax=10,
146  ybins=(len(eta_bins_jets)-1)*64,ymin=0.5,ymax=(len(eta_bins_jets)-1)*64+0.5,
147  opt=['kAddBinsDynamically'])
148 
149  helper.defineHistogram('LBN,jJ_binNumber;h_jJ_posVsLBN_Pt20', title=f"jFex SRJet #geq 20 GeV count vs LB;LB;{len(eta_bins_jets)-1}(x-1)+y",
150  fillGroup=mapHighPtGroupName,
151  type="TH2I", path=expertPath+'jJ/detail/',
152  hanConfig={
153  "description": "Timeseries of TOB counts at each location, y-axis relates to x and y bin numbers from <a href='../h_jJ_EtaPhiMap_Pt20'>eta-phi map</a>. Use projection X1 for 1D plot."
154  },
155  xbins=1, xmin=0, xmax=10,
156  ybins=(len(eta_bins_jets)-1)*64,ymin=0.5,ymax=(len(eta_bins_jets)-1)*64+0.5,
157  opt=['kAddBinsDynamically'])
158 
159 
160 
161  helper.defineHistogram('jTau_Eta,jTau_Phi;h_jTau_EtaPhiMap', title="jFex Tau #eta vs #phi;#eta;#phi",
162  fillGroup=mapGroupName,
163  hanConfig={
164  "algorithm": "Jfex_etaPhiMapFilled_TAU",
165  "description": "Inspect for hot/cold spots - check help for list of known hot/coldspots",
166  "display": "SetPalette(87)"
167  },
168  type='TH2I',path=expertPath+'jTau/',opt=['kAlwaysCreate'], **eta_phi_bins_central)
169 
170  helper.defineHistogram('jTau_Eta,jTau_Phi;h_jTau_EtaPhiMap_Pt10', title="jFex Tau #geq 10 GeV #eta vs #phi;#eta;#phi",
171  fillGroup=mapHighPtGroupName,
172  hanConfig={
173  "algorithm": "Jfex_etaPhiMapFilled_TAU",
174  "description": "Inspect for hot/cold spots - check help for list of known hot/coldspots",
175  "display": "SetPalette(87)"
176  },
177  type='TH2I',path=expertPath+'jTau/',opt=['kAlwaysCreate'], **eta_phi_bins_central)
178 
179  helper.defineHistogram('LBN,jTau_binNumber;h_jTau_posVsLBN', title="jFex Tau count vs LB;LB;50(y-1)+x",
180  fillGroup=mapGroupName,
181  type="TH2I", path=expertPath+'jTau/detail/',
182  hanConfig={
183  "description": "Timeseries of TOB counts at each location, y-axis relates to x and y bin numbers from <a href='../h_jTau_EtaPhiMap'>eta-phi map</a>. Use projection X1 for 1D plot."
184  },
185  xbins=1, xmin=0, xmax=10,
186  ybins=50*64,ymin=0.5,ymax=50*64+0.5,
187  opt=['kAddBinsDynamically'])
188 
189  helper.defineHistogram('LBN,jTau_binNumber;h_jTau_posVsLBN_Pt10', title="jFex Tau #geq 10 GeV count vs LB;LB;50(y-1)+x",
190  fillGroup=mapHighPtGroupName,
191  type="TH2I", path=expertPath+'jTau/detail/',
192  hanConfig={
193  "description": "Timeseries of TOB counts at each location, y-axis relates to x and y bin numbers from <a href='../h_jTau_EtaPhiMap_Pt10'>eta-phi map</a>. Use projection X1 for 1D plot."
194  },
195  xbins=1, xmin=0, xmax=10,
196  ybins=50*64,ymin=0.5,ymax=50*64+0.5,
197  opt=['kAddBinsDynamically'])
198 
199 
200 
201  helper.defineHistogram('jEM_Eta,jEM_Phi;h_jEM_EtaPhiMap', title="jFex EM #eta vs #phi;#eta;#phi",
202  fillGroup=mapGroupName,
203  hanConfig={
204  "algorithm":"Jfex_etaPhiMapFilled_EM",
205  "description": "Bins with negative number of entries (in the FCAL and central region) signify that no TOBs can be produced at that position. Inspect for hot/cold spots, note that there are no jEM TOBs for |eta| < 2.3 - check help for list of known hot/coldspots",
206  "display":"SetPalette(87),Draw=COL1Z"
207  },
208  weight="weight",
209  type='TH2I',path=expertPath+'jEM/',opt=['kAlwaysCreate'], **eta_phi_bins)
210 
211  helper.defineHistogram('jEM_Eta,jEM_Phi;h_jEM_EtaPhiMap_Pt10', title="jFex EM #geq 10 GeV #eta vs #phi;#eta;#phi",
212  fillGroup=mapHighPtGroupName,
213  hanConfig={
214  "algorithm":"Jfex_etaPhiMapFilled_EM",
215  "description": "Bins with negative number of entries (in the FCAL and central region) signify that no TOBs can be produced at that position. Inspect for hot/cold spots, note that there are no jEM TOBs for |eta| < 2.3 - check help for list of known hot/coldspots",
216  "display":"SetPalette(87),Draw=COL1Z"
217  },
218  weight="weight",
219  type='TH2I',path=expertPath+'jEM/',opt=['kAlwaysCreate'], **eta_phi_bins)
220 
221  helper.defineHistogram('LBN,jEM_binNumber;h_jEM_posVsLBN', title=f"jFex EM count vs LB;LB;{len(eta_bins)-1}(y-1)+x",
222  fillGroup=mapGroupName,
223  type="TH2I", path=expertPath+'jEM/detail/',
224  hanConfig={
225  "description": "Timeseries of TOB counts at each location, y-axis relates to x and y bin numbers from <a href='../h_jEM_EtaPhiMap'>eta-phi map</a>. Use projection X1 for 1D plot."
226  },
227  xbins=1, xmin=0, xmax=10,
228  ybins=(len(eta_bins)-1)*64,ymin=0.5,ymax=(len(eta_bins)-1)*64+0.5,
229  opt=['kAddBinsDynamically'])
230 
231  helper.defineHistogram('LBN,jEM_binNumber;h_jEM_posVsLBN_Pt10', title=f"jFex EM #geq 10 GeV count vs LB;LB;{len(eta_bins)-1}(y-1)+x",
232  fillGroup=mapHighPtGroupName,
233  type="TH2I", path=expertPath+'jEM/detail/',
234  hanConfig={
235  "description": "Timeseries of TOB counts at each location, y-axis relates to x and y bin numbers from <a href='../h_jEM_EtaPhiMap_Pt10'>eta-phi map</a>. Use projection X1 for 1D plot."
236  },
237  xbins=1, xmin=0, xmax=10,
238  ybins=(len(eta_bins)-1)*64,ymin=0.5,ymax=(len(eta_bins)-1)*64+0.5,
239  opt=['kAddBinsDynamically'])
240 
241 
242 
243 
244 
245  helper.defineHistogram('jJ_jFexNumber;h_jJ_jFexNumber', title='jFex SRJet Module;Module number;Counts',
246  fillGroup=groupName,
247  type='TH1I', path=developerPath+'jJ/', xbins=6,xmin=0,xmax=6)
248 
249  helper.defineHistogram('jJ_fpgaNumber;h_jJ_fpgaNumber', title='jFex SRJet FPGA;FPGA number;Counts',
250  fillGroup=groupName,
251  type='TH1F', path=developerPath+'jJ/',xbins=4,xmin=0,xmax=4)
252 
253  helper.defineHistogram('jJ_jFexNumber,jJ_fpgaNumber;h_jJ_DetectorMap', title="jFex SRJet module vs FPGA; jFEX module; FPGA",
254  fillGroup=groupName,
255  type='TH2I',path=developerPath+'jJ/', xbins=6,xmin=0,xmax=6,ybins=4,ymin=0,ymax=4,xlabels=Modules_names,ylabels=FPGA_names)
256 
257  helper.defineHistogram('jJ_Et;h_jJ_Et', title='jFex SRJet Transverse Energy;tobEt [200 MeV Scale];Counts',
258  fillGroup=groupName,
259  type='TH1I', path=developerPath+'jJ/', xbins=512,xmin=0,xmax=2048)
260 
261  helper.defineHistogram('jJ_Eta;h_jJ_Eta', title='jFex SRJet #eta;#eta;Counts',
262  fillGroup=groupName,
263  type='TH1F', path=developerPath+'jJ/',xbins=100,xmin=-5.0,xmax=5.0)
264 
265  helper.defineHistogram('jJ_Phi;h_jJ_Phi', title='jFex SRJet #phi;#phi;Counts',
266  fillGroup=groupName,
267  type='TH1F', path=developerPath+'jJ/',**phi_bins)
268 
269  helper.defineHistogram('jJ_GlobalEta;h_jJ_GlobalEta', title='jFex SRJet Global #eta;#eta;Counts',
270  fillGroup=groupName,
271  type='TH1F', path=developerPath+'jJ/',xbins=100,xmin=-50,xmax=50)
272 
273  helper.defineHistogram('jJ_GlobalPhi;h_jJ_GlobalPhi', title='jFex SRJet Global #phi;#phi;Counts',
274  fillGroup=groupName,
275  type='TH1F', path=developerPath+'jJ/',xbins=67,xmin=-1,xmax=65)
276 
277  helper.defineHistogram('jJ_GlobalEta,jJ_GlobalPhi;h_jJ_GlobalEtaPhiMap', title="jFex SRJet Global #eta vs #phi;(int) #eta;(int) #phi",
278  fillGroup=groupName,
279  type='TH2F',path=developerPath+'jJ/', xbins=100,xmin=-50,xmax=50,ybins=67,ymin=-1,ymax=65)
280 
281 
282  helper.defineHistogram('jLJ_jFexNumber;h_jLJ_jFexNumber', title='jFex LRJet Module;Module number;Counts',
283  fillGroup=groupName,
284  type='TH1I', path=developerPath+'jLJ/', xbins=6,xmin=0,xmax=6)
285 
286  helper.defineHistogram('jLJ_fpgaNumber;h_jLJ_fpgaNumber', title='jFex LRJet FPGA;FPGA number;Counts',
287  fillGroup=groupName,
288  type='TH1F', path=developerPath+'jLJ/',xbins=4,xmin=0,xmax=4)
289 
290  helper.defineHistogram('jLJ_jFexNumber,jLJ_fpgaNumber;h_jLJ_DetectorMap', title="jFex LRJet module vs FPGA; jFEX module; FPGA",
291  fillGroup=groupName,
292  type='TH2I',path=developerPath+'jLJ/', xbins=6,xmin=0,xmax=6,ybins=4,ymin=0,ymax=4,xlabels=Modules_names,ylabels=FPGA_names)
293 
294  helper.defineHistogram('jLJ_Et;h_jLJ_Et', title='jFex LRJet Transverse Energy;tobEt [200 MeV Scale];Counts',
295  fillGroup=groupName,
296  type='TH1I', path=developerPath+'jLJ/',xbins=512,xmin=0,xmax=2048)
297 
298  helper.defineHistogram('jLJ_Eta;h_jLJ_Eta', title='jFex LRJet #eta;#eta;Counts',
299  fillGroup=groupName,
300  type='TH1F', path=developerPath+'jLJ/',xbins=100,xmin=-5.0,xmax=5.0)
301 
302  helper.defineHistogram('jLJ_Phi;h_jLJ_Phi', title='jFex LRJet #phi;#phi;Counts',
303  fillGroup=groupName,
304  type='TH1F', path=developerPath+'jLJ/',**phi_bins)
305 
306  helper.defineHistogram('jLJ_Eta,jLJ_Phi;h_jLJ_EtaPhiMap', title="jFEX LRJet #eta vs #phi;#eta;#phi",
307  fillGroup=groupName,
308  type='TH2F',path=developerPath+'jLJ/', **eta_phi_bins)
309 
310  helper.defineHistogram('jLJ_GlobalEta;h_jLJ_GlobalEta', title='jFex LRJet Global #eta;#eta;Counts',
311  fillGroup=groupName,
312  type='TH1F', path=developerPath+'jLJ/',xbins=100,xmin=-50,xmax=50)
313 
314  helper.defineHistogram('jLJ_GlobalPhi;h_jLJ_GlobalPhi', title='jFex LRJet Global #phi;#phi;Counts',
315  fillGroup=groupName,
316  type='TH1F', path=developerPath+'jLJ/',xbins=67,xmin=-1,xmax=65)
317 
318  helper.defineHistogram('jLJ_GlobalEta,jLJ_GlobalPhi;h_jLJ_GlobalEtaPhiMap', title="jFex LRJet #eta vs #phi;(int) #eta; (int) #phi",
319  fillGroup=groupName,
320  type='TH2F',path=developerPath+'jLJ/', xbins=100,xmin=-50,xmax=50,ybins=67,ymin=-1,ymax=65)
321 
322  helper.defineHistogram('jTau_jFexNumber;h_jTau_jFexNumber', title='jFex Tau Module;Module number;Counts',
323  fillGroup=groupName,
324  type='TH1I', path=developerPath+'jTau/', xbins=6,xmin=0,xmax=6)
325 
326  helper.defineHistogram('jTau_fpgaNumber;h_jTau_fpgaNumber', title='jFex Tau FPGA;FPGA number;Counts',
327  fillGroup=groupName,
328  type='TH1F', path=developerPath+'jTau/',xbins=4,xmin=0,xmax=4)
329 
330  helper.defineHistogram('jTau_jFexNumber,jTau_fpgaNumber;h_jTau_DetectorMap', title="jFex Tau module vs FPGA; jFEX module; FPGA",
331  fillGroup=groupName,
332  type='TH2I',path=developerPath+'jTau/', xbins=6,xmin=0,xmax=6,ybins=4,ymin=0,ymax=4,xlabels=Modules_names,ylabels=FPGA_names)
333 
334  helper.defineHistogram('jTau_Et;h_jTau_Et', title='jFex Tau Transverse Energy;tobEt [200 MeV Scale];Counts',
335  fillGroup=groupName,
336  type='TH1I', path=developerPath+'jTau/',xbins=512,xmin=0,xmax=2048)
337 
338  helper.defineHistogram('jTau_Iso;h_jTau_Iso', title='jFex Tau Isolation;tobIso [200 MeV Scale];Counts',
339  fillGroup=groupName,
340  type='TH1I', path=developerPath+'jTau/',xbins=512,xmin=0,xmax=2048)
341 
342  helper.defineHistogram('jTau_Eta;h_jTau_Eta', title='jFex Tau #eta;#eta;Counts',
343  fillGroup=groupName,
344  type='TH1F', path=developerPath+'jTau/',xbins=100,xmin=-5.0,xmax=5.0)
345 
346  helper.defineHistogram('jTau_Phi;h_jTau_Phi', title='jFex Tau #phi;#phi;Counts',
347  fillGroup=groupName,
348  type='TH1F', path=developerPath+'jTau/',**phi_bins)
349 
350  helper.defineHistogram('jTau_GlobalEta;h_jTau_GlobalEta', title='jFex Tau Global #eta;#eta;Counts',
351  fillGroup=groupName,
352  type='TH1F', path=developerPath+'jTau/',xbins=100,xmin=-50,xmax=50)
353 
354  helper.defineHistogram('jTau_GlobalPhi;h_jTau_GlobalPhi', title='jFex Tau Global #phi;#phi;Counts',
355  fillGroup=groupName,
356  type='TH1F', path=developerPath+'jTau/',xbins=67,xmin=-1,xmax=65)
357 
358  helper.defineHistogram('jTau_GlobalEta,jTau_GlobalPhi;h_jTau_GlobalEtaPhiMap', title="jFex Tau Global #eta vs #phi;(int) #eta; (int) #phi",
359  fillGroup=groupName,
360  type='TH2F',path=developerPath+'jTau/', xbins=100,xmin=-50,xmax=50,ybins=67,ymin=-1,ymax=65)
361 
362  helper.defineHistogram('jEM_jFexNumber;h_jEM_jFexNumber', title='jFex EM Module;Module number;Counts',
363  fillGroup=groupName,
364  type='TH1I', path=developerPath+'jEM/', xbins=6,xmin=0,xmax=6)
365 
366  helper.defineHistogram('jEM_fpgaNumber;h_jEM_fpgaNumber', title='jFex EM FPGA;FPGA number;Counts',
367  fillGroup=groupName,
368  type='TH1F', path=developerPath+'jEM/',xbins=4,xmin=0,xmax=4)
369 
370  helper.defineHistogram('jEM_jFexNumber,jEM_fpgaNumber;h_jTau_DetectorMap', title="jFex EM module vs FPGA; jFEX module; FPGA",
371  fillGroup=groupName,
372  type='TH2I',path=developerPath+'jEM/', xbins=6,xmin=0,xmax=6,ybins=4,ymin=0,ymax=4,xlabels=Modules_names,ylabels=FPGA_names)
373 
374  helper.defineHistogram('jEM_Et;h_jEM_Et', title='jFex EM Transverse Energy;tobEt [200 MeV Scale];Counts',
375  fillGroup=groupName,
376  type='TH1I', path=developerPath+'jEM/',xbins=512,xmin=0,xmax=2048)
377 
378  helper.defineHistogram('jEM_Eta;h_jEM_Eta', title='jFex EM #eta;#eta;Counts',
379  fillGroup=groupName,
380  type='TH1F', path=developerPath+'jEM/',xbins=100,xmin=-5.0,xmax=5.0)
381 
382  helper.defineHistogram('jEM_Phi;h_jEM_Phi', title='jFex EM #phi;#phi;Counts',
383  fillGroup=groupName,
384  type='TH1F', path=developerPath+'jEM/',**phi_bins)
385 
386  em_labels = ['None','loose','medium','tight']
387  helper.defineHistogram('jEM_Iso;h_jEM_Iso', title='jFex EM Isolation;tobIso;Counts',
388  fillGroup=groupName,
389  type='TH1I', path=developerPath+'jEM/',xbins=4,xmin=0,xmax=4,xlabels=em_labels)
390 
391  helper.defineHistogram('jEM_f1;h_jEM_f1', title='jFex EM Frac1;EM Frac1;Counts',
392  fillGroup=groupName,
393  type='TH1I', path=developerPath+'jEM/',xbins=4,xmin=0,xmax=4,xlabels=em_labels)
394 
395  helper.defineHistogram('jEM_f2;h_jEM_f2', title='jFex EM Frac2;EM Frac2;Counts',
396  fillGroup=groupName,
397  type='TH1I', path=developerPath+'jEM/',xbins=4,xmin=0,xmax=4,xlabels=em_labels)
398 
399  helper.defineHistogram('jEM_GlobalEta;h_jEM_GlobalEta', title='jFex EM Global #eta;#eta;Counts',
400  fillGroup=groupName,
401  type='TH1F', path=developerPath+'jEM/',xbins=100,xmin=-50,xmax=50)
402 
403  helper.defineHistogram('jEM_GlobalPhi;h_jEM_GlobalPhi', title='jFex EM Global #phi;#phi;Counts',
404  fillGroup=groupName,
405  type='TH1F', path=developerPath+'jEM/',xbins=67,xmin=-1,xmax=65)
406 
407  helper.defineHistogram('jEM_GlobalEta,jEM_GlobalPhi;h_jEM_GlobalEtaPhiMap', title="jFex EM Global #eta vs #phi;(int) #eta; (int) #phi",
408  fillGroup=groupName,
409  type='TH2F',path=developerPath+'jEM/', xbins=100,xmin=-50,xmax=50,ybins=67,ymin=-1,ymax=65)
410 
411  helper.defineHistogram('jXE_X;h_jXE_X', title='jFex MET X component (tobEx);tobEx [200 MeV Scale];Counts',
412  fillGroup=groupName,
413  type='TH1I', path=developerPath+'jXE/',xbins=1000,xmin=-500,xmax=500)
414 
415  helper.defineHistogram('jXE_Y;h_jXE_Y', title='jFex MET Y component (tobEy);tobEy [200 MeV Scale];Counts',
416  fillGroup=groupName,
417  type='TH1I', path=developerPath+'jXE/',xbins=1000,xmin=-500,xmax=500)
418 
419  helper.defineHistogram('jXE_MET;h_jXE_MET', title='jFex MET ;Total jXE [200 MeV Scale];Counts',
420  fillGroup=groupName,
421  type='TH1F', path=developerPath+'jXE/',xbins=500,xmin=0,xmax=1000)
422 
423  helper.defineHistogram('jXE_phi;h_jXE_phi', title='jFex MET phi ;#phi=atan(Ey/Ex) values;Counts',
424  fillGroup=groupName,
425  type='TH1F', path=developerPath+'jXE/',xbins=66,xmin=-math.pi,xmax=math.pi)
426 
427 
428 
429  helper.defineHistogram('jTE_low;h_jTE_low', title='jFex SumEt low #eta;tob Et_lower [200 MeV Scale];Counts',
430  fillGroup=groupName,
431  type='TH1I', path=developerPath+'jTE/',xbins=700,xmin=0,xmax=700)
432 
433  helper.defineHistogram('jTE_high;h_jTE_high', title='jFex SumEt high #eta;tob Et_upper [200 MeV Scale];Counts',
434  fillGroup=groupName,
435  type='TH1I', path=developerPath+'jTE/',xbins=700,xmin=0,xmax=700)
436 
437  helper.defineHistogram('jTE_SumEt;h_jTE_SumEt', title='jFex SumEt total ;Total jTE [200 MeV Scale];Counts',
438  fillGroup=groupName,
439  type='TH1F', path=developerPath+'jTE/',xbins=1000,xmin=0,xmax=4000)
440 
441 
442  acc = helper.result()
443  result.merge(acc)
444  return result
445 
446 
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
plotBeamSpotVxVal.range
range
Definition: plotBeamSpotVxVal.py:195
DerivationFramework::TriggerMatchingUtils::sorted
std::vector< typename T::value_type > sorted(T begin, T end)
Helper function to create a sorted vector from an unsorted one.
JfexMonitorAlgorithm.JfexMonitoringConfig
def JfexMonitoringConfig(flags)
Definition: JfexMonitorAlgorithm.py:4