X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;ds=sidebyside;f=PYTHIA6%2FAliPythia.h;h=4bb14f72e6dd650fb5844e409bd44f38e5547676;hb=e2223fde7f20cfe92fb7cdfb7bdd5de512184843;hp=0cb2e600b44ed0c5b319aa5eb65166ec4d03dfab;hpb=e0e89f4007c47fe713d03a4181ebec4b1e64d5f8;p=u%2Fmrichter%2FAliRoot.git diff --git a/PYTHIA6/AliPythia.h b/PYTHIA6/AliPythia.h index 0cb2e600b44..4bb14f72e6d 100644 --- a/PYTHIA6/AliPythia.h +++ b/PYTHIA6/AliPythia.h @@ -8,33 +8,8 @@ #include #include #include -typedef enum -{kPyCharm, kPyBeauty, kPyCharmUnforced, kPyBeautyUnforced, - kPyJpsi, kPyJpsiChi, kPyMb, kPyMbNonDiffr, kPyJets, kPyDirectGamma, - kPyCharmPbPbMNR, kPyD0PbPbMNR, kPyDPlusPbPbMNR, kPyDPlusStrangePbPbMNR, kPyBeautyPbPbMNR, - kPyCharmpPbMNR, kPyD0pPbMNR, kPyDPluspPbMNR, kPyDPlusStrangepPbMNR, kPyBeautypPbMNR, - kPyCharmppMNR, kPyCharmppMNRwmi, kPyD0ppMNR, kPyDPlusppMNR, kPyDPlusStrangeppMNR, - kPyBeautyppMNR, kPyBeautyppMNRwmi, kPyW, kPyZ, - kPyOldUEQ2ordered, kPyOldUEQ2ordered2, kPyOldPopcorn} -Process_t; -/* -typedef enum -{ - kDOSet1 = 1006, - kGRVLO = 5005, - kGRVHO = 5006, - kMRSDminus = 3031, - kMRSD0 = 3030, - kMRSG = 3041, - kCTEQ2pM = 4024, - kCTEQ4L = 4032, - kCTEQ4M = 4034, - kMRSTcgLO = 3072, - kCTEQ5L = 4046, - kGRVLO98 = 5012 -} -StrucFunc_t; -*/ +#include "PythiaProcesses.h" +#include "AliOmegaDalitz.h" class AliFastGlauber; class AliQuenchingWeights; @@ -47,9 +22,9 @@ class AliPythia : public TPythia6, public AliRndm virtual Int_t CheckedLuComp(Int_t kf); // Pythia initialisation for selected processes virtual void ProcInit - (Process_t process, Float_t energy, StrucFunc_t strucfunc); + (Process_t process, Float_t energy, StrucFunc_t strucfunc, Int_t itune = -1); // treat protons as inside nuclei - virtual void SetNuclei(Int_t a1, Int_t a2); + virtual void SetNuclei(Int_t a1, Int_t a2, Int_t pdf); // Print particle properties virtual void PrintParticles(); virtual void ResetDecayTable(); @@ -58,13 +33,22 @@ class AliPythia : public TPythia6, public AliRndm 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 Pyshowq(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 Pytune(Int_t itune); + virtual void Py2ent(Int_t idx, Int_t pdg1, Int_t pdg2, Double_t p); + virtual void InitQuenching(Float_t bmin, Float_t bmax, Float_t k, Int_t iECMethod, Float_t zmax = 0.97, Int_t ngmax = 30); + virtual void SetPyquenParameters(Double_t t0, Double_t tau0, Int_t nf, Int_t iengl, Int_t iangl); virtual void Pyquen(Double_t a, Int_t ibf, Double_t b); + virtual void Qpygin0(); virtual void GetQuenchingParameters(Double_t& xp, Double_t& yp, Double_t z[4]); // return instance of the singleton static AliPythia* Instance(); virtual void Quench(); + void DalitzDecays(); + // Assignment Operator + AliPythia & operator=(const AliPythia & rhs); + void Copy(TObject&) const; protected: Process_t fProcess; // Process type Float_t fEcms; // Centre of mass energy @@ -74,13 +58,19 @@ class AliPythia : public TPythia6, public AliRndm Double_t fZQuench[4]; // ! Quenching fractions for this even Double_t fXJet; // ! Jet production point X Double_t fYJet; // ! Jet production point Y + Int_t fNGmax; // Maximum number of radiated gluons in quenching + Float_t fZmax; // Maximum energy loss in quenching AliFastGlauber* fGlauber; // ! The Glauber model AliQuenchingWeights* fQuenchingWeights; // ! The Quenching Weights model + Int_t fItune; // ! Pythia tune + AliOmegaDalitz fOmegaDalitz; // ! omega dalitz decayer static AliPythia* fgAliPythia; // Pointer to single instance private: AliPythia(); + AliPythia(const AliPythia& pythia); void ConfigHeavyFlavor(); void AtlasTuning(); + void AtlasTuningMC09(); ClassDef(AliPythia,1) //ALICE UI to PYTHIA };