Skip to content

Commit 4dd2f77

Browse files
authored
[PWGLF] Add pion pid hypothesis for kaon daughter (AliceO2Group#9236)
1 parent e4d35b1 commit 4dd2f77

File tree

3 files changed

+16
-6
lines changed

3 files changed

+16
-6
lines changed

PWGLF/DataModel/ReducedF1ProtonTables.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ DECLARE_SOA_COLUMN(F1d1TOFHit, f1d1TOFHit, int); //! T
6262
DECLARE_SOA_COLUMN(F1d2TOFHit, f1d2TOFHit, int); //! TOF hit pion
6363
DECLARE_SOA_COLUMN(F1d1TPC, f1d1TPC, float); //! TPC nsigma pion
6464
DECLARE_SOA_COLUMN(F1d2TPC, f1d2TPC, float); //! TPC nsigma kaon
65+
DECLARE_SOA_COLUMN(F1d2TPCPionHypo, f1d2TPCPionHypo, float); //! TPC nsigma kaon
6566
DECLARE_SOA_COLUMN(F1Mass, f1Mass, float); //! F1 mass
6667
DECLARE_SOA_COLUMN(F1MassKaonKshort, f1MassKaonKshort, float); //! F1 mass kaon kshort
6768
DECLARE_SOA_COLUMN(F1PionIndex, f1PionIndex, int64_t); //! F1 pion index
@@ -97,6 +98,7 @@ DECLARE_SOA_TABLE(F1Tracks, "AOD", "F1TRACK",
9798
f1protondaughter::F1d2TOFHit,
9899
f1protondaughter::F1d1TPC,
99100
f1protondaughter::F1d2TPC,
101+
f1protondaughter::F1d2TPCPionHypo,
100102
f1protondaughter::F1Mass,
101103
f1protondaughter::F1MassKaonKshort,
102104
f1protondaughter::F1PionIndex,

PWGLF/TableProducer/Resonances/f1protonreducedtable.cxx

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ struct f1protonreducedtable {
157157
{"hEta", "hEta", {HistType::kTH1F, {{20, -1.0f, 1.0f}}}},
158158
{"hNsigmaPtpionTPC", "hNsigmaPtpionTPC", {HistType::kTH2F, {{200, -10.0f, 10.0f}, {100, 0.0f, 10.0f}}}},
159159
{"hNsigmaPtpionTOF", "hNsigmaPtpionTOF", {HistType::kTH2F, {{200, -10.0f, 10.0f}, {100, 0.0f, 10.0f}}}},
160-
{"hNsigmaPtkaonTPC", "hNsigmaPtkaonTPC", {HistType::kTH2F, {{200, -10.0f, 10.0f}, {100, 0.0f, 10.0f}}}},
160+
{"hNsigmaPtkaonTPC", "hNsigmaPtkaonTPC", {HistType::kTH3F, {{200, -10.0f, 10.0f}, {200, -20.0f, 20.0f}, {100, 0.0f, 10.0f}}}},
161161
{"hNsigmaPtkaonTOF", "hNsigmaPtkaonTOF", {HistType::kTH2F, {{200, -10.0f, 10.0f}, {100, 0.0f, 10.0f}}}},
162162
{"hNsigmaPtprotonTPC", "hNsigmaPtprotonTPC", {HistType::kTH2F, {{200, -10.0f, 10.0f}, {100, 0.0f, 10.0f}}}},
163163
{"hNsigmaPtprotonTOF", "hNsigmaPtprotonTOF", {HistType::kTH2F, {{200, -10.0f, 10.0f}, {100, 0.0f, 10.0f}}}},
@@ -538,6 +538,8 @@ struct f1protonreducedtable {
538538
std::vector<int> KaonTOFHitFinal = {};
539539
std::vector<float> KaonTPC = {};
540540
std::vector<float> KaonTPCFinal = {};
541+
std::vector<float> KaonTPCPionHypo = {};
542+
std::vector<float> KaonTPCPionHypoFinal = {};
541543

542544
// keep kaon-kshort mass of f1resonance
543545
std::vector<float> f1kaonkshortmass = {};
@@ -642,12 +644,14 @@ struct f1protonreducedtable {
642644
KaonCharge.push_back(track.sign());
643645
auto KaonTOF = 0;
644646
if (track.sign() > 0) {
645-
qaRegistry.fill(HIST("hNsigmaPtkaonTPC"), nTPCSigmaP[1], track.pt());
647+
qaRegistry.fill(HIST("hNsigmaPtkaonTPC"), nTPCSigmaP[1], nTPCSigmaP[0], track.pt());
646648
KaonTPC.push_back(nTPCSigmaP[1]);
649+
KaonTPCPionHypo.push_back(nTPCSigmaP[0]);
647650
}
648651
if (track.sign() < 0) {
649-
qaRegistry.fill(HIST("hNsigmaPtkaonTPC"), nTPCSigmaN[1], track.pt());
652+
qaRegistry.fill(HIST("hNsigmaPtkaonTPC"), nTPCSigmaN[1], nTPCSigmaN[0], track.pt());
650653
KaonTPC.push_back(nTPCSigmaN[1]);
654+
KaonTPCPionHypo.push_back(nTPCSigmaN[0]);
651655
}
652656
if (track.hasTOF()) {
653657
qaRegistry.fill(HIST("hNsigmaPtkaonTOF"), track.tofNSigmaKa(), track.pt());
@@ -752,6 +756,7 @@ struct f1protonreducedtable {
752756
KaonTOFHitFinal.push_back(KaonTOFHit.at(i2)); // Kaon TOF Hit
753757
PionTPCFinal.push_back(PionTPC.at(i1)); // Pion TPC
754758
KaonTPCFinal.push_back(KaonTPC.at(i2)); // Kaon TPC
759+
KaonTPCPionHypoFinal.push_back(KaonTPCPionHypo.at(i2)); // Kaon TPC
755760
if (pairsign == 1) {
756761
qaRegistry.fill(HIST("hInvMassf1"), F1Vector.M(), F1Vector.Pt());
757762
numberF1 = numberF1 + 1;
@@ -808,7 +813,7 @@ struct f1protonreducedtable {
808813
F1d1dummy = f1resonanced1.at(i5);
809814
F1d2dummy = f1resonanced2.at(i5);
810815
F1d3dummy = f1resonanced3.at(i5);
811-
f1track(indexEvent, f1signal.at(i5), F1VectorDummy.Px(), F1VectorDummy.Py(), F1VectorDummy.Pz(), F1d1dummy.Px(), F1d1dummy.Py(), F1d1dummy.Pz(), F1d2dummy.Px(), F1d2dummy.Py(), F1d2dummy.Pz(), F1d3dummy.Px(), F1d3dummy.Py(), F1d3dummy.Pz(), PionTOFHitFinal.at(i5), KaonTOFHitFinal.at(i5), PionTPCFinal.at(i5), KaonTPCFinal.at(i5), F1VectorDummy.M(), f1kaonkshortmass.at(i5), F1PionIndex.at(i5), F1KaonIndex.at(i5), F1KshortDaughterPositiveIndex.at(i5), F1KshortDaughterNegativeIndex.at(i5));
816+
f1track(indexEvent, f1signal.at(i5), F1VectorDummy.Px(), F1VectorDummy.Py(), F1VectorDummy.Pz(), F1d1dummy.Px(), F1d1dummy.Py(), F1d1dummy.Pz(), F1d2dummy.Px(), F1d2dummy.Py(), F1d2dummy.Pz(), F1d3dummy.Px(), F1d3dummy.Py(), F1d3dummy.Pz(), PionTOFHitFinal.at(i5), KaonTOFHitFinal.at(i5), PionTPCFinal.at(i5), KaonTPCFinal.at(i5), KaonTPCPionHypoFinal.at(i5), F1VectorDummy.M(), f1kaonkshortmass.at(i5), F1PionIndex.at(i5), F1KaonIndex.at(i5), F1KshortDaughterPositiveIndex.at(i5), F1KshortDaughterNegativeIndex.at(i5));
812817
}
813818
//// Fill track table for proton//////////////////
814819
for (auto iproton = protons.begin(); iproton != protons.end(); ++iproton) {

PWGLF/Tasks/Resonances/f1protoncorrelation.cxx

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,9 @@ struct f1protoncorrelation {
5353
Configurable<float> maxMomentumPion{"maxMomentumPion", 4.0, "Maximum momentum Pion"};
5454
Configurable<float> maxMomentumKaon{"maxMomentumKaon", 4.0, "Maximum momentum Kaon"};
5555
Configurable<float> momentumTOFPionMin{"momentumTOFPionMin", 0.8, "Pion momentum TOF Min"};
56-
Configurable<float> momentumTOFKaonMin{"momentumTOFKaonMin", 0.8, "Kaon momentum TOF Min"};
56+
Configurable<float> momentumTOFKaonMin{"momentumTOFKaonMin", 0.5, "Kaon momentum TOF Min"};
5757
Configurable<float> momentumTOFPionMax{"momentumTOFPionMax", 1.2, "Pion momentum TOF Max"};
58-
Configurable<float> momentumTOFKaonMax{"momentumTOFKaonMax", 1.2, "Kaon momentum TOF Max"};
58+
Configurable<float> momentumTOFKaonMax{"momentumTOFKaonMax", 0.9, "Kaon momentum TOF Max"};
5959
Configurable<float> momentumTOFProton{"momentumTOFProton", 0.7, "Proton momentum TOF"};
6060
Configurable<float> momentumProtonMax{"momentumProtonMax", 3.0, "Maximum proton momentum"};
6161
Configurable<float> lowPtF1{"lowPtF1", 1.0, "PT cut F1"};
@@ -174,6 +174,9 @@ struct f1protoncorrelation {
174174
if (strategyPIDKaon == 1 && Kaon.Pt() > momentumTOFKaonMin && Kaon.Pt() <= momentumTOFKaonMax && f1track.f1d2TOFHit() != 1) {
175175
continue;
176176
}
177+
if (strategyPIDKaon == 2 && Kaon.Pt() > momentumTOFKaonMin && Kaon.Pt() <= momentumTOFKaonMax && f1track.f1d2TPC() < -1.0 && f1track.f1d2TOFHit() != 1) {
178+
continue;
179+
}
177180
histos.fill(HIST("hNsigmaKaonTPC"), f1track.f1d2TPC(), Kaon.Pt());
178181
histos.fill(HIST("hNsigmaPionTPC"), f1track.f1d1TPC(), Pion.Pt());
179182
histos.fill(HIST("hNsigmaPionKaonTPC"), f1track.f1d1TPC(), f1track.f1d2TPC());

0 commit comments

Comments
 (0)