AliMuonForwardTrack class updated
authorauras <auras@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 17 Dec 2012 14:21:39 +0000 (14:21 +0000)
committerauras <auras@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 17 Dec 2012 14:21:39 +0000 (14:21 +0000)
MFT/AliMuonForwardTrack.cxx
MFT/AliMuonForwardTrack.h
MFT/AliMuonForwardTrackAnalysis.C

index 6f219e7..e048977 100644 (file)
@@ -457,24 +457,7 @@ Bool_t AliMuonForwardTrack::IsFromCharm() {
 
   Bool_t result = kFALSE;
 
-  if ( GetParentPDGCode(0) ==   411 ||
-       GetParentPDGCode(0) ==   421 ||
-       GetParentPDGCode(0) == 10411 ||
-       GetParentPDGCode(0) == 10421 ||
-       GetParentPDGCode(0) ==   413 ||
-       GetParentPDGCode(0) ==   423 ||
-       GetParentPDGCode(0) == 10413 ||
-       GetParentPDGCode(0) == 10423 ||
-       GetParentPDGCode(0) == 20413 ||
-       GetParentPDGCode(0) == 20423 ||
-       GetParentPDGCode(0) ==   415 ||
-       GetParentPDGCode(0) ==   425 ||
-       GetParentPDGCode(0) ==   431 ||
-       GetParentPDGCode(0) == 10431 ||
-       GetParentPDGCode(0) ==   433 ||
-       GetParentPDGCode(0) == 10433 ||
-       GetParentPDGCode(0) == 20433 ||
-       GetParentPDGCode(0) ==   435 ) result = kTRUE;
+  if (IsPDGCharm(GetParentPDGCode(0)) && !IsPDGBeauty(GetParentPDGCode(1))) result = kTRUE;
   
   if (result) AliDebug(1, Form("Muon comes from a charmed hadron %d", GetParentPDGCode(0)));
   
@@ -488,30 +471,7 @@ Bool_t AliMuonForwardTrack::IsFromBeauty() {
 
   Bool_t result = kFALSE;
 
-  if ( GetParentPDGCode(0) ==   511 ||
-       GetParentPDGCode(0) ==   521 ||
-       GetParentPDGCode(0) == 10511 ||
-       GetParentPDGCode(0) == 10521 ||
-       GetParentPDGCode(0) ==   513 ||
-       GetParentPDGCode(0) ==   523 ||
-       GetParentPDGCode(0) == 10513 ||
-       GetParentPDGCode(0) == 10523 ||
-       GetParentPDGCode(0) == 20513 ||
-       GetParentPDGCode(0) == 20523 ||
-       GetParentPDGCode(0) ==   515 ||
-       GetParentPDGCode(0) ==   525 ||
-       GetParentPDGCode(0) ==   531 ||
-       GetParentPDGCode(0) == 10531 ||
-       GetParentPDGCode(0) ==   533 ||
-       GetParentPDGCode(0) == 10533 ||
-       GetParentPDGCode(0) == 20533 ||
-       GetParentPDGCode(0) ==   535 ||
-       GetParentPDGCode(0) ==   541 ||
-       GetParentPDGCode(0) == 10541 ||
-       GetParentPDGCode(0) ==   543 ||
-       GetParentPDGCode(0) == 10543 ||
-       GetParentPDGCode(0) == 20543 ||
-       GetParentPDGCode(0) ==   545 ) result = kTRUE;
+  if (IsPDGBeauty(GetParentPDGCode(0))) result = kTRUE;
   
   if (result) AliDebug(1, Form("Muon comes from a beauty hadron %d", GetParentPDGCode(0)));
   
@@ -521,6 +481,71 @@ Bool_t AliMuonForwardTrack::IsFromBeauty() {
 
 //====================================================================================================================================================
 
+Bool_t AliMuonForwardTrack::IsPDGCharm(Int_t pdg) {
+
+  Bool_t result = kFALSE;
+
+  if ( TMath::Abs(pdg) ==   411 ||
+       TMath::Abs(pdg) ==   421 ||
+       TMath::Abs(pdg) == 10411 ||
+       TMath::Abs(pdg) == 10421 ||
+       TMath::Abs(pdg) ==   413 ||
+       TMath::Abs(pdg) ==   423 ||
+       TMath::Abs(pdg) == 10413 ||
+       TMath::Abs(pdg) == 10423 ||
+       TMath::Abs(pdg) == 20413 ||
+       TMath::Abs(pdg) == 20423 ||
+       TMath::Abs(pdg) ==   415 ||
+       TMath::Abs(pdg) ==   425 ||
+       TMath::Abs(pdg) ==   431 ||
+       TMath::Abs(pdg) == 10431 ||
+       TMath::Abs(pdg) ==   433 ||
+       TMath::Abs(pdg) == 10433 ||
+       TMath::Abs(pdg) == 20433 ||
+       TMath::Abs(pdg) ==   435 ) result = kTRUE;
+  
+  return result; 
+  
+}
+
+//====================================================================================================================================================
+
+Bool_t AliMuonForwardTrack::IsPDGBeauty(Int_t pdg) {
+
+  Bool_t result = kFALSE;
+
+  if ( TMath::Abs(pdg) ==   511 ||
+       TMath::Abs(pdg) ==   521 ||
+       TMath::Abs(pdg) == 10511 ||
+       TMath::Abs(pdg) == 10521 ||
+       TMath::Abs(pdg) ==   513 ||
+       TMath::Abs(pdg) ==   523 ||
+       TMath::Abs(pdg) == 10513 ||
+       TMath::Abs(pdg) == 10523 ||
+       TMath::Abs(pdg) == 20513 ||
+       TMath::Abs(pdg) == 20523 ||
+       TMath::Abs(pdg) ==   515 ||
+       TMath::Abs(pdg) ==   525 ||
+       TMath::Abs(pdg) ==   531 ||
+       TMath::Abs(pdg) == 10531 ||
+       TMath::Abs(pdg) ==   533 ||
+       TMath::Abs(pdg) == 10533 ||
+       TMath::Abs(pdg) == 20533 ||
+       TMath::Abs(pdg) ==   535 ||
+       TMath::Abs(pdg) ==   541 ||
+       TMath::Abs(pdg) == 10541 ||
+       TMath::Abs(pdg) ==   543 ||
+       TMath::Abs(pdg) == 10543 ||
+       TMath::Abs(pdg) == 20543 ||
+       TMath::Abs(pdg) ==   545 ) result = kTRUE;
+  
+  return result; 
+  
+}
+
+//====================================================================================================================================================
+
+
 Bool_t AliMuonForwardTrack::IsFromBackground() {
 
   Bool_t result = kFALSE;
index 6c09996..5ddd1d7 100644 (file)
@@ -97,6 +97,8 @@ public:
   Bool_t IsFromResonance();
   Bool_t IsFromCharm();
   Bool_t IsFromBeauty();
+  Bool_t IsPDGCharm(Int_t pdg);
+  Bool_t IsPDGBeauty(Int_t pdg);
   Bool_t IsFromBackground();
 
 protected:
index 5628f2e..b070b2f 100644 (file)
@@ -13,7 +13,7 @@ void AliMuonForwardTrackAnalysis(const Char_t *readDir= ".",
                                 Double_t massMin = 0.,                            // lower limit for the cut on dimuon mass
                                 Double_t massMax = 10.,                           // upper limit for the cut on dimuon mass
                                 Double_t maxChi2SingleMuons = 1.5,                // upper limit for the cut on the single muon chi2
-                                Double_t maxOffsetSingleMuons = 250.,             // upper limit for the cut on the single muon offset w.r.t. the primary vtx
+                                Double_t maxOffsetSingleMuons = 1.e9.,            // upper limit for the cut on the single muon offset w.r.t. the primary vtx
                                 Bool_t correlateCutOnOffsetChi2 = kTRUE,          // if true, the cut region in the chi2-offset plane for single muons is a quadrant aorund the origin
                                 Double_t maxWOffsetMuonPairsAtPrimaryVtx = 1.e9,  // upper limit for the cut on weighted offset of dimuond w.r.t. the primary vtx
                                 Double_t maxWOffsetMuonPairsAtPCA = 1.e9,         // upper limit for the cut on weighted offset of dimuond w.r.t. their PCA