]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
In AliMUONVTrackReconstructor:
authorivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 10 Apr 2009 09:52:00 +0000 (09:52 +0000)
committerivana <ivana@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 10 Apr 2009 09:52:00 +0000 (09:52 +0000)
Change the range of theta angles for trigger tracks to match the convention
adopted for tracker tracks (the shift of pi does not affect the Tan(theta)
which is used elsewhere in the code).
(Diego)

MUON/AliMUONVTrackReconstructor.cxx
MUON/AliMUONVTrackReconstructor.h

index f80e0162668ff1c92670cdafaa9414f9139317cd..6c0d15da0bee72f38b3d9e5e1d09433626d0bc9c 100644 (file)
@@ -1139,6 +1139,9 @@ void AliMUONVTrackReconstructor::EventReconstructTrigger(const AliMUONTriggerCir
       
       Float_t thetax = TMath::ATan2( x11 , z11 );
       Float_t thetay = TMath::ATan2( (y21-y11) , (z21-z11) );
+
+      CorrectThetaRange(thetax);
+      CorrectThetaRange(thetay);
       
       triggerTrack.SetX11(x11);
       triggerTrack.SetY11(y11);
@@ -1152,3 +1155,13 @@ void AliMUONVTrackReconstructor::EventReconstructTrigger(const AliMUONTriggerCir
   } // end of loop on Local Trigger
 }
 
+//__________________________________________________________________________
+void AliMUONVTrackReconstructor::CorrectThetaRange(Float_t& theta)
+{
+  /// The angles of the trigger tracks, obtained with ATan2, 
+  /// have values around +pi and -pi. On the contrary, the angles 
+  /// used in the tracker tracks have values around 0.
+  /// This function sets the same range for the trigger tracks angles.
+  if (theta < -TMath::PiOver2()) theta += TMath::Pi();
+  else if(theta > TMath::PiOver2()) theta -= TMath::Pi();
+}
index 84515d98dd71ba3726ff81a4f04de3f8b1252c93..4b25fe107cfe8587e3aff39ab4340a58876276b4 100644 (file)
@@ -103,7 +103,8 @@ class AliMUONVTrackReconstructor : public TObject {
 
   Bool_t FollowLinearTrackInChamber(AliMUONTrack &trackCandidate, const AliMUONVClusterStore& clusterStore, Int_t nextChamber);
   Bool_t FollowLinearTrackInStation(AliMUONTrack &trackCandidate, const AliMUONVClusterStore& clusterStore, Int_t nextStation);
-  
+
+  void CorrectThetaRange(Float_t&);
 
  private: