a7a250ae04690ef73935df830db5c4df0df84d68
[u/mrichter/AliRoot.git] / PWGUD / macros / genLevelSimulation / rungen.C
1 typedef enum {kPhojet = -1, kPyTuneCDFA=100,kPyTuneAtlasCSC=306, kPyTuneCMS6D6T=109, kPyTunePerugia0=320 } Tune_t;
2
3 void rungen(Tune_t tune = kPyTuneCDFA, Float_t energy, Int_t nev=1, TString process, Int_t random_index = 0){
4   // Simulation and reconstruction
5   TStopwatch timer;
6   timer.Start();
7   gSystem->SetIncludePath("-I$ROOTSYS/include -I$ALICE_ROOT/include -I$ALICE_ROOT");
8   gSystem->Load("liblhapdf.so");      // Parton density functions
9   if (tune == kPhojet) {
10     cout << "Loading phojet" << endl;
11     
12     // => phojet
13     gSystem->Load("libpythia6.so");     // Pythia
14     gSystem->Load("libdpmjet.so");     // 
15     gSystem->Load("libTDPMjet.so");     // 
16   } 
17   else if (tune == kPyTunePerugia0) {
18     gSystem->Load("libEGPythia6.so");   // TGenerator interface 
19     gSystem->Load("libpythia6.4.21.so");     // Pythia
20     gSystem->Load("libAliPythia6.so");  // ALICE specific implementations
21   }
22
23   else {
24     gSystem->Load("libEGPythia6.so");   // TGenerator interface 
25     gSystem->Load("libqpythia.so");     // Pythia
26     gSystem->Load("libAliPythia6.so");  // ALICE specific implementations
27    }
28   gROOT->LoadMacro("fastGen.C");
29   fastGen(tune, energy, nev, process);
30
31
32   timer.Stop();
33   timer.Print();
34 }