@@ -40,6 +40,8 @@ struct sgPIDAnalyzer {
4040 " Pt binning" };
4141
4242 ConfigurableAxis sigmaAxis{" sigmaAxis" , {100 , -50 , 50 }, " nSigma TPC binning" };
43+ Configurable<float > eta_min{" eta_min" , -0.9 , " Track Pseudorapidity" };
44+ Configurable<float > eta_max{" eta_max" , 0.9 , " Track Pseudorapidity" };
4345
4446 void init (InitContext&)
4547 {
@@ -54,6 +56,16 @@ struct sgPIDAnalyzer {
5456 histos.add (" TPC/nTPC_Pr" , " Negative TPC Pr Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
5557 histos.add (" TPC/pTPC_El" , " Positive TPC El Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
5658 histos.add (" TPC/nTPC_El" , " Negative TPC El Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
59+ histos.add (" TPC/pTPC_De" , " Positive TPC De Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
60+ histos.add (" TPC/nTPC_De" , " Negative TPC De Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
61+ histos.add (" TPC/pTPC_Tr" , " Positive TPC Tr Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
62+ histos.add (" TPC/nTPC_Tr" , " Negative TPC Tr Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
63+ histos.add (" TPC/pTPC_He" , " Positive TPC He Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
64+ histos.add (" TPC/nTPC_He" , " Negative TPC He Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
65+ histos.add (" TPC/pTPC_Al" , " Positive TPC Al Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
66+ histos.add (" TPC/nTPC_Al" , " Negative TPC Al Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
67+ histos.add (" TPC/pTPC_Mu" , " Positive TPC Mu Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
68+ histos.add (" TPC/nTPC_Mu" , " Negative TPC Mu Tracks" , {HistType::kTH2F , {ptBins, nSigmaBins}});
5769
5870 histos.add (" TPC/pTPC_Pi_Ka" , " Positive TPC Pi vs Ka" , {HistType::kTH2F , {ptBins, nSigmaBins}});
5971 histos.add (" TPC/pTPC_Pi_Pr" , " Positive TPC Pi vs Pr" , {HistType::kTH2F , {ptBins, nSigmaBins}});
@@ -64,6 +76,9 @@ struct sgPIDAnalyzer {
6476 histos.add (" TPC/pTPC_Pr_Pi" , " Positive TPC Pr vs Pi" , {HistType::kTH2F , {ptBins, nSigmaBins}});
6577 histos.add (" TPC/pTPC_Pr_Ka" , " Positive TPC Pr vs Ka" , {HistType::kTH2F , {ptBins, nSigmaBins}});
6678 histos.add (" TPC/pTPC_Pr_El" , " Positive TPC Pr vs El" , {HistType::kTH2F , {ptBins, nSigmaBins}});
79+ histos.add (" TPC/pTPC_El_Pi" , " Positive TPC Pr vs Pi" , {HistType::kTH2F , {ptBins, nSigmaBins}});
80+ histos.add (" TPC/pTPC_El_Ka" , " Positive TPC Pr vs Ka" , {HistType::kTH2F , {ptBins, nSigmaBins}});
81+ histos.add (" TPC/pTPC_El_Pr" , " Positive TPC Pr vs El" , {HistType::kTH2F , {ptBins, nSigmaBins}});
6782
6883 histos.add (" TPC/nTPC_Pi_Ka" , " Positive TPC Pi vs Ka" , {HistType::kTH2F , {ptBins, nSigmaBins}});
6984 histos.add (" TPC/nTPC_Pi_Pr" , " Positive TPC Pi vs Pr" , {HistType::kTH2F , {ptBins, nSigmaBins}});
@@ -74,6 +89,9 @@ struct sgPIDAnalyzer {
7489 histos.add (" TPC/nTPC_Pr_Pi" , " Positive TPC Pr vs Pi" , {HistType::kTH2F , {ptBins, nSigmaBins}});
7590 histos.add (" TPC/nTPC_Pr_Ka" , " Positive TPC Pr vs Ka" , {HistType::kTH2F , {ptBins, nSigmaBins}});
7691 histos.add (" TPC/nTPC_Pr_El" , " Positive TPC Pr vs El" , {HistType::kTH2F , {ptBins, nSigmaBins}});
92+ histos.add (" TPC/nTPC_El_Pi" , " Positive TPC Pr vs Pi" , {HistType::kTH2F , {ptBins, nSigmaBins}});
93+ histos.add (" TPC/nTPC_El_Ka" , " Positive TPC Pr vs Ka" , {HistType::kTH2F , {ptBins, nSigmaBins}});
94+ histos.add (" TPC/nTPC_El_Pr" , " Positive TPC Pr vs El" , {HistType::kTH2F , {ptBins, nSigmaBins}});
7795
7896 histos.add (" TOF/pPi" , " Positive TPC Pi vs TOF Pi vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
7997 histos.add (" TOF/nPi" , " Negative TPC Pi vs TOF Pi vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
@@ -83,11 +101,23 @@ struct sgPIDAnalyzer {
83101 histos.add (" TOF/nPr" , " Negative TPC Pr vs TOF Pr vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
84102 histos.add (" TOF/pEl" , " Positive TPC El vs TOF El vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
85103 histos.add (" TOF/nEl" , " Negative TPC El vs TOF El vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
104+ histos.add (" TOF/pDe" , " Positive TPC De vs TOF Pi vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
105+ histos.add (" TOF/nDe" , " Negative TPC De vs TOF Pi vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
106+ histos.add (" TOF/pTr" , " Positive TPC Tr vs TOF Ka vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
107+ histos.add (" TOF/nTr" , " Negative TPC Tr vs TOF Ka vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
108+ histos.add (" TOF/pHe" , " Positive TPC He vs TOF Pr vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
109+ histos.add (" TOF/nHe" , " Negative TPC He vs TOF Pr vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
110+ histos.add (" TOF/pAl" , " Positive TPC Al vs TOF El vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
111+ histos.add (" TOF/nAl" , " Negative TPC Al vs TOF El vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
112+ histos.add (" TOF/pMu" , " Positive TPC Mu vs TOF El vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
113+ histos.add (" TOF/nMu" , " Negative TPC Mu vs TOF El vs pt" , {HistType::kTH3F , {ptBins, nSigmaBins, nSigmaBins}});
86114 }
87115
88116 void process (aod::SGEvents const & events, aod::SGTracks const & tracks)
89117 {
90118 for (const auto & track : tracks) {
119+ if (track.eta () < eta_min || track.eta () > eta_max)
120+ continue ;
91121 bool isPositive = (track.sign () > 0 );
92122 if (track.tofpi () == -999 ) {
93123 // Directly fill histograms without a local variable for histName
@@ -96,40 +126,60 @@ struct sgPIDAnalyzer {
96126 histos.fill (HIST (" TPC/pTPC_Ka" ), track.pt (), track.tpcka ());
97127 histos.fill (HIST (" TPC/pTPC_Pr" ), track.pt (), track.tpcpr ());
98128 histos.fill (HIST (" TPC/pTPC_El" ), track.pt (), track.tpcel ());
129+ histos.fill (HIST (" TPC/pTPC_De" ), track.pt (), track.tpcde ());
130+ histos.fill (HIST (" TPC/pTPC_Tr" ), track.pt (), track.tpctr ());
131+ histos.fill (HIST (" TPC/pTPC_He" ), track.pt (), track.tpche ());
132+ histos.fill (HIST (" TPC/pTPC_Al" ), track.pt (), track.tpcal ());
133+ histos.fill (HIST (" TPC/pTPC_Mu" ), track.pt (), track.tpcmu ());
99134 if (std::abs (track.tpcpi ()) < 1 ) {
100- histos.fill (HIST (" TPC/pTPC_Pi_Ka " ), track.pt (), track.tpcka ());
101- histos.fill (HIST (" TPC/pTPC_Pi_Pr " ), track.pt (), track.tpcpr ());
102- histos.fill (HIST (" TPC/pTPC_Pi_El " ), track.pt (), track.tpcel ());
135+ histos.fill (HIST (" TPC/pTPC_Ka_Pi " ), track.pt (), track.tpcka ());
136+ histos.fill (HIST (" TPC/pTPC_Pr_Pi " ), track.pt (), track.tpcpr ());
137+ histos.fill (HIST (" TPC/pTPC_El_Pi " ), track.pt (), track.tpcel ());
103138 }
104139 if (std::abs (track.tpcka ()) < 1 ) {
105- histos.fill (HIST (" TPC/pTPC_Ka_Pi " ), track.pt (), track.tpcpi ());
106- histos.fill (HIST (" TPC/pTPC_Ka_Pr " ), track.pt (), track.tpcpr ());
107- histos.fill (HIST (" TPC/pTPC_Ka_El " ), track.pt (), track.tpcel ());
140+ histos.fill (HIST (" TPC/pTPC_Pi_Ka " ), track.pt (), track.tpcpi ());
141+ histos.fill (HIST (" TPC/pTPC_Pr_Ka " ), track.pt (), track.tpcpr ());
142+ histos.fill (HIST (" TPC/pTPC_El_Ka " ), track.pt (), track.tpcel ());
108143 }
109144 if (std::abs (track.tpcpr ()) < 1 ) {
110- histos.fill (HIST (" TPC/pTPC_Pr_Pi" ), track.pt (), track.tpcpi ());
111- histos.fill (HIST (" TPC/pTPC_Pr_Ka" ), track.pt (), track.tpcka ());
112- histos.fill (HIST (" TPC/pTPC_Pr_El" ), track.pt (), track.tpcel ());
145+ histos.fill (HIST (" TPC/pTPC_Pi_Pr" ), track.pt (), track.tpcpi ());
146+ histos.fill (HIST (" TPC/pTPC_Ka_Pr" ), track.pt (), track.tpcka ());
147+ histos.fill (HIST (" TPC/pTPC_El_Pr" ), track.pt (), track.tpcel ());
148+ }
149+ if (std::abs (track.tpcel ()) < 1 ) {
150+ histos.fill (HIST (" TPC/pTPC_Pi_El" ), track.pt (), track.tpcpi ());
151+ histos.fill (HIST (" TPC/pTPC_Ka_El" ), track.pt (), track.tpcka ());
152+ histos.fill (HIST (" TPC/pTPC_Pr_El" ), track.pt (), track.tpcpr ());
113153 }
114154 } else {
115155 histos.fill (HIST (" TPC/nTPC_Pi" ), track.pt (), track.tpcpi ());
116156 histos.fill (HIST (" TPC/nTPC_Ka" ), track.pt (), track.tpcka ());
117157 histos.fill (HIST (" TPC/nTPC_Pr" ), track.pt (), track.tpcpr ());
118158 histos.fill (HIST (" TPC/nTPC_El" ), track.pt (), track.tpcel ());
159+ histos.fill (HIST (" TPC/nTPC_De" ), track.pt (), track.tpcde ());
160+ histos.fill (HIST (" TPC/nTPC_Tr" ), track.pt (), track.tpctr ());
161+ histos.fill (HIST (" TPC/nTPC_He" ), track.pt (), track.tpche ());
162+ histos.fill (HIST (" TPC/nTPC_Al" ), track.pt (), track.tpcal ());
163+ histos.fill (HIST (" TPC/nTPC_Mu" ), track.pt (), track.tpcmu ());
119164 if (std::abs (track.tpcpi ()) < 1 ) {
120- histos.fill (HIST (" TPC/nTPC_Pi_Ka " ), track.pt (), track.tpcka ());
121- histos.fill (HIST (" TPC/nTPC_Pi_Pr " ), track.pt (), track.tpcpr ());
122- histos.fill (HIST (" TPC/nTPC_Pi_El " ), track.pt (), track.tpcel ());
165+ histos.fill (HIST (" TPC/nTPC_Ka_Pi " ), track.pt (), track.tpcka ());
166+ histos.fill (HIST (" TPC/nTPC_Pr_Pi " ), track.pt (), track.tpcpr ());
167+ histos.fill (HIST (" TPC/nTPC_El_Pi " ), track.pt (), track.tpcel ());
123168 }
124169 if (std::abs (track.tpcka ()) < 1 ) {
125- histos.fill (HIST (" TPC/nTPC_Ka_Pi " ), track.pt (), track.tpcpi ());
126- histos.fill (HIST (" TPC/nTPC_Ka_Pr " ), track.pt (), track.tpcpr ());
127- histos.fill (HIST (" TPC/nTPC_Ka_El " ), track.pt (), track.tpcel ());
170+ histos.fill (HIST (" TPC/nTPC_Pi_Ka " ), track.pt (), track.tpcpi ());
171+ histos.fill (HIST (" TPC/nTPC_Pr_Ka " ), track.pt (), track.tpcpr ());
172+ histos.fill (HIST (" TPC/nTPC_El_Ka " ), track.pt (), track.tpcel ());
128173 }
129174 if (std::abs (track.tpcpr ()) < 1 ) {
130- histos.fill (HIST (" TPC/nTPC_Pr_Pi" ), track.pt (), track.tpcpi ());
131- histos.fill (HIST (" TPC/nTPC_Pr_Ka" ), track.pt (), track.tpcka ());
132- histos.fill (HIST (" TPC/nTPC_Pr_El" ), track.pt (), track.tpcel ());
175+ histos.fill (HIST (" TPC/nTPC_Pi_Pr" ), track.pt (), track.tpcpi ());
176+ histos.fill (HIST (" TPC/nTPC_Ka_Pr" ), track.pt (), track.tpcka ());
177+ histos.fill (HIST (" TPC/nTPC_El_Pr" ), track.pt (), track.tpcel ());
178+ }
179+ if (std::abs (track.tpcel ()) < 1 ) {
180+ histos.fill (HIST (" TPC/nTPC_Pi_El" ), track.pt (), track.tpcpi ());
181+ histos.fill (HIST (" TPC/nTPC_Ka_El" ), track.pt (), track.tpcka ());
182+ histos.fill (HIST (" TPC/nTPC_Pr_El" ), track.pt (), track.tpcpr ());
133183 }
134184 }
135185 } else {
@@ -138,11 +188,21 @@ struct sgPIDAnalyzer {
138188 histos.fill (HIST (" TOF/pKa" ), track.pt (), track.tpcka (), track.tofka ());
139189 histos.fill (HIST (" TOF/pPr" ), track.pt (), track.tpcpr (), track.tofpr ());
140190 histos.fill (HIST (" TOF/pEl" ), track.pt (), track.tpcel (), track.tofel ());
191+ histos.fill (HIST (" TOF/pDe" ), track.pt (), track.tpcpi (), track.tofde ());
192+ histos.fill (HIST (" TOF/pTr" ), track.pt (), track.tpcka (), track.toftr ());
193+ histos.fill (HIST (" TOF/pHe" ), track.pt (), track.tpcpr (), track.tofhe ());
194+ histos.fill (HIST (" TOF/pAl" ), track.pt (), track.tpcel (), track.tofal ());
195+ histos.fill (HIST (" TOF/pMu" ), track.pt (), track.tpcel (), track.tofmu ());
141196 } else {
142197 histos.fill (HIST (" TOF/nPi" ), track.pt (), track.tpcpi (), track.tofpi ());
143198 histos.fill (HIST (" TOF/nKa" ), track.pt (), track.tpcka (), track.tofka ());
144199 histos.fill (HIST (" TOF/nPr" ), track.pt (), track.tpcpr (), track.tofpr ());
145200 histos.fill (HIST (" TOF/nEl" ), track.pt (), track.tpcel (), track.tofel ());
201+ histos.fill (HIST (" TOF/nDe" ), track.pt (), track.tpcpi (), track.tofde ());
202+ histos.fill (HIST (" TOF/nTr" ), track.pt (), track.tpcka (), track.toftr ());
203+ histos.fill (HIST (" TOF/nHe" ), track.pt (), track.tpcpr (), track.tofhe ());
204+ histos.fill (HIST (" TOF/nAl" ), track.pt (), track.tpcel (), track.tofal ());
205+ histos.fill (HIST (" TOF/nMu" ), track.pt (), track.tpcel (), track.tofmu ());
146206 }
147207 }
148208 }
0 commit comments