12 '''Function to configures some algorithms in the monitoring system.'''
13 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
14 result = ComponentAccumulator()
17 if inputFlags.DQ.Environment
in (
'tier0Raw',):
20 from LumiBlockComps.BunchCrossingCondAlgConfig
import BunchCrossingCondAlgCfg
21 result.merge(BunchCrossingCondAlgCfg(inputFlags))
23 from AthenaMonitoring
import AthMonitorCfgHelper
24 helper = AthMonitorCfgHelper(inputFlags,
'Run3AFPMonitorCfg')
26 from AthenaConfiguration.ComponentFactory
import CompFactory
29 afpSiLayerAlgorithmFac = CompFactory.AFPSiLayerAlgorithm
30 afpSiLayerAlgorithm = helper.addAlgorithm(afpSiLayerAlgorithmFac,
'AFPSiLayerAlg')
33 afpToFAlgorithmFac = CompFactory.AFPToFAlgorithm
34 afpToFAlgorithm = helper.addAlgorithm(afpToFAlgorithmFac,
'AFPToFAlg')
36 afpToFSiTAlgorithmFac = CompFactory.AFPToFSiTAlgorithm
37 afpToFSiTAlgorithm = helper.addAlgorithm(afpToFSiTAlgorithmFac,
'AFPToFSiTAlg')
43 AFPSiGroup = helper.addGroup(afpSiLayerAlgorithm,
'AFPSiLayerTool',
'AFP/')
44 AFPToFGroup = helper.addGroup(afpToFAlgorithm,
'AFPToFTool',
'AFP/')
45 AFPToFSiTGroup = helper.addGroup(afpToFSiTAlgorithm,
'AFPToFSiTTool',
'AFP/')
47 xLabelsStations = [
'farAside',
'nearAside',
'nearCside',
'farCside']
48 xLabelsStationsPlanes = [
'fA3',
'fA2',
'fA1',
'fA0',
'nA3',
'nA2',
'nA1',
'nA0',
'nC0',
'nC1',
'nC2',
'nC3',
'fC0',
'fC1',
'fC2',
'fC3']
49 xLabelsForEventsPerStation = [
'fA',
'-',
'-',
'-',
'nA',
'-',
'-',
'-',
'nC',
'-',
'-',
'-',
'fC',
'-',
'-',
'-', ]
50 xLabelsHitBarVsTrain = [
'A',
'B',
'C',
'D']
51 yLabelsHitBarVsTrain = [
'0',
'1',
'2',
'3']
52 xLabelsToFEff = [
'A',
'B',
'C',
'D',
'Tr']
53 yLabelsToFEff = [
'0',
'1',
'2',
'3']
55 AFPSiGroup.defineHistogram(
'lb,nSiHits', title=
'Total number of hits divided by number of events;lumiblock;total number of hits', type=
'TProfile', path=
'SiT/', xbins=2000, xmin=0.5, xmax=2000.5)
56 AFPSiGroup.defineHistogram(
'eventsPerStation', title=
'Number of events per stations; station; events', type=
'TH1I', path=
'SiT/Aux/', xbins=16, xmin=-0.5, xmax=15.5, xlabels=xLabelsForEventsPerStation )
57 AFPSiGroup.defineHistogram(
'clustersInPlanes', title=
'Number of clusters per planes; plane; clusters', type=
'TH1I', path=
'SiT/Aux/', xbins=16, xmin=-0.5, xmax=15.5, xlabels=xLabelsStationsPlanes )
58 AFPSiGroup.defineHistogram(
'lb,muPerBX', title=
'<mu>;lumiBlock;<mu>', type=
'TProfile', path=
'SiT/', xbins=2000, xmin=0.5, xmax=2000.5)
59 AFPSiGroup.defineHistogram(
'planeHitsAllMU', title=
'Number of hits per plane divided by <mu>;plane; hits/<mu>', type=
'TH1F', path=
'SiT/HitsPerPlanes/', xbins=16, xmin=-0.5, xmax=15.5, weight =
'weightAllPlanes', xlabels=xLabelsStationsPlanes )
60 AFPSiGroup.defineHistogram(
'numberOfHitsPerStation', title=
'Number of hits per station; station; hits', type=
'TH1I', path=
'SiT/Aux/', xbins=4, xmin=-0.5, xmax=3.5, xlabels=xLabelsStations)
61 AFPSiGroup.defineHistogram(
'lbEvents;NumberOfEventsPerLumiblock',title=
'Number of events per lumiblock; lumiblock; events', type=
'TH1I', path=
'SiT/Aux/', xbins=2000, xmin=0.5, xmax=2000.5)
62 AFPSiGroup.defineHistogram(
'lbHits;NumberOfHitsPerLumiblock',title=
'Number of hits per lumiblock; lumiblock; hits', type=
'TH1I', path=
'SiT/Aux/', xbins=2000, xmin=0.5, xmax=2000.5)
65 AFPSiGroup.defineHistogram(
'bcidAll', title=
'(All) Paired bunches - SiT; BX; entries', type=
'TH1I', path=
'SiT/BCID_Mask', xbins=4000, xmin=-0.5, xmax=3999.5)
66 AFPSiGroup.defineHistogram(
'bcidFront', title=
'(Front) Paired bunches - SiT; BX; entries', type=
'TH1I', path=
'SiT/BCID_Mask', xbins=4000, xmin=-0.5, xmax=3999.5)
67 AFPSiGroup.defineHistogram(
'bcidMiddle', title=
'(Middle) Paired bunches - SiT; BX; entries', type=
'TH1I', path=
'SiT/BCID_Mask', xbins=4000, xmin=-0.5, xmax=3999.5)
68 AFPSiGroup.defineHistogram(
'bcidEnd', title=
'(End) Paired bunches - SiT; BX; entries', type=
'TH1I', path=
'SiT/BCID_Mask', xbins=4000, xmin=-0.5, xmax=3999.5)
70 AFPSiGroup.defineHistogram(
'lbEventsStationsAll', title=
'Number of events per lumiblock for all stations;lumiblock; events', type=
'TH1I', path=
'SiT/StationEvents/', xbins=2000, xmin=0.5, xmax=2000.5)
71 AFPSiGroup.defineHistogram(
'numberOfEventsPerLumiblockFront', title=
'(Front) Number of events per lumiblock for all stations;lumiblock; events', type=
'TH1I', path=
'SiT/Aux/', xbins=2000, xmin=0.5, xmax=2000.5)
72 AFPSiGroup.defineHistogram(
'numberOfEventsPerLumiblockMiddle', title=
'(Middle) Number of events per lumiblock for all stations;lumiblock; events', type=
'TH1I', path=
'SiT/Aux/', xbins=2000, xmin=0.5, xmax=2000.5)
73 AFPSiGroup.defineHistogram(
'numberOfEventsPerLumiblockEnd', title=
'(End) Number of events per lumiblock for all stations;lumiblock; events', type=
'TH1I', path=
'SiT/Aux/', xbins=2000, xmin=0.5, xmax=2000.5)
76 AFPToFGroup.defineHistogram(
'lb,nTofHits', title=
'Multiplicity;lumiblock;total number of Hits', type=
'TProfile', path=
'ToF/', xbins=2000, xmin=0.5, xmax=2000.5)
78 AFPToFGroup.defineHistogram(
'lb,muPerBXToF', title=
'<mu>;lumiblock;<mu>', type=
'TProfile', path=
'ToF/', xbins=2000, xmin=0.5, xmax=2000.5)
80 AFPToFGroup.defineHistogram(
'lbAandCToFEvents', title=
'Number of events in ToF stations A and C vs lb; lumiblock; events', type=
'TH1I', path=
'ToF/Events', xbins=2000, xmin=0.5, xmax=2000.5)
81 AFPToFGroup.defineHistogram(
'lbAToFEvents', title=
'Number of events in ToF station A vs lb; lumiblock; events', type=
'TH1I', path=
'ToF/Events', xbins=2000, xmin=0.5, xmax=2000.5)
82 AFPToFGroup.defineHistogram(
'lbCToFEvents', title=
'Number of events in ToF station C vs lb; lumiblock; events', type=
'TH1I', path=
'ToF/Events', xbins=2000, xmin=0.5, xmax=2000.5)
85 AFPToFGroup.defineHistogram(
'bcidAllToF', title=
'(All) Paired bunches - ToF; BX; entries', type=
'TH1I', path=
'ToF/BCID_Mask', xbins=4000, xmin=-0.5, xmax=3999.5)
86 AFPToFGroup.defineHistogram(
'bcidFrontToF', title=
'(Front) Paired bunches - ToF; BX; entries', type=
'TH1I', path=
'ToF/BCID_Mask', xbins=4000, xmin=-0.5, xmax=3999.5)
87 AFPToFGroup.defineHistogram(
'bcidMiddleToF', title=
'(Middle) Paired bunches - ToF; BX; entries', type=
'TH1I', path=
'ToF/BCID_Mask', xbins=4000, xmin=-0.5, xmax=3999.5)
88 AFPToFGroup.defineHistogram(
'bcidEndToF', title=
'(End) Paired bunches - ToF; BX; entries', type=
'TH1I', path=
'ToF/BCID_Mask', xbins=4000, xmin=-0.5, xmax=3999.5)
91 AFPToFSiTGroup.defineHistogram(
'lqBar_tight_A,fsp0_rows_tight_A;ToFSiTCorrTightXA', title=
'LQBar vs FSP0 X dim with FSP2 Side A;Train;FSP0 x-pix [50 um]', type=
'TH2I', path=
'ToFSiTCorr/', xbins=20, xmin=-1, xmax=4, ybins=34, ymin=-0.05, ymax=335.5)
92 AFPToFSiTGroup.defineHistogram(
'lqBar_tight_C,fsp0_rows_tight_C;ToFSiTCorrTightXC', title=
'LQBar vs FSP0 X dim with FSP2 Side C;Train;FSP0 x-pix [50 um]', type=
'TH2I', path=
'ToFSiTCorr/', xbins=20, xmin=-1, xmax=4, ybins=34, ymin=-0.05, ymax=335.5)
93 AFPToFSiTGroup.defineHistogram(
'lqBar_tight_A,fsp0_columns_tight_A;ToFSiTCorrTightYA', title=
'LQBar vs FSP0 columns with FSP2 hit Side A;Train;FSP0 y-pix [250 um]', type=
'TH2I', path=
'ToFSiTCorr/', xbins=20, xmin=-1, xmax=4, ybins=80, ymin=-0.5, ymax=79.5)
94 AFPToFSiTGroup.defineHistogram(
'lqBar_tight_C,fsp0_columns_tight_C;ToFSiTCorrTightYC', title=
'LQBar vs FSP0 columns with FSP2 hit Side C;Train;FSP0 y-pix [250 um]', type=
'TH2I', path=
'ToFSiTCorr/', xbins=20, xmin=-1, xmax=4, ybins=80, ymin=-0.5, ymax=79.5)
96 AFPToFSiTGroup.defineHistogram(
'trainHits_A,fsp0_rows_tight_A;ToFSiTCorrTrainHitsXA', title=
'# hits in train vs FSP0 X dim with FSP2 Side A;Train hits (train+numHits/5);FSP0 x-pix [50 um]', type=
'TH2I', path=
'ToFSiTCorr/', xbins=25, xmin=-1, xmax=4, ybins=34, ymin=-0.05, ymax=335.5)
97 AFPToFSiTGroup.defineHistogram(
'trainHits_C,fsp0_rows_tight_C;ToFSiTCorrTrainHitsXC', title=
'# hits in train vs FSP0 X dim with FSP2 Side C;Train hits (train+numHits/5);FSP0 x-pix [50 um]', type=
'TH2I', path=
'ToFSiTCorr/', xbins=25, xmin=-1, xmax=4, ybins=34, ymin=-0.05, ymax=335.5)
98 AFPToFSiTGroup.defineHistogram(
'trainHits_A,fsp0_columns_tight_A;ToFSiTCorrTrainHitsYA', title=
'# hits in train vs FSP0 columns with FSP2 hit Side A;Train hits (train+numHits/5);FSP0 y-pix [250 um]', type=
'TH2I', path=
'ToFSiTCorr/', xbins=25, xmin=-1, xmax=4, ybins=80, ymin=-0.5, ymax=79.5)
99 AFPToFSiTGroup.defineHistogram(
'trainHits_C,fsp0_columns_tight_C;ToFSiTCorrTrainHitsYC', title=
'# hits in train vs FSP0 columns with FSP2 hit Side C;Train hits (train+numHits/5);FSP0 y-pix [250 um]', type=
'TH2I', path=
'ToFSiTCorr/', xbins=25, xmin=-1, xmax=4, ybins=80, ymin=-0.5, ymax=79.5)
101 AFPToFSiTGroup.defineHistogram(
'tofHits_A,fsp0Hits_A;ToFSiTNumHitsA', title=
'TOF vs FSP0 num. hits Side A;#Hit bars;FSP0 multiplicity', type=
'TH2F', path=
'ToFSiTCorr/', xbins=17, xmin=0, xmax=16, ybins=150, ymin=-0.5, ymax=149.5)
102 AFPToFSiTGroup.defineHistogram(
'tofHits_C,fsp0Hits_C;ToFSiTNumHitsC', title=
'TOF vs FSP0 num. hits Side C;#Hit bars;FSP0 multiplicity', type=
'TH2F', path=
'ToFSiTCorr/', xbins=17, xmin=0, xmax=16, ybins=150, ymin=-0.5, ymax=149.5)
104 AFPToFSiTGroup.defineHistogram(
'tof_eff_OFF_passed_A, tof_eff_OFF_bars_A, tof_eff_OFF_trains_A ;Efficiency_A', title=
'Efficiency ToF Side A;Bar;Train;Efficiency', type=
'TEfficiency', path=
'ToFSiT/Efficiency/', xbins=5, xmin=0, xmax=5, ybins=4, ymin=0, ymax=4, xlabels=xLabelsToFEff, ylabels=yLabelsToFEff)
105 AFPToFSiTGroup.defineHistogram(
'tof_eff_OFF_passed_C, tof_eff_OFF_bars_C, tof_eff_OFF_trains_C ;Efficiency_C', title=
'Efficiency ToF Side C;Bar;Train;Efficiency', type=
'TEfficiency', path=
'ToFSiT/Efficiency/', xbins=5, xmin=0, xmax=5, ybins=4, ymin=0, ymax=4, xlabels=xLabelsToFEff, ylabels=yLabelsToFEff)
107 AFPToFSiTGroup.defineHistogram(
'lqBar_A,fs_rows_full_A;ToFSiTCorr_FullXA', title=
'LQBar vs FS rows Full Side A;Train;FSP x-pix [50 um]', type=
'TH2F', path=
'ToFSiTCorr/', xbins=20, xmin=-1, xmax=4, ybins=346, ymin=-10.5, ymax=335.5)
108 AFPToFSiTGroup.defineHistogram(
'lqBar_C,fs_rows_full_C;ToFSiTCorr_FullXC', title=
'LQBar vs FS rows Full Side C;Train;FSP x-pix [50 um]', type=
'TH2F', path=
'ToFSiTCorr/', xbins=20, xmin=-1, xmax=4, ybins=346, ymin=-10.5, ymax=335.5)
111 AFPSiGroup.defineHistogram(
'hitPerPlaneEventMuIndex,hitsPerPlaneEventsMu',
112 title=
'Plane Occupancy;Global Plane Index;Hits on Plane',
114 path=
'SiT/PlaneOccupancy/',
115 xbins=16, xmin=-0.5, xmax=15.5,
116 xlabels=xLabelsStationsPlanes)
118 planeList = [
'P0',
'P1',
'P2',
'P3']
119 array_corr = helper.addArray([planeList], afpToFSiTAlgorithm,
'AFPToFSiTTool', topPath=
'AFP/ToFSiTCorr/')
120 array_corr.defineHistogram(
'lqBar_A,fs_rows_A;ToFSiTCorrXA_{0}', type=
'TH2F', title=
'LQBar vs FS{0} rows Side A;Train;FS{0} x-pix [50 um]', xbins=20, xmin=-1, xmax=4, ybins=346, ymin=-10.5, ymax=335.5)
121 array_corr.defineHistogram(
'lqBar_C,fs_rows_C;ToFSiTCorrXC_{0}', type=
'TH2F', title=
'LQBar vs FS{0} rows Side C;Train;FS{0} x-pix [50 um]', xbins=20, xmin=-1, xmax=4, ybins=346, ymin=-10.5, ymax=335.5)
122 array_corr.defineHistogram(
'lqBar_A,fs_columns_A;ToFSiTCorrYA_{0}', type=
'TH2F', title=
'LQBar vs FS{0} columns Side A;Train;FS{0} y-pix [250 um]', xbins=20, xmin=-1, xmax=4, ybins=85, ymin=-5.5, ymax=79.5)
123 array_corr.defineHistogram(
'lqBar_C,fs_columns_C;ToFSiTCorrYC_{0}', type=
'TH2F', title=
'LQBar vs FS{0} columns Side C;Train;FS{0} y-pix [250 um]', xbins=20, xmin=-1, xmax=4, ybins=85, ymin=-5.5, ymax=79.5)
127 layerList = [
'P0',
'P1',
'P2',
'P3']
128 stationList = [
'farAside',
'nearAside',
'nearCside',
'farCside']
130 array = helper.addArray([stationList,layerList], afpSiLayerAlgorithm,
'AFPSiLayerTool', topPath =
'AFP/SiT/')
132 array.defineHistogram(
'pixelColIDChip', title=
'Hits per column for station {0}, layer {1};ColID; entries', path=
'PixelColIDChip/{0}', xbins=80, xmin=0.5, xmax=80.5)
133 array.defineHistogram(
'pixelRowIDChip', title=
'Hits per row for station {0}, layer {1};RowID; entries', path=
'PixelRowIDChip/{0}', xbins=336, xmin=0.5, xmax=336.5)
134 array.defineHistogram(
'pixelRowIDChip,pixelColIDChip', title=
'Hitmap for station {0}, layer {1};RowID;ColID', type=
'TH2I', path=
'pixelColRow2D/{0}', xbins=336, xmin=0.5, xmax=336.5, ybins=80, ymin=0.5, ymax=80.5)
135 array.defineHistogram(
'timeOverThreshold', type=
'TH1I', title=
'Time over threshold for station {0}, layer {1};timeOverThreshold; entries', path=
'SiTimeOverThreshold/{0}', xbins=16, xmin=0.5, xmax=16.5)
137 array.defineHistogram(
'clusterY,clusterX', title=
'Cluster position in station {0} Layer {1};x [mm];y [mm]', type=
'TH2F', path=
'Cluster/{0}', xbins=336, xmin=0.0, xmax=17.0, ybins=80, ymin=0.0, ymax=20.0)
138 array.defineHistogram(
'sit_plane_eff_passed, sit_plane_eff_triedY, sit_plane_eff_triedX ;Efficiency', title=
'Efficiency for station {0} Layer {1};x [mm];y [mm]', type=
'TEfficiency', path=
'Efficiency/{0}', xbins=336, xmin=0.0, xmax=17.0, ybins=80, ymin=0.0, ymax=20.0)
140 array.defineHistogram(
'lbClustersPerPlanesAll,clustersPerPlaneAllPP', title=
'(All) Number of clusters in station {0}, plane {1} per lumiblock divided by <mu> per event;lumiblock;clusters/<mu> per event', type=
'TProfile', path=
'Synchronization/Clusters/', xbins=2000, xmin=0.5, xmax=2000.5)
141 array.defineHistogram(
'lbClustersPerPlanesFront,clustersPerPlaneFrontPP', title=
'(Front) Number of clusters in station {0}, plane {1} per lumiblock divided by <mu> per event;lumiblock; clusters/<mu> per event', type=
'TProfile', path=
'Synchronization/Clusters/Front/', xbins=2000, xmin=0.5, xmax=2000.5)
142 array.defineHistogram(
'lbClustersPerPlanesMiddle,clustersPerPlaneMiddlePP', title=
'(Middle) Number of clusters in station {0}, plane {1} per lumiblock divided by <mu> per event; lumiblock;clusters/<mu> per event', type=
'TProfile', path=
'Synchronization/Clusters/Middle/', xbins=2000, xmin=0.5, xmax=2000.5)
143 array.defineHistogram(
'lbClustersPerPlanesEnd,clustersPerPlaneEndPP', title=
'(End) Number of clusters in station {0}, plane {1} per lumiblock divided by <mu> per event; lumiblock;clusters/<mu> per event', type=
'TProfile', path=
'Synchronization/Clusters/End/', xbins=2000, xmin=0.5, xmax=2000.5)
145 array.defineHistogram(
'lbhitsPerPlaneProfile, hitsPerPlaneProfile', title=
'Number of hits in station {0}, plane {1} per lumiblock per event divided by <mu>;lumiblock; hits/<mu> per event', type=
'TProfile', path=
'HitsPerPlanesVsLb/', xbins=2000, xmin=0.5, xmax=2000.5)
147 array.defineHistogram(
'clusterToT', title=
'Sum of all hits\' ToT in each cluster, station {0}, layer {1};Cluster ToT; Counts', type=
'TH1I', path=
'ClusterToT/', xbins=18, xmin=0.5, xmax=18.5)
149 array = helper.addArray([stationList], afpSiLayerAlgorithm,
'AFPSiLayerTool', topPath=
'AFP/SiT/')
151 array.defineHistogram(
'planeHits', type=
'TH1I', title=
'Number of hits per plane, station {0};plane; hits', path=
'HitsPerPlanes', xbins=4, xmin=-0.5, xmax=3.5)
152 array.defineHistogram(
'trackY,trackX', title=
'Number of tracks in AFP station {0};x [mm];y [mm]', type=
'TH2F', path=
'Track', xbins=336, xmin=0.0, xmax=17.0, ybins=80, ymin=0.0, ymax=20.0)
153 array.defineHistogram(
'lbEventsStations', title=
'Number of events per lumiblock, station {0};lumiblock; events', type=
'TH1I', path=
'StationEvents/', xbins=2000, xmin=0.5, xmax=2000.5)
156 array.defineHistogram(
'lbTracksAll,Total_tracks_All_profile', title =
'(All) Tracks vs lumiblock divided by <mu> per event, station {0};lumiblock;tracks/<mu> per event', type=
'TProfile', path=
'Synchronization/Tracks', xbins=2000, xmin=0.5, xmax=2000.5)
157 array.defineHistogram(
'lbTracksFront,Total_tracks_Front_profile', title =
'(Front) Tracks vs lumiblock divided by <mu> per event, station {0}; lumiblock;tracks/<mu> per event', type=
'TProfile', path=
'Synchronization/Tracks/Front', xbins=2000, xmin=0.5, xmax=2000.5)
158 array.defineHistogram(
'lbTracksMiddle,Total_tracks_Middle_profile', title =
'(Middle) Tracks vs lumiblock divided by <mu> per event, station {0}; lumiblock;tracks/<mu> per event', type=
'TProfile', path=
'Synchronization/Tracks/Middle', xbins=2000, xmin=0.5, xmax=2000.5)
159 array.defineHistogram(
'lbTracksEnd,Total_tracks_End_profile', title =
'(End) Tracks vs lumiblock divided by <mu> per event, station {0}; lumiblock;tracks/<mu> per event', type=
'TProfile', path=
'Synchronization/Tracks/End', xbins=2000, xmin=0.5, xmax=2000.5)
161 arrayToF = helper.addArray([stationList], afpToFAlgorithm,
'AFPToFTool', topPath=
'AFP/ToF/')
163 arrayToF.defineHistogram(
'barInTrainID,trainID', title=
'ToF hit bar vs train {0};barInTrainID;trainID', type=
'TH2I', path=
'HitBarvsTrain/',xbins=4,xmin=-0.5,xmax=3.5,ybins=4,ymin=-0.5,ymax=3.5, xlabels = xLabelsHitBarVsTrain, ylabels = yLabelsHitBarVsTrain)
165 trainIDListToF = [
'T0',
'T1',
'T2',
'T3']
166 barInTrainIDListToF = [
'A',
'B',
'C',
'D']
167 sideListToF = [
'sideA',
'sideC']
170 arrayToFSideBar = helper.addArray([sideListToF, trainIDListToF, barInTrainIDListToF], afpToFAlgorithm,
'AFPToFTool', topPath =
'AFP/ToF/')
171 arrayToFSideBar.defineHistogram(
'lbToFBar', title=
'ToF hits vs lumiblock divided by <mu> (train {1}, bar {2}), {0}; lb; hits/<mu>', type=
'TH1F', path=
'ToFHitsVsLb/{0}/BarsAll', xbins=2000, xmin=0.5, xmax=2000.5, weight =
'lbToFBar_Weight')
172 arrayToFSideBar.defineHistogram(
'lbToFBarPerEvent,hitsPerBarPP', title=
'ToF hits per event / <mu> (train {1}, bar {2}), {0}; lb; hits/<mu> per event', type=
'TProfile', path=
'ToFHitsVsLbPerEvent/{0}/BarsAll', xbins=2000, xmin=0.5, xmax=2000.5)
175 arrayToFSideTrain = helper.addArray([sideListToF, trainIDListToF], afpToFAlgorithm,
'AFPToFTool', topPath =
'AFP/ToF/')
176 arrayToFSideTrain.defineHistogram(
'barInTrainIDSide', title=
'Total hits per bars in {0} {1}; barID; hits', type=
'TH1I', path=
'HitsPerBarsInTrain/{0}', xbins=4, xmin=-0.5, xmax=3.5)
178 arrayToFSideTrain.defineHistogram(
'lbToFTrainAll', title=
'(All) Hits per train / <mu>, {0} {1}; lb; hits/<mu>', type=
'TH1F', path=
'ToFHitsVsLb/{0}/All/', xbins=2000, xmin=0.5, xmax=2000.5, weight=
'weightToFTrainAll')
179 arrayToFSideTrain.defineHistogram(
'lbToFTrainFront', title=
'(Front) Hits per train / <mu>, {0} {1}; lb; hits/<mu>', type=
'TH1F', path=
'ToFHitsVsLb/{0}/Front/', xbins=2000, xmin=0.5, xmax=2000.5, weight=
'weightToFTrainFront')
180 arrayToFSideTrain.defineHistogram(
'lbToFTrainMiddle', title=
'(Middle) Hits per train / <mu>, {0} {1}; lb; hits/<mu>', type=
'TH1F', path=
'ToFHitsVsLb/{0}/Middle/', xbins=2000, xmin=0.5, xmax=2000.5, weight=
'weightToFTrainMiddle')
181 arrayToFSideTrain.defineHistogram(
'lbToFTrainEnd', title=
'(End) Hits per train / <mu>, {0} {1}; lb; hits/<mu>', type=
'TH1F', path=
'ToFHitsVsLb/{0}/End/', xbins=2000, xmin=0.5, xmax=2000.5, weight=
'weightToFTrainEnd')
183 arrayToFSideTrain.defineHistogram(
'lbToFPerEvent,hitsPerTrainAllPP', title=
'(All) Hits per train per event / <mu>, {0} {1}; lb; hits/<mu> per event', type=
'TProfile', path=
'ToFHitsVsLbPerEvent/{0}/All/', xbins=2000, xmin=0.5, xmax=2000.5)
184 arrayToFSideTrain.defineHistogram(
'lbToFPerEventFront,hitsPerTrainFrontPP', title=
'(Front) Hits per train per event / <mu>, {0} {1}; lb; hits/<mu> per event', type=
'TProfile', path=
'ToFHitsVsLbPerEvent/{0}/Front/', xbins=2000, xmin=0.5, xmax=2000.5)
185 arrayToFSideTrain.defineHistogram(
'lbToFPerEventMiddle,hitsPerTrainMiddlePP', title=
'(Middle) Hits per train per event / <mu>, {0} {1}; lb; hits/<mu> per event', type=
'TProfile', path=
'ToFHitsVsLbPerEvent/{0}/Middle/', xbins=2000, xmin=0.5, xmax=2000.5)
186 arrayToFSideTrain.defineHistogram(
'lbToFPerEventEnd,hitsPerTrainEndPP', title=
'(End) Hits per train per event / <mu>, {0} {1}; lb; hits/<mu> per event', type=
'TProfile', path=
'ToFHitsVsLbPerEvent/{0}/End/', xbins=2000, xmin=0.5, xmax=2000.5)
189 arrayToFSide = helper.addArray([sideListToF], afpToFAlgorithm,
'AFPToFTool', topPath =
'AFP/ToF/')
190 arrayToFSide.defineHistogram(
'lbToFStationPerEvent,hitsPerStationPP', title=
'ToF hits per event / <mu>, {0}; lb; hits/<mu> per event', type=
'TProfile', path=
'ToFHitsVsLbPerEvent/', xbins=2000, xmin=0.5, xmax=2000.5)
191 arrayToFSide.defineHistogram(
'numberOfHit', title=
'Number of hit per bar, {0};bar', path=
'', xbins=4, xmin=-0.5, xmax=3.5)
192 arrayToFSide.defineHistogram(
'barInTrainAll', title=
'Number of hits in bar, {0}; barInTrain;hits', type=
'TH1I', path=
'HitsPerBarsInTrain/', xbins=16, xmin=-0.5, xmax=15.5)
193 arrayToFSide.defineHistogram(
'ToFHits_side', title=
'ToF hits per lumiblock divided by <mu>, {0}; lb; hits', type=
'TH1F', path=
'StationHits/', xbins=2000, xmin=0.5, xmax=2000.5, weight=
'ToFHits_MU_Weight')
196 chan_combinations_list = [
"0AB",
"0AC",
"0AD",
"0BC",
"0BD",
"0CD",
"1AB",
"1AC",
"1AD",
"1BC",
"1BD",
"1CD",
197 "2AB",
"2AC",
"2AD",
"2BC",
"2BD",
"2CD",
"3AB",
"3AC",
"3AD",
"3BC",
"3BD",
"3CD"]
198 arrayToFCrossBarDeltaT = helper.addArray([chan_combinations_list], afpToFAlgorithm,
'AFPToFTool', topPath=
'AFP/ToF/')
199 arrayToFCrossBarDeltaT.defineHistogram(
'crossBarDeltaT_A', title=
'ToF cross-bar <delta> time (channel combination {0}), side A; <delta> t, [ps]; events', type=
'TH1D', path=
'DeltaTime/sideA', xbins=400, xmin=-1500.0, xmax=1500.0)
200 arrayToFCrossBarDeltaT.defineHistogram(
'crossBarDeltaT_C', title=
'ToF cross-bar <delta> time (channel combination {0}), side C; <delta> t, [ps]; events', type=
'TH1D', path=
'DeltaTime/sideC', xbins=400, xmin=-1500.0, xmax=1500.0)
202 result.merge(helper.result())