@@ -162,7 +162,6 @@ struct DndetaMFTPbPb {
162162 Configurable<bool > usePtCut{" usePtCut" , false , " use track pT cut" };
163163 Configurable<float > minPt{" minPt" , 0 ., " minimum pT of the MFT tracks" };
164164 Configurable<bool > requireCA{" requireCA" , false , " Use Cellular Automaton track-finding algorithm" };
165- Configurable<bool > excludeAmbiguous{" excludeAmbiguous" , false , " Exclude Ambiguous tracks" };
166165 Configurable<float > maxDCAxy{" maxDCAxy" , 0 .01f , " Cut on dca XY" };
167166 Configurable<float > maxDCAz{" maxDCAz" , 0 .01f , " Cut on dca Z" };
168167 } trackCuts;
@@ -970,9 +969,13 @@ struct DndetaMFTPbPb {
970969 registry.add ({" Tracks/THnDCAxyBestRec" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
971970 registry.add ({" Tracks/THnDCAxyBestRecFake" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
972971 registry.add ({" Tracks/THnDCAxyBestGenPrim" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
972+ registry.add ({" Tracks/THnDCAxyBestGenTruthPrim" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
973973 registry.add ({" Tracks/THnDCAxyBestGenPrimWrongColl" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
974+ registry.add ({" Tracks/THnDCAxyBestGenTruthPrimWrongColl" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
974975 registry.add ({" Tracks/THnDCAxyBestGenSec" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
976+ registry.add ({" Tracks/THnDCAxyBestGenTruthSec" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
975977 registry.add ({" Tracks/THnDCAxyBestGenSecWrongColl" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
978+ registry.add ({" Tracks/THnDCAxyBestGenTruthSecWrongColl" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
976979 registry.add ({" Tracks/THnDCAxyBestGenSecWeak" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
977980 registry.add ({" Tracks/THnDCAxyBestGenSecMat" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm)" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis}}});
978981 }
@@ -985,9 +988,13 @@ struct DndetaMFTPbPb {
985988 registry.add ({" Tracks/Centrality/THnDCAxyBestRec" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
986989 registry.add ({" Tracks/Centrality/THnDCAxyBestRecFake" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
987990 registry.add ({" Tracks/Centrality/THnDCAxyBestGenPrim" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
991+ registry.add ({" Tracks/Centrality/THnDCAxyBestGenTruthPrim" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
988992 registry.add ({" Tracks/Centrality/THnDCAxyBestGenPrimWrongColl" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
993+ registry.add ({" Tracks/Centrality/THnDCAxyBestGenTruthPrimWrongColl" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
989994 registry.add ({" Tracks/Centrality/THnDCAxyBestGenSec" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
995+ registry.add ({" Tracks/Centrality/THnDCAxyBestGenTruthSec" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
990996 registry.add ({" Tracks/Centrality/THnDCAxyBestGenSecWrongColl" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
997+ registry.add ({" Tracks/Centrality/THnDCAxyBestGenTruthSecWrongColl" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
991998 registry.add ({" Tracks/Centrality/THnDCAxyBestGenSecWeak" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
992999 registry.add ({" Tracks/Centrality/THnDCAxyBestGenSecMat" , " ; p_{T} (GeV/c); #eta; Z_{vtx} (cm); DCA_{XY} (cm); DCA_{Z} (cm); centrality" , {HistType::kTHnSparseF , {ptAxis, etaAxis, zAxis, dcaxyAxis, dcazAxis, centralityAxis}}});
9931000 }
@@ -3227,6 +3234,10 @@ struct DndetaMFTPbPb {
32273234 continue ;
32283235 }
32293236
3237+ const auto dcaXtruth (particle.vx () - particle.mcCollision ().posX ());
3238+ const auto dcaYtruth (particle.vy () - particle.mcCollision ().posY ());
3239+ const auto dcaZtruth (particle.vz () - particle.mcCollision ().posZ ());
3240+ auto dcaXYtruth = std::sqrt (dcaXtruth * dcaXtruth + dcaYtruth * dcaYtruth);
32303241 auto mcCollision = particle.template mcCollision_as <aod::McCollisions>();
32313242
32323243 if (eventCuts.useZDiffCut ) {
@@ -3239,8 +3250,10 @@ struct DndetaMFTPbPb {
32393250 if (!particle.isPhysicalPrimary ()) { // Secondaries (weak decays and material)
32403251 if constexpr (has_reco_cent<C>) {
32413252 registry.fill (HIST (" Tracks/Centrality/THnDCAxyBestGenSec" ), particle.pt (), particle.eta (), mcCollision.posZ (), atrack.bestDCAXY (), atrack.bestDCAZ (), crec);
3253+ registry.fill (HIST (" Tracks/Centrality/THnDCAxyBestGenTruthSec" ), particle.pt (), particle.eta (), mcCollision.posZ (), dcaXYtruth, dcaZtruth, crec);
32423254 } else {
32433255 registry.fill (HIST (" Tracks/THnDCAxyBestGenSec" ), particle.pt (), particle.eta (), mcCollision.posZ (), atrack.bestDCAXY (), atrack.bestDCAZ ());
3256+ registry.fill (HIST (" Tracks/THnDCAxyBestGenTruthSec" ), particle.pt (), particle.eta (), mcCollision.posZ (), dcaXYtruth, dcaZtruth);
32443257 }
32453258 if (particle.getProcess () == TMCProcess::kPDecay ) { // Particles from decay
32463259 if constexpr (has_reco_cent<C>) {
@@ -3258,22 +3271,28 @@ struct DndetaMFTPbPb {
32583271 } else { // Primaries
32593272 if constexpr (has_reco_cent<C>) {
32603273 registry.fill (HIST (" Tracks/Centrality/THnDCAxyBestGenPrim" ), particle.pt (), particle.eta (), mcCollision.posZ (), atrack.bestDCAXY (), atrack.bestDCAZ (), crec);
3274+ registry.fill (HIST (" Tracks/Centrality/THnDCAxyBestGenTruthPrim" ), particle.pt (), particle.eta (), mcCollision.posZ (), dcaXYtruth, dcaZtruth, crec);
32613275 } else {
32623276 registry.fill (HIST (" Tracks/THnDCAxyBestGenPrim" ), particle.pt (), particle.eta (), mcCollision.posZ (), atrack.bestDCAXY (), atrack.bestDCAZ ());
3277+ registry.fill (HIST (" Tracks/THnDCAxyBestGenTruthPrim" ), particle.pt (), particle.eta (), mcCollision.posZ (), dcaXYtruth, dcaZtruth);
32633278 }
32643279 }
32653280 } else { // Wrong collision
32663281 if (!particle.isPhysicalPrimary ()) { // Secondaries (weak decays and material)
32673282 if constexpr (has_reco_cent<C>) {
32683283 registry.fill (HIST (" Tracks/Centrality/THnDCAxyBestGenSecWrongColl" ), particle.pt (), particle.eta (), mcCollision.posZ (), atrack.bestDCAXY (), atrack.bestDCAZ (), crec);
3284+ registry.fill (HIST (" Tracks/Centrality/THnDCAxyBestGenTruthSecWrongColl" ), particle.pt (), particle.eta (), mcCollision.posZ (), dcaXYtruth, dcaZtruth, crec);
32693285 } else {
32703286 registry.fill (HIST (" Tracks/THnDCAxyBestGenSecWrongColl" ), particle.pt (), particle.eta (), mcCollision.posZ (), atrack.bestDCAXY (), atrack.bestDCAZ ());
3287+ registry.fill (HIST (" Tracks/THnDCAxyBestGenTruthSecWrongColl" ), particle.pt (), particle.eta (), mcCollision.posZ (), dcaXYtruth, dcaZtruth);
32713288 }
32723289 } else { // Primaries
32733290 if constexpr (has_reco_cent<C>) {
32743291 registry.fill (HIST (" Tracks/Centrality/THnDCAxyBestGenPrimWrongColl" ), particle.pt (), particle.eta (), mcCollision.posZ (), atrack.bestDCAXY (), atrack.bestDCAZ (), crec);
3292+ registry.fill (HIST (" Tracks/Centrality/THnDCAxyBestGenTruthPrimWrongColl" ), particle.pt (), particle.eta (), mcCollision.posZ (), dcaXYtruth, dcaZtruth, crec);
32753293 } else {
32763294 registry.fill (HIST (" Tracks/THnDCAxyBestGenPrimWrongColl" ), particle.pt (), particle.eta (), mcCollision.posZ (), atrack.bestDCAXY (), atrack.bestDCAZ ());
3295+ registry.fill (HIST (" Tracks/THnDCAxyBestGenTruthPrimWrongColl" ), particle.pt (), particle.eta (), mcCollision.posZ (), dcaXYtruth, dcaZtruth);
32773296 }
32783297 }
32793298 }
0 commit comments