@@ -29,10 +29,11 @@ struct ThreePartCorr {
2929 HistogramRegistry MCRegistry{" MCRegistry" , {}, OutputObjHandlingPolicy::AnalysisObject, false , true };
3030 HistogramRegistry QARegistry{" QARegistry" , {}, OutputObjHandlingPolicy::AnalysisObject, false , true };
3131
32- // Collision filters
32+ // Collision & Event filters
3333 Filter CollCent = aod::cent::centFT0C > 0 .0f && aod::cent::centFT0C < 90 .0f ;
3434 Filter CollZvtx = nabs(aod::collision::posZ) < 7 .0f ;
3535 Filter MCCollZvtx = nabs(aod::mccollision::posZ) < 7 .0f ;
36+ Filter EvSelect = aod::evsel::sel8 == true ;
3637
3738 // V0 filters
3839 Filter V0Pt = aod::v0data::pt > 0 .6f && aod::v0data::pt < 12 .0f ;
@@ -41,24 +42,25 @@ struct ThreePartCorr {
4142 // Track filters
4243 Filter TrackPt = aod::track::pt > 0 .2f && aod::track::pt < 3 .0f ;
4344 Filter TrackEta = nabs(aod::track::eta) < 0 .8f ;
45+ Filter GlobalTracks = requireGlobalTrackInFilter();
4446
4547 // Particle filters
4648 Filter ParticlePt = aod::mcparticle::pt > 0 .2f && aod::mcparticle::pt < 3 .0f ;
4749 Filter ParticleEta = nabs(aod::mcparticle::eta) < 0 .8f ;
4850
4951 // Table aliases - Data
50- using MyFilteredCollisions = soa::Filtered<soa::Join<aod::Collisions, aod::CentFT0Cs>>;
52+ using MyFilteredCollisions = soa::Filtered<soa::Join<aod::Collisions, aod::CentFT0Cs, aod::EvSels >>;
5153 using MyFilteredCollision = MyFilteredCollisions::iterator;
5254 using MyFilteredV0s = soa::Filtered<aod::V0Datas>;
53- using MyFilteredTracks = soa::Filtered<soa::Join<aod::Tracks, aod::TracksExtra,
55+ using MyFilteredTracks = soa::Filtered<soa::Join<aod::Tracks, aod::TracksExtra, aod::TrackSelection,
5456 aod::pidTPCPi, aod::pidTPCKa, aod::pidTPCPr,
5557 aod::pidTOFPi, aod::pidTOFKa, aod::pidTOFPr, aod::pidTOFbeta>>;
5658
5759 // Table aliases - MC
5860 using MyFilteredMCGenCollision = soa::Filtered<aod::McCollisions>::iterator;
5961 using MyFilteredMCParticles = soa::Filtered<aod::McParticles>;
60- using MyFilteredMCRecCollision = soa::Filtered<soa::Join<aod::Collisions, aod::McCollisionLabels>>::iterator;
61- using MyFilteredMCTracks = soa::Filtered<soa::Join<aod::Tracks, aod::McTrackLabels>>;
62+ using MyFilteredMCRecCollision = soa::Filtered<soa::Join<aod::Collisions, aod::EvSels, aod:: McCollisionLabels>>::iterator;
63+ using MyFilteredMCTracks = soa::Filtered<soa::Join<aod::Tracks, aod::TrackSelection, aod:: McTrackLabels>>;
6264
6365 // Mixed-events binning policy
6466 SliceCache cache;
@@ -70,10 +72,10 @@ struct ThreePartCorr {
7072 Pair<MyFilteredCollisions, MyFilteredV0s, MyFilteredTracks, BinningType> pair{CollBinning, 5 , -1 , &cache};
7173
7274 // Process configurables
73- Configurable<bool > FilterSwitch{ " FilterSwitch " , false , " Switch for the FakeV0Filter function" };
75+ Configurable<bool > ConfFilterSwitch{ " ConfFilterSwitch " , false , " Switch for the FakeV0Filter function" };
7476
7577 // Particle masses
76- Double_t massLambda = 1.115683 ;
78+ Double_t massLambda = o2::constants::physics::MassLambda0 ;
7779 Double_t DGaussSigma = 0.0021 ;
7880
7981 // Correlation variables
@@ -117,18 +119,18 @@ struct ThreePartCorr {
117119 QARegistry.add (" hInvMassLambda" , " hInvMassLambda" , {HistType::kTH3D , {{LambdaInvMassAxis}, {V0PtAxis}, {CentralityAxis}}});
118120 QARegistry.add (" hInvMassAntiLambda" , " hInvMassAntiLambda" , {HistType::kTH3D , {{LambdaInvMassAxis}, {V0PtAxis}, {CentralityAxis}}});
119121
120- MCRegistry.add (" hGenPionP" , " hGenMomPionP " , {HistType::kTH1D , {TrackPtAxis}});
121- MCRegistry.add (" hGenPionN" , " hGenMomPionN " , {HistType::kTH1D , {TrackPtAxis}});
122- MCRegistry.add (" hGenKaonP" , " hGenMomKaonP " , {HistType::kTH1D , {TrackPtAxis}});
123- MCRegistry.add (" hGenKaonN" , " hGenMomKaonN " , {HistType::kTH1D , {TrackPtAxis}});
124- MCRegistry.add (" hGenProtonP" , " hGenMomProtonP " , {HistType::kTH1D , {TrackPtAxis}});
125- MCRegistry.add (" hGenProtonN" , " hGenMomProtonN " , {HistType::kTH1D , {TrackPtAxis}});
126- MCRegistry.add (" hRecPionP" , " hRecMomPionP " , {HistType::kTH1D , {TrackPtAxis}});
127- MCRegistry.add (" hRecPionN" , " hRecMomPionN " , {HistType::kTH1D , {TrackPtAxis}});
128- MCRegistry.add (" hRecKaonP" , " hRecMomKaonP " , {HistType::kTH1D , {TrackPtAxis}});
129- MCRegistry.add (" hRecKaonN" , " hRecMomKaonN " , {HistType::kTH1D , {TrackPtAxis}});
130- MCRegistry.add (" hRecProtonP" , " hRecMomProtonP " , {HistType::kTH1D , {TrackPtAxis}});
131- MCRegistry.add (" hRecProtonN" , " hRecMomProtonN " , {HistType::kTH1D , {TrackPtAxis}});
122+ MCRegistry.add (" hGenPionP" , " hGenPionP " , {HistType::kTH1D , {TrackPtAxis}});
123+ MCRegistry.add (" hGenPionN" , " hGenPionN " , {HistType::kTH1D , {TrackPtAxis}});
124+ MCRegistry.add (" hGenKaonP" , " hGenKaonP " , {HistType::kTH1D , {TrackPtAxis}});
125+ MCRegistry.add (" hGenKaonN" , " hGenKaonN " , {HistType::kTH1D , {TrackPtAxis}});
126+ MCRegistry.add (" hGenProtonP" , " hGenProtonP " , {HistType::kTH1D , {TrackPtAxis}});
127+ MCRegistry.add (" hGenProtonN" , " hGenProtonN " , {HistType::kTH1D , {TrackPtAxis}});
128+ MCRegistry.add (" hRecPionP" , " hRecPionP " , {HistType::kTH1D , {TrackPtAxis}});
129+ MCRegistry.add (" hRecPionN" , " hRecPionN " , {HistType::kTH1D , {TrackPtAxis}});
130+ MCRegistry.add (" hRecKaonP" , " hRecKaonP " , {HistType::kTH1D , {TrackPtAxis}});
131+ MCRegistry.add (" hRecKaonN" , " hRecKaonN " , {HistType::kTH1D , {TrackPtAxis}});
132+ MCRegistry.add (" hRecProtonP" , " hRecProtonP " , {HistType::kTH1D , {TrackPtAxis}});
133+ MCRegistry.add (" hRecProtonN" , " hRecProtonN " , {HistType::kTH1D , {TrackPtAxis}});
132134
133135 SECorrRegistry.add (" hSameLambdaPion_SGNL" , " Same-event #Lambda - #pi correlator (SGNL region)" , {HistType::kTHnSparseD , {{PhiAxis}, {EtaAxis}, {CentralityAxis}, {ZvtxAxis}, {2 , -2 , 2 }, {2 , -2 , 2 }}});
134136 SECorrRegistry.add (" hSameLambdaPion_SB" , " Same-event #Lambda - #pi correlator (SB region)" , {HistType::kTHnSparseD , {{PhiAxis}, {EtaAxis}, {CentralityAxis}, {ZvtxAxis}, {2 , -2 , 2 }, {2 , -2 , 2 }}});
@@ -280,9 +282,9 @@ struct ThreePartCorr {
280282 MCRegistry.fill (HIST (" hGenPionP" ), particle.pt ());
281283 } else if (particle.pdgCode () == -211 ) { // Neg pions
282284 MCRegistry.fill (HIST (" hGenPionN" ), particle.pt ());
283- } else if (particle.pdgCode () == 310 ) { // Pos kaons
285+ } else if (particle.pdgCode () == 321 ) { // Pos kaons
284286 MCRegistry.fill (HIST (" hGenKaonP" ), particle.pt ());
285- } else if (particle.pdgCode () == -310 ) { // Neg kaons
287+ } else if (particle.pdgCode () == -321 ) { // Neg kaons
286288 MCRegistry.fill (HIST (" hGenKaonN" ), particle.pt ());
287289 } else if (particle.pdgCode () == 2212 ) { // Pos protons
288290 MCRegistry.fill (HIST (" hGenProtonP" ), particle.pt ());
@@ -311,17 +313,17 @@ struct ThreePartCorr {
311313 if (particle.isPhysicalPrimary ()) {
312314
313315 if (particle.pdgCode () == 211 ) { // Pos pions
314- MCRegistry.fill (HIST (" hRecPionP" ), particle .pt ());
316+ MCRegistry.fill (HIST (" hRecPionP" ), track .pt ());
315317 } else if (particle.pdgCode () == -211 ) { // Neg pions
316- MCRegistry.fill (HIST (" hRecPionN" ), particle .pt ());
317- } else if (particle.pdgCode () == 310 ) { // Pos kaons
318- MCRegistry.fill (HIST (" hRecKaonP" ), particle .pt ());
319- } else if (particle.pdgCode () == -310 ) { // Neg kaons
320- MCRegistry.fill (HIST (" hRecKaonN" ), particle .pt ());
318+ MCRegistry.fill (HIST (" hRecPionN" ), track .pt ());
319+ } else if (particle.pdgCode () == 321 ) { // Pos kaons
320+ MCRegistry.fill (HIST (" hRecKaonP" ), track .pt ());
321+ } else if (particle.pdgCode () == -321 ) { // Neg kaons
322+ MCRegistry.fill (HIST (" hRecKaonN" ), track .pt ());
321323 } else if (particle.pdgCode () == 2212 ) { // Pos protons
322- MCRegistry.fill (HIST (" hRecProtonP" ), particle .pt ());
324+ MCRegistry.fill (HIST (" hRecProtonP" ), track .pt ());
323325 } else if (particle.pdgCode () == -2212 ) { // Neg protons
324- MCRegistry.fill (HIST (" hRecProtonN" ), particle .pt ());
326+ MCRegistry.fill (HIST (" hRecProtonN" ), track .pt ());
325327 }
326328 }
327329 }
@@ -434,7 +436,7 @@ struct ThreePartCorr {
434436 Bool_t FakeV0Filter (const V0Cand& V0, const TrackCand& Track)
435437 {
436438
437- if (FilterSwitch ) {
439+ if (ConfFilterSwitch ) {
438440
439441 TLorentzVector Daughter, Associate;
440442 if (TrackPID (Track)[0 ] == 1.0 ) { // Kaons
0 commit comments