Protection in case of irrealistic estimation of the expected energy loss (M.Ivanov)
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 25 Nov 2005 15:49:18 +0000 (15:49 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 25 Nov 2005 15:49:18 +0000 (15:49 +0000)
TRD/AliTRDtrack.cxx

index 59621e6..f6534da 100644 (file)
@@ -111,6 +111,7 @@ AliTRDtrack::AliTRDtrack(const AliTRDtrack& t) : AliKalmanTrack(t) {
   for (Int_t i=0;i<kNPlane;i++){
       fdEdxPlane[i] = t.fdEdxPlane[i];
       fTimBinPlane[i] = t.fTimBinPlane[i];
+      fTracklets[i]   = t.fTracklets[i];
   }
 
   fLhElectron = 0.0;
@@ -575,6 +576,13 @@ Int_t AliTRDtrack::PropagateTo(Double_t xk,Double_t x0,Double_t rho)
   if((5940*beta2/(1-beta2+1e-10) - beta2) < 0) return 0;
 
   Double_t dE=0.153e-3/beta2*(log(5940*beta2/(1-beta2+1e-10)) - beta2)*d*rho;
+  //
+  // suspicious part - think about it ?
+  Double_t kinE =  TMath::Sqrt(p2);
+  if (dE>0.8*kinE) dE = 0.8*kinE;  //      
+  if (dE<0)        dE = 0.0;       // not valid region for Bethe bloch 
+  //
+  //
   fDE+=dE;
   if (x1 < x2) dE=-dE;
   cc=fC;