diff --git a/reco/alignment/CbmBbaAlignmentTask.cxx b/reco/alignment/CbmBbaAlignmentTask.cxx index 807ff71c70566ef3e2469113762ac1390444636d..c8d4f6f4c48dd85fb0bd5ec37ff02f85ee016c76 100644 --- a/reco/alignment/CbmBbaAlignmentTask.cxx +++ b/reco/alignment/CbmBbaAlignmentTask.cxx @@ -184,7 +184,7 @@ InitStatus CbmBbaAlignmentTask::Init() fHistoDir->mkdir(n1); fHistoDir->cd(n1); - int nBins = 1000; + int nBins = 100; double sizeX = 0.1; double sizeY = 0.1; @@ -199,12 +199,12 @@ InitStatus CbmBbaAlignmentTask::Init() if (i == -1) { sizeX = 20.; sizeY = 20.; - sizePX = 100.; - sizePY = 100.; + sizePX = 20.; + sizePY = 20.; } if (i == 0 || i == 1) { - sizeX = 0.1; + sizeX = 1.0; sizeY = 1.0; } if (i == 2) { @@ -212,14 +212,14 @@ InitStatus CbmBbaAlignmentTask::Init() sizeY = 5.; } if (i == 3) { - sizeX = 10.; + sizeX = 5.; sizeY = 20.; - sizePX = 100.; + sizePX = 10.; } if (i == 4) { - sizeX = 20.; + sizeX = 5.; sizeY = 10.; - sizePY = 100.; + sizePY = 10.; } if (i >= 5) { sizeX = 5.; @@ -600,9 +600,12 @@ void CbmBbaAlignmentTask::Finish() if (!t.fIsActive) continue; // calculate the residuals for all tracks at each fitNode before alignment for (unsigned int in = 0; in < t.fAlignedTrack.fNodes.size(); in++) { - CbmKfTrackFitter::FitNode& node = t.fAlignedTrack.fNodes[in]; - - if (!node.fIsFitted || !node.fIsXySet) continue; + CbmKfTrackFitter::Track tr = t.fAlignedTrack; + CbmKfTrackFitter::FitNode& node = tr.fNodes[in]; + if (!node.fIsXySet) continue; + node.fIsXySet = false; + tr.MakeConsistent(); + fFitter.FitTrack(tr); Sensor& s = fSensors[node.fReference1]; @@ -663,9 +666,12 @@ void CbmBbaAlignmentTask::Finish() if (!t.fIsActive) continue; // calculate the residuals for all tracks at each fitNode before alignment for (unsigned int in = 0; in < t.fAlignedTrack.fNodes.size(); in++) { - CbmKfTrackFitter::FitNode& node = t.fAlignedTrack.fNodes[in]; - - if (!node.fIsFitted || !node.fIsXySet) continue; + CbmKfTrackFitter::Track tr = t.fAlignedTrack; + CbmKfTrackFitter::FitNode& node = tr.fNodes[in]; + if (!node.fIsXySet) continue; + node.fIsXySet = false; + tr.MakeConsistent(); + fFitter.FitTrack(tr); Sensor& s = fSensors[node.fReference1];