From e9d4d46cba21ae8235a918f9134dee4f4afd0460 Mon Sep 17 00:00:00 2001 From: skundu692 Date: Sun, 8 Jun 2025 13:33:55 +0200 Subject: [PATCH 1/8] add new expression for angular correlation --- PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx | 1 + 1 file changed, 1 insertion(+) diff --git a/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx b/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx index be85c214406..2ab12a018d8 100644 --- a/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx +++ b/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx @@ -290,6 +290,7 @@ struct LfTaskLambdaSpinCorr { auto proton1LambdaRF = boostLambda1ToCM(proton1pairCM); auto proton2LambdaRF = boostLambda2ToCM(proton2pairCM); + auto cosThetaDiff = -999.0; if (cosCalculation == 0) { cosThetaDiff = proton1LambdaRF.Vect().Unit().Dot(proton2LambdaRF.Vect().Unit()); From 9be8542726ecf832cd02076fe8450934b28f87f7 Mon Sep 17 00:00:00 2001 From: skundu692 Date: Mon, 9 Jun 2025 19:10:09 +0200 Subject: [PATCH 2/8] Fix clang formating --- PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx | 1 - 1 file changed, 1 deletion(-) diff --git a/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx b/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx index 2ab12a018d8..be85c214406 100644 --- a/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx +++ b/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx @@ -290,7 +290,6 @@ struct LfTaskLambdaSpinCorr { auto proton1LambdaRF = boostLambda1ToCM(proton1pairCM); auto proton2LambdaRF = boostLambda2ToCM(proton2pairCM); - auto cosThetaDiff = -999.0; if (cosCalculation == 0) { cosThetaDiff = proton1LambdaRF.Vect().Unit().Dot(proton2LambdaRF.Vect().Unit()); From ec1db7e4dd272080c5a666e03ac2dfa6b9b4be93 Mon Sep 17 00:00:00 2001 From: skundu692 Date: Wed, 11 Jun 2025 17:25:08 +0200 Subject: [PATCH 3/8] Add new process function to study derived data --- PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx b/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx index be85c214406..3f8790098ed 100644 --- a/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx +++ b/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx @@ -866,9 +866,9 @@ struct LfTaskLambdaSpinCorr { continue; } + // auto postrack1 = v0.template posTrackExtra_as(); // auto negtrack1 = v0.template negTrackExtra_as(); - // 2nd loop for combination of lambda lambda for (const auto& v02 : V0s) { if (v02.index() <= v0.index()) { @@ -899,8 +899,10 @@ struct LfTaskLambdaSpinCorr { continue; } + // auto postrack2 = v02.template posTrackExtra_as(); // auto negtrack2 = v02.template negTrackExtra_as(); + if (v0.posTrackExtraId() == v02.posTrackExtraId() || v0.negTrackExtraId() == v02.negTrackExtraId()) { continue; } @@ -1012,6 +1014,7 @@ struct LfTaskLambdaSpinCorr { if (lambdaTag2 && aLambdaTag2) { continue; } + // auto postrack1 = t1.template posTrackExtra_as(); // auto negtrack1 = t1.template negTrackExtra_as(); // auto postrack2 = t2.template posTrackExtra_as(); From 30d9af6174850eec719155a7f9f459566cccb8b0 Mon Sep 17 00:00:00 2001 From: skundu692 Date: Wed, 11 Jun 2025 17:25:39 +0200 Subject: [PATCH 4/8] Fix --- PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx b/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx index 3f8790098ed..80c75717d08 100644 --- a/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx +++ b/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx @@ -866,9 +866,9 @@ struct LfTaskLambdaSpinCorr { continue; } - // auto postrack1 = v0.template posTrackExtra_as(); // auto negtrack1 = v0.template negTrackExtra_as(); + // 2nd loop for combination of lambda lambda for (const auto& v02 : V0s) { if (v02.index() <= v0.index()) { @@ -899,10 +899,8 @@ struct LfTaskLambdaSpinCorr { continue; } - // auto postrack2 = v02.template posTrackExtra_as(); // auto negtrack2 = v02.template negTrackExtra_as(); - if (v0.posTrackExtraId() == v02.posTrackExtraId() || v0.negTrackExtraId() == v02.negTrackExtraId()) { continue; } @@ -1014,7 +1012,6 @@ struct LfTaskLambdaSpinCorr { if (lambdaTag2 && aLambdaTag2) { continue; } - // auto postrack1 = t1.template posTrackExtra_as(); // auto negtrack1 = t1.template negTrackExtra_as(); // auto postrack2 = t2.template posTrackExtra_as(); From 48a368ab701ecf3056ef5624f6737eab5ff7f9f4 Mon Sep 17 00:00:00 2001 From: skundu692 Date: Wed, 18 Jun 2025 16:59:09 +0200 Subject: [PATCH 5/8] Fix clang and whitespace error --- PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx b/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx index 80c75717d08..be85c214406 100644 --- a/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx +++ b/PWGLF/Tasks/Strangeness/taskLambdaSpinCorr.cxx @@ -868,7 +868,7 @@ struct LfTaskLambdaSpinCorr { // auto postrack1 = v0.template posTrackExtra_as(); // auto negtrack1 = v0.template negTrackExtra_as(); - + // 2nd loop for combination of lambda lambda for (const auto& v02 : V0s) { if (v02.index() <= v0.index()) { From 7339a691bf7148fcf3fd2e3baa23b37142c62dec Mon Sep 17 00:00:00 2001 From: skundu692 Date: Thu, 19 Jun 2025 18:30:11 +0200 Subject: [PATCH 6/8] Fix indexing issue in derived data --- PWGLF/DataModel/LFSpincorrelationTables.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGLF/DataModel/LFSpincorrelationTables.h b/PWGLF/DataModel/LFSpincorrelationTables.h index f7ff44377d4..7327fb1cfa6 100644 --- a/PWGLF/DataModel/LFSpincorrelationTables.h +++ b/PWGLF/DataModel/LFSpincorrelationTables.h @@ -81,4 +81,4 @@ DECLARE_SOA_TABLE(LambdaPairs, "AOD", "LAMBDAPAIR", using LambdaPair = LambdaPairs::iterator; } // namespace o2::aod -#endif // PWGLF_DATAMODEL_LFSPINCORRELATIONTABLES_H_ +#endif // PWGLF_DATAMODEL_LFELATIONTABLES_H_ From f0dbbb03949c9670b1a370bce1bf0f796204a1aa Mon Sep 17 00:00:00 2001 From: skundu692 Date: Thu, 19 Jun 2025 18:58:44 +0200 Subject: [PATCH 7/8] fix linter error --- PWGLF/DataModel/LFSpincorrelationTables.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGLF/DataModel/LFSpincorrelationTables.h b/PWGLF/DataModel/LFSpincorrelationTables.h index 7327fb1cfa6..f7ff44377d4 100644 --- a/PWGLF/DataModel/LFSpincorrelationTables.h +++ b/PWGLF/DataModel/LFSpincorrelationTables.h @@ -81,4 +81,4 @@ DECLARE_SOA_TABLE(LambdaPairs, "AOD", "LAMBDAPAIR", using LambdaPair = LambdaPairs::iterator; } // namespace o2::aod -#endif // PWGLF_DATAMODEL_LFELATIONTABLES_H_ +#endif // PWGLF_DATAMODEL_LFSPINCORRELATIONTABLES_H_ From 56b050ac73fed36ff8f302462a1b875fbc81d82b Mon Sep 17 00:00:00 2001 From: skundu692 Date: Fri, 27 Jun 2025 19:39:15 +0200 Subject: [PATCH 8/8] Avoid pair repeat in mixing --- PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx b/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx index 0dd9b2ac542..78bc5c5fa5e 100644 --- a/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx +++ b/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx @@ -259,13 +259,22 @@ struct lambdaspincorrderived { Preslice tracksPerCollisionV0 = aod::lambdapair::lambdaeventId; void processME(EventCandidates const& collisions, AllTrackCandidates const& V0s) { + auto collOldIndex = -999; + std::vector t1Used; for (auto& [collision1, collision2] : selfCombinations(colBinning, nEvtMixing, -1, collisions, collisions)) { // LOGF(info, "Mixed event collisions: (%d, %d)", collision1.index(), collision2.index()); auto centrality = collision1.cent(); auto groupV01 = V0s.sliceBy(tracksPerCollisionV0, collision1.globalIndex()); auto groupV02 = V0s.sliceBy(tracksPerCollisionV0, collision1.globalIndex()); auto groupV03 = V0s.sliceBy(tracksPerCollisionV0, collision2.globalIndex()); - std::vector t1Used(groupV01.size(), false); // <-- reset here + auto collNewIndex = collision1.index(); + // LOGF(info, "Mixed event collisions: (%d, %d)", collNewIndex, collOldIndex); + if (collOldIndex != collNewIndex) { + t1Used.resize(groupV01.size(), false); + // std::fill(t1Used.begin(), t1Used.end(), false); + // std::vector t1Used(groupV01.size(), false); // <-- reset here + collOldIndex = collNewIndex; + } for (auto& [t1, t3] : soa::combinations(o2::soa::CombinationsFullIndexPolicy(groupV01, groupV03))) { if (t1Used[t1.index()]) { continue;