From 88d7b657db7d3e55053c81bd4717b11770fb9a91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Wed, 1 Sep 2021 16:32:22 +0200 Subject: [PATCH 1/3] Fix slicing of MC particles --- ALICE3/Tasks/alice3-cdeuteron.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/ALICE3/Tasks/alice3-cdeuteron.cxx b/ALICE3/Tasks/alice3-cdeuteron.cxx index 63c4df86e35..beaac1d910f 100644 --- a/ALICE3/Tasks/alice3-cdeuteron.cxx +++ b/ALICE3/Tasks/alice3-cdeuteron.cxx @@ -40,6 +40,7 @@ struct Alice3CDeuteron { Configurable minDcaPion{"minDcaPion", -100, "Minimum DCA of the pion to the primary vertex"}; Configurable maxDca{"maxDca", 100, "Maximum track DCA to the primary vertex"}; Configurable minCpa{"minCpa", 0, "Minimum CPA"}; + Configurable usePdg{"usePdg", 1, "Flag to use the PDG instead of the TOF/RICH PID"}; HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; o2::vertexing::DCAFitterN<3> fitter; @@ -173,8 +174,8 @@ struct Alice3CDeuteron { const soa::Join& tracks, const aod::McParticles& mcParticles) { - - for (auto i : mcParticles) { + const auto particlesInCollision = mcParticles.sliceBy(aod::mcparticle::mcCollisionId, coll.mcCollision().globalIndex()); + for (const auto& i : particlesInCollision) { if (i.pdgCode() != 12345) { continue; } From 6a921768e0074ca2e59b2663bcc90a6b6d0f072c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Fri, 3 Sep 2021 08:21:33 +0200 Subject: [PATCH 2/3] Add inv. mass bins --- ALICE3/Tasks/alice3-cdeuteron.cxx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/ALICE3/Tasks/alice3-cdeuteron.cxx b/ALICE3/Tasks/alice3-cdeuteron.cxx index beaac1d910f..452cd30a531 100644 --- a/ALICE3/Tasks/alice3-cdeuteron.cxx +++ b/ALICE3/Tasks/alice3-cdeuteron.cxx @@ -56,7 +56,7 @@ struct Alice3CDeuteron { fitter.setMaxChi2(1e9); fitter.setUseAbsDCA(true); - const AxisSpec axisInvMass{100, 2.5, 4, "Inv. Mass_{c-d}"}; + const AxisSpec axisInvMass{1000, 2.5, 4, "Inv. Mass_{c-d}"}; const AxisSpec axisDecayRadius{2000, 0, 0.1, "Decay radius"}; const AxisSpec axisDecayRadiusReso{2000, -0.01, 0.01, "Decay radius resolution"}; const AxisSpec axisPionProdRadiusXY{2000, 0, 0.01, "Pion production radius in xy"}; @@ -125,11 +125,13 @@ struct Alice3CDeuteron { histos.add("event/track1dcaxy", "track1dcaxy Deuteron", kTH1D, {axisDcaXY}); histos.add("event/track1dcaz", "track1dcaz Deuteron", kTH1D, {axisDcaZ}); histos.add("event/candperdeuteron", "candperdeuteron", kTH1D, {{1000, 0, 10000}}); - histos.add("event/trackspdg", "trackspdg", kTH1D, {{3, 0.5, 3.5}}); + histos.add("event/particlespdg", "particlespdg", kTH1D, {{100, 0, 100}}); + histos.add("event/trackspdg", "trackspdg", kTH1D, {{4, 0.5, 4.5}}); h = histos.get(HIST("event/trackspdg")); h->GetXaxis()->SetBinLabel(1, "d"); h->GetXaxis()->SetBinLabel(2, "K"); h->GetXaxis()->SetBinLabel(3, "#pi"); + h->GetXaxis()->SetBinLabel(4, "Rest"); histos.add("event/multiplicity", "multiplicity", kTH1D, {{1000, 0, 10000}}); #define MakeHistos(tag) \ @@ -176,6 +178,7 @@ struct Alice3CDeuteron { { const auto particlesInCollision = mcParticles.sliceBy(aod::mcparticle::mcCollisionId, coll.mcCollision().globalIndex()); for (const auto& i : particlesInCollision) { + histos.get(HIST("event/particlespdg"))->Fill(Form("%i", i.pdgCode()), 1); if (i.pdgCode() != 12345) { continue; } @@ -207,6 +210,8 @@ struct Alice3CDeuteron { histos.fill(HIST("event/trackspdg"), 2); } else if (t.mcParticle().pdgCode() == 211) { histos.fill(HIST("event/trackspdg"), 3); + } else { + histos.fill(HIST("event/trackspdg"), 4); } ntrks++; } From 8a4ac4e8b19de727fe8c8098959f6387b068485b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Fri, 3 Sep 2021 09:43:03 +0200 Subject: [PATCH 3/3] Remove duplicate histo --- ALICE3/Tasks/alice3-cdeuteron.cxx | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/ALICE3/Tasks/alice3-cdeuteron.cxx b/ALICE3/Tasks/alice3-cdeuteron.cxx index 452cd30a531..07b0c6da141 100644 --- a/ALICE3/Tasks/alice3-cdeuteron.cxx +++ b/ALICE3/Tasks/alice3-cdeuteron.cxx @@ -89,18 +89,6 @@ struct Alice3CDeuteron { h->GetXaxis()->SetBinLabel(8, "minDca"); h->GetXaxis()->SetBinLabel(9, "maxDca"); - histos.add("event/cuts", "cuts", kTH1D, {{10, 0, 10}}); - h = histos.get(HIST("event/cuts")); - h->GetXaxis()->SetBinLabel(1, "magField"); - h->GetXaxis()->SetBinLabel(2, "minRadius"); - h->GetXaxis()->SetBinLabel(3, "maxRadius"); - h->GetXaxis()->SetBinLabel(4, "minMomPt"); - h->GetXaxis()->SetBinLabel(5, "minKaonPt"); - h->GetXaxis()->SetBinLabel(6, "minPionPt"); - h->GetXaxis()->SetBinLabel(7, "minVtxContrib"); - h->GetXaxis()->SetBinLabel(8, "minDca"); - h->GetXaxis()->SetBinLabel(9, "maxDca"); - h->SetBinContent(1, magField); h->SetBinContent(2, minRadius); h->SetBinContent(3, maxRadius);