]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PYTHIA6/AliPythia.h
Dummy kCTEQ6ll added.
[u/mrichter/AliRoot.git] / PYTHIA6 / AliPythia.h
CommitLineData
8d2cd130 1#ifndef ALIPYTHIA_H
2#define ALIPYTHIA_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8#include <TPythia6.h>
9#include <AliRndm.h>
10#include <AliStructFuncType.h>
fa49ba58 11
8d2cd130 12typedef enum
13{kPyCharm, kPyBeauty, kPyCharmUnforced, kPyBeautyUnforced,
14 kPyJpsi, kPyJpsiChi, kPyMb, kPyMbNonDiffr, kPyJets, kPyDirectGamma,
e0e89f40 15 kPyCharmPbPbMNR, kPyD0PbPbMNR, kPyDPlusPbPbMNR, kPyDPlusStrangePbPbMNR, kPyBeautyPbPbMNR,
16 kPyCharmpPbMNR, kPyD0pPbMNR, kPyDPluspPbMNR, kPyDPlusStrangepPbMNR, kPyBeautypPbMNR,
17 kPyCharmppMNR, kPyCharmppMNRwmi, kPyD0ppMNR, kPyDPlusppMNR, kPyDPlusStrangeppMNR,
d7de4a67 18 kPyBeautyppMNR, kPyBeautyppMNRwmi, kPyW, kPyZ, kPyMbMSEL1,
65f2626c 19 kPyOldUEQ2ordered, kPyOldUEQ2ordered2, kPyOldPopcorn}
8d2cd130 20Process_t;
fa49ba58 21
0f482ae4 22class AliFastGlauber;
23class AliQuenchingWeights;
24
8d2cd130 25class AliPythia : public TPythia6, public AliRndm
26{
27
28 public:
29 virtual ~AliPythia(){;}
30 // convert to compressed code and print result (for debugging only)
31 virtual Int_t CheckedLuComp(Int_t kf);
32 // Pythia initialisation for selected processes
33 virtual void ProcInit
34 (Process_t process, Float_t energy, StrucFunc_t strucfunc);
35 // treat protons as inside nuclei
36 virtual void SetNuclei(Int_t a1, Int_t a2);
37 // Print particle properties
38 virtual void PrintParticles();
39 virtual void ResetDecayTable();
40 virtual void SetDecayTable();
16a82508 41 virtual void Pyevnw();
8d2cd130 42 virtual void Pycell(Int_t& nclus);
43 virtual void Pyclus(Int_t& nclus);
452af8c7 44 virtual void Pyshow(Int_t ip1, Int_t ip2, Double_t qmax);
45 virtual void Pyrobo(Int_t imi, Int_t ima, Double_t the, Double_t phi, Double_t bex, Double_t bey, Double_t bez);
86b6ad68 46 virtual void InitQuenching(Float_t bmin, Float_t bmax, Float_t k, Int_t iECMethod);
992f2843 47 virtual void Pyquen(Double_t a, Int_t ibf, Double_t b);
b280c4cc 48 virtual void GetQuenchingParameters(Double_t& xp, Double_t& yp, Double_t z[4]);
8d2cd130 49 // return instance of the singleton
50 static AliPythia* Instance();
452af8c7 51 virtual void Quench();
e8a8adcd 52 // Assignment Operator
53 AliPythia & operator=(const AliPythia & rhs);
54 void Copy(TObject&) const;
8d2cd130 55 protected:
0f482ae4 56 Process_t fProcess; // Process type
57 Float_t fEcms; // Centre of mass energy
58 StrucFunc_t fStrucFunc; // Structure function
59 Int_t fDefMDCY[501]; // ! Default decay switches per particle
60 Int_t fDefMDME[2001]; // ! Default decay switches per mode
b280c4cc 61 Double_t fZQuench[4]; // ! Quenching fractions for this even
62 Double_t fXJet; // ! Jet production point X
63 Double_t fYJet; // ! Jet production point Y
0f482ae4 64 AliFastGlauber* fGlauber; // ! The Glauber model
65 AliQuenchingWeights* fQuenchingWeights; // ! The Quenching Weights model
66 static AliPythia* fgAliPythia; // Pointer to single instance
8d2cd130 67 private:
68 AliPythia();
e8a8adcd 69 AliPythia(const AliPythia& pythia);
3dc3ec94 70 void ConfigHeavyFlavor();
e0e89f40 71 void AtlasTuning();
8d2cd130 72 ClassDef(AliPythia,1) //ALICE UI to PYTHIA
73};
74
75#endif
76
77
78
90d7b703 79
589380c6 80