From fc3d582c08aff8bfd2fd327f37b07b7664b54f51 Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Mon, 17 Nov 2025 19:35:30 +0100 Subject: [PATCH 1/2] PWGEM/Dilepton: add phi protection in EMTrack.h --- PWGEM/Dilepton/Utils/EMTrack.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/PWGEM/Dilepton/Utils/EMTrack.h b/PWGEM/Dilepton/Utils/EMTrack.h index 29bfdd94929..7b943c12a54 100644 --- a/PWGEM/Dilepton/Utils/EMTrack.h +++ b/PWGEM/Dilepton/Utils/EMTrack.h @@ -186,6 +186,9 @@ class EMPair : public EMTrack float pt = std::sqrt(px * px + py * py); float eta = std::atanh(pz / sqrt(std::pow(px, 2) + std::pow(py, 2) + std::pow(pz, 2))); float phi = std::atan2(py, px); + if (phi < 0.f) { + phi += 2.f * M_PI; + } fVPos.SetPt(pt); fVPos.SetEta(eta); @@ -197,6 +200,9 @@ class EMPair : public EMTrack float pt = std::sqrt(px * px + py * py); float eta = std::atanh(pz / std::sqrt(pow(px, 2) + std::pow(py, 2) + std::pow(pz, 2))); float phi = std::atan2(py, px); + if (phi < 0.f) { + phi += 2.f * M_PI; + } fVNeg.SetPt(pt); fVNeg.SetEta(eta); From 8cae9fd155e7d20e43d5981df79c9284a2202754 Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Mon, 17 Nov 2025 19:54:18 +0100 Subject: [PATCH 2/2] add std:: --- PWGEM/Dilepton/Utils/EMTrack.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/PWGEM/Dilepton/Utils/EMTrack.h b/PWGEM/Dilepton/Utils/EMTrack.h index 7b943c12a54..14755d4f406 100644 --- a/PWGEM/Dilepton/Utils/EMTrack.h +++ b/PWGEM/Dilepton/Utils/EMTrack.h @@ -184,7 +184,7 @@ class EMPair : public EMTrack void setPositiveLegPxPyPzM(float px, float py, float pz, float m) { float pt = std::sqrt(px * px + py * py); - float eta = std::atanh(pz / sqrt(std::pow(px, 2) + std::pow(py, 2) + std::pow(pz, 2))); + float eta = std::atanh(pz / std::sqrt(std::pow(px, 2) + std::pow(py, 2) + std::pow(pz, 2))); float phi = std::atan2(py, px); if (phi < 0.f) { phi += 2.f * M_PI; @@ -198,7 +198,7 @@ class EMPair : public EMTrack void setNegativeLegPxPyPzM(float px, float py, float pz, float m) { float pt = std::sqrt(px * px + py * py); - float eta = std::atanh(pz / std::sqrt(pow(px, 2) + std::pow(py, 2) + std::pow(pz, 2))); + float eta = std::atanh(pz / std::sqrt(std::pow(px, 2) + std::pow(py, 2) + std::pow(pz, 2))); float phi = std::atan2(py, px); if (phi < 0.f) { phi += 2.f * M_PI;