From b4617ca63fcd68f6d04e28d0073ceff922324e32 Mon Sep 17 00:00:00 2001 From: jikim1290 Date: Tue, 26 Aug 2025 19:50:33 +0900 Subject: [PATCH 1/2] adding event mixing --- .../Strangeness/lambdaTwoPartPolarization.cxx | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/PWGLF/Tasks/Strangeness/lambdaTwoPartPolarization.cxx b/PWGLF/Tasks/Strangeness/lambdaTwoPartPolarization.cxx index 43e10b719b8..b9c4629a238 100644 --- a/PWGLF/Tasks/Strangeness/lambdaTwoPartPolarization.cxx +++ b/PWGLF/Tasks/Strangeness/lambdaTwoPartPolarization.cxx @@ -130,6 +130,8 @@ struct lambdaTwoPartPolarization { ConfigurableAxis cosSigAxis{"cosSigAxis", {110, -1.05, 1.05}, "Signal cosine axis"}; ConfigurableAxis cosAccAxis{"cosAccAxis", {110, -7.05, 7.05}, "Accepatance cosine axis"}; + ConfigurableAxis vertexAxis{"vertexAxis", {5, -10, 10}, "vertex axis for mixing"}; + TF1* fMultPVCutLow = nullptr; TF1* fMultPVCutHigh = nullptr; @@ -403,6 +405,57 @@ struct lambdaTwoPartPolarization { FillHistograms(collision, collision, V0s, V0s); } PROCESS_SWITCH(lambdaTwoPartPolarization, processDataSame, "Process Event for same data", true); + + SliceCache cache; + using BinningTypeVertexContributorFT0M = ColumnBinningPolicy; + using BinningTypeVertexContributorFT0C = ColumnBinningPolicy; + void processDataMixedT0C(EventCandidates const& collisions, + TrackCandidates const& /*tracks*/, aod::V0Datas const& V0s, aod::BCsWithTimestamps const&) + { + auto tracksTuple = std::make_tuple(V0s); + BinningTypeVertexContributorFT0C binningOnPositions{{vertexAxis, centAxis}, true}; + SameKindPair pair{binningOnPositions, cfgNoMixedEvents, -1, collisions, tracksTuple, &cache}; + for (auto& [c1, tracks1, c2, tracks2] : pair) { + centrality = c1.centFT0C(); + auto bc = c1.bc_as(); + if (cfgAccCor) { + AccMap = ccdb->getForTimeStamp(cfgAccCorPath.value, bc.timestamp()); + } + if (!eventSelected(c1)) + continue; + if (!eventSelected(c2)) + continue; + if (c1.bcId() == c2.bcId()) + continue; + + FillHistograms(c1, c2, tracks1, tracks2); + } + } + PROCESS_SWITCH(lambdaTwoPartPolarization, processDataMixedT0C, "Process Event for mixed data in PbPb", false); + + void processDataMixedT0M(EventCandidates const& collisions, + TrackCandidates const& /*tracks*/, aod::V0Datas const& V0s, aod::BCsWithTimestamps const&) + { + auto tracksTuple = std::make_tuple(V0s); + BinningTypeVertexContributorFT0M binningOnPositions{{vertexAxis, centAxis}, true}; + SameKindPair pair{binningOnPositions, cfgNoMixedEvents, -1, collisions, tracksTuple, &cache}; + for (auto& [c1, tracks1, c2, tracks2] : pair) { + centrality = c1.centFT0M(); + auto bc = c1.bc_as(); + if (cfgAccCor) { + AccMap = ccdb->getForTimeStamp(cfgAccCorPath.value, bc.timestamp()); + } + if (!eventSelected(c1)) + continue; + if (!eventSelected(c2)) + continue; + if (c1.bcId() == c2.bcId()) + continue; + + FillHistograms(c1, c2, tracks1, tracks2); + } + } + PROCESS_SWITCH(lambdaTwoPartPolarization, processDataMixedT0M, "Process Event for mixed data in pp", false); }; WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) From 15cb26242af5af12b8a30ac3085a3a8172f33115 Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Tue, 26 Aug 2025 10:51:29 +0000 Subject: [PATCH 2/2] Please consider the following formatting changes --- PWGLF/Tasks/Strangeness/lambdaTwoPartPolarization.cxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/PWGLF/Tasks/Strangeness/lambdaTwoPartPolarization.cxx b/PWGLF/Tasks/Strangeness/lambdaTwoPartPolarization.cxx index b9c4629a238..af0c57fbeea 100644 --- a/PWGLF/Tasks/Strangeness/lambdaTwoPartPolarization.cxx +++ b/PWGLF/Tasks/Strangeness/lambdaTwoPartPolarization.cxx @@ -410,7 +410,7 @@ struct lambdaTwoPartPolarization { using BinningTypeVertexContributorFT0M = ColumnBinningPolicy; using BinningTypeVertexContributorFT0C = ColumnBinningPolicy; void processDataMixedT0C(EventCandidates const& collisions, - TrackCandidates const& /*tracks*/, aod::V0Datas const& V0s, aod::BCsWithTimestamps const&) + TrackCandidates const& /*tracks*/, aod::V0Datas const& V0s, aod::BCsWithTimestamps const&) { auto tracksTuple = std::make_tuple(V0s); BinningTypeVertexContributorFT0C binningOnPositions{{vertexAxis, centAxis}, true}; @@ -434,13 +434,13 @@ struct lambdaTwoPartPolarization { PROCESS_SWITCH(lambdaTwoPartPolarization, processDataMixedT0C, "Process Event for mixed data in PbPb", false); void processDataMixedT0M(EventCandidates const& collisions, - TrackCandidates const& /*tracks*/, aod::V0Datas const& V0s, aod::BCsWithTimestamps const&) + TrackCandidates const& /*tracks*/, aod::V0Datas const& V0s, aod::BCsWithTimestamps const&) { auto tracksTuple = std::make_tuple(V0s); BinningTypeVertexContributorFT0M binningOnPositions{{vertexAxis, centAxis}, true}; SameKindPair pair{binningOnPositions, cfgNoMixedEvents, -1, collisions, tracksTuple, &cache}; for (auto& [c1, tracks1, c2, tracks2] : pair) { - centrality = c1.centFT0M(); + centrality = c1.centFT0M(); auto bc = c1.bc_as(); if (cfgAccCor) { AccMap = ccdb->getForTimeStamp(cfgAccCorPath.value, bc.timestamp());