Skip to content

Commit 0ba30f4

Browse files
committed
Use linearization ref. in AB refit
1 parent d99e306 commit 0ba30f4

File tree

1 file changed

+4
-4
lines changed

1 file changed

+4
-4
lines changed

Detectors/GlobalTracking/src/MatchTPCITS.cxx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1754,21 +1754,21 @@ bool MatchTPCITS::refitABTrack(int iITSAB, const TPCABSeed& seed, pmr::vector<o2
17541754
auto geom = o2::its::GeometryTGeo::Instance();
17551755
auto propagator = o2::base::Propagator::Instance();
17561756
tracOut.resetCovariance();
1757+
o2::track::TrackPar refLin(tracOut);
17571758
propagator->estimateLTFast(tofL, winLink); // guess about initial value for the track integral from the origin
17581759
// refit track outward in the ITS
17591760
const auto& itsClRefs = ABTrackletRefs[iITSAB];
17601761
int nclRefit = 0, ncl = itsClRefs.getNClusters();
1761-
17621762
float chi2 = 0.f;
17631763
// NOTE: the ITS cluster absolute indices are stored from inner to outer layers
17641764
for (int icl = itsClRefs.getFirstEntry(); icl < itsClRefs.getEntriesBound(); icl++) {
17651765
const auto& clus = mITSClustersArray[ABTrackletClusterIDs[icl]];
17661766
float alpha = geom->getSensorRefAlpha(clus.getSensorID()), x = clus.getX();
1767-
if (!tracOut.rotate(alpha) ||
1767+
if (!tracOut.rotate(alpha, refLin, propagator->getNominalBz()) ||
17681768
// note: here we also calculate the L,T integral
17691769
// note: we should eventually use TPC pid in the refit (TODO)
17701770
// note: since we are at small R, we can use field BZ component at origin rather than 3D field
1771-
!propagator->propagateToX(tracOut, x, propagator->getNominalBz(), MaxSnp, maxStep, mUseMatCorrFlag, &tofL)) {
1771+
!propagator->propagateToX(tracOut, refLin, x, propagator->getNominalBz(), MaxSnp, maxStep, mUseMatCorrFlag, &tofL)) {
17721772
break;
17731773
}
17741774
chi2 += tracOut.getPredictedChi2(clus);
@@ -1789,7 +1789,7 @@ bool MatchTPCITS::refitABTrack(int iITSAB, const TPCABSeed& seed, pmr::vector<o2
17891789
{
17901790
float xtogo = 0;
17911791
if (!tracOut.getXatLabR(o2::constants::geom::XTPCInnerRef, xtogo, mBz, o2::track::DirOutward) ||
1792-
!propagator->PropagateToXBxByBz(tracOut, xtogo, MaxSnp, 10., mUseMatCorrFlag, &tofL)) {
1792+
!propagator->PropagateToXBxByBz(tracOut, refLin, xtogo, MaxSnp, 10., mUseMatCorrFlag, &tofL)) {
17931793
LOG(debug) << "Propagation to inner TPC boundary X=" << xtogo << " failed, Xtr=" << tracOut.getX() << " snp=" << tracOut.getSnp();
17941794
matchedTracks.pop_back(); // destroy failed track
17951795
return false;

0 commit comments

Comments
 (0)