]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PYTHIA6/AliPythia.h
Update for PDC'06 muon generation. (Nicole Bastid)
[u/mrichter/AliRoot.git] / PYTHIA6 / AliPythia.h
index c91fa9872ef2c545618ea34012865901cd4e8cb6..c812b730b1cec3d65c825b524fcf96178bc4fecb 100644 (file)
 typedef enum
 {kPyCharm, kPyBeauty, kPyCharmUnforced, kPyBeautyUnforced,
  kPyJpsi, kPyJpsiChi, kPyMb, kPyMbNonDiffr, kPyJets, kPyDirectGamma,
- kPyCharmPbPbMNR, kPyD0PbPbMNR, kPyBeautyPbPbMNR,
- kPyCharmpPbMNR, kPyD0pPbMNR, kPyBeautypPbMNR,
- kPyCharmppMNR, kPyD0ppMNR, kPyBeautyppMNR}
+ kPyCharmPbPbMNR, kPyD0PbPbMNR, kPyDPlusPbPbMNR, kPyDPlusStrangePbPbMNR, kPyBeautyPbPbMNR,
+ kPyCharmpPbMNR, kPyD0pPbMNR, kPyDPluspPbMNR, kPyDPlusStrangepPbMNR, kPyBeautypPbMNR,
+ kPyCharmppMNR, kPyCharmppMNRwmi, kPyD0ppMNR, kPyDPlusppMNR, kPyDPlusStrangeppMNR, 
+ kPyBeautyppMNR, kPyBeautyppMNRwmi, kPyW, kPyZ, kPyMbMSEL1,
+ kPyOldUEQ2ordered, kPyOldUEQ2ordered2, kPyOldPopcorn}
 Process_t;
 /*
 typedef enum
@@ -33,6 +35,9 @@ typedef enum
 }
 StrucFunc_t;
 */
+class AliFastGlauber;
+class AliQuenchingWeights;
+
 class AliPythia : public TPythia6, public AliRndm
 {
 
@@ -49,24 +54,33 @@ class AliPythia : public TPythia6, public AliRndm
     virtual void PrintParticles();
     virtual void ResetDecayTable();
     virtual void SetDecayTable();
+    virtual void Pyevnw();
     virtual void Pycell(Int_t& nclus);
     virtual void Pyclus(Int_t& nclus);
     virtual void Pyshow(Int_t ip1, Int_t ip2, Double_t qmax);
     virtual void Pyrobo(Int_t imi, Int_t ima, Double_t the, Double_t phi, Double_t bex, Double_t bey, Double_t bez);
-    
+    virtual void InitQuenching(Float_t bmin, Float_t bmax, Float_t k, Int_t iECMethod);
+    virtual void Pyquen(Double_t a, Int_t ibf, Double_t b);
+    virtual void GetQuenchingParameters(Double_t& xp, Double_t& yp, Double_t z[4]);
     // return instance of the singleton
     static  AliPythia* Instance();
     virtual void Quench();
  protected:
-    Process_t     fProcess;           // Process type
-    Float_t       fEcms;              // Centre of mass energy
-    StrucFunc_t   fStrucFunc;         // Structure function
-    Int_t         fDefMDCY[501];      //  ! Default decay switches per particle
-    Int_t         fDefMDME[2001];     //  ! Default decay switches per mode
-    static AliPythia*    fgAliPythia; // Pointer to single instance
+    Process_t             fProcess;           // Process type
+    Float_t               fEcms;              // Centre of mass energy
+    StrucFunc_t           fStrucFunc;         // Structure function
+    Int_t                 fDefMDCY[501];      //  ! Default decay switches per particle
+    Int_t                 fDefMDME[2001];     //  ! Default decay switches per mode
+    Double_t              fZQuench[4];        //  ! Quenching fractions for this even
+    Double_t              fXJet;              //  ! Jet production point X
+    Double_t              fYJet;              //  ! Jet production point Y
+    AliFastGlauber*       fGlauber;           //  ! The Glauber model
+    AliQuenchingWeights*  fQuenchingWeights;  //  ! The Quenching Weights model
+    static AliPythia*     fgAliPythia;        // Pointer to single instance
  private: 
     AliPythia();
-
+    void ConfigHeavyFlavor();
+    void AtlasTuning();
     ClassDef(AliPythia,1) //ALICE UI to PYTHIA
 };
 
@@ -74,3 +88,5 @@ class AliPythia : public TPythia6, public AliRndm
 
 
 
+
+