@@ -117,9 +117,9 @@ struct DerivedDataCreatorD0Calibration {
117117 std::string prefix = " ml" ;
118118 } cfgMl;
119119
120- using TracksWCovExtraPid = soa::Join<aod::Tracks, aod::TracksCov, aod::TracksExtra, aod::TrackSelection, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullKa, aod::pidTOFFullKa>;
121- using TracksWCovExtraTmoPid = soa::Join<aod::Tracks, aod::TrackToTmo, aod::TracksCov, aod::TracksExtra, aod::TrackSelection, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullKa, aod::pidTOFFullKa>;
122- using TracksWCovExtraTmoPidAndQa = soa::Join<aod::Tracks, aod::TrackToTmo, aod::TrackToTracksQA, aod::TracksCov, aod::TracksExtra, aod::TrackSelection, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullKa, aod::pidTOFFullKa>;
120+ using TracksWCovExtraPid = soa::Join<aod::Tracks, aod::TracksDCA, aod:: TracksCov, aod::TracksExtra, aod::TrackSelection, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullKa, aod::pidTOFFullKa>;
121+ using TracksWCovExtraTmoPid = soa::Join<aod::Tracks, aod::TracksDCA, aod:: TrackToTmo, aod::TracksCov, aod::TracksExtra, aod::TrackSelection, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullKa, aod::pidTOFFullKa>;
122+ using TracksWCovExtraTmoPidAndQa = soa::Join<aod::Tracks, aod::TracksDCA, aod:: TrackToTmo, aod::TrackToTracksQA, aod::TracksCov, aod::TracksExtra, aod::TrackSelection, aod::pidTPCFullPi, aod::pidTOFFullPi, aod::pidTPCFullKa, aod::pidTOFFullKa>;
123123 using CollisionsWEvSel = soa::Join<aod::Collisions, aod::CentFT0Cs, aod::EvSels>;
124124 using TrackMeanOccs = soa::Join<aod::TmoTrackIds, aod::TmoPrim, aod::TmoT0V0, aod::TmoRT0V0Prim, aod::TwmoPrim, aod::TwmoT0V0, aod::TwmoRT0V0Prim>;
125125
@@ -233,8 +233,10 @@ struct DerivedDataCreatorD0Calibration {
233233 continue ;
234234 }
235235 auto trackParCovPos = getTrackParCov (trackPos);
236- o2::dataformats::DCA dcaPos;
237- trackParCovPos.propagateToDCA (primaryVertex, bz, &dcaPos);
236+ o2::dataformats::DCA dcaPos (trackPos.dcaXY (), trackPos.dcaZ (), trackPos.cYY (), trackPos.cZY (), trackPos.cZZ ());
237+ if (trackPos.collisionId () != collision.globalIndex ()) {
238+ trackParCovPos.propagateToDCA (primaryVertex, bz, &dcaPos);
239+ }
238240 if (!isSelectedTrackDca (cfgTrackCuts.binsPt , cfgTrackCuts.limitsDca , trackParCovPos.getPt (), dcaPos.getY (), dcaPos.getZ ())) {
239241 continue ;
240242 }
@@ -269,8 +271,10 @@ struct DerivedDataCreatorD0Calibration {
269271 continue ;
270272 }
271273 auto trackParCovNeg = getTrackParCov (trackNeg);
272- o2::dataformats::DCA dcaNeg;
273- trackParCovNeg.propagateToDCA (primaryVertex, bz, &dcaNeg);
274+ o2::dataformats::DCA dcaNeg (trackNeg.dcaXY (), trackNeg.dcaZ (), trackNeg.cYY (), trackNeg.cZY (), trackNeg.cZZ ());
275+ if (trackNeg.collisionId () != collision.globalIndex ()) {
276+ trackParCovNeg.propagateToDCA (primaryVertex, bz, &dcaNeg);
277+ }
274278 if (!isSelectedTrackDca (cfgTrackCuts.binsPt , cfgTrackCuts.limitsDca , trackParCovNeg.getPt (), dcaNeg.getY (), dcaNeg.getZ ())) {
275279 continue ;
276280 }
0 commit comments