13 #include "FairRootManager.h"
15 #include "TClonesArray.h"
35 , fTrdTrackCollection(NULL)
36 , fTrdHitCollection(NULL)
39 , PartID(new TH1F(
"PartID",
"Particle ID of the Track", 4600, -2300., 2300.))
40 , NrTRDHits(new TH1F(
"NrTRDHits",
"Nr. of TRD Hits for track", 20, 0., 20.))
41 , ELossPI(new TH1F(
"ELossPI",
"summed ELoss for pions", 2000, 0., 200.))
42 , ELossEL(new TH1F(
"ELossEL",
"summed ELoss for electrons", 2000, 0., 200.))
43 , ELossALL(new TH1F(
"ELossALL",
44 "summed ELoss for all except electrons",
48 , MomPI(new TH1F(
"MomPI",
"summed Momentum for pions", 110, 0., 11.))
49 , MomEL(new TH1F(
"MomEL",
"summed Momentum for electrons", 110, 0., 11.))
50 , MomALL(new TH1F(
"MomALL",
51 "summed Momentum for all except electrons",
55 , MOMvsELossEL(new TH2F(
"MomvsElossEL",
56 "Momentum vs Eloss PI",
63 , MOMvsELossPI(new TH2F(
"MomvsElossPI",
64 "Momentum vs Eloss EL",
71 , MOMvsELossALL(new TH2F(
"MomvsElossALL",
72 "Momentum vs Eloss EL",
79 , WknPI(new TH1F(
"WknPI",
"Wkn for pions ", 10000, 0., 2000.))
80 , WknEL(new TH1F(
"WknEL",
"Wkn for electrons ", 10000, 0., 2000.))
81 , WknALL(new TH1F(
"WknALL",
82 "Wkn for all particles except electrons ",
86 , WknLowPI(new TH1F(
"WknLowPI",
"Wkn for pions ", 10000, 0., 2000.))
87 , WknLowEL(new TH1F(
"WknLowEL",
"Wkn for electrons ", 10000, 0., 2000.))
88 , WknLowALL(new TH1F(
"WknLowALL",
89 "Wkn for all particles except electrons ",
93 , WknHighPI(new TH1F(
"WknHighPI",
"Wkn for pions ", 10000, 0., 2000.))
94 , WknHighEL(new TH1F(
"WknHighEL",
"Wkn for electrons ", 10000, 0., 2000.))
95 , WknHighALL(new TH1F(
"WknHighALL",
96 "Wkn for all particles except electrons ",
100 , AnnPI(new TH1F(
"AnnPI",
"Ann for pions ", 400, -2., 2.))
101 , AnnEL(new TH1F(
"AnnEL",
"Ann for electrons ", 400, -2., 2.))
102 , AnnALL(new TH1F(
"AnnALL",
"Ann for all except electrons ", 400, -2., 2.))
103 , AnnLowPI(new TH1F(
"AnnLowPI",
"Ann for pions ", 400, -2., 2.))
104 , AnnLowEL(new TH1F(
"AnnLowEL",
"Ann for electrons ", 400, -2., 2.))
106 new TH1F(
"AnnLowALL",
"Ann for all except electrons ", 400, -2., 2.))
107 , AnnHighPI(new TH1F(
"AnnHighPI",
"Ann for pions ", 400, -2., 2.))
108 , AnnHighEL(new TH1F(
"AnnHighEL",
"Ann for electrons ", 400, -2., 2.))
110 new TH1F(
"AnnHighALL",
"Ann for all except electrons ", 400, -2., 2.))
111 , LikePI(new TH1F(
"LikePI",
"Likelihood for pions ", 400, -2., 2.))
112 , LikeEL(new TH1F(
"LikeEL",
"Likelihood for electrons ", 400, -2., 2.))
114 new TH1F(
"LikeALL",
"Likelihood for all except electrons ", 400, -2., 2.))
115 , LikeHighPI(new TH1F(
"LikeHighPI",
"Likelihood for pions ", 400, -2., 2.))
117 new TH1F(
"LikeHighEL",
"Likelihood for electrons ", 400, -2., 2.))
118 , LikeHighALL(new TH1F(
"LikeHighALL",
119 "Likelihood for all except electrons ",
123 , LikeLowPI(new TH1F(
"LikeLowPI",
"Likelihood for pions ", 400, -2., 2.))
124 , LikeLowEL(new TH1F(
"LikeLowEL",
"Likelihood for electrons ", 400, -2., 2.))
125 , LikeLowALL(new TH1F(
"LikeLowALL",
126 "Likelihood for all except electrons ",
141 FairRootManager*
rootMgr = FairRootManager::Instance();
143 cout <<
"-E- CbmTrdTrackPidQa::Init : "
144 <<
"ROOT manager is not instantiated !" << endl;
152 cout <<
"-W- CbmTrdTracksPidQa::Init : "
153 <<
"no MC point array !" << endl;
160 cout <<
"-W- CbmTrdTracksPidQa::Init : "
161 <<
"no TRD hit array !" << endl;
168 cout <<
"-W- CbmTrdTracksPidQa::Init : "
169 <<
"no TRD hit array !" << endl;
176 cout <<
"-E- CbmTrdTracksPidQa::Init : No MCTrack array!" << endl;
202 for (Int_t iTrack = 0; iTrack < nTrdTrack; iTrack++) {
204 if (NULL == trdTrack)
continue;
209 if (NULL == trdHit)
continue;
212 if (NULL == mcPoint)
continue;
217 if (nrtrdpoints == 12) {
223 momentum = mom.Mag();
226 if (TMath::Abs(partID) == 11) {
232 MomEL->Fill(momentum);
245 if (TMath::Abs(partID) == 211) {
251 MomPI->Fill(momentum);
263 if (!(TMath::Abs(partID) == 11)) {
298 gDirectory->mkdir(
"TrdTracksPidQA");
299 gDirectory->cd(
"TrdTracksPidQA");
343 gDirectory->cd(
"..");