5 '''Function to configure LVL1 Jfex algorithm in the monitoring system.'''
9 from AthenaConfiguration.ComponentFactory
import CompFactory
10 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
13 from TrigT1CaloMonitoring.LVL1CaloMonitoringConfig
import L1CaloMonitorCfgHelper
14 helper = L1CaloMonitorCfgHelper(flags,CompFactory.JfexMonitorAlgorithm,
'JfexMonAlg')
15 JfexMonAlg = helper.alg
18 groupName =
'JfexMonitor'
19 JfexMonAlg.Grouphist = groupName
22 trigPath =
'Developer/Jfex/'
27 FPGA_names = [
"U1",
"U2",
"U4",
"U3"]
28 Modules_names = [
"jFEX 0",
"jFEX 1",
"jFEX 2",
"jFEX 3",
"jFEX 4",
"jFEX 5"]
30 from ROOT
import TMath
34 phi = (-TMath.Pi()- TMath.Pi()/32) + TMath.Pi()/32*i
43 'xbins': 100,
'xmin': -5,
'xmax': 5,
49 helper.defineHistogram(
'jJ_jFexNumber;h_jJ_jFexNumber', title=
'jFex SRJet Module;Module number;Counts',
51 type=
'TH1I', path=trigPath+
'jJ/', xbins=6,xmin=0,xmax=6)
53 helper.defineHistogram(
'jJ_fpgaNumber;h_jJ_fpgaNumber', title=
'jFex SRJet FPGA;FPGA number;Counts',
55 type=
'TH1F', path=trigPath+
'jJ/',xbins=4,xmin=0,xmax=4)
57 helper.defineHistogram(
'jJ_jFexNumber,jJ_fpgaNumber;h_jJ_DetectorMap', title=
"jFex SRJet module vs FPGA; jFEX module; FPGA",
59 type=
'TH2I',path=trigPath+
'jJ/', xbins=6,xmin=0,xmax=6,ybins=4,ymin=0,ymax=4,xlabels=Modules_names,ylabels=FPGA_names)
61 helper.defineHistogram(
'jJ_Et;h_jJ_Et', title=
'jFex SRJet Transverse Energy;tobEt [200 MeV Scale];Counts',
63 type=
'TH1I', path=trigPath+
'jJ/', xbins=512,xmin=0,xmax=2048)
65 helper.defineHistogram(
'jJ_Eta;h_jJ_Eta', title=
'jFex SRJet #eta;#eta;Counts',
67 type=
'TH1F', path=trigPath+
'jJ/',xbins=100,xmin=-5.0,xmax=5.0)
69 helper.defineHistogram(
'jJ_Phi;h_jJ_Phi', title=
'jFex SRJet #phi;#phi;Counts',
71 type=
'TH1F', path=trigPath+
'jJ/',**phi_bins)
73 helper.defineHistogram(
'jJ_Eta,jJ_Phi;h_jJ_EtaPhiMap', title=
"jFex SRJet #eta vs #phi;#eta;#phi",
75 type=
'TH2F',path=trigPath+
'jJ/', **eta_phi_bins)
77 helper.defineHistogram(
'jJ_GlobalEta;h_jJ_GlobalEta', title=
'jFex SRJet Global #eta;#eta;Counts',
79 type=
'TH1F', path=trigPath+
'jJ/',xbins=100,xmin=-50,xmax=50)
81 helper.defineHistogram(
'jJ_GlobalPhi;h_jJ_GlobalPhi', title=
'jFex SRJet Global #phi;#phi;Counts',
83 type=
'TH1F', path=trigPath+
'jJ/',xbins=67,xmin=-1,xmax=65)
85 helper.defineHistogram(
'jJ_GlobalEta,jJ_GlobalPhi;h_jJ_GlobalEtaPhiMap', title=
"jFex SRJet Global #eta vs #phi;(int) #eta;(int) #phi",
87 type=
'TH2F',path=trigPath+
'jJ/', xbins=100,xmin=-50,xmax=50,ybins=67,ymin=-1,ymax=65)
90 helper.defineHistogram(
'jLJ_jFexNumber;h_jLJ_jFexNumber', title=
'jFex LRJet Module;Module number;Counts',
92 type=
'TH1I', path=trigPath+
'jLJ/', xbins=6,xmin=0,xmax=6)
94 helper.defineHistogram(
'jLJ_fpgaNumber;h_jLJ_fpgaNumber', title=
'jFex LRJet FPGA;FPGA number;Counts',
96 type=
'TH1F', path=trigPath+
'jLJ/',xbins=4,xmin=0,xmax=4)
98 helper.defineHistogram(
'jLJ_jFexNumber,jLJ_fpgaNumber;h_jLJ_DetectorMap', title=
"jFex LRJet module vs FPGA; jFEX module; FPGA",
100 type=
'TH2I',path=trigPath+
'jLJ/', xbins=6,xmin=0,xmax=6,ybins=4,ymin=0,ymax=4,xlabels=Modules_names,ylabels=FPGA_names)
102 helper.defineHistogram(
'jLJ_Et;h_jLJ_Et', title=
'jFex LRJet Transverse Energy;tobEt [200 MeV Scale];Counts',
104 type=
'TH1I', path=trigPath+
'jLJ/',xbins=512,xmin=0,xmax=2048)
106 helper.defineHistogram(
'jLJ_Eta;h_jLJ_Eta', title=
'jFex LRJet #eta;#eta;Counts',
108 type=
'TH1F', path=trigPath+
'jLJ/',xbins=100,xmin=-5.0,xmax=5.0)
110 helper.defineHistogram(
'jLJ_Phi;h_jLJ_Phi', title=
'jFex LRJet #phi;#phi;Counts',
112 type=
'TH1F', path=trigPath+
'jLJ/',**phi_bins)
114 helper.defineHistogram(
'jLJ_Eta,jLJ_Phi;h_jLJ_EtaPhiMap', title=
"jFEX LRJet #eta vs #phi;#eta;#phi",
116 type=
'TH2F',path=trigPath+
'jLJ/', **eta_phi_bins)
118 helper.defineHistogram(
'jLJ_GlobalEta;h_jLJ_GlobalEta', title=
'jFex LRJet Global #eta;#eta;Counts',
120 type=
'TH1F', path=trigPath+
'jLJ/',xbins=100,xmin=-50,xmax=50)
122 helper.defineHistogram(
'jLJ_GlobalPhi;h_jLJ_GlobalPhi', title=
'jFex LRJet Global #phi;#phi;Counts',
124 type=
'TH1F', path=trigPath+
'jLJ/',xbins=67,xmin=-1,xmax=65)
126 helper.defineHistogram(
'jLJ_GlobalEta,jLJ_GlobalPhi;h_jLJ_GlobalEtaPhiMap', title=
"jFex LRJet #eta vs #phi;(int) #eta; (int) #phi",
128 type=
'TH2F',path=trigPath+
'jLJ/', xbins=100,xmin=-50,xmax=50,ybins=67,ymin=-1,ymax=65)
130 helper.defineHistogram(
'jTau_jFexNumber;h_jTau_jFexNumber', title=
'jFex Tau Module;Module number;Counts',
132 type=
'TH1I', path=trigPath+
'jTau/', xbins=6,xmin=0,xmax=6)
134 helper.defineHistogram(
'jTau_fpgaNumber;h_jTau_fpgaNumber', title=
'jFex Tau FPGA;FPGA number;Counts',
136 type=
'TH1F', path=trigPath+
'jTau/',xbins=4,xmin=0,xmax=4)
138 helper.defineHistogram(
'jTau_jFexNumber,jTau_fpgaNumber;h_jTau_DetectorMap', title=
"jFex Tau module vs FPGA; jFEX module; FPGA",
140 type=
'TH2I',path=trigPath+
'jTau/', xbins=6,xmin=0,xmax=6,ybins=4,ymin=0,ymax=4,xlabels=Modules_names,ylabels=FPGA_names)
142 helper.defineHistogram(
'jTau_Et;h_jTau_Et', title=
'jFex Tau Transverse Energy;tobEt [200 MeV Scale];Counts',
144 type=
'TH1I', path=trigPath+
'jTau/',xbins=512,xmin=0,xmax=2048)
146 helper.defineHistogram(
'jTau_Iso;h_jTau_Iso', title=
'jFex Tau Isolation;tobIso [200 MeV Scale];Counts',
148 type=
'TH1I', path=trigPath+
'jTau/',xbins=512,xmin=0,xmax=2048)
150 helper.defineHistogram(
'jTau_Eta;h_jTau_Eta', title=
'jFex Tau #eta;#eta;Counts',
152 type=
'TH1F', path=trigPath+
'jTau/',xbins=100,xmin=-5.0,xmax=5.0)
154 helper.defineHistogram(
'jTau_Phi;h_jTau_Phi', title=
'jFex Tau #phi;#phi;Counts',
156 type=
'TH1F', path=trigPath+
'jTau/',**phi_bins)
158 helper.defineHistogram(
'jTau_Eta,jTau_Phi;h_jTau_EtaPhiMap', title=
"jFex Tau #eta vs #phi;#eta;#phi",
160 type=
'TH2F',path=trigPath+
'jTau/', **eta_phi_bins)
162 helper.defineHistogram(
'jTau_GlobalEta;h_jTau_GlobalEta', title=
'jFex Tau Global #eta;#eta;Counts',
164 type=
'TH1F', path=trigPath+
'jTau/',xbins=100,xmin=-50,xmax=50)
166 helper.defineHistogram(
'jTau_GlobalPhi;h_jTau_GlobalPhi', title=
'jFex Tau Global #phi;#phi;Counts',
168 type=
'TH1F', path=trigPath+
'jTau/',xbins=67,xmin=-1,xmax=65)
170 helper.defineHistogram(
'jTau_GlobalEta,jTau_GlobalPhi;h_jTau_GlobalEtaPhiMap', title=
"jFex Tau Global #eta vs #phi;(int) #eta; (int) #phi",
172 type=
'TH2F',path=trigPath+
'jTau/', xbins=100,xmin=-50,xmax=50,ybins=67,ymin=-1,ymax=65)
174 helper.defineHistogram(
'jEM_jFexNumber;h_jEM_jFexNumber', title=
'jFex EM Module;Module number;Counts',
176 type=
'TH1I', path=trigPath+
'jEM/', xbins=6,xmin=0,xmax=6)
178 helper.defineHistogram(
'jEM_fpgaNumber;h_jEM_fpgaNumber', title=
'jFex EM FPGA;FPGA number;Counts',
180 type=
'TH1F', path=trigPath+
'jEM/',xbins=4,xmin=0,xmax=4)
182 helper.defineHistogram(
'jEM_jFexNumber,jEM_fpgaNumber;h_jTau_DetectorMap', title=
"jFex EM module vs FPGA; jFEX module; FPGA",
184 type=
'TH2I',path=trigPath+
'jEM/', xbins=6,xmin=0,xmax=6,ybins=4,ymin=0,ymax=4,xlabels=Modules_names,ylabels=FPGA_names)
186 helper.defineHistogram(
'jEM_Et;h_jEM_Et', title=
'jFex EM Transverse Energy;tobEt [200 MeV Scale];Counts',
188 type=
'TH1I', path=trigPath+
'jEM/',xbins=512,xmin=0,xmax=2048)
190 helper.defineHistogram(
'jEM_Eta;h_jEM_Eta', title=
'jFex EM #eta;#eta;Counts',
192 type=
'TH1F', path=trigPath+
'jEM/',xbins=100,xmin=-5.0,xmax=5.0)
194 helper.defineHistogram(
'jEM_Phi;h_jEM_Phi', title=
'jFex EM #phi;#phi;Counts',
196 type=
'TH1F', path=trigPath+
'jEM/',**phi_bins)
198 em_labels = [
'None',
'loose',
'medium',
'tight']
199 helper.defineHistogram(
'jEM_Iso;h_jEM_Iso', title=
'jFex EM Isolation;tobIso;Counts',
201 type=
'TH1I', path=trigPath+
'jEM/',xbins=4,xmin=0,xmax=4,xlabels=em_labels)
203 helper.defineHistogram(
'jEM_f1;h_jEM_f1', title=
'jFex EM Frac1;EM Frac1;Counts',
205 type=
'TH1I', path=trigPath+
'jEM/',xbins=4,xmin=0,xmax=4,xlabels=em_labels)
207 helper.defineHistogram(
'jEM_f2;h_jEM_f2', title=
'jFex EM Frac2;EM Frac2;Counts',
209 type=
'TH1I', path=trigPath+
'jEM/',xbins=4,xmin=0,xmax=4,xlabels=em_labels)
211 helper.defineHistogram(
'jEM_Eta,jEM_Phi;h_jEM_EtaPhiMap', title=
"jFex EM #eta vs #phi;#eta;#phi",
213 type=
'TH2F',path=trigPath+
'jEM/', **eta_phi_bins)
215 helper.defineHistogram(
'jEM_GlobalEta;h_jEM_GlobalEta', title=
'jFex EM Global #eta;#eta;Counts',
217 type=
'TH1F', path=trigPath+
'jEM/',xbins=100,xmin=-50,xmax=50)
219 helper.defineHistogram(
'jEM_GlobalPhi;h_jEM_GlobalPhi', title=
'jFex EM Global #phi;#phi;Counts',
221 type=
'TH1F', path=trigPath+
'jEM/',xbins=67,xmin=-1,xmax=65)
223 helper.defineHistogram(
'jEM_GlobalEta,jEM_GlobalPhi;h_jEM_GlobalEtaPhiMap', title=
"jFex EM Global #eta vs #phi;(int) #eta; (int) #phi",
225 type=
'TH2F',path=trigPath+
'jEM/', xbins=100,xmin=-50,xmax=50,ybins=67,ymin=-1,ymax=65)
227 helper.defineHistogram(
'jXE_X;h_jXE_X', title=
'jFex MET X component (tobEx);tobEx [200 MeV Scale];Counts',
229 type=
'TH1I', path=trigPath+
'jXE/',xbins=1000,xmin=-500,xmax=500)
231 helper.defineHistogram(
'jXE_Y;h_jXE_Y', title=
'jFex MET Y component (tobEy);tobEy [200 MeV Scale];Counts',
233 type=
'TH1I', path=trigPath+
'jXE/',xbins=1000,xmin=-500,xmax=500)
235 helper.defineHistogram(
'jXE_MET;h_jXE_MET', title=
'jFex MET ;Total jXE [200 MeV Scale];Counts',
237 type=
'TH1F', path=trigPath+
'jXE/',xbins=500,xmin=0,xmax=1000)
239 helper.defineHistogram(
'jXE_phi;h_jXE_phi', title=
'jFex MET phi ;#phi=atan(Ey/Ex) values;Counts',
241 type=
'TH1F', path=trigPath+
'jXE/',xbins=66,xmin=-math.pi,xmax=math.pi)
245 helper.defineHistogram(
'jTE_low;h_jTE_low', title=
'jFex SumEt low #eta;tob Et_lower [200 MeV Scale];Counts',
247 type=
'TH1I', path=trigPath+
'jTE/',xbins=700,xmin=0,xmax=700)
249 helper.defineHistogram(
'jTE_high;h_jTE_high', title=
'jFex SumEt high #eta;tob Et_upper [200 MeV Scale];Counts',
251 type=
'TH1I', path=trigPath+
'jTE/',xbins=700,xmin=0,xmax=700)
253 helper.defineHistogram(
'jTE_SumEt;h_jTE_SumEt', title=
'jFex SumEt total ;Total jTE [200 MeV Scale];Counts',
255 type=
'TH1F', path=trigPath+
'jTE/',xbins=1000,xmin=0,xmax=4000)
258 acc = helper.result()