]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/AliTRDtrackerV1.cxx
Add a protection to fitter->Eval
[u/mrichter/AliRoot.git] / TRD / AliTRDtrackerV1.cxx
index 3f999a42149cc61d4645dad6323c9df797cf5fa3..d541aa05d7456e56bbbed5a41ce91be407e91d42 100644 (file)
@@ -1071,7 +1071,7 @@ Float_t AliTRDtrackerV1::FitTiltedRiemanConstraint(AliTRDseedV1 *tracklets, Doub
       nPoints++;
     }
   }
-  fitter->Eval();
+  if(fitter->Eval()) return 1.E10;
 
   // Calculate curvature
   Double_t a = fitter->GetParameter(0);
@@ -1186,7 +1186,7 @@ Float_t AliTRDtrackerV1::FitTiltedRieman(AliTRDseedV1 *tracklets, Bool_t sigErro
       nPoints++;
     }
   }
-  fitter->Eval();
+  if(fitter->Eval()) return 1.E10;
   zfitter.Eval();
 
   Double_t offset = fitter->GetParameter(3);
@@ -1207,7 +1207,7 @@ Float_t AliTRDtrackerV1::FitTiltedRieman(AliTRDseedV1 *tracklets, Bool_t sigErro
     Double_t zmf       = zfitter.GetFunctionValue(&xref);
     fgTiltedRieman->FixParameter(3, zmf);
     fgTiltedRieman->FixParameter(4, dzmf);
-    fitter->Eval();
+    if (fitter->Eval()) return 1.E10;
     fitter->ReleaseParameter(3);
     fitter->ReleaseParameter(4);
     offset = fitter->GetParameter(3);
@@ -1512,7 +1512,7 @@ Double_t AliTRDtrackerV1::FitRiemanTilt(const AliTRDtrackV1 *track, AliTRDseedV1
     Double_t zmf       = zfitter.GetFunctionValue(&xref);
     fitter->FixParameter(3, zmf);
     fitter->FixParameter(4, dzmf);
-    fitter->Eval();
+    if(fitter->Eval()) return 1.E10;
     fitter->ReleaseParameter(3);
     fitter->ReleaseParameter(4);
     z0   = fitter->GetParameter(3); // = zmf ?
@@ -2673,6 +2673,7 @@ Int_t AliTRDtrackerV1::MakeSeeds(AliTRDtrackingChamber **stack, const AliTRDseed
          Int_t nNotInChamber = 0;
           if(!cseed[jLayer].AttachClusters(stack[jLayer], kTRUE)) continue;
          if(fkReconstructor->IsHLT()){ 
+           cseed[jLayer].UpdateUsed();
            if(!cseed[jLayer].IsOK()) continue;
          }else{
            cseed[jLayer].Fit();