Skip to content

Commit 2fd8b2c

Browse files
committed
GPU: Track cut during output on primary leg hits, if secondary legs are dropped
1 parent 58f2995 commit 2fd8b2c

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

GPU/GPUTracking/Merger/GPUTPCGMO2Output.cxx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,9 @@ GPUdii() void GPUTPCGMO2Output::Thread<GPUTPCGMO2Output::prepare>(int nBlocks, i
5757
if (nCl == 0) {
5858
continue;
5959
}
60+
if (merger.Param().rec.dropSecondaryLegsInOutput && nCl + 2 < GPUCA_TRACKLET_SELECTOR_MIN_HITS(tracks[i].GetParam().GetQPt())) { // Give 2 hits tolerance in the primary leg, compared to the full fit of the looper
61+
continue;
62+
}
6063
unsigned int myId = CAMath::AtomicAdd(&merger.Memory()->nO2Tracks, 1u);
6164
tmpData[i] = {nCl, CAMath::AtomicAdd(&merger.Memory()->nO2ClusRefs, nCl + (nCl + 1) / 2)};
6265
trackSort[myId] = {i, (merger.Param().par.earlyTpcTransform || tracks[i].CSide()) ? tracks[i].GetParam().GetTZOffset() : -tracks[i].GetParam().GetTZOffset()};

GPU/GPUTracking/Merger/GPUTPCGMTrackParam.cxx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1008,7 +1008,7 @@ GPUd() void GPUTPCGMTrackParam::RefitTrack(GPUTPCGMMergedTrack& GPUrestrict() tr
10081008
t.QPt() = 1.e-4f;
10091009
}
10101010

1011-
CADEBUG(if (t.GetX() > 250) { printf("ERROR, Track at impossible X %f\n", t.GetX()); });
1011+
CADEBUG(if (t.GetX() > 250) { printf("ERROR, Track %d at impossible X %f, Pt %f, Looper %d\n", iTrk, t.GetX(), CAMath::Abs(1.f / t.QPt()), (int)merger->OutputTracks()[iTrk].Looper()); });
10121012

10131013
track.SetOK(ok);
10141014
track.SetNClustersFitted(nTrackHits);

0 commit comments

Comments
 (0)