From e4a9c52d3aa4c9f022200fc301d8d1a95490e686 Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Wed, 15 Apr 2026 21:35:38 +0200 Subject: [PATCH 1/6] PWGEM: remove unnecessary variables in EMTrack --- PWGEM/Dilepton/Tasks/dileptonPolarization.cxx | 4 +- PWGEM/Dilepton/Utils/EMFwdTrack.h | 25 ++++---- PWGEM/Dilepton/Utils/EMTrack.h | 30 +++++----- PWGEM/PhotonMeson/Core/Pi0EtaToGammaGamma.h | 18 +++--- PWGEM/PhotonMeson/Core/TaggingPi0.h | 12 ++-- PWGEM/PhotonMeson/Utils/EMPhoton.h | 60 +++++++++++++++++++ 6 files changed, 101 insertions(+), 48 deletions(-) create mode 100644 PWGEM/PhotonMeson/Utils/EMPhoton.h diff --git a/PWGEM/Dilepton/Tasks/dileptonPolarization.cxx b/PWGEM/Dilepton/Tasks/dileptonPolarization.cxx index 919ee9987e7..df4f9c14fda 100644 --- a/PWGEM/Dilepton/Tasks/dileptonPolarization.cxx +++ b/PWGEM/Dilepton/Tasks/dileptonPolarization.cxx @@ -377,7 +377,7 @@ struct DileptonPolarization { fRegistry.addClone("Pair/same/uls/", "Pair/same/lsmm/"); fRegistry.addClone("Pair/same/", "Pair/mix/"); fRegistry.add("Pair/same/uls/hEta", "#eta_{ll}", kTH1D, {{2000, -10, 10}}, true); - fRegistry.add("Pair/mix/uls/hBeta", "#beta for Lorentz boost;#beta^{same};(#beta^{mix} - #beta^{same})/#beta^{same}", kTH2D, {{100, 0, 1}, {400, -0.2, 0.2}}, true); + // fRegistry.add("Pair/mix/uls/hBeta", "#beta for Lorentz boost;#beta^{same};(#beta^{mix} - #beta^{same})/#beta^{same}", kTH2D, {{100, 0, 1}, {400, -0.2, 0.2}}, true); } template @@ -483,7 +483,7 @@ struct DileptonPolarization { phiPol = std::fabs(phiPol); } fRegistry.fill(HIST("Pair/mix/") + HIST(pair_sign_types[signType]) + HIST("hs"), empair1.mass(), empair1.pt(), empair1.getPairDCA(), empair1.rapidity(), cos_thetaPol, phiPol, quadmom, weight); - fRegistry.fill(HIST("Pair/mix/") + HIST(pair_sign_types[signType]) + HIST("hBeta"), empair1.p() / empair1.e(), (empair2.p() / empair2.e() - empair1.p() / empair1.e()) / (empair1.p() / empair1.e())); + // fRegistry.fill(HIST("Pair/mix/") + HIST(pair_sign_types[signType]) + HIST("hBeta"), empair1.p() / empair1.e(), (empair2.p() / empair2.e() - empair1.p() / empair1.e()) / (empair1.p() / empair1.e())); } // end of pair2 loop } // end of pair1 loop diff --git a/PWGEM/Dilepton/Utils/EMFwdTrack.h b/PWGEM/Dilepton/Utils/EMFwdTrack.h index 3b8ec9ec18e..8f65c359bf1 100644 --- a/PWGEM/Dilepton/Utils/EMFwdTrack.h +++ b/PWGEM/Dilepton/Utils/EMFwdTrack.h @@ -25,11 +25,9 @@ class EMFwdTrack public: EMFwdTrack(float pt, float eta, float phi, float mass, int8_t charge, float dcaX, float dcaY, float cXX, float cXY, float cYY) { - fPt = pt; + fSigned1Pt = static_cast(charge) / pt; fEta = eta; fPhi = phi; - fMass = mass; - fCharge = charge; fDCAx = dcaX; fDCAy = dcaY; fCXX = cXX; @@ -39,31 +37,28 @@ class EMFwdTrack ~EMFwdTrack() {} - float pt() const { return fPt; } + float pt() const { return 1.f / std::fabs(fSigned1Pt); } float eta() const { return fEta; } float phi() const { return fPhi; } - float mass() const { return fMass; } - int8_t sign() const { return fCharge; } + int8_t sign() const { return (fSigned1Pt > 0 ? +1 : -1); } float fwdDcaX() const { return fDCAx; } float fwdDcaY() const { return fDCAy; } float fwdDcaXY() const { return std::sqrt(std::pow(fDCAx, 2) + std::pow(fDCAy, 2)); } - float p() const { return fPt * std::cosh(fEta); } - float px() const { return fPt * std::cos(fPhi); } - float py() const { return fPt * std::sin(fPhi); } - float pz() const { return fPt * std::sinh(fEta); } - float e() const { return std::hypot(fPt * std::cosh(fEta), fMass); } // e2 = p2 + m2 - float signed1Pt() const { return fCharge * 1.f / fPt; } + float p() const { return 1.f / std::fabs(fSigned1Pt) * std::cosh(fEta); } + float px() const { return 1.f / std::fabs(fSigned1Pt) * std::cos(fPhi); } + float py() const { return 1.f / std::fabs(fSigned1Pt) * std::sin(fPhi); } + float pz() const { return 1.f / std::fabs(fSigned1Pt) * std::sinh(fEta); } + // float e(const float mass) const { return std::hypot(fPt * std::cosh(fEta), mass); } // e2 = p2 + m2 + float signed1Pt() const { return fSigned1Pt; } float cXX() const { return fCXX; } float cXY() const { return fCXY; } float cYY() const { return fCYY; } protected: - float fPt; + float fSigned1Pt; float fEta; float fPhi; - float fMass; - int8_t fCharge; float fDCAx; float fDCAy; float fCXX; diff --git a/PWGEM/Dilepton/Utils/EMTrack.h b/PWGEM/Dilepton/Utils/EMTrack.h index 8efb0c78226..0a9e0ad160c 100644 --- a/PWGEM/Dilepton/Utils/EMTrack.h +++ b/PWGEM/Dilepton/Utils/EMTrack.h @@ -30,11 +30,9 @@ class EMTrack public: EMTrack(float pt, float eta, float phi, float mass, int8_t charge = 0, float dcaXY = 0.f, float dcaZ = 0.f, float CYY = 0, float CZY = 0, float CZZ = 0) { - fPt = pt; + fSigned1Pt = static_cast(charge) / pt; fEta = eta; fPhi = phi; - fMass = mass; - fCharge = charge; fDCAxy = dcaXY; fDCAz = dcaZ; fCYY = CYY; @@ -44,11 +42,10 @@ class EMTrack ~EMTrack() {} - float pt() const { return fPt; } + float pt() const { return 1.f / std::fabs(fSigned1Pt); } float eta() const { return fEta; } float phi() const { return fPhi; } - float mass() const { return fMass; } - int8_t sign() const { return fCharge; } + int8_t sign() const { return (fSigned1Pt > 0 ? +1 : -1); } float dcaXY() const { return fDCAxy; } float dcaZ() const { return fDCAz; } @@ -56,20 +53,17 @@ class EMTrack float cZY() const { return fCZY; } float cZZ() const { return fCZZ; } - float rapidity() const { return std::log((std::sqrt(std::pow(fMass, 2) + std::pow(fPt * std::cosh(fEta), 2)) + fPt * std::sinh(fEta)) / std::sqrt(std::pow(fMass, 2) + std::pow(fPt, 2))); } - float p() const { return fPt * std::cosh(fEta); } - float px() const { return fPt * std::cos(fPhi); } - float py() const { return fPt * std::sin(fPhi); } - float pz() const { return fPt * std::sinh(fEta); } - float e() const { return std::hypot(fPt * std::cosh(fEta), fMass); } // e2 = p2 + m2 - float signed1Pt() const { return fCharge * 1.f / fPt; } + float p() const { return 1.f / std::fabs(fSigned1Pt) * std::cosh(fEta); } + float px() const { return 1.f / std::fabs(fSigned1Pt) * std::cos(fPhi); } + float py() const { return 1.f / std::fabs(fSigned1Pt) * std::sin(fPhi); } + float pz() const { return 1.f / std::fabs(fSigned1Pt) * std::sinh(fEta); } + // float e() const { return std::hypot(fPt * std::cosh(fEta), fMass); } // e2 = p2 + m2 + float signed1Pt() const { return fSigned1Pt; } protected: - float fPt; + float fSigned1Pt; float fEta; float fPhi; - float fMass; - int8_t fCharge; float fDCAxy; float fDCAz; float fCYY; @@ -158,6 +152,7 @@ class EMPair : public EMTrack public: EMPair(float pt, float eta, float phi, float mass, int8_t charge = 0) : EMTrack(pt, eta, phi, mass, charge, 0, 0, 0, 0, 0) { + fMass = mass; fPairDCA = 999.f; fVPos = ROOT::Math::PtEtaPhiMVector(0, 0, 0, 0); fVNeg = ROOT::Math::PtEtaPhiMVector(0, 0, 0, 0); @@ -167,6 +162,8 @@ class EMPair : public EMTrack } ~EMPair() {} + float mass() const { return fMass; } + float rapidity() const { return std::log((std::sqrt(std::pow(fMass, 2) + std::pow(1.f/ std::fabs(fSigned1Pt) * std::cosh(fEta), 2)) + 1.f/ std::fabs(fSigned1Pt) * std::sinh(fEta)) / std::sqrt(std::pow(fMass, 2) + std::pow(1.f/ std::fabs(fSigned1Pt), 2))); } void setPairDCA(float dca) { fPairDCA = dca; } float getPairDCA() const { return fPairDCA; } @@ -232,6 +229,7 @@ class EMPair : public EMTrack float phi_cp() const { return std::atan2(fVy, fVx); } protected: + float fMass; float fPairDCA; ROOT::Math::PtEtaPhiMVector fVPos; ROOT::Math::PtEtaPhiMVector fVNeg; diff --git a/PWGEM/PhotonMeson/Core/Pi0EtaToGammaGamma.h b/PWGEM/PhotonMeson/Core/Pi0EtaToGammaGamma.h index abf51cd17c8..e09acb54761 100644 --- a/PWGEM/PhotonMeson/Core/Pi0EtaToGammaGamma.h +++ b/PWGEM/PhotonMeson/Core/Pi0EtaToGammaGamma.h @@ -24,11 +24,11 @@ #include "PWGEM/PhotonMeson/Core/V0PhotonCut.h" #include "PWGEM/PhotonMeson/DataModel/EventTables.h" #include "PWGEM/PhotonMeson/DataModel/gammaTables.h" +#include "PWGEM/PhotonMeson/Utils/EMPhoton.h" #include "PWGEM/PhotonMeson/Utils/EventHistograms.h" #include "PWGEM/PhotonMeson/Utils/NMHistograms.h" #include "PWGEM/PhotonMeson/Utils/PairUtilities.h" // Dilepton headers -#include "PWGEM/Dilepton/Utils/EMTrack.h" #include "PWGEM/Dilepton/Utils/EventMixingHandler.h" #include "Common/CCDB/TriggerAliases.h" @@ -249,8 +249,8 @@ struct Pi0EtaToGammaGamma { o2::framework::Partition>> positrons = o2::aod::emprimaryelectron::sign > int8_t(0) && dileptoncuts.cfg_min_pt_track < o2::aod::track::pt&& nabs(o2::aod::track::eta) < dileptoncuts.cfg_max_eta_track; o2::framework::Partition>> electrons = o2::aod::emprimaryelectron::sign < int8_t(0) && dileptoncuts.cfg_min_pt_track < o2::aod::track::pt && nabs(o2::aod::track::eta) < dileptoncuts.cfg_max_eta_track; - o2::aod::pwgem::dilepton::utils::EventMixingHandler, std::pair, o2::aod::pwgem::dilepton::utils::EMTrack>* emh1 = nullptr; - o2::aod::pwgem::dilepton::utils::EventMixingHandler, std::pair, o2::aod::pwgem::dilepton::utils::EMTrack>* emh2 = nullptr; + o2::aod::pwgem::dilepton::utils::EventMixingHandler, std::pair, o2::aod::pwgem::photonmeson::utils::EMPhoton>* emh1 = nullptr; + o2::aod::pwgem::dilepton::utils::EventMixingHandler, std::pair, o2::aod::pwgem::photonmeson::utils::EMPhoton>* emh2 = nullptr; //--------------------------------------------------------------------------- std::vector used_photonIds_per_col; // @@ -383,8 +383,8 @@ struct Pi0EtaToGammaGamma { occ_bin_edges = std::vector(ConfOccupancyBins.value.begin(), ConfOccupancyBins.value.end()); occ_bin_edges.erase(occ_bin_edges.begin()); - emh1 = new o2::aod::pwgem::dilepton::utils::EventMixingHandler, std::pair, o2::aod::pwgem::dilepton::utils::EMTrack>(ndepth); - emh2 = new o2::aod::pwgem::dilepton::utils::EventMixingHandler, std::pair, o2::aod::pwgem::dilepton::utils::EMTrack>(ndepth); + emh1 = new o2::aod::pwgem::dilepton::utils::EventMixingHandler, std::pair, o2::aod::pwgem::photonmeson::utils::EMPhoton>(ndepth); + emh2 = new o2::aod::pwgem::dilepton::utils::EventMixingHandler, std::pair, o2::aod::pwgem::photonmeson::utils::EMPhoton>(ndepth); o2::aod::pwgem::photonmeson::utils::eventhistogram::addEventHistograms(&fRegistry); if constexpr (pairtype == o2::aod::pwgem::photonmeson::photonpair::PairType::kPCMDalitzEE) { @@ -843,11 +843,11 @@ struct Pi0EtaToGammaGamma { std::pair tuple_tmp_id2 = std::make_pair(pos2.trackId(), ele2.trackId()); if (std::find(used_photonIds_per_col.begin(), used_photonIds_per_col.end(), g1.globalIndex()) == used_photonIds_per_col.end()) { - emh1->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::dilepton::utils::EMTrack(g1.pt(), g1.eta(), g1.phi(), 0)); + emh1->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::photonmeson::utils::EMPhoton(g1.pt(), g1.eta(), g1.phi(), 0)); used_photonIds_per_col.emplace_back(g1.globalIndex()); } if (std::find(used_dileptonIds_per_col.begin(), used_dileptonIds_per_col.end(), tuple_tmp_id2) == used_dileptonIds_per_col.end()) { - emh2->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::dilepton::utils::EMTrack(v_ee.Pt(), v_ee.Eta(), v_ee.Phi(), v_ee.M())); + emh2->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::photonmeson::utils::EMPhoton(v_ee.Pt(), v_ee.Eta(), v_ee.Phi(), v_ee.M())); used_dileptonIds_per_col.emplace_back(tuple_tmp_id2); } ndiphoton++; @@ -922,11 +922,11 @@ struct Pi0EtaToGammaGamma { fRegistry.fill(HIST("Pair/same/hs"), v12.M(), v12.Pt(), wpair); if (std::find(used_photonIds_per_col.begin(), used_photonIds_per_col.end(), g1.globalIndex()) == used_photonIds_per_col.end()) { - emh1->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::dilepton::utils::EMTrack(g1.pt(), g1.eta(), g1.phi(), 0)); + emh1->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::photonmeson::utils::EMPhoton(g1.pt(), g1.eta(), g1.phi(), 0)); used_photonIds_per_col.emplace_back(g1.globalIndex()); } if (std::find(used_photonIds_per_col.begin(), used_photonIds_per_col.end(), g2.globalIndex()) == used_photonIds_per_col.end()) { - emh2->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::dilepton::utils::EMTrack(g2.pt(), g2.eta(), g2.phi(), 0)); + emh2->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::photonmeson::utils::EMPhoton(g2.pt(), g2.eta(), g2.phi(), 0)); used_photonIds_per_col.emplace_back(g2.globalIndex()); } ndiphoton++; diff --git a/PWGEM/PhotonMeson/Core/TaggingPi0.h b/PWGEM/PhotonMeson/Core/TaggingPi0.h index fb562beb382..59adf8f0def 100644 --- a/PWGEM/PhotonMeson/Core/TaggingPi0.h +++ b/PWGEM/PhotonMeson/Core/TaggingPi0.h @@ -22,10 +22,10 @@ #include "PWGEM/PhotonMeson/Core/V0PhotonCut.h" #include "PWGEM/PhotonMeson/DataModel/EventTables.h" #include "PWGEM/PhotonMeson/DataModel/gammaTables.h" +#include "PWGEM/PhotonMeson/Utils/EMPhoton.h" #include "PWGEM/PhotonMeson/Utils/EventHistograms.h" #include "PWGEM/PhotonMeson/Utils/PairUtilities.h" // -#include "PWGEM/Dilepton/Utils/EMTrack.h" #include "PWGEM/Dilepton/Utils/EventMixingHandler.h" #include "Common/DataModel/Centrality.h" @@ -104,7 +104,7 @@ struct TaggingPi0 { o2::framework::ConfigurableAxis ConfOccupancyBins{"ConfOccupancyBins", {o2::framework::VARIABLE_WIDTH, -1, 1e+10}, "Mixing bins - occupancy"}; o2::framework::ConfigurableAxis ConfPtBins{"ConfPtBins", {100, 0, 10}, "pT bins for output histograms"}; - using MyEMH = o2::aod::pwgem::dilepton::utils::EventMixingHandler, std::pair, o2::aod::pwgem::dilepton::utils::EMTrack>; + using MyEMH = o2::aod::pwgem::dilepton::utils::EventMixingHandler, std::pair, o2::aod::pwgem::photonmeson::utils::EMPhoton>; EMPhotonEventCut fEMEventCut; struct : o2::framework::ConfigurableGroup { @@ -565,11 +565,11 @@ struct TaggingPi0 { std::pair tuple_tmp_id2 = std::make_pair(pos2.trackId(), ele2.trackId()); if (std::find(used_photonIds_per_col.begin(), used_photonIds_per_col.end(), g1.globalIndex()) == used_photonIds_per_col.end()) { - emh1->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::dilepton::utils::EMTrack(g1.pt(), g1.eta(), g1.phi(), 0)); + emh1->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::photonmeson::utils::EMPhoton(g1.pt(), g1.eta(), g1.phi(), 0)); used_photonIds_per_col.emplace_back(g1.globalIndex()); } if (std::find(used_dileptonIds_per_col.begin(), used_dileptonIds_per_col.end(), tuple_tmp_id2) == used_dileptonIds_per_col.end()) { - emh2->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::dilepton::utils::EMTrack(v_ee.Pt(), v_ee.Eta(), v_ee.Phi(), v_ee.M())); + emh2->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::photonmeson::utils::EMPhoton(v_ee.Pt(), v_ee.Eta(), v_ee.Phi(), v_ee.M())); used_dileptonIds_per_col.emplace_back(tuple_tmp_id2); } ndiphoton++; @@ -590,11 +590,11 @@ struct TaggingPi0 { fRegistry.fill(HIST("Pair/same/hMvsPt"), v12.M(), v1.Pt(), weight); if (std::find(used_photonIds_per_col.begin(), used_photonIds_per_col.end(), g1.globalIndex()) == used_photonIds_per_col.end()) { - emh1->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::dilepton::utils::EMTrack(g1.pt(), g1.eta(), g1.phi(), 0)); + emh1->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::photonmeson::utils::EMPhoton(g1.pt(), g1.eta(), g1.phi(), 0)); used_photonIds_per_col.emplace_back(g1.globalIndex()); } if (std::find(used_photonIds_per_col.begin(), used_photonIds_per_col.end(), g2.globalIndex()) == used_photonIds_per_col.end()) { - emh2->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::dilepton::utils::EMTrack(g2.pt(), g2.eta(), g2.phi(), 0)); + emh2->AddTrackToEventPool(key_df_collision, o2::aod::pwgem::photonmeson::utils::EMPhoton(g2.pt(), g2.eta(), g2.phi(), 0)); used_photonIds_per_col.emplace_back(g2.globalIndex()); } ndiphoton++; diff --git a/PWGEM/PhotonMeson/Utils/EMPhoton.h b/PWGEM/PhotonMeson/Utils/EMPhoton.h new file mode 100644 index 00000000000..64f60203ba1 --- /dev/null +++ b/PWGEM/PhotonMeson/Utils/EMPhoton.h @@ -0,0 +1,60 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \class to store minimal photon info +/// \author daiki.sekihata@cern.ch + +#ifndef PWGEM_DILEPTON_UTILS_EMPHOTON_H_ +#define PWGEM_DILEPTON_UTILS_EMPHOTON_H_ + +#include // IWYU pragma: keep (do not replace with Math/Vector4Dfwd.h) +#include + +#include +#include + +#include + +namespace o2::aod::pwgem::photonmeson::utils +{ +class EMPhoton +{ + public: + EMPhoton(float pt, float eta, float phi, float mass) + { + fPt = pt; + fEta = eta; + fPhi = phi; + fMass = mass; + } + + ~EMPhoton() {} + + float pt() const { return fPt; } + float eta() const { return fEta; } + float phi() const { return fPhi; } + + float p() const { return fPt * std::cosh(fEta); } + float px() const { return fPt * std::cos(fPhi); } + float py() const { return fPt * std::sin(fPhi); } + float pz() const { return fPt * std::sinh(fEta); } + float mass() const { return fMass; } + float rapidity() const { return std::log((std::sqrt(std::pow(fMass, 2) + std::pow(fPt * std::cosh(fEta), 2)) + fPt * std::sinh(fEta)) / std::sqrt(std::pow(fMass, 2) + std::pow(fPt, 2))); } + + protected: + float fPt; + float fEta; + float fPhi; + float fMass; +}; + +} // namespace o2::aod::pwgem::photonmeson::utils +#endif // PWGEM_DILEPTON_UTILS_EMPHOTON_H_ From 1aefd7887320dd984bb55694f61ec4c9d17ca66c Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Wed, 15 Apr 2026 19:36:58 +0000 Subject: [PATCH 2/6] Please consider the following formatting changes --- PWGEM/Dilepton/Utils/EMTrack.h | 4 ++-- PWGEM/PhotonMeson/Utils/EMPhoton.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/PWGEM/Dilepton/Utils/EMTrack.h b/PWGEM/Dilepton/Utils/EMTrack.h index 0a9e0ad160c..e6a9cb2893b 100644 --- a/PWGEM/Dilepton/Utils/EMTrack.h +++ b/PWGEM/Dilepton/Utils/EMTrack.h @@ -53,7 +53,7 @@ class EMTrack float cZY() const { return fCZY; } float cZZ() const { return fCZZ; } - float p() const { return 1.f / std::fabs(fSigned1Pt) * std::cosh(fEta); } + float p() const { return 1.f / std::fabs(fSigned1Pt) * std::cosh(fEta); } float px() const { return 1.f / std::fabs(fSigned1Pt) * std::cos(fPhi); } float py() const { return 1.f / std::fabs(fSigned1Pt) * std::sin(fPhi); } float pz() const { return 1.f / std::fabs(fSigned1Pt) * std::sinh(fEta); } @@ -163,7 +163,7 @@ class EMPair : public EMTrack ~EMPair() {} float mass() const { return fMass; } - float rapidity() const { return std::log((std::sqrt(std::pow(fMass, 2) + std::pow(1.f/ std::fabs(fSigned1Pt) * std::cosh(fEta), 2)) + 1.f/ std::fabs(fSigned1Pt) * std::sinh(fEta)) / std::sqrt(std::pow(fMass, 2) + std::pow(1.f/ std::fabs(fSigned1Pt), 2))); } + float rapidity() const { return std::log((std::sqrt(std::pow(fMass, 2) + std::pow(1.f / std::fabs(fSigned1Pt) * std::cosh(fEta), 2)) + 1.f / std::fabs(fSigned1Pt) * std::sinh(fEta)) / std::sqrt(std::pow(fMass, 2) + std::pow(1.f / std::fabs(fSigned1Pt), 2))); } void setPairDCA(float dca) { fPairDCA = dca; } float getPairDCA() const { return fPairDCA; } diff --git a/PWGEM/PhotonMeson/Utils/EMPhoton.h b/PWGEM/PhotonMeson/Utils/EMPhoton.h index 64f60203ba1..a031f8a46dc 100644 --- a/PWGEM/PhotonMeson/Utils/EMPhoton.h +++ b/PWGEM/PhotonMeson/Utils/EMPhoton.h @@ -42,7 +42,7 @@ class EMPhoton float eta() const { return fEta; } float phi() const { return fPhi; } - float p() const { return fPt * std::cosh(fEta); } + float p() const { return fPt * std::cosh(fEta); } float px() const { return fPt * std::cos(fPhi); } float py() const { return fPt * std::sin(fPhi); } float pz() const { return fPt * std::sinh(fEta); } From a5dea901b9b7d3245da6b1c9e970544e3ae13652 Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Wed, 15 Apr 2026 21:43:43 +0200 Subject: [PATCH 3/6] Update header guards in EMPhoton.h --- PWGEM/PhotonMeson/Utils/EMPhoton.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/PWGEM/PhotonMeson/Utils/EMPhoton.h b/PWGEM/PhotonMeson/Utils/EMPhoton.h index a031f8a46dc..74ffdd1a71d 100644 --- a/PWGEM/PhotonMeson/Utils/EMPhoton.h +++ b/PWGEM/PhotonMeson/Utils/EMPhoton.h @@ -12,8 +12,8 @@ /// \class to store minimal photon info /// \author daiki.sekihata@cern.ch -#ifndef PWGEM_DILEPTON_UTILS_EMPHOTON_H_ -#define PWGEM_DILEPTON_UTILS_EMPHOTON_H_ +#ifndef PWGEM_PHOTONMESON_UTILS_EMPHOTON_H_ +#define PWGEM_PHOTONMESON_UTILS_EMPHOTON_H_ #include // IWYU pragma: keep (do not replace with Math/Vector4Dfwd.h) #include @@ -57,4 +57,4 @@ class EMPhoton }; } // namespace o2::aod::pwgem::photonmeson::utils -#endif // PWGEM_DILEPTON_UTILS_EMPHOTON_H_ +#endif // PWGEM_PHOTONMESON_UTILS_EMPHOTON_H_ From 825784203a19bafa633817a8cc59b02cd4130761 Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Wed, 15 Apr 2026 21:57:43 +0200 Subject: [PATCH 4/6] Remove mass parameter from EMTrack constructor --- PWGEM/Dilepton/Utils/EMTrack.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGEM/Dilepton/Utils/EMTrack.h b/PWGEM/Dilepton/Utils/EMTrack.h index e6a9cb2893b..d345f1c1924 100644 --- a/PWGEM/Dilepton/Utils/EMTrack.h +++ b/PWGEM/Dilepton/Utils/EMTrack.h @@ -28,7 +28,7 @@ namespace o2::aod::pwgem::dilepton::utils class EMTrack { public: - EMTrack(float pt, float eta, float phi, float mass, int8_t charge = 0, float dcaXY = 0.f, float dcaZ = 0.f, float CYY = 0, float CZY = 0, float CZZ = 0) + EMTrack(float pt, float eta, float phi, float /*mass*/, int8_t charge = 0, float dcaXY = 0.f, float dcaZ = 0.f, float CYY = 0, float CZY = 0, float CZZ = 0) { fSigned1Pt = static_cast(charge) / pt; fEta = eta; From 69964eb3c6f4f219520a55fb19dda1df424f3d94 Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Wed, 15 Apr 2026 21:58:29 +0200 Subject: [PATCH 5/6] Refactor EMFwdTrack constructor parameters Removed unused parameters 'mass' and 'charge' from EMFwdTrack constructor. --- PWGEM/Dilepton/Utils/EMFwdTrack.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGEM/Dilepton/Utils/EMFwdTrack.h b/PWGEM/Dilepton/Utils/EMFwdTrack.h index 8f65c359bf1..8cfc94a09d7 100644 --- a/PWGEM/Dilepton/Utils/EMFwdTrack.h +++ b/PWGEM/Dilepton/Utils/EMFwdTrack.h @@ -23,7 +23,7 @@ namespace o2::aod::pwgem::dilepton::utils class EMFwdTrack { public: - EMFwdTrack(float pt, float eta, float phi, float mass, int8_t charge, float dcaX, float dcaY, float cXX, float cXY, float cYY) + EMFwdTrack(float pt, float eta, float phi, float /*mass*/, int8_t /*charge*/, float dcaX, float dcaY, float cXX, float cXY, float cYY) { fSigned1Pt = static_cast(charge) / pt; fEta = eta; From ce08e26447ab6e9d1579d474b32f82085240b765 Mon Sep 17 00:00:00 2001 From: Daiki Sekihata Date: Wed, 15 Apr 2026 21:59:08 +0200 Subject: [PATCH 6/6] Update EMFwdTrack constructor to include charge --- PWGEM/Dilepton/Utils/EMFwdTrack.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PWGEM/Dilepton/Utils/EMFwdTrack.h b/PWGEM/Dilepton/Utils/EMFwdTrack.h index 8cfc94a09d7..5492ddc2ab0 100644 --- a/PWGEM/Dilepton/Utils/EMFwdTrack.h +++ b/PWGEM/Dilepton/Utils/EMFwdTrack.h @@ -23,7 +23,7 @@ namespace o2::aod::pwgem::dilepton::utils class EMFwdTrack { public: - EMFwdTrack(float pt, float eta, float phi, float /*mass*/, int8_t /*charge*/, float dcaX, float dcaY, float cXX, float cXY, float cYY) + EMFwdTrack(float pt, float eta, float phi, float /*mass*/, int8_t charge, float dcaX, float dcaY, float cXX, float cXY, float cYY) { fSigned1Pt = static_cast(charge) / pt; fEta = eta;