ROOT logo
void makeCentralityFit(const char * run="188362",const char * system="TKL", int Rebin=1,int Nevt=1e6)
{
 //load libraries
  gSystem->SetBuildDir("/tmp/");
  gSystem->Load("libCore.so");  
  gSystem->Load("libTree.so");
  gSystem->Load("libGeom.so");
  gSystem->Load("libVMC.so");
  gSystem->Load("libPhysics.so");
  gSystem->Load("libSTEERBase.so");
  gROOT->ProcessLine(".include $ALICE_ROOT/include");
  gROOT->LoadMacro("AliCentralityGlauberFit.cxx+");

  const char *finnameGlau ="/home/atoia/GlauberNtuplePA/GlauberMC_pPb_ntuple_sigma70_mind4_r662_a546_Rpro4.root";
  TString finname = Form("/home/atoia/analysis/data2012/multRef/EventStat_temp_%s.root",run);
  TString foutname = Form("/home/atoia/analysis/data2012/fit/%s_fit_%s.root",system,run);
  TString foutnameGlau = Form("/home/atoia/analysis/data2012/fit/%s_ntuple_%s.root",system,run);
  const char *histname=Form("fHOutMult%s",system);

  AliCentralityGlauberFit *mPM = new AliCentralityGlauberFit(finnameGlau);
  mPM->SetInputFile(finname);        
  mPM->SetInputNtuple(finnameGlau);     
  mPM->SetOutputFile(foutname);  
  mPM->SetOutputNtuple(foutnameGlau);
  mPM->AddHisto(histname);

  mPM->SetRebin(Rebin);
  mPM->SetNevents(Nevt);
  mPM->SetAncestorMode(1); // 1: Npart**alpha, 2: alpha*Npart + (1-alpha)*Ncoll
  mPM->SetFastFitMode(0);  // 1:NBD, 2:Gauss
  mPM->UseChi2(kTRUE);     // If TRUE minimize Chi2
  mPM->UseAverage(kFALSE); // If TRUE use Average
  mPM->SetNtrials(1);

  // ----------range to fit--------------
  if (strncmp (system,"V0A",1) == 0) {
    mPM->SetRangeToFit(15., 600.);   // range to fit
    mPM->SetRangeToScale(15.); // range to scale
    mPM->SetGlauberParam(1,12.8,13, 20,0.5,2.5, 1,1,1); // fit parameters
  }
  else if (strncmp (system,"TKL",1) == 0) {
    mPM->SetRangeToFit(15., 200.);   // range to fit
    mPM->SetRangeToScale(15.); // range to scale
    mPM->SetGlauberParam(1,4.9,5.5, 1,0.61,0.62, 1,1,1); // fit parameters
  }
  else if (strncmp (system,"CL1",1) == 0) {
    mPM->SetRangeToFit(40., 400.);   
    mPM->SetRangeToScale(40.); 
    mPM->SetGlauberParam(1,7.9,8, 1,0.43,0.46, 1,1,1); 
  }
  else if (strncmp (system,"TRK",1) == 0) {
    mPM->SetRangeToFit(10., 2600.);   
    mPM->SetRangeToScale(10.);  
    mPM->SetGlauberParam(1,3.9,4.2, 1,1.3,2.5, 1,0.801,0.81);
  }

  mPM->MakeFits();  

  // ----------for Minuit--------------
  //mPM->MakeFitsMinuitNBD(1,8,0.5);          // initial parameters


  TFile * f = new TFile (foutname);
  TH1 * hd = (TH1*) gDirectory->Get(Form("fHOutMult%s",system));
  TH1 * hg = (TH1*) gDirectory->Get(Form("fHOutMult%s_GLAU",system));
  hg->SetLineColor(kRed);
  hd->Draw("e");
  hg->Draw("same");



}

 makeCentralityFit.C:1
 makeCentralityFit.C:2
 makeCentralityFit.C:3
 makeCentralityFit.C:4
 makeCentralityFit.C:5
 makeCentralityFit.C:6
 makeCentralityFit.C:7
 makeCentralityFit.C:8
 makeCentralityFit.C:9
 makeCentralityFit.C:10
 makeCentralityFit.C:11
 makeCentralityFit.C:12
 makeCentralityFit.C:13
 makeCentralityFit.C:14
 makeCentralityFit.C:15
 makeCentralityFit.C:16
 makeCentralityFit.C:17
 makeCentralityFit.C:18
 makeCentralityFit.C:19
 makeCentralityFit.C:20
 makeCentralityFit.C:21
 makeCentralityFit.C:22
 makeCentralityFit.C:23
 makeCentralityFit.C:24
 makeCentralityFit.C:25
 makeCentralityFit.C:26
 makeCentralityFit.C:27
 makeCentralityFit.C:28
 makeCentralityFit.C:29
 makeCentralityFit.C:30
 makeCentralityFit.C:31
 makeCentralityFit.C:32
 makeCentralityFit.C:33
 makeCentralityFit.C:34
 makeCentralityFit.C:35
 makeCentralityFit.C:36
 makeCentralityFit.C:37
 makeCentralityFit.C:38
 makeCentralityFit.C:39
 makeCentralityFit.C:40
 makeCentralityFit.C:41
 makeCentralityFit.C:42
 makeCentralityFit.C:43
 makeCentralityFit.C:44
 makeCentralityFit.C:45
 makeCentralityFit.C:46
 makeCentralityFit.C:47
 makeCentralityFit.C:48
 makeCentralityFit.C:49
 makeCentralityFit.C:50
 makeCentralityFit.C:51
 makeCentralityFit.C:52
 makeCentralityFit.C:53
 makeCentralityFit.C:54
 makeCentralityFit.C:55
 makeCentralityFit.C:56
 makeCentralityFit.C:57
 makeCentralityFit.C:58
 makeCentralityFit.C:59
 makeCentralityFit.C:60
 makeCentralityFit.C:61
 makeCentralityFit.C:62
 makeCentralityFit.C:63
 makeCentralityFit.C:64
 makeCentralityFit.C:65
 makeCentralityFit.C:66
 makeCentralityFit.C:67
 makeCentralityFit.C:68
 makeCentralityFit.C:69
 makeCentralityFit.C:70
 makeCentralityFit.C:71
 makeCentralityFit.C:72
 makeCentralityFit.C:73
 makeCentralityFit.C:74