]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Added check on sign of diagonal elements of covariance matrix: fixed savannah bug...
authordecaro <decaro@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sat, 15 May 2010 13:20:38 +0000 (13:20 +0000)
committerdecaro <decaro@f7af4fe6-9843-0410-8265-dc069ae4e863>
Sat, 15 May 2010 13:20:38 +0000 (13:20 +0000)
TOF/AliTOFtracker.cxx
TOF/AliTOFtrackerMI.cxx
TOF/AliTOFtrackerV1.cxx

index 0356c7e33c25f93a52554e0f182e3084ef897142..f91568a0fad9d86bb2b6dd9735111b42bf80d234 100644 (file)
@@ -742,8 +742,14 @@ void AliTOFtracker::MatchTracks( Bool_t mLastStep){
     // Fill Reco-QA histos for Reconstruction
     fHRecNClus->Fill(nc);
     fHRecDist->Fill(mindist);
-    fHRecSigYVsP->Fill(mom,TMath::Sqrt(cov[0]));
-    fHRecSigZVsP->Fill(mom,TMath::Sqrt(cov[2]));
+    if (cov[0]>=0.)
+      fHRecSigYVsP->Fill(mom,TMath::Sqrt(cov[0]));
+    else
+      fHRecSigYVsP->Fill(mom,TMath::Sqrt(-cov[0]));
+    if (cov[2]>=0.)
+      fHRecSigZVsP->Fill(mom,TMath::Sqrt(cov[2]));
+    else
+      fHRecSigZVsP->Fill(mom,TMath::Sqrt(-cov[2]));
     fHRecSigYVsPWin->Fill(mom,dphi*sensRadius);
     fHRecSigZVsPWin->Fill(mom,dz);
 
index a2b56493ebc977e56e06701bd87856bb1ef45fdb..01794c5e4a812562e8239dfa07e4fa1ff882da6e 100644 (file)
@@ -792,8 +792,8 @@ void AliTOFtrackerMI::GetLikelihood(Float_t dy, Float_t dz, const Double_t *cov,
 
   
   Float_t normwidth, normd, p0,p1;  
-  Float_t sigmay = TMath::Max(TMath::Sqrt(cov[0]+kMeanSigmaY*kMeanSigmaY),kMaxSigmaY);
-  Float_t sigmaz = TMath::Max(TMath::Sqrt(cov[2]+kMeanSigmaZ*kMeanSigmaZ),kMaxSigmaZ);
+  Float_t sigmay = TMath::Max(TMath::Sqrt(TMath::Abs(cov[0])+kMeanSigmaY*kMeanSigmaY),kMaxSigmaY);
+  Float_t sigmaz = TMath::Max(TMath::Sqrt(TMath::Abs(cov[2])+kMeanSigmaZ*kMeanSigmaZ),kMaxSigmaZ);
 
   py=0;
   pz=0;  
index 953484a0c198f336c9b99a69ca1cebc64db1daf1..594db73e45e1856d4abd06f12561f04f644dda00 100644 (file)
@@ -579,8 +579,14 @@ void AliTOFtrackerV1::MatchTracks( ){
     fHRecNClus->Fill(nc);
     fHRecChi2->Fill(bestChi2);
     fHRecDistZ->Fill(dzTW);
-    fHRecSigYVsP->Fill(mom,TMath::Sqrt(cov[0]));
-    fHRecSigZVsP->Fill(mom,TMath::Sqrt(cov[2]));
+    if (cov[0]>=0.)
+      fHRecSigYVsP->Fill(mom,TMath::Sqrt(cov[0]));
+    else
+      fHRecSigYVsP->Fill(mom,TMath::Sqrt(-cov[0]));
+    if (cov[2]>=0.)
+      fHRecSigZVsP->Fill(mom,TMath::Sqrt(cov[2]));
+    else
+      fHRecSigZVsP->Fill(mom,TMath::Sqrt(-cov[2]));
     fHRecSigYVsPWin->Fill(mom,dphi*sensRadius);
     fHRecSigZVsPWin->Fill(mom,dz);