3 from AthenaMonitoringKernel.GenericMonitoringTool
import GenericMonitoringTool
7 name = flags.Tracking.ActiveConfig.name
8 doResMon= flags.Tracking.ActiveConfig.doResMon
15 def addSPHistograms(montool, name):
16 if name
in [
'FS',
'JetFS',
'FullScan',
'fullScan',
'fullScanUTT',
'jet']:
17 montool.defineHistogram(
'roi_nSPsPIX', path=
'EXPERT',type=
'TH1F',title=
"Number of Pixel SPs", xbins = 500, xmin=-0.5, xmax=49999.5)
18 montool.defineHistogram(
'roi_nSPsSCT', path=
'EXPERT',type=
'TH1F',title=
"Number of SCT SPs", xbins = 500, xmin=-0.5, xmax=99999.5)
19 montool.defineHistogram(
'roi_phiWidth',path=
'EXPERT',type=
'TH1F',title=
"Phi width of the input RoI",xbins = 100, xmin=0, xmax=6.4)
20 montool.defineHistogram(
'roi_etaWidth',path=
'EXPERT',type=
'TH1F',title=
"Eta width of the input RoI",xbins = 100, xmin=0, xmax=5)
22 montool.defineHistogram(
'roi_nSPsPIX', path=
'EXPERT',type=
'TH1F',title=
"Number of Pixel SPs", xbins = 50, xmin=-0.5, xmax=4999.5)
23 montool.defineHistogram(
'roi_nSPsSCT', path=
'EXPERT',type=
'TH1F',title=
"Number of SCT SPs", xbins = 50, xmin=-0.5, xmax=4999.5)
24 montool.defineHistogram(
'roi_phiWidth',path=
'EXPERT',type=
'TH1F',title=
"Phi width of the input RoI",xbins = 100, xmin=0, xmax=1.0)
25 montool.defineHistogram(
'roi_etaWidth',path=
'EXPERT',type=
'TH1F',title=
"Eta width of the input RoI",xbins = 100, xmin=0, xmax=1.0)
27 montool.defineHistogram(
'roi_eta', path=
'EXPERT',type=
'TH1F',title=
'Eta of the input RoI;;Entries', xbins=100, xmin=-5, xmax=5)
28 montool.defineHistogram(
'roi_phi', path=
'EXPERT',type=
'TH1F',title=
"Phi of the input RoI",xbins = 100, xmin=-3.2, xmax=3.2)
29 montool.defineHistogram(
'roi_z', path=
'EXPERT',type=
'TH1F',title=
"z of the input RoI",xbins = 200, xmin=-400, xmax=400)
30 montool.defineHistogram(
'roi_zWidth', path=
'EXPERT',type=
'TH1F',title=
"z width of the input RoI",xbins = 100, xmin=0, xmax=500)
32 def addDataErrorHistograms(montool):
33 montool.defineHistogram(
'roi_lastStageExecuted',path=
'EXPERT',type=
'TH1F',title=
"Last Step Successfully Executed", xbins = 8 , xmin=-0.5, xmax=7.5,
34 xlabels=[
"Start",
"GetRoI",
"GetSPs",
"ZFinder",
"Triplets",
"TrackMaker",
"TrackFitter",
"TrackConverter"])
36 def addTimingHistograms(montool, name):
37 if name
in [
'FS',
'JetFS',
'FullScan',
'fullScan',
'fullScanUTT',
'jet']:
38 montool.defineHistogram(
'roi_nSPs, TIME_PattReco', path=
'EXPERT',type=
'TH2F',title=
"PattReco time; nSPs", xbins = 200, xmin=0.0, xmax=200000.0, ybins = 100, ymin=0.0, ymax=5000.0)
39 montool.defineHistogram(
'roi_nTracks, TIME_PattReco',path=
'EXPERT',type=
'TH2F',title=
"PattReco time; nTracks", xbins = 50, xmin=0.0, xmax=5000.0, ybins = 100, ymin=0.0, ymax=5000.0)
40 montool.defineHistogram(
'TIME_Total', path=
'EXPERT',type=
'TH1F',title=
"Total time (ms)", xbins = 200, xmin=0.0, xmax=5000.0)
41 montool.defineHistogram(
'TIME_PattReco', path=
'EXPERT',type=
'TH1F',title=
"Pure PattReco time (ms)", xbins = 200, xmin=0.0, xmax=5000.0)
42 montool.defineHistogram(
'TIME_SpacePointConversion', path=
'EXPERT',type=
'TH1F',title=
"SP Conversion time (ms)", xbins = 100, xmin=0.0, xmax=100.0)
43 montool.defineHistogram(
'TIME_ZFinder', path=
'EXPERT',type=
'TH1F',title=
"ZFinder time (ms)", xbins = 200, xmin=0.0, xmax=5000.0)
44 montool.defineHistogram(
'TIME_Triplets', path=
'EXPERT',type=
'TH1F',title=
"Triplets Making time (ms)", xbins = 200, xmin=0.0, xmax=5000.0)
45 montool.defineHistogram(
'TIME_CmbTrack', path=
'EXPERT',type=
'TH1F',title=
"Combined Tracking time (ms)", xbins = 200, xmin=0.0, xmax=5000.0)
46 montool.defineHistogram(
'TIME_TrackFitter', path=
'EXPERT',type=
'TH1F',title=
"Track Fitter time (ms)", xbins = 200, xmin=0.0, xmax=1000.0)
47 elif name==
'jetSuper':
48 montool.defineHistogram(
'roi_nSPs, TIME_PattR1eco', path=
'EXPERT',type=
'TH2F',title=
"PattReco time; nSPs", xbins = 200, xmin=0.0, xmax=3000.0, ybins = 100, ymin=0.0, ymax=1000.0)
49 montool.defineHistogram(
'roi_nTracks, TIME_PattReco',path=
'EXPERT',type=
'TH2F',title=
"PattReco time; nTracks", xbins = 50, xmin=0.0, xmax=200.0, ybins = 100, ymin=0.0, ymax=1000.0)
50 montool.defineHistogram(
'TIME_Total', path=
'EXPERT',type=
'TH1F',title=
"Total time (ms)", xbins = 200, xmin=0.0, xmax=2000.0)
51 montool.defineHistogram(
'TIME_PattReco', path=
'EXPERT',type=
'TH1F',title=
"Pure PattReco time (ms)", xbins = 200, xmin=0.0, xmax=1000.0)
52 montool.defineHistogram(
'TIME_SpacePointConversion', path=
'EXPERT',type=
'TH1F',title=
"SP Conversion time (ms)", xbins = 100, xmin=0.0, xmax=100.0)
53 montool.defineHistogram(
'TIME_ZFinder', path=
'EXPERT',type=
'TH1F',title=
"ZFinder time (ms)", xbins = 200, xmin=0.0, xmax=1000.0)
54 montool.defineHistogram(
'TIME_Triplets', path=
'EXPERT',type=
'TH1F',title=
"Triplets Making time (ms)", xbins = 200, xmin=0.0, xmax=1000.0)
55 montool.defineHistogram(
'TIME_CmbTrack', path=
'EXPERT',type=
'TH1F',title=
"Combined Tracking time (ms)", xbins = 200, xmin=0.0, xmax=1000.0)
56 montool.defineHistogram(
'TIME_TrackFitter', path=
'EXPERT',type=
'TH1F',title=
"Track Fitter time (ms)", xbins = 200, xmin=0.0, xmax=200.0)
57 elif name
in [
'beamSpot',
'beamSpotFS',
'bphysics',
'bmumux']:
58 montool.defineHistogram(
'roi_nSPs, TIME_PattReco', path=
'EXPERT',type=
'TH2F',title=
"PattReco time; nSPs", xbins = 200, xmin=0.0, xmax=3000.0, ybins = 100, ymin=0.0, ymax=2000.0)
59 montool.defineHistogram(
'roi_nTracks, TIME_PattReco',path=
'EXPERT',type=
'TH2F',title=
"PattReco time; nTracks", xbins = 50, xmin=0.0, xmax=200.0, ybins = 100, ymin=0.0, ymax=2000.0)
60 montool.defineHistogram(
'TIME_Total', path=
'EXPERT',type=
'TH1F',title=
"Total time (ms)", xbins = 200, xmin=0.0, xmax=5000.0)
61 montool.defineHistogram(
'TIME_PattReco', path=
'EXPERT',type=
'TH1F',title=
"Pure PattReco time (ms)", xbins = 200, xmin=0.0, xmax=2000.0)
62 montool.defineHistogram(
'TIME_SpacePointConversion', path=
'EXPERT',type=
'TH1F',title=
"SP Conversion time (ms)", xbins = 50, xmin=0.0, xmax=50.0)
63 montool.defineHistogram(
'TIME_Triplets', path=
'EXPERT',type=
'TH1F',title=
"Triplets Making time (ms)", xbins = 200, xmin=0.0, xmax=2000.0)
64 montool.defineHistogram(
'TIME_CmbTrack', path=
'EXPERT',type=
'TH1F',title=
"Combined Tracking time (ms)", xbins = 200, xmin=0.0, xmax=2000.0)
65 montool.defineHistogram(
'TIME_TrackFitter', path=
'EXPERT',type=
'TH1F',title=
"Track Fitter time (ms)", xbins = 200, xmin=0.0, xmax=200.0)
66 elif name==
'fullScanLRT':
67 montool.defineHistogram(
'roi_nSPs, TIME_PattReco', path=
'EXPERT',type=
'TH2F',title=
"PattReco time; nSPs", xbins = 200, xmin=0.0, xmax=3000.0, ybins = 100, ymin=0.0, ymax=500.0)
68 montool.defineHistogram(
'roi_nTracks, TIME_PattReco',path=
'EXPERT',type=
'TH2F',title=
"PattReco time; nTracks", xbins = 50, xmin=0.0, xmax=200.0, ybins = 100, ymin=0.0, ymax=500.0)
69 montool.defineHistogram(
'TIME_Total', path=
'EXPERT',type=
'TH1F',title=
"Total time (ms)", xbins = 200, xmin=0.0, xmax=5000.0)
70 montool.defineHistogram(
'TIME_PattReco', path=
'EXPERT',type=
'TH1F',title=
"Pure PattReco time (ms)", xbins = 200, xmin=0.0, xmax=2000.0)
71 montool.defineHistogram(
'TIME_SpacePointConversion', path=
'EXPERT',type=
'TH1F',title=
"SP Conversion time (ms)", xbins = 200, xmin=0.0, xmax=200.0)
72 montool.defineHistogram(
'TIME_Triplets', path=
'EXPERT',type=
'TH1F',title=
"Triplets Making time (ms)", xbins = 200, xmin=0.0, xmax=400.0)
73 montool.defineHistogram(
'TIME_CmbTrack', path=
'EXPERT',type=
'TH1F',title=
"Combined Tracking time (ms)", xbins = 200, xmin=0.0, xmax=2000.0)
74 montool.defineHistogram(
'TIME_TrackFitter', path=
'EXPERT',type=
'TH1F',title=
"Track Fitter time (ms)", xbins = 200, xmin=0.0, xmax=200.0)
76 montool.defineHistogram(
'roi_nSPs, TIME_PattReco', path=
'EXPERT',type=
'TH2F',title=
"PattReco time; nSPs", xbins = 200, xmin=0.0, xmax=3000.0, ybins = 100, ymin=0.0, ymax=400.0)
77 montool.defineHistogram(
'roi_nTracks, TIME_PattReco',path=
'EXPERT',type=
'TH2F',title=
"PattReco time; nTracks", xbins = 50, xmin=0.0, xmax=200.0, ybins = 100, ymin=0.0, ymax=400.0)
78 montool.defineHistogram(
'TIME_Total', path=
'EXPERT',type=
'TH1F',title=
"Total time (ms)", xbins = 200, xmin=0.0, xmax=1000.0)
79 montool.defineHistogram(
'TIME_PattReco', path=
'EXPERT',type=
'TH1F',title=
"Pure PattReco time (ms)", xbins = 200, xmin=0.0, xmax=400.0)
80 montool.defineHistogram(
'TIME_SpacePointConversion', path=
'EXPERT',type=
'TH1F',title=
"SP Conversion time (ms)", xbins = 20, xmin=0.0, xmax=20.0)
81 montool.defineHistogram(
'TIME_Triplets', path=
'EXPERT',type=
'TH1F',title=
"Triplets Making time (ms)", xbins = 100, xmin=0.0, xmax=100.0)
82 montool.defineHistogram(
'TIME_CmbTrack', path=
'EXPERT',type=
'TH1F',title=
"Combined Tracking time (ms)", xbins = 200, xmin=0.0, xmax=400.0)
83 montool.defineHistogram(
'TIME_TrackFitter', path=
'EXPERT',type=
'TH1F',title=
"Track Fitter time (ms)", xbins = 50, xmin=0.0, xmax=50.0)
87 def addTrackHistograms(montool, name):
88 if name
in [
'FS',
'JetFS',
'FullScan',
'fullScan',
'fullScanUTT',
'jet']:
89 montool.defineHistogram(
'roi_nSeeds', path=
'EXPERT',type=
'TH1F',title=
"Number of seeds",xbins = 1000, xmin=-0.5, xmax=99999.5)
90 montool.defineHistogram(
'roi_nTracks', path=
'EXPERT',type=
'TH1F',title=
"Number of Tracks",xbins = 100, xmin=-0.5, xmax=9999.5)
91 elif name==
'fullScanLRT':
92 montool.defineHistogram(
'roi_nSeeds', path=
'EXPERT',type=
'TH1F',title=
"Number of seeds",xbins = 1000, xmin=-0.5, xmax=99999.5)
93 montool.defineHistogram(
'roi_nTracks', path=
'EXPERT',type=
'TH1F',title=
"Number of Tracks",xbins = 100, xmin=-0.5, xmax=5000.5)
95 montool.defineHistogram(
'roi_nSeeds', path=
'EXPERT',type=
'TH1F',title=
"Number of seeds",xbins = 100, xmin=-0.5, xmax=4999.5)
96 montool.defineHistogram(
'roi_nTracks', path=
'EXPERT',type=
'TH1F',title=
"Number of Tracks",xbins = 50, xmin=-0.5, xmax=199.5)
98 montool.defineHistogram(
'roi_nZvertices', path=
'EXPERT',type=
'TH1F',title=
"Number of z vertices",xbins = 60 , xmin=-0.5, xmax=49.5)
99 montool.defineHistogram(
'roi_zVertices', path=
'EXPERT',type=
'TH1F',title=
"ZFinder Vertices",xbins = 501, xmin=-250, xmax=250)
100 montool.defineHistogram(
'roi_nTrk_zVtx', path=
'EXPERT',type=
'TH1F',title=
"Ntrk ZFinder Vertices",xbins = 100, xmin=-0.5, xmax=49.5)
101 montool.defineHistogram(
'trk_nSiHits', path=
'EXPERT',type=
'TH1F',title=
"Total number of Silicon Hits per Track",xbins = 20, xmin=-0.5, xmax=19.5)
102 montool.defineHistogram(
'trk_nPIXHits', path=
'EXPERT',type=
'TH1F',title=
"Number of Pixel Hits per Track",xbins = 10, xmin=-0.5, xmax=9.5)
103 montool.defineHistogram(
'trk_nSCTHits', path=
'EXPERT',type=
'TH1F',title=
"Number of SCT Hits per Track",xbins = 10, xmin=-0.5, xmax=9.5)
104 montool.defineHistogram(
'trk_chi2dof', path=
'EXPERT',type=
'TH1F',title=
"ChiSqd / nDoF",xbins = 100, xmin=0.0, xmax=5)
105 montool.defineHistogram(
'trk_pt', path=
'EXPERT',type=
'TH1F',title=
"pt",xbins = 100, xmin=-2.5e5, xmax=2.5e5)
106 montool.defineHistogram(
'trk_phi0', path=
'EXPERT',type=
'TH1F',title=
"phi",xbins = 100, xmin=-3.2, xmax=3.2)
107 montool.defineHistogram(
'trk_eta', path=
'EXPERT',type=
'TH1F',title=
"eta",xbins = 100, xmin=-5, xmax=5)
108 montool.defineHistogram(
'trk_dPhi0', path=
'EXPERT',type=
'TH1F',title=
"dphi",xbins = 160, xmin=-0.8, xmax=0.8)
109 montool.defineHistogram(
'trk_dEta', path=
'EXPERT',type=
'TH1F',title=
"deta",xbins = 160, xmin=-0.8, xmax=0.8)
111 montool.defineHistogram(
'trk_a0', path=
'EXPERT',type=
'TH1F',title=
"a0",xbins = 100, xmin=-300, xmax=300)
112 montool.defineHistogram(
'trk_a0beam', path=
'EXPERT',type=
'TH1F',title=
"a0beam",xbins = 100, xmin=-300, xmax=300)
113 montool.defineHistogram(
'trk_z0', path=
'EXPERT',type=
'TH1F',title=
"z0",xbins = 100, xmin=-800, xmax=800)
114 montool.defineHistogram(
'trk_z0beam', path=
'EXPERT',type=
'TH1F',title=
"z0beam",xbins = 100, xmin=-800, xmax=800)
115 elif name==
'fullScanLRT':
116 montool.defineHistogram(
'trk_a0', path=
'EXPERT',type=
'TH1F',title=
"a0",xbins = 100, xmin=-300, xmax=300)
117 montool.defineHistogram(
'trk_a0beam', path=
'EXPERT',type=
'TH1F',title=
"a0beam",xbins = 100, xmin=-300, xmax=300)
118 montool.defineHistogram(
'trk_z0', path=
'EXPERT',type=
'TH1F',title=
"z0",xbins = 100, xmin=-550, xmax=550)
119 montool.defineHistogram(
'trk_z0beam', path=
'EXPERT',type=
'TH1F',title=
"z0beam",xbins = 100, xmin=-550, xmax=550)
121 montool.defineHistogram(
'trk_a0', path=
'EXPERT',type=
'TH1F',title=
"a0",xbins = 200, xmin=-10, xmax=10)
122 montool.defineHistogram(
'trk_a0beam', path=
'EXPERT',type=
'TH1F',title=
"a0beam",xbins = 200, xmin=-10, xmax=10)
123 montool.defineHistogram(
'trk_z0', path=
'EXPERT',type=
'TH1F',title=
"z0",xbins = 200, xmin=-400, xmax=400)
124 montool.defineHistogram(
'trk_z0beam', path=
'EXPERT',type=
'TH1F',title=
"z0beam",xbins = 200, xmin=-400, xmax=400)
126 def addResidualHistograms(self):
127 montool.defineHistogram(
'layer_IBL', path=
'EXPERT',type=
'TH1F',title=
"IBL layer",xbins = 10, xmin=0., xmax=10.)
128 montool.defineHistogram(
'layer_PixB', path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel layer",xbins = 10, xmin=0., xmax=10.)
129 montool.defineHistogram(
'layer_PixE', path=
'EXPERT',type=
'TH1F',title=
"Pixel Endcap layer",xbins = 10, xmin=0., xmax=10.)
130 montool.defineHistogram(
'layer_SCTB', path=
'EXPERT',type=
'TH1F',title=
"SCT Barrel layer",xbins = 10, xmin=0., xmax=10.)
131 montool.defineHistogram(
'layer_SCTE', path=
'EXPERT',type=
'TH1F',title=
"SCT Endcap layer",xbins = 10, xmin=0., xmax=10.)
133 montool.defineHistogram(
'hit_IBLPhiResidual', path=
'EXPERT',type=
'TH1F',title=
"IBL hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
134 montool.defineHistogram(
'hit_IBLEtaResidual', path=
'EXPERT',type=
'TH1F',title=
"IBL hit-track eta residual",xbins = 100, xmin=-1.0, xmax=1.0)
135 montool.defineHistogram(
'hit_IBLPhiPull', path=
'EXPERT',type=
'TH1F',title=
"IBL hit-track phi pull",xbins = 100, xmin=-5., xmax=5.)
136 montool.defineHistogram(
'hit_IBLEtaPull', path=
'EXPERT',type=
'TH1F',title=
"IBL hit-track eta pull",xbins = 100, xmin=-5., xmax=5.)
138 montool.defineHistogram(
'hit_PIXBarrelPhiResidual', path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
139 montool.defineHistogram(
'hit_PIXBarrelEtaResidual', path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel hit-track eta residual",xbins = 100, xmin=-1.0, xmax=1.0)
140 montool.defineHistogram(
'hit_PIXBarrelL1PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel L1 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
141 montool.defineHistogram(
'hit_PIXBarrelL1EtaResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel L1 hit-track eta residual",xbins = 100, xmin=-1.0, xmax=1.0)
142 montool.defineHistogram(
'hit_PIXBarrelL2PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel L2 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
143 montool.defineHistogram(
'hit_PIXBarrelL2EtaResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel L2 hit-track eta residual",xbins = 100, xmin=-1.0, xmax=1.0)
144 montool.defineHistogram(
'hit_PIXBarrelL3PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel L3 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
145 montool.defineHistogram(
'hit_PIXBarrelL3EtaResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel L3 hit-track eta residual",xbins = 100, xmin=-1.0, xmax=1.0)
146 montool.defineHistogram(
'hit_PIXBarrelPhiPull', path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel hit-track phi pull",xbins = 100, xmin=-5., xmax=5.)
147 montool.defineHistogram(
'hit_PIXBarrelEtaPull', path=
'EXPERT',type=
'TH1F',title=
"Pixel Barrel hit-track eta pull",xbins = 100, xmin=-5., xmax=5.)
149 montool.defineHistogram(
'hit_PIXEndcapPhiResidual', path=
'EXPERT',type=
'TH1F',title=
"Pixel EC hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
150 montool.defineHistogram(
'hit_PIXEndcapEtaResidual', path=
'EXPERT',type=
'TH1F',title=
"Pixel EC hit-track eta residual",xbins = 100, xmin=-1.0, xmax=1.0)
151 montool.defineHistogram(
'hit_PIXEndcapL1PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel EC L1 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
152 montool.defineHistogram(
'hit_PIXEndcapL1EtaResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel EC L1 hit-track eta residual",xbins = 100, xmin=-1.0, xmax=1.0)
153 montool.defineHistogram(
'hit_PIXEndcapL2PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel EC L2 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
154 montool.defineHistogram(
'hit_PIXEndcapL2EtaResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel EC L2 hit-track eta residual",xbins = 100, xmin=-1.0, xmax=1.0)
155 montool.defineHistogram(
'hit_PIXEndcapL3PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel EC L3 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
156 montool.defineHistogram(
'hit_PIXEndcapL3EtaResidual',path=
'EXPERT',type=
'TH1F',title=
"Pixel EC L3 hit-track eta residual",xbins = 100, xmin=-1.0, xmax=1.0)
157 montool.defineHistogram(
'hit_PIXEndcapPhiPull', path=
'EXPERT',type=
'TH1F',title=
"Pixel EC hit-track phi pull",xbins = 100, xmin=-5., xmax=5.)
158 montool.defineHistogram(
'hit_PIXEndcapEtaPull', path=
'EXPERT',type=
'TH1F',title=
"Pixel EC hit-track eta pull",xbins = 100, xmin=-5., xmax=5.)
160 montool.defineHistogram(
'hit_SCTBarrelResidual', path=
'EXPERT',type=
'TH1F',title=
"SCT Barrel hit-track residual",xbins = 100, xmin=-0.5, xmax=0.5)
161 montool.defineHistogram(
'hit_SCTBarrelL1PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Barrel L1 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
162 montool.defineHistogram(
'hit_SCTBarrelL2PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Barrel L2 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
163 montool.defineHistogram(
'hit_SCTBarrelL3PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Barrel L3 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
164 montool.defineHistogram(
'hit_SCTBarrelL4PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Barrel L4 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
165 montool.defineHistogram(
'hit_SCTBarrelPull', path=
'EXPERT',type=
'TH1F',title=
"SCT Barrel hit-track pull",xbins = 100, xmin=-5., xmax=5.)
167 montool.defineHistogram(
'hit_SCTEndcapResidual', path=
'EXPERT',type=
'TH1F',title=
"SCT EC hit-track residual",xbins = 100, xmin=-1.0, xmax=1.0)
168 montool.defineHistogram(
'hit_SCTEndcapL1PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Endcap L1 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
169 montool.defineHistogram(
'hit_SCTEndcapL2PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Endcap L2 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
170 montool.defineHistogram(
'hit_SCTEndcapL3PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Endcap L3 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
171 montool.defineHistogram(
'hit_SCTEndcapL4PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Endcap L4 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
172 montool.defineHistogram(
'hit_SCTEndcapL5PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Endcap L5 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
173 montool.defineHistogram(
'hit_SCTEndcapL6PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Endcap L6 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
174 montool.defineHistogram(
'hit_SCTEndcapL7PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Endcap L7 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
175 montool.defineHistogram(
'hit_SCTEndcapL8PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Endcap L8 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
176 montool.defineHistogram(
'hit_SCTEndcapL9PhiResidual',path=
'EXPERT',type=
'TH1F',title=
"SCT Endcap L9 hit-track phi residual",xbins = 100, xmin=-0.5, xmax=0.5)
177 montool.defineHistogram(
'hit_SCTEndcapPull', path=
'EXPERT',type=
'TH1F',title=
"SCT EC hit-track pull",xbins = 100, xmin=-5., xmax=5.)
179 def addUTTHistograms(montool):
180 montool.defineHistogram(
'trk_dedx', path=
'EXPERT',type=
'TH1F',title=
"Track dEdx (pT > 3 GeV)", xbins = 140, xmin=-0.5, xmax=6.5)
181 montool.defineHistogram(
'trk_dedx_nusedhits', path=
'EXPERT',type=
'TH1F',title=
"Nr of used hits for dEdx",xbins = 11, xmin=-0.5, xmax=10.5)
183 montool.defineHistogram(
'disTrk_nVtx', path=
'EXPERT',type=
'TH1F',title=
"Nr of Vertex for disTrk",xbins = 11, xmin=-0.5, xmax=10.5)
184 montool.defineHistogram(
'disTrk_xVtx', path=
'EXPERT',type=
'TH1F',title=
"X position of primary vertex for disTrk", xbins = 120, xmin=-1.2, xmax=1.2)
185 montool.defineHistogram(
'disTrk_yVtx', path=
'EXPERT',type=
'TH1F',title=
"Y position of primary vertex for disTrk", xbins = 120, xmin=-1.2, xmax=1.2)
186 montool.defineHistogram(
'disTrk_zVtx', path=
'EXPERT',type=
'TH1F',title=
"Z position of primary vertex for disTrk", xbins = 150, xmin=-150, xmax=150)
188 montool.defineHistogram(
'disFailTrk_n', path=
'EXPERT',type=
'TH1F',title=
"Nr of disFailTrk", xbins = 50, xmin=0, xmax=3000)
189 montool.defineHistogram(
'disFailTrk_nclone', path=
'EXPERT',type=
'TH1F',title=
"Nr of disFailTrk (after clone removal)", xbins = 50, xmin=0, xmax=3000)
190 montool.defineHistogram(
'disFailTrk_ncand', path=
'EXPERT',type=
'TH1F',title=
"Nr of disFailTrk (after pre-selection)", xbins = 50, xmin=0, xmax=3000)
191 montool.defineHistogram(
'disCombTrk_n', path=
'EXPERT',type=
'TH1F',title=
"Nr of disCombTrk", xbins = 20, xmin=0, xmax=100)
192 montool.defineHistogram(
'disCombTrk_nclone', path=
'EXPERT',type=
'TH1F',title=
"Nr of disCombTrk (after clone removal)", xbins = 20, xmin=0, xmax=100)
193 montool.defineHistogram(
'disCombTrk_ncand', path=
'EXPERT',type=
'TH1F',title=
"Nr of disCombTrk (after pre-selection)", xbins = 20, xmin=0, xmax=100)
195 montool.defineHistogram(
'TIME_dEdxTrk', path=
'EXPERT',type=
'TH1F',title=
"Large dEdx search (ms)", xbins = 20, xmin=0.0, xmax=20.0)
196 montool.defineHistogram(
'TIME_disTrkZVertex', path=
'EXPERT',type=
'TH1F',title=
"UTT z-vertexing time (ms)", xbins = 10, xmin=0.0, xmax=10.0)
197 montool.defineHistogram(
'TIME_disappearingTrack', path=
'EXPERT',type=
'TH1F',title=
"Disappearing track reco time (ms)", xbins = 100, xmin=0.0, xmax=300.0)
201 addSPHistograms(montool, name)
202 addDataErrorHistograms(montool)
203 addTimingHistograms(montool, name)
204 addTrackHistograms(montool, name)
206 addResidualHistograms(montool)
207 uttMode = flags.Tracking.ActiveConfig.doHitDV
or flags.Tracking.ActiveConfig.doDisappearingTrk
209 addUTTHistograms(montool)
214 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
215 from AthenaConfiguration.ComponentFactory
import CompFactory
216 from AthenaConfiguration.AthConfigFlags
import AthConfigFlags
218 def TrigZFinderCfg(flags : AthConfigFlags, numberingTool) -> ComponentAccumulator:
221 if flags.Tracking.ActiveConfig.name ==
"beamSpot" :
226 'UseOnlyPixels' :
True,
230 elif flags.Tracking.ActiveConfig.name ==
"jetSuper" :
234 'UseOnlyPixels' :
True,
240 CompFactory.TrigZFinder( name=
"TrigZFinder",
241 LayerNumberTool=numberingTool,
250 kwargs.setdefault(
"UseNewLayerScheme",
True)
251 acc.setPrivateTools(CompFactory.TrigL2LayerNumberTool(**kwargs))
256 kwargs.setdefault(
"UseNewLayerScheme",
True)
257 acc.setPrivateTools(CompFactory.TrigL2LayerNumberToolITk(**kwargs))
263 kwargs.setdefault(
"UseNewLayerScheme",
True)
265 if "layerNumberTool" not in kwargs:
266 ntargs = {
"UseNewLayerScheme" : kwargs.get(
"UseNewLayerScheme")}
269 kwargs.setdefault(
"DoPhiFiltering", flags.Tracking.ActiveConfig.DoPhiFiltering)
270 kwargs.setdefault(
"UseBeamTilt",
False)
271 kwargs.setdefault(
"PixelSP_ContainerName",
"PixelTrigSpacePoints")
272 kwargs.setdefault(
"SCT_SP_ContainerName",
"SCT_TrigSpacePoints")
273 kwargs.setdefault(
"UsePixelSpacePoints",flags.Tracking.ActiveConfig.UsePixelSpacePoints)
275 from RegionSelector.RegSelToolConfig
import regSelTool_SCT_Cfg, regSelTool_Pixel_Cfg
277 if "RegSelTool_Pixel" not in kwargs:
280 if "RegSelTool_SCT" not in kwargs:
281 kwargs.setdefault(
"RegSelTool_SCT", acc.popToolsAndMerge(
regSelTool_SCT_Cfg( flags)))
284 acc.setPrivateTools(CompFactory.TrigSpacePointConversionTool(**kwargs))
291 kwargs.setdefault(
"UseNewLayerScheme",
True)
293 if "layerNumberTool" not in kwargs:
294 ntargs = {
"UseNewLayerScheme" : kwargs.get(
"UseNewLayerScheme")}
297 kwargs.setdefault(
"DoPhiFiltering", flags.Tracking.ActiveConfig.DoPhiFiltering)
298 kwargs.setdefault(
"UseBeamTilt",
False)
299 kwargs.setdefault(
"PixelSP_ContainerName",
"ITkPixelTrigSpacePoints")
300 kwargs.setdefault(
"UsePixelSpacePoints",flags.Tracking.ActiveConfig.UsePixelSpacePoints)
301 kwargs.setdefault(
"UseSctSpacePoints",
False)
303 from RegionSelector.RegSelToolConfig
import (regSelTool_ITkStrip_Cfg, regSelTool_ITkPixel_Cfg)
305 if "RegSelTool_Pixel" not in kwargs:
308 if "RegSelTool_SCT" not in kwargs:
312 acc.setPrivateTools(CompFactory.TrigSpacePointConversionTool(**kwargs))
319 from InDetConfig.SiCombinatorialTrackFinderToolConfig
import ITkSiCombinatorialTrackFinder_xkCfg
321 name=
"ITkTrigSiComTrackFinder_"+signature,
322 PixelClusterContainer=
'ITkTrigPixelClusters',
323 SCT_ClusterContainer=
'ITkTrigStripClusters')
325 from InDetConfig.SiTrackMakerConfig
import ITkSiTrackMaker_xkCfg
327 name =
"ITkTrigSiTrackMaker_FTF_",
328 useBremModel = flags.Tracking.ActiveConfig.doBremRecoverySi,
329 CombinatorialTrackFinder = CombinatorialTrackFinderTool)
332 acc.addPublicTool( CompFactory.TrigInDetTrackFollowingTool( name =
"TrigTrackFollowingTool_FTF_"+signature,
333 PixelClusterContainer=
'ITkTrigPixelClusters',
334 SCT_ClusterContainer=
'ITkTrigStripClusters' ) )
335 trackMaker.useTrigTrackFollowingTool =
True
336 trackMaker.TrigTrackFollowingTool = acc.getPublicTool(
"TrigTrackFollowingTool_FTF_"+signature)
338 acc.addPublicTool( CompFactory.TrigInDetRoadPredictorTool( name =
"TrigRoadPredictorTool_FTF"+signature, LayerNumberTool = layerNumberingTool ) )
339 trackMaker.useTrigInDetRoadPredictorTool =
True
340 trackMaker.TrigInDetRoadPredictorTool = acc.getPublicTool(
"TrigRoadPredictorTool_FTF"+signature)
342 acc.addPublicTool(trackMaker)
346 def TrigFastTrackFinderCfg(flags: AthConfigFlags, name: str, RoIs: str, inputTracksName:str =
None) -> ComponentAccumulator:
349 signature = flags.Tracking.ActiveConfig.input_name
350 isCosmicConfig = (signature==
"cosmics")
354 if flags.Trigger.InDetTracking.doGPU:
356 inDetAccelSvc = CompFactory.TrigInDetAccelerationSvc(
"TrigInDetAccelerationSvc")
357 inDetAccelSvc.useITkGeometry = flags.Detector.GeometryITk
358 if flags.Detector.GeometryITk:
359 inDetAccelSvc.MiddleSpacePointLayers = [81000, 82000,
360 90011, 90012, 90013, 90014, 91002, 91003, 91004, 91005,
361 92000, 92001, 92002, 92003, 92004, 92005, 92006, 92007, 92008, 92009, 92010,
362 92011, 92012, 92013, 92014, 92015, 92016, 92017, 92018, 92019, 92020, 92021, 92022,
363 70011, 70012, 70013, 70014, 71002, 71003, 71004, 71005,
364 72000, 72001, 72002, 72003, 72004, 72005, 72006, 72007, 72008, 72009, 72010,
365 72011, 72012, 72013, 72014, 72015, 72016, 72017, 72018, 72019, 72020, 72021, 72022
367 acc.addService(inDetAccelSvc)
369 if flags.Detector.GeometryITk:
370 acc.addPublicTool(CompFactory.TrigITkAccelerationTool(name =
"TrigITkAccelerationTool_FTF"))
372 acc.addPublicTool(CompFactory.TrigInDetAccelerationTool(name =
"TrigInDetAccelerationTool_FTF"))
375 useNewLayerNumberScheme =
True
377 if flags.Detector.GeometryITk:
383 TrackMaker_FTF = acc.getPublicTool(
"ITkTrigSiTrackMaker_FTF_"+signature)
385 acc.addPublicTool( CompFactory.TrigInDetTrackFitter(
"TrigInDetTrackFitter_"+signature ) )
392 from InDetConfig.SiTrackMakerConfig
import TrigSiTrackMaker_xkCfg
393 TrackMaker_FTF = acc.popToolsAndMerge(
396 from TrkConfig.TrkRIO_OnTrackCreatorConfig
import TrigRotCreatorCfg
398 acc.addPublicTool(TrigRotCreator)
401 CompFactory.TrigInDetTrackFitter(
402 name =
"TrigInDetTrackFitter_"+signature,
403 doBremmCorrection = flags.Tracking.ActiveConfig.doBremRecoverySi,
404 correctClusterPos =
True,
405 ROTcreator = TrigRotCreator,
409 acc.addPublicTool(TrackMaker_FTF)
411 theTrigInDetTrackFitter = acc.getPublicTool(
"TrigInDetTrackFitter_"+signature)
413 if (flags.Tracking.ActiveConfig.doZFinder):
414 theTrigZFinder = acc.popToolsAndMerge(
TrigZFinderCfg(flags,numberingTool))
416 if not flags.Tracking.ActiveConfig.doZFinderOnly:
418 if flags.Detector.GeometryITk:
420 from TrkConfig.TrkTrackSummaryToolConfig
import ITkTrackSummaryToolCfg
424 from TrkConfig.TrkTrackSummaryToolConfig
import InDetTrigTrackSummaryToolCfg, InDetTrigFastTrackSummaryToolCfg
425 if flags.Tracking.ActiveConfig.holeSearch_FTF :
430 acc.addPublicTool(trackSummaryTool)
432 from TrkConfig.AtlasExtrapolatorConfig
import AtlasExtrapolatorCfg
434 ftf = CompFactory.TrigFastTrackFinder(
436 useNewLayerNumberScheme = useNewLayerNumberScheme,
437 LayerNumberTool = numberingTool,
438 useGPU = flags.Trigger.InDetTracking.doGPU,
439 SpacePointProviderTool=spTool,
440 MinHits = 3
if flags.Detector.GeometryITk
else 5,
441 Triplet_MinPtFrac = 0.8
if flags.Detector.GeometryITk
else 1,
442 Triplet_nMaxPhiSlice = 53
if "cosmics" not in flags.Tracking.ActiveConfig.name
else 2,
443 LRT_Mode = flags.Tracking.ActiveConfig.isLRT,
444 dodEdxTrk = flags.Tracking.ActiveConfig.dodEdxTrk,
445 doDisappearingTrk = flags.Tracking.ActiveConfig.doDisappearingTrk,
446 Triplet_MaxBufferLength = 3,
447 doSeedRedundancyCheck = flags.Tracking.ActiveConfig.doSeedRedundancyCheck,
448 Triplet_D0Max = flags.Tracking.ActiveConfig.Triplet_D0Max,
449 Triplet_D0_PPS_Max = flags.Tracking.ActiveConfig.Triplet_D0_PPS_Max,
450 TrackInitialD0Max = flags.Tracking.ActiveConfig.TrackInitialD0Max,
451 TrackZ0Max = flags.Tracking.ActiveConfig.TrackZ0Max,
452 TripletDoPPS = flags.Tracking.ActiveConfig.TripletDoPPS,
453 TripletDoPSS =
False,
454 pTmin = flags.Tracking.ActiveConfig.minPT[0]
if flags.Detector.GeometryITk
else flags.Tracking.ActiveConfig.minPT,
455 DoubletDR_Max = flags.Tracking.ActiveConfig.DoubletDR_Max,
456 SeedRadBinWidth = flags.Tracking.ActiveConfig.SeedRadBinWidth,
457 initialTrackMaker = TrackMaker_FTF,
458 trigInDetTrackFitter = theTrigInDetTrackFitter,
459 doZFinder = flags.Tracking.ActiveConfig.doZFinder,
460 TrackSummaryTool = trackSummaryTool,
461 doCloneRemoval = flags.Tracking.ActiveConfig.doCloneRemoval,
462 TracksName = flags.Tracking.ActiveConfig.trkTracks_FTF,
463 doResMon = flags.Tracking.ActiveConfig.doResMon,
467 ITkMode = flags.Detector.GeometryITk,
468 UseTracklets = flags.Detector.GeometryITk,
469 doTrackRefit =
not flags.Detector.GeometryITk,
472 ftf.LRT_D0Min = flags.Tracking.ActiveConfig.LRT_D0Min
473 ftf.LRT_HardMinPt = flags.Tracking.ActiveConfig.LRT_HardPtMin
475 ftf.UseTrigSeedML = flags.Tracking.ActiveConfig.UseTrigSeedML
477 if flags.Trigger.InDetTracking.doGPU:
478 ftf.TrigAccelerationSvc = acc.getService(
"TrigInDetAccelerationSvc")
479 if flags.Detector.GeometryITk:
480 ftf.TrigAccelerationTool = acc.getPublicTool(
"TrigITkAccelerationTool_FTF")
482 ftf.TrigAccelerationTool = acc.getPublicTool(
"TrigInDetAccelerationTool_FTF")
485 ftf.Doublet_FilterRZ =
False
487 from TrigEDMConfig.TriggerEDM
import recordable
488 if flags.Tracking.ActiveConfig.dodEdxTrk:
492 if flags.Tracking.ActiveConfig.doDisappearingTrk:
494 from TrkConfig.TrkGlobalChi2FitterConfig
import InDetTrigGlobalChi2FitterCfg
496 acc.addPublicTool(InDetTrigTrackFitter)
497 ftf.DisTrackFitter = InDetTrigTrackFitter
499 if flags.Tracking.ActiveConfig.doZFinder:
500 ftf.doZFinderOnly = flags.Tracking.ActiveConfig.doZFinderOnly
501 ftf.trigZFinder = theTrigZFinder
502 ftf.zVertexResolution = 20
if flags.Tracking.ActiveConfig.name ==
"jetSuper" else 1
503 ftf.zVertexResolutionEndcap = 150
if flags.Tracking.ActiveConfig.name ==
"jetSuper" else ftf.zVertexResolution
504 ftf.doFastZVertexSeeding =
True
507 ftf.inputTracksName = inputTracksName
509 acc.addEventAlgo(ftf)