Skip to content

Commit ddd4fcc

Browse files
committed
Skip track propagation when not needed to improve CPU
1 parent 52324b3 commit ddd4fcc

1 file changed

Lines changed: 11 additions & 7 deletions

File tree

DPG/Tasks/AOTTrack/derivedDataCreatorD0Calibration.cxx

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)