1212// /
1313// / \file LFNucleiBATask.cxx
1414// /
15- // / \brief Analysis task for the measurement of the coalescence parameter
15+ // / \brief Analysis task for the measurement of the coalescence parameter B2/B3 in pp collisions for (anti)deutheron/(anti)helium-3
1616// /
17- // / \author Rutuparna Rath <rutuparna.rath @cern.ch> and Giovanni Malfattore <giovanni.malfattore @cern.ch>
17+ // / \author Giovanni Malfattore <giovanni.malfattore @cern.ch> and Rutuparna Rath <rutuparna.rath @cern.ch>
1818// /
1919
2020#include " ReconstructionDataFormats/Track.h"
@@ -124,26 +124,29 @@ struct LFNucleiBATask {
124124 histos.add <TH1 >(" tracks/helium/h1antiHeliumSpectraTrueTransport" , " #it{p}_{T} (He)" , HistType::kTH1F , {ptAxis});
125125 }
126126
127+ // Bethe-Bloch TPC distribution and Beta vs pT TOF distribution
127128 histos.add <TH2 >(" tracks/h2TPCsignVsTPCmomentum" , " -dE/dX vs p/Z; p/Z (GeV/c); -dE/dx (a.u.)" , HistType::kTH2F , {{1000 , -5 .f , 5 .f }, {81000 , 0.0 , 1E3 }});
128129 histos.add <TH2 >(" tracks/h2TOFbetaVsP" , " #beta (TOF) vs p/Z; p/Z (GeV/c); #beta" , HistType::kTH2F , {{1000 , -5 .f , 5 .f }, {1200 , 0.0 , 1.2 }});
129130
130- histos.add <TH2 >(" tracks/pion/h2PionVspTNSigmaTPC" , " NSigmaTPC(pi) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
131- histos.add <TH2 >(" tracks/kaon/h2KaonVspTNSigmaTPC" , " NSigmaTPC(Ka) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
132- histos.add <TH2 >(" tracks/proton/h2ProtonVspTNSigmaTPC" , " NSigmaTPC(p) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
133- histos.add <TH2 >(" tracks/deuteron/h2DeuteronVspTNSigmaTPC" , " NSigmaTPC(d) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
134- histos.add <TH2 >(" tracks/helium/h2HeliumVspTNSigmaTPC" , " NSigmaTPC(He) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
135- histos.add <TH2 >(" tracks/proton/h2antiProtonVspTNSigmaTPC" , " NSigmaTPC(#bar{p}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
136- histos.add <TH2 >(" tracks/deuteron/h2antiDeuteronVspTNSigmaTPC" , " NSigmaTPC(#bar{d}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
137- histos.add <TH2 >(" tracks/helium/h2antiHeliumVspTNSigmaTPC" , " NSigmaTPC(#bar{He}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
138-
139- histos.add <TH2 >(" tracks/pion/h2PionVspTNSigmaTOF" , " NSigmaTOF(pi) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
140- histos.add <TH2 >(" tracks/kaon/h2KaonVspTNSigmaTOF" , " NSigmaTOF(Ka) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
141- histos.add <TH2 >(" tracks/proton/h2ProtonVspTNSigmaTOF" , " NSigmaTOF(p) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
142- histos.add <TH2 >(" tracks/deuteron/h2DeuteronVspTNSigmaTOF" , " NSigmaTOF(d) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
143- histos.add <TH2 >(" tracks/helium/h2HeliumVspTNSigmaTOF" , " NSigmaTOF(He) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
144- histos.add <TH2 >(" tracks/proton/h2antiProtonVspTNSigmaTOF" , " NSigmaTOF(#bar{p}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
145- histos.add <TH2 >(" tracks/deuteron/h2antiDeuteronVspTNSigmaTOF" , " NSigmaTOF(#bar{d}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
146- histos.add <TH2 >(" tracks/helium/h2antiHeliumVspTNSigmaTOF" , " NSigmaTOF(#bar{He}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {200 , -10 , 10 .}});
131+ // NSigmasTPC histograms
132+ histos.add <TH2 >(" tracks/pion/h2PionVspTNSigmaTPC" , " NSigmaTPC(pi) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {400 , -10 , 10 .}});
133+ histos.add <TH2 >(" tracks/kaon/h2KaonVspTNSigmaTPC" , " NSigmaTPC(Ka) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {400 , -10 , 10 .}});
134+ histos.add <TH2 >(" tracks/proton/h2ProtonVspTNSigmaTPC" , " NSigmaTPC(p) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
135+ histos.add <TH2 >(" tracks/deuteron/h2DeuteronVspTNSigmaTPC" , " NSigmaTPC(d) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
136+ histos.add <TH2 >(" tracks/helium/h2HeliumVspTNSigmaTPC" , " NSigmaTPC(He) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
137+ histos.add <TH2 >(" tracks/proton/h2antiProtonVspTNSigmaTPC" , " NSigmaTPC(#bar{p}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
138+ histos.add <TH2 >(" tracks/deuteron/h2antiDeuteronVspTNSigmaTPC" , " NSigmaTPC(#bar{d}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
139+ histos.add <TH2 >(" tracks/helium/h2antiHeliumVspTNSigmaTPC" , " NSigmaTPC(#bar{He}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTPC" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
140+
141+ // NSigmaTOF histograms
142+ histos.add <TH2 >(" tracks/pion/h2PionVspTNSigmaTOF" , " NSigmaTOF(pi) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
143+ histos.add <TH2 >(" tracks/kaon/h2KaonVspTNSigmaTOF" , " NSigmaTOF(Ka) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
144+ histos.add <TH2 >(" tracks/proton/h2ProtonVspTNSigmaTOF" , " NSigmaTOF(p) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
145+ histos.add <TH2 >(" tracks/deuteron/h2DeuteronVspTNSigmaTOF" , " NSigmaTOF(d) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
146+ histos.add <TH2 >(" tracks/helium/h2HeliumVspTNSigmaTOF" , " NSigmaTOF(He) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
147+ histos.add <TH2 >(" tracks/proton/h2antiProtonVspTNSigmaTOF" , " NSigmaTOF(#bar{p}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
148+ histos.add <TH2 >(" tracks/deuteron/h2antiDeuteronVspTNSigmaTOF" , " NSigmaTOF(#bar{d}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
149+ histos.add <TH2 >(" tracks/helium/h2antiHeliumVspTNSigmaTOF" , " NSigmaTOF(#bar{He}) vs pT; #it{p}_{T} (GeV/#it{c}); NSigmaTOF" , HistType::kTH2F , {{ptAxis}, {400 , -20 , 20 .}});
147150
148151 // TOF mass histograms
149152 histos.add <TH2 >(" tracks/h2TOFmassVsPt" , " h2TOFmassVsPt; TOFmass; #it{p}_{T} (GeV)" , HistType::kTH2F , {{600 , 0 ., 3 .}, {500 , 0 ., 5 .}});
@@ -157,9 +160,9 @@ struct LFNucleiBATask {
157160 histos.add <TH2 >(" tracks/deuteron/h2TOFmass2antiDeuteronVsPt" , " #Delta M^{2} (#bar{d}) vs #it{p}_{T}; #Delta M^{2} (#bar{d}); #it{p}_{T} (GeV/#it{c})" , HistType::kTH2F , {{1000 , -5 ., 5 .}, {800 , 0 ., 8 .}});
158161 histos.add <TH2 >(" tracks/helium/h2TOFmass2antiHeliumVsPt" , " #Delta M^{2} (#bar{He}) vs #it{p}_{T}; #Delta M^{2} (#bar{He}); #it{p}_{T} (GeV/#it{c})" , HistType::kTH2F , {{1800 , -9 ., 9 .}, {800 , 0 ., 8 .}});
159162
160- // MC histograms
161- // AxisSpec ptAxis = {2000, 0.f, 20.f, "#it{p}_{T} (GeV/#it{c})"};
163+ // MC histograms - all, primary, sec. from weak decay, sec. from material
162164 histos.add (" spectraGen/histGenVetxZ" , " PosZ generated events" , HistType::kTH1F , {{2000 , -20 .f , 20 .f , " Vertex Z (cm)" }});
165+
163166 histos.add (" spectraGen/histGenPtPion" , " generated particles" , HistType::kTH1F , {ptAxis});
164167 histos.add (" spectraGen/histGenPtPionPrim" , " generated particles" , HistType::kTH1F , {ptAxis});
165168 histos.add (" spectraGen/histGenPtPionSec" , " generated particles" , HistType::kTH1F , {ptAxis});
@@ -233,7 +236,6 @@ struct LFNucleiBATask {
233236 histos.fill (HIST (" tracks/h1p" ), track.p ());
234237
235238 // TPC
236- // if(std::abs(track.nsigTPCD()) < 5. && std::abs(track.nsigTOFD()) < 3.)
237239 histos.fill (HIST (" tracks/h2TPCsignVsTPCmomentum" ), track.tpcInnerParam () / (1 .f * track.sign ()), track.tpcSignal ());
238240
239241 histos.fill (HIST (" tracks/pion/h2PionVspTNSigmaTPC" ), track.pt (), track.nsigTPCPi ());
@@ -395,6 +397,7 @@ struct LFNucleiBATask {
395397 PROCESS_SWITCH (LFNucleiBATask, processMCReco, " process mc reco" , false );
396398 Int_t nCount = 0 ;
397399
400+ // LOOP OVER GENERATED MC PARTICLES
398401 void processMCGen (aod::McCollision const & mcCollision, aod::McParticles_001& mcParticles)
399402 {
400403 nCount++;
0 commit comments