Skip to content

Commit 917d279

Browse files
[PWGLF] NucleiTask - Add helium w/its pid (AliceO2Group#9735)
1 parent 5e5ffcd commit 917d279

File tree

1 file changed

+27
-10
lines changed

1 file changed

+27
-10
lines changed

PWGLF/Tasks/Nuspex/LFNucleiBATask.cxx

Lines changed: 27 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,10 @@ struct LFNucleiBATask {
9898
} nsigmaTPCvar;
9999

100100
struct : ConfigurableGroup {
101-
Configurable<bool> useITSTrCut{"useITSTrCut", false, "Select Helium if NOT compatible with triton hypothesis (via SigmaITS)"};
102-
Configurable<float> nsigmaITSTr{"nsigmaITSTr", 3.f, "Value of the Nsigma ITS cut for tritons ( > nSigmaITSTr)"};
103-
// Configurable<bool> useITSHeCut{"useITSHeCut", false, "Select Helium if compatible with helium hypothesis (via SigmaITS)"};
104-
// Configurable<float> nsigmaITSHe{"nsigmaITSHe", 3.f, "Value of the Nsigma ITS cut for helium-3 ( < nSigmaITSHe)"};
101+
// Configurable<bool> useITSTrCut{"useITSTrCut", false, "Select Helium if NOT compatible with triton hypothesis (via SigmaITS)"};
102+
// Configurable<float> nsigmaITSTr{"nsigmaITSTr", 3.f, "Value of the Nsigma ITS cut for tritons ( > nSigmaITSTr)"};
103+
Configurable<bool> useITSHeCut{"useITSHeCut", false, "Select Helium if compatible with helium hypothesis (via SigmaITS)"};
104+
Configurable<float> nsigmaITSHe{"nsigmaITSHe", -1.f, "Value of the Nsigma ITS cut for helium-3 ( > nSigmaITSHe)"};
105105
} nsigmaITSvar;
106106

107107
// Set additional cuts (used for debug)
@@ -1509,6 +1509,12 @@ struct LFNucleiBATask {
15091509
histos.add<TH2>("tracks/helium/h2HeliumVspTNSigmaITSTr", "NSigmaITS(t) vs pT/z; #it{p}_{T}/z (GeV/#it{c}); NSigmaITS(t)", HistType::kTH2F, {{ptZHeAxis}, {sigmaITSAxis}});
15101510
histos.add<TH2>("tracks/helium/h2antiHeliumVspTNSigmaITSTr", "NSigmaITS(#bar{t}) vs pT/z; #it{p}_{T}/z (GeV/#it{c}); NSigmaITS(#bar{t})", HistType::kTH2F, {{ptZHeAxis}, {sigmaITSAxis}});
15111511

1512+
histos.add<TH2>("tracks/helium/h2HeliumVspTNSigmaITSHe_wTPCpid", "NSigmaITS(He) vs pT/z; #it{p}_{T}/z (GeV/#it{c}); NSigmaITS(He)", HistType::kTH2F, {{ptZHeAxis}, {sigmaITSAxis}});
1513+
histos.add<TH2>("tracks/helium/h2antiHeliumVspTNSigmaITSHe_wTPCpid", "NSigmaITS(#bar{He}) vs pT/z; #it{p}_{T}/z (GeV/#it{c}); NSigmaITS(#bar{He})", HistType::kTH2F, {{ptZHeAxis}, {sigmaITSAxis}});
1514+
1515+
histos.add<TH2>("tracks/helium/h2HeliumVspTNSigmaITSTr_wTPCpid", "NSigmaITS(t) vs pT/z; #it{p}_{T}/z (GeV/#it{c}); NSigmaITS(t)", HistType::kTH2F, {{ptZHeAxis}, {sigmaITSAxis}});
1516+
histos.add<TH2>("tracks/helium/h2antiHeliumVspTNSigmaITSTr_wTPCpid", "NSigmaITS(#bar{t}) vs pT/z; #it{p}_{T}/z (GeV/#it{c}); NSigmaITS(#bar{t})", HistType::kTH2F, {{ptZHeAxis}, {sigmaITSAxis}});
1517+
15121518
histos.add<TH2>("tracks/helium/h2HeliumVspTNSigmaTPC", "NSigmaTPC(He) vs pT/z; #it{p}_{T}/z (GeV/#it{c}); NSigmaTPC", HistType::kTH2F, {{ptZHeAxis}, {sigmaTPCAxis}});
15131519
histos.add<TH2>("tracks/helium/h2antiHeliumVspTNSigmaTPC", "NSigmaTPC(#bar{He}) vs pT/z; #it{p}_{T}/z (GeV/#it{c}); NSigmaTPC", HistType::kTH2F, {{ptZHeAxis}, {sigmaTPCAxis}});
15141520
}
@@ -2059,6 +2065,9 @@ struct LFNucleiBATask {
20592065
auto tracksWithITS = soa::Attach<TracksType,
20602066
aod::pidits::ITSNSigmaTr,
20612067
aod::pidits::ITSNSigmaHe>(tracks);
2068+
if (tracksWithITS.size() != tracks.size()) {
2069+
LOG(fatal) << "Problem with track size";
2070+
}
20622071

20632072
for (auto& track : tracksWithITS) {
20642073
histos.fill(HIST("tracks/h1pT"), track.pt());
@@ -2314,14 +2323,14 @@ struct LFNucleiBATask {
23142323
isDe = isDeuteron && track.sign() > 0;
23152324
isAntiDe = isDeuteron && track.sign() < 0;
23162325

2317-
if (!nsigmaITSvar.useITSTrCut) {
2318-
isHe = isHelium && track.sign() > 0;
2319-
isAntiHe = isHelium && track.sign() < 0;
2320-
} else {
2321-
isHe = isHelium && track.sign() > 0 && std::abs(nITSTr) > nsigmaITSvar.nsigmaITSTr;
2322-
isAntiHe = isHelium && track.sign() < 0 && std::abs(nITSTr) > nsigmaITSvar.nsigmaITSTr;
2326+
// nSigmaITSHe cut
2327+
if (nsigmaITSvar.useITSHeCut && (nITSHe <= nsigmaITSvar.nsigmaITSHe)) {
2328+
continue;
23232329
}
23242330

2331+
isHe = isHelium && track.sign() > 0;
2332+
isAntiHe = isHelium && track.sign() < 0;
2333+
23252334
isDeWoDCAxy = isDe && passDCAzCutDe;
23262335
isAntiDeWoDCAxy = isAntiDe && passDCAzCutAntiDe;
23272336
isHeWoDCAxy = isHe && passDCAzCutHe;
@@ -4047,6 +4056,14 @@ struct LFNucleiBATask {
40474056
histos.fill(HIST("tracks/helium/h2antiHeliumVspTNSigmaITSHe"), antihePt, nITSHe);
40484057
histos.fill(HIST("tracks/helium/h2antiHeliumVspTNSigmaTPC"), antihePt, track.tpcNSigmaHe());
40494058
}
4059+
if (isHeWTPCpid) {
4060+
histos.fill(HIST("tracks/helium/h2HeliumVspTNSigmaITSTr_wTPCpid"), hePt, nITSTr);
4061+
histos.fill(HIST("tracks/helium/h2HeliumVspTNSigmaITSHe_wTPCpid"), hePt, nITSHe);
4062+
}
4063+
if (isAntiHeWTPCpid) {
4064+
histos.fill(HIST("tracks/helium/h2antiHeliumVspTNSigmaITSTr_wTPCpid"), antihePt, nITSTr);
4065+
histos.fill(HIST("tracks/helium/h2antiHeliumVspTNSigmaITSHe_wTPCpid"), antihePt, nITSHe);
4066+
}
40504067

40514068
// TOF
40524069
if (outFlagOptions.doTOFplots) {

0 commit comments

Comments
 (0)