From f7234575de06f6dd5cbf0b082740cfba3f6b9302 Mon Sep 17 00:00:00 2001 From: Fabrizio Grosa Date: Thu, 21 May 2026 02:37:19 +0200 Subject: [PATCH 1/2] Fix deltaphiEP calculation --- PWGHF/D2H/Tasks/taskCharmPolarisation.cxx | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/PWGHF/D2H/Tasks/taskCharmPolarisation.cxx b/PWGHF/D2H/Tasks/taskCharmPolarisation.cxx index 74a57633ce1..e8b2c1ab794 100644 --- a/PWGHF/D2H/Tasks/taskCharmPolarisation.cxx +++ b/PWGHF/D2H/Tasks/taskCharmPolarisation.cxx @@ -2345,10 +2345,11 @@ struct HfTaskCharmPolarisation { float const yQvec = (*qVecs).at(1); ROOT::Math::XYZVector const qVecNorm = ROOT::Math::XYZVector(yQvec, -xQvec, 0.f); ROOT::Math::XYZVector const qVec = ROOT::Math::XYZVector(xQvec, yQvec, 0.); - ROOT::Math::XYZVector threeVecDauCMXY = ROOT::Math::XYZVector(threeVecDauCM.X(), threeVecDauCM.Y(), 0.); - float const phiEP = qVec.Dot(threeVecDauCMXY) / std::sqrt(threeVecDauCMXY.Mag2()) / std::sqrt(qVec.Mag2()); + float const phiStarBeam = std::atan2(threeVecDauCM.Y(), threeVecDauCM.X()); + float const psiAngle = epHelper.GetEventPlane(xQvec, yQvec, 2); + float const deltaPhiStarEP = RecoDecay::constrainAngle(phiStarBeam - psiAngle, 0., 2); float const cosThetaStarEP = qVecNorm.Dot(threeVecDauCM) / std::sqrt(threeVecDauCM.Mag2()) / std::sqrt(qVecNorm.Mag2()); - fillRecoHistos(invMassCharmHadForSparse, ptCharmHad, numPvContributors, rapidity, invMassD0, invMassKPiLc, cosThetaStarEP, phiEP, outputMl, isRotatedCandidate, origin, ptBhadMother, resoChannelLc, absEtaTrackMin, numItsClsMin, numTpcClsMin, charge, nMuons, partRecoDstar, centrality); + fillRecoHistos(invMassCharmHadForSparse, ptCharmHad, numPvContributors, rapidity, invMassD0, invMassKPiLc, cosThetaStarEP, deltaPhiStarEP, outputMl, isRotatedCandidate, origin, ptBhadMother, resoChannelLc, absEtaTrackMin, numItsClsMin, numTpcClsMin, charge, nMuons, partRecoDstar, centrality); } if (DoMc) { // EP analysis for MC From 87bf6e27a22030f5784f4b7ea479da080fdff0ca Mon Sep 17 00:00:00 2001 From: Fabrizio Grosa Date: Thu, 21 May 2026 04:45:15 +0200 Subject: [PATCH 2/2] Remove unused variable --- PWGHF/D2H/Tasks/taskCharmPolarisation.cxx | 1 - 1 file changed, 1 deletion(-) diff --git a/PWGHF/D2H/Tasks/taskCharmPolarisation.cxx b/PWGHF/D2H/Tasks/taskCharmPolarisation.cxx index e8b2c1ab794..5bd5b1b4bb4 100644 --- a/PWGHF/D2H/Tasks/taskCharmPolarisation.cxx +++ b/PWGHF/D2H/Tasks/taskCharmPolarisation.cxx @@ -2344,7 +2344,6 @@ struct HfTaskCharmPolarisation { float const xQvec = (*qVecs).at(0); float const yQvec = (*qVecs).at(1); ROOT::Math::XYZVector const qVecNorm = ROOT::Math::XYZVector(yQvec, -xQvec, 0.f); - ROOT::Math::XYZVector const qVec = ROOT::Math::XYZVector(xQvec, yQvec, 0.); float const phiStarBeam = std::atan2(threeVecDauCM.Y(), threeVecDauCM.X()); float const psiAngle = epHelper.GetEventPlane(xQvec, yQvec, 2); float const deltaPhiStarEP = RecoDecay::constrainAngle(phiStarBeam - psiAngle, 0., 2);