@@ -77,7 +77,7 @@ DECLARE_SOA_COLUMN(Snp, snp, float);
7777DECLARE_SOA_COLUMN (Tgl, tgl, float );
7878DECLARE_SOA_COLUMN (Signed1Pt, signed1Pt, float );
7979DECLARE_SOA_DYNAMIC_COLUMN (Phi, phi, [](float snp, float alpha) -> float { return asinf (snp) + alpha + static_cast <float >(M_PI); });
80- DECLARE_SOA_DYNAMIC_COLUMN (Eta, eta, [](float tgl) -> float { return logf ( tanf (0 .25f * static_cast <float >(M_PI) - 0 .5f * atanf (tgl))); });
80+ DECLARE_SOA_DYNAMIC_COLUMN (Eta, eta, [](float tgl) -> float { return std::log ( std::tan (0 .25f * static_cast <float >(M_PI) - 0 .5f * std::atan (tgl))); });
8181DECLARE_SOA_DYNAMIC_COLUMN (Pt, pt, [](float signed1Pt) -> float { return std::abs (1 .0f / signed1Pt); });
8282DECLARE_SOA_DYNAMIC_COLUMN (Charge, charge, [](float signed1Pt) -> short { return (signed1Pt > 0 ) ? 1 : -1 ; });
8383DECLARE_SOA_DYNAMIC_COLUMN (Px, px, [](float signed1Pt, float snp, float alpha) -> float {
@@ -434,14 +434,20 @@ DECLARE_SOA_COLUMN(Vx, vx, float);
434434DECLARE_SOA_COLUMN (Vy, vy, float );
435435DECLARE_SOA_COLUMN (Vz, vz, float );
436436DECLARE_SOA_COLUMN (Vt, vt, float );
437+ DECLARE_SOA_DYNAMIC_COLUMN (Phi, phi, [](float px, float py) -> float { return static_cast <float >(M_PI) + std::atan2 (-py, -px); });
438+ DECLARE_SOA_DYNAMIC_COLUMN (Eta, eta, [](float px, float py, float pz) -> float { return 0 .5f * std::log ((std::sqrt (px * px + py * py + pz * pz) + pz) / (std::sqrt (px * px + py * py + pz * pz) - pz)); });
439+ DECLARE_SOA_DYNAMIC_COLUMN (Pt, pt, [](float px, float py) -> float { return std::sqrt (px * px + py * py); });
437440} // namespace mcparticle
438441
439442DECLARE_SOA_TABLE (McParticles, " AOD" , " MCPARTICLE" ,
440443 o2::soa::Index<>, mcparticle::McCollisionId,
441444 mcparticle::PdgCode, mcparticle::StatusCode,
442445 mcparticle::Mother, mcparticle::Daughter, mcparticle::Weight,
443446 mcparticle::Px, mcparticle::Py, mcparticle::Pz, mcparticle::E,
444- mcparticle::Vx, mcparticle::Vy, mcparticle::Vz, mcparticle::Vt);
447+ mcparticle::Vx, mcparticle::Vy, mcparticle::Vz, mcparticle::Vt,
448+ mcparticle::Phi<mcparticle::Px, mcparticle::Py>,
449+ mcparticle::Eta<mcparticle::Px, mcparticle::Py, mcparticle::Pz>,
450+ mcparticle::Pt<mcparticle::Px, mcparticle::Py>);
445451using McParticle = McParticles::iterator;
446452
447453namespace mctracklabel
0 commit comments