#include "draw_trigger_eff.omni.h" #include "draw_trigger_eff.omni.h" void setLegend(char* cH1, TH1* h1, char* cH2, TH1* h2,char* cH3, TH1* h3, char* cH4, TH1* h4) { TLegend *legmass = new TLegend(0.6,0.6,1.0,1.0); legmass->SetFillColor(0); legmass->SetTextSize(0.05); legmass->SetTextFont(42); legmass->SetMargin(0.4); legmass->SetBorderSize(2); if (h1) legmass->AddEntry(h1,cH1); if (h2) legmass->AddEntry(h2,cH2); if (h3) legmass->AddEntry(h3,cH3); if (h4) legmass->AddEntry(h4,cH4); legmass->Draw("same"); } void setOPT_canvas(TCanvas *canvas, Int_t i, Int_t j) { gStyle->SetLineStyleString(22,"80 18 12 18 12 12"); gStyle->SetOptStat(0); gStyle->SetErrorX(0); gStyle->SetLineStyleString(22,"80 18 12 18 12 12"); gStyle->SetCanvasColor(10); gStyle->SetPadColor(10); gStyle->SetPadLeftMargin(0.2); gStyle->SetPadRightMargin(0.06); gStyle->SetPadTopMargin(0.03); gStyle->SetPadBottomMargin(0.2); canvas->ToggleEventStatus(); canvas->Range(-237.19,-8.78484,1074.67,-1.41487); canvas->SetFillColor(0); canvas->SetBorderMode(0); canvas->SetBorderSize(0); canvas->SetTickx(); canvas->SetTicky(); canvas->SetLeftMargin(0.0180804); canvas->SetRightMargin(0.0169196); canvas->SetTopMargin(0.0385488); canvas->SetBottomMargin(0.130385); canvas->SetFrameLineWidth(2); canvas->SetFrameBorderMode(0); canvas->SetFrameBorderSize(0); canvas->Divide(i,j); } void setOPT_hists(TH1F *hist, TString xAxisTitle="ala_x", TString yAxisTitle="ala_y", TString MainTitle="ala", Int_t Ndevision=510, Int_t color=4) { hist->GetXaxis()->SetTitle(xAxisTitle); hist->GetYaxis()->SetTitle(yAxisTitle); hist->GetXaxis()->SetTitleSize(0.06); hist->GetYaxis()->SetTitleSize(0.06); hist->GetXaxis()->SetTitleFont(42); hist->GetYaxis()->SetTitleFont(42); hist->GetXaxis()->SetNdivisions(Ndevision); hist->GetYaxis()->SetTitleOffset(1.2); hist->GetXaxis()->CenterTitle(); hist->GetYaxis()->CenterTitle(); hist->GetXaxis()->SetLabelFont(42); hist->GetYaxis()->SetLabelFont(42); hist->GetXaxis()->SetLabelSize(0.05); hist->GetYaxis()->SetLabelSize(0.05); hist->SetTitle(MainTitle); hist->SetLineColor(color); hist->SetMarkerStyle(20); hist->SetMarkerSize(1.0); hist->SetMarkerColor(color); hist->SetLineColor(color); hist->SetLineWidth(2); } void draw_comparison() { TCanvas *invmass = new TCanvas("invmass", "invmass",176,28,900,912); TCanvas *rap = new TCanvas("rap", "rap",176,28,900,912); TCanvas *pt = new TCanvas("pt", "pt",176,28,900,912); TCanvas *sig_back_mass = new TCanvas("sig_back_mass", "sig_back_mass",176,28,900,912); TCanvas *sig_back_pt = new TCanvas("sig_back_pt", "sig_back_pt",176,28,900,912); TCanvas *sig_back_rap = new TCanvas("sig_back_rap", "sig_back_rap",176,28,900,912); setOPT_canvas(invmass,1,3); setOPT_canvas(rap,1,3); setOPT_canvas(pt,1,3); setOPT_canvas(sig_back_mass,1,2); setOPT_canvas(sig_back_pt,1,2); setOPT_canvas(sig_back_rap,1,2); Char_t name[256], name1[256]; Int_t cut; TFile *file[4]; file[0] =new TFile("aug04_pairs_EXP_FULL_GOODhv_010407.root","READ"); file[1] =new TFile("aug04_pairs_EXP_FULL_BADhv_010407.root","READ"); file[2] =new TFile("aug04_pairs_EXP_3SEG_GOODhv_010407.root","READ"); file[3] =new TFile("aug04_pairs_EXP_3SEG_BADhv_010407.root","READ"); TFile *output = new TFile("test2.root","recreate"); TH1F* hists_invmass[4][10][3]; // [file][cut][polarity] TH1F* hists_rap[4][10][3]; // [file][cut][polarity] TH1F* hists_pt[4][10][3]; // [file][cut][polarity] TH1F* hists_invmass_sig[4][10]; // [file][cut][polarity] TH1F* hists_rap_sig[4][10]; // [file][cut][polarity] TH1F* hists_pt_sig[4][10]; // [file][cut][polarity] TH1F* hists_invmass_back[4][10]; // [file][cut][polarity] TH1F* hists_rap_back[4][10]; // [file][cut][polarity] TH1F* hists_pt_back[4][10]; // [file][cut][polarity] //////////////////////////////////////////////////////////////////////////////////////////////// // cut0 -> no cut // cut4 -> no cut // cut7 -> no cut // // pol0 -> e-e- , pol1 -> e+e- , pol2 -> e+e+ //////////////////////////////////////////////////////////////////////////////////////////////// for(Int_t k=0; k<4; k++) // file { for(Int_t i=0; i<10; i++) // cut { sprintf(name,"hmass_cut%d_back_0_sig_norm",i); hists_invmass_sig[k][i] = (TH1F*)file[k]->Get(name); sprintf(name,"invmass_cut%d_back_0_sig_file%d",i,k); hists_invmass_sig[k][i]->SetName(name); hists_invmass_sig[k][i]->SetTitle(name); sprintf(name,"hrap_cut%d_back_0_sig_norm",i); hists_rap_sig[k][i] = (TH1F*)file[k]->Get(name); sprintf(name,"rap_cut%d_back_0_sig_file%d",i,k); hists_rap_sig[k][i]->SetName(name); hists_rap_sig[k][i]->SetTitle(name); sprintf(name,"hpt_cut%d_back_0_sig_norm",i); hists_pt_sig[k][i] = (TH1F*)file[k]->Get(name); sprintf(name,"pt_cut%d_back_0_sig_file%d",i,k); hists_pt_sig[k][i]->SetName(name); hists_pt_sig[k][i]->SetTitle(name); sprintf(name,"hmass_cut%d_back_0_norm",i); hists_invmass_back[k][i] = (TH1F*)file[k]->Get(name); sprintf(name,"invmass_cut%d_back_file%d",i,k); hists_invmass_back[k][i]->SetName(name); hists_invmass_back[k][i]->SetTitle(name); sprintf(name,"hrap_cut%d_back_0_norm",i); hists_rap_back[k][i] = (TH1F*)file[k]->Get(name); sprintf(name,"rap_cut%d_back_file%d",i,k); hists_rap_back[k][i]->SetName(name); hists_rap_back[k][i]->SetTitle(name); sprintf(name,"hpt_cut%d_back_0_norm",i); hists_pt_back[k][i] = (TH1F*)file[k]->Get(name); sprintf(name,"pt_cut%d_back_file%d",i,k); hists_pt_back[k][i]->SetName(name); hists_pt_back[k][i]->SetTitle(name); for(Int_t j=0; j<3; j++) // polarity { sprintf(name,"hmass_cut%d_pol%d_norm",i,j); hists_invmass[k][i][j] = (TH1F*)file[k]->Get(name); sprintf(name,"invmass_cut%d_pol%d_file%d",i,j,k); hists_invmass[k][i][j]->SetName(name); hists_invmass[k][i][j]->SetTitle(name); sprintf(name,"hrap_cut%d_pol%d_norm",i,j); hists_rap[k][i][j] = (TH1F*)file[k]->Get(name); sprintf(name,"rap_cut%d_pol%d_file%d",i,j,k); hists_rap[k][i][j]->SetName(name); hists_rap[k][i][j]->SetTitle(name); sprintf(name,"hpt_cut%d_pol%d_norm",i,j); hists_pt[k][i][j] = (TH1F*)file[k]->Get(name); sprintf(name,"pt_cut%d_pol%d_file%d",i,j,k); hists_pt[k][i][j]->SetName(name); hists_pt[k][i][j]->SetTitle(name); } } } cut = 7; // tutaj musze dodac tytul dla osi Y for(Int_t k=0; k<4; k++) { setOPT_hists(hists_invmass [k][cut][0], "M_{ee} [GeV/c^{2}]","dN/d#pi^{0} dN/dM_{ee} [(GeV/c^{2})^{-1}]","e-e-",510,2+2*k); setOPT_hists(hists_rap [k][cut][0], "Y ","dN/d#pi^{0} dN/dY","e-e-",510,2+2*k); setOPT_hists(hists_pt [k][cut][0], "P_{#perp} ","dN/d#pi^{0} dN/dP_{#perp} [(GeV/c)^{-1}]","e-e-",505,2+2*k); setOPT_hists(hists_invmass[k][cut][1], "M_{ee} [GeV/c^{2}]","dN/d#pi^{0} dN/dM_{ee} [(GeV/c^{2})^{-1}]","e+e-",510,2+2*k); setOPT_hists(hists_rap [k][cut][1], "Y ","dN/d#pi^{0} dN/dY","e+e-",510,2+2*k); setOPT_hists(hists_pt [k][cut][1], "P_{#perp} ","dN/d#pi^{0} dN/dP_{#perp} [(GeV/c)^{-1}]","e+e-",505,2+2*k); setOPT_hists(hists_invmass[k][cut][2], "M_{ee} [GeV/c^{2}]","dN/d#pi^{0} dN/dM_{ee} [(GeV/c^{2})^{-1}]","e+e+",510,2+2*k); setOPT_hists(hists_rap [k][cut][2], "Y ","dN/d#pi^{0} dN/dY","e+e+",510,2+2*k); setOPT_hists(hists_pt [k][cut][2], "P_{#perp} ","dN/d#pi^{0} dN/dP_{#perp} [(GeV/c)^{-1}] ","e+e+",505,2+2*k); setOPT_hists(hists_invmass_sig [k][cut], "M_{ee} [GeV/c^{2}]","dN/d#pi^{0} dN/dM_{ee} [(GeV/c^{2})^{-1}]","signal",510,2+2*k); setOPT_hists(hists_rap_sig [k][cut], "Y ","dN/d#pi^{0} dN/dY","signal",510,2+2*k); setOPT_hists(hists_pt_sig [k][cut], "P_{#perp} ","dN/d#pi^{0} dN/dP_{#perp} [(GeV/c)^{-1}] ","signal",505,2+2*k); setOPT_hists(hists_invmass_back [k][cut], "M_{ee} [GeV/c^{2}]","dN/d#pi^{0} dN/dM_{ee} [(GeV/c^{2})^{-1}]","background",510,2+2*k); setOPT_hists(hists_rap_back [k][cut], "Y ","dN/d#pi^{0} dN/dY","background",510,2+2*k); setOPT_hists(hists_pt_back [k][cut], "P_{\perp} ","dN/d#pi^{0} dN/dP_{#perp} [(GeV/c)^{-1}] ","background",505,2+2*k); } invmass->cd(1); hists_invmass[0][cut][0]->DrawCopy("c"); hists_invmass[1][cut][0]->DrawCopy("c same"); hists_invmass[2][cut][0]->DrawCopy("c same"); hists_invmass[3][cut][0]->DrawCopy("c same"); setLegend("Full tar GOOD hv",hists_invmass[0][cut][0],"Full tar BAD hv",hists_invmass[1][cut][0],"3SEG tar GOOD hv",hists_invmass[2][cut][0],"3SEG tar BAD hv",hists_invmass[3][cut][0]); invmass->cd(2); hists_invmass[0][cut][1]->DrawCopy("c"); hists_invmass[1][cut][1]->DrawCopy("c same"); hists_invmass[2][cut][1]->DrawCopy("c same"); hists_invmass[3][cut][1]->DrawCopy("c same"); invmass->cd(3); hists_invmass[0][cut][2]->DrawCopy("c"); hists_invmass[1][cut][2]->DrawCopy("c same"); hists_invmass[2][cut][2]->DrawCopy("c same"); hists_invmass[3][cut][2]->DrawCopy("c same"); rap->cd(1); hists_rap[0][cut][0]->DrawCopy("c"); hists_rap[1][cut][0]->DrawCopy("c same"); hists_rap[2][cut][0]->DrawCopy("c same"); hists_rap[3][cut][0]->DrawCopy("c same"); setLegend("Full tar GOOD hv",hists_rap[0][cut][0],"Full tar BAD hv",hists_rap[1][cut][0],"3SEG tar GOOD hv",hists_rap[2][cut][0],"3SEG tar BAD hv",hists_rap[3][cut][0]); rap->cd(2); hists_rap[0][cut][1]->DrawCopy("c"); hists_rap[1][cut][1]->DrawCopy("c same"); hists_rap[2][cut][1]->DrawCopy("c same"); hists_rap[3][cut][1]->DrawCopy("c same"); rap->cd(3); hists_rap[0][cut][2]->DrawCopy("c"); hists_rap[1][cut][2]->DrawCopy("c same"); hists_rap[2][cut][2]->DrawCopy("c same"); hists_rap[3][cut][2]->DrawCopy("c same"); pt->cd(1); hists_pt[0][cut][0]->DrawCopy("c"); hists_pt[1][cut][0]->DrawCopy("c same"); hists_pt[2][cut][0]->DrawCopy("c same"); hists_pt[3][cut][0]->DrawCopy("c same"); setLegend("Full tar GOOD hv",hists_pt[0][cut][0],"Full tar BAD hv",hists_pt[1][cut][0],"3SEG tar GOOD hv",hists_pt[2][cut][0],"3SEG tar BAD hv",hists_pt[3][cut][0]); pt->cd(2); hists_pt[0][cut][1]->DrawCopy("c"); hists_pt[1][cut][1]->DrawCopy("c same"); hists_pt[2][cut][1]->DrawCopy("c same"); hists_pt[3][cut][1]->DrawCopy("c same"); pt->cd(3); hists_pt[0][cut][2]->DrawCopy("c"); hists_pt[1][cut][2]->DrawCopy("c same"); hists_pt[2][cut][2]->DrawCopy("c same"); hists_pt[3][cut][2]->DrawCopy("c same"); sig_back_pt->cd(1); hists_pt_sig[0][cut]->DrawCopy("c"); hists_pt_sig[1][cut]->DrawCopy("c same"); hists_pt_sig[2][cut]->DrawCopy("c same"); hists_pt_sig[3][cut]->DrawCopy("c same"); setLegend("Full tar GOOD hv",hists_pt_sig[0][cut],"Full tar BAD hv",hists_pt_sig[1][cut],"3SEG tar GOOD hv",hists_pt_sig[2][cut],"3SEG tar BAD hv",hists_pt_sig[3][cut]); sig_back_pt->cd(2); hists_pt_back[0][cut]->DrawCopy("c"); hists_pt_back[1][cut]->DrawCopy("c same"); hists_pt_back[2][cut]->DrawCopy("c same"); hists_pt_back[3][cut]->DrawCopy("c same"); sig_back_mass->cd(1); hists_invmass_sig[0][cut]->DrawCopy("c"); hists_invmass_sig[1][cut]->DrawCopy("c same"); hists_invmass_sig[2][cut]->DrawCopy("c same"); hists_invmass_sig[3][cut]->DrawCopy("c same"); setLegend("Full tar GOOD hv",hists_invmass_sig[0][cut],"Full tar BAD hv",hists_invmass_sig[1][cut],"3SEG tar GOOD hv",hists_invmass_sig[2][cut],"3SEG tar BAD hv",hists_invmass_sig[3][cut]); sig_back_mass->cd(2); hists_invmass_back[0][cut]->DrawCopy("c"); hists_invmass_back[1][cut]->DrawCopy("c same"); hists_invmass_back[2][cut]->DrawCopy("c same"); hists_invmass_back[3][cut]->DrawCopy("c same"); sig_back_rap->cd(1); hists_rap_sig[0][cut]->DrawCopy("c"); hists_rap_sig[1][cut]->DrawCopy("c same"); hists_rap_sig[2][cut]->DrawCopy("c same"); hists_rap_sig[3][cut]->DrawCopy("c same"); setLegend("Full tar GOOD hv",hists_rap_sig[0][cut],"Full tar BAD hv",hists_rap_sig[1][cut],"3SEG tar GOOD hv",hists_rap_sig[2][cut],"3SEG tar BAD hv",hists_rap_sig[3][cut]); sig_back_rap->cd(2); hists_rap_back[0][cut]->DrawCopy("c"); hists_rap_back[1][cut]->DrawCopy("c same"); hists_rap_back[2][cut]->DrawCopy("c same"); hists_rap_back[3][cut]->DrawCopy("c same"); output->cd(); invmass->Write(); pt->Write(); rap->Write(); }