Skip to content

Commit 38d355e

Browse files
authored
[PWGLF] Perform P-Lambda correlation in hStrangeCorrelationFilter.cxx and hStrangeCorrelation.cxx (#18411)
1 parent 7900bb8 commit 38d355e

2 files changed

Lines changed: 20 additions & 2 deletions

File tree

‎PWGLF/TableProducer/Strangeness/hStrangeCorrelationFilter.cxx‎

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,10 @@ struct HStrangeCorrelationFilter {
138138
// formula: |DCAxy| < 0.004f + (0.013f / pt)
139139
Configurable<float> dcaXYconstant{"dcaXYconstant", 0.004, "[0] in |DCAxy| < [0]+[1]/pT"};
140140
Configurable<float> dcaXYpTdep{"dcaXYpTdep", 0.013, "[1] in |DCAxy| < [0]+[1]/pT"};
141+
142+
// perform P-Lambda correlation analysis
143+
Configurable<float> performPLambdacorrelation{"performPLambdacorrelation", 3, "do p-Lambda correlation study"};
144+
Configurable<float> triggerProtonNSigmaTPCFOF{"triggerProtonNSigmaTPCFOF", 3, "minimal n sigma in TOF and TPC for Proton ID"};
141145
} trackSelections;
142146
struct : ConfigurableGroup {
143147
// V0 selections
@@ -213,8 +217,8 @@ struct HStrangeCorrelationFilter {
213217

214218
// using V0LinkedTagged = soa::Join<aod::V0sLinked, aod::V0Tags>;
215219
// using CascadesLinkedTagged = soa::Join<aod::CascadesLinked, aod::CascTags>;
216-
using FullTracks = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksDCA, aod::TrackCompColls>;
217-
using FullTracksMC = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksDCA, aod::McTrackLabels, aod::TrackCompColls>;
220+
using FullTracks = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksDCA, aod::pidTPCFullPr, aod::pidTOFFullPr, aod::TrackCompColls>;
221+
using FullTracksMC = soa::Join<aod::Tracks, aod::TracksExtra, aod::TracksDCA, aod::McTrackLabels, aod::pidTPCFullPr, aod::pidTOFFullPr, aod::TrackCompColls>;
218222
using DauTracks = soa::Join<aod::Tracks, aod::TracksExtra, aod::pidTPCFullPi, aod::pidTPCFullKa, aod::pidTPCFullPr, aod::TracksDCA, aod::TrackCompColls>;
219223
using DauTracksMC = soa::Join<aod::Tracks, aod::TracksExtra, aod::pidTPCFullPi, aod::pidTPCFullKa, aod::pidTPCFullPr, aod::TracksDCA, aod::McTrackLabels, aod::TrackCompColls>;
220224
// using IDTracks= soa::Join<aod::Tracks, aod::TracksExtra, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidBayesPi, aod::pidBayesKa, aod::pidBayesPr, aod::TOFSignal>; // prepared for Bayesian PID
@@ -459,6 +463,13 @@ struct HStrangeCorrelationFilter {
459463
if (!(TESTBIT(track.itsClusterMap(), 0)) && trackSelections.triggerRequireL0) {
460464
return false; // skip, doesn't have cluster in ITS L0
461465
}
466+
bool isProton = std::sqrt(track.tofNSigmaPr() * track.tofNSigmaPr() + track.tpcNSigmaPr() * track.tpcNSigmaPr()) <= trackSelections.triggerProtonNSigmaTPCFOF;
467+
if (trackSelections.performPLambdacorrelation <= 1 && !isProton) {
468+
return false;
469+
}
470+
if (trackSelections.performPLambdacorrelation == 2 && isProton) {
471+
return false;
472+
}
462473
return true;
463474
}
464475
template <class TTrack>

‎PWGLF/Tasks/Strangeness/hStrangeCorrelation.cxx‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,7 @@ struct HStrangeCorrelation {
149149
Configurable<bool> doLocalDensityStudy{"doLocalDensityStudy", false, "if true, create and fill the pt vs eta vs local density spectra of triggers and V0s"};
150150
Configurable<float> localDensityConeRadius{"localDensityConeRadius", 0.4, "radius of the cone in which the local density is counted"};
151151
Configurable<bool> doMultEstimatorResponse{"doMultEstimatorResponse", false, "processSameEventHV0s: fill MultEstimatorResponse, multNTracksPVeta1 vs FT0M percentile and amplitude, with the event selection of PairLossK0/EventRecoEfficiency (no INEL cuts)"};
152+
Configurable<float> performPLambdacorrelation{"performPLambdacorrelation", 3, "do p-Lambda correlation study"};
152153
} masterConfigurations;
153154

154155
// master analysis switches
@@ -1538,6 +1539,12 @@ struct HStrangeCorrelation {
15381539
float efficiency = 1.0f;
15391540
float totalEffUncert = 0.0;
15401541
float efficiencyError = 0.0f;
1542+
if (masterConfigurations.performPLambdacorrelation == 0 && ((Index == 1 && triggSign == 1) || (Index == 2 && triggSign == -1))) {
1543+
return;
1544+
}
1545+
if (masterConfigurations.performPLambdacorrelation == 1 && ((Index == 1 && triggSign == -1) || (Index == 2 && triggSign == 1))) {
1546+
return;
1547+
}
15411548
if (efficiencyFlags.applyEfficiencyCorrection) {
15421549
if (efficiencyFlags.applyEffAsFunctionOfMultAndPhi) {
15431550
std::array<double, 4> bin = {ptassoc, assoc.eta(), assoc.phi(), mult};

0 commit comments

Comments
 (0)