Changes for #92223: Modify AliGenPythia.cxx, .h to enable triggering with specific...
authorhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 20 Mar 2012 15:00:54 +0000 (15:00 +0000)
committerhristov <hristov@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 20 Mar 2012 15:00:54 +0000 (15:00 +0000)
PYTHIA6/AliGenPythia.cxx
PYTHIA6/AliGenPythia.h

index 10843ce..a628306 100644 (file)
@@ -122,6 +122,8 @@ AliGenPythia::AliGenPythia():
     fNucPdf(0),
     fTriggerParticle(0),
     fTriggerEta(0.9),     
+    fTriggerMinPt(-1),  
+    fTriggerMaxPt(1000),  
     fTriggerMultiplicity(0),
     fTriggerMultiplicityEta(0),
     fTriggerMultiplicityPtMin(0),
@@ -224,7 +226,9 @@ AliGenPythia::AliGenPythia(Int_t npart)
      fHFoff(kFALSE),    
      fNucPdf(0),
      fTriggerParticle(0),
-     fTriggerEta(0.9),     
+     fTriggerEta(0.9), 
+     fTriggerMinPt(-1),  
+     fTriggerMaxPt(1000),      
      fTriggerMultiplicity(0),
      fTriggerMultiplicityEta(0),
      fTriggerMultiplicityPtMin(0),
@@ -1082,6 +1086,7 @@ Int_t  AliGenPythia::GenerateMB()
            if (kf != fTriggerParticle) continue;
            if (iparticle->Pt() == 0.) continue;
            if (TMath::Abs(iparticle->Eta()) > fTriggerEta) continue;
+           if ( iparticle->Pt() > fTriggerMaxPt || iparticle->Pt() < fTriggerMinPt ) continue;
            triggered = kTRUE;
            break;
        }
index 4a13eed..8ccb53f 100644 (file)
@@ -114,8 +114,9 @@ class AliGenPythia : public AliGenMC
     // Trigger and rotate event 
     void RotatePhi(Int_t iphcand, Bool_t& okdd);
     // Trigger on a single particle
-    virtual void    SetTriggerParticle(Int_t particle = 0, Float_t etamax = 0.9) 
-       {fTriggerParticle = particle; fTriggerEta = etamax;}
+    virtual void    SetTriggerParticle(Int_t particle = 0, Float_t etamax = 0.9, Float_t ptmin = -1, Float_t ptmax = 1000) 
+       {fTriggerParticle = particle; fTriggerEta = etamax; fTriggerMinPt = ptmin; fTriggerMaxPt = ptmax;}
+
     //
     // Heavy flavor options
     //
@@ -276,6 +277,8 @@ class AliGenPythia : public AliGenMC
     Int_t   fNucPdf;                // Nuclear pdf 0: EKS98 1: EPS08
     Int_t   fTriggerParticle;       // Trigger on this particle ...
     Float_t fTriggerEta;            // .. within |eta| < fTriggerEta
+    Float_t fTriggerMinPt;          // .. within pt > fTriggerMinPt
+    Float_t fTriggerMaxPt;          // .. within pt < fTriggerMaxPt
     Int_t       fTriggerMultiplicity;       // Trigger on events with a minimum charged multiplicity
     Float_t     fTriggerMultiplicityEta;    // in a given eta range
     Float_t     fTriggerMultiplicityPtMin;  // above this pT