Skip to content

Commit deddff2

Browse files
authored
[PWGLF] Add ITS PID for f1 and double-phi table producer (#9460)
1 parent a114d05 commit deddff2

File tree

2 files changed

+13
-3
lines changed

2 files changed

+13
-3
lines changed

PWGLF/TableProducer/Resonances/doublephitable.cxx

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
#include "DataFormatsTPC/BetheBlochAleph.h"
4646
#include "CCDB/BasicCCDBManager.h"
4747
#include "CCDB/CcdbApi.h"
48+
#include "Common/DataModel/PIDResponseITS.h"
4849

4950
using namespace o2;
5051
using namespace o2::framework;
@@ -143,6 +144,7 @@ struct doublephitable {
143144
ROOT::Math::PxPyPzMVector KaonPlus, KaonMinus, PhiMesonMother, PhiVectorDummy, Phid1dummy, Phid2dummy;
144145
void processPhiReducedTable(EventCandidates::iterator const& collision, TrackCandidates const&, aod::BCsWithTimestamps const&)
145146
{
147+
o2::aod::ITSResponse itsResponse;
146148
bool keepEventDoublePhi = false;
147149
int numberPhi = 0;
148150
auto currentRunNumber = collision.bc_as<aod::BCsWithTimestamps>().runNumber();
@@ -179,6 +181,9 @@ struct doublephitable {
179181
if (!selectionPID(track1)) {
180182
continue;
181183
}
184+
if (!(itsResponse.nSigmaITS<o2::track::PID::Kaon>(track1) > -3.0 && itsResponse.nSigmaITS<o2::track::PID::Kaon>(track1) < 3.0)) {
185+
continue;
186+
}
182187
Npostrack = Npostrack + 1;
183188
qaRegistry.fill(HIST("hNsigmaPtkaonTPC"), track1.tpcNSigmaKa(), track1.pt());
184189
if (track1.hasTOF()) {
@@ -201,6 +206,9 @@ struct doublephitable {
201206
if (track2ID == track1ID) {
202207
continue;
203208
}
209+
if (!(itsResponse.nSigmaITS<o2::track::PID::Kaon>(track2) > -3.0 && itsResponse.nSigmaITS<o2::track::PID::Kaon>(track2) < 3.0)) {
210+
continue;
211+
}
204212
if (!selectionPair(track1, track2)) {
205213
continue;
206214
}

PWGLF/TableProducer/Resonances/f1protonreducedtable.cxx

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
#include "DataFormatsTPC/BetheBlochAleph.h"
4747
#include "CCDB/BasicCCDBManager.h"
4848
#include "CCDB/CcdbApi.h"
49+
#include "Common/DataModel/PIDResponseITS.h"
4950

5051
using namespace o2;
5152
using namespace o2::framework;
@@ -502,6 +503,7 @@ struct f1protonreducedtable {
502503

503504
void processF1ProtonReducedTable(EventCandidates::iterator const& collision, aod::BCsWithTimestamps const&, PrimaryTrackCandidates const& tracks, ResoV0s const& V0s)
504505
{
506+
o2::aod::ITSResponse itsResponse;
505507
bool keepEventF1Proton = false;
506508
int numberF1 = 0;
507509
// keep track of indices
@@ -629,7 +631,7 @@ struct f1protonreducedtable {
629631
nTPCSigmaN[0] = updatePID(track, bgScalingPion, BBAntipion);
630632
}
631633

632-
if ((track.sign() > 0 && SelectionPID(track, strategyPIDPion, 0, nTPCSigmaP[0])) || (track.sign() < 0 && SelectionPID(track, strategyPIDPion, 0, nTPCSigmaN[0]))) {
634+
if ((track.sign() > 0 && SelectionPID(track, strategyPIDPion, 0, nTPCSigmaP[0]) && (itsResponse.nSigmaITS<o2::track::PID::Pion>(track) > -3.0 && itsResponse.nSigmaITS<o2::track::PID::Pion>(track) < 3.0)) || (track.sign() < 0 && SelectionPID(track, strategyPIDPion, 0, nTPCSigmaN[0]) && (itsResponse.nSigmaITS<o2::track::PID::Pion>(track) > -3.0 && itsResponse.nSigmaITS<o2::track::PID::Pion>(track) < 3.0))) {
633635
ROOT::Math::PtEtaPhiMVector temp(track.pt(), track.eta(), track.phi(), massPi);
634636
pions.push_back(temp);
635637
PionIndex.push_back(track.globalIndex());
@@ -650,7 +652,7 @@ struct f1protonreducedtable {
650652
PionTOFHit.push_back(PionTOF);
651653
}
652654

653-
if ((track.pt() > cMinKaonPt && track.sign() > 0 && SelectionPID(track, strategyPIDKaon, 1, nTPCSigmaP[1])) || (track.pt() > cMinKaonPt && track.sign() < 0 && SelectionPID(track, strategyPIDKaon, 1, nTPCSigmaN[1]))) {
655+
if ((track.pt() > cMinKaonPt && track.sign() > 0 && SelectionPID(track, strategyPIDKaon, 1, nTPCSigmaP[1]) && (itsResponse.nSigmaITS<o2::track::PID::Kaon>(track) > -3.0 && itsResponse.nSigmaITS<o2::track::PID::Kaon>(track) < 3.0)) || (track.pt() > cMinKaonPt && track.sign() < 0 && SelectionPID(track, strategyPIDKaon, 1, nTPCSigmaN[1]) && (itsResponse.nSigmaITS<o2::track::PID::Kaon>(track) > -3.0 && itsResponse.nSigmaITS<o2::track::PID::Kaon>(track) < 3.0))) {
654656
ROOT::Math::PtEtaPhiMVector temp(track.pt(), track.eta(), track.phi(), massKa);
655657
kaons.push_back(temp);
656658
KaonIndex.push_back(track.globalIndex());
@@ -673,7 +675,7 @@ struct f1protonreducedtable {
673675
KaonTOFHit.push_back(KaonTOF);
674676
}
675677

676-
if ((track.pt() < cMaxProtonPt && track.sign() > 0 && SelectionPID(track, strategyPIDProton, 2, nTPCSigmaP[2])) || (track.pt() < cMaxProtonPt && track.sign() < 0 && SelectionPID(track, strategyPIDProton, 2, nTPCSigmaN[2]))) {
678+
if ((track.pt() < cMaxProtonPt && track.sign() > 0 && SelectionPID(track, strategyPIDProton, 2, nTPCSigmaP[2]) && (itsResponse.nSigmaITS<o2::track::PID::Proton>(track) > -3.0 && itsResponse.nSigmaITS<o2::track::PID::Proton>(track) < 3.0)) || (track.pt() < cMaxProtonPt && track.sign() < 0 && SelectionPID(track, strategyPIDProton, 2, nTPCSigmaN[2]) && (itsResponse.nSigmaITS<o2::track::PID::Proton>(track) > -3.0 && itsResponse.nSigmaITS<o2::track::PID::Proton>(track) < 3.0))) {
677679
ROOT::Math::PtEtaPhiMVector temp(track.pt(), track.eta(), track.phi(), massPr);
678680
protons.push_back(temp);
679681
ProtonIndex.push_back(track.globalIndex());

0 commit comments

Comments
 (0)