/* gSystem->SetIncludePath("-I$ROOTSYS/include -I$ALICE_ROOT/ -I$ALICE_ROOT/include"); gSystem->Load("libANALYSIS"); gSystem->Load("libANALYSISalice"); .L MakeSensitivityPlots.C++g .L MatchingEffPlots.C++g MatchingEffPlots() */ #include "TH1D.h" #include "TCanvas.h" #include "TFile.h" #include "THn.h" #include "TList.h" #include "TStyle.h" #include "TLegend.h" #include "TLatex.h" #include "MakeSensitivityPlots.C" const int pid = 1; // pid = 1 —> pions, pid = 2 —> kaons, pid = 3 —> protons, pid = 5 —> unidentified //const char void MatchingEffPlots(){ //gROOT->LoadMacro("ll.C"); // gROOT->LoadMacro("MakeSensitivityPlots2.C++"); // ll(); TCanvas *c[3]; TCanvas *c2[3]; const Char_t *proj[3] = {"pT","eta","phi"}; TH1D *data[4]; TH1D *mc[4]; TH1D *ratio[4]; char dataset[5] = "bcde"; for(Int_t i=0;i<3;i++){ //loop over the projections: pT, eta, phi c[i] = new TCanvas(Form("%s",proj[i]),Form("%s",proj[i]),1000,1000); gStyle->SetOptStat(0); c[i]->Divide(2,2); for(Int_t k=0;k<4;k++){ //loop over the periods: LHC10b,10c,10d,10e c[i]->cd(k+1); TString dataFile = Form("data_LHC10%c.root",dataset[k]); TString mcFile = Form("mc_LHC10%c.root",dataset[k]); data[k] = (TH1D*)GetITSTPCMatchingEff(dataFile/*dataFile.Data()*/,pid,i+1); mc[k] = (TH1D*)GetITSTPCMatchingEff(mcFile/*mcFile.Data()*/,pid,i+1); data[k]->Draw("Ep"); data[k]->SetTitle(Form("LHC10%c",dataset[k])); if (i==0) data[k]->GetXaxis()->SetTitle("#it{p}_{T}"); if (i==1) data[k]->GetXaxis()->SetTitle("#eta"); if (i==2) data[k]->GetXaxis()->SetTitle("#varphi"); data[k]->SetLineColor(kRed-3); mc[k]->Draw("Ep,same"); mc[k]->SetLineColor(kBlue-3); data[k]->SetMaximum(1); if(i==0){ gPad->SetLogx(); } if(i==1||i==0){ data[k]->SetMinimum(.8); } TLegend *leg = new TLegend(0.15,0.15,.35,0.25); leg->AddEntry(data[k],"Data","f"); leg->AddEntry(mc[k],"MC","f"); leg->SetBorderSize(0); leg->SetFillColor(0); leg->Draw(); } c2[i] = new TCanvas(Form("ratio%s",proj[i]),Form("ratio%s",proj[i]),1000,1000); gStyle->SetOptStat(0); c2[i]->Divide(2,2); for(Int_t k=0;k<4;k++){ //loop over the periods: LHC10b,10c,10d,10e c2[i]->cd(k+1); TString dataFile = Form("data_LHC10%c.root",dataset[k]); TString mcFile = Form("mc_LHC10%c.root",dataset[k]); data[k] = (TH1D*)GetITSTPCMatchingEff(dataFile.Data(),pid,i+1); mc[k] = (TH1D*)GetITSTPCMatchingEff(mcFile.Data(),pid,i+1); ratio[k] = (TH1D*)data[k]->Clone(); ratio[k]->Reset(); ratio[k]->Divide(data[k],mc[k],1,1); ratio[k]->Draw(""); ratio[k]->SetTitle(Form("LHC10%c",dataset[k])); if (i==0) ratio[k]->GetXaxis()->SetTitle("#it{p}_{T}"); if (i==1) ratio[k]->GetXaxis()->SetTitle("#eta"); if (i==2) ratio[k]->GetXaxis()->SetTitle("#varphi"); ratio[k]->SetLineColor(kBlack); //ratio[k]->SetMaximum(1); if(i==0){ gPad->SetLogx(); } if(i==1||i==0){ //data[k]->SetMinimum(.8); } TLegend *leg = new TLegend(0.15,0.15,.35,0.25); leg->AddEntry(ratio[k],"Data/MC","f"); //leg->AddEntry(mc[k],"MC","f"); leg->SetBorderSize(0); leg->SetFillColor(0); leg->Draw(); } } } /* c[i]->cd(2); gStyle->SetOptStat(0); TH1D * data_10c = GetITSTPCMatchingEff("data_LHC10c.root",pid,i+1); TH1D * mc_10c = GetITSTPCMatchingEff("mc_LHC10c.root",pid,i+1); data_10c->Draw(""); data_10c->SetTitle("LHC10c"); if (i==0) data_10c->GetXaxis()->SetTitle("#it{p}_{T}"); if (i==1) data_10c->GetXaxis()->SetTitle("#eta"); if (i==2) data_10c->GetXaxis()->SetTitle("#varphi"); //data_10c->SetMarkerStyle(20); data_10c->SetLineColor(kRed-3); mc_10c->Draw("same"); //mc_10c->SetMarkerStyle(20); mc_10c->SetLineColor(kBlue-3); data_10c->SetMaximum(1); if(i==0){ gPad->SetLogx(); } if(i==1||i==0){ data_10c->SetMinimum(.8); } TLegend *leg = new TLegend(0.15,0.2,.35,0.3); leg->AddEntry(data_10c,"Data","f"); leg->AddEntry(mc_10c,"MC","f"); leg->SetBorderSize(0); gStyle->SetFillColor(0); leg->Draw(); c[i]->cd(3); gStyle->SetOptStat(0); TH1D * data_10d = GetITSTPCMatchingEff("data_LHC10d.root",pid,i+1); TH1D * mc_10d = GetITSTPCMatchingEff("mc_LHC10d.root",pid,i+1); data_10d->Draw(""); data_10d->SetTitle("LHC10d"); if (i==0) data_10d->GetXaxis()->SetTitle("#it{p}_{T}"); if (i==1) data_10d->GetXaxis()->SetTitle("#eta"); if (i==2) data_10d->GetXaxis()->SetTitle("#varphi"); //data_10d->SetMarkerStyle(20); data_10d->SetLineColor(kRed-3); mc_10d->Draw("same"); //mc_10d->SetMarkerStyle(20); mc_10d->SetLineColor(kBlue-3); data_10d->SetMaximum(1); if(i==0){ gPad->SetLogx(); } if(i==1||i==0){ data_10d->SetMinimum(.8); } TLegend *leg = new TLegend(0.15,0.2,.35,0.3); leg->AddEntry(data_10d,"Data","f"); leg->AddEntry(mc_10d,"MC","f"); leg->SetBorderSize(0); gStyle->SetFillColor(0); leg->Draw(); c[i]->cd(4); gStyle->SetOptStat(0); TH1D * data_10e = GetITSTPCMatchingEff("data_LHC10e.root",pid,i+1); TH1D * mc_10e = GetITSTPCMatchingEff("mc_LHC10e.root",pid,i+1); data_10e->Draw(""); data_10e->SetTitle("LHC10e"); if (i==0) data_10e->GetXaxis()->SetTitle("#it{p}_{T}"); if (i==1) data_10e->GetXaxis()->SetTitle("#eta"); if (i==2) data_10e->GetXaxis()->SetTitle("#varphi"); //data_10e->SetMarkerStyle(20); data_10e->SetLineColor(kRed-3); mc_10e->Draw("same"); //mc_10e->SetMarkerStyle(20); mc_10e->SetLineColor(kBlue-3); data_10e->SetMaximum(1); if(i==0){ gPad->SetLogx(); } if(i==1 || i==0){ data_10e->SetMinimum(.8); } TLegend *leg = new TLegend(0.15,0.2,.35,0.3); leg->AddEntry(data_10e,"Data","f"); leg->AddEntry(mc_10e,"MC","f"); leg->SetBorderSize(0); gStyle->SetFillColor(0); leg->Draw(); */ /* } for(Int_t i=0;i<3;i++){ //loop over the projections: pT, eta, phi c2[i] = new TCanvas(Form("ratio%s",proj[i]),Form("ratio%s",proj[i]),1000,1000); gStyle->SetOptStat(0); c2[i]->Divide(2,2); for(Int_t k=0;k<4;k++){ //loop over the periods: LHC10b,10c,10d,10e c2[i]->cd(k+1); TString dataFile = Form("data_LHC10%c.root",dataset[k]); TString mcFile = Form("mc_LHC10%c.root",dataset[k]); data[k] = (TH1D*)GetITSTPCMatchingEff(dataFile.Data(),pid,i+1); mc[k] = (TH1D*)GetITSTPCMatchingEff(mcFile.Data(),pid,i+1); ratio[k] = (TH1D*)data[k]->Clone(); ratio[k]->Reset(); ratio[k]->Divide(data[k],mc[k],1,1); ratio[k]->Draw(""); ratio[k]->SetTitle(Form("LHC10%c",dataset[k])); if (i==0) ratio[k]->GetXaxis()->SetTitle("#it{p}_{T}"); if (i==1) ratio[k]->GetXaxis()->SetTitle("#eta"); if (i==2) ratio[k]->GetXaxis()->SetTitle("#varphi"); ratio[k]->SetLineColor(kBlack); //ratio[k]->SetMaximum(1); if(i==0){ gPad->SetLogx(); } if(i==1||i==0){ //data[k]->SetMinimum(.8); } TLegend *leg = new TLegend(0.15,0.15,.35,0.25); leg->AddEntry(ratio[k],"Data/MC","f"); //leg->AddEntry(mc[k],"MC","f"); leg->SetBorderSize(0); leg->SetFillColor(0); leg->Draw(); } //for identified: only vs pT } }*/