From 864e719408bb9218dfac99c2fbe770166d7931d0 Mon Sep 17 00:00:00 2001 From: skundu692 Date: Sun, 8 Jun 2025 13:33:55 +0200 Subject: [PATCH 1/9] 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 e13aea9cb8dc4102e50f692e2cb4e3f085ed093b Mon Sep 17 00:00:00 2001 From: skundu692 Date: Mon, 9 Jun 2025 19:10:09 +0200 Subject: [PATCH 2/9] 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 7b649c06fb017ae3b851f12f217a91d5406cd12f Mon Sep 17 00:00:00 2001 From: skundu692 Date: Wed, 11 Jun 2025 17:25:08 +0200 Subject: [PATCH 3/9] 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 7539f7eb946356a4a2e13443366762fbe8349122 Mon Sep 17 00:00:00 2001 From: skundu692 Date: Wed, 11 Jun 2025 17:25:39 +0200 Subject: [PATCH 4/9] 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 07e4a3faa132ed8c946e18f3b9aa15fba6451c56 Mon Sep 17 00:00:00 2001 From: skundu692 Date: Wed, 18 Jun 2025 16:59:09 +0200 Subject: [PATCH 5/9] 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 5c07ec43d5119169f88d96bda384f3eac0ceb895 Mon Sep 17 00:00:00 2001 From: skundu692 Date: Thu, 19 Jun 2025 18:30:11 +0200 Subject: [PATCH 6/9] 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 74424e45acc4a450d48cb19a617e1399dedebf96 Mon Sep 17 00:00:00 2001 From: skundu692 Date: Thu, 19 Jun 2025 18:58:44 +0200 Subject: [PATCH 7/9] 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 1f2ad383f538eb57c4e2846b1e24686cda8ee45c Mon Sep 17 00:00:00 2001 From: skundu692 Date: Mon, 30 Jun 2025 16:35:54 +0200 Subject: [PATCH 8/9] Improve event mixing condition --- PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx b/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx index 78bc5c5fa5e..e2bf90c4183 100644 --- a/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx +++ b/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx @@ -127,6 +127,9 @@ struct lambdaspincorrderived { template bool checkKinematics(T1 const& candidate1, T2 const& candidate2) { + if (candidate1.v0Status() != candidate2.v0Status()) { + return false; + } if (std::abs(candidate1.lambdaPt() - candidate2.lambdaPt()) > ptMix) { return false; } From 18021ac2cd5a2ec3d1610a723d2be50b1ee930ba Mon Sep 17 00:00:00 2001 From: skundu692 Date: Mon, 30 Jun 2025 19:31:27 +0200 Subject: [PATCH 9/9] Add kinematic histogram --- PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx b/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx index e2bf90c4183..978d5528a69 100644 --- a/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx +++ b/PWGLF/Tasks/Strangeness/lambdaspincorrderived.cxx @@ -82,6 +82,14 @@ struct lambdaspincorrderived { { histos.add("hCentrality", "Centrality distribution", kTH1F, {{configThnAxisCentrality}}); + histos.add("hLambdaSameForLL", "hLambdaSameForLL", HistType::kTH3D, {{50, 0.0, 5.0}, {32, -0.8, 0.8}, {72, 0.0, 2.0 * TMath::Pi()}}, true); + histos.add("hLambdaSameForLAL", "hLambdaSameForLAL", HistType::kTH3D, {{50, 0.0, 5.0}, {32, -0.8, 0.8}, {72, 0.0, 2.0 * TMath::Pi()}}, true); + histos.add("hAntiLambdaSameForALAL", "hAntiLambdaSameForALAL", HistType::kTH3D, {{50, 0.0, 5.0}, {32, -0.8, 0.8}, {72, 0.0, 2.0 * TMath::Pi()}}, true); + + histos.add("hLambdaMixForLL", "hLambdaMixForLL", HistType::kTH3D, {{50, 0.0, 5.0}, {32, -0.8, 0.8}, {72, 0.0, 2.0 * TMath::Pi()}}, true); + histos.add("hLambdaMixForLAL", "hLambdaMixForLAL", HistType::kTH3D, {{50, 0.0, 5.0}, {32, -0.8, 0.8}, {72, 0.0, 2.0 * TMath::Pi()}}, true); + histos.add("hAntiLambdaMixForALAL", "hAntiLambdaMixForALAL", HistType::kTH3D, {{50, 0.0, 5.0}, {32, -0.8, 0.8}, {72, 0.0, 2.0 * TMath::Pi()}}, true); + histos.add("hSparseLambdaLambda", "hSparseLambdaLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, configThnAxisCentrality, configThnAxisR}, true); histos.add("hSparseLambdaAntiLambda", "hSparseLambdaAntiLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, configThnAxisCentrality, configThnAxisR}, true); histos.add("hSparseAntiLambdaAntiLambda", "hSparseAntiLambdaAntiLambda", HistType::kTHnSparseF, {configThnAxisInvMass, configThnAxisInvMass, configThnAxisPol, configThnAxisCentrality, configThnAxisR}, true); @@ -189,18 +197,24 @@ struct lambdaspincorrderived { if (datatype == 0) { if (tag1 == 0 && tag2 == 0) { histos.fill(HIST("hSparseLambdaLambda"), particle1.M(), particle2.M(), cosThetaDiff, centrality, deltaR); + histos.fill(HIST("hLambdaSameForLL"), particle1.Pt(), particle1.Eta(), RecoDecay::constrainAngle(particle1.Phi(), 0.0F)); } else if ((tag1 == 0 && tag2 == 1) || (tag1 == 1 && tag2 == 0)) { histos.fill(HIST("hSparseLambdaAntiLambda"), particle1.M(), particle2.M(), cosThetaDiff, centrality, deltaR); + histos.fill(HIST("hLambdaSameForLAL"), particle1.Pt(), particle1.Eta(), RecoDecay::constrainAngle(particle1.Phi(), 0.0F)); } else if (tag1 == 1 && tag2 == 1) { histos.fill(HIST("hSparseAntiLambdaAntiLambda"), particle1.M(), particle2.M(), cosThetaDiff, centrality, deltaR); + histos.fill(HIST("hAntiLambdaSameForALAL"), particle1.Pt(), particle1.Eta(), RecoDecay::constrainAngle(particle1.Phi(), 0.0F)); } } else if (datatype == 1) { if (tag1 == 0 && tag2 == 0) { histos.fill(HIST("hSparseLambdaLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, centrality, deltaR); + histos.fill(HIST("hLambdaMixForLL"), particle1.Pt(), particle1.Eta(), RecoDecay::constrainAngle(particle1.Phi(), 0.0F)); } else if ((tag1 == 0 && tag2 == 1) || (tag1 == 1 && tag2 == 0)) { histos.fill(HIST("hSparseLambdaAntiLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, centrality, deltaR); + histos.fill(HIST("hLambdaMixForLAL"), particle1.Pt(), particle1.Eta(), RecoDecay::constrainAngle(particle1.Phi(), 0.0F)); } else if (tag1 == 1 && tag2 == 1) { histos.fill(HIST("hSparseAntiLambdaAntiLambdaMixed"), particle1.M(), particle2.M(), cosThetaDiff, centrality, deltaR); + histos.fill(HIST("hAntiLambdaMixForALAL"), particle1.Pt(), particle1.Eta(), RecoDecay::constrainAngle(particle1.Phi(), 0.0F)); } } }