6 @file InDetGlobalTrackMonAlgCfg.py
7 @author Leonid Serkin and Per Johansson
9 @brief Configuration for Run 3 based on InDetGlobalTrackMonTool.cxx
12 from math
import pi
as M_PI
13 from AthenaConfiguration.Enums
import BeamType
14 from AthenaConfiguration.ComponentFactory
import CompFactory
28 trackGroup = helper.addGroup(alg,
'Track')
29 pathtrack =
'/InDetGlobal/Track'
30 pathhits =
'/InDetGlobal/Hits'
31 pathTIDE =
'/InDetGlobal/TIDE'
34 varName =
'm_nBase;nCOMBtrks'
35 title =
'Track multiplicity (baseline tracks);Track multiplicity;Events'
36 trackGroup.defineHistogram(varName, type=
'TH1F', path=pathtrack, title=title, xbins=m_trackBin, xmin=0.5, xmax=m_trackMax + 0.5)
39 varName =
'm_eta_perigee,m_phi_perigee;Trk_Base_eta_phi'
40 title =
'Distribution of eta vs phi for combined tracks passing Loose Primary selection;#eta;#phi_{0}'
41 trackGroup.defineHistogram(varName, type=
'TH2F', path=pathtrack, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
43 varName =
'm_eta_perigee_loose,m_phi_perigee_loose;Trk_Loose_eta_phi'
44 title =
'Distribution of eta vs phi for combined tracks passing Loose selection;#eta;#phi_{0}'
45 trackGroup.defineHistogram(varName, type=
'TH2F', path=pathtrack, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
47 varName =
'm_eta_perigee,m_phi_perigee,m_track_pass_tight;Trk_Tight_eta_phi_ratio'
48 title =
'Distribution of eta vs phi for combined tracks passing Tight selection;#eta;#phi_{0}'
49 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathtrack, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
51 varName =
'm_eta_perigee,m_phi_perigee,m_noTRTHits;Trk_noTRText_eta_phi_ratio'
52 title =
'Distribution of eta vs phi for combined tracks passing with no TRT extension;#eta;#phi_{0}'
53 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathtrack, title=title, xbins=20, xmin=-m_c_etaRangeTRT, xmax=m_c_etaRangeTRT, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
55 varName =
'm_eta_perigee,m_phi_perigee,m_NextToInnermostPixelLayerHit;Trk_noBLhit_eta_phi_ratio'
56 title =
'Eta-phi of tracks with no b-layer hit but a hit is expected, ratio to total tracks;#eta;#phi_{0}'
57 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathtrack, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
59 varName =
'm_eta_perigee,m_phi_perigee,m_InnermostPixelLayerHit;Trk_noIBLhit_eta_phi_ratio'
60 title =
'Eta-phi of tracks with no IBL hit but a hit is expected, ratio to total tracks;#eta;#phi_{0}'
61 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathtrack, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
63 varName =
'm_eta_perigee,m_phi_perigee,m_numberOfInnermostPixelLayerHits;Trk_nIBLhits_eta_phi'
64 title =
'Number of IBL hits per track, eta-phi profile;#eta;#phi'
65 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
67 varName =
'm_eta_perigee,m_phi_perigee,m_pixHits;Trk_nPIXhits_eta_phi'
68 title =
'Number of PIX hits per track, eta-phi profile;#eta;#phi'
69 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
71 varName =
'm_eta_perigee,m_phi_perigee,m_sctHits;Trk_nSCThits_eta_phi'
72 title =
'Number of SCT hits per track, eta-phi profile;#eta;#phi'
73 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
75 varName =
'm_eta_perigee,m_phi_perigee,m_trtHits;Trk_nTRThits_eta_phi'
76 title =
'Number of TRT hits per track, eta-phi profile;#eta;#phi'
77 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
79 varName =
'm_lb,m_numberOfInnermostPixelLayerHits;trk_nIBLhits_LB'
80 title =
'Average number of IBL hits by LB;LB;Average number of hits in LB'
81 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
83 varName =
'm_lb,m_pixHits;trk_nPIXhits_LB'
84 title =
'Average number of PIX hits by LB;LB;Average number of hits in LB'
85 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
87 varName =
'm_lb,m_sctHits;trk_nSCThits_LB'
88 title =
'Average number of SCT hits by LB;LB;Average number of hits in LB'
89 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
91 varName =
'm_lb,m_trtHits;trk_nTRThits_LB'
92 title =
'Average number of TRT hits by LB;LB;Average number of hits in LB'
93 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
95 varName =
'm_eta_perigee,m_phi_perigee,m_numberOfPixelDeadSensors;Trk_nPIXdisabled_eta_phi'
96 title =
'Number of PIX disabled detector elements per track, eta-phi profile;#eta;#phi'
97 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
99 varName =
'm_eta_perigee,m_phi_perigee,m_numberOfSCTDeadSensors;Trk_nSCTdisabled_eta_phi'
100 title =
'Number of SCT disabled detector elements per track, eta-phi profile;#eta;#phi'
101 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
103 varName =
'm_eta_perigee,m_phi_perigee,m_numberOfTRTDeadStraws;Trk_nTRTdisabled_eta_phi'
104 title =
'Number of TRT disabled detector elements per track, eta-phi profile;#eta;#phi'
105 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
107 varName =
'm_eta_perigee,m_phi_perigee,m_numberOfPixelSharedHits;Trk_nPixShared_eta_phi'
108 title =
'Number of Pixel shared hits per track, eta-phi profile;#eta;#phi'
109 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
111 varName =
'm_eta_perigee,m_phi_perigee,m_numberOfPixelSplitHits;Trk_nPixSplit_eta_phi'
112 title =
'Number of Pixel split hits per track, eta-phi profile;#eta;#phi'
113 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
115 varName =
'm_eta_perigee,m_phi_perigee,m_numberOfSCTSharedHits;Trk_nSCTShared_eta_phi'
116 title =
'Number of SCT shared hits per track, eta-phi profile;#eta;#phi'
117 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
119 varName =
'm_eta_perigee,m_phi_perigee,m_numberOfPixelHoles;Trk_nPixHoles_eta_phi'
120 title =
'Number of Pixel holes per track, eta-phi profile;#eta;#phi'
121 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
123 varName =
'm_eta_perigee,m_phi_perigee,m_numberOfSCTHoles;Trk_nSCTHoles_eta_phi'
124 title =
'Number of SCT holes per track, eta-phi profile;#eta;#phi'
125 trackGroup.defineHistogram(varName, type=
'TProfile2D', path=pathhits, title=title, xbins=m_nBinsEta, xmin=-m_c_etaRange, xmax=m_c_etaRange, ybins=m_nBinsPhi, ymin=-M_PI, ymax=M_PI)
127 varName =
'm_lb,m_nBase_LB;Trk_nBase_LB'
128 title =
'Average number of baseline tracks per event in LB;LB number;Average number of loose primary tracks per event in LB'
129 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
131 varName =
'm_lb,m_nTight_LB;Trk_nTight_LB'
132 title =
'Average number of tight tracks per event in LB;LB number;Average number of tight tracks per event in LB'
133 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
135 varName =
'm_lb,m_nNoIBL_LB;Trk_noIBLhits_LB'
136 title =
'Average number of tracks with missing IBL hit per event in LB;LB number;Average number of tracks with missing IBL hit per event in LB'
137 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
139 varName =
'm_lb,m_NoIBL_LB;Trk_noIBLhits_frac_LB'
140 title =
'Fraction of tracks with missing IBL hit per event in LB;LB number;Fraction of tracks with missing IBL hit per event in LB'
141 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
143 varName =
'm_lb,m_nNoBL_LB;Trk_noBLhits_LB'
144 title =
'Average number of tracks with missing b-layer hit per event in LB;LB number;Average number of tracks with missing b-layer hit per event in LB'
145 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
147 varName =
'm_lb,m_NoBL_LB;Trk_noBLhits_frac_LB'
148 title =
'Fraction of tracks with missing b-layer hit per event in LB;LB number;Fraction of tracks with missing b-layer hit per event in LB'
149 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
151 varName =
'm_lb,m_nNoTRText_LB;Trk_noTRText_LB'
152 title =
'Average number of tracks without TRT extension per event in LB;LB number;Average number of tracks with without TRT extension per event in LB'
153 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
155 varName =
'm_lb,m_NoTRText_LB;Trk_noTRText_frac_LB'
156 title =
'Fraction of tracks without TRT extension per event in LB;LB number;Fraction of tracks with without TRT extension per event in LB'
157 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathtrack, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
160 varName =
'm_jetassocdR,m_jetassocd0Reso;Trk_jetassoc_d0_dr'
161 title =
'IP resolution per ghost associated track vs #DeltaR of track and jet;#DeltaR of track and jet;IP resolution per ghost associated track'
162 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathTIDE, title=title, xbins=20, xmin=0, xmax=0.4)
164 varName =
'm_jetassocdR,m_jetassocz0Reso;Trk_jetassoc_z0_dr'
165 title =
'IP resolution per ghost associated track vs #DeltaR of track and jet;#DeltaR of track and jet;IP resolution per ghost associated track'
166 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathTIDE, title=title, xbins=20, xmin=0, xmax=0.4)
168 varName =
'm_lb,m_jetassocIPReso;Trk_jetassoc_ip_reso_lb'
169 title =
'IP resolution per ghost associated track vs LB;LB;IP resolution per ghost associated track'
170 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathTIDE, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
172 varName =
'm_pixSplitdR,m_pixSplitFrac;Trk_jetassoc_split_pix_dr'
173 title =
'Fraction of split Pixel hits per ghost associated track vs #DeltaR of track and jet;#DeltaR;Fraction'
174 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathTIDE, title=title, xbins=20, xmin=0, xmax=0.4)
176 varName =
'm_lb,m_pixSplitFrac;Trk_jetassoc_split_pix_lb'
177 title =
'Fraction of split Pixel hits vs LB;LB;Fraction'
178 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathTIDE, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
180 varName =
'm_pixShareddR,m_pixSharedFrac;Trk_jetassoc_shared_pix_dr'
181 title =
'Fraction of shared Pixel hits per ghost associated track vs #DeltaR of track and jet;#DeltaR;Fraction'
182 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathTIDE, title=title, xbins=20, xmin=0, xmax=0.4)
184 varName =
'm_lb,m_pixSharedFrac;Trk_jetassoc_shared_pix_lb'
185 title =
'Fraction of shared Pixel hits vs LB;LB;Fraction'
186 trackGroup.defineHistogram(varName, type=
'TProfile', path=pathTIDE, title=title, xbins=m_c_range_LB, xmin=0, xmax=m_c_range_LB)
192 flags, name="InDetGlobalTrackMonAlg", **kwargs):
194 from InDetConfig.InDetTrackSelectionToolConfig
import (
195 InDetTrackSelectionTool_TightPrimary_TrackTools_Cfg,
196 InDetTrackSelectionTool_Loose_Cfg)
198 if "TrackSelectionTool" not in kwargs:
199 if (flags.Beam.Type
is BeamType.Cosmics
or flags.Beam.Energy < 500000
or
200 flags.Reco.EnableHI):
201 kwargs.setdefault(
"TrackSelectionTool", acc.popToolsAndMerge(
205 kwargs.setdefault(
"TrackSelectionTool", acc.popToolsAndMerge(
211 if "Tight_TrackSelectionTool" not in kwargs:
212 kwargs.setdefault(
"Tight_TrackSelectionTool", acc.popToolsAndMerge(
217 if "Loose_TrackSelectionTool" not in kwargs:
218 kwargs.setdefault(
"Loose_TrackSelectionTool", acc.popToolsAndMerge(
223 if "TrackToVertexIPEstimator" not in kwargs:
224 from TrkConfig.TrkVertexFitterUtilsConfig
import TrackToVertexIPEstimatorCfg
225 kwargs.setdefault(
"TrackToVertexIPEstimator", acc.popToolsAndMerge(
228 from AthenaMonitoring.FilledBunchFilterToolConfig
import FilledBunchFilterToolCfg
229 from AthenaMonitoring.AtlasReadyFilterConfig
import AtlasReadyFilterCfg
231 monAlg = helper.addAlgorithm(
232 CompFactory.InDetGlobalTrackMonAlg, name,