ROOT logo
void runGlauberMC(Bool_t doPartProd=0,Int_t option=0,Int_t N=250000)
{
  //load libraries
  gSystem->Load("libVMC");
  gSystem->Load("libPhysics");
  gSystem->Load("libTree");
  gSystem->Load("libPWGGlauber");

  //set the random seed from current time
  TTimeStamp time;
  Int_t seed = time.GetSec();
  gRandom->SetSeed(seed);

  Int_t nevents = N; // number of events to simulate 
  // supported systems are e.g. "p", "d", "Si", "Au", "Pb", "U" 
  Option_t *sysA="Pb"; 
  Option_t *sysB="Pb";
  Double_t signn=64; // inelastic nucleon nucleon cross section
  //const char *fname="GlauberMC_PbPb_ntuple.root"; // name output file

  // run the code to produce an ntuple:
  //  AliGlauberMC::runAndSaveNucleons(10000,"Pb","Pb",72);
  Double_t mind=0.4;
  //  AliGlauberMC::RunAndSaveNtuple(nevents,sysA,sysB,signn,mind);
  Double_t r=6.62;
  Double_t a=0.546;
  const char *fname="glau_pbpb_ntuple.root";

  AliGlauberMC mcg(sysA,sysB,signn);
  mcg.SetMinDistance(mind);
  mcg.Setr(r);
  mcg.Seta(a);
  if (option==1) 
    mcg.SetDoFluc(0.55,78.5*0.92,0.82,kTRUE);
  else if (option==2) 
    mcg.SetDoFluc(1.01,72.5*0.92,0.74,kTRUE);
  mcg.SetDoPartProduction(doPartProd);
  
  //////////////////
  mcg.SetdNdEtaType(AliGlauberMC::kNBDSV);
  mcg.GetdNdEtaParam()[0] = 2.49;    //npp
  mcg.GetdNdEtaParam()[1] = 1.7;  //ratioSgm2Mu
  mcg.GetdNdEtaParam()[2] = 0.13; //xhard
  //////////////////

  mcg.Run(nevents);

  TNtuple  *nt = mcg.GetNtuple();
  TFile out(fname,"recreate",fname,9);
  if(nt) nt->Write();
  printf("total cross section with a nucleon-nucleon cross section %.4f is %.4f\n\n",signn,mcg.GetTotXSect());
  out.Close();
}
 runGlauberMC.C:1
 runGlauberMC.C:2
 runGlauberMC.C:3
 runGlauberMC.C:4
 runGlauberMC.C:5
 runGlauberMC.C:6
 runGlauberMC.C:7
 runGlauberMC.C:8
 runGlauberMC.C:9
 runGlauberMC.C:10
 runGlauberMC.C:11
 runGlauberMC.C:12
 runGlauberMC.C:13
 runGlauberMC.C:14
 runGlauberMC.C:15
 runGlauberMC.C:16
 runGlauberMC.C:17
 runGlauberMC.C:18
 runGlauberMC.C:19
 runGlauberMC.C:20
 runGlauberMC.C:21
 runGlauberMC.C:22
 runGlauberMC.C:23
 runGlauberMC.C:24
 runGlauberMC.C:25
 runGlauberMC.C:26
 runGlauberMC.C:27
 runGlauberMC.C:28
 runGlauberMC.C:29
 runGlauberMC.C:30
 runGlauberMC.C:31
 runGlauberMC.C:32
 runGlauberMC.C:33
 runGlauberMC.C:34
 runGlauberMC.C:35
 runGlauberMC.C:36
 runGlauberMC.C:37
 runGlauberMC.C:38
 runGlauberMC.C:39
 runGlauberMC.C:40
 runGlauberMC.C:41
 runGlauberMC.C:42
 runGlauberMC.C:43
 runGlauberMC.C:44
 runGlauberMC.C:45
 runGlauberMC.C:46
 runGlauberMC.C:47
 runGlauberMC.C:48
 runGlauberMC.C:49
 runGlauberMC.C:50
 runGlauberMC.C:51
 runGlauberMC.C:52
 runGlauberMC.C:53
 runGlauberMC.C:54