}
}
Int_t found=0;
-
+ maxntr=minNtracks+1;
while (maxntr>minNtracks){
maxntr=minNtracks;
for (Int_t iLayer = 0; iLayer <= (AliGeomManager::kSSD2 - AliGeomManager::kFirstLayer); iLayer++) {
volFit3=IntersectVolArray(volidsSet,volFit2);
}
else volFit3=volFit2;
- AlignVolumesITS(volIn,volFit3,AliGeomManager::kSPD1,AliGeomManager::kSDD1,2);
+ AlignVolumesITS(volIn,volFit3,AliGeomManager::kSPD1,AliGeomManager::kSSD1,2);
}
}
return kTRUE;
}
}
Int_t found=0;
-
+ maxntr=minNtracks+1;
while (maxntr>minNtracks){
maxntr=minNtracks;
for (Int_t iLayer = 0; iLayer <= (AliGeomManager::kSPD2 - AliGeomManager::kFirstLayer); iLayer++) {
BuildIndex();
AliTrackPointArray **points;
Bool_t failed=kFALSE;
+ Int_t pointsdim=0;
// Start the iterations
while (iterations > 0) {
- Int_t nArrays = LoadPoints(volids, points);
+ Int_t nArrays = LoadPoints(volids, points,pointsdim);
if (nArrays < fmintracks) {
failed=kTRUE;
printf("Not enough tracks to try minimization \n");
- UnloadPoints(nArrays, points);
+ UnloadPoints(pointsdim, points);
break;
}
}
if(minimizer->GetNFilledTracks()<=fmintracks){
printf("No good tracks found: could not find parameter for volume %d (and following in volids)\n",volids->At(0));
- UnloadPoints(nArrays, points);
+ UnloadPoints(pointsdim, points);
failed=kTRUE;
break;
}
if(fUpdateCov)alignObj->SetCorrMatrix(surveycov);
if(iterations==1){
failed=kTRUE;
- UnloadPoints(nArrays, points);
- break;
}
}
}
else {
printf("Minimization failed: cannot update AlignObj for volume: %d \n",volid);
- UnloadPoints(nArrays, points);
- break;
}
if(iterations==1)alignObj->Print("");
}
- UnloadPoints(nArrays, points);
+ UnloadPoints(pointsdim,points);
+ if(failed)break;
iterations--;
}
return (!failed);