]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONTriggerTrackToTrackerClusters.cxx
Fix coverity defect
[u/mrichter/AliRoot.git] / MUON / AliMUONTriggerTrackToTrackerClusters.cxx
index 571e9c536a617a3ddb474d2a327c273e86a6cfdd..eca2a2023e827246688a6d0395631ca9257fbc70 100644 (file)
@@ -36,6 +36,7 @@
 #include "AliMUONVCluster.h"
 #include "AliMUONVClusterStore.h"
 #include "AliMUONVTriggerTrackStore.h"
+#include "AliMUONTrackParam.h"
 #include "AliMpArea.h"
 #include "AliMpDEManager.h"
 #include <TMath.h>
@@ -47,7 +48,7 @@ ClassImp(AliMUONTriggerTrackToTrackerClusters)
 //_____________________________________________________________________________
 AliMUONTriggerTrackToTrackerClusters::AliMUONTriggerTrackToTrackerClusters(const AliMUONGeometryTransformer& transformer,
                                                                            AliMUONVTriggerTrackStore* trackStore)
-: TObject(), fTransformer(transformer), fTriggerTrackStore(trackStore)
+: TObject(), fkTransformer(transformer), fTriggerTrackStore(trackStore)
 {
   /// ctor. We do not take ownership of the trigger track store.
 }
@@ -68,7 +69,7 @@ AliMUONTriggerTrackToTrackerClusters::DetElemId(Int_t chamber, Double_t x, Doubl
   
   AliMpDEIterator it;
   
-  AliMpArea a( TVector2(x,y), TVector2(ex,ey) );
+  AliMpArea a(x, y, ex, ey);
   
   it.First(chamber);
   
@@ -76,13 +77,13 @@ AliMUONTriggerTrackToTrackerClusters::DetElemId(Int_t chamber, Double_t x, Doubl
   {
     Int_t detElemId = it.CurrentDEId();
     
-    AliMpArea* area = fTransformer.GetDEArea(detElemId);
+    AliMpArea* area = fkTransformer.GetDEArea(detElemId);
     
     if ( area->Overlap(a) ) 
     {
       // get z of the center of that DE.
       Double_t dummyx, dummyy;
-      fTransformer.Local2Global(detElemId,0,0,0,dummyx,dummyy,z);
+      fkTransformer.Local2Global(detElemId,0,0,0,dummyx,dummyy,z);
       return detElemId;
     }
     it.Next();
@@ -99,7 +100,7 @@ AliMUONTriggerTrackToTrackerClusters::GenerateClusters(Int_t iChamber,
   /// Generate clusters in given chamber
   /// Return the number of clusters added to the clusterStore
   
-  AliCodeTimerAuto(Form("Chamber %d",iChamber));
+  AliCodeTimerAuto(Form("Chamber %d",iChamber),0);
   
   TIter next(fTriggerTrackStore->CreateIterator());
   
@@ -150,7 +151,7 @@ AliMUONTriggerTrackToTrackerClusters::GenerateClusters(Int_t iChamber,
   trackParam.SetBendingSlope(bendingSlope);
   trackParam.SetInverseBendingMomentum(inverseBendingMomentum);
   
-  Double_t dZ = TMath::Abs(AliMUONConstants::DefaultChamberZ(12) - AliMUONConstants::DefaultChamberZ(10));
+  Double_t dZ = AliMUONConstants::DefaultChamberZ(10) - AliMUONConstants::DefaultChamberZ(12);
   
   Double_t sigmaX = AliMUONConstants::TriggerNonBendingReso();
   
@@ -162,17 +163,15 @@ AliMUONTriggerTrackToTrackerClusters::GenerateClusters(Int_t iChamber,
   
   // Non bending plane
   paramCov(0,0) = sigmaX*sigmaX;
-  paramCov(0,1) = -sigmaX/dZ;
+  paramCov(0,1) = paramCov(0,0)/dZ;
   paramCov(1,0) = paramCov(0,1);
-  
-  paramCov(1,1) = 2.0*sigmaX/dZ/dZ;
+  paramCov(1,1) = 2.0*paramCov(0,0)/dZ/dZ;
   
   // Bending plane
   paramCov(2,2) = sigmaY*sigmaY;
-  paramCov(2,3) = -sigmaY/dZ;
+  paramCov(2,3) = paramCov(2,2)/dZ;
   paramCov(3,2) = paramCov(2,3);
-  
-  paramCov(3,3) = 2.0*sigmaY/dZ/dZ;
+  paramCov(3,3) = 2.0*paramCov(2,2)/dZ/dZ;
   
   // Inverse bending momentum (50% error)
   paramCov(4,4) = 0.5*inverseBendingMomentum * 0.5*inverseBendingMomentum;
@@ -180,10 +179,12 @@ AliMUONTriggerTrackToTrackerClusters::GenerateClusters(Int_t iChamber,
   // Set covariances
   trackParam.SetCovariances(paramCov);
   
-  // Now we extrapolate this trackParam to chambers 6 -> 9
-  
-  const Float_t kFilterThickness = TMath::Abs(AliMUONConstants::MuonFilterZEnd()-AliMUONConstants::MuonFilterZBeg()); // cm
+  // add MCS effect in the iron wall
+  const Float_t kFilterThickness = AliMUONConstants::MuonFilterZEnd()-AliMUONConstants::MuonFilterZBeg(); // cm
+  AliMUONTrackExtrap::ExtrapToZCov(&trackParam, AliMUONConstants::MuonFilterZEnd()); // Extrap to iChamber
+  AliMUONTrackExtrap::AddMCSEffect(&trackParam, kFilterThickness, AliMUONConstants::MuonFilterX0()); // Add MCS effects
   
+  // Now we extrapolate this trackParam to chambers 6 -> 9
   Int_t nclusters = clusterStore.GetSize();
   
   AliMUONTrackParam tp(trackParam);
@@ -191,7 +192,6 @@ AliMUONTriggerTrackToTrackerClusters::GenerateClusters(Int_t iChamber,
   Double_t zg = AliMUONConstants::DefaultChamberZ(iChamber);
   AliMUONTrackExtrap::ExtrapToZCov(&tp, zg); // Extrap to iChamber
   
-  AliMUONTrackExtrap::AddMCSEffect(&tp, kFilterThickness, AliMUONConstants::MuonFilterX0()); // Add MCS effects
   
   AliDebug(1,Form("iChamber=%d",iChamber));
   
@@ -222,7 +222,7 @@ AliMUONTriggerTrackToTrackerClusters::GenerateClusters(Int_t iChamber,
   }
   else
   {
-    AliWarning(Form("No DE found at xg=%e yg=%e",detElemId,x,y));
+    AliWarning(Form("No DE found at xg=%e yg=%e",x,y));
   }
   
   return nadded;