ROOT logo
void 
DrawMG(TObject* o, TLegend* l, TLegend* cent=0)
{
  TMultiGraph* mg = static_cast<TMultiGraph*>(o);
  TIter next(mg->GetListOfGraphs());
  TObject* g = 0;
  Int_t i = 0;
  while ((g = next())) {
    g->Draw("p same");
    TGraph* gg = static_cast<TGraph*>(g);
    TLegendEntry* e = 0;
    if (i == 0) {
      e = l->AddEntry("dummy", mg->GetTitle(), "pl");
      e->SetMarkerColor(kBlack);
      e->SetMarkerStyle(gg->GetMarkerStyle());
      e->SetFillStyle(0);
    }
    i++;
    if (!cent) continue;
    e = cent->AddEntry("dummy", g->GetTitle(), "f");
    e->SetMarkerColor(kBlack);
    e->SetFillStyle(1001);
    e->SetFillColor(gg->GetMarkerColor());
  }

}

void 
DrawEmpirical(const char* corrs="EmpiricalCorrection.root")
{
  TFile* fcorr = TFile::Open(corrs, "READ");
  if (!fcorr) return;

  TObject* odfmdnom  = fcorr->Get("nominal");
  TObject* odfmdsat  = fcorr->Get("fmdfmd/satellite");
  TObject* odfullsat = fcorr->Get("fmdfull/satellite");
  TObject* ocfmdfmd  = fcorr->Get("fmdfmd/average");
  TObject* ocfmdfull = fcorr->Get("fmdfull/average");
  TObject* oraverage = fcorr->Get("ratio");

  Int_t size = 800;
  TCanvas* c = new TCanvas("c", "c", size / TMath::Sqrt(2), size);
  c->SetRightMargin(0.02);
  c->SetTopMargin(0.02);
  c->Divide(1, 3, 0, 0);

  TVirtualPad* p =  c->cd(1);
  p->SetRightMargin(0.01);
  p->SetGridx();
  TH1* h = new TH1D("h1", "h", 200, -4, 6);
  h->SetStats(0);
  h->SetXTitle("#eta");
  h->SetYTitle("1/N_{ev} dN_{ch}/d#eta");
  h->SetTitle("");
  h->SetMinimum(1);
  h->SetMaximum(2100);
  h->DrawClone();
  TLegend* l  = new TLegend(.2,  .05, .45, .25, "dN/d#eta");
  TLegend* lc = new TLegend(.55, .05, .8,  .25, "Centrality");
  DrawMG(odfmdnom, l);
  DrawMG(odfmdsat, l);
  DrawMG(odfullsat, l, lc);
  l->SetFillStyle(0);
  l->SetBorderSize(0);
  l->Draw();
  lc->SetFillStyle(0);
  lc->SetBorderSize(0);
  lc->Draw();

  p = c->cd(2);
  p->SetGridx();
  p->SetRightMargin(0.01);
  h->SetMinimum(.91);
  h->SetMaximum(1.21);
  h->SetYTitle("#LTdN_{ch}/d#eta|_{nominal}/dN_{ch}/d#eta|_{satelitte}#GT");
  h->DrawClone();
  // DrawMG(ocfmdfmd);
  // DrawMG(ocfmdfull);
  ocfmdfmd->Draw("p same");
  ocfmdfull->Draw("p same");
  l = new TLegend(.2, .05, .8, .2);
  l->SetNColumns(2);
  l->SetBorderSize(0);
  l->SetFillStyle(0);
  l->AddEntry(ocfmdfmd,  "FMD/FMD",  "pl");
  l->AddEntry(ocfmdfull, "Full/FMD", "pl");
  l->Draw();

  p = c->cd(3);
  p->SetGridx();
  p->SetRightMargin(0.01);
  h->SetMinimum(-.035);
  h->SetMaximum(+.065);
  h->SetYTitle("#frac{#LTFull/FMD#GT}{#LTFMD/FMD#GT}");
  h->DrawClone();
  oraverage->Draw("p same");
  TGraph* g = static_cast<TGraph*>(oraverage);
  g->SetMarkerStyle(20);
  g->SetMarkerSize(1.1);
  // DrawMG(orfmdfmd);
  // DrawMG(orfmdfull);

  c->SaveAs("EmpericalCorrection.png"); 

}

 DrawEmpirical.C:1
 DrawEmpirical.C:2
 DrawEmpirical.C:3
 DrawEmpirical.C:4
 DrawEmpirical.C:5
 DrawEmpirical.C:6
 DrawEmpirical.C:7
 DrawEmpirical.C:8
 DrawEmpirical.C:9
 DrawEmpirical.C:10
 DrawEmpirical.C:11
 DrawEmpirical.C:12
 DrawEmpirical.C:13
 DrawEmpirical.C:14
 DrawEmpirical.C:15
 DrawEmpirical.C:16
 DrawEmpirical.C:17
 DrawEmpirical.C:18
 DrawEmpirical.C:19
 DrawEmpirical.C:20
 DrawEmpirical.C:21
 DrawEmpirical.C:22
 DrawEmpirical.C:23
 DrawEmpirical.C:24
 DrawEmpirical.C:25
 DrawEmpirical.C:26
 DrawEmpirical.C:27
 DrawEmpirical.C:28
 DrawEmpirical.C:29
 DrawEmpirical.C:30
 DrawEmpirical.C:31
 DrawEmpirical.C:32
 DrawEmpirical.C:33
 DrawEmpirical.C:34
 DrawEmpirical.C:35
 DrawEmpirical.C:36
 DrawEmpirical.C:37
 DrawEmpirical.C:38
 DrawEmpirical.C:39
 DrawEmpirical.C:40
 DrawEmpirical.C:41
 DrawEmpirical.C:42
 DrawEmpirical.C:43
 DrawEmpirical.C:44
 DrawEmpirical.C:45
 DrawEmpirical.C:46
 DrawEmpirical.C:47
 DrawEmpirical.C:48
 DrawEmpirical.C:49
 DrawEmpirical.C:50
 DrawEmpirical.C:51
 DrawEmpirical.C:52
 DrawEmpirical.C:53
 DrawEmpirical.C:54
 DrawEmpirical.C:55
 DrawEmpirical.C:56
 DrawEmpirical.C:57
 DrawEmpirical.C:58
 DrawEmpirical.C:59
 DrawEmpirical.C:60
 DrawEmpirical.C:61
 DrawEmpirical.C:62
 DrawEmpirical.C:63
 DrawEmpirical.C:64
 DrawEmpirical.C:65
 DrawEmpirical.C:66
 DrawEmpirical.C:67
 DrawEmpirical.C:68
 DrawEmpirical.C:69
 DrawEmpirical.C:70
 DrawEmpirical.C:71
 DrawEmpirical.C:72
 DrawEmpirical.C:73
 DrawEmpirical.C:74
 DrawEmpirical.C:75
 DrawEmpirical.C:76
 DrawEmpirical.C:77
 DrawEmpirical.C:78
 DrawEmpirical.C:79
 DrawEmpirical.C:80
 DrawEmpirical.C:81
 DrawEmpirical.C:82
 DrawEmpirical.C:83
 DrawEmpirical.C:84
 DrawEmpirical.C:85
 DrawEmpirical.C:86
 DrawEmpirical.C:87
 DrawEmpirical.C:88
 DrawEmpirical.C:89
 DrawEmpirical.C:90
 DrawEmpirical.C:91
 DrawEmpirical.C:92
 DrawEmpirical.C:93
 DrawEmpirical.C:94
 DrawEmpirical.C:95
 DrawEmpirical.C:96
 DrawEmpirical.C:97
 DrawEmpirical.C:98
 DrawEmpirical.C:99
 DrawEmpirical.C:100
 DrawEmpirical.C:101
 DrawEmpirical.C:102
 DrawEmpirical.C:103
 DrawEmpirical.C:104
 DrawEmpirical.C:105
 DrawEmpirical.C:106
 DrawEmpirical.C:107