ATLAS Offline Software
TRTMonitoringRun3ESD_Alg.py
Go to the documentation of this file.
1 #
2 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 #
4 '''@file TRTMonitoringRun3ESD_Alg.py
5 @author N. Belyaev
6 @date 20.09.2019
7 @brief MT-compatible TRT Monitoring Tool for Run III based on the
8 AthenaMonitoring package
9 '''
10 
12  '''Function to configures some algorithms in the monitoring system.'''
13 
14  from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
15  result = ComponentAccumulator()
16 
17  from AthenaMonitoring import AthMonitorCfgHelper
18  helper = AthMonitorCfgHelper(flags, 'TRTMonitoringCfg')
19 
20  from AthenaConfiguration.ComponentFactory import CompFactory
21  have_trt_phase = flags.InDet.doTRTPhase or 'TRT_Phase' in flags.Input.Collections
22  algTRTMonitoringRun3ESD = helper.addAlgorithm(CompFactory.TRTMonitoringRun3ESD_Alg,
23  'AlgTRTMonitoringRun3',
24  ComTimeObjectName = 'TRT_Phase' if have_trt_phase else '')
25 
26  from InDetConfig.InDetTrackSelectionToolConfig import InDetTrackSelectionTool_Loose_Cfg
27  algTRTMonitoringRun3ESD.TrackSelectionTool = result.popToolsAndMerge(InDetTrackSelectionTool_Loose_Cfg(flags))
28 
29  # trigger flag
30  if not flags.DQ.triggerDataAvailable:
31  algTRTMonitoringRun3ESD.TrigDecisionObjectName = ''
32 
33  # In Online TRTViewer expects some histograms to be created regardles if they filled or not. It is not needed for Offline
34  TRTViewer_opt='' #Offline Case
35  if flags.DQ.Environment in ('online'):
36  TRTViewer_opt='kAlwaysCreate' #Online Case
37 
38  from IOVDbSvc.IOVDbSvcConfig import addFoldersSplitOnline
39 
40  result.merge(addFoldersSplitOnline(flags, "TRT","/TRT/Onl/Calib/errors2d","/TRT/Calib/errors2d",className="TRTCond::RtRelationMultChanContainer"))
41  result.merge(addFoldersSplitOnline(flags, "TRT","/TRT/Onl/Calib/slopes","/TRT/Calib/slopes",className="TRTCond::RtRelationMultChanContainer"))
42  result.merge(addFoldersSplitOnline(flags, "TRT","/TRT/Onl/Calib/RT","/TRT/Calib/RT",className="TRTCond::RtRelationMultChanContainer"))
43  result.merge(addFoldersSplitOnline(flags, "TRT","/TRT/Onl/Calib/T0","/TRT/Calib/T0",className="TRTCond::StrawT0MultChanContainer"))
44 
45  from TRT_ConditionsServices.TRT_ConditionsServicesConfig import (
46  TRT_CalDbToolCfg)
47  algTRTMonitoringRun3ESD.ITRT_CalDbTool = (
48  result.popToolsAndMerge(TRT_CalDbToolCfg(flags)))
49 
50  from TRT_ConditionsServices.TRT_ConditionsServicesConfig import (
51  TRT_StrawStatusSummaryToolCfg)
52  algTRTMonitoringRun3ESD.InDetTRTStrawStatusSummaryTool = (
53  result.popToolsAndMerge(TRT_StrawStatusSummaryToolCfg(flags)))
54 
55  from TRT_ConditionsServices.TRT_ConditionsServicesConfig import (
56  TRT_StrawNeighbourSvcCfg)
57  algTRTMonitoringRun3ESD.NeighbourSvc = (
58  result.getPrimaryAndMerge(TRT_StrawNeighbourSvcCfg(flags)))
59 
60  from InDetConfig.TRT_DriftFunctionToolConfig import (
61  TRT_DriftFunctionToolCfg)
62  algTRTMonitoringRun3ESD.DriftFunctionTool = (
63  result.popToolsAndMerge(TRT_DriftFunctionToolCfg(flags)))
64 
65  from TrkConfig.TrkTrackSummaryToolConfig import InDetTrackSummaryToolCfg
66  algTRTMonitoringRun3ESD.TrackSummaryTool = result.popToolsAndMerge(InDetTrackSummaryToolCfg(flags))
67 
68 # # To run job only with ID
69 # if hasattr(inputFlags, "Detector") and hasattr(inputFlags.Detector, "GeometryMuon") and hasattr(inputFlags.Detector, "GeometryID"):
70 # from TrkEventCnvTools.TrkEventCnvToolsConfig import TrkEventCnvSuperToolCfg
71 # TrkEventCnvSuperTool = result.getPrimaryAndMerge(TrkEventCnvSuperToolCfg(inputFlags))
72 # result.addPublicTool(TrkEventCnvSuperTool)
73 
74  barrelOrEndcap = ('Barrel', 'EndCap')
75  beId = ('B', 'E')
76  sideId = ('A', 'C')
77  strawMax = (1642, 3840)
78  iChipMax = (104, 240)
79  numberOfStacks = (32, 32)
80  distToStraw = 0.4
81  nPhiBins = 360
82  minTRTHits = 10
83  maxLumiblock = 3000
84 
85  for ibe in range(2):
86  oss_distance = distToStraw
87  distance = str(oss_distance)
88  regionTag = ' (' + barrelOrEndcap[ibe] + ')'
89 
90  for i in range(numberOfStacks[ibe]*2):
91  trackGroup = helper.addGroup(algTRTMonitoringRun3ESD,'TRTTrackHistograms{0}{1}'.format(ibe,i))
92 
93  nBarrelModules = 0
94 
95  if ibe == 0:
96  if i < numberOfStacks[ibe]:
97  nBarrelModules = i + 1
98  oss = 'TRT/Barrel/Stack{0}A'.format(nBarrelModules)
99  elif i >= numberOfStacks[ibe]:
100  nBarrelModules = i + 1 - 32
101  oss = 'TRT/Barrel/Stack{0}C'.format(nBarrelModules)
102  elif ibe == 1:
103  if i < numberOfStacks[ibe]:
104  nBarrelModules = i + 1
105  oss = 'TRT/EndcapA/Sector{0}'.format(nBarrelModules)
106  elif i >= numberOfStacks[ibe]:
107  nBarrelModules = i + 1 - 32
108  oss = 'TRT/EndcapC/Sector{0}'.format(nBarrelModules)
109 
110  trackGroup.defineHistogram('ValidRawDriftTimeonTrkS_x,ValidRawDriftTimeonTrkS_y;hValidRawDriftTimeonTrkS',type='TProfile',title='Valid Raw Drift Time on Track: Straws;Straw Number in Stack;Time (ns)',path=oss,xbins=strawMax[ibe],xmin=0,xmax=strawMax[ibe],duration='run',opt=TRTViewer_opt)
111  trackGroup.defineHistogram('HitTronTwEPCMapS_x,HitTronTwEPCMapS_y;hHitTronTwEPCMapS',type='TProfile',title='Mean Trailing Edge on Track (with Event Phase Correction): Straws;Straw Number in Stack;Time (ns)',path=oss,xbins=strawMax[ibe],xmin=0,xmax=strawMax[ibe],duration='run',opt=TRTViewer_opt)
112 
113  trackGroup.defineHistogram('ValidRawDriftTimeonTrkC_x,ValidRawDriftTimeonTrkC_y;hValidRawDriftTimeonTrkC',type='TProfile',title='Valid Raw Drift Time on Track: Chips;Chip Number in Stack;Time (ns)',path=oss,xbins=iChipMax[ibe],xmin=0,xmax=iChipMax[ibe],duration='run',opt=TRTViewer_opt)
114  trackGroup.defineHistogram('HitTronTwEPCMapC_x,HitTronTwEPCMapC_y;hHitTronTwEPCMapC',type='TProfile',title='Mean Trailing Edge on Track (with Event Phase Correction): Chips;Chip Number in Stack;Time (ns)',path=oss,xbins=iChipMax[ibe],xmin=0,xmax=iChipMax[ibe],duration='run',opt=TRTViewer_opt)
115 
116  # Arrays for Aging
117  gas = ('in_A', 'in_B', 'out_A', 'out_B')
118  Mod = ('1', '2', '3', 'shortP', 'shortN')
119 
120  for ibe in range(2):
121  shiftTrackGroup = helper.addGroup(algTRTMonitoringRun3ESD,'ShiftTRTTrackHistograms{0}'.format(ibe))
122  regionTag = ' (' + barrelOrEndcap[ibe] + ')'
123 
124  if ibe == 0:
125  shiftTrackGroup.defineHistogram('EvtPhase;hEvtPhase',type='TH1F',title='Event Phase Correction Factor;Event Phase (ns);Entries',path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-50,xmax=50,opt='kAlwaysCreate')
126  shiftTrackGroup.defineHistogram('EvtPhaseVsTrig_x,EvtPhaseVsTrig_y;hEvtPhaseVsTrig',type='TH2F',title='Event Phase vs L1 Trigger Item;Event Phase (ns);L1 Trigger Item',path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=300,xmin=-200,xmax=100,ybins=256,ymin=-0.5,ymax=255.5,duration='run',opt='kAlwaysCreate')
127  shiftTrackGroup.defineHistogram('EvtPhaseDetPhi_B_x,EvtPhaseDetPhi_B_y;hEvtPhaseDetPhi',type='TProfile',title='Event Phase vs #phi (2D){0};#phi (deg);Event Phase from Tracks per Event'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=nPhiBins,xmin=0.,xmax=360.,duration='run',opt='kAlwaysCreate')
128  shiftTrackGroup.defineHistogram('RtRelation_B_x,RtRelation_B_y;hrtRelation',type='TH2F',title='R(t) Relation for Xenon Straws{0};Measured Leading Edge (ns);Track-to-Wire Distance (mm)'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-12.5,xmax=81.25,ybins=50,ymin=0.,ymax=2.5,duration='run',opt='kAlwaysCreate')
129  shiftTrackGroup.defineHistogram('NumHoTDetPhi_B_x,NumHoTDetPhi_B_y;hNumHoTDetPhi',type='TProfile',title='Number of Hits per Track with {0} mm Cut vs #phi{1};#phi (deg);Hits per Track, TRT Hits >= {2}'.format(distance,regionTag,minTRTHits),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=nPhiBins,xmin=0.,xmax=360.,duration='run',opt='kAlwaysCreate')
130  shiftTrackGroup.defineHistogram('TronTDist_B;hTronTDist',type='TH1F',title='Trailing Edge Distribution on Track for Xenon Straws{0};Trailing Edge (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=26,xmin=-0.5,xmax=80.75,duration='run',opt='kAlwaysCreate')
131  shiftTrackGroup.defineHistogram('DriftTimeonTrkDist_B;hDriftTimeonTrkDist',type='TH1F',title='Drift Time Distribution on Track for Xenon Straws{0};Drift Time (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=32,xmin=0,xmax=100,duration='run',opt='kAlwaysCreate')
132  shiftTrackGroup.defineHistogram('NumTrksDetPhi_B;hNumTrksDetPhi',type='TH1F',title='Number of Reconstructed Tracks vs #phi (2D){0};#phi (deg);Number of Tracks'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=60,xmin=0,xmax=360,duration='run',opt='kAlwaysCreate')
133 
134  shiftTrackGroup.defineHistogram('DriftTimeonTrkDist_B_Ar;hDriftTimeonTrkDist_Ar',type='TH1F',title='Drift Time Distribution on Track for Argon Straws{0};Drift Time (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=32,xmin=0,xmax=100,duration='run',opt='kAlwaysCreate')
135  shiftTrackGroup.defineHistogram('TronTDist_B_Ar;hTronTDist_Ar',type='TH1F',title='Trailing Edge Distribution on Track for Argon Straws{0};Trailing Edge (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=26,xmin=-0.5,xmax=80.75,duration='run',opt='kAlwaysCreate')
136  shiftTrackGroup.defineHistogram('RtRelation_B_Ar_x,RtRelation_B_Ar_y;hrtRelation_Ar',type='TH2F',title='R(t) Relation for Argon Straws{0};Measured Leading Edge (ns);Track-to-Wire Distance (mm)'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-12.5,xmax=81.25,ybins=50,ymin=0,ymax=2.5,duration='run',opt='kAlwaysCreate')
137  shiftTrackGroup.defineHistogram('Pull_Biased_Barrel;hPull_Biased_Barrel',type='TH1F',title='Biased Track Pulls for Barrel Hits;Pulls;Entries',path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-4,xmax=4,duration='run',opt='kAlwaysCreate')
138  shiftTrackGroup.defineHistogram('Residual_B_Ar;hResidual_Ar',type='TH1F',title='Residuals for Argon Straws{0};Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='lowStat',opt='kAlwaysCreate')
139  shiftTrackGroup.defineHistogram('Residual_B_Ar;hResidual_Ar',type='TH1F',title='Residuals for Argon Straws{0};Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
140  shiftTrackGroup.defineHistogram('Residual_noTubeHits_B_Ar;hResidual_noTubeHits_Ar',type='TH1F',title='Residuals for Argon Straws{0} (no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='lowStat',opt='kAlwaysCreate')
141  shiftTrackGroup.defineHistogram('Residual_noTubeHits_B_Ar;hResidual_noTubeHits_Ar',type='TH1F',title='Residuals for Argon Straws{0} (no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
142  shiftTrackGroup.defineHistogram('Residual_B_Ar_20GeV;hResidual_Ar_20GeV',type='TH1F',title='Residuals for Argon Straws{0} (After 20GeV pT cut);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
143  shiftTrackGroup.defineHistogram('Residual_noTubeHits_B_Ar_20GeV;hResidual_noTubeHits_Ar_20GeV',type='TH1F',title='Residuals for Argon Straws{0} (After 20GeV pT cut, no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
144  shiftTrackGroup.defineHistogram('AvgTroTDetPhi_B_Ar_x,AvgTroTDetPhi_B_Ar_y;hAvgTroTDetPhi_Ar',type='TProfile',title='Avg. Trailing Edge on Track vs #phi (2D) for Argon{0};#phi (deg);Trailing Edge (ns)'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=nPhiBins,xmin=0,xmax=360,duration='run',opt='kAlwaysCreate')
145  shiftTrackGroup.defineHistogram('TimeResidual_B_Ar;hTimeResidual_Ar',type='TH1F',title='Time Residuals for Argon Straws{0};Time Residual (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-20,xmax=20,duration='run',opt='kAlwaysCreate')
146  shiftTrackGroup.defineHistogram('TimeResidual_noTubeHits_B_Ar;hTimeResidual_noTubeHits_Ar',type='TH1F',title='Time Residuals for Argon Straws{0} (no tube hits);Time Residual (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-20,xmax=20,duration='run',opt='kAlwaysCreate')
147  shiftTrackGroup.defineHistogram('WireToTrkPosition_B_Ar;hWireToTrkPosition_Ar',type='TH1F',title='Track-to-Wire Distance for Argon{0};Track-to-Wire Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=100,xmin=-5,xmax=5,duration='run',opt='kAlwaysCreate')
148 
149  shiftTrackGroup.defineHistogram('Residual_B;hResidual',type='TH1F',title='Residuals for Xenon Straws{0};Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='lowStat',opt='kAlwaysCreate')
150  shiftTrackGroup.defineHistogram('Residual_B;hResidual',type='TH1F',title='Residuals for Xenon Straws{0};Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
151  shiftTrackGroup.defineHistogram('Residual_noTubeHits_B;hResidual_noTubeHits',type='TH1F',title='Residuals for Xenon Straws{0} (no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='lowStat',opt='kAlwaysCreate')
152  shiftTrackGroup.defineHistogram('Residual_noTubeHits_B;hResidual_noTubeHits',type='TH1F',title='Residuals for Xenon Straws{0} (no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
153  shiftTrackGroup.defineHistogram('Residual_B_20GeV;hResidual_20GeV',type='TH1F',title='Residuals for Xenon Straws{0} (After 20GeV pT cut);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
154  shiftTrackGroup.defineHistogram('Residual_noTubeHits_B_20GeV;hResidual_noTubeHits_20GeV',type='TH1F',title='Residuals for Xenon Straws{0} (After 20GeV pT cut, no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
155  shiftTrackGroup.defineHistogram('TimeResidual_B;hTimeResidual',type='TH1F',title='Time Residuals for Xenon Straws{0};Time Residual (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-20,xmax=20,duration='run',opt='kAlwaysCreate')
156  shiftTrackGroup.defineHistogram('TimeResidual_noTubeHits_B;hTimeResidual_noTubeHits',type='TH1F',title='Time Residuals for Xenon Straws{0} (no tube hits);Time Residual (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-20,xmax=20,duration='run',opt='kAlwaysCreate')
157  shiftTrackGroup.defineHistogram('WireToTrkPosition_B;hWireToTrkPosition',type='TH1F',title='Track-to-Wire Distance for Xenon{0};Track-to-Wire Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=100,xmin=-5,xmax=5,duration='run',opt='kAlwaysCreate')
158  shiftTrackGroup.defineHistogram('AvgTroTDetPhi_B_x,AvgTroTDetPhi_B_y;hAvgTroTDetPhi',type='TProfile',title='Avg. Trailing Edge on Track vs #phi (2D) for Xenon{0};#phi (deg);Trailing Edge (ns)'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=nPhiBins,xmin=0,xmax=360,duration='run',opt='kAlwaysCreate')
159  shiftTrackGroup.defineHistogram('NTrksperLB_x,NTrksperLB_y;hNTrksperLB',type='TProfile',title='Avg. Number of Reconstructed Tracks per Event{0};Luminosity Block;Number of Tracks'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=maxLumiblock+1,xmin=-0.5,xmax=maxLumiblock+0.5,duration='run',opt='kAlwaysCreate')
160  elif ibe == 1:
161  shiftTrackGroup.defineHistogram('Pull_Biased_EndCap;hPull_Biased_EndCap',type='TH1F',title='Biased Track Pulls for EndCap Hits;Pulls;Entries',path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-4.0,xmax=4.0,duration='run',opt='kAlwaysCreate')
162 
163  for iside in range(2):
164  regionTag = ' (' + beId[ibe] + sideId[iside] + ')'
165  shiftTrackEndcapGroup = helper.addGroup(algTRTMonitoringRun3ESD,'ShiftTRTTrackHistograms{0}{1}'.format(ibe,iside))
166  shiftTrackEndcapGroup.defineHistogram('EvtPhaseDetPhi_E_x,EvtPhaseDetPhi_E_y;hEvtPhaseDetPhi_{0}'.format(sideId[iside]),type='TProfile',title='Event Phase vs #phi (2D){0};#phi (deg);Event Phase from Tracks per Event'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=nPhiBins,xmin=0,xmax=360,duration='run',opt='kAlwaysCreate')
167  shiftTrackEndcapGroup.defineHistogram('RtRelation_E_x,RtRelation_E_y;hrtRelation_{0}'.format(sideId[iside]),type='TH2F',title='R(t) Relation for Xenon Straws{0};Measured Leading Edge (ns);Track-to-Wire Distance (mm)'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-12.5,xmax=81.25,ybins=50,ymin=0,ymax=2.5,duration='run',opt='kAlwaysCreate')
168  shiftTrackEndcapGroup.defineHistogram('NumHoTDetPhi_E_x,NumHoTDetPhi_E_y;hNumHoTDetPhi_{0}'.format(sideId[iside]),type='TProfile',title='Number of Hits per Track with {0} mm Cut vs #phi{1};#phi (deg);Hits per Track, TRT Hits> = {2}'.format(distance,regionTag,minTRTHits),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=nPhiBins,xmin=0,xmax=360,duration='run',opt='kAlwaysCreate')
169  shiftTrackEndcapGroup.defineHistogram('TronTDist_E;hTronTDist_{0}'.format(sideId[iside]),type='TH1F',title='Trailing Edge Distribution on Track for Xenon Straws{0};Trailing Edge (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=26,xmin=-0.5,xmax=80.75,duration='run',opt='kAlwaysCreate')
170  shiftTrackEndcapGroup.defineHistogram('DriftTimeonTrkDist_E;hDriftTimeonTrkDist_{0}'.format(sideId[iside]),type='TH1F',title='Drift Time Distribution on Track for Xenon Straws{0};Drift Time (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=32,xmin=0,xmax=100,duration='run',opt='kAlwaysCreate')
171  shiftTrackEndcapGroup.defineHistogram('NumTrksDetPhi_E;hNumTrksDetPhi_{0}'.format(sideId[iside]),type='TH1F',title='Number of Reconstructed Tracks vs #phi (2D){0};#phi (deg);Number of Tracks'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=60,xmin=0,xmax=360,duration='run',opt='kAlwaysCreate')
172  shiftTrackEndcapGroup.defineHistogram('Residual_E;hResidual_{0}'.format(sideId[iside]),type='TH1F',title='Residuals for Xenon Straws{0};Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='lowStat',opt='kAlwaysCreate')
173  shiftTrackEndcapGroup.defineHistogram('Residual_E;hResidual_{0}'.format(sideId[iside]),type='TH1F',title='Residuals for Xenon Straws{0};Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
174  shiftTrackEndcapGroup.defineHistogram('Residual_noTubeHits_E;hResidual_noTubeHits_{0}'.format(sideId[iside]),type='TH1F',title='Residuals for Xenon Straws{0} (no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='lowStat',opt='kAlwaysCreate')
175  shiftTrackEndcapGroup.defineHistogram('Residual_noTubeHits_E;hResidual_noTubeHits_{0}'.format(sideId[iside]),type='TH1F',title='Residuals for Xenon Straws{0} (no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
176  shiftTrackEndcapGroup.defineHistogram('Residual_E_20GeV;hResidual_{0}_20GeV'.format(sideId[iside]),type='TH1F',title='Residuals for Xenon Straws{0} (After 20GeV pT cut);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
177  shiftTrackEndcapGroup.defineHistogram('Residual_noTubeHits_E_20GeV;hResidual_noTubeHits_{0}_20GeV'.format(sideId[iside]),type='TH1F',title='Residuals for Xenon Straws{0} (After 20GeV pT cut, no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
178  shiftTrackEndcapGroup.defineHistogram('TimeResidual_E;hTimeResidual_{0}'.format(sideId[iside]),type='TH1F',title='Time Residuals for Xenon Straws{0};Time Residual (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-20,xmax=20,duration='run',opt='kAlwaysCreate')
179  shiftTrackEndcapGroup.defineHistogram('TimeResidual_noTubeHits_E;hTimeResidual_noTubeHits_{0}'.format(sideId[iside]),type='TH1F',title='Time Residuals for Xenon Straws{0} (no tube hits);Time Residual (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-20,xmax=20,duration='run',opt='kAlwaysCreate')
180 
181  shiftTrackEndcapGroup.defineHistogram('TronTDist_E_Ar;hTronTDist_Ar_{0}'.format(sideId[iside]),type='TH1F',title='Trailing Edge Distribution on Track for Argon Straws{0};Trailing Edge (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=26,xmin=-0.5,xmax=80.75,duration='run',opt='kAlwaysCreate')
182  shiftTrackEndcapGroup.defineHistogram('AvgTroTDetPhi_E_Ar_x,AvgTroTDetPhi_E_Ar_y;hAvgTroTDetPhi_Ar_{0}'.format(sideId[iside]),type='TProfile',title='Avg. Trailing Edge on Track vs #phi (2D) for Argon{0};#phi (deg);Trailing Edge (ns)'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=nPhiBins,xmin=0,xmax=360,duration='run',opt='kAlwaysCreate')
183  shiftTrackEndcapGroup.defineHistogram('RtRelation_E_Ar_x,RtRelation_E_Ar_y;hrtRelation_Ar_{0}'.format(sideId[iside]),type='TH2F',title='R(t) Relation for Argon Straws{0};Measured Leading Edge (ns);Track-to-Wire Distance (mm)'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-12.5,xmax=81.25,ybins=50,ymin=0,ymax=2.5,duration='run',opt='kAlwaysCreate')
184  shiftTrackEndcapGroup.defineHistogram('DriftTimeonTrkDist_E_Ar;hDriftTimeonTrkDist_Ar_{0}'.format(sideId[iside]),type='TH1F',title='Drift Time Distribution on Track for Argon Straws{0};Drift Time (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=32,xmin=0,xmax=100,duration='run',opt='kAlwaysCreate')
185  shiftTrackEndcapGroup.defineHistogram('Residual_E_Ar;hResidual_Ar_{0}'.format(sideId[iside]),type='TH1F',title='Residuals for Argon Straws{0};Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='lowStat',opt='kAlwaysCreate')
186  shiftTrackEndcapGroup.defineHistogram('Residual_E_Ar;hResidual_Ar_{0}'.format(sideId[iside]),type='TH1F',title='Residuals for Argon Straws{0};Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
187  shiftTrackEndcapGroup.defineHistogram('Residual_noTubeHits_E_Ar;hResidual_noTubeHits_Ar_{0}'.format(sideId[iside]),type='TH1F',title='Residuals for Argon Straws{0} (no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='lowStat',opt='kAlwaysCreate')
188  shiftTrackEndcapGroup.defineHistogram('Residual_noTubeHits_E_Ar;hResidual_noTubeHits_Ar_{0}'.format(sideId[iside]),type='TH1F',title='Residuals for Argon Straws{0} (no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
189  shiftTrackEndcapGroup.defineHistogram('Residual_E_Ar_20GeV;hResidual_Ar_{0}_20GeV'.format(sideId[iside]),type='TH1F',title='Residuals for Argon Straws{0} (After 20GeV pT cut);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
190  shiftTrackEndcapGroup.defineHistogram('Residual_noTubeHits_E_Ar_20GeV;hResidual_noTubeHits_Ar_{0}_20GeV'.format(sideId[iside]),type='TH1F',title='Residuals for Argon Straws{0} (After 20GeV pT cut, no tube hits);Hit-to-Track Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-2.5,xmax=2.5,duration='run',opt='kAlwaysCreate')
191  shiftTrackEndcapGroup.defineHistogram('TimeResidual_E_Ar;hTimeResidual_Ar_{0}'.format(sideId[iside]),type='TH1F',title='Time Residuals for Argon Straws{0};Time Residual (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-20,xmax=20,duration='run',opt='kAlwaysCreate')
192  shiftTrackEndcapGroup.defineHistogram('TimeResidual_noTubeHits_E_Ar;hTimeResidual_noTubeHits_Ar_{0}'.format(sideId[iside]),type='TH1F',title='Time Residuals for Argon Straws{0} (no tube hits);Time Residual (ns);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=200,xmin=-20,xmax=20,duration='run',opt='kAlwaysCreate')
193  shiftTrackEndcapGroup.defineHistogram('WireToTrkPosition_E_Ar;hWireToTrkPosition_Ar_{0}'.format(sideId[iside]),type='TH1F',title='Track-to-Wire Distance for Argon{0};Track-to-Wire Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=100,xmin=-5,xmax=5,duration='run',opt='kAlwaysCreate')
194 
195  shiftTrackEndcapGroup.defineHistogram('WireToTrkPosition_E;hWireToTrkPosition_{0}'.format(sideId[iside]),type='TH1F',title='Track-to-Wire Distance for Xenon{0};Track-to-Wire Distance (mm);Entries'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=100,xmin=-5,xmax=5,duration='run',opt='kAlwaysCreate')
196  shiftTrackEndcapGroup.defineHistogram('AvgTroTDetPhi_E_x,AvgTroTDetPhi_E_y;hAvgTroTDetPhi_{0}'.format(sideId[iside]),type='TProfile',title='Avg. Trailing Edge on Track vs #phi (2D) for Xenon{0};#phi (deg);Trailing Edge (ns)'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=nPhiBins,xmin=0,xmax=360,duration='run',opt='kAlwaysCreate')
197  shiftTrackEndcapGroup.defineHistogram('NTrksperLB_x,NTrksperLB_y;hNTrksperLB_{0}'.format(sideId[iside]),type='TProfile',title='Avg. Number of Reconstructed Tracks per Even{0};Luminosity Block;Number of Tracks'.format(regionTag),path='TRT/Shift/{0}'.format(barrelOrEndcap[ibe]),xbins=maxLumiblock+1,xmin=-0.5,xmax=maxLumiblock+0.5,duration='run',opt='kAlwaysCreate')
198 
199  #Initialize Aging plots
200  for iL in range(5):
201  for iSide in range(2):
202  if ibe == 0:
203  if iL < 3:
204  agingGroup = helper.addGroup(algTRTMonitoringRun3ESD,'TRTAgingHistograms0{0}{1}'.format(iL,iSide))
205  agingGroup.defineHistogram('Trackz_All;trackz_m{0}_{1}_All'.format(Mod[iL],sideId[iSide]),type='TH1F',title='Number All Hits side {0} Layer {1};z [mm];Number of Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-750.,xmax=750.,duration='run',opt='kAlwaysCreate')
206  agingGroup.defineHistogram('Trackz_All;trackz_m{0}_{1}_All'.format(Mod[iL],sideId[iSide]),type='TH1F',title='Number All Hits side {0} Layer {1};z [mm];Number of Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-750.,xmax=750.,duration='lowStat',opt='kAlwaysCreate')
207  agingGroup.defineHistogram('Trackz_HT;trackz_m{0}_{1}_HT'.format(Mod[iL],sideId[iSide]),type='TH1F',title='Number HT Hits side {0} Layer {1};z [mm];Number of HT Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-750.,xmax=750.,duration='run',opt='kAlwaysCreate')
208  agingGroup.defineHistogram('Trackz_HT;trackz_m{0}_{1}_HT'.format(Mod[iL],sideId[iSide]),type='TH1F',title='Number HT Hits side {0} Layer {1};z [mm];Number of HT Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-750.,xmax=750.,duration='lowStat',opt='kAlwaysCreate')
209  if iL == 3:
210  agingGroup = helper.addGroup(algTRTMonitoringRun3ESD,'TRTAgingHistograms03{0}'.format(iSide))
211  agingGroup.defineHistogram('Trackz_All;trackz_m1_{0}_All_{1}'.format(sideId[iSide],Mod[iL]),type='TH1F',title='Number All Hits side {0} Layer 1 {1};z [mm];Number of Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=0.,xmax=725.,duration='run',opt='kAlwaysCreate')
212  agingGroup.defineHistogram('Trackz_All;trackz_m1_{0}_All_{1}'.format(sideId[iSide],Mod[iL]),type='TH1F',title='Number All Hits side {0} Layer 1 {1};z [mm];Number of Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=0.,xmax=725.,duration='lowStat',opt='kAlwaysCreate')
213  agingGroup.defineHistogram('Trackz_HT;trackz_m1_{0}_HT_{1}'.format(sideId[iSide],Mod[iL]),type='TH1F',title='Number HT Hits side {0} Layer 1 {1};z [mm];Number of HT Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=0.,xmax=725.,duration='run',opt='kAlwaysCreate')
214  agingGroup.defineHistogram('Trackz_HT;trackz_m1_{0}_HT_{1}'.format(sideId[iSide],Mod[iL]),type='TH1F',title='Number HT Hits side {0} Layer 1 {1};z [mm];Number of HT Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=0.,xmax=725.,duration='lowStat',opt='kAlwaysCreate')
215  if iL == 4:
216  agingGroup = helper.addGroup(algTRTMonitoringRun3ESD,'TRTAgingHistograms04{0}'.format(iSide))
217  agingGroup.defineHistogram('Trackz_All;trackz_m1_{0}_All_{1}'.format(sideId[iSide],Mod[iL]),type='TH1F',title='Number All Hits side {0} Layer 1 {1};z [mm];Number of Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-725.,xmax=0.,duration='run',opt='kAlwaysCreate')
218  agingGroup.defineHistogram('Trackz_All;trackz_m1_{0}_All_{1}'.format(sideId[iSide],Mod[iL]),type='TH1F',title='Number All Hits side {0} Layer 1 {1};z [mm];Number of Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-725.,xmax=0.,duration='lowStat',opt='kAlwaysCreate')
219  agingGroup.defineHistogram('Trackz_HT;trackz_m1_{0}_HT_{1}'.format(sideId[iSide],Mod[iL]),type='TH1F',title='Number HT Hits side {0} Layer 1 {1};z [mm];Number of HT Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-725.,xmax=0.,duration='run',opt='kAlwaysCreate')
220  agingGroup.defineHistogram('Trackz_HT;trackz_m1_{0}_HT_{1}'.format(sideId[iSide],Mod[iL]),type='TH1F',title='Number HT Hits side {0} Layer 1 {1};z [mm];Number of HT Hits'.format(sideId[iSide],Mod[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=-725.,xmax=0.,duration='lowStat',opt='kAlwaysCreate')
221  elif ibe == 1:
222  # prevent double booking of histograms here
223  if iL < 4:
224  agingGroup = helper.addGroup(algTRTMonitoringRun3ESD,'TRTAgingHistograms1{0}{1}'.format(iL,iSide))
225  agingGroup.defineHistogram('Trackr_All;trackr_E{0}_{1}_All'.format(sideId[iSide],gas[iL]),type='TH1F',title='Number All Hits E{0} {1};r [mm];Number of Hits'.format(sideId[iSide],gas[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=644.,xmax=1004.,duration='run',opt='kAlwaysCreate')
226  agingGroup.defineHistogram('Trackr_All;trackr_E{0}_{1}_All'.format(sideId[iSide],gas[iL]),type='TH1F',title='Number All Hits E{0} {1};r [mm];Number of Hits'.format(sideId[iSide],gas[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=644.,xmax=1004.,duration='lowStat',opt='kAlwaysCreate')
227  agingGroup.defineHistogram('Trackr_HT;trackr_E{0}_{1}_HT'.format(sideId[iSide],gas[iL]),type='TH1F',title='Number HT Hits E{0} {1};r [mm];Number of HT Hits'.format(sideId[iSide],gas[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=644.,xmax=1004.,duration='run',opt='kAlwaysCreate')
228  agingGroup.defineHistogram('Trackr_HT;trackr_E{0}_{1}_HT'.format(sideId[iSide],gas[iL]),type='TH1F',title='Number HT Hits E{0} {1};r [mm];Number of HT Hits'.format(sideId[iSide],gas[iL]),path='TRT/Aging/{0}'.format(barrelOrEndcap[ibe]),xbins=30,xmin=644.,xmax=1004.,duration='lowStat',opt='kAlwaysCreate')
229 
230  smryGroup = helper.addGroup(algTRTMonitoringRun3ESD,'SmryHistograms')
231  sumLabels = ['Events', 'Tracks Total', 'Tracks BA', 'Tracks BC', 'Tracks EA', 'Tracks EC', 'Transition Side A', 'Transition Side C']
232  smryGroup.defineHistogram('Summary;hSummary',weight='SummaryWeight',type='TH1F',title='Run Summary;;Entries',path='TRT/Shift/Summary',xbins=8,xmin=0,xmax=8,xlabels=sumLabels,opt='kAlwaysCreate')
233  smryGroup.defineHistogram('IntLum;hIntLum',weight='IntLumWeight',type='TH1F',title='Luminosity;;Luminosity [#mub^{1}]',path='TRT/Shift/Summary',xbins=1,xmin=0.,xmax=1.,opt='kAlwaysCreate')
234  smryGroup.defineHistogram('LBvsLum;hLBvsLum',weight='LBvsLumWeight',type='TH1F',title='Luminosity;Luminosity Bin;Luminosity [#mub^{1}]',path='TRT/Shift/Summary',xbins=2000,xmin=0.,xmax=2000.,opt='kAlwaysCreate')
235  smryGroup.defineHistogram('LBvsTime_x,LBvsTime_y;hLBvsTime',type='TProfile',title='Time;Luminosity Bin;Time [s]',path='TRT/Shift/Summary',xbins=2000,xmin=0.,xmax=2000.,opt='kAlwaysCreate')
236 
237  acc = helper.result()
238  result.merge(acc)
239  return result
240 
241 if __name__ == '__main__':
242  # Setup logs
243  from AthenaCommon.Logging import log
244  from AthenaCommon.Constants import DEBUG
245  log.setLevel(DEBUG)
246 
247  # Set the Athena configuration flags
248  from AthenaConfiguration.AllConfigFlags import initConfigFlags
249  flags = initConfigFlags()
250  flags.Input.Files = ['/afs/cern.ch/work/y/ysmirnov/public/NikitasEsdToFeedToTrtMonitoring/data18_13TeV.00349944.physics_Main.daq.ESD._lb0244._f1138._0001.root']
251  flags.Input.isMC = False
252  flags.Output.HISTFileName = 'TRTMonitoringRun3_ToolOutput.root'
253  flags.GeoModel.Align.Dynamic = False
254  flags.Detector.GeometryPixel = True
255  flags.Detector.GeometrySCT = True
256  flags.Detector.GeometryTRT = True
257  flags.IOVDb.GlobalTag = "CONDBR2-BLKPA-RUN2-03"
258  flags.lock()
259 
260  # Initialize configuration object, add accumulator, merge, and run.
261  from AthenaConfiguration.MainServicesConfig import MainServicesCfg
262  from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg
263  cfg = MainServicesCfg(flags)
264  cfg.merge(PoolReadCfg(flags))
265 
266  # Force special handling of converters
267  from TrkConfig.TrackCollectionReadConfig import TrackCollectionReadCfg
268  cfg.merge (TrackCollectionReadCfg (flags, 'CombinedInDetTracks'))
269  cfg.merge (TrackCollectionReadCfg (flags, 'Tracks'))
270 
271  TRTMonitoringRun3Acc = TRTMonitoringRun3ESD_AlgConfig(flags)
272 
273  cfg.merge(TRTMonitoringRun3Acc)
274  cfg.run(200)
python.TRT_ConditionsServicesConfig.TRT_StrawStatusSummaryToolCfg
def TRT_StrawStatusSummaryToolCfg(flags, name="TRT_StrawStatusSummaryTool", **kwargs)
Definition: TRT_ConditionsServicesConfig.py:23
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
vtune_athena.format
format
Definition: vtune_athena.py:14
python.InDetTrackSelectionToolConfig.InDetTrackSelectionTool_Loose_Cfg
def InDetTrackSelectionTool_Loose_Cfg(flags, name="InDetTrackSelectionTool_Loose", **kwargs)
Configs based on CutLevel Loose #####.
Definition: InDetTrackSelectionToolConfig.py:36
python.TRT_DriftFunctionToolConfig.TRT_DriftFunctionToolCfg
def TRT_DriftFunctionToolCfg(flags, name="InDetTRT_DriftFunctionTool", **kwargs)
Definition: TRT_DriftFunctionToolConfig.py:8
TRTMonitoringRun3ESD_Alg.TRTMonitoringRun3ESD_AlgConfig
def TRTMonitoringRun3ESD_AlgConfig(flags)
Definition: TRTMonitoringRun3ESD_Alg.py:11
python.TrkTrackSummaryToolConfig.InDetTrackSummaryToolCfg
def InDetTrackSummaryToolCfg(flags, name='InDetTrackSummaryTool', **kwargs)
Definition: TrkTrackSummaryToolConfig.py:22
python.MainServicesConfig.MainServicesCfg
def MainServicesCfg(flags, LoopMgr='AthenaEventLoopMgr')
Definition: MainServicesConfig.py:312
plotBeamSpotVxVal.range
range
Definition: plotBeamSpotVxVal.py:194
Constants
some useful constants -------------------------------------------------—
python.IOVDbSvcConfig.addFoldersSplitOnline
def addFoldersSplitOnline(flags, detDb, onlineFolders, offlineFolders, className=None, extensible=False, addMCString='_OFL', splitMC=False, tag=None, forceDb=None, modifiers='')
Definition: IOVDbSvcConfig.py:167
python.AllConfigFlags.initConfigFlags
def initConfigFlags()
Definition: AllConfigFlags.py:19
python.TRT_ConditionsServicesConfig.TRT_StrawNeighbourSvcCfg
def TRT_StrawNeighbourSvcCfg(flags, name="TRT_StrawNeighbourSvc", **kwargs)
Definition: TRT_ConditionsServicesConfig.py:43
str
Definition: BTagTrackIpAccessor.cxx:11
python.PoolReadConfig.PoolReadCfg
def PoolReadCfg(flags)
Definition: PoolReadConfig.py:71
python.TRT_ConditionsServicesConfig.TRT_CalDbToolCfg
def TRT_CalDbToolCfg(flags, name="TRT_CalDbTool", **kwags)
Definition: TRT_ConditionsServicesConfig.py:9