You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make sure extra tracks are randomized to avoid PHOS hole losses
The tracks with TRD/TOF are prioritized as of higher quality and we accept a limited min. amount of tracks per TF (1)
before swithing to extra tracks (whose max accepted number is also capped).
Therefore this guaranteed minimum will be typically affected by the PHOS hole, the same is true for the ITS-TPC stripped
versions of these global tracks which are added for additional processing if ITS only extrapolation is asked.
When processing extra tracks, the algorithm was considering only these stripped ITS-TPC tracks,
so the ITS extrapolation were also affected by the PHOS hole.
This PR makes sure that the extra tracks processing starts from the first seed abandoned due to meeting the condition (1),
and that the remaining tracks are processed in the random order.
LOGP(debug, "process {}: Found valid source {} for {} | nseeds:{} mSeeds:{} used: {}", iSeed, GTrackID::getSourceName(src), GTrackID::getSourceName(mGIDs[seedIndex].getSource()), nSeeds, mSeeds.size(), mTrackDataCompact.size());
302
+
addPart(src);
297
303
}
298
304
}
299
305
if (mMaxTracksPerTF >= 0 && mTrackDataCompact.size() >= mMaxTracksPerTF) {
300
-
LOG(debug) << "We already have reached mMaxTracksPerTF, but we continue to create seeds until mAddTracksForMapPerTF is also reached";
306
+
if (!maxTracksReached) {
307
+
LOGP(info, "We already have reached mMaxTracksPerTF={}, but we continue to create seeds until mAddTracksForMapPerTF={} is also reached, iSeed: {} of {} inital seeds", mMaxTracksPerTF, mAddTracksForMapPerTF, iSeed, nSeeds);
308
+
}
309
+
maxTracksReached = true;
301
310
continue;
302
311
}
303
312
if (mGIDs[seedIndex].includesDet(DetID::TRD) || mGIDs[seedIndex].includesDet(DetID::TOF)) {
LOGP(info, "Up to {} tracks out of {} additional seeds will be processed in random order, of which {} are stripped versions, accepted seeds: {}", mAddTracksForMapPerTF, remSeeds.size(), mSeeds.size() - nSeeds, mTrackDataCompact.size());
323
335
}
324
-
for (int iSeed = nSeeds; iSeed < (int)mSeeds.size(); ++iSeed) {
LOGP(info, "Maximum number {} of additional tracks per TF reached. Skipping the remaining {} tracks", mAddTracksForMapPerTF, remSeeds.size() - extraChecked);
327
340
break;
328
341
}
329
-
// this loop will only be entered in case mProcessSeeds is set
0 commit comments