11 matchedOfflineJets='',
16 self.
L1JetKey = jetColl
if jetCollKey ==
'' else jetCollKey
24 text =
' '.
join([
'%s: %s' % (
str(k),
str(v))
for k, v
in self.__dict__.
items()])
25 return self.__class__.__name__ +
':: ' + text
29 from AthenaConfiguration.ComponentFactory
import CompFactory
38 L1Fex = jFexSR
or jFexLR
or gFexSR
or gFexLR
40 assert L1Fex
or noFex,
'unsupported L1Container %s' % self.
L1JetContainer
42 def container2tool_class_name():
52 'L1_jFexSRJetRoI':
'TrigL1FexJetMonitorTool_JTM_jFexSRJetRoIContainer_',
53 'L1_jFexLRJetRoI':
'TrigL1FexJetMonitorTool_JTM_jFexLRJetRoIContainer_',
54 'L1_gFexSRJetRoI':
'TrigL1FexJetMonitorTool_JTM_gFexJetRoIContainer_',
55 'L1_gFexLRJetRoI':
'TrigL1FexJetMonitorTool_JTM_gFexJetRoIContainer_',
56 'LVL1JetRoIs':
'TrigL1FexJetMonitorTool_JTM_JetRoIContainer_',
59 def container2tool_inst_name():
61 return {
'L1_jFexSRJetRoI':
'jFexSRDataRetriever',
62 'L1_jFexLRJetRoI':
'jFexLRDataRetriever',
63 'L1_gFexSRJetRoI':
'gFexSRDataRetriever',
64 'L1_gFexLRJetRoI':
'gFexLRDataRetriever',
65 'LVL1JetRoIs':
'JetRoIDataRetriever',
69 def container2_monitorgroup():
71 return {
'L1_jFexSRJetRoI':
'TrigL1JFexSRJetMonitor',
72 'L1_jFexLRJetRoI':
'TrigL1JFexLRJetMonitor',
73 'L1_gFexSRJetRoI':
'TrigL1GFexSRJetMonitor',
74 'L1_gFexLRJetRoI':
'TrigL1GFexLRJetMonitor',
78 alg = monhelper.addAlgorithm(CompFactory.TrigL1FexJetMonitorAlgorithm,
80 toolClass = getattr(CompFactory, container2tool_class_name())
82 tool = toolClass(container2tool_inst_name())
87 alg.group_name = container2_monitorgroup()
96 myGroup = monhelper.addGroup(alg, container2_monitorgroup(),
'HLT/JetMon/L1/')
99 myGroup.defineHistogram(
'et',title=
'et',path=Path,xbins=400,xmin=0.0,xmax=400.0)
101 myGroup.defineHistogram(
'et8x8',title=
'et8x8',path=Path,xbins=400,xmin=0.0,xmax=400.0)
104 myGroup.defineHistogram(
'eta',title=
'eta',path=Path,xbins=50,xmin=-5,xmax=5)
105 myGroup.defineHistogram(
'phi',title=
'phi',path=Path,xbins=50,xmin=-3.3,xmax=3.3)
106 myGroup.defineHistogram(
'eta,phi',title=
'map eta vs phi',type=
"TH2F",path=Path,xbins=100,xmin=-5,xmax=5,ybins=100,ymin=-3.2,ymax=3.2)
110 Path = self.
L1JetContainer +
'/NoTriggerSelection/MatchedJets_' + matchcoll +
'/'
114 for histname
in [
'ptdiff',
'energydiff' ]:
115 myGroup.defineHistogram(tag+histname+
';'+histname,
116 title=histname, type=
"TH1F", path=Path,
117 xbins=140 , xmin=-120000., xmax=80000. ,)
119 for histname
in [
'ptresp',
'energyresp' ]:
120 myGroup.defineHistogram(tag+histname+
';'+histname,
122 type=
"TH1F", path=Path,
123 xbins=100 , xmin=-1., xmax=2. ,)
125 myGroup.defineHistogram(tag+
'ptresp,'+tag+
'ptref;ptresp_vs_ptRef',
126 title=
'ptresponse vs ptRef', type=
"TH2F", path=Path,
127 xbins=10 , xmin=-1., xmax=2.,
128 ybins=10, ymin=0., ymax=500000.,)
130 myGroup.defineHistogram(tag+
'ptresp,'+tag+
'etaref;ptresp_vs_etaRef',
131 title=
'ptresponse vs etaRef', type=
"TH2F", path=Path,
132 xbins=10, xmin=-1., xmax=2.,
133 ybins=10, ymin=-5., ymax=5.,)
135 myGroup.defineHistogram(tag+
'ptref,'+tag+
'ptresp;ptRef_vs_ptresp',
136 title=
'ptRef vs ptresponse', type=
"TH2F", path=Path,
137 xbins=100, xmin=0., xmax=400000.,
138 ybins=100, ymin=-5., ymax=5.,)
140 myGroup.defineHistogram(tag+
'etaref,'+tag+
'ptresp;etaRef_vs_ptresp',
141 title=
'etaRef vs ptresponse', type=
"TH2F", path=Path,
142 xbins=100, xmin=-5., xmax=5.,
143 ybins=100, ymin=-5., ymax=5.,)