diff --git a/PWGEM/Dilepton/Utils/EMTrack.h b/PWGEM/Dilepton/Utils/EMTrack.h index 29bfdd94929..14755d4f406 100644 --- a/PWGEM/Dilepton/Utils/EMTrack.h +++ b/PWGEM/Dilepton/Utils/EMTrack.h @@ -184,8 +184,11 @@ 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; + } fVPos.SetPt(pt); fVPos.SetEta(eta); @@ -195,8 +198,11 @@ 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; + } fVNeg.SetPt(pt); fVNeg.SetEta(eta);