3 from AthenaMonitoringKernel.GenericMonitoringTool
import GenericMonitoringTool
6 _LBN_OPTIONS =
"kLBNHistoryDepth=1 kAlwaysCreate"
10 """Base class which defines few useful methods to cope with defineHistogram
16 def makeHisto1D(self, name, type, xbins, xmin, xmax, title, path='EXPERT', opt=None, alias=None, **kw):
18 name = f
"{name};{alias}"
20 name, path=path, type=type, title=title, opt=opt,
21 xbins=xbins, xmin=xmin, xmax=xmax, **kw
24 def makeLBNHisto1D(self, name, type, xbins, xmin, xmax, title, path='EXPERT', opt="", **kw):
25 opt = _LBN_OPTIONS +
" " + opt
if opt
else _LBN_OPTIONS
27 name, type, xbins, xmin, xmax, title, path=path, opt=opt, **kw,
31 ybins, ymin, ymax, title, path='EXPERT', opt=None, alias=None, **kw):
32 name =
", ".
join([nameX, nameY])
34 name = f
"{name};{alias}"
36 name, path=path, type=type, title=title, opt=opt,
37 xbins=xbins, xmin=xmin, xmax=xmax,
38 ybins=ybins, ymin=ymin, ymax=ymax,
43 ybins, ymin, ymax, title, path='EXPERT', opt="", **kw):
44 opt = _LBN_OPTIONS +
" " + opt
if opt
else _LBN_OPTIONS
46 nameX, nameY, type, xbins, xmin, xmax, ybins, ymin, ymax, title,
47 path=path, opt=opt, **kw,
50 def makeProfile(self, nameX, nameY, xbins, xmin, xmax, title, path='EXPERT', opt=None, alias=None, **kw):
51 name =
", ".
join([nameX, nameY])
53 name = f
"{name};{alias}"
55 name, path=path, type=
"TProfile", title=title, opt=opt,
56 xbins=xbins, xmin=xmin, xmax=xmax, **kw,
59 def makeLBNProfile(self, nameX, nameY, xbins, xmin, xmax, title, path='EXPERT', opt="", **kw):
60 opt = _LBN_OPTIONS +
" " + opt
if opt
else _LBN_OPTIONS
62 nameX, nameY, xbins, xmin, xmax, title, path=path, opt=opt, **kw,
67 def __init__ (self, flags, name="T2VertexBeamSpotMonitoring"):
68 super(T2VertexBeamSpotMonitoring, self).
__init__(flags, name)
74 timers = [
"TotalTime"]
76 self.
makeHisto1D(f
'TIME_{timer}',
'TH1I', 50, 0, 25000,
77 title=f
"Timing {timer}; time [#mus];")
81 def __init__ (self, flags, name="T2VertexBeamSpotToolMonitoring", detail=2):
86 Selects which level of detail to monitor. 0 will produce minimal
87 set of histograms. 1 will make a reasonable set of histograms for
88 online running. 2 (default) will make all possible histograms,
89 this should be suitable for offline.
91 super(T2VertexBeamSpotToolMonitoring, self).
__init__(flags, name)
97 self.
makeHisto1D(
'nTotalTracks',
'TH1F', 100, 0., 2000.,
98 title=
"nTotalTracks; N all tracks per event; Number of events")
100 self.
makeHisto1D(
'nTotalPassedTracks',
'TH1F', 100, 0., 1000.,
101 title=
"nTotalPassedTracks; N selected tracks per event; Number of events")
103 self.
makeHisto1D(
'nTotalHighPTTracks',
'TH1F', 100, 0., 1000.,
104 title=
"nTotalHighPTTracks; N high-P_{t} tracks per event; Number of events")
123 (
"SelectingTracks", 10000.),
124 (
"SplitVertexReconstruction", 10000.),
125 (
"toSortSplitTracks", 10000.),
126 (
"toSortTracks", 1000.),
127 (
"toVertexFitSplit", 10000.),
128 (
"toZCluster", 100.),
129 (
"toZClusterSplit", 100.),
130 (
"VertexReconstruction", 20000.),
132 for timer, xmax
in timers:
133 self.
makeHisto1D(
'TIME_' + timer,
'TH1I', 50, 0., xmax,
134 title=
"Timing " + timer +
"; time [#mus];")
147 title=
"NClusters; Number of clusters per event; Number of events")
148 self.
makeHisto1D(
'ClusterNTracks',
'TH1I', 100, 0.0, 100.0,
149 title=
"ClusterNTracks; Number tracks per cluster; Number of events")
150 self.
makeHisto1D(
'ClusterNTracksUnused',
'TH1I', 100, 0.0, 400.0,
151 title=
"ClusterNTracksUnused; Number of unused tracks per cluster; Number of events")
152 self.
makeHisto2D(
'ClusterNTracks',
'ClusterNTracksUnused',
'TH2I', 50, 0.0, 50.0, 50, 0.0, 400.0,
153 title=
"Number of tracks in cluster unused vs used; Number of tracks per cluster; Number of unused tracks per cluster")
154 self.
makeHisto1D(
'ClusterZ',
'TH1I', 100, -250.0, 250.0,
155 title=
"ClusterZ; Cluster Z position [mm]; Number of clusters")
156 self.
makeHisto1D(
'ClusterDeltaZ0',
'TH1I', 100, -2.0, 2.0,
157 title=
"ClusterDeltaZ0; Delta of track Z0 and cluster Z position [mm]; Number of tracks")
158 self.
makeHisto1D(
'ClusterZ0Pull',
'TH1I', 100, -10.0, 10.0,
159 title=
"ClusterZ0Pull; Pull of track Z0 with respect to cluster Z position; Number of tracks")
160 self.
makeHisto1D(
'ClusterClusterDeltaZ0',
'TH1I', 200, -100.0, 100.0,
161 title=
"ClusterClusterDeltaZ0; Delta of cluster-cluster Z position [mm]; Number of clusters")
177 title=
"Nvtx; N vertices per event; Number of events")
180 title=
"NvtxPass; N accepted vertices per event; Number of events")
183 self.
makeHisto1D(
'ClusterDeltaVertexZ',
'TH1F', 100, -10.0, 10.0,
184 title=
"ClusterDeltaVertexZ; Delta of cluster Z position and Vertex Z position [mm]; Number of vertices")
192 title=
"Acc. Vertex X; Vertex x [mm]; Number of vertices")
194 title=
"Acc. Vertex Y; Vertex y [mm]; Number of vertices")
196 title=
"Acc. Vertex Z; Vertex z [mm]; Number of vertices")
203 title=
"Acc. Vertex X-X_{nominal}; Vertex X-X_{nominal} [mm]; Number of vertices")
205 title=
"Acc. Vertex Y-Y_{nominal}; Vertex Y-Y_{nominal} [mm]; Number of vertices")
207 title=
"Acc. Vertex Z-Z_{nominal}; Vertex Z-Z_{nominal} [mm]; Number of vertices")
214 self.
makeLBNHisto2D(
'VertexXPass',
'VertexYPass',
'TH2F', 50, -2.5, 2.5, 50, -2.5, 2.5,
215 title=
"Acc. Vertex Y vs X; Vertex X [mm]; Vertex Y [mm]")
216 self.
makeLBNProfile(
'VertexZPass',
'VertexXPass', 100, -250.0, 250.0,
217 title=
"Acc. Vertex X vs Z; Vertex Z [mm]; Vertex X [mm]")
218 self.
makeLBNProfile(
'VertexZPass',
'VertexYPass', 100, -250.0, 250.0,
219 title=
"Acc. Vertex Y vs Z; Vertex Z [mm]; Vertex Y [mm]")
224 self.
makeLBNHisto2D(
'VertexXZoomPass',
'VertexYZoomPass',
'TH2F', 50, -1.25, 1.25, 50, -1.25, 1.25,
225 title=
"Acc. Vertex Y-Y_{nominal} vs X-X_{nominal}; Vertex X-X_{nominal} [mm]; Vertex Y-Y_{nominal} [mm]")
226 self.
makeLBNProfile(
'VertexZZoomPass',
'VertexXZoomPass', 100, -250.0, 250.0,
227 title=
"Acc. Vertex X-X_{nominal} vs Z-Z_{nominal}; Vertex Z-Z_{nominal} [mm]; Vertex X-X_{nominal} [mm]")
228 self.
makeLBNProfile(
'VertexZZoomPass',
'VertexYZoomPass', 100, -250.0, 250.0,
229 title=
"Acc. Vertex Y-Y_{nominal} vs Z-Z_{nominal}; Vertex Z-Z_{nominal} [mm]; Vertex Y-Y_{nominal} [mm]")
235 self.
makeLBNHisto2D(
'VertexNTrksPass',
'VertexXPass',
'TH2F', 100, 0.0, 100.0, 400, -2.00, 2.00,
236 title=
"Acc. Vertex X vs. NTrks; N trk per vertex; Vertex x [mm]")
237 self.
makeLBNHisto2D(
'VertexNTrksPass',
'VertexYPass',
'TH2F', 100, 0.0, 100.0, 400, -2.00, 2.00,
238 title=
"Acc. Vertex Y vs. NTrks; N trk per vertex; Vertex y [mm]")
239 self.
makeLBNHisto2D(
'VertexNTrksPass',
'VertexZPass',
'TH2F', 100, 0.0, 100.0, 250, -250.0, 250.0,
240 title=
"Acc. Vertex Z vs. NTrks; N trk per vertex; Vertex z [mm]")
242 self.
makeProfile(
'VertexZPass',
'VertexNTrksPass', 100, -250.0, 250.0,
243 title=
"Acc. Vertex NTrks vs. Vertex Z; Vertex Z [mm]; N trk per vertex")
244 self.
makeProfile(
'VertexZPass',
'VertexXerrPass', 100, -250.0, 250.0,
245 title=
"Vertex Xerr vs Z; Vertex Z [mm]; Vertex Xerr [mm]")
246 self.
makeProfile(
'VertexZPass',
'VertexYerrPass', 100, -250.0, 250.0,
247 title=
"Vertex Yerr vs Z; Vertex Z [mm]; Vertex Yerr [mm]")
249 self.
makeProfile(
'VertexNTrksPass',
'VertexXerrPass', 100, 0.0, 100.0,
250 title=
"Acc. Vertex Xerr vs NTrks; Vertex N trks; Vertex Xerr [mm]")
251 self.
makeProfile(
'VertexNTrksPass',
'VertexYerrPass', 100, 0.0, 100.0,
252 title=
"Acc. Vertex Yerr vs NTrks; Vertex N trks; Vertex Yerr [mm]")
253 self.
makeProfile(
'VertexNTrksPass',
'VertexZerrPass', 100, 0.0, 100.0,
254 title=
"Acc. Vertex Zerr vs NTrks; Vertex N trks; Vertex Zerr [mm]")
268 title=
"Acc. N Tracks vs BCID; BCID; N tracks vertices")
270 title=
"Acc. N Vertices vs BCID; BCID; N accepted vertices")
272 title=
"Acc. Vertex X vs BCID (profile); BCID; Vertex X [mm]")
274 title=
"Acc. Vertex Y vs BCID (profile); BCID; Vertex Y [mm]")
276 title=
"Acc. Vertex Z vs BCID (profile); BCID; Vertex Z [mm]")
283 self.
makeLBNHisto2D(
'BCID',
'VertexXZoomPassBCID',
'TH2F', 3564, 0, 3564, 50, -0.5, 0.5,
284 title=
"Acc. Vertex X-X_{nominal} vs. BCID; BCID; Vertex X-X_{nominal} [mm]")
285 self.
makeLBNHisto2D(
'BCID',
'VertexYZoomPassBCID',
'TH2F', 3564, 0, 3564, 50, -0.5, 0.5,
286 title=
"Acc. Vertex Y-Y_{nominal} vs. BCID; BCID; Vertex Y-Y_{nominal} [mm]")
287 self.
makeLBNHisto2D(
'BCID',
'VertexZZoomPassBCID',
'TH2F', 3564, 0, 3564, 50, -250.0, 250.0,
288 title=
"Acc. Vertex Z-Z_{nominal} vs. BCID; BCID; Vertex Z-Z_{nominal} [mm]")
295 self.
makeHisto1D(
'VertexNTrks',
'TH1F', 100, 0., 100.,
296 title=
"Vertex NTrks; N trk per vertex; Number of vertices")
297 self.
makeHisto1D(
'VertexSumPt',
'TH1F', 100, 0., 100.,
298 title=
"Vertex SumPt; Vertex sum p_{T} [GeV]; Number of vertices")
299 self.
makeHisto1D(
'VertexSumPt2',
'TH1F', 100, 0., 100.,
300 title=
"Vertex SumPt^2; Vertex sum p_{T}^{2} [GeV^{2}]; Number of vertices")
301 self.
makeHisto1D(
'VertexQual',
'TH1F', 50, 0., 50.,
302 title=
"Vertex Qual; Vertex #chi^{2}/ndf; Number of vertices")
303 self.
makeHisto1D(
'VertexMass',
'TH1F', 300, 0., 3000.,
304 title=
"Vertex mass; Vertex Mass; Number of vertices")
305 self.
makeHisto1D(
'VertexChi2Prob',
'TH1F', 70, -0.2, 1.2,
306 title=
"Vertex Probability; Vertex #chi^{2} probability; Number of vertices")
310 self.
makeHisto1D(
'VertexX',
'TH1F', 500, -5.0, 5.0,
311 title=
"Vertex X; Vertex X [mm]; Number of vertices")
312 self.
makeHisto1D(
'VertexXerr',
'TH1F', 50, 0., 0.5,
313 title=
"Vertex Xerr; Vertex x error [mm]; Number of vertices")
314 self.
makeHisto1D(
'VertexY',
'TH1F', 500, -5.0, 5.0,
315 title=
"Vertex Y; Vertex Y [mm]; Number of vertices")
316 self.
makeHisto1D(
'VertexYerr',
'TH1F', 50, 0., 0.5,
317 title=
"Vertex Yerr; Vertex y error [mm]; Number of vertices")
318 self.
makeHisto1D(
'VertexZ',
'TH1F', 500, -250.0, 250.0,
319 title=
"Vertex Z; Vertex Z [mm]; Number of vertices")
320 self.
makeHisto1D(
'VertexZerr',
'TH1F', 100, 0., 1.,
321 title=
"Vertex Zerr; Vertex z error [mm]; Number of vertices")
323 self.
makeHisto1D(
'VertexXZoom',
'TH1F', 100, -0.250, 0.250,
324 title=
"Vertex X-X_{nominal}; Vertex X-X_{nominal} [mm]; Number of vertices")
325 self.
makeHisto1D(
'VertexYZoom',
'TH1F', 100, -0.250, 0.250,
326 title=
"Vertex Y-Y_{nominal}; Vertex Y-Y_{nominal} [mm]; Number of vertices")
327 self.
makeHisto1D(
'VertexZZoom',
'TH1F', 100, -250., 250.,
328 title=
"Vertex Z-Z_{nominal}; Vertex Z-Z_{nominal} [mm]; Number of vertices")
330 self.
makeHisto1D(
'VertexPull',
'TH1F', 100, -5.0, 5.0,
331 title=
"Vertex 'pull'; Vertex Z_{PV} - Z_{seed} [mm]; Number of vertices")
334 title=
"Acc. NTrks in vertex; Vertex number of tracks; Number of tracks in vertex track list")
342 title=
"Vertex NTrks; N trk per vertex; Number of vertices")
343 self.
makeHisto1D(
'VertexSumPtPass',
'TH1F', 100, 0., 100.,
344 title=
"Vertex SumPt; Vertex sum p_{T} [GeV]; Number of vertices")
345 self.
makeHisto1D(
'VertexSumPt2Pass',
'TH1F', 100, 0., 100.,
346 title=
"Vertex SumPt^2; Vertex sum p_{T}^{2} [GeV^{2}]; Number of vertices")
347 self.
makeHisto1D(
'VertexQualPass',
'TH1F', 50, 0., 50.,
348 title=
"Vertex Qual; Vertex #chi^{2}/ndf; Number of vertices")
349 self.
makeHisto1D(
'VertexMassPass',
'TH1F', 100, 0., 3000.,
350 title=
"Vertex mass; Vertex Mass; Number of vertices")
351 self.
makeHisto1D(
'VertexChi2ProbPass',
'TH1F', 70, -0.2, 1.2,
352 title=
"Vertex Probability; Vertex #chi^{2} probability; Number of vertices")
358 self.
makeHisto1D(
'VertexXerrPass',
'TH1F', 50, 0., 0.5,
359 title=
"Vertex Xerr; Vertex x error [mm]; Number of vertices")
362 self.
makeHisto1D(
'VertexYerrPass',
'TH1F', 50, 0., 0.5,
363 title=
"Vertex Yerr; Vertex y error [mm]; Number of vertices")
366 self.
makeHisto1D(
'VertexZerrPass',
'TH1F', 100, 0., 1.,
367 title=
"Vertex Zerr; Vertex z error [mm]; Number of vertices")
369 self.
makeHisto1D(
'VertexXZoomPass',
'TH1F', 100, -0.250, 0.250,
370 title=
"Vertex X-X_{nominal}; Vertex X-X_{nominal} [mm]; Number of vertices")
371 self.
makeHisto1D(
'VertexYZoomPass',
'TH1F', 100, -0.250, 0.250,
372 title=
"Vertex Y-Y_{nominal}; Vertex Y-Y_{nominal} [mm]; Number of vertices")
373 self.
makeHisto1D(
'VertexZZoomPass',
'TH1F', 100, -250., 250.,
374 title=
"Vertex Z-Z_{nominal}; Vertex Z-Z_{nominal} [mm]; Number of vertices")
376 self.
makeHisto1D(
'VertexPullPass',
'TH1F', 100, -5.0, 5.0,
377 title=
"Vertex 'pull'; Vertex Z_{PV} - Z_{seed} [mm]; Number of vertices")
380 title=
"Acc. NTrks in vertex; Vertex number of tracks; Number of tracks in vertex track list")
387 self.
makeHisto2D(
'VertexX',
'VertexY',
'TH2F', 50, -5.0, 5.0, 50, -5.0, 5.0,
388 title=
"Vertex Y vs X; Vertex X [mm]; Vertex Y [mm]")
389 self.
makeHisto2D(
'VertexZ',
'VertexX',
'TH2F', 500, -250.0, 250.0, 50, -5.0, 5.0,
390 title=
"Vertex X vs Z; Vertex Z [mm]; Vertex X [mm]")
391 self.
makeHisto2D(
'VertexZ',
'VertexY',
'TH2F', 500, -250.0, 250.0, 50, -5.0, 5.0,
392 title=
"Vertex Y vs Z; Vertex Z [mm]; Vertex Y [mm]")
393 self.
makeHisto2D(
'VertexXZoom',
'VertexYZoom',
'TH2F', 100, -0.250, 0.250, 100, -0.250, 0.250,
394 title=
"Vertex Y-Y_{nominal} vs X-X_{nominal}; Vertex X-X_{nominal} [mm]; Vertex Y-Y_{nominal} [mm]")
396 self.
makeHisto2D(
'VertexZ',
'VertexXerr',
'TH2F', 500, -250.0, 250.0, 100, 0.0, 1.0,
397 title=
"Vertex Xerr vs Z; Vertex Z [mm]; Vertex Xerr [mm]")
398 self.
makeHisto2D(
'VertexZ',
'VertexYerr',
'TH2F', 500, -250.0, 250.0, 100, 0.0, 1.0,
399 title=
"Vertex Yerr vs Z; Vertex Z [mm]; Vertex Yerr [mm]")
403 self.
makeHisto2D(
'VertexXZoomPass',
'VertexXerrPass',
'TH2F', 400, -0.200, 0.200, 100, 0.0, 0.100,
404 title=
"Vertex Xerr vs X-X_{nominal}; Vertex X-X_{nominal} [mm]; Vertex Xerr [mm]")
405 self.
makeHisto2D(
'VertexYZoomPass',
'VertexYerrPass',
'TH2F', 400, -0.200, 0.200, 100, 0.0, 0.100,
406 title=
"Vertex Yerr vs Y-Y_{nominal}; Vertex Y-Y_{nominal} [mm]; Vertex Yerr [mm]")
410 self.
makeHisto2D(
'VertexNTrks',
'VertexXerr',
'TH2F', 25, 5.0, 30.0, 100, 0.0, 1.0,
411 title=
"Vertex Xerr vs NTrks; Vertex N trks; Vertex Xerr [mm]")
412 self.
makeHisto2D(
'VertexNTrks',
'VertexYerr',
'TH2F', 25, 5.0, 30.0, 100, 0.0, 1.0,
413 title=
"Vertex Yerr vs NTrks; Vertex N trks; Vertex Yerr [mm]")
414 self.
makeHisto2D(
'VertexNTrks',
'VertexZerr',
'TH2F', 50, 0.0, 50.0, 100, 0.0, 1.0,
415 title=
"Vertex Zerr vs NTrks; Vertex N trks; Vertex Zerr [mm]")
432 self.
makeLBNHisto2D(
'SplitVertexDNTrksPass',
'SplitVertexDXPass',
'TH2F', 100, 0.0, 50.0, 250, -1.25, 1.25,
433 title=
"Split Vertex DX vs. NTrks; N trk per split vertex; #Deltax between split vertices [mm]")
434 self.
makeLBNHisto2D(
'SplitVertexDNTrksPass',
'SplitVertexDYPass',
'TH2F', 100, 0.0, 50.0, 250, -1.25, 1.25,
435 title=
"Split Vertex DY vs. NTrks; N trk per split vertex; #Deltay between split vertices [mm]")
436 self.
makeLBNHisto2D(
'SplitVertexDNTrksPass',
'SplitVertexDZPass',
'TH2F', 100, 0.0, 50.0, 250, -2.5, 2.5,
437 title=
"Split Vertex DZ vs. NTrks; N trk per split vertex; #Deltaz between split vertices [mm]")
439 self.
makeHisto2D(
'SplitVertexDNTrksPass',
'SplitVertexDXPass',
'TH2F', 100, 0.0, 50.0, 250, -1.25, 1.25,
440 title=
"Split Vertex DX vs. NTrks (runsummary); N trk per split vertex; #Deltax between split vertices [mm]",
441 alias=
"SplitVertexDXPass_vs_SplitVertexDNTrksPass_runsummary")
442 self.
makeHisto2D(
'SplitVertexDNTrksPass',
'SplitVertexDYPass',
'TH2F', 100, 0.0, 50.0, 250, -1.25, 1.25,
443 title=
"Split Vertex DY vs. NTrks (runsummary); N trk per split vertex; #Deltay between split vertices [mm]",
444 alias=
"SplitVertexDYPass_vs_SplitVertexDNTrksPass_runsummary")
445 self.
makeHisto2D(
'SplitVertexDNTrksPass',
'SplitVertexDZPass',
'TH2F', 100, 0.0, 50.0, 250, -2.5, 2.5,
446 title=
"Split Vertex DZ vs. NTrks (runsummary); N trk per split vertex; #Deltaz between split vertices [mm]",
447 alias=
"SplitVertexDZPass_vs_SplitVertexDNTrksPass_runsummary")
452 self.
makeHisto2D(
'SplitVertexDNTrksPass',
'SplitVertexDXpullPass',
'TH2F',
453 100, 0.0, 100.0, 100, -5.0, 5.0,
454 title=
"Acc. Split Vertex D X Pull vs. NTrks; N trk per vertex; Split Vertex x Pull")
455 self.
makeHisto2D(
'SplitVertexDNTrksPass',
'SplitVertexDYpullPass',
'TH2F',
456 100, 0.0, 100.0, 100, -5.0, 5.0,
457 title=
"Acc. Split Vertex D Y Pull vs. NTrks; N trk per vertex; Split Vertex y Pull")
458 self.
makeHisto2D(
'SplitVertexDNTrksPass',
'SplitVertexDZpullPass',
'TH2F',
459 100, 0.0, 100.0, 100, -5.0, 5.0,
460 title=
"Acc. Split Vertex D Z Pull vs. NTrks; N trk per vertex; Split Vertex z Pull")
463 self.
makeHisto2D(
'SplitVertex2NTrksPass',
'SplitVertex1NTrksPass',
'TH2F',
464 50, 0, 50, 50, 0, 50,
465 title=
"Split Vertex 2 NTrks vs Split Vertex 1 NTrks")
469 """Monitoring for T2BSTrackFilter tool
471 Variables defined by tool:
486 - TrackChi2Prob{filter}
487 - TrackSiHits{filter}
488 - TrackPIXHits{filter}
489 - TrackSCTHits{filter}
490 - TrackTRTHits{filter}
492 where {filter} is one of "Filter" or "FilterBS"
494 def __init__ (self, flags, name="T2BSTrackFilterToolMonitoring", detail=1):
495 super(T2BSTrackFilterToolMonitoring, self).
__init__(flags, name)
497 self.
makeHisto1D(
'TIME_TrackFilter',
'TH1I', 100, 0, 10000,
498 title=
"Timing of filter method; time [#mus];")
499 self.
makeHisto1D(
'TIME_TrackFilterBS',
'TH1I', 100, 0, 10000,
500 title=
"Timing of filterBS method; time [#mus];")
502 self.
makeHisto1D(
'TracksInput',
'TH1F', 100, 0., 2000.,
503 title=
"Number of input tracks; Number of tracks; N events")
505 self.
makeLBNHisto1D(
'TrackRejectReason',
'TH1I', 15, xmin=0, xmax=15,
506 opt=
'kVec', title=
"TrackRejectReason ; Reason ; # of tracks",
507 xlabels=[
'PT',
'SiHits',
'PIXHits',
'SCTHits',
'TRTHits',
508 'NDF',
'D0',
'Z0',
'D0err',
'Z0err',
509 'Eta',
'MinQual',
'MaxQual',
'Chi2Prob',
'D0Chi2'])
511 for filter
in (
"Filter",
"FilterBS"):
513 self.
makeHisto1D(f
'Tracks{filter}',
'TH1F', 100, 0., 400.,
514 title=
"Number of tracks filtered tracks; N accepted tracks; N events")
518 self.
makeLBNHisto2D(f
'TrackPhi{filter}', f
'TrackD0{filter}',
'TH2I',
519 50, -3.5, 3.5, 50, -2, 2,
520 title=
"Selected Track d_{0} vs #phi; Track #phi; Track d_{0}")
524 self.
makeHisto1D(f
'TrackPt{filter}',
'TH1F', 50, 0.0, 50.0,
525 title=
"Acc. Track Pt; p_{t} [GeV]; Number of tracks")
526 self.
makeHisto1D(f
'TrackEta{filter}',
'TH1F', 60, -3.0, 3.0,
527 title=
"Acc. Track Eta; #eta; Number of tracks")
528 self.
makeHisto1D(f
'TrackPhi{filter}',
'TH1F', 70, -3.5, 3.5,
529 title=
"Acc. Track Phi; #phi; Number of tracks")
530 self.
makeHisto1D(f
'TrackZ0{filter}',
'TH1F', 100, -200.0, 200.0,
531 title=
"Acc. Track Z0; Track z0 [mm]; Number of tracks")
532 self.
makeHisto1D(f
'TrackD0{filter}',
'TH1F', 100, -10.0, 10.0,
533 title=
"Acc. Track D0; Track d0 [mm]; Number of tracks")
534 self.
makeHisto1D(f
'TrackZ0err{filter}',
'TH1F', 100, 0., 5.,
535 title=
"Acc. Track Z0err; Track z0 error [mm]; Number of tracks")
536 self.
makeHisto1D(f
'TrackD0err{filter}',
'TH1F', 100, 0., 5.,
537 title=
"Acc. Track D0err; Track d0 error [mm]; Number of tracks")
538 self.
makeHisto1D(f
'TrackNDF{filter}',
'TH1F', 10, -0.5, 19.5,
539 title=
"Acc. Track NDF; Track NDF; Number of tracks")
540 self.
makeHisto1D(f
'TrackQual{filter}',
'TH1F', 50, 0., 10.,
541 title=
"Acc. Track Qual; Track #chi^{2}/ndf; Number of tracks")
542 self.
makeHisto1D(f
'TrackChi2Prob{filter}',
'TH1F', 70, -0.2, 1.2,
543 title=
"Acc. Track #chi^{2} probability; Track #chi^{2} probability; Number of tracks")
545 self.
makeHisto1D(f
'TrackSiHits{filter}',
'TH1I', 12, 0, 12,
546 title=
"Acc. Track Silicon hits; N Si hits; Number of tracks")
547 self.
makeHisto1D(f
'TrackTRTHits{filter}',
'TH1I', 50, 0, 50,
548 title=
"Acc. Track TRT hits; N TRT hits; Number of tracks")
549 self.
makeHisto1D(f
'TrackPIXHits{filter}',
'TH1I', 7, 0, 7,
550 title=
"Acc. Track PIX hits; N PIX hits; Number of tracks")
551 self.
makeHisto1D(f
'TrackSCTHits{filter}',
'TH1I', 9, 0, 9,
552 title=
"Acc. Track SCT hits; N SCT hits; Number of tracks")
556 """Monitoring for T2TrackBeamSpot tool
558 Variables defined by tool:
563 def __init__ (self, flags, name="T2TrackBeamSpotToolMonitoring", detail=1):
564 super(T2TrackBeamSpotToolMonitoring, self).
__init__(flags, name)
566 self.
makeHisto1D(
'TIME_updateBS',
'TH1I', 100, 0, 10000,
567 title=
"Timing beamspot update; time [#mus];")
569 self.
makeLBNHisto1D(
'BeamLSMatrices',
'TH1D', 18, 0, 18, opt=
'kVec',
570 title=
"BeamLSMatrices ; Element ; Value",
571 xlabels=[
'A_x_x',
'A_x_y',
'A_y_y',
'A_x_tx',
'A_y_tx',
572 'A_tx_tx',
'A_x_ty',
'A_y_ty',
'A_tx_ty',
'A_ty_ty',
573 'B_x',
'B_y',
'B_tx',
'B_ty',
'd0^2',
576 self.
makeLBNHisto1D(
'BeamLSMatricesBCID',
'TH1D', 3564*8, 0, 3564*8, opt=
'kVec',
577 title=
"BeamLSMatricesBCID ; Element ; Value")
580 self.
makeLBNHisto1D(
'TrackLLPolyCoeff',
'TH1D', 100, 0, 100, opt=
'kVec',
581 title=
"TrackLLPolyCoeff ; Coefficient ; Value")