28 bool doNumberOfTrk =
true;
29 bool doDceroPerigee =
true;
30 bool doZceroPerigee =
true;
31 bool doPhiPerigee =
true;
32 bool doThetaPerigee =
true;
33 bool doEtaPerigee =
true;
34 bool doQOverPPerigee =
true;
35 bool doTrkChiSquarePerigee =
true;
36 bool doNumberOfHits =
true;
37 bool doXVertex =
false;
38 bool doYVertex =
false;
39 bool doZVertex =
false;
42 const char*
format =
"gif";
43 const char*
rootfile =
"trkValNtupSingleMuons.root";
44 const char*
dir =
"TrkValNewTracking";
45 const char* ntupleTrkVal =
"TrkValNewTrkProp";
46 const char* ntupleFitter =
"FitterValNewTrkProp";
47 const char* noUnit =
"";
48 const char*
mm =
"[mm]";
49 const char*
rad =
"[rad]";
50 const char* mev =
"[MeV]";
51 const char* gev =
"[GeV]";
52 const char* reciMev =
"[1/MeV]";
57 const char*
cut =
"trk_Rec_nTracks==1";
58 const char* cutName =
"trkEq1";
69 const char* noTrkEvt =
"trk_Rec_nTracks";
70 const int noTrkNbin = 40;
71 const double noTrkLow = -0.75;
72 const double noTrkUp = 19.25;
77 const char* d0Rec =
"trk_Rec_d0";
78 const int d0Nbin = 100;
79 const double d0Low = -0.1;
80 const double d0Up = 0.1;
81 const char* d0TruthAssoc =
"trk_Mc_d0";
82 const int d0TruthAssocNbin = 100;
83 const double d0TruthAssocLow = -0.1;
84 const double d0TruthAssocUp = 0.1;
85 const char* d0Error =
"trk_Rec_error_d0";
86 const int d0ErrNbin = 100;
87 const double d0ErrLow = 0.005;
88 const double d0ErrUp = 0.016;
89 const char* d0Resol =
"trk_Rec_d0-trk_Mc_d0";
90 const int d0ResolNbin = 100;
91 const double d0ResolLow = -0.04;
92 const double d0ResolUp = 0.04;
93 const char* d0Pull =
"(trk_Rec_d0-trk_Mc_d0)/trk_Rec_error_d0";
94 const int d0PullNbin = 100;
95 const double d0PullLow = -5.0;
96 const double d0PullUp = 5.0;
101 const char* z0Rec =
"trk_Rec_z0";
102 const int z0Nbin = 100;
103 const double z0Low = -200.0;
104 const double z0Up = 200.0;
105 const char* z0TruthAssoc =
"trk_Mc_z0";
106 const int z0TruthAssocNbin = 100;
107 const double z0TruthAssocLow = -200.0;
108 const double z0TruthAssocUp = 200.0;
109 const char* z0Error =
"trk_Rec_error_z0";
110 const int z0ErrNbin = 60;
111 const double z0ErrLow = 0.03;
112 const double z0ErrUp = 0.23;
113 const char* z0Resol =
"trk_Rec_z0-trk_Mc_z0";
114 const int z0ResolNbin = 100;
115 const double z0ResolLow = -0.7;
116 const double z0ResolUp = 0.7;
117 const char* z0Pull =
"(trk_Rec_z0-trk_Mc_z0)/trk_Rec_error_z0";
118 const int z0PullNbin = 100;
119 const double z0PullLow = -5.0;
120 const double z0PullUp = 5.0;
125 const char* phiRec =
"trk_Rec_phi0";
127 const double phiLow = -(TMath::Pi());
128 const double phiUp = TMath::Pi();
129 const char* phiTruthAssoc =
"trk_Mc_phi0";
130 const int phiTruthAssocNbin = 72;
131 const double phiTruthAssocLow = -(TMath::Pi());
132 const double phiTruthAssocUp = TMath::Pi();
133 const char* phiError =
"trk_Rec_error_phi0";
134 const int phiErrNbin = 75;
135 const double phiErrLow = 0.00007;
136 const double phiErrUp = 0.00022;
137 const char* phiResol =
"trk_Rec_phi0-trk_Mc_phi0";
138 const int phiResolNbin = 100;
139 const double phiResolLow = -0.0006;
140 const double phiResolUp = 0.0006;
141 const char* phiPull =
"(trk_Rec_phi0-trk_Mc_phi0)/trk_Rec_error_phi0";
142 const int phiPullNbin = 100;
143 const double phiPullLow = -5.0;
144 const double phiPullUp = 5.0;
149 const char* thetaRec =
"trk_Rec_theta";
150 const int thetaNbin = 90;
151 const double thetaLow = 0.0;
152 const double thetaUp = TMath::Pi();
153 const char* thetaTruthAssoc =
"trk_Mc_theta";
154 const int thetaTruthAssocNbin = 90;
155 const double thetaTruthAssocLow = 0.0;
156 const double thetaTruthAssocUp = TMath::Pi();
157 const char* thetaError =
"trk_Rec_error_theta";
158 const int thetaErrNbin = 100;
159 const double thetaErrLow = 0.00005;
160 const double thetaErrUp = 0.0008;
161 const char* thetaResol =
"trk_Rec_theta-trk_Mc_theta";
162 const int thetaResolNbin = 100;
163 const double thetaResolLow = -0.0015;
164 const double thetaResolUp = 0.0015;
165 const char* thetaPull =
"(trk_Rec_theta-trk_Mc_theta)/trk_Rec_error_theta";
166 const int thetaPullNbin = 100;
167 const double thetaPullLow = -5.0;
168 const double thetaPullUp = 5.0;
173 const char* etaRec =
"trk_Rec_eta";
175 const double etaLow = -3.0;
176 const double etaUp = 3.0;
177 const char* etaTruthAssoc =
"trk_Mc_eta";
178 const int etaTruthAssocNbin = 60;
179 const double etaTruthAssocLow = -3.0;
180 const double etaTruthAssocUp = 3.0;
181 const char*
etaError =
"trk_Rec_error_theta/sin(trk_Rec_theta)";
182 const int etaErrNbin = 100;
183 const double etaErrLow = 0.0001;
184 const double etaErrUp = 0.0011;
185 const char* etaResol =
"trk_Rec_eta-trk_Mc_eta";
186 const int etaResolNbin = 100;
187 const double etaResolLow = -0.003;
188 const double etaResolUp = 0.003;
189 const char* etaPull =
"(trk_Rec_eta-trk_Mc_eta)/(trk_Rec_error_theta/sin(trk_Rec_theta))";
190 const int etaPullNbin = 100;
191 const double etaPullLow = -5.0;
192 const double etaPullUp = 5.0;
197 const char* momRec =
"abs(1/trk_Rec_qOverP)/1000.0";
198 const int momNbin = 100;
199 const double momLow = 48.0;
200 const double momUp = 110.0;
201 const char* momTruthAssoc =
"abs(1/trk_Mc_qOverP)/1000.0";
202 const int momTruthAssocNbin = 100;
203 const double momTruthAssocLow = 48.0;
204 const double momTruthAssocUp = 110.0;
205 const char* momError =
"(trk_Rec_error_qOverP/pow(trk_Rec_qOverP,2.0))/1000.0";
206 const int momErrNbin = 100;
207 const double momErrLow = 0.8;
208 const double momErrUp = 5.0;
209 const char* momResol =
"(abs(1/trk_Rec_qOverP)-abs(1/trk_Mc_qOverP))/1000.0";
210 const int momResolNbin = 100;
211 const double momResolLow = -15.0;
212 const double momResolUp = 15.0;
213 const char* momPull =
"(abs(1/trk_Rec_qOverP)-abs(1/trk_Mc_qOverP))/(trk_Rec_error_qOverP/pow(trk_Rec_qOverP,2.0))";
214 const int momPullNbin = 100;
215 const double momPullLow = -5.0;
216 const double momPullUp = 5.0;
219 const char* pzRec =
"(cos(trk_Rec_theta)/abs(trk_Rec_qOverP))/1000.0";
220 const int pzNbin = 50;
221 const double pzLow = -300.0;
222 const double pzUp = 300.0;
223 const char* pzTruthAssoc =
"(cos(trk_Mc_theta)/abs(trk_Mc_qOverP))/1000.0";
224 const int pzTruthAssocNbin = 50;
225 const double pzTruthAssocLow = -300.0;
226 const double pzTruthAssocUp = 300.0;
227 const char* pzError =
"(abs(cos(trk_Rec_theta)/trk_Rec_qOverP)*sqrt(pow(trk_Rec_error_qOverP/trk_Rec_qOverP,2.0)+pow(tan(trk_Rec_theta)*trk_Rec_error_theta,2.0)))/1000.0";
228 const int pzErrNbin = 50;
229 const double pzErrLow = 0.0;
230 const double pzErrUp = 5.0;
231 const char* pzResol =
"((cos(trk_Rec_theta)/abs(trk_Rec_qOverP))-(cos(trk_Mc_theta)/abs(trk_Mc_qOverP)))/1000.0";
232 const int pzResolNbin = 100;
233 const double pzResolLow = -5.0;
234 const double pzResolUp = 5.0;
235 const char* pzPull =
"((cos(trk_Rec_theta)/abs(trk_Rec_qOverP))-(cos(trk_Mc_theta)/abs(trk_Mc_qOverP)))/(abs(cos(trk_Rec_theta)/trk_Rec_qOverP)*sqrt(pow(trk_Rec_error_qOverP/trk_Rec_qOverP,2.0)+pow(tan(trk_Rec_theta)*trk_Rec_error_theta,2.0)))";
236 const int pzPullNbin = 100;
237 const double pzPullLow = -5.0;
238 const double pzPullUp = 5.0;
241 const char* ptRec =
"abs(1/trk_Rec_qOverPt)/1000.0";
242 const int ptNbin = 100;
243 const double ptLow = 40.0;
244 const double ptUp = 60.0;
245 const char* ptTruthAssoc =
"abs(1/trk_Mc_qOverPt)/1000.0";
246 const int ptTruthAssocNbin = 40;
247 const double ptTruthAssocLow = 48.0;
248 const double ptTruthAssocUp = 52.0;
249 const char* ptError =
"(abs(1/trk_Rec_qOverPt)*sqrt(pow(trk_Rec_error_qOverP/trk_Rec_qOverP,2.0)+pow(trk_Rec_error_theta/tan(trk_Rec_theta),2.0)))/1000.0";
250 const int ptErrNbin = 100;
251 const double ptErrLow = 0.8;
252 const double ptErrUp = 3.0;
253 const char* ptResol =
"(abs(1/trk_Rec_qOverPt)-abs(1/trk_Mc_qOverPt))/1000.0";
254 const int ptResolNbin = 100;
255 const double ptResolLow = -10.0;
256 const double ptResolUp = 10.0;
257 const char* ptPull =
"(abs(1/trk_Rec_qOverPt)-abs(1/trk_Mc_qOverPt))/(abs(1/trk_Rec_qOverPt)*sqrt(pow(trk_Rec_error_qOverP/trk_Rec_qOverP,2.0)+pow(trk_Rec_error_theta/tan(trk_Rec_theta),2.0)))";
258 const int ptPullNbin = 100;
259 const double ptPullLow = -5.0;
260 const double ptPullUp = 5.0;
261 const char* ptErrorOverPt =
"(abs(1/trk_Rec_qOverPt)*sqrt(pow(trk_Rec_error_qOverP/trk_Rec_qOverP,2.0)+pow(trk_Rec_error_theta/tan(trk_Rec_theta),2.0)))*abs(trk_Rec_qOverPt)";
262 const int ptErrOverPtNbin = 100;
263 const double ptErrOverPtLow = 0.015;
264 const double ptErrOverPtUp = 0.05;
269 const char* trkChi2 =
"trk_Rec_chi2";
270 const int trkChi2Nbin = 100;
271 const double trkChi2Low = 0.0;
272 const double trkChi2Up = 100.0;
273 const char* trkNdf =
"trk_Rec_nDoF";
274 const int trkNdfNbin = 140;
275 const double trkNdfLow = -0.75;
276 const double trkNdfUp = 69.25;
277 const char* trkChi2DoF =
"trk_Rec_chi2PerDoF";
278 const int trkChi2DoFNbin = 72;
279 const double trkChi2DoFLow = 0.2;
280 const double trkChi2DoFUp = 2.0;
281 const char* trkChi2Prob =
"1-trk_Rec_chi2Prob";
282 const int trkChi2ProbNbin = 80;
283 const double trkChi2ProbLow = 0.0;
284 const double trkChi2ProbUp = 1.0;
289 const char* pixelHit =
"trk_Rec_nPixelHits";
290 const int pixelHitNbin = 20;
291 const double pixelHitLow = -0.75;
292 const double pixelHitUp = 9.25;
293 const char* sctHit =
"trk_Rec_nSctHits";
294 const int sctHitNbin = 36;
295 const double sctHitLow = -0.75;
296 const double sctHitUp = 17.25;
297 const char* trtHit =
"trk_Rec_nTrtHits";
298 const int trtHitNbin = 100;
299 const double trtHitLow = -0.75;
300 const double trtHitUp = 49.25;
305 const int xVtxNbin = 60;
306 const int xVtxErrNbin = 100;
307 const double xVtxLow = -0.03;
308 const double xVtxUp = 0.03;
313 const int yVtxNbin = 60;
314 const int yVtxErrNbin = 100;
315 const double yVtxLow = -0.03;
316 const double yVtxUp = 0.03;
317 const double yVtxErrLow = 0.007;
318 const double yVtxErrUp = 0.016;
323 const int zVtxNbin = 60;
324 const double zVtxLow = -150.0;
325 const double zVtxUp = 150.0;
334 "numberTracksEvent",noTrkNbin,noTrkLow,noTrkUp,
true,
false);
339 if (doDceroPerigee) {
341 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,d0Rec,
"d0",
mm,
cut,cutName,
"d0",
342 d0Nbin,d0Low,d0Up,
false,
false);
344 "d0TruthAssoc",d0TruthAssocNbin,d0TruthAssocLow,d0TruthAssocUp,
false,
false);
346 "d0Error",d0ErrNbin,d0ErrLow,d0ErrUp,
false,
false);
348 "d0Resolution",d0ResolNbin,d0ResolLow,d0ResolUp,
false,
false);
350 cut,cutName,
"d0Pull",d0PullNbin,d0PullLow,d0PullUp,
false,
true);
351 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,d0TruthAssoc,
"d0TruthAssoc",
mm,d0Rec,
"d0",
mm,
cut,
352 cutName,
"d0:d0TruthAssoc",d0Nbin,d0Low,d0Up,d0TruthAssocNbin,d0TruthAssocLow,
353 d0TruthAssocUp,
false,
false);
354 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,phiRec,
"phi",
rad,d0Error,
"d0Error",
mm,
cut,cutName,
355 "d0Error:phi",
phiNbin,phiLow,phiUp,d0ErrNbin,d0ErrLow,d0ErrUp,
false,
false);
356 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,etaRec,
"eta",noUnit,d0Error,
"d0Error",
mm,
cut,cutName,
357 "d0Error:eta",
etaNbin,etaLow,etaUp,d0ErrNbin,d0ErrLow,d0ErrUp,
false,
false);
358 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,ptRec,
"pt",gev,d0Error,
"d0Error",
mm,
cut,cutName,
359 "d0Error:pt",ptNbin,ptLow,ptUp,d0ErrNbin,d0ErrLow,d0ErrUp,
false,
false);
360 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,pixelHit,
"No. hits",noUnit,d0Error,
"d0Error",
mm,
cut,
361 cutName,
"d0Error:numberPixelHits",pixelHitNbin,pixelHitLow,pixelHitUp,d0ErrNbin,
362 d0ErrLow,d0ErrUp,
false,
false);
363 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,sctHit,
"No. hits",noUnit,d0Error,
"d0Error",
mm,
cut,
364 cutName,
"d0Error:numberSCTHits",sctHitNbin,sctHitLow,sctHitUp,d0ErrNbin,d0ErrLow,
365 d0ErrUp,
false,
false);
366 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,trtHit,
"No. hits",noUnit,d0Error,
"d0Error",
mm,
cut,
367 cutName,
"d0Error:numberTRTHits",trtHitNbin,trtHitLow,trtHitUp,d0ErrNbin,d0ErrLow,
368 d0ErrUp,
false,
false);
373 if (doZceroPerigee) {
375 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,z0Rec,
"z0",
mm,
cut,cutName,
"z0",
376 z0Nbin,z0Low,z0Up,
false,
false);
378 "z0TruthAssoc",z0TruthAssocNbin,z0TruthAssocLow,z0TruthAssocUp,
false,
false);
380 "z0Error",z0ErrNbin,z0ErrLow,z0ErrUp,
false,
false);
382 "z0Resolution",z0ResolNbin,z0ResolLow,z0ResolUp,
false,
false);
384 cut,cutName,
"z0Pull",z0PullNbin,z0PullLow,z0PullUp,
false,
true);
385 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,z0TruthAssoc,
"z0TruthAssoc",
mm,z0Rec,
"z0",
mm,
cut,
386 cutName,
"z0:z0TruthAssoc",z0Nbin,z0Low,z0Up,z0TruthAssocNbin,z0TruthAssocLow,
387 z0TruthAssocUp,
false,
false);
388 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,phiRec,
"phi",
rad,z0Error,
"z0Error",
mm,
cut,cutName,
389 "z0Error:phi",
phiNbin,phiLow,phiUp,z0ErrNbin,z0ErrLow,z0ErrUp,
false,
false);
390 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,etaRec,
"eta",noUnit,z0Error,
"z0Error",
mm,
cut,cutName,
391 "z0Error:eta",
etaNbin,etaLow,etaUp,z0ErrNbin,z0ErrLow,z0ErrUp,
false,
false);
392 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,ptRec,
"pt",gev,z0Error,
"z0Error",
mm,
cut,cutName,
393 "z0Error:pt",ptNbin,ptLow,ptUp,z0ErrNbin,z0ErrLow,z0ErrUp,
false,
false);
394 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,pixelHit,
"No. hits",noUnit,z0Error,
"z0Error",
mm,
cut,
395 cutName,
"z0Error:numberPixelHits",pixelHitNbin,pixelHitLow,pixelHitUp,z0ErrNbin,
396 z0ErrLow,z0ErrUp,
false,
false);
397 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,sctHit,
"No. hits",noUnit,z0Error,
"z0Error",
mm,
cut,
398 cutName,
"z0Error:numberSCTHits",sctHitNbin,sctHitLow,sctHitUp,z0ErrNbin,z0ErrLow,
399 z0ErrUp,
false,
false);
400 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,trtHit,
"No. hits",noUnit,z0Error,
"z0Error",
mm,
cut,
401 cutName,
"z0Error:numberTRTHits",trtHitNbin,trtHitLow,trtHitUp,z0ErrNbin,z0ErrLow,
402 z0ErrUp,
false,
false);
409 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,phiRec,
"phi",
rad,
cut,cutName,
"phi",
410 phiNbin,phiLow,phiUp,
false,
false);
412 "phiTruthAssoc",phiTruthAssocNbin,phiTruthAssocLow,phiTruthAssocUp,
false,
false);
414 "phiError",phiErrNbin,phiErrLow,phiErrUp,
false,
false);
416 "phiResolution",phiResolNbin,phiResolLow,phiResolUp,
false,
false);
418 cut,cutName,
"phiPull",phiPullNbin,phiPullLow,phiPullUp,
false,
true);
420 rad,
cut,cutName,
"phi:phiTruthAssoc",
phiNbin,phiLow,phiUp,phiTruthAssocNbin,
421 phiLow,phiUp,
false,
false);
422 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,phiRec,
"phi",
rad,phiError,
"phiError",
rad,
cut,cutName,
423 "phiError:phi",
phiNbin,phiLow,phiUp,phiErrNbin,phiErrLow,phiErrUp,
false,
false);
424 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,etaRec,
"eta",noUnit,phiError,
"phiError",
rad,
cut,
425 cutName,
"phiError:eta",
etaNbin,etaLow,etaUp,phiErrNbin,phiErrLow,phiErrUp,
427 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,ptRec,
"pt",gev,phiError,
"phiError",
rad,
cut,cutName,
428 "phiError:pt",ptNbin,ptLow,ptUp,phiErrNbin,phiErrLow,phiErrUp,
false,
false);
429 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,pixelHit,
"No. hits",noUnit,phiError,
"phiError",
rad,
430 cut,cutName,
"phiError:numberPixelHits",pixelHitNbin,pixelHitLow,pixelHitUp,
431 phiErrNbin,phiErrLow,phiErrUp,
false,
false);
432 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,sctHit,
"No. hits",noUnit,phiError,
"phiError",
rad,
cut,
433 cutName,
"phiError:numberSCTHits",sctHitNbin,sctHitLow,sctHitUp,phiErrNbin,phiErrLow,
434 phiErrUp,
false,
false);
435 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,trtHit,
"No. hits",noUnit,phiError,
"phiError",
rad,
cut,
436 cutName,
"phiError:numberTRTHits",trtHitNbin,trtHitLow,trtHitUp,phiErrNbin,phiErrLow,
437 phiErrUp,
false,
false);
442 if (doThetaPerigee) {
444 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,thetaRec,
"theta",
rad,
cut,cutName,
"theta",thetaNbin,
445 thetaLow,thetaUp,
false,
false);
447 "thetaTruthAssoc",thetaNbin,thetaTruthAssocLow,thetaTruthAssocUp,
false,
false);
449 "thetaError",thetaErrNbin,thetaErrLow,thetaErrUp,
false,
false);
451 "thetaResolution",thetaResolNbin,thetaResolLow,thetaResolUp,
false,
false);
453 cut,cutName,
"thetaPull",thetaPullNbin,thetaPullLow,thetaPullUp,
false,
true);
455 "theta",
rad,
cut,cutName,
"theta:thetaTruthAssoc",thetaNbin,thetaLow,thetaUp,
456 thetaTruthAssocNbin,thetaLow,thetaUp,
false,
false);
457 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,phiRec,
"phi",
rad,thetaError,
"thetaError",
rad,
cut,
458 cutName,
"thetaError:phi",
phiNbin,phiLow,phiUp,thetaErrNbin,thetaErrLow,
459 thetaErrUp,
false,
false);
461 rad,
cut,cutName,
"thetaError:eta",
etaNbin,etaLow,etaUp,thetaErrNbin,
462 thetaErrLow,thetaErrUp,
false,
false);
463 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,ptRec,
"pt",gev,thetaError,
"thetaError",
rad,
cut,cutName,
464 "thetaError:pt",ptNbin,ptLow,ptUp,thetaErrNbin,thetaErrLow,thetaErrUp,
false,
false);
465 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,pixelHit,
"No. hits",noUnit,thetaError,
"thetaError",
rad,
466 cut,cutName,
"thetaError:numberPixelHits",pixelHitNbin,pixelHitLow,pixelHitUp,
467 thetaErrNbin,thetaErrLow,thetaErrUp,
false,
false);
469 rad,
cut,cutName,
"thetaError:numberSCTHits",sctHitNbin,sctHitLow,sctHitUp,
470 thetaErrNbin,thetaErrLow,thetaErrUp,
false,
false);
472 rad,
cut,cutName,
"thetaError:numberTRTHits",trtHitNbin,trtHitLow,trtHitUp,
473 thetaErrNbin,thetaErrLow,thetaErrUp,
false,
false);
481 "eta",
etaNbin,etaLow,etaUp,
false,
false);
483 "etaTruthAssoc",etaTruthAssocNbin,etaTruthAssocLow,etaTruthAssocUp,
false,
false);
485 "etaError",etaErrNbin,etaErrLow,etaErrUp,
false,
false);
487 "etaResolution",etaResolNbin,etaResolLow,etaResolUp,
false,
false);
489 cut,cutName,
"etaPull",etaPullNbin,etaPullLow,etaPullUp,
false,
true);
491 "eta",noUnit,
cut,cutName,
"eta:etaTruthAssoc",
etaNbin,etaLow,etaUp,
492 etaTruthAssocNbin,etaLow,etaUp,
false,
false);
493 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,phiRec,
"phi",
rad,
etaError,
"etaError",noUnit,
cut,
494 cutName,
"etaError:phi",
phiNbin,phiLow,phiUp,etaErrNbin,etaErrLow,
495 etaErrUp,
false,
false);
497 noUnit,
cut,cutName,
"etaError:eta",
etaNbin,etaLow,etaUp,etaErrNbin,
498 etaErrLow,etaErrUp,
false,
false);
499 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,ptRec,
"pt",gev,
etaError,
"etaError",noUnit,
cut,cutName,
500 "etaError:pt",ptNbin,ptLow,ptUp,etaErrNbin,etaErrLow,etaErrUp,
false,
false);
501 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,pixelHit,
"No. hits",noUnit,
etaError,
"etaError",noUnit,
502 cut,cutName,
"etaError:numberPixelHits",pixelHitNbin,pixelHitLow,pixelHitUp,
503 etaErrNbin,etaErrLow,etaErrUp,
false,
false);
505 noUnit,
cut,cutName,
"etaError:numberSCTHits",sctHitNbin,sctHitLow,sctHitUp,
506 etaErrNbin,etaErrLow,etaErrUp,
false,
false);
508 noUnit,
cut,cutName,
"etaError:numberTRTHits",trtHitNbin,trtHitLow,trtHitUp,
509 etaErrNbin,etaErrLow,etaErrUp,
false,
false);
515 if (doQOverPPerigee) {
518 "mom",momNbin,momLow,momUp,
false,
false);
520 "momTruthAssoc",momTruthAssocNbin,momTruthAssocLow,momTruthAssocUp,
false,
false);
522 "momError",momErrNbin,momErrLow,momErrUp,
false,
false);
524 "momResolution",momResolNbin,momResolLow,momResolUp,
false,
false);
526 cut,cutName,
"momPull",momPullNbin,momPullLow,momPullUp,
false,
true);
528 "mom",gev,
cut,cutName,
"mom:momTruthAssoc",momNbin,momLow,momUp,
529 momTruthAssocNbin,momLow,momUp,
false,
false);
530 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,phiRec,
"phi",
rad,momError,
"momError",gev,
cut,
531 cutName,
"momError:phi",
phiNbin,phiLow,phiUp,momErrNbin,momErrLow,momErrUp,
534 gev,
cut,cutName,
"momError:eta",
etaNbin,etaLow,etaUp,momErrNbin,
535 momErrLow,momErrUp,
false,
false);
536 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,ptRec,
"pt",gev,momError,
"momError",gev,
cut,cutName,
537 "momError:pt",ptNbin,ptLow,ptUp,momErrNbin,momErrLow,momErrUp,
false,
false);
538 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,pixelHit,
"No. hits",noUnit,momError,
"momError",gev,
539 cut,cutName,
"momError:numberPixelHits",pixelHitNbin,pixelHitLow,pixelHitUp,
540 momErrNbin,momErrLow,momErrUp,
false,
false);
542 gev,
cut,cutName,
"momError:numberSCTHits",sctHitNbin,sctHitLow,sctHitUp,
543 momErrNbin,momErrLow,momErrUp,
false,
false);
545 gev,
cut,cutName,
"momError:numberTRTHits",trtHitNbin,trtHitLow,trtHitUp,
546 momErrNbin,momErrLow,momErrUp,
false,
false);
550 "pz",pzNbin,pzLow,pzUp,
false,
false);
552 "pzTruthAssoc",pzTruthAssocNbin,pzTruthAssocLow,pzTruthAssocUp,
false,
false);
554 "pzError",pzErrNbin,pzErrLow,pzErrUp,
false,
false);
556 "pzResolution",pzResolNbin,pzResolLow,pzResolUp,
false,
false);
560 gev,
cut,cutName,
"pz:pzTruthAssoc",pzNbin,pzLow,pzUp,pzTruthAssocNbin,pzLow,
562 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,phiRec,
"phi",
rad,pzError,
"pzError",gev,
cut,
563 cutName,
"pzError:phi",
phiNbin,phiLow,phiUp,pzErrNbin,pzErrLow,pzErrUp,
566 gev,
cut,cutName,
"pzError:eta",
etaNbin,etaLow,etaUp,pzErrNbin,
567 pzErrLow,pzErrUp,
false,
false);
568 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,ptRec,
"pt",gev,pzError,
"pzError",gev,
cut,cutName,
569 "pzError:pt",ptNbin,ptLow,ptUp,pzErrNbin,pzErrLow,pzErrUp,
false,
false);
570 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,pixelHit,
"No. hits",noUnit,pzError,
"pzError",gev,
571 cut,cutName,
"pzError:numberPixelHits",pixelHitNbin,pixelHitLow,pixelHitUp,
572 pzErrNbin,pzErrLow,pzErrUp,
false,
false);
574 gev,
cut,cutName,
"pzError:numberSCTHits",sctHitNbin,sctHitLow,sctHitUp,
575 pzErrNbin,pzErrLow,pzErrUp,
false,
false);
577 gev,
cut,cutName,
"pzError:numberTRTHits",trtHitNbin,trtHitLow,trtHitUp,
578 pzErrNbin,pzErrLow,pzErrUp,
false,
false);
582 "pt",ptNbin,ptLow,ptUp,
false,
false);
584 "ptTruthAssoc",ptTruthAssocNbin,ptTruthAssocLow,ptTruthAssocUp,
false,
false);
586 "ptError",ptErrNbin,ptErrLow,ptErrUp,
false,
false);
588 "ptResolution",ptResolNbin,ptResolLow,ptResolUp,
false,
false);
590 cut,cutName,
"ptPull",ptPullNbin,ptPullLow,ptPullUp,
false,
true);
592 cutName,
"ptErrorOverPt",ptErrOverPtNbin,ptErrOverPtLow,ptErrOverPtUp,
false,
false);
594 gev,
cut,cutName,
"pt:ptTruthAssoc",ptNbin,ptLow,ptUp,ptTruthAssocNbin,ptLow,
596 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,phiRec,
"phi",
rad,ptError,
"ptError",gev,
cut,
597 cutName,
"ptError:phi",
phiNbin,phiLow,phiUp,ptErrNbin,ptErrLow,ptErrUp,
600 gev,
cut,cutName,
"ptError:eta",
etaNbin,etaLow,etaUp,ptErrNbin,
601 ptErrLow,ptErrUp,
false,
false);
602 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,ptRec,
"pt",gev,ptError,
"ptError",gev,
cut,cutName,
603 "ptError:pt",ptNbin,ptLow,ptUp,ptErrNbin,ptErrLow,ptErrUp,
false,
false);
604 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,pixelHit,
"No. hits",noUnit,ptError,
"ptError",gev,
605 cut,cutName,
"ptError:numberPixelHits",pixelHitNbin,pixelHitLow,pixelHitUp,
606 ptErrNbin,ptErrLow,ptErrUp,
false,
false);
608 gev,
cut,cutName,
"ptError:numberSCTHits",sctHitNbin,sctHitLow,sctHitUp,
609 ptErrNbin,ptErrLow,ptErrUp,
false,
false);
611 gev,
cut,cutName,
"ptError:numberTRTHits",trtHitNbin,trtHitLow,trtHitUp,
612 ptErrNbin,ptErrLow,ptErrUp,
false,
false);
613 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,phiRec,
"phi",
rad,ptErrorOverPt,
"ptErrorOverPt",noUnit,
614 cut,cutName,
"ptErrorOverPt:phi",
phiNbin,phiLow,phiUp,ptErrOverPtNbin,ptErrOverPtLow,
615 ptErrOverPtUp,
false,
false);
617 noUnit,
cut,cutName,
"ptErrorOverPt:eta",
etaNbin,etaLow,etaUp,ptErrOverPtNbin,
618 ptErrOverPtLow,ptErrOverPtUp,
false,
false);
619 TH2TrkProp(
format,
rootfile,
dir,ntupleFitter,ptRec,
"pt",gev,ptErrorOverPt,
"ptErrorOverPt",noUnit,
620 cut,cutName,
"ptErrorOverPt:pt",ptNbin,ptLow,ptUp,ptErrOverPtNbin,ptErrOverPtLow,
621 ptErrOverPtUp,
false,
false);
623 noUnit,
cut,cutName,
"ptErrorOverPt:numberPixelHits",pixelHitNbin,pixelHitLow,pixelHitUp,
624 ptErrOverPtNbin,ptErrOverPtLow,ptErrOverPtUp,
false,
false);
626 noUnit,
cut,cutName,
"ptErrorOverPt:numberSCTHits",sctHitNbin,sctHitLow,sctHitUp,
627 ptErrOverPtNbin,ptErrOverPtLow,ptErrOverPtUp,
false,
false);
629 noUnit,
cut,cutName,
"ptErrorOverPt:numberTRTHits",trtHitNbin,trtHitLow,trtHitUp,
630 ptErrOverPtNbin,ptErrOverPtLow,ptErrOverPtUp,
false,
false);
636 if (doTrkChiSquarePerigee) {
638 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,trkChi2,
"chi2",noUnit,
cut,cutName,
"trkChi2",
639 trkChi2Nbin,trkChi2Low,trkChi2Up,
false,
false);
640 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,trkNdf,
"Ndf",noUnit,
cut,cutName,
"trkNdf",
641 trkNdfNbin,trkNdfLow,trkNdfUp,
false,
false);
643 "trkChi2overNdf",trkChi2DoFNbin,trkChi2DoFLow,trkChi2DoFUp,
false,
false);
645 "trkChi2Prob",trkChi2ProbNbin,trkChi2ProbLow,trkChi2ProbUp,
false,
false);
651 if (doNumberOfHits) {
655 "numberPixelHits",pixelHitNbin,pixelHitLow,pixelHitUp,
true,
false);
657 noUnit,
cut,cutName,
"numberPixelHits:phi",
phiNbin,phiLow,phiUp,
658 pixelHitNbin,pixelHitLow,pixelHitUp,
false,
false);
660 noUnit,
cut,cutName,
"numberPixelHits:eta",
etaNbin,etaLow,etaUp,
661 pixelHitNbin,pixelHitLow,pixelHitUp,
false,
false);
666 "numberSCTHits",sctHitNbin,sctHitLow,sctHitUp,
true,
false);
668 noUnit,
cut,cutName,
"numberSCTHits:phi",
phiNbin,phiLow,phiUp,
669 sctHitNbin,sctHitLow,sctHitUp,
false,
false);
671 noUnit,
cut,cutName,
"numberSCTHits:eta",
etaNbin,etaLow,etaUp,
672 sctHitNbin,sctHitLow,sctHitUp,
false,
false);
676 "numberTRTHits",trtHitNbin,trtHitLow,trtHitUp,
true,
false);
678 noUnit,
cut,cutName,
"numberTRTHits:phi",
phiNbin,phiLow,phiUp,
679 trtHitNbin,trtHitLow,trtHitUp,
false,
false);
681 noUnit,
cut,cutName,
"numberTRTHits:eta",
etaNbin,etaLow,etaUp,
682 trtHitNbin,trtHitLow,trtHitUp,
false,
false);
688 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"vxp_vtx_x",
"x",
mm,
cut,cutName,
"xPrmVtx",
689 xVtxNbin,xVtxLow,xVtxUp,
false,
false);
690 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"vxp_vtx_x_truth",
"x",
mm,
cut,cutName,
"xPrimVtxTruth",
691 xVtxNbin,xVtxLow,xVtxUp,
false,
false);
693 "xOriginVtxTruth",xVtxNbin,xVtxLow,xVtxUp,
false,
false);
694 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"RV*cos(PhiV)",
"x",
mm,
cut,cutName,
"xVtxTruth",
695 xVtxNbin,xVtxLow,xVtxUp,
false,
false);
696 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"vxp_sigvtx_x",
"xError",
mm,
cut,cutName,
"xPrmVtxError",
697 100,0.007,0.016,
false,
false);
699 "xPrmVtxRes",100,-0.1,0.1,
false,
false);
701 "(x-xTruth)/xError",
mm,
cut,cutName,
"xPrmVtxPull",100,-5.0,5.0,
708 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"vxp_vtx_y",
"y",
mm,
cut,cutName,
"yPrmVtx",
709 yVtxNbin,yVtxLow,yVtxUp,
false,
false);
710 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"vxp_vtx_y_truth",
"y",
mm,
cut,cutName,
"yPrimVtxTruth",
711 yVtxNbin,yVtxLow,yVtxUp,
false,
false);
713 "yOriginVtxTruth",yVtxNbin,yVtxLow,yVtxUp,
false,
false);
714 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"RV*sin(PhiV)",
"y",
mm,
cut,cutName,
"yVtxTruth",
715 yVtxNbin,yVtxLow,yVtxUp,
false,
false);
716 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"vxp_sigvtx_y",
"yError",
mm,
cut,cutName,
"yPrmVtxError",
717 100,0.007,0.016,
false,
false);
719 "yPrmVtxRes",100,-0.1,0.1,
false,
false);
721 "(y-yTruth)/yError",
mm,
cut,cutName,
"yPrmVtxPull",100,-5.0,5.0,
728 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"vxp_vtx_z",
"z",
mm,
cut,cutName,
"zPrmVtx",
729 zVtxNbin,zVtxLow,zVtxUp,
false,
false);
730 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"vxp_vtx_z_truth",
"z",
mm,
cut,cutName,
"zPrimVtxTruth",
731 zVtxNbin,zVtxLow,zVtxUp,
false,
false);
732 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"ZVGen",
"z",
mm,
cut,cutName,
"zOriginVtxTruth",
733 zVtxNbin,zVtxLow,zVtxUp,
false,
false);
734 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"ZV",
"z",
mm,
cut,cutName,
"zVtxTruth",
735 zVtxNbin,zVtxLow,zVtxUp,
false,
false);
736 TH1TrkProp(
format,
rootfile,
dir,ntupleFitter,
"vxp_sigvtx_z",
"zError",
mm,
cut,cutName,
"zPrmVtxError",
737 100,0.08,0.13,
false,
false);
739 "zPrmVtxRes",100,-1.0,1.0,
false,
false);
741 "(z-zTruth)/zError",
mm,
cut,cutName,
"zPrmVtxPull",100,-5.0,5.0,