]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ANALYSIS/macros/train/AddMCGenAmpt.C
767359b7d77f76d85822d1fbdbf8b26d7cbab76b
[u/mrichter/AliRoot.git] / ANALYSIS / macros / train / AddMCGenAmpt.C
1 AliGenerator *AddMCGenAmpt(
2                            Double_t Energy      = 2760.,   // CM energy 
3                            Double_t bmin        = 0.0,     // minimum impact parameter
4                            Double_t bmax        = 20.0,    // maximum impact parameter
5                            Double_t ptHardMin   = 3.0,     // minimum pt hard (was 3.0 in previous AMPT productions)
6                            Bool_t stringMelting = kTRUE,   // string melting option 
7                            Bool_t useART        = kTRUE,   // use hadronic rescattering phase (ART)
8                            Bool_t pAcollisions  = kFALSE   // pA instead of AA collisions 
9                            )
10 {
11   // User defined generator
12
13   gSystem->Load("libampt");
14   gSystem->Load("libTAmpt");
15   gSystem->Load("libEGPythia6"); 
16   gSystem->Load("libpythia6");
17   gSystem->Load("libAliPythia6");
18
19
20   AliGenAmpt *genAMPT = new AliGenAmpt(-1);
21   //=========================================================================
22
23
24   // User settings
25   Int_t Flag_SM    = 4;       // flag for string melting: 1 = default, 4 = String Melting
26   Int_t NTmax      = 150;     // NTMAX: number of timesteps (Default = 150), to turn off ART set it to 3
27   Double_t mu      = 3.2264;  // parton screening mass in fm^(-1) (Default = 3.2264)
28   Double_t alpha_s = 1./3.;   // change mu and alpha_s (Default = 1./3.) to vary scattering cross-section
29                               // mu = 3.2 fm^-1 and alpha_s = 0.33 ==> sigma_{partonic} = 1.5mb
30   if(!stringMelting)
31     Flag_SM = 1;
32   
33   if(!useART)
34     NTmax = 3;
35
36   if(pAcollisions)
37     NTmax = 1500; // this was used in earlier productions for p-Pb
38   //=========================================================================
39
40
41   // Decayer
42   AliDecayer *decayer = new AliDecayerPythia();
43   genAMPT->SetForceDecay( kHadronicD );
44   genAMPT->SetDecayer( decayer );
45   //=========================================================================
46
47   // Collision system
48   genAMPT->SetEnergyCMS(Energy);
49   genAMPT->SetReferenceFrame("CMS");
50   genAMPT->SetProjectile("A", 208, 82);
51   if(pAcollisions)
52         genAMPT->SetTarget("P", 1, 1);
53   else
54     genAMPT->SetTarget("A", 208, 82);
55   genAMPT->SetPtHardMin (ptHardMin);
56   genAMPT->SetImpactParameterRange(bmin,bmax);
57   //=========================================================================
58
59   // options
60   genAMPT->SetJetQuenching(0);     // enable jet quenching
61   genAMPT->SetShadowing(1);        // enable shadowing
62   genAMPT->SetDecaysOff(1);        // neutral pion and heavy particle decays switched off
63   genAMPT->SetSpectators(0);       // track spectators 
64   genAMPT->SetIsoft(Flag_SM);      // 4=string melting, 1=standard AMPT
65   genAMPT->SetXmu(mu);             // parton xsection
66   genAMPT->SetNtMax(NTmax);        // time bins
67   genAMPT->SetAlpha(alpha_s);      // alpha =0.333
68   genAMPT->SetStringFrag(0.5,0.9); // string fragmentation parameters
69   genAMPT->SetIpop(1);             // enable popcorn mechanism (net-baryon stopping)
70   //=========================================================================
71
72   // Boost into LHC lab frame
73   genAMPT->SetBoostLHC(1);
74   
75   // randomize reaction plane
76   genAMPT->SetRandomReactionPlane(kTRUE);
77
78  return genAMPT;
79
80 }