diff --git a/PWGDQ/Tasks/qaMatching.cxx b/PWGDQ/Tasks/qaMatching.cxx index 3fe4b452114..4ccba6acd9f 100644 --- a/PWGDQ/Tasks/qaMatching.cxx +++ b/PWGDQ/Tasks/qaMatching.cxx @@ -74,6 +74,7 @@ #include #include #include +#include #include #include #include @@ -107,6 +108,9 @@ DECLARE_SOA_COLUMN(IsTagged, isTagged, bool); DECLARE_SOA_COLUMN(XAtVtx, xAtVtx, float); DECLARE_SOA_COLUMN(YAtVtx, yAtVtx, float); DECLARE_SOA_COLUMN(ZAtVtx, zAtVtx, float); +DECLARE_SOA_COLUMN(FXAtPlaneZ2, fXAtPlaneZ2, float); +DECLARE_SOA_COLUMN(FYAtPlaneZ2, fYAtPlaneZ2, float); +DECLARE_SOA_COLUMN(FZAtPlaneZ2, fZAtPlaneZ2, float); DECLARE_SOA_COLUMN(PxAtVtx, pxAtVtx, float); DECLARE_SOA_COLUMN(PyAtVtx, pyAtVtx, float); DECLARE_SOA_COLUMN(PzAtVtx, pzAtVtx, float); @@ -145,6 +149,9 @@ DECLARE_SOA_TABLE(QaMatchingMCHTrack, "AOD", "QAMCHTRK", qamatching::XAtVtx, qamatching::YAtVtx, qamatching::ZAtVtx, + qamatching::FXAtPlaneZ2, + qamatching::FYAtPlaneZ2, + qamatching::FZAtPlaneZ2, qamatching::PxAtVtx, qamatching::PyAtVtx, qamatching::PzAtVtx); @@ -3175,6 +3182,7 @@ struct QaMatching { auto const& mchTrack = muonTracks.rawIteratorAt(mchIndex); int mftMchMatchAttempts = getMftMchMatchAttempts(collisions, bcs, mchTrack, mftTracks); auto mchTrackAtVertex = VarManager::PropagateMuon(mchTrack, collision, VarManager::kToVertex); + auto mchTrackAtPlaneZ2 = propagateToZMch(mchTrackAtVertex, o2::mft::constants::mft::LayerZCoordinate()[9]); bool isTagged = false; if (std::find(taggedMuons.begin(), taggedMuons.end(), mchIndex) != taggedMuons.end()) { isTagged = true; @@ -3191,6 +3199,9 @@ struct QaMatching { static_cast(mchTrackAtVertex.getX()), static_cast(mchTrackAtVertex.getY()), static_cast(mchTrackAtVertex.getZ()), + static_cast(mchTrackAtPlaneZ2.getX()), + static_cast(mchTrackAtPlaneZ2.getY()), + static_cast(mchTrackAtPlaneZ2.getZ()), static_cast(mchTrackAtVertex.getPx()), static_cast(mchTrackAtVertex.getPy()), static_cast(mchTrackAtVertex.getPz()));