void paraPull_alpha_MUONS_MS_2TeV_2Lep_plots_All() { //=========Macro generated from canvas: c1/alpha_MUONS_MS //========= (Sun Nov 22 20:19:53 2015) by ROOT version6.02/12 TCanvas *c1 = new TCanvas("c1", "alpha_MUONS_MS",0,22,1000,600); gStyle->SetOptStat(0); c1->Range(-4.125,-1.009766,37.125,0.9890026); c1->SetFillColor(0); c1->SetBorderMode(0); c1->SetBorderSize(2); c1->SetGridx(); c1->SetGridy(); c1->SetFrameBorderMode(0); c1->SetFrameBorderMode(0); TH1F *NuisanceParameterFreed26 = new TH1F("NuisanceParameterFreed26","alpha_MUONS_MS",33,0,33); NuisanceParameterFreed26->SetMinimum(-0.8098895); NuisanceParameterFreed26->SetMaximum(0.7891257); NuisanceParameterFreed26->SetStats(0); Int_t ci; // for color index setting TColor *color; // for color definition with alpha ci = TColor::GetColor("#000099"); NuisanceParameterFreed26->SetLineColor(ci); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(1,"XS_ttbar"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(2,"FT_EFF_Eigen_C_0"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(3,"EG_SCALE_ALL"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(4,"Luminosity"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(5,"XS_st"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(6,"XS_Zc"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(7,"MUONS_ID"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(8,"FT_EFF_Eigen_B_1"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(9,"FT_EFF_Eigen_C_1"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(10,"EL_EFF_ID_TotalCorrUncertainty"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(11,"FT_EFF_Eigen_C_3"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(12,"XS_Zl"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(13,"MUON_EFF_TrigSystUncertainty"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(14,"FT_EFF_Eigen_B_0"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(15,"FT_EFF_Eigen_B_2"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(16,"EL_EFF_Iso_TotalCorrUncertainty"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(17,"EL_EFF_Reco_TotalCorrUncertainty"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(18,"MUONS_SCALE"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(19,"MUON_ISO_STAT"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(20,"FT_EFF_Eigen_Light_2"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(21,"MUON_EFF_STAT"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(22,"MUON_EFF_SYS"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(23,"MUON_EFF_TrigStatUncertainty"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(24,"EG_RESOLUTION_ALL"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(25,"FT_EFF_Eigen_Light_1"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(26,"XS_diboson"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(27,"FT_EFF_Eigen_Light_4"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(28,"FT_EFF_Eigen_Light_3"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(29,"FT_EFF_extrapolation"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(30,"FT_EFF_Eigen_C_2"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(31,"XS_Zb"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(32,"MUON_ISO_SYS"); NuisanceParameterFreed26->GetXaxis()->SetBinLabel(33,"FT_EFF_Eigen_Light_0"); NuisanceParameterFreed26->GetXaxis()->SetLabelFont(42); NuisanceParameterFreed26->GetXaxis()->SetLabelSize(0.035); NuisanceParameterFreed26->GetXaxis()->SetTitleSize(0.035); NuisanceParameterFreed26->GetXaxis()->SetTitleFont(42); NuisanceParameterFreed26->GetYaxis()->SetTitle("#theta_{fit} - #theta_{initial}/#Delta#theta"); NuisanceParameterFreed26->GetYaxis()->SetLabelFont(42); NuisanceParameterFreed26->GetYaxis()->SetLabelSize(0.035); NuisanceParameterFreed26->GetYaxis()->SetTitleSize(0.035); NuisanceParameterFreed26->GetYaxis()->SetTitleFont(42); NuisanceParameterFreed26->GetZaxis()->SetLabelFont(42); NuisanceParameterFreed26->GetZaxis()->SetLabelSize(0.035); NuisanceParameterFreed26->GetZaxis()->SetTitleSize(0.035); NuisanceParameterFreed26->GetZaxis()->SetTitleFont(42); NuisanceParameterFreed26->Draw("hist"); Double_t _fx1026[35] = { 1.22802e-312, 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 0 }; Double_t _fy1026[35] = { 1.22802e-312, -0.8098895, -0.4037362, -0.3423096, -0.2252411, -0.1828675, -0.1571762, -0.149237, -0.1273548, -0.07358516, -0.06808801, -0.06198229, -0.06031006, -0.05293818, -0.03417267, -0.03238036, -0.02689891, -0.02542632, -0.001643063, 0.0001603888, 0.006036281, 0.01053148, 0.01679974, 0.01757673, 0.01965372, 0.02264507, 0.04078009, 0.05097348, 0.05337059, 0.05443933, 0.05852469, 0.09383765, 0.1011771, 0.7891257, 0 }; Double_t _fex1026[35] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; Double_t _fey1026[35] = { 0, 0, 0.6078027, 1.092912, 1.104476, 0.9336719, 0.9913968, 0.9144366, 0.7275085, 0.9893613, 0.987145, 0.9819155, 0.9938071, 0.9978833, 0.9917251, 0.9510144, 0.9928258, 0.9931704, 0.9925399, 1.005278, 0.9933467, 0.9908674, 0.9932531, 0.9930728, 0.9918603, 1.137459, 0.9911371, 0.9865638, 0.9931418, 0.9930512, 0.9596104, 0.9909946, 0.753126, 0.9864575, 0.77864 }; TGraphErrors *gre = new TGraphErrors(35,_fx1026,_fy1026,_fex1026,_fey1026); gre->SetName(""); gre->SetTitle(""); gre->SetFillColor(1); gre->SetMarkerStyle(20); gre->SetMarkerSize(1.2); TH1F *Graph_Graph1026 = new TH1F("Graph_Graph1026","",100,0,35.75); Graph_Graph1026->SetMinimum(-1.756302); Graph_Graph1026->SetMaximum(2.096664); Graph_Graph1026->SetDirectory(0); Graph_Graph1026->SetStats(0); ci = TColor::GetColor("#000099"); Graph_Graph1026->SetLineColor(ci); Graph_Graph1026->GetXaxis()->SetLabelFont(42); Graph_Graph1026->GetXaxis()->SetLabelSize(0.035); Graph_Graph1026->GetXaxis()->SetTitleSize(0.035); Graph_Graph1026->GetXaxis()->SetTitleFont(42); Graph_Graph1026->GetYaxis()->SetLabelFont(42); Graph_Graph1026->GetYaxis()->SetLabelSize(0.035); Graph_Graph1026->GetYaxis()->SetTitleSize(0.035); Graph_Graph1026->GetYaxis()->SetTitleFont(42); Graph_Graph1026->GetZaxis()->SetLabelFont(42); Graph_Graph1026->GetZaxis()->SetLabelSize(0.035); Graph_Graph1026->GetZaxis()->SetTitleSize(0.035); Graph_Graph1026->GetZaxis()->SetTitleFont(42); gre->SetHistogram(Graph_Graph1026); gre->Draw("p"); TLegend *leg = new TLegend(0.1,0.4,0.4,0.95,NULL,"brNDC"); leg->SetBorderSize(0); leg->SetTextFont(72); leg->SetTextSize(0.015); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(0); leg->Draw(); TPaveText *pt = new TPaveText(0.3599799,0.9341608,0.6400201,0.995,"blNDC"); pt->SetName("title"); pt->SetBorderSize(0); pt->SetFillColor(0); pt->SetFillStyle(0); pt->SetTextFont(42); TText *AText = pt->AddText("alpha_MUONS_MS"); pt->Draw(); c1->Modified(); c1->cd(); c1->SetSelected(c1); }
void Fit_electron_purity(TH1F * nsigmaE_inclusive[]) { TH1D *purity_MB=new TH1D("purity_MB","",NpT_bins_run12_MB,pt_run12_MB); TH1D *purity_oneSigma=new TH1D("purity_oneSigma","",NpT_bins_run12_MB,pt_run12_MB); TH1D *purity_twoSigma=new TH1D("purity_twoSigma","",NpT_bins_run12_MB,pt_run12_MB); TH1D *purity_threeSigma=new TH1D("purity_threeSigma","",NpT_bins_run12_MB,pt_run12_MB); TH1F * mh1Electron_Constant=new TH1F("mh1Electron_Constant","",NpT_bins_run12_MB,pt_run12_MB); TH1F * mh1Electron_Mean=new TH1F("mh1Electron_Mean","",NpT_bins_run12_MB,pt_run12_MB); TH1F * mh1Electron_Sigma=new TH1F("mh1Electron_Sigma","",NpT_bins_run12_MB,pt_run12_MB); gStyle->SetOptFit(111); TCanvas *c2=new TCanvas("c2","",1200,800); TCanvas *c3=new TCanvas("c3","",1200,800); c2->Divide(3,2); c3->Divide(3,2); int Npad=1; for(Int_t ipt=23;ipt<NpT_bins_run12_MB;ipt++) { // TF1 *total_3 =new TF1(TString("total_3"),"[0]*TMath::Gaus(x,[1],[2],1) + [3]*TMath::Gaus(x,[4],[5],1) + [6]*TMath::Gaus(x,[7],[8],1)+[9]*TMath::Gaus(x,[10],[11],1)",-15,15);// fit the total TF1 *total_3 =new TF1(TString("total_3"),"[0]*TMath::Gaus(x,[1],[2],1) + [3]*TMath::Gaus(x,[4],[5],1) + [6]*TMath::Gaus(x,[7],[8],1)",-15,15);// fit the total TF1 * g1=new TF1(TString("g1"),"[0]*TMath::Gaus(x,[1],[2],1)",-15,15); TF1 * g2=new TF1(TString("g2"),"[0]*TMath::Gaus(x,[1],[2],1)",-15,15); TF1 * g3=new TF1(TString("g3"),"[0]*TMath::Gaus(x,[1],[2],1)",-15,15); TF1 * g4=new TF1(TString("g4"),"[0]*TMath::Gaus(x,[1],[2],1)",-15,15); // total_3->SetParNames("#pi C", "#pi #mu", "#pi #sigma", "proton C", "proton #mu", "proton #sigma","kaon C","kaon #mu","kaon sigma"); total_3->SetLineColor(kBlue); g1->SetLineColor(3); g2->SetLineColor(6); g3->SetLineColor(7); g4->SetLineColor(2); g1->SetLineStyle(7); g2->SetLineStyle(7); g3->SetLineStyle(7); if(ipt<29) { c2->cd(Npad++); gPad->SetLogy(1); } else { c3->cd(Npad++); gPad->SetLogy(1); } if(Npad==7) Npad=1; nsigmaE_inclusive[ipt]->SetTitle(mh1_pT_Title[ipt]); nsigmaE_inclusive[ipt]->GetXaxis()->SetTitle("nSigmaE"); nsigmaE_inclusive[ipt]->GetYaxis()->SetTitle("Counts"); nsigmaE_inclusive[ipt]->GetXaxis()->SetRangeUser(-15,15); //pi mean total_3->SetParameter(1,pi_mean_tof->GetBinContent(ipt+1)); total_3->SetParLimits(1,pi_mean_tof->GetBinContent(ipt+1)-0.5,pi_mean_tof->GetBinContent(ipt+1)+0.5); //pi sigma total_3->SetParameter(2,pi_sigma_tof->GetBinContent(ipt+1)); total_3->SetParLimits(2,pi_sigma_tof->GetBinContent(ipt+1)-0.1,pi_sigma_tof->GetBinContent(ipt+1)+0.1); //proton mean total_3->SetParameter(4,proton_mean_tof->GetBinContent(ipt+1)); total_3->SetParLimits(4,proton_mean_tof->GetBinContent(ipt+1)-1,proton_mean_tof->GetBinContent(ipt+1)+1); //proton sigma total_3->SetParameter(5,proton_sigma_tof->GetBinContent(ipt+1)); total_3->SetParLimits(5,proton_sigma_tof->GetBinContent(ipt+1)-0.1,proton_sigma_tof->GetBinContent(ipt+1)+0.1); // //kaon mean // total_3->SetParameter(7,kaon_mean_tof->GetBinContent(ipt+1)); // total_3->SetParLimits(7,kaon_mean_tof->GetBinContent(ipt+1)-(ipt+1)*kaon_mean_tof->GetBinError(ipt+1)-1,kaon_mean_tof->GetBinContent(ipt+1)+(ipt+1)*kaon_mean_tof->GetBinError(ipt+1)+1); // total_3->SetParameter(8,kaon_sigma_tof->GetBinContent(ipt+1)); // total_3->SetParLimits(8,kaon_sigma_tof->GetBinContent(ipt+1)-(ipt+1)*kaon_sigma_tof->GetBinError(ipt+1),kaon_sigma_tof->GetBinContent(ipt+1)+(ipt+1)*kaon_sigma_tof->GetBinError(ipt+1)); // //kaon sigma // total_3->SetParameter(8,kaon_sigma_tof->GetBinContent(ipt+1)); // total_3->SetParLimits(8,kaon_sigma_tof->GetBinContent(ipt+1)-(ipt+1)*kaon_sigma_tof->GetBinError(ipt+1),kaon_sigma_tof->GetBinContent(ipt+1)+(ipt+1)*kaon_sigma_tof->GetBinError(ipt+1)); //electron mean total_3->SetParameter(7,electron_Mean->GetBinContent(ipt+1)); total_3->SetParLimits(7,electron_Mean->GetBinContent(ipt+1)-3*electron_Mean->GetBinError(ipt+1),electron_Mean->GetBinContent(ipt+1)+3*electron_Mean->GetBinError(ipt+1)); //electron sigma total_3->SetParameter(8,electron_Sigma->GetBinContent(ipt+1)); total_3->SetParLimits(8,electron_Sigma->GetBinContent(ipt+1)-3*electron_Sigma->GetBinError(ipt+1),electron_Sigma->GetBinContent(ipt+1)+3*electron_Sigma->GetBinError(ipt+1)); nsigmaE_inclusive[ipt]->Fit(total_3,"R","same",-10,4); g1->SetParameter(0,total_3->GetParameter(0)); g1->SetParameter(1,total_3->GetParameter(1)); g1->SetParameter(2,total_3->GetParameter(2)); g2->SetParameter(0,total_3->GetParameter(3)); g2->SetParameter(1,total_3->GetParameter(4)); g2->SetParameter(2,total_3->GetParameter(5)); g4->SetParameter(0,total_3->GetParameter(6)); g4->SetParameter(1,total_3->GetParameter(7)); g4->SetParameter(2,total_3->GetParameter(8)); // g4->SetParameter(0,total_3->GetParameter(9)); // g4->SetParameter(1,total_3->GetParameter(10)); // g4->SetParameter(2,total_3->GetParameter(11)); g1->Draw("same"); g2->Draw("same"); // g3->Draw("same"); g4->Draw("same"); TLegend *legend = new TLegend(0.15,0.65,0.35,0.8); legend->AddEntry(g1,"#pi ","lp"); legend->AddEntry(g2,"p+k ","lp"); // legend->AddEntry(g3,"kaon","lp"); legend->AddEntry(g4,"e","lp"); legend->SetBorderSize(0); legend->SetFillStyle(0); legend->SetTextSize(0.055); legend ->SetTextFont(62); legend->Draw("same"); c2->SaveAs("purity_fit_c2.pdf"); c3->SaveAs("purity_fit_c3.pdf"); //continue; Double_t mPurity=g4->Integral(-1,3)/total_3->Integral(-1,3); purity_MB->SetBinContent(ipt+1,mPurity); mh1Electron_Constant->SetBinContent(ipt+1,total_3->GetParameter(6)); mh1Electron_Constant->SetBinError(ipt+1,total_3->GetParError(6)); mh1Electron_Mean->SetBinContent(ipt+1,total_3->GetParameter(7)); mh1Electron_Mean->SetBinError(ipt+1,total_3->GetParError(7)); mh1Electron_Sigma->SetBinContent(ipt+1,total_3->GetParameter(8)); mh1Electron_Sigma->SetBinError(ipt+1,total_3->GetParError(8)); Double_t mPurity_temp_oneSigma= Fit_purity(nsigmaE_inclusive[ipt],ipt,electron_Mean->GetBinError(ipt+1),electron_Sigma->GetBinError(ipt+1),total_3,g1,g2,g3,g4,1,1); Double_t mPurity_temp_twoSigma= Fit_purity(nsigmaE_inclusive[ipt],ipt,electron_Mean->GetBinError(ipt+1),electron_Sigma->GetBinError(ipt+1),total_3,g1,g2,g3,g4,2,1); Double_t mPurity_temp_threeSigma= Fit_purity(nsigmaE_inclusive[ipt],ipt,electron_Mean->GetBinError(ipt+1),electron_Sigma->GetBinError(ipt+1),total_3,g1,g2,g3,g4,3,1); purity_oneSigma->SetBinContent(ipt+1,mPurity_temp_oneSigma); purity_twoSigma->SetBinContent(ipt+1,mPurity_temp_twoSigma); purity_threeSigma->SetBinContent(ipt+1,mPurity_temp_threeSigma); Double_t purity_mean=(mPurity_temp_oneSigma+mPurity_temp_twoSigma+mPurity_temp_threeSigma)/3.; Double_t mPurity_sys=0; if(abs(purity_mean-mPurity_temp_oneSigma)>mPurity_sys) mPurity_sys=abs(purity_mean-mPurity_temp_oneSigma); if(abs(purity_mean-mPurity_temp_twoSigma)>mPurity_sys) mPurity_sys=abs(purity_mean-mPurity_temp_twoSigma); if(abs(purity_mean-mPurity_temp_threeSigma)>mPurity_sys) mPurity_sys=abs(purity_mean-mPurity_temp_threeSigma); Double_t mPurity_sts=0.0; mPurity_sts= Get_sts_Error(nsigmaE_inclusive[ipt],ipt,total_3,g1,g2,g3,g4,3,0,purity_mean,mPurity_sys); purity_MB->SetBinContent(ipt+1,purity_mean); purity_MB->SetBinError(ipt+1,sqrt(mPurity_sys*mPurity_sys+mPurity_sts*mPurity_sts)); Fit_purity(nsigmaE_inclusive[ipt],ipt,electron_Mean->GetBinError(ipt+1),electron_Sigma->GetBinError(ipt+1),total_3,g1,g2,g3,g4,1,1); Fit_purity(nsigmaE_inclusive[ipt],ipt,electron_Mean->GetBinError(ipt+1),electron_Sigma->GetBinError(ipt+1),total_3,g1,g2,g3,g4,2,1); Fit_purity(nsigmaE_inclusive[ipt],ipt,electron_Mean->GetBinError(ipt+1),electron_Sigma->GetBinError(ipt+1),total_3,g1,g2,g3,g4,3,1); TFile *file_purity=new TFile("purity_MB_highpT.root","RECREATE"); purity_MB->Write(); purity_oneSigma->Write(); purity_twoSigma->Write(); purity_threeSigma->Write(); file_purity->Close(); } Draw_purity_sys(purity_oneSigma,purity_twoSigma,purity_threeSigma); Draw_purity(purity_MB); TFile *file_3=new TFile("Mean_Sigma_Hadron.root","RECREATE"); mh1Electron_Constant->Write(); mh1Electron_Mean->Write(); mh1Electron_Sigma->Write(); }
void drawplot_eff_eta() { // gROOT->ProcessLine(".L effFunctions.C"); TCanvas* cEff = new TCanvas("cEff","cEff",700,450); cEff->SetGridx(1); cEff->SetGridy(1); TTree *gt = getTree(filesDir + "gem_csc_delta_pt40_pad4.root"); //ht = draw_geff(gt, "Eff. for a SimTrack to have an associated LCT;SimTrack |#eta|;Eff.", "h_odd", "(100,1.54,2.2)", "TMath::Abs(eta)", "", ok_lct1 || ok_lct2, "P", kRed); //hh = draw_geff(gt, "Eff. for a SimTrack to have an associated LCT;SimTrack |#eta|;Eff.", "h_odd", "(100,1.54,2.2)", "TMath::Abs(eta)", "", ok_sh1 || ok_sh2, "P same", kViolet); h1 = draw_geff(gt, "Eff. for a SimTrack to have an associated ME1/b LCT;SimTrack |#eta|;Eff.", "h_odd", "(70,1.54,2.2)", "TMath::Abs(eta)", ok_sh1, ok_lct1, "P", kRed); h2 = draw_geff(gt, "Eff. for a SimTrack to have an associated ME1/b LCT;SimTrack |#eta|;Eff.", "h_odd", "(70,1.54,2.2)", "TMath::Abs(eta)", ok_sh2, ok_lct2, "P same"); eff_base->GetYaxis()->SetRangeUser(0.6,1.05); TLegend *leg = new TLegend(0.42,0.23,.96,0.4, NULL, "brNDC"); leg->SetBorderSize(0); leg->SetFillStyle(0); leg->AddEntry(h1, "odd chambers","l"); leg->AddEntry(h2, "even chambers","l"); leg->Draw(); TLatex * tex = new TLatex(0.17, 0.16,"No Pile-Up"); tex->SetNDC(); tex->Draw(); cEff->Print(plotDir + "lct_eff_for_Trk_vsTrkEta_pt40" + ext); h1 = draw_geff(gt, "Eff. for a SimTrack to have an associated ME1/b LCT and GEM Pad;SimTrack |#eta|;Eff.", "h_odd", "(70,1.54,2.2)", "TMath::Abs(eta)", ok_sh1, ok_lct1 && ok_pad1, "P", kRed); h2 = draw_geff(gt, "Eff. for a SimTrack to have an associated ME1/b LCT and GEM Pad;SimTrack |#eta|;Eff.", "h_odd", "(70,1.54,2.2)", "TMath::Abs(eta)", ok_sh2, ok_lct2 && ok_pad2, "P same"); eff_base->GetYaxis()->SetRangeUser(0.6,1.05); TLegend *leg = new TLegend(0.42,0.23,.96,0.4, NULL, "brNDC"); leg->SetBorderSize(0); leg->SetFillStyle(0); leg->AddEntry(h1, "odd chambers","l"); leg->AddEntry(h2, "even chambers","l"); leg->Draw(); TLatex * tex = new TLatex(0.17, 0.16,"No Pile-Up"); tex->SetNDC(); tex->Draw(); cEff->Print(plotDir + "gem_pad_and_lct_eff_for_Trk_vsTrkEta_pt40" + ext); return; h1 = draw_geff(gt, "Eff. for a SimTrack to have an associated GEM Pad;SimTrack |#eta|;Eff.", "h_odd", "(70,1.54,2.2)", "TMath::Abs(eta)", "", ok_pad1 || ok_pad2, "P", kViolet); eff_base->GetYaxis()->SetRangeUser(0.6,1.05); TLatex * tex = new TLatex(0.17, 0.16,"No Pile-Up"); tex->SetNDC(); tex->Draw(); cEff->Print(plotDir + "gem_pad0_eff_for_Trk_vsTrkEta_pt40" + ext); TTree *gt15 = getTree(filesDir + "gem_csc_delta_pt15_pad4.root"); h1 = draw_geff(gt15, "Eff. for a SimTrack to have an associated LCT;SimTrack |#eta|;Eff.", "h_odd", "(140,1.54,2.2)", "TMath::Abs(eta)", "", ok_lct1 || ok_lct2, "P", kViolet+2); cEff->Print(plotDir + "lct_eff_for_Trk_vsTrkEta_pt15" + ext); ho = draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;LCT |#eta|;Eff.", "h_odd", "(140,1.5,2.2)", "TMath::Abs(eta_lct_odd)", ok_lct1, ok_pad1, "P", kRed); he = draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;LCT |#eta|;Eff.", "h_evn", "(140,1.5,2.2)", "TMath::Abs(eta_lct_even)", ok_lct2, ok_pad2, "P same"); TLegend *leg = new TLegend(0.42,0.23,.96,0.4, NULL, "brNDC"); leg->SetBorderSize(0); leg->SetFillStyle(0); leg->AddEntry(he, "\"Close\" chambers","l"); leg->AddEntry(ho, "\"Far\" chambers","l"); leg->Draw(); cEff->Print(plotDir + "gem_pad_eff_for_LCT_vsLCTEta_pt40" + ext); draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;SimTrack |#eta|;Eff.", "h_odd", "(140,1.5,2.2)", "TMath::Abs(eta)", ok_lct1, ok_pad1, "P", kRed); draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;SimTrack |#eta|;Eff.", "h_evn", "(140,1.5,2.2)", "TMath::Abs(eta)", ok_lct2, ok_pad2, "P same"); leg->Draw(); cEff->Print(plotDir + "gem_pad_eff_for_LCT_vsTrkEta_pt40" + ext); draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;LCT |#eta|;Eff.", "h_odd", "(140,1.5,2.2)", "TMath::Abs(eta_lct_odd)", ok_lct1, ok_pad1_overlap, "P", kRed); draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;LCT |#eta|;Eff.", "h_evn", "(140,1.5,2.2)", "TMath::Abs(eta_lct_even)", ok_lct2, ok_pad2_overlap, "P same"); leg->Draw(); cEff->Print(plotDir + "gem_pad_eff_for_LCT_vsLCTEta_pt40_overlap" + ext); draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;SimTrack |#eta|;Eff.", "h_odd", "(140,1.5,2.2)", "TMath::Abs(eta)", ok_lct1, ok_pad1_overlap, "P", kRed); draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;SimTrack |#eta|;Eff.", "h_evn", "(140,1.5,2.2)", "TMath::Abs(eta)", ok_lct2, ok_pad2_overlap, "P same"); leg->Draw(); cEff->Print(plotDir + "gem_pad_eff_for_LCT_vsTrkEta_pt40_overlap" + ext); //draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;z SimTrack |#eta|;Eff.", "h_odd", "(140,1.5,2.2)", "TMath::Abs(eta)", ok_lct1 && Ep, ok_pad1_overlap, "P", kRed); //draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;z SimTrack |#eta|;Eff.", "h_evn", "(140,1.5,2.2)", "TMath::Abs(eta)", ok_lct2 && Ep, ok_pad2_overlap, "P same"); //draw_geff(gt, "Eff. for track with LCT to have GEM pad in chamber;z SimTrack |#eta|;Eff.", "h_odd", "(140,1.5,2.2)", "TMath::Abs(eta_gemsh_odd)", ok_gsh1, ok_gdg1, "P", kRed); h1 = draw_geff(gt, "Eff. for a SimTrack to have an associated GEM pad;SimTrack |#eta|;Eff.", "h_odd", "(140,1.54,2.2)", "TMath::Abs(eta)", "", ok_pad1 || ok_pad2, "P", kViolet); h2 = draw_geff(gt, "Eff. for a SimTrack to have an associated GEM pad;SimTrack |#eta|;Eff.", "h_odd", "(140,1.54,2.2)", "TMath::Abs(eta)", "", ok_2pad1 || ok_2pad2, "P same", kViolet-6); TLegend *leg = new TLegend(0.42,0.23,.96,0.4, NULL, "brNDC"); leg->SetBorderSize(0); leg->SetFillStyle(0); leg->AddEntry(h1, "at least one pad","l"); leg->AddEntry(he, "two pads in two GEMs","l"); leg->Draw(); cEff->Print(plotDir + "gem_pad_eff_for_Trk_vsTrkEta_pt40" + ext); return; draw_geff(gt, "Eff. for a SimTrack to have an associated GEM pad;SimTrack |#eta|;Eff.", "h_odd", "(140,1.54,2.2)", "TMath::Abs(eta)", "", ok_gsh1 || ok_gsh2, "P", kViolet); draw_geff(gt, "Eff. for a SimTrack to have an associated GEM pad;SimTrack |#eta|;Eff.", "h_odd", "(140,1.54,2.2)", "TMath::Abs(eta)", "", ok_g2sh1 || ok_g2sh2 , "P", kOrange); draw_geff(gt, "Eff. for a SimTrack to have an associated GEM pad;SimTrack |#eta|;Eff.", "h_odd", "(140,1.54,2.2)", "TMath::Abs(eta)", "", ok_copad1 || ok_copad2 , "P same", kRed); }
void plot2(){ typedef std::map<double, ROOT::Math::XYZTVector , User::moreStruct>::iterator CImap; TFile* file = new TFile("../vbfTree.root","READ"); TCanvas *c1 = new TCanvas("c1Mass","",5,30,650,600); c1->SetGrid(0,0); c1->SetFillStyle(4000); c1->SetFillColor(10); c1->SetTicky(); c1->SetObjectStat(0); c1->SetLogy(1); TLegend* leg = new TLegend(0.55,0.45,0.85,0.75,NULL,"brNDC"); leg->SetFillStyle(0); leg->SetBorderSize(0); leg->SetFillColor(10); leg->SetTextSize(0.04); leg->SetHeader("#splitline{POWHEG+PYTHIA qqH(115)#rightarrow#tau#tau}{jets matched to tag partons}"); TTree* currentTree = (TTree*)file->Get("vbfJetAnalyzer/tree"); int nEntries = currentTree->GetEntries() ; TH2F* h2 = new TH2F("h2","; #Delta#eta_{j1,j2}; min_{i=1,2}#Delta#eta_{ji,j3} ", 80,0,8,40,0,8); std::vector<ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double> > >* jets; std::vector<ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double> > >* tagjets; currentTree->SetBranchAddress("jetsP4", &jets); currentTree->SetBranchAddress("tagjetsP4",&tagjets); for (int n = 0; n < nEntries ; n++) { currentTree->GetEntry(n); std::map<double, ROOT::Math::XYZTVector , User::moreStruct> sortedTagJets; for(unsigned int i = 0; i < tagjets->size(); i++){ sortedTagJets.insert( make_pair( (*tagjets)[i].Et(),(*tagjets)[i] ) ) ; } std::map<double, ROOT::Math::XYZTVector , User::moreStruct> sortedJets; for(unsigned int i = 0; i < jets->size(); i++){ sortedJets.insert( make_pair( (*jets)[i].Et(),(*jets)[i] ) ) ; } if(tagjets->size()<3) continue; int counter = 0; float eta1,eta2,eta3; for(CImap it = sortedTagJets.begin(); it!=sortedTagJets.end(); it++){ if(counter==0) eta1 = (it->second).Eta(); if(counter==1) eta2 = (it->second).Eta(); if(counter==2) eta3 = (it->second).Eta(); counter++; } float deta12 = abs(eta1-eta2); float detai3 = std::min( abs(eta1-eta3), abs(eta2-eta3) ); h2->Fill(deta12,detai3); } h2->Draw("COLZ"); leg->Draw(); }
void makePlots( const char * inputA, const char * inputB, const char * option) { //Output path TString path("./paper01-plots/probs/"); TString dataPxxA = TString( "EarthA" ) + TString("_") + TString( "0" ) + TString("_") + TString("Pme") + TString("/data"); TString dataPxxB = TString( "EarthB" ) + TString("_") + TString( "0" ) + TString("_") + TString("Pme") + TString("/data"); TList * v_Labels = new TList(); TObjString *label; label = new TObjString( "Earth: Step function" ); v_Labels->Add( label ); label = new TObjString( "Earth: Realistic" ); v_Labels->Add( label ); TFile * f1 = new TFile(inputA); TFile * f2 = new TFile(inputB); f1->cd(); TTree * PxxATreeNu = (TTree*)gDirectory->Get( dataPxxA.Data() ); f2->cd(); TTree * PxxBTreeNu = (TTree*)gDirectory->Get( dataPxxB.Data() ); //Branches double xx = 0.0; double yy = 0.0; TString cname = TString("Earth") + TString("_") + TString("Pee"); TGraph * ProbNu[3]; ProbNu[0] = new TGraph(); ProbNu[1] = new TGraph(); PxxATreeNu->SetBranchAddress("Ex",&xx); PxxATreeNu->SetBranchAddress("Pb",&yy); Long64_t nentries = PxxATreeNu->GetEntries(); for (Long64_t i=0;i<nentries;i++) { PxxATreeNu->GetEntry(i); ProbNu[0]->SetPoint( i, xx, yy); if( i < 5 ) std::cout << i << " " << xx << " " << yy << std::endl; } PxxBTreeNu->SetBranchAddress("Ex",&xx); PxxBTreeNu->SetBranchAddress("Pb",&yy); nentries = PxxBTreeNu->GetEntries(); for (Long64_t i=0;i<nentries;i++) { PxxBTreeNu->GetEntry(i); ProbNu[1]->SetPoint( i, xx, yy); } int ndataset = 0; TList * allgraphs = new TList(); //this is a ROOT container. It will store all of your Graphs allgraphs->Add( ProbNu[0] ); ndataset++; allgraphs->Add( ProbNu[1] ); ndataset++; //Datasets options (Markers: style, color, size) : You can also do it by hand using the interactive Editor int style[5]; int color[5]; float size[5]; //For dataset No1 style[0] = 21; color[0] = 2; size[0] = 0.7; //For dataset No2 style[1] = 20; color[1] = 4; size[1] = 0.8; //For dataset No3 style[2] = 22; color[2] = 38; size[2] = 0.8; TCanvas * c1 = new TCanvas( cname.Data(), "Oscillation probabilities", 184,60,861,263); c1->cd(); gPad->SetGridx(); gPad->SetGridy(); gPad->SetLogx(); float ymin = 0.0; float ymax = 0.5; float xmin = 0.9e9; float xmax = 1.0e10; TLegend * leg = new TLegend(0.14,0.58,0.35,0.85); leg->SetBorderSize(0); leg->SetTextSize(0.1); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); leg->SetTextFont(62); leg->SetTextSize(0.085); ndataset = allgraphs->GetSize(); //Get the ndatasets from the size of the List // Loop now over the List using the index k for(int k=0; k < ndataset; ++k) { if( k == 0 ) { //this is our first graph and it is special (to define axis min,max) ((TGraph*)allgraphs->At(k))->SetMinimum(ymin); ((TGraph*)allgraphs->At(k))->SetMaximum(ymax); ((TGraph*)allgraphs->At(k))->Draw("AP"); ((TGraph*)allgraphs->At(k))->GetXaxis()->SetLimits(xmin, xmax); //set the color options ((TGraph*)allgraphs->At(k))->SetMarkerStyle( style[k] ); ((TGraph*)allgraphs->At(k))->SetMarkerSize( size[k] ); ((TGraph*)allgraphs->At(k))->SetMarkerColor( color[k] ); ((TGraph*)allgraphs->At(k))->SetLineColor( color[k] ); ((TGraph*)allgraphs->At(k))->SetFillColor( 10 ); ((TGraph*)allgraphs->At(k))->GetYaxis()->SetNdivisions(505); ((TGraph*)allgraphs->At(k))->GetXaxis()->SetTitle("E [eV]"); ((TGraph*)allgraphs->At(k))->GetYaxis()->SetTitle("P_{#mue}"); ((TGraph*)allgraphs->At(k))->GetYaxis()->CenterTitle(true); ((TGraph*)allgraphs->At(k))->GetXaxis()->CenterTitle(true); ((TGraph*)allgraphs->At(k))->GetXaxis()->SetLabelOffset(0.007); ((TGraph*)allgraphs->At(k))->GetXaxis()->SetLabelSize(0.08); ((TGraph*)allgraphs->At(k))->GetXaxis()->SetTitleSize(0.07); ((TGraph*)allgraphs->At(k))->GetXaxis()->SetTitleOffset(0.9); ((TGraph*)allgraphs->At(k))->GetXaxis()->SetLabelFont(42); ((TGraph*)allgraphs->At(k))->GetYaxis()->SetLabelOffset(0.007); ((TGraph*)allgraphs->At(k))->GetYaxis()->SetLabelSize(0.08); ((TGraph*)allgraphs->At(k))->GetYaxis()->SetLabelFont(42); ((TGraph*)allgraphs->At(k))->GetYaxis()->SetTitleSize(0.09); ((TGraph*)allgraphs->At(k))->GetYaxis()->SetTitleOffset(0.45); ((TGraph*)allgraphs->At(k))->GetYaxis()->SetTitleFont(42); ((TGraph*)allgraphs->At(k))->Draw("APL"); // Draw option AP A=draw axis P=draw a marker for the data TString name = ((TObjString*)v_Labels->At(k))->GetString(); leg->AddEntry( (TGraph*)allgraphs->At(k), name.Data()); } else { ((TGraph*)allgraphs->At(k))->SetMarkerStyle( style[k] ); ((TGraph*)allgraphs->At(k))->SetMarkerSize( size[k] ); ((TGraph*)allgraphs->At(k))->SetMarkerColor( color[k] ); ((TGraph*)allgraphs->At(k))->SetLineColor( color[k] ); ((TGraph*)allgraphs->At(k))->SetFillColor( 10 ); ((TGraph*)allgraphs->At(k))->Draw("PL"); // since we have already plotted the axis on the first graph we only need option P TString name = ((TObjString*)v_Labels->At(k))->GetString(); leg->AddEntry( (TGraph*)allgraphs->At(k), name.Data()); } } topTitle("Earth (corrected)"); /// All done! leg->Draw(); std::stringstream saveAs; saveAs.str(""); saveAs << path << "EarthA" << "/pdf/" << "nueosc_earth_AB_" << option << ".pdf"; c1->SaveAs( saveAs.str().c_str() ); saveAs.str(""); saveAs << path << "EarthA" << "/png/" << "nueosc_earth_AB_" << option << ".png"; c1->SaveAs( saveAs.str().c_str() ); saveAs.str(""); saveAs << path << "EarthA" << "/eps/" << "nueosc_earth_AB_" << option << ".eps"; c1->SaveAs( saveAs.str().c_str() ); }
// -- main function void fit_chi2(TH1D* dataInput, TH1D* sigTemplate, TH1D* bkgTemplate, std::string prefix, Double_t& sigFrac, Double_t& sigFrac_err) { gStyle->SetOptStat(kFALSE); gStyle->SetCanvasColor(0); gStyle->SetCanvasBorderMode(0); gStyle->SetPadBorderMode(0); gStyle->SetFrameBorderMode(0); Double_t scale=1.; data = (TH1D*)dataInput->Clone(); data->SetName("data"); data->SetLineColor(1); data->SetMarkerColor(1); data->SetXTitle("Fisher's isolation [GeV]"); data->Sumw2(); scale = 1.0/(Double_t)data->Integral(0,1000); cout << "scale for data = " << scale << endl; data->Scale(scale); fit_result = (TH1D*)dataInput->Clone(); fit_result->SetName("fit_result"); fit_result->SetLineColor(8); fit_result->SetMarkerColor(8); fit_result->SetLineStyle(2); fit_result->Sumw2(); fit_result->Reset(); signal_pos = (TH1D*)sigTemplate->Clone(); signal_pos->SetName("signal_pos"); signal_pos->SetLineColor(2); signal_pos->SetMarkerColor(2); signal_pos->SetFillColor(2); signal_pos->SetXTitle("Fisher's isolation [GeV]"); signal_pos->Sumw2(); scale = 1.0/(Double_t)signal_pos->Integral(0,1000); cout << "scale for signal template = " << scale << endl; signal_pos->Scale(scale); background_pos = (TH1D*)bkgTemplate->Clone(); background_pos->SetName("background_pos"); background_pos->SetLineColor(4); background_pos->SetMarkerColor(4); background_pos->SetFillColor(4); background_pos->SetXTitle("Fisher's isolation [GeV]"); background_pos->Sumw2(); scale = 1.0/(Double_t)background_pos->Integral(0,1000); cout << "scale for background template = " << scale << endl; background_pos->Scale(scale); TMinuit *gMinuit = new TMinuit(1); //initialize TMinuit with a maximum of 5 (1param??) params gMinuit->SetFCN(fcn); // sets function to minimize: fcn is Chi2 with errors on templates Double_t arglist[10]; Int_t ierflg = 0; // status flag, it is 0 when ereything goes fine // -- sets error arglist[0] = 1; gMinuit->mnexcm("SET ERR", arglist ,1,ierflg); Double_t vstart = 0.5; Double_t step = 0.001; gMinuit->mnparm(0, "fsig", vstart, step, 0,1,ierflg); // Now ready for minimization step arglist[0] = 1000; arglist[1] = 0.01; gMinuit->mnexcm("MIGRAD", arglist ,2,ierflg); Double_t fsig=0; Double_t fsigerr=0; Double_t chi2 = 0; if ( ierflg == 0 ) { // Print results Double_t amin,edm,errdef; Int_t nvpar,nparx,icstat; gMinuit->mnstat(amin,edm,errdef,nvpar,nparx,icstat); gMinuit->mnprin(3,amin); chi2 = gMinuit->fAmin; gMinuit->GetParameter(0, fsig, fsigerr); cout << "Fsig = " << fsig << " +- " << fsigerr << endl; TCanvas* c1 = new TCanvas("c1","",500,500); data->Draw(); TH1D* signal_display = (TH1D*)signal_pos->Clone(); signal_display->SetName("signal_display"); signal_display->Scale(fsig/signal_display->Integral(0,1000)); signal_display->SetFillStyle(3001); signal_display->Draw("histsame"); TH1D* background_display = (TH1D*)background_pos->Clone(); background_display->SetName("background_display"); background_display->Scale((1-fsig)/background_display->Integral(0,1000)); background_display->SetFillStyle(3001); background_display->Draw("histsame"); fit_result->Draw("histesame"); char result[300]; sprintf(result,"fsig = %.3lf #pm %.3lf",fsig,fsigerr); sigFrac = fsig; sigFrac_err = fsigerr; TLegend* leg = new TLegend(0.2,0.6,0.4,0.9); leg->SetHeader(result); leg->SetFillColor(0); leg->SetFillStyle(0); leg->SetTextSize(0.045); leg->SetBorderSize(0); leg->AddEntry(data,"data"); leg->AddEntry(fit_result,"fit"); leg->AddEntry(signal_display,"signal template"); leg->AddEntry(background_display,"background template"); leg->Draw("same"); std::string outputFile = prefix + ".eps"; c1->Print(outputFile.data()); outputFile = prefix + ".gif"; c1->Print(outputFile.data()); outputFile = prefix + ".C"; c1->Print(outputFile.data()); } else{ cout << "Fit failed!\n"; sigFrac = 0; sigFrac_err = 0; } return; }
void METJets() { //=========Macro generated from canvas: METJets/METJets //========= (Fri Nov 6 09:02:55 2015) by ROOT version6.02/05 TCanvas *METJets = new TCanvas("METJets", "METJets",435,102,700,700); METJets->Range(-2.5,-6.939719,22.5,0.708446); METJets->SetFillColor(0); METJets->SetBorderMode(0); METJets->SetBorderSize(2); METJets->SetLogy(); METJets->SetFrameBorderMode(0); METJets->SetFrameBorderMode(0); THStack *METJets = new THStack(); METJets->SetName("METJets"); METJets->SetTitle("METJets"); TH1F *METJets_stack_3 = new TH1F("METJets_stack_3","METJets",20,0,20); METJets_stack_3->SetMinimum(6.684943e-07); METJets_stack_3->SetMaximum(0.8782728); METJets_stack_3->SetDirectory(0); METJets_stack_3->SetStats(0); Int_t ci; // for color index setting TColor *color; // for color definition with alpha ci = TColor::GetColor("#000099"); METJets_stack_3->SetLineColor(ci); METJets_stack_3->GetXaxis()->SetTitle("METJets"); METJets_stack_3->GetXaxis()->SetLabelFont(42); METJets_stack_3->GetXaxis()->SetLabelSize(0.035); METJets_stack_3->GetXaxis()->SetTitleSize(0.035); METJets_stack_3->GetXaxis()->SetTitleFont(42); METJets_stack_3->GetYaxis()->SetTitle("Events/pb"); METJets_stack_3->GetYaxis()->SetLabelFont(42); METJets_stack_3->GetYaxis()->SetLabelSize(0.035); METJets_stack_3->GetYaxis()->SetTitleSize(0.035); METJets_stack_3->GetYaxis()->SetTitleFont(42); METJets_stack_3->GetZaxis()->SetLabelFont(42); METJets_stack_3->GetZaxis()->SetLabelSize(0.035); METJets_stack_3->GetZaxis()->SetTitleSize(0.035); METJets_stack_3->GetZaxis()->SetTitleFont(42); METJets->SetHistogram(METJets_stack_3); TH1D *METJets11 = new TH1D("METJets11"," Number of jets in MET hemisphere",20,0,20); METJets11->SetBinContent(4,0.001250901); METJets11->SetBinContent(5,0.02882494); METJets11->SetBinError(4,0.001250901); METJets11->SetBinError(5,0.02638252); METJets11->SetEntries(4); ci = TColor::GetColor("#00cc00"); METJets11->SetFillColor(ci); ci = TColor::GetColor("#00cc00"); METJets11->SetLineColor(ci); ci = TColor::GetColor("#00cc00"); METJets11->SetMarkerColor(ci); METJets11->SetMarkerStyle(22); METJets11->GetXaxis()->SetTitle("METJets"); METJets11->GetXaxis()->SetLabelFont(42); METJets11->GetXaxis()->SetLabelSize(0.035); METJets11->GetXaxis()->SetTitleSize(0.035); METJets11->GetXaxis()->SetTitleFont(42); METJets11->GetYaxis()->SetTitle("Events/pb"); METJets11->GetYaxis()->SetLabelFont(42); METJets11->GetYaxis()->SetLabelSize(0.035); METJets11->GetYaxis()->SetTitleSize(0.035); METJets11->GetYaxis()->SetTitleFont(42); METJets11->GetZaxis()->SetLabelFont(42); METJets11->GetZaxis()->SetLabelSize(0.035); METJets11->GetZaxis()->SetTitleSize(0.035); METJets11->GetZaxis()->SetTitleFont(42); METJets->Add(METJets,""); TH1D *METJets12 = new TH1D("METJets12"," Number of jets in MET hemisphere",20,0,20); METJets12->SetBinContent(1,0.1125815); METJets12->SetBinContent(2,0.4285217); METJets12->SetBinContent(3,0.3409504); METJets12->SetBinContent(4,0.1708964); METJets12->SetBinContent(5,0.05932811); METJets12->SetBinContent(6,0.02373303); METJets12->SetBinContent(7,0.006545923); METJets12->SetBinContent(8,0.002482997); METJets12->SetBinContent(9,0.0004501454); METJets12->SetBinContent(10,5.615768e-05); METJets12->SetBinContent(11,5.615768e-05); METJets12->SetBinContent(12,1.392893e-05); METJets12->SetBinError(1,0.007309092); METJets12->SetBinError(2,0.01328181); METJets12->SetBinError(3,0.01094448); METJets12->SetBinError(4,0.006993249); METJets12->SetBinError(5,0.003460026); METJets12->SetBinError(6,0.002212104); METJets12->SetBinError(7,0.0008953739); METJets12->SetBinError(8,0.0006170034); METJets12->SetBinError(9,0.0001016709); METJets12->SetBinError(10,3.448057e-05); METJets12->SetBinError(11,3.448057e-05); METJets12->SetBinError(12,1.392893e-05); METJets12->SetEntries(9534); ci = TColor::GetColor("#00ffff"); METJets12->SetFillColor(ci); ci = TColor::GetColor("#00ffff"); METJets12->SetLineColor(ci); ci = TColor::GetColor("#00ffff"); METJets12->SetMarkerColor(ci); METJets12->SetMarkerStyle(20); METJets12->GetXaxis()->SetTitle("METJets"); METJets12->GetXaxis()->SetLabelFont(42); METJets12->GetXaxis()->SetLabelSize(0.035); METJets12->GetXaxis()->SetTitleSize(0.035); METJets12->GetXaxis()->SetTitleFont(42); METJets12->GetYaxis()->SetTitle("Events/pb"); METJets12->GetYaxis()->SetLabelFont(42); METJets12->GetYaxis()->SetLabelSize(0.035); METJets12->GetYaxis()->SetTitleSize(0.035); METJets12->GetYaxis()->SetTitleFont(42); METJets12->GetZaxis()->SetLabelFont(42); METJets12->GetZaxis()->SetLabelSize(0.035); METJets12->GetZaxis()->SetTitleSize(0.035); METJets12->GetZaxis()->SetTitleFont(42); METJets->Add(METJets,""); TH1D *METJets13 = new TH1D("METJets13"," Number of jets in MET hemisphere",20,0,20); METJets13->SetBinContent(1,0.03196155); METJets13->SetBinContent(2,0.1172069); METJets13->SetBinContent(3,0.0774148); METJets13->SetBinContent(4,0.03694924); METJets13->SetBinContent(5,0.01471217); METJets13->SetBinContent(6,0.00457922); METJets13->SetBinContent(7,0.001196242); METJets13->SetBinContent(8,0.0003010538); METJets13->SetBinContent(9,3.996704e-05); METJets13->SetBinContent(10,2.319189e-05); METJets13->SetBinContent(11,2.691694e-06); METJets13->SetBinError(1,0.001597341); METJets13->SetBinError(2,0.002788097); METJets13->SetBinError(3,0.002050992); METJets13->SetBinError(4,0.001252285); METJets13->SetBinError(5,0.000761537); METJets13->SetBinError(6,0.0003464749); METJets13->SetBinError(7,0.0001505212); METJets13->SetBinError(8,6.572956e-05); METJets13->SetBinError(9,1.412354e-05); METJets13->SetBinError(10,9.646618e-06); METJets13->SetBinError(11,2.691694e-06); METJets13->SetEntries(13132); ci = TColor::GetColor("#ffcc00"); METJets13->SetFillColor(ci); ci = TColor::GetColor("#ffcc00"); METJets13->SetLineColor(ci); ci = TColor::GetColor("#ffcc00"); METJets13->SetMarkerColor(ci); METJets13->SetMarkerStyle(21); METJets13->GetXaxis()->SetTitle("METJets"); METJets13->GetXaxis()->SetLabelFont(42); METJets13->GetXaxis()->SetLabelSize(0.035); METJets13->GetXaxis()->SetTitleSize(0.035); METJets13->GetXaxis()->SetTitleFont(42); METJets13->GetYaxis()->SetTitle("Events/pb"); METJets13->GetYaxis()->SetLabelFont(42); METJets13->GetYaxis()->SetLabelSize(0.035); METJets13->GetYaxis()->SetTitleSize(0.035); METJets13->GetYaxis()->SetTitleFont(42); METJets13->GetZaxis()->SetLabelFont(42); METJets13->GetZaxis()->SetLabelSize(0.035); METJets13->GetZaxis()->SetTitleSize(0.035); METJets13->GetZaxis()->SetTitleFont(42); METJets->Add(METJets,""); TH1D *METJets14 = new TH1D("METJets14"," Number of jets in MET hemisphere",20,0,20); METJets14->SetBinContent(1,0.001156843); METJets14->SetBinContent(2,0.007372947); METJets14->SetBinContent(3,0.009563237); METJets14->SetBinContent(4,0.007326674); METJets14->SetBinContent(5,0.003763597); METJets14->SetBinContent(6,0.002066893); METJets14->SetBinContent(7,0.0008175025); METJets14->SetBinContent(8,0.0003084915); METJets14->SetBinContent(9,0.0001233966); METJets14->SetBinContent(10,3.084915e-05); METJets14->SetBinContent(11,1.542458e-05); METJets14->SetBinError(1,0.0001335807); METJets14->SetBinError(2,0.0003372308); METJets14->SetBinError(3,0.0003840688); METJets14->SetBinError(4,0.0003361708); METJets14->SetBinError(5,0.0002409396); METJets14->SetBinError(6,0.0001785524); METJets14->SetBinError(7,0.0001122926); METJets14->SetBinError(8,6.89808e-05); METJets14->SetBinError(9,4.362729e-05); METJets14->SetBinError(10,2.181364e-05); METJets14->SetBinError(11,1.542458e-05); METJets14->SetEntries(2110); ci = TColor::GetColor("#ff0000"); METJets14->SetFillColor(ci); ci = TColor::GetColor("#ff0000"); METJets14->SetLineColor(ci); ci = TColor::GetColor("#ff0000"); METJets14->SetMarkerColor(ci); METJets14->SetMarkerStyle(20); METJets14->GetXaxis()->SetTitle("METJets"); METJets14->GetXaxis()->SetLabelFont(42); METJets14->GetXaxis()->SetLabelSize(0.035); METJets14->GetXaxis()->SetTitleSize(0.035); METJets14->GetXaxis()->SetTitleFont(42); METJets14->GetYaxis()->SetTitle("Events/pb"); METJets14->GetYaxis()->SetLabelFont(42); METJets14->GetYaxis()->SetLabelSize(0.035); METJets14->GetYaxis()->SetTitleSize(0.035); METJets14->GetYaxis()->SetTitleFont(42); METJets14->GetZaxis()->SetLabelFont(42); METJets14->GetZaxis()->SetLabelSize(0.035); METJets14->GetZaxis()->SetTitleSize(0.035); METJets14->GetZaxis()->SetTitleFont(42); METJets->Add(METJets,""); TH1D *METJets15 = new TH1D("METJets15"," Number of jets in MET hemisphere",20,0,20); METJets15->SetBinContent(3,1.677165e-05); METJets15->SetBinContent(4,1.677165e-05); METJets15->SetBinContent(5,6.708659e-05); METJets15->SetBinContent(6,5.031494e-05); METJets15->SetBinContent(7,8.385824e-05); METJets15->SetBinContent(8,3.35433e-05); METJets15->SetBinContent(10,1.677165e-05); METJets15->SetBinError(3,1.677165e-05); METJets15->SetBinError(4,1.677165e-05); METJets15->SetBinError(5,3.35433e-05); METJets15->SetBinError(6,2.904935e-05); METJets15->SetBinError(7,3.750254e-05); METJets15->SetBinError(8,2.371869e-05); METJets15->SetBinError(10,1.677165e-05); METJets15->SetEntries(17); ci = TColor::GetColor("#0000ff"); METJets15->SetFillColor(ci); ci = TColor::GetColor("#0000ff"); METJets15->SetLineColor(ci); ci = TColor::GetColor("#0000ff"); METJets15->SetMarkerColor(ci); METJets15->SetMarkerStyle(21); METJets15->GetXaxis()->SetTitle("METJets"); METJets15->GetXaxis()->SetLabelFont(42); METJets15->GetXaxis()->SetLabelSize(0.035); METJets15->GetXaxis()->SetTitleSize(0.035); METJets15->GetXaxis()->SetTitleFont(42); METJets15->GetYaxis()->SetTitle("Events/pb"); METJets15->GetYaxis()->SetLabelFont(42); METJets15->GetYaxis()->SetLabelSize(0.035); METJets15->GetYaxis()->SetTitleSize(0.035); METJets15->GetYaxis()->SetTitleFont(42); METJets15->GetZaxis()->SetLabelFont(42); METJets15->GetZaxis()->SetLabelSize(0.035); METJets15->GetZaxis()->SetTitleSize(0.035); METJets15->GetZaxis()->SetTitleFont(42); METJets->Add(METJets,""); METJets->Draw("nostack"); TPaveText *pt = new TPaveText(0.3872701,0.94,0.6127299,0.995,"blNDC"); pt->SetName("title"); pt->SetBorderSize(0); pt->SetFillColor(0); pt->SetFillStyle(0); pt->SetTextFont(42); TText *AText = pt->AddText("METJets"); pt->Draw(); TLegend *leg = new TLegend(0.54023,0.639881,0.938218,0.924107,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextSize(0.034965); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); TLegendEntry *entry=leg->AddEntry("METJets","METJets_QCD","lp"); ci = TColor::GetColor("#00cc00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); ci = TColor::GetColor("#00cc00"); entry->SetMarkerColor(ci); entry->SetMarkerStyle(22); entry->SetMarkerSize(1); entry->SetTextFont(42); entry=leg->AddEntry("METJets","METJets_WJetsToLNu","lp"); ci = TColor::GetColor("#00ffff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); ci = TColor::GetColor("#00ffff"); entry->SetMarkerColor(ci); entry->SetMarkerStyle(20); entry->SetMarkerSize(1); entry->SetTextFont(42); entry=leg->AddEntry("METJets","METJets_ZJetsToNuNu","lp"); ci = TColor::GetColor("#ffcc00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); ci = TColor::GetColor("#ffcc00"); entry->SetMarkerColor(ci); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(42); entry=leg->AddEntry("METJets","METJets_signal","lp"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); ci = TColor::GetColor("#ff0000"); entry->SetMarkerColor(ci); entry->SetMarkerStyle(20); entry->SetMarkerSize(1); entry->SetTextFont(42); entry=leg->AddEntry("METJets","METJets_ttbar","lp"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); ci = TColor::GetColor("#0000ff"); entry->SetMarkerColor(ci); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(42); leg->Draw(); METJets->Modified(); METJets->cd(); METJets->SetSelected(METJets); }
void LCTX_2016B_June22all_sameYrange() { //=========Macro generated from canvas: LCTX/LCTX //========= (Fri Aug 5 08:12:16 2016) by ROOT version6.06/01 TCanvas *LCTX = new TCanvas("LCTX", "LCTX",0,0,500,500); gStyle->SetOptStat(0); LCTX->SetHighLightColor(2); LCTX->Range(-125,-2.848556,125,2.626708); LCTX->SetFillColor(0); LCTX->SetBorderMode(0); LCTX->SetBorderSize(2); LCTX->SetLogy(); LCTX->SetFrameBorderMode(0); LCTX->SetFrameBorderMode(0); TH1D *LCTX_1__43 = new TH1D("LCTX_1__43","LCTX",100,-100,100); LCTX_1__43->SetBinContent(0,384.5084); LCTX_1__43->SetBinContent(39,0.0007169384); LCTX_1__43->SetBinContent(41,0.01003714); LCTX_1__43->SetBinContent(42,0.01720652); LCTX_1__43->SetBinContent(43,0.05018569); LCTX_1__43->SetBinContent(44,0.5054416); LCTX_1__43->SetBinContent(45,1.948639); LCTX_1__43->SetBinContent(46,4.235672); LCTX_1__43->SetBinContent(47,8.363803); LCTX_1__43->SetBinContent(48,11.57712); LCTX_1__43->SetBinContent(49,11.51905); LCTX_1__43->SetBinContent(50,12.02879); LCTX_1__43->SetBinContent(51,12.01876); LCTX_1__43->SetBinContent(52,11.53984); LCTX_1__43->SetBinContent(53,11.428); LCTX_1__43->SetBinContent(54,8.141552); LCTX_1__43->SetBinContent(55,4.112359); LCTX_1__43->SetBinContent(56,1.841815); LCTX_1__43->SetBinContent(57,0.4932536); LCTX_1__43->SetBinContent(58,0.06810915); LCTX_1__43->SetBinContent(59,0.04803487); LCTX_1__43->SetBinContent(60,0.02365897); LCTX_1__43->SetBinContent(61,0.01935734); LCTX_1__43->SetBinContent(62,0.002867754); LCTX_1__43->SetBinContent(63,0.002867754); LCTX_1__43->SetBinContent(64,0.0007169384); LCTX_1__43->SetBinContent(65,0.0007169384); LCTX_1__43->SetBinContent(66,0.0007169384); LCTX_1__43->SetBinContent(67,0.0007169384); LCTX_1__43->SetMinimum(0.005); LCTX_1__43->SetMaximum(120); LCTX_1__43->SetEntries(675802); LCTX_1__43->SetStats(0); Int_t ci; // for color index setting TColor *color; // for color definition with alpha ci = TColor::GetColor("#ff00ff"); LCTX_1__43->SetLineColor(ci); ci = TColor::GetColor("#ff00ff"); LCTX_1__43->SetMarkerColor(ci); LCTX_1__43->GetXaxis()->SetTitle("cm"); LCTX_1__43->GetYaxis()->SetTitle("scaled number of entries"); LCTX_1__43->Draw("H"); TLegend *leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); TLegendEntry *entry=leg->AddEntry("LCTX_1","ME11A: mean:-0.0cm;RMS:5.4cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_2","ME11B: mean:-0.1cm;RMS:8.4cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_3","ME12+13: mean:-0.1cm;RMS:17.6cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_4","ME2: mean:-0.1cm;RMS:23.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_5","ME3: mean:-0.2cm;RMS:24.0cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_6","ME4: mean:-0.2cm;RMS:24.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *LCTX_2__44 = new TH1D("LCTX_2__44","LCTX",100,-100,100); LCTX_2__44->SetBinContent(0,278.7056); LCTX_2__44->SetBinContent(38,0.0003194909); LCTX_2__44->SetBinContent(39,0.02523978); LCTX_2__44->SetBinContent(40,0.1178921); LCTX_2__44->SetBinContent(41,0.333229); LCTX_2__44->SetBinContent(42,1.216941); LCTX_2__44->SetBinContent(43,2.476374); LCTX_2__44->SetBinContent(44,4.080857); LCTX_2__44->SetBinContent(45,5.435498); LCTX_2__44->SetBinContent(46,6.970332); LCTX_2__44->SetBinContent(47,7.301325); LCTX_2__44->SetBinContent(48,7.282794); LCTX_2__44->SetBinContent(49,7.626566); LCTX_2__44->SetBinContent(50,7.370654); LCTX_2__44->SetBinContent(51,7.534553); LCTX_2__44->SetBinContent(52,7.548611); LCTX_2__44->SetBinContent(53,7.32273); LCTX_2__44->SetBinContent(54,7.342219); LCTX_2__44->SetBinContent(55,6.974805); LCTX_2__44->SetBinContent(56,5.285337); LCTX_2__44->SetBinContent(57,3.885009); LCTX_2__44->SetBinContent(58,2.388194); LCTX_2__44->SetBinContent(59,1.042499); LCTX_2__44->SetBinContent(60,0.2993629); LCTX_2__44->SetBinContent(61,0.1188506); LCTX_2__44->SetBinContent(62,0.01916945); LCTX_2__44->SetBinContent(63,0.0006389817); LCTX_2__44->SetEntries(1185341); LCTX_2__44->SetStats(0); ci = TColor::GetColor("#ff9999"); LCTX_2__44->SetLineColor(ci); ci = TColor::GetColor("#ff9999"); LCTX_2__44->SetMarkerColor(ci); LCTX_2__44->GetXaxis()->SetTitle("cm"); LCTX_2__44->GetYaxis()->SetTitle("scaled number of entries"); LCTX_2__44->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("LCTX_1","ME11A: mean:-0.0cm;RMS:5.4cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_2","ME11B: mean:-0.1cm;RMS:8.4cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_3","ME12+13: mean:-0.1cm;RMS:17.6cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_4","ME2: mean:-0.1cm;RMS:23.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_5","ME3: mean:-0.2cm;RMS:24.0cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_6","ME4: mean:-0.2cm;RMS:24.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *LCTX_3__45 = new TH1D("LCTX_3__45","LCTX",100,-100,100); LCTX_3__45->SetBinContent(0,81.70947); LCTX_3__45->SetBinContent(29,0.001399215); LCTX_3__45->SetBinContent(30,0.01026091); LCTX_3__45->SetBinContent(31,0.0382452); LCTX_3__45->SetBinContent(32,0.1184668); LCTX_3__45->SetBinContent(33,0.3815192); LCTX_3__45->SetBinContent(34,0.8185405); LCTX_3__45->SetBinContent(35,1.165079); LCTX_3__45->SetBinContent(36,1.8409); LCTX_3__45->SetBinContent(37,2.562428); LCTX_3__45->SetBinContent(38,3.139371); LCTX_3__45->SetBinContent(39,3.171087); LCTX_3__45->SetBinContent(40,3.272296); LCTX_3__45->SetBinContent(41,3.369309); LCTX_3__45->SetBinContent(42,3.258771); LCTX_3__45->SetBinContent(43,3.390297); LCTX_3__45->SetBinContent(44,3.301214); LCTX_3__45->SetBinContent(45,3.463989); LCTX_3__45->SetBinContent(46,3.452329); LCTX_3__45->SetBinContent(47,3.325933); LCTX_3__45->SetBinContent(48,3.271364); LCTX_3__45->SetBinContent(49,3.196739); LCTX_3__45->SetBinContent(50,3.890749); LCTX_3__45->SetBinContent(51,2.881449); LCTX_3__45->SetBinContent(52,3.613238); LCTX_3__45->SetBinContent(53,3.407087); LCTX_3__45->SetBinContent(54,3.403356); LCTX_3__45->SetBinContent(55,3.291419); LCTX_3__45->SetBinContent(56,3.200937); LCTX_3__45->SetBinContent(57,3.49757); LCTX_3__45->SetBinContent(58,3.154762); LCTX_3__45->SetBinContent(59,3.447198); LCTX_3__45->SetBinContent(60,3.367909); LCTX_3__45->SetBinContent(61,3.405688); LCTX_3__45->SetBinContent(62,3.272296); LCTX_3__45->SetBinContent(63,3.068478); LCTX_3__45->SetBinContent(64,2.526515); LCTX_3__45->SetBinContent(65,1.721034); LCTX_3__45->SetBinContent(66,1.135696); LCTX_3__45->SetBinContent(67,0.7219947); LCTX_3__45->SetBinContent(68,0.3185545); LCTX_3__45->SetBinContent(69,0.09234816); LCTX_3__45->SetBinContent(70,0.02751789); LCTX_3__45->SetBinContent(71,0.004197644); LCTX_3__45->SetBinContent(72,0.0004664049); LCTX_3__45->SetEntries(389596); LCTX_3__45->SetStats(0); LCTX_3__45->GetXaxis()->SetTitle("cm"); LCTX_3__45->GetYaxis()->SetTitle("scaled number of entries"); LCTX_3__45->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("LCTX_1","ME11A: mean:-0.0cm;RMS:5.4cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_2","ME11B: mean:-0.1cm;RMS:8.4cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_3","ME12+13: mean:-0.1cm;RMS:17.6cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_4","ME2: mean:-0.1cm;RMS:23.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_5","ME3: mean:-0.2cm;RMS:24.0cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_6","ME4: mean:-0.2cm;RMS:24.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *LCTX_4__46 = new TH1D("LCTX_4__46","LCTX",100,-100,100); LCTX_4__46->SetBinContent(0,200.9297); LCTX_4__46->SetBinContent(19,0.0003183254); LCTX_4__46->SetBinContent(20,0.002228277); LCTX_4__46->SetBinContent(21,0.007958134); LCTX_4__46->SetBinContent(22,0.01814455); LCTX_4__46->SetBinContent(23,0.05904935); LCTX_4__46->SetBinContent(24,0.1626643); LCTX_4__46->SetBinContent(25,0.2226686); LCTX_4__46->SetBinContent(26,0.3784888); LCTX_4__46->SetBinContent(27,0.4620493); LCTX_4__46->SetBinContent(28,0.5610484); LCTX_4__46->SetBinContent(29,0.6859911); LCTX_4__46->SetBinContent(30,0.8537486); LCTX_4__46->SetBinContent(31,0.9782138); LCTX_4__46->SetBinContent(32,1.264547); LCTX_4__46->SetBinContent(33,1.377712); LCTX_4__46->SetBinContent(34,1.540695); LCTX_4__46->SetBinContent(35,1.908997); LCTX_4__46->SetBinContent(36,2.184349); LCTX_4__46->SetBinContent(37,2.387758); LCTX_4__46->SetBinContent(38,2.491055); LCTX_4__46->SetBinContent(39,2.733937); LCTX_4__46->SetBinContent(40,2.702582); LCTX_4__46->SetBinContent(41,2.72582); LCTX_4__46->SetBinContent(42,2.631437); LCTX_4__46->SetBinContent(43,2.68778); LCTX_4__46->SetBinContent(44,2.712291); LCTX_4__46->SetBinContent(45,2.751127); LCTX_4__46->SetBinContent(46,2.692714); LCTX_4__46->SetBinContent(47,2.757812); LCTX_4__46->SetBinContent(48,2.736325); LCTX_4__46->SetBinContent(49,2.653878); LCTX_4__46->SetBinContent(50,3.206969); LCTX_4__46->SetBinContent(51,2.359746); LCTX_4__46->SetBinContent(52,2.759722); LCTX_4__46->SetBinContent(53,2.841531); LCTX_4__46->SetBinContent(54,2.662473); LCTX_4__46->SetBinContent(55,2.715156); LCTX_4__46->SetBinContent(56,2.707675); LCTX_4__46->SetBinContent(57,2.643533); LCTX_4__46->SetBinContent(58,2.575093); LCTX_4__46->SetBinContent(59,2.644488); LCTX_4__46->SetBinContent(60,2.662155); LCTX_4__46->SetBinContent(61,2.643692); LCTX_4__46->SetBinContent(62,2.610586); LCTX_4__46->SetBinContent(63,2.578595); LCTX_4__46->SetBinContent(64,2.346217); LCTX_4__46->SetBinContent(65,2.166841); LCTX_4__46->SetBinContent(66,1.919343); LCTX_4__46->SetBinContent(67,1.591468); LCTX_4__46->SetBinContent(68,1.393469); LCTX_4__46->SetBinContent(69,1.245289); LCTX_4__46->SetBinContent(70,1.005271); LCTX_4__46->SetBinContent(71,0.8602743); LCTX_4__46->SetBinContent(72,0.6673691); LCTX_4__46->SetBinContent(73,0.5397206); LCTX_4__46->SetBinContent(74,0.4701665); LCTX_4__46->SetBinContent(75,0.3549328); LCTX_4__46->SetBinContent(76,0.257366); LCTX_4__46->SetBinContent(77,0.1411773); LCTX_4__46->SetBinContent(78,0.06923576); LCTX_4__46->SetBinContent(79,0.01782622); LCTX_4__46->SetBinContent(80,0.008435622); LCTX_4__46->SetBinContent(81,0.0006366507); LCTX_4__46->SetBinContent(82,0.0001591627); LCTX_4__46->SetEntries(1890705); LCTX_4__46->SetStats(0); ci = TColor::GetColor("#ff0000"); LCTX_4__46->SetLineColor(ci); ci = TColor::GetColor("#ff0000"); LCTX_4__46->SetMarkerColor(ci); LCTX_4__46->GetXaxis()->SetTitle("cm"); LCTX_4__46->GetYaxis()->SetTitle("scaled number of entries"); LCTX_4__46->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("LCTX_1","ME11A: mean:-0.0cm;RMS:5.4cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_2","ME11B: mean:-0.1cm;RMS:8.4cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_3","ME12+13: mean:-0.1cm;RMS:17.6cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_4","ME2: mean:-0.1cm;RMS:23.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_5","ME3: mean:-0.2cm;RMS:24.0cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_6","ME4: mean:-0.2cm;RMS:24.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *LCTX_5__47 = new TH1D("LCTX_5__47","LCTX",100,-100,100); LCTX_5__47->SetBinContent(0,156.985); LCTX_5__47->SetBinContent(19,0.0003685155); LCTX_5__47->SetBinContent(20,0.001842578); LCTX_5__47->SetBinContent(21,0.008475857); LCTX_5__47->SetBinContent(22,0.01897855); LCTX_5__47->SetBinContent(23,0.08162619); LCTX_5__47->SetBinContent(24,0.1719125); LCTX_5__47->SetBinContent(25,0.278045); LCTX_5__47->SetBinContent(26,0.415317); LCTX_5__47->SetBinContent(27,0.5096569); LCTX_5__47->SetBinContent(28,0.6279504); LCTX_5__47->SetBinContent(29,0.7749881); LCTX_5__47->SetBinContent(30,0.9870688); LCTX_5__47->SetBinContent(31,1.135212); LCTX_5__47->SetBinContent(32,1.388382); LCTX_5__47->SetBinContent(33,1.603042); LCTX_5__47->SetBinContent(34,1.760214); LCTX_5__47->SetBinContent(35,2.100538); LCTX_5__47->SetBinContent(36,2.415988); LCTX_5__47->SetBinContent(37,2.564868); LCTX_5__47->SetBinContent(38,2.508854); LCTX_5__47->SetBinContent(39,2.700113); LCTX_5__47->SetBinContent(40,2.585136); LCTX_5__47->SetBinContent(41,2.567632); LCTX_5__47->SetBinContent(42,2.542757); LCTX_5__47->SetBinContent(43,2.68095); LCTX_5__47->SetBinContent(44,2.59527); LCTX_5__47->SetBinContent(45,2.605405); LCTX_5__47->SetBinContent(46,2.531149); LCTX_5__47->SetBinContent(47,2.55934); LCTX_5__47->SetBinContent(48,2.526727); LCTX_5__47->SetBinContent(49,2.453761); LCTX_5__47->SetBinContent(50,3.010772); LCTX_5__47->SetBinContent(51,2.170556); LCTX_5__47->SetBinContent(52,2.476424); LCTX_5__47->SetBinContent(53,2.568369); LCTX_5__47->SetBinContent(54,2.48748); LCTX_5__47->SetBinContent(55,2.538335); LCTX_5__47->SetBinContent(56,2.604483); LCTX_5__47->SetBinContent(57,2.559156); LCTX_5__47->SetBinContent(58,2.557313); LCTX_5__47->SetBinContent(59,2.552523); LCTX_5__47->SetBinContent(60,2.563394); LCTX_5__47->SetBinContent(61,2.552154); LCTX_5__47->SetBinContent(62,2.549575); LCTX_5__47->SetBinContent(63,2.584952); LCTX_5__47->SetBinContent(64,2.546074); LCTX_5__47->SetBinContent(65,2.260658); LCTX_5__47->SetBinContent(66,2.08893); LCTX_5__47->SetBinContent(67,1.744184); LCTX_5__47->SetBinContent(68,1.528787); LCTX_5__47->SetBinContent(69,1.359822); LCTX_5__47->SetBinContent(70,1.132264); LCTX_5__47->SetBinContent(71,0.9898327); LCTX_5__47->SetBinContent(72,0.7617216); LCTX_5__47->SetBinContent(73,0.6161579); LCTX_5__47->SetBinContent(74,0.5116838); LCTX_5__47->SetBinContent(75,0.4127374); LCTX_5__47->SetBinContent(76,0.2935226); LCTX_5__47->SetBinContent(77,0.1571719); LCTX_5__47->SetBinContent(78,0.0902863); LCTX_5__47->SetBinContent(79,0.0226637); LCTX_5__47->SetBinContent(80,0.00571199); LCTX_5__47->SetBinContent(81,0.000737031); LCTX_5__47->SetEntries(1394704); LCTX_5__47->SetStats(0); ci = TColor::GetColor("#00ff00"); LCTX_5__47->SetLineColor(ci); ci = TColor::GetColor("#00ff00"); LCTX_5__47->SetMarkerColor(ci); LCTX_5__47->GetXaxis()->SetTitle("cm"); LCTX_5__47->GetYaxis()->SetTitle("scaled number of entries"); LCTX_5__47->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("LCTX_1","ME11A: mean:-0.0cm;RMS:5.4cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_2","ME11B: mean:-0.1cm;RMS:8.4cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_3","ME12+13: mean:-0.1cm;RMS:17.6cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_4","ME2: mean:-0.1cm;RMS:23.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_5","ME3: mean:-0.2cm;RMS:24.0cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_6","ME4: mean:-0.2cm;RMS:24.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *LCTX_6__48 = new TH1D("LCTX_6__48","LCTX",100,-100,100); LCTX_6__48->SetBinContent(0,128.1645); LCTX_6__48->SetBinContent(20,0.001034957); LCTX_6__48->SetBinContent(21,0.003932835); LCTX_6__48->SetBinContent(22,0.0190432); LCTX_6__48->SetBinContent(23,0.08445247); LCTX_6__48->SetBinContent(24,0.1686979); LCTX_6__48->SetBinContent(25,0.2908228); LCTX_6__48->SetBinContent(26,0.4259882); LCTX_6__48->SetBinContent(27,0.5427313); LCTX_6__48->SetBinContent(28,0.6774827); LCTX_6__48->SetBinContent(29,0.9031032); LCTX_6__48->SetBinContent(30,1.072836); LCTX_6__48->SetBinContent(31,1.255195); LCTX_6__48->SetBinContent(32,1.42617); LCTX_6__48->SetBinContent(33,1.67456); LCTX_6__48->SetBinContent(34,1.84243); LCTX_6__48->SetBinContent(35,2.206321); LCTX_6__48->SetBinContent(36,2.382056); LCTX_6__48->SetBinContent(37,2.473547); LCTX_6__48->SetBinContent(38,2.447259); LCTX_6__48->SetBinContent(39,2.568556); LCTX_6__48->SetBinContent(40,2.439186); LCTX_6__48->SetBinContent(41,2.543303); LCTX_6__48->SetBinContent(42,2.405653); LCTX_6__48->SetBinContent(43,2.591532); LCTX_6__48->SetBinContent(44,2.491141); LCTX_6__48->SetBinContent(45,2.57787); LCTX_6__48->SetBinContent(46,2.435046); LCTX_6__48->SetBinContent(47,2.57166); LCTX_6__48->SetBinContent(48,2.574765); LCTX_6__48->SetBinContent(49,2.456159); LCTX_6__48->SetBinContent(50,2.990404); LCTX_6__48->SetBinContent(51,2.138842); LCTX_6__48->SetBinContent(52,2.558206); LCTX_6__48->SetBinContent(53,2.556343); LCTX_6__48->SetBinContent(54,2.433597); LCTX_6__48->SetBinContent(55,2.573523); LCTX_6__48->SetBinContent(56,2.559034); LCTX_6__48->SetBinContent(57,2.638312); LCTX_6__48->SetBinContent(58,2.435253); LCTX_6__48->SetBinContent(59,2.574765); LCTX_6__48->SetBinContent(60,2.533367); LCTX_6__48->SetBinContent(61,2.532125); LCTX_6__48->SetBinContent(62,2.491969); LCTX_6__48->SetBinContent(63,2.537093); LCTX_6__48->SetBinContent(64,2.429664); LCTX_6__48->SetBinContent(65,2.38868); LCTX_6__48->SetBinContent(66,2.152503); LCTX_6__48->SetBinContent(67,1.839946); LCTX_6__48->SetBinContent(68,1.542913); LCTX_6__48->SetBinContent(69,1.398226); LCTX_6__48->SetBinContent(70,1.152114); LCTX_6__48->SetBinContent(71,1.029161); LCTX_6__48->SetBinContent(72,0.8025054); LCTX_6__48->SetBinContent(73,0.6667191); LCTX_6__48->SetBinContent(74,0.5137525); LCTX_6__48->SetBinContent(75,0.4212274); LCTX_6__48->SetBinContent(76,0.2817152); LCTX_6__48->SetBinContent(77,0.1637301); LCTX_6__48->SetBinContent(78,0.08114061); LCTX_6__48->SetBinContent(79,0.02463197); LCTX_6__48->SetBinContent(80,0.004967792); LCTX_6__48->SetBinContent(81,0.001034957); LCTX_6__48->SetEntries(1102290); LCTX_6__48->SetStats(0); ci = TColor::GetColor("#0000ff"); LCTX_6__48->SetLineColor(ci); ci = TColor::GetColor("#0000ff"); LCTX_6__48->SetMarkerColor(ci); LCTX_6__48->GetXaxis()->SetTitle("cm"); LCTX_6__48->GetYaxis()->SetTitle("scaled number of entries"); LCTX_6__48->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("LCTX_1","ME11A: mean:-0.0cm;RMS:5.4cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_2","ME11B: mean:-0.1cm;RMS:8.4cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_3","ME12+13: mean:-0.1cm;RMS:17.6cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_4","ME2: mean:-0.1cm;RMS:23.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_5","ME3: mean:-0.2cm;RMS:24.0cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("LCTX_6","ME4: mean:-0.2cm;RMS:24.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TPaveText *pt = new TPaveText(0.01,0.945,0.1469355,0.995,"blNDC"); pt->SetName("title"); pt->SetBorderSize(1); pt->SetFillColor(0); TText *AText = pt->AddText("LCTX"); pt->Draw(); LCTX->Modified(); LCTX->cd(); LCTX->SetSelected(LCTX); }
void DarkSusy_mH_125_mGammaD_2000_cT_10_LHE_dimuon_m_fake() { //=========Macro generated from canvas: cnv/cnv //========= (Sun May 24 15:17:56 2015) by ROOT version6.02/05 TCanvas *cnv = new TCanvas("cnv", "cnv",1,1,904,904); gStyle->SetOptFit(1); gStyle->SetOptStat(0); gStyle->SetOptTitle(0); cnv->SetHighLightColor(2); cnv->Range(-26.5625,-0.008809844,129.6875,0.05895819); cnv->SetFillColor(0); cnv->SetBorderMode(0); cnv->SetBorderSize(2); cnv->SetTickx(1); cnv->SetTicky(1); cnv->SetLeftMargin(0.17); cnv->SetRightMargin(0.03); cnv->SetTopMargin(0.07); cnv->SetBottomMargin(0.13); cnv->SetFrameFillStyle(0); cnv->SetFrameBorderMode(0); cnv->SetFrameFillStyle(0); cnv->SetFrameBorderMode(0); TH1F *h_dimuon_m_fake_dummy116 = new TH1F("h_dimuon_m_fake_dummy116","h_dimuon_m_fake_dummy",125,0,125); h_dimuon_m_fake_dummy116->SetMaximum(0.05421443); h_dimuon_m_fake_dummy116->SetLineStyle(0); h_dimuon_m_fake_dummy116->SetMarkerStyle(20); h_dimuon_m_fake_dummy116->GetXaxis()->SetTitle("Mass of Fake #mu#mu [GeV]"); h_dimuon_m_fake_dummy116->GetXaxis()->SetLabelFont(42); h_dimuon_m_fake_dummy116->GetXaxis()->SetLabelOffset(0.007); h_dimuon_m_fake_dummy116->GetXaxis()->SetTitleSize(0.06); h_dimuon_m_fake_dummy116->GetXaxis()->SetTitleOffset(0.95); h_dimuon_m_fake_dummy116->GetXaxis()->SetTitleFont(42); h_dimuon_m_fake_dummy116->GetYaxis()->SetTitle("Fraction of events / 1 GeV"); h_dimuon_m_fake_dummy116->GetYaxis()->SetNdivisions(508); h_dimuon_m_fake_dummy116->GetYaxis()->SetLabelFont(42); h_dimuon_m_fake_dummy116->GetYaxis()->SetLabelOffset(0.007); h_dimuon_m_fake_dummy116->GetYaxis()->SetTitleSize(0.06); h_dimuon_m_fake_dummy116->GetYaxis()->SetTitleOffset(1.35); h_dimuon_m_fake_dummy116->GetYaxis()->SetTitleFont(42); h_dimuon_m_fake_dummy116->GetZaxis()->SetLabelFont(42); h_dimuon_m_fake_dummy116->GetZaxis()->SetLabelOffset(0.007); h_dimuon_m_fake_dummy116->GetZaxis()->SetTitleSize(0.06); h_dimuon_m_fake_dummy116->GetZaxis()->SetTitleFont(42); h_dimuon_m_fake_dummy116->Draw(""); TH1F *h_dimuon_m_fake_0117 = new TH1F("h_dimuon_m_fake_0117","h_dimuon_m_fake_0",125,0,125); h_dimuon_m_fake_0117->SetBinContent(1,0.001193765); h_dimuon_m_fake_0117->SetBinContent(2,0.003418793); h_dimuon_m_fake_0117->SetBinContent(3,0.005868823); h_dimuon_m_fake_0117->SetBinContent(4,0.007793847); h_dimuon_m_fake_0117->SetBinContent(5,0.01025013); h_dimuon_m_fake_0117->SetBinContent(6,0.01258141); h_dimuon_m_fake_0117->SetBinContent(7,0.01408143); h_dimuon_m_fake_0117->SetBinContent(8,0.01711896); h_dimuon_m_fake_0117->SetBinContent(9,0.01928774); h_dimuon_m_fake_0117->SetBinContent(10,0.02063776); h_dimuon_m_fake_0117->SetBinContent(11,0.02268153); h_dimuon_m_fake_0117->SetBinContent(12,0.0239628); h_dimuon_m_fake_0117->SetBinContent(13,0.02550657); h_dimuon_m_fake_0117->SetBinContent(14,0.02655658); h_dimuon_m_fake_0117->SetBinContent(15,0.02669408); h_dimuon_m_fake_0117->SetBinContent(16,0.02803785); h_dimuon_m_fake_0117->SetBinContent(17,0.02936287); h_dimuon_m_fake_0117->SetBinContent(18,0.0283941); h_dimuon_m_fake_0117->SetBinContent(19,0.03011913); h_dimuon_m_fake_0117->SetBinContent(20,0.02869411); h_dimuon_m_fake_0117->SetBinContent(21,0.02987537); h_dimuon_m_fake_0117->SetBinContent(22,0.02950662); h_dimuon_m_fake_0117->SetBinContent(23,0.02854411); h_dimuon_m_fake_0117->SetBinContent(24,0.02812535); h_dimuon_m_fake_0117->SetBinContent(25,0.02756909); h_dimuon_m_fake_0117->SetBinContent(26,0.02610658); h_dimuon_m_fake_0117->SetBinContent(27,0.02502531); h_dimuon_m_fake_0117->SetBinContent(28,0.02491906); h_dimuon_m_fake_0117->SetBinContent(29,0.02488781); h_dimuon_m_fake_0117->SetBinContent(30,0.02330654); h_dimuon_m_fake_0117->SetBinContent(31,0.02198778); h_dimuon_m_fake_0117->SetBinContent(32,0.02102526); h_dimuon_m_fake_0117->SetBinContent(33,0.02067526); h_dimuon_m_fake_0117->SetBinContent(34,0.01935024); h_dimuon_m_fake_0117->SetBinContent(35,0.01845648); h_dimuon_m_fake_0117->SetBinContent(36,0.01780647); h_dimuon_m_fake_0117->SetBinContent(37,0.01737522); h_dimuon_m_fake_0117->SetBinContent(38,0.01623145); h_dimuon_m_fake_0117->SetBinContent(39,0.01498144); h_dimuon_m_fake_0117->SetBinContent(40,0.01449393); h_dimuon_m_fake_0117->SetBinContent(41,0.01330642); h_dimuon_m_fake_0117->SetBinContent(42,0.0121564); h_dimuon_m_fake_0117->SetBinContent(43,0.0116564); h_dimuon_m_fake_0117->SetBinContent(44,0.01084389); h_dimuon_m_fake_0117->SetBinContent(45,0.01028763); h_dimuon_m_fake_0117->SetBinContent(46,0.009437618); h_dimuon_m_fake_0117->SetBinContent(47,0.009125114); h_dimuon_m_fake_0117->SetBinContent(48,0.007956349); h_dimuon_m_fake_0117->SetBinContent(49,0.007906348); h_dimuon_m_fake_0117->SetBinContent(50,0.006987588); h_dimuon_m_fake_0117->SetBinContent(51,0.006300079); h_dimuon_m_fake_0117->SetBinContent(52,0.006368829); h_dimuon_m_fake_0117->SetBinContent(53,0.005443818); h_dimuon_m_fake_0117->SetBinContent(54,0.005250066); h_dimuon_m_fake_0117->SetBinContent(55,0.004668809); h_dimuon_m_fake_0117->SetBinContent(56,0.00405005); h_dimuon_m_fake_0117->SetBinContent(57,0.003818798); h_dimuon_m_fake_0117->SetBinContent(58,0.003637546); h_dimuon_m_fake_0117->SetBinContent(59,0.003443793); h_dimuon_m_fake_0117->SetBinContent(60,0.002881286); h_dimuon_m_fake_0117->SetBinContent(61,0.002731284); h_dimuon_m_fake_0117->SetBinContent(62,0.002318779); h_dimuon_m_fake_0117->SetBinContent(63,0.002193777); h_dimuon_m_fake_0117->SetBinContent(64,0.001856273); h_dimuon_m_fake_0117->SetBinContent(65,0.001675021); h_dimuon_m_fake_0117->SetBinContent(66,0.001687521); h_dimuon_m_fake_0117->SetBinContent(67,0.001306266); h_dimuon_m_fake_0117->SetBinContent(68,0.001262516); h_dimuon_m_fake_0117->SetBinContent(69,0.001168765); h_dimuon_m_fake_0117->SetBinContent(70,0.0007937599); h_dimuon_m_fake_0117->SetBinContent(71,0.0007312591); h_dimuon_m_fake_0117->SetBinContent(72,0.0005875073); h_dimuon_m_fake_0117->SetBinContent(73,0.000637508); h_dimuon_m_fake_0117->SetBinContent(74,0.0005125064); h_dimuon_m_fake_0117->SetBinContent(75,0.0004500056); h_dimuon_m_fake_0117->SetBinContent(76,0.0003250041); h_dimuon_m_fake_0117->SetBinContent(77,0.0003687546); h_dimuon_m_fake_0117->SetBinContent(78,0.0002937537); h_dimuon_m_fake_0117->SetBinContent(79,0.0002250028); h_dimuon_m_fake_0117->SetBinContent(80,0.0002000025); h_dimuon_m_fake_0117->SetBinContent(81,0.0001750022); h_dimuon_m_fake_0117->SetBinContent(82,0.0001062513); h_dimuon_m_fake_0117->SetBinContent(83,0.0001187515); h_dimuon_m_fake_0117->SetBinContent(84,6.250078e-05); h_dimuon_m_fake_0117->SetBinContent(85,5.000062e-05); h_dimuon_m_fake_0117->SetBinContent(86,6.250078e-05); h_dimuon_m_fake_0117->SetBinContent(87,1.875023e-05); h_dimuon_m_fake_0117->SetBinContent(88,1.875023e-05); h_dimuon_m_fake_0117->SetBinContent(89,6.250078e-06); h_dimuon_m_fake_0117->SetBinContent(90,1.875023e-05); h_dimuon_m_fake_0117->SetBinContent(92,1.250016e-05); h_dimuon_m_fake_0117->SetBinContent(96,6.250078e-06); h_dimuon_m_fake_0117->SetBinError(1,8.63778e-05); h_dimuon_m_fake_0117->SetBinError(2,0.000146177); h_dimuon_m_fake_0117->SetBinError(3,0.0001915218); h_dimuon_m_fake_0117->SetBinError(4,0.0002207083); h_dimuon_m_fake_0117->SetBinError(5,0.0002531089); h_dimuon_m_fake_0117->SetBinError(6,0.0002804189); h_dimuon_m_fake_0117->SetBinError(7,0.0002966648); h_dimuon_m_fake_0117->SetBinError(8,0.0003271007); h_dimuon_m_fake_0117->SetBinError(9,0.000347203); h_dimuon_m_fake_0117->SetBinError(10,0.0003591484); h_dimuon_m_fake_0117->SetBinError(11,0.0003765121); h_dimuon_m_fake_0117->SetBinError(12,0.0003870005); h_dimuon_m_fake_0117->SetBinError(13,0.0003992719); h_dimuon_m_fake_0117->SetBinError(14,0.0004074073); h_dimuon_m_fake_0117->SetBinError(15,0.0004084607); h_dimuon_m_fake_0117->SetBinError(16,0.0004186153); h_dimuon_m_fake_0117->SetBinError(17,0.0004283926); h_dimuon_m_fake_0117->SetBinError(18,0.0004212664); h_dimuon_m_fake_0117->SetBinError(19,0.0004338743); h_dimuon_m_fake_0117->SetBinError(20,0.000423486); h_dimuon_m_fake_0117->SetBinError(21,0.0004321151); h_dimuon_m_fake_0117->SetBinError(22,0.00042944); h_dimuon_m_fake_0117->SetBinError(23,0.0004223777); h_dimuon_m_fake_0117->SetBinError(24,0.000419268); h_dimuon_m_fake_0117->SetBinError(25,0.0004151012); h_dimuon_m_fake_0117->SetBinError(26,0.0004039408); h_dimuon_m_fake_0117->SetBinError(27,0.0003954872); h_dimuon_m_fake_0117->SetBinError(28,0.0003946468); h_dimuon_m_fake_0117->SetBinError(29,0.0003943992); h_dimuon_m_fake_0117->SetBinError(30,0.0003816644); h_dimuon_m_fake_0117->SetBinError(31,0.0003707092); h_dimuon_m_fake_0117->SetBinError(32,0.0003625045); h_dimuon_m_fake_0117->SetBinError(33,0.0003594746); h_dimuon_m_fake_0117->SetBinError(34,0.000347765); h_dimuon_m_fake_0117->SetBinError(35,0.0003396387); h_dimuon_m_fake_0117->SetBinError(36,0.0003336043); h_dimuon_m_fake_0117->SetBinError(37,0.0003295398); h_dimuon_m_fake_0117->SetBinError(38,0.0003185088); h_dimuon_m_fake_0117->SetBinError(39,0.0003059986); h_dimuon_m_fake_0117->SetBinError(40,0.0003009787); h_dimuon_m_fake_0117->SetBinError(41,0.0002883854); h_dimuon_m_fake_0117->SetBinError(42,0.0002756419); h_dimuon_m_fake_0117->SetBinError(43,0.0002699137); h_dimuon_m_fake_0117->SetBinError(44,0.0002603366); h_dimuon_m_fake_0117->SetBinError(45,0.0002535715); h_dimuon_m_fake_0117->SetBinError(46,0.00024287); h_dimuon_m_fake_0117->SetBinError(47,0.0002388151); h_dimuon_m_fake_0117->SetBinError(48,0.0002229973); h_dimuon_m_fake_0117->SetBinError(49,0.0002222955); h_dimuon_m_fake_0117->SetBinError(50,0.0002089808); h_dimuon_m_fake_0117->SetBinError(51,0.0001984338); h_dimuon_m_fake_0117->SetBinError(52,0.0001995136); h_dimuon_m_fake_0117->SetBinError(53,0.0001844567); h_dimuon_m_fake_0117->SetBinError(54,0.0001811445); h_dimuon_m_fake_0117->SetBinError(55,0.0001708228); h_dimuon_m_fake_0117->SetBinError(56,0.000159101); h_dimuon_m_fake_0117->SetBinError(57,0.000154492); h_dimuon_m_fake_0117->SetBinError(58,0.0001507811); h_dimuon_m_fake_0117->SetBinError(59,0.0001467105); h_dimuon_m_fake_0117->SetBinError(60,0.0001341949); h_dimuon_m_fake_0117->SetBinError(61,0.000130655); h_dimuon_m_fake_0117->SetBinError(62,0.000120385); h_dimuon_m_fake_0117->SetBinError(63,0.0001170952); h_dimuon_m_fake_0117->SetBinError(64,0.0001077119); h_dimuon_m_fake_0117->SetBinError(65,0.0001023182); h_dimuon_m_fake_0117->SetBinError(66,0.0001026993); h_dimuon_m_fake_0117->SetBinError(67,9.035633e-05); h_dimuon_m_fake_0117->SetBinError(68,8.88303e-05); h_dimuon_m_fake_0117->SetBinError(69,8.546853e-05); h_dimuon_m_fake_0117->SetBinError(70,7.04348e-05); h_dimuon_m_fake_0117->SetBinError(71,6.760493e-05); h_dimuon_m_fake_0117->SetBinError(72,6.059676e-05); h_dimuon_m_fake_0117->SetBinError(73,6.312269e-05); h_dimuon_m_fake_0117->SetBinError(74,5.659686e-05); h_dimuon_m_fake_0117->SetBinError(75,5.303367e-05); h_dimuon_m_fake_0117->SetBinError(76,4.506995e-05); h_dimuon_m_fake_0117->SetBinError(77,4.800776e-05); h_dimuon_m_fake_0117->SetBinError(78,4.284838e-05); h_dimuon_m_fake_0117->SetBinError(79,3.750047e-05); h_dimuon_m_fake_0117->SetBinError(80,3.535578e-05); h_dimuon_m_fake_0117->SetBinError(81,3.30723e-05); h_dimuon_m_fake_0117->SetBinError(82,2.576973e-05); h_dimuon_m_fake_0117->SetBinError(83,2.724346e-05); h_dimuon_m_fake_0117->SetBinError(84,1.976448e-05); h_dimuon_m_fake_0117->SetBinError(85,1.767789e-05); h_dimuon_m_fake_0117->SetBinError(86,1.976448e-05); h_dimuon_m_fake_0117->SetBinError(87,1.082545e-05); h_dimuon_m_fake_0117->SetBinError(88,1.082545e-05); h_dimuon_m_fake_0117->SetBinError(89,6.250078e-06); h_dimuon_m_fake_0117->SetBinError(90,1.082545e-05); h_dimuon_m_fake_0117->SetBinError(92,8.838945e-06); h_dimuon_m_fake_0117->SetBinError(96,6.250078e-06); h_dimuon_m_fake_0117->SetEntries(159998); h_dimuon_m_fake_0117->SetDirectory(0); Int_t ci; // for color index setting TColor *color; // for color definition with alpha ci = TColor::GetColor("#ff0000"); h_dimuon_m_fake_0117->SetLineColor(ci); h_dimuon_m_fake_0117->SetLineWidth(2); h_dimuon_m_fake_0117->SetMarkerStyle(20); h_dimuon_m_fake_0117->GetXaxis()->SetLabelFont(42); h_dimuon_m_fake_0117->GetXaxis()->SetLabelOffset(0.007); h_dimuon_m_fake_0117->GetXaxis()->SetTitleSize(0.06); h_dimuon_m_fake_0117->GetXaxis()->SetTitleOffset(0.95); h_dimuon_m_fake_0117->GetXaxis()->SetTitleFont(42); h_dimuon_m_fake_0117->GetYaxis()->SetLabelFont(42); h_dimuon_m_fake_0117->GetYaxis()->SetLabelOffset(0.007); h_dimuon_m_fake_0117->GetYaxis()->SetTitleSize(0.06); h_dimuon_m_fake_0117->GetYaxis()->SetTitleOffset(1.3); h_dimuon_m_fake_0117->GetYaxis()->SetTitleFont(42); h_dimuon_m_fake_0117->GetZaxis()->SetLabelFont(42); h_dimuon_m_fake_0117->GetZaxis()->SetLabelOffset(0.007); h_dimuon_m_fake_0117->GetZaxis()->SetTitleSize(0.06); h_dimuon_m_fake_0117->GetZaxis()->SetTitleFont(42); h_dimuon_m_fake_0117->Draw("SAMEHIST"); TLegend *leg = new TLegend(0.4566667,0.82,0.7822222,0.9066667,NULL,"brNDC"); leg->SetBorderSize(0); leg->SetTextSize(0.02777778); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(0); TLegendEntry *entry=leg->AddEntry("NULL","#splitline{pp #rightarrow h #rightarrow 2n_{1} #rightarrow 2n_{D} + 2 #gamma_{D} #rightarrow 2n_{D} + 4#mu}{#splitline{m_{h} = 125 GeV, m_{n_{1}} = 50 GeV, m_{n_{D}} = 1 GeV}{m_{#gamma_{D}} = 20 GeV, c#tau_{#gamma_{D}} = 10 mm}}","h"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(42); leg->Draw(); leg = new TLegend(0.17,0.935,0.97,1,NULL,"brNDC"); leg->SetBorderSize(0); leg->SetTextAlign(22); leg->SetTextSize(0.045); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(0); entry=leg->AddEntry("NULL","CMS Simulation (LHE) 14 TeV","h"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(42); leg->Draw(); cnv->Modified(); cnv->cd(); cnv->SetSelected(cnv); }
void plotVariable(string variable = "Elec_Fbrem", const TString& category = "TauNoGammas", const TString& xAxisTitle = "Fbrem", const TString& yAxisTitle = "a.u.", float xMin = -0.2, float xMax = 1, int nBins = 100, int numPVMin = 0, int numPVMax = 50, float PtMin = 10, float PtMax = 60, const TString& Region = "Endcap" ) { string discriminator = ""; // string discriminator = "-AntiEMed"; float AbsEtaMin = 0; float AbsEtaMax = 3.0; if(Region == "Barrel"){ AbsEtaMin = 0; AbsEtaMax = 1.479; } if(Region == "Endcap"){ AbsEtaMin = 1.479; AbsEtaMax = 3.0; } TCanvas *c1 = new TCanvas("c1","",5,30,650,600); c1->SetGrid(0,0); c1->SetFillStyle(4000); c1->SetFillColor(10); c1->SetTicky(); c1->SetObjectStat(0); gStyle->SetOptStat(0); gStyle->SetTitleFillColor(0); gStyle->SetCanvasBorderMode(0); gStyle->SetCanvasColor(0); gStyle->SetPadBorderMode(0); gStyle->SetPadColor(0); gStyle->SetTitleFillColor(0); gStyle->SetTitleBorderSize(0); gStyle->SetTitleH(0.07); gStyle->SetTitleFontSize(0.1); gStyle->SetTitleStyle(0); gStyle->SetTitleOffset(1.3,"y"); TLegend* leg = new TLegend(0.6,0.75,0.8,0.88,NULL,"brNDC"); leg->SetFillStyle(0); leg->SetBorderSize(0); leg->SetFillColor(10); leg->SetTextSize(0.03); //leg->SetHeader("#splitline{CMS Preliminary}{ #sqrt{s}=7 TeV}"); // std::string inputFileName = "/data_CMS/cms/ivo/AntiEMVA/Trees/AntiEMVA_Fall11DYJetsToLL-iter4.root"; // std::string inputFileName = "/data_CMS/cms/ivo/AntiEMVA/Trees/Trees_ForV4/AntiEMVA_AntiEMVATrees-DYJetsToLL-madgraph-PUS6.root"; std::string inputFileName = "/data_CMS/cms/ivo/AntiEMVA/Trees/Trees_ForV4/AntiEMVA_V4.root"; TFile* inputFile = new TFile (inputFileName.data(),"READ"); if(inputFile->IsZombie()){ cout << "No such file!" << endl; return; } TTree* inputTree = (TTree*)inputFile->Get("AntiEMVAAnalyzer2/tree"); // TTree* inputTree = (TTree*)inputFile->Get("AntiEMVAAnalyzer/tree"); std::vector<TH1*> histograms; std::vector<std::string> matchings ; matchings.push_back("GenHadMatch"); matchings.push_back("GenEleMatch"); for ( std::vector<std::string>::const_iterator matching = matchings.begin(); matching != matchings.end(); ++matching ) { TCut PUSelection(Form("NumPV>%i && NumPV<%i",numPVMin,numPVMax)); TCut ElecPtSelection (Form("Elec_Pt>%0f && Elec_Pt<%0f",PtMin,PtMax)); TCut TauPtSelection (Form("Tau_Pt>%0f && Tau_Pt<%0f",PtMin,PtMax)); TCut ElecAbsEtaSelection (Form("Elec_AbsEta>%0f && Elec_AbsEta<%0f",AbsEtaMin,AbsEtaMax)); TCut TauAbsEtaSelection = ""; if(Region == "Barrel"){ TauAbsEtaSelection = "Tau_Eta>-1.479 && Tau_Eta<1.479"; } if(Region == "Endcap"){ TauAbsEtaSelection = "(Tau_Eta>1.479 && Tau_Eta<3.0) || (Tau_Eta>-3.0 && Tau_Eta<-1.479)"; } // TCut TauAbsEtaSelection (Form("Tau_AbsEta>%0f && Tau_AbsEta<%0f",AbsEtaMin,AbsEtaMax)); TCut ElecMatchSelection (Form("Elec_%s == 1",matching->data())); // TCut ElecMatchSelection (Form("Elec_PFTauMatch && Elec_%s",matching->data())); TCut TauMatchSelection (Form("Tau_%s",matching->data())); TCut CategorySelection = ""; if(discriminator == ""){ if (category == "NoEleMatch") CategorySelection = "Tau_GsfEleMatch<0.5"; if (category == "woG") CategorySelection = "Tau_NumGammaCands<0.5"; if (category == "wGwoGSF") CategorySelection = "Tau_NumGammaCands>0.5 && Tau_HasGsf<0.5"; if (category == "wGwGSFwoPFMVA")CategorySelection = "Tau_NumGammaCands>0.5 && Tau_HasGsf>0.5 && Elec_PFMvaOutput<-0.1"; if (category == "wGwGSFwPFMVA")CategorySelection = "Tau_NumGammaCands>0.5 && Tau_HasGsf>0.5 && Elec_PFMvaOutput>-0.1"; } if(discriminator == "-AntiEMed"){ if (category == "NoEleMatch") CategorySelection = "Tau_GsfEleMatch<0.5"; if (category == "woG") CategorySelection = "Tau_NumGammaCands<0.5"; if (category == "wGwoGSF") CategorySelection = "Tau_NumGammaCands>0.5 && (Tau_HasGsf<0.5 || (Tau_HasGsf>0.5 && Elec_PFMvaOutput>-0.1))"; if (category == "wGwGSFwoPFMVA")CategorySelection = "Tau_NumGammaCands>0.5 && Tau_HasGsf>0.5 && Elec_PFMvaOutput<-0.1"; } TCut ElecSelection = CategorySelection && PUSelection && ElecPtSelection && ElecAbsEtaSelection && ElecMatchSelection ; TCut TauSelection = CategorySelection && PUSelection && TauPtSelection && TauAbsEtaSelection && TauMatchSelection ; TCut Selection; if (variable.find("Elec")!=std::string::npos)Selection = ElecSelection; if (variable.find("Tau")!=std::string::npos)Selection = TauSelection; TH1F* hVariable = new TH1F( "hVariable" ,"" , nBins ,xMin, xMax); hVariable->SetXTitle(Form("%s",variable.data())); if (matching->find("EleMatch")!=std::string::npos){ // hVariable->SetFillColor(kRed); // hVariable->SetFillStyle(3345); hVariable->SetLineColor(kRed); hVariable->SetLineWidth(2); } if (matching->find("HadMatch")!=std::string::npos){ // hVariable->SetFillColor(kBlue); // hVariable->SetFillStyle(3354); hVariable->SetLineColor(kBlue); hVariable->SetLineWidth(2); } inputTree->Draw(Form("%s>>hVariable",variable.data())); cout<<"Variable plotted : "<<variable<<endl; cout<<"Matching applied : "<<matching->data()<<endl; cout<<" Total number of Candidates : "<<hVariable->GetEntries()<<endl; inputTree->Draw(Form("%s>>hVariable",variable.data()),Selection); cout<<" Number of Cantidates after selection: "<<hVariable->GetEntries()<<endl; hVariable->Scale(1./hVariable->Integral()); leg->AddEntry(hVariable,Form("%s",matching->data())); histograms.push_back(hVariable); c1->Clear(); } // double yMin = +1.e+6; // double yMax = -1.e+6; TH1* refHistogram = histograms.front(); refHistogram->SetStats(false); refHistogram->SetTitle(""); // refHistogram->SetMinimum(yMin); // refHistogram->SetMaximum(yMax); if (xAxisTitle == "HoHplusE" ) { refHistogram->SetMaximum(1.0); refHistogram->SetMinimum(0.01); c1->SetLogy(); } if(xAxisTitle == "E_{#gamma}/(P_{in}-P_{out})" ){ refHistogram->SetMaximum(0.03); refHistogram->SetMinimum(0.0); } if(xAxisTitle == "HadrMva(#tau)" ){ refHistogram->SetMaximum(0.25); refHistogram->SetMinimum(0.0); } TAxis* xAxis = refHistogram->GetXaxis(); xAxis->SetTitle(xAxisTitle.Data()); xAxis->SetTitleOffset(1.15); //if(variable.find("AbsEta")!=std::string::npos)xAxis->SetLimits(AbsEtaMin, AbsEtaMax); TAxis* yAxis = refHistogram->GetYaxis(); yAxis->SetTitle(yAxisTitle.Data()); yAxis->SetTitleOffset(1.30); int numHistograms = histograms.size(); float YMax = 0; for ( int iHistogram = 0; iHistogram < numHistograms; ++iHistogram ) { TH1* histogram = histograms[iHistogram]; if(histogram->GetMaximum()>YMax) YMax = histogram->GetMaximum(); } for ( int iHistogram = 0; iHistogram < numHistograms; ++iHistogram ) { TH1* histogram = histograms[iHistogram]; yAxis->SetRangeUser(0.,YMax+0.10*YMax); std::string drawOption = "hist"; if ( iHistogram > 0 ) drawOption.append("same"); histogram->Draw(drawOption.data()); leg->Draw(); }//loop matchings string outputName = Form("plots/plotVariablesAntiEMVA/%s/plotVariablesAntiEMVA_v4_%s_%s_%s",category.Data(),category.Data(),variable.data(),Region.Data()); c1->Print(std::string(outputName).append(".png").data()); c1->Print(std::string(outputName).append(".pdf").data()); }
void forPaper_approval_2(std::string var1="h_ystar", bool logScale=false, std::string datafile="darko_root/goldenWithMCerror_withJESCorr_bigmatrix_corr.root", std::string mcfile1="darko_root/bare_exclusive1Jet_zPt40_both_dressed_DYToLL_M-50_1jEnh2_2jEnh35_3jEnh40_4jEnh50_7TeV-sherpa.root", std::string mcfile2="darko_root/bare_exclusive1Jet_zPt40_both_dressed_DYJetsToLL_TuneZ2_M-50_7TeV-madgraph-tauola.root", std::string mcfile3="unified_angular_distributions/rebinnings/zpt40/Z_1jet_tota_cteq66_1___1___ex_m34.root", std::string var2="", std::string headertitle="Z#rightarrow ll + 1 jet", std::string dataName="Data", std::string mcName1="Sherpa", std::string mcName2="Madgraph", std::string mcName3="MCFM" ) { setTDRStyle(); gStyle->SetOptStat(0); const double LABELSIZE = 20.0; const int LINEWIDTH=3; const int NHISTOS=4; TH1F* h[NHISTOS]; char tempName[300]; if(var2 == "" )var2=var1; std::string xtitle; std::string output; std::string datavar; std::string var3; std::string theoryName; std::string remword3 ="h_"; std::string corrName = var1; size_t pos3 = corrName.find(remword3); if(pos3!= std::string::npos) corrName.replace(pos3,remword3.length(),""); datavar = "h_combine_" + corrName; double ymax=1.22; double ymin=0.78; double xmax=3.0; double xmin=0.0; if(var1=="h_ystar") { var3 = "id4"; xtitle = "Y_{dif} = |Y_{Z}-Y_{jet}| / 2"; output = "DifYAll"; theoryName = "Ydif"; ymax = 1.45; ymin = 0.55; xmax = 1.7999; } else if(var1=="h_yB") { var3 = "id3"; xtitle = "Y_{sum} = |Y_{Z}+Y_{jet}| / 2"; output = "SumYAll"; theoryName = "Ysum"; ymax = 1.45; ymin = 0.55; xmax = 2.1999; } else if(var1=="h_jety") { var3 = "id1"; xtitle = "|Y_{jet}|"; output = "YJetAll"; datafile = "darko_root/goldenWithMCerror_withJESCorr_jety_bigmatrix.root"; theoryName = "Yjet"; xmax = 2.3999; } else if(var1=="h_zy") { var3 = "id2"; xtitle = "|Y_{Z}|"; output = "YZedAll"; theoryName = "Yzed"; xmax = 2.1999; } // first get the histogram files TFile *fdata = TFile::Open(datafile.data()); cout << "Opening " << fdata->GetName() << endl; TFile *fmc1 = TFile::Open(mcfile1.data()); cout << "Opening " << fmc1->GetName() << endl; TFile *fmc2 = TFile::Open(mcfile2.data()); cout << "Opening " << fmc2->GetName() << endl; TFile *fmc3 = TFile::Open(mcfile3.data()); cout << "Opening " << fmc3->GetName() << endl; h[0] = (TH1F*)(fdata->Get(datavar.data())); h[1] = (TH1F*)(fmc1->Get(var1.data())); h[2] = (TH1F*)(fmc2->Get(var2.data())); h[3] = (TH1F*)(fmc3->Get(var3.data())); if(var1=="h_jety") { double value = h[3]->GetBinContent(12); value *= 0.9; h[3]->SetBinContent(12,value); } TH1D* hscale[NHISTOS]; int COLOR[NHISTOS]={1,4,2,kOrange-1}; int MARKERSTYLE[NHISTOS]={8,24,21,29}; int MARKERSIZE[NHISTOS]={1,0,0,0}; int LINESTYLE[NHISTOS]={1,1,2,6}; int FILLSTYLE[NHISTOS]={1,3345,3436,1}; for(int i=0; i < NHISTOS; i++){ hscale[i] =(TH1D*) h[0]->Clone(Form("hscale%02i",i)); hscale[i] ->SetYTitle(Form("Ratio to %s",mcName3.data())); hscale[i] ->SetXTitle(xtitle.data()); hscale[i] ->GetXaxis()->SetDecimals(); hscale[i] ->GetYaxis()->SetDecimals(); hscale[i]->SetLineColor(COLOR[i]); hscale[i]->SetLineWidth(LINEWIDTH); hscale[i]->SetLineStyle(1); hscale[i]->SetMarkerColor(COLOR[i]); hscale[i]->SetMarkerStyle(MARKERSTYLE[i]); hscale[i]->SetMarkerSize(MARKERSIZE[i]); hscale[i]->SetFillColor(COLOR[i]); hscale[i]->SetFillStyle(FILLSTYLE[i]); hscale[i]->SetTitle(""); hscale[i]->SetMaximum(ymax); hscale[i]->SetMinimum(ymin); hscale[i]->SetTitleOffset(1.2,"X"); hscale[i]->SetTitleOffset(1.2,"Y"); h[i]->SetTitle(""); h[i]->SetLineStyle(LINESTYLE[i]); h[i]->GetXaxis()->SetDecimals(); h[i]->GetYaxis()->SetDecimals(); h[i]->SetMarkerSize(1); h[i]->SetLineColor(COLOR[i]); h[i]->SetLineWidth(LINEWIDTH); h[i]->SetMarkerColor(COLOR[i]); h[i]->SetMarkerStyle(MARKERSTYLE[i]); h[i]->SetTitleOffset(1.2,"Y"); } h[0]->SetLineWidth(1); hscale[0]->SetLineWidth(1); // if normalizing to the same area, set the scale int binLo = -1; int binHi = -1; int nbins = h[0]->GetNbinsX(); binLo = 1; binHi = nbins; double scaleFactor[NHISTOS]={1}; for(int ih=0; ih < NHISTOS; ih++){ double integral = h[ih]->Integral(binLo,binHi); scaleFactor[ih] = integral > 0? 1.0/integral: 1; h[ih]->Sumw2(); h[ih]->Scale(scaleFactor[ih]); } for(int ih=0; ih < NHISTOS; ih++) cout << "histogram " << ih << " integral = " << h[ih]->Integral() << endl; // get the ratio for(int ih=0; ih < NHISTOS-1; ih++){ cout << "===================================================" << endl; cout << "For histogram " << ih << endl; hscale[ih]->Divide(h[ih], h[NHISTOS-1]); hscale[ih]->SetMaximum(ymax); hscale[ih]->SetMinimum(ymin); } // end of loop over histograms vector<double> maxArray; maxArray.clear(); for(int ih=0; ih < NHISTOS; ih++){ h[ih]->GetXaxis()->SetRangeUser(xmin,xmax); hscale[ih]->GetXaxis()->SetRangeUser(xmin,xmax); double max_this = h[ih]->GetBinError(h[ih]->GetMaximumBin()) + h[ih]->GetMaximum(); maxArray.push_back(max_this); } double max = *(std::max_element(maxArray.begin(),maxArray.end())); cout << "Max = " << max << endl; for(int ih=0; ih < NHISTOS; ih++){ h[ih]->SetMaximum(1.1*max); if(!logScale) h[ih]->SetMinimum(-0.015); else h[ih]->SetMinimum(5e-6); } ////////////////////////////////////////////////////////////////////////// /// /// Making final figures and save the canvas in files /// ////////////////////////////////////////////////////////////////////////// TCanvas* c1 = new TCanvas("c1","",700,1000); c1->Divide(1,2,0.01,0); c1->cd(1); if(logScale) gPad->SetLogy(1); gPad->SetTopMargin(0.01); gPad->SetBottomMargin(0); gPad->SetRightMargin(0.04); gStyle->SetStatFontSize(0.05); // pad 1 and pad 2 have different sizes, need to rescale to // make the label size the same double temp1_pad = gPad->GetWh()*gPad->GetAbsHNDC(); cout << "pad 1 size in pixels = " << temp1_pad << endl; double label1_size = LABELSIZE/temp1_pad; for(int ih=0; ih < NHISTOS; ih++) { h[ih]->GetYaxis()->SetLabelSize(label1_size); h[ih]->GetXaxis()->SetLabelSize(label1_size); } h[0]->SetYTitle("1/#sigma d#sigma/dY"); h[0]->Draw("9e1"); for(int ih=1; ih < NHISTOS; ih++) h[ih]->Draw("9histsame"); h[0]->Draw("9e1same"); double x1NDC = 0.729812; double y1NDC = 0.560219; double x2NDC = 0.939633; double y2NDC = 0.871885; TLegend* leg = new TLegend(x1NDC,y1NDC,x2NDC,y2NDC); leg->SetFillColor(0); leg->SetFillStyle(0); leg->SetTextSize(0.045); leg->SetBorderSize(0); leg->SetHeader(headertitle.data()); leg->AddEntry(h[0], dataName.data()); leg->AddEntry(h[1], mcName1.data(),"l"); leg->AddEntry(h[2], mcName2.data(),"l"); leg->AddEntry(h[3], mcName3.data(),"l"); leg->Draw("same"); TLatex *lar = new TLatex(0.33, 0.91, "CMS Preliminary, #sqrt{s} = 7 TeV, L_{int} = 5 fb^{-1}"); lar->SetNDC(kTRUE); lar->SetTextSize(0.05); lar->Draw(); TPaveText *pavetex = new TPaveText(0.17029, 0.0495665, 0.478939, 0.483501,"NDCBR"); pavetex->SetBorderSize(0); pavetex->SetFillColor(0); pavetex->SetFillStyle(0); pavetex->SetLineWidth(3); pavetex->SetTextAlign(12); pavetex->SetTextSize(0.04); pavetex->AddText("76 < M_{ll} < 106 GeV"); pavetex->AddText("p_{T}^{ll} > 40 GeV"); pavetex->AddText("p_{T}^{l} > 20 GeV, |#eta^{l}| < 2.1"); pavetex->AddText("N_{jet}=1, p_{T}^{jet} > 30 GeV, |#eta^{jet}| < 2.4"); pavetex->AddText("#Delta R(l,jet)>0.5"); pavetex->Draw(); cout << "pad 1 label size = " << h[0]->GetYaxis()->GetLabelSize() << endl; ////////////////////////////////////////////////////////////////////// c1->cd(2); gPad->SetRightMargin(0.04); gPad->SetTopMargin(0); gPad->SetBottomMargin(0.2); gPad->SetTickx(); // pad 1 and pad 2 have different sizes, need to rescale to // make the label size the same double temp2_pad = gPad->GetWh()*gPad->GetAbsHNDC(); cout << "pad 2 size in pixels = " << temp2_pad << endl; double label2_size = LABELSIZE/temp2_pad; for(int ih=0; ih < NHISTOS; ih++) { hscale[ih]->GetYaxis()->SetLabelSize(label2_size); hscale[ih]->GetXaxis()->SetLabelSize(label2_size); } hscale[0]->Draw("9e1"); for(int ih=1; ih < NHISTOS-1; ih++){ hscale[ih]->Draw("9e3same"); } hscale[0]->Draw("9e1same"); TLine* l2 = new TLine(xmin,1.,xmax,1.); l2->SetLineColor(kOrange-1); l2->SetLineStyle(1); l2->Draw("same"); TLegend* leg2 = new TLegend(0.17333,0.244648,0.392274,0.476857); leg2->SetFillColor(0); leg2->SetFillStyle(0); leg2->SetTextSize(0.04); leg2->SetBorderSize(0); leg2->AddEntry(hscale[1], "Sherpa stat. uncertainty","f"); leg2->AddEntry(hscale[2], "Madgraph stat. uncertainty","f"); leg2->Draw("same"); gROOT->ProcessLine(".L ~/scripts/theoryErrorZed.c"); theoryErrorZed(theoryName.data()); hscale[0]->Draw("9e1same"); for(int ih=1; ih < NHISTOS-1; ih++){ hscale[ih]->Draw("9e3same"); } hscale[0]->Draw("9e1same"); l2->Draw("same"); cout << "pad 2 label size = " << hscale[0]->GetYaxis()->GetLabelSize() << endl; string dirName = "forPaper"; gSystem->mkdir(dirName.data()); std::string filename; std::string psname = dirName + "/" + output; filename = psname + ".eps"; c1->Print(filename.data()); filename = psname + ".gif"; c1->Print(filename.data()); filename = psname + ".pdf"; c1->Print(filename.data()); // c1->Close(); }
void myPlot(TH1D* h_DY100, TH1D* h_DY200, TH1D* h_DY400, TH1D* h_DY600, TH1D* h_TTbar, TH1D* h_WW, TH1D* h_WZ, TH1D* h_ZZ, TH1D* h_data0, TH1D* h_data1, Double_t scaleDY100, Double_t scaleDY200, Double_t scaleDY400, Double_t scaleDY600, Double_t scaleTTbar, Double_t scaleWW, Double_t scaleWZ, Double_t scaleZZ, TH1D* h_data, TH1D* h_bkg){ h_data->Reset(); h_data->Add(h_data0); h_data->Add(h_data1); TH1D* h_DY = (TH1D*)h_DY100->Clone("h_DY"); h_DY->Reset(); h_DY->Add(h_DY100, scaleDY100); h_DY->Add(h_DY200, scaleDY200); h_DY->Add(h_DY400, scaleDY400); h_DY->Add(h_DY600, scaleDY600); h_DY->SetFillColor(kOrange-3); h_DY->SetLineColor(kBlack); h_TTbar->Scale(scaleTTbar); h_TTbar->SetFillColor(kGreen); h_TTbar->SetLineColor(kBlack); h_WW->Scale(scaleWW); h_WW->SetFillColor(kYellow); h_WW->SetLineColor(kBlack); h_WZ->Scale(scaleWZ); h_WZ->SetFillColor(kCyan); h_WZ->SetLineColor(kBlack); h_ZZ->Scale(scaleZZ); h_ZZ->SetFillColor(kPink); h_ZZ->SetLineColor(kBlack); h_bkg->Reset(); h_bkg->Add(h_DY); h_bkg->Add(h_TTbar); h_bkg->Add(h_WW); h_bkg->Add(h_WZ); h_bkg->Add(h_ZZ); THStack *h_stack = new THStack("h_stack", ""); h_stack->Add(h_DY); h_stack->Add(h_TTbar); h_stack->Add(h_WW); h_stack->Add(h_WZ); h_stack->Add(h_ZZ); h_data->SetLineColor(kBlack); h_data->SetMarkerStyle(8); h_data->SetMarkerSize(1.5); h_data->GetYaxis()->SetTitleOffset(1.3); h_data->GetXaxis()->SetTitle(""); h_data->GetXaxis()->SetLabelOffset(999); h_data->GetXaxis()->SetLabelSize(0); if( h_data->GetMaximum() < h_stack->GetMaximum() ){ h_stack->Draw("histe"); h_stack->GetHistogram()->GetYaxis()->SetTitle("Event Numbers"); h_stack->GetHistogram()->GetYaxis()->SetTitleSize(h_data->GetYaxis()->GetTitleSize()); h_stack->GetHistogram()->GetYaxis()->SetLabelSize(h_data->GetYaxis()->GetLabelSize()); h_stack->GetHistogram()->GetYaxis()->SetTitleOffset(1.3); h_stack->GetHistogram()->GetXaxis()->SetTickLength(0); h_stack->GetHistogram()->GetXaxis()->SetLabelOffset(999); h_data->Draw("elsame"); } else{ h_data->GetYaxis()->SetTitle("Event Numbers"); h_data->Draw("el"); h_stack->Draw("histesame"); h_data->Draw("elsame"); } TLegend *leg = new TLegend(0.73, 0.60, 0.90, 0.87); leg->SetBorderSize(0); leg->SetFillColor(0); leg->SetFillStyle(0); leg->SetTextSize(0.04); leg->AddEntry(h_DY, "DY+Jets", "f"); leg->AddEntry(h_TTbar, "t#bar{t}", "f"); leg->AddEntry(h_WW, "WW", "f"); leg->AddEntry(h_WZ, "WZ", "f"); leg->AddEntry(h_ZZ, "ZZ", "f"); leg->AddEntry(h_data, "Data", "lp"); leg->Draw(); TLatex *lar = new TLatex(); lar->SetNDC(kTRUE); lar->SetTextSize(0.04); lar->SetLineWidth(5); lar->DrawLatex(0.14, 0.94, "CMS preliminary 2015"); lar->DrawLatex(0.63, 0.94, "L = 2.08 fb^{-1} at #sqrt{s} = 13 TeV"); }
void DisttoEdge_2016B_June22all_sameYrange_fullIntegral_10k9k() { //=========Macro generated from canvas: DisttoEdge/DisttoEdge //========= (Fri Aug 5 09:22:37 2016) by ROOT version6.06/01 TCanvas *DisttoEdge = new TCanvas("DisttoEdge", "DisttoEdge",0,0,500,500); gStyle->SetOptStat(0); DisttoEdge->SetHighLightColor(2); DisttoEdge->Range(-67.5,-2.848556,7.500001,2.626708); DisttoEdge->SetFillColor(0); DisttoEdge->SetBorderMode(0); DisttoEdge->SetBorderSize(2); DisttoEdge->SetLogy(); DisttoEdge->SetFrameBorderMode(0); DisttoEdge->SetFrameBorderMode(0); TH1D *DisttoEdge_1__7 = new TH1D("DisttoEdge_1__7","DisttoEdge",100,-60,0); DisttoEdge_1__7->SetBinContent(64,0.0001479723); DisttoEdge_1__7->SetBinContent(65,0.008582395); DisttoEdge_1__7->SetBinContent(66,0.01701682); DisttoEdge_1__7->SetBinContent(67,0.02944649); DisttoEdge_1__7->SetBinContent(68,0.04394778); DisttoEdge_1__7->SetBinContent(69,0.05164234); DisttoEdge_1__7->SetBinContent(70,0.07191455); DisttoEdge_1__7->SetBinContent(71,0.08730368); DisttoEdge_1__7->SetBinContent(72,0.1127549); DisttoEdge_1__7->SetBinContent(73,0.1222251); DisttoEdge_1__7->SetBinContent(74,0.1408697); DisttoEdge_1__7->SetBinContent(75,0.1652851); DisttoEdge_1__7->SetBinContent(76,0.2007985); DisttoEdge_1__7->SetBinContent(77,0.4424373); DisttoEdge_1__7->SetBinContent(78,1.415503); DisttoEdge_1__7->SetBinContent(79,3.061252); DisttoEdge_1__7->SetBinContent(80,4.839287); DisttoEdge_1__7->SetBinContent(81,6.813978); DisttoEdge_1__7->SetBinContent(82,8.689379); DisttoEdge_1__7->SetBinContent(83,9.021873); DisttoEdge_1__7->SetBinContent(84,8.897133); DisttoEdge_1__7->SetBinContent(85,8.654606); DisttoEdge_1__7->SetBinContent(86,8.316933); DisttoEdge_1__7->SetBinContent(87,7.941675); DisttoEdge_1__7->SetBinContent(88,7.634189); DisttoEdge_1__7->SetBinContent(89,7.148396); DisttoEdge_1__7->SetBinContent(90,6.559022); DisttoEdge_1__7->SetBinContent(91,5.935762); DisttoEdge_1__7->SetBinContent(92,3.576639); DisttoEdge_1__7->SetMinimum(0.005); DisttoEdge_1__7->SetMaximum(120); DisttoEdge_1__7->SetEntries(675802); DisttoEdge_1__7->SetStats(0); Int_t ci; // for color index setting TColor *color; // for color definition with alpha ci = TColor::GetColor("#ff00ff"); DisttoEdge_1__7->SetLineColor(ci); ci = TColor::GetColor("#ff00ff"); DisttoEdge_1__7->SetMarkerColor(ci); DisttoEdge_1__7->GetXaxis()->SetTitle("cm"); DisttoEdge_1__7->GetYaxis()->SetTitle("scaled number of entries"); DisttoEdge_1__7->Draw("H"); TLegend *leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); TLegendEntry *entry=leg->AddEntry("DisttoEdge_1","ME11A: mean:-9.2cm;RMS:2.3cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_2","ME11B: mean:-12.0cm;RMS:3.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_3","ME12+13: mean:-18.9cm;RMS:8.0cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_4","ME2: mean:-22.5cm;RMS:10.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_5","ME3: mean:-23.0cm;RMS:10.7cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_6","ME4: mean:-23.0cm;RMS:10.9cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *DisttoEdge_2__8 = new TH1D("DisttoEdge_2__8","DisttoEdge",100,-60,0); DisttoEdge_2__8->SetBinContent(64,0.0151855); DisttoEdge_2__8->SetBinContent(65,0.1966523); DisttoEdge_2__8->SetBinContent(66,0.5071115); DisttoEdge_2__8->SetBinContent(67,0.8573904); DisttoEdge_2__8->SetBinContent(68,1.202017); DisttoEdge_2__8->SetBinContent(69,1.602071); DisttoEdge_2__8->SetBinContent(70,1.995291); DisttoEdge_2__8->SetBinContent(71,2.402431); DisttoEdge_2__8->SetBinContent(72,2.870398); DisttoEdge_2__8->SetBinContent(73,3.344523); DisttoEdge_2__8->SetBinContent(74,3.873738); DisttoEdge_2__8->SetBinContent(75,4.448846); DisttoEdge_2__8->SetBinContent(76,5.006492); DisttoEdge_2__8->SetBinContent(77,5.551989); DisttoEdge_2__8->SetBinContent(78,5.805418); DisttoEdge_2__8->SetBinContent(79,5.618468); DisttoEdge_2__8->SetBinContent(80,5.475049); DisttoEdge_2__8->SetBinContent(81,5.295016); DisttoEdge_2__8->SetBinContent(82,5.143246); DisttoEdge_2__8->SetBinContent(83,4.921284); DisttoEdge_2__8->SetBinContent(84,4.735009); DisttoEdge_2__8->SetBinContent(85,4.518615); DisttoEdge_2__8->SetBinContent(86,4.369291); DisttoEdge_2__8->SetBinContent(87,4.089794); DisttoEdge_2__8->SetBinContent(88,3.87281); DisttoEdge_2__8->SetBinContent(89,3.626214); DisttoEdge_2__8->SetBinContent(90,3.4191); DisttoEdge_2__8->SetBinContent(91,3.210047); DisttoEdge_2__8->SetBinContent(92,2.026505); DisttoEdge_2__8->SetEntries(1185341); DisttoEdge_2__8->SetStats(0); ci = TColor::GetColor("#ff9999"); DisttoEdge_2__8->SetLineColor(ci); ci = TColor::GetColor("#ff9999"); DisttoEdge_2__8->SetMarkerColor(ci); DisttoEdge_2__8->GetXaxis()->SetTitle("cm"); DisttoEdge_2__8->GetYaxis()->SetTitle("scaled number of entries"); DisttoEdge_2__8->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("DisttoEdge_1","ME11A: mean:-9.2cm;RMS:2.3cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_2","ME11B: mean:-12.0cm;RMS:3.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_3","ME12+13: mean:-18.9cm;RMS:8.0cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_4","ME2: mean:-22.5cm;RMS:10.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_5","ME3: mean:-23.0cm;RMS:10.7cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_6","ME4: mean:-23.0cm;RMS:10.9cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *DisttoEdge_3__9 = new TH1D("DisttoEdge_3__9","DisttoEdge",100,-60,0); DisttoEdge_3__9->SetBinContent(34,0.0005133523); DisttoEdge_3__9->SetBinContent(35,0.0161706); DisttoEdge_3__9->SetBinContent(36,0.05082188); DisttoEdge_3__9->SetBinContent(37,0.0839331); DisttoEdge_3__9->SetBinContent(38,0.1203811); DisttoEdge_3__9->SetBinContent(39,0.1804433); DisttoEdge_3__9->SetBinContent(40,0.1706896); DisttoEdge_3__9->SetBinContent(41,0.2215115); DisttoEdge_3__9->SetBinContent(42,0.3388125); DisttoEdge_3__9->SetBinContent(43,0.5279828); DisttoEdge_3__9->SetBinContent(44,0.6676147); DisttoEdge_3__9->SetBinContent(45,0.8621752); DisttoEdge_3__9->SetBinContent(46,1.101654); DisttoEdge_3__9->SetBinContent(47,1.315209); DisttoEdge_3__9->SetBinContent(48,1.467931); DisttoEdge_3__9->SetBinContent(49,1.579328); DisttoEdge_3__9->SetBinContent(50,1.657615); DisttoEdge_3__9->SetBinContent(51,1.685849); DisttoEdge_3__9->SetBinContent(52,1.80546); DisttoEdge_3__9->SetBinContent(53,1.862955); DisttoEdge_3__9->SetBinContent(54,1.886826); DisttoEdge_3__9->SetBinContent(55,1.940985); DisttoEdge_3__9->SetBinContent(56,1.994117); DisttoEdge_3__9->SetBinContent(57,1.99155); DisttoEdge_3__9->SetBinContent(58,2.008748); DisttoEdge_3__9->SetBinContent(59,2.031335); DisttoEdge_3__9->SetBinContent(60,2.090627); DisttoEdge_3__9->SetBinContent(61,2.113471); DisttoEdge_3__9->SetBinContent(62,2.142219); DisttoEdge_3__9->SetBinContent(63,2.185341); DisttoEdge_3__9->SetBinContent(64,2.251563); DisttoEdge_3__9->SetBinContent(65,2.281851); DisttoEdge_3__9->SetBinContent(66,2.285188); DisttoEdge_3__9->SetBinContent(67,2.24951); DisttoEdge_3__9->SetBinContent(68,2.267734); DisttoEdge_3__9->SetBinContent(69,2.298022); DisttoEdge_3__9->SetBinContent(70,2.33909); DisttoEdge_3__9->SetBinContent(71,2.366554); DisttoEdge_3__9->SetBinContent(72,2.372714); DisttoEdge_3__9->SetBinContent(73,2.392735); DisttoEdge_3__9->SetBinContent(74,2.403515); DisttoEdge_3__9->SetBinContent(75,2.369891); DisttoEdge_3__9->SetBinContent(76,2.412499); DisttoEdge_3__9->SetBinContent(77,2.395558); DisttoEdge_3__9->SetBinContent(78,2.381185); DisttoEdge_3__9->SetBinContent(79,2.347047); DisttoEdge_3__9->SetBinContent(80,2.363474); DisttoEdge_3__9->SetBinContent(81,2.35449); DisttoEdge_3__9->SetBinContent(82,2.342683); DisttoEdge_3__9->SetBinContent(83,2.291091); DisttoEdge_3__9->SetBinContent(84,2.281594); DisttoEdge_3__9->SetBinContent(85,2.228976); DisttoEdge_3__9->SetBinContent(86,2.16917); DisttoEdge_3__9->SetBinContent(87,2.086007); DisttoEdge_3__9->SetBinContent(88,2.005154); DisttoEdge_3__9->SetBinContent(89,1.90351); DisttoEdge_3__9->SetBinContent(90,1.773119); DisttoEdge_3__9->SetBinContent(91,1.648888); DisttoEdge_3__9->SetBinContent(92,1.034918); DisttoEdge_3__9->SetEntries(389596); DisttoEdge_3__9->SetStats(0); DisttoEdge_3__9->GetXaxis()->SetTitle("cm"); DisttoEdge_3__9->GetYaxis()->SetTitle("scaled number of entries"); DisttoEdge_3__9->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("DisttoEdge_1","ME11A: mean:-9.2cm;RMS:2.3cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_2","ME11B: mean:-12.0cm;RMS:3.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_3","ME12+13: mean:-18.9cm;RMS:8.0cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_4","ME2: mean:-22.5cm;RMS:10.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_5","ME3: mean:-23.0cm;RMS:10.7cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_6","ME4: mean:-23.0cm;RMS:10.9cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *DisttoEdge_4__10 = new TH1D("DisttoEdge_4__10","DisttoEdge",100,-60,0); DisttoEdge_4__10->SetBinContent(6,5.289032e-05); DisttoEdge_4__10->SetBinContent(7,0.001428039); DisttoEdge_4__10->SetBinContent(8,0.0065584); DisttoEdge_4__10->SetBinContent(9,0.0120061); DisttoEdge_4__10->SetBinContent(10,0.02168503); DisttoEdge_4__10->SetBinContent(11,0.02861367); DisttoEdge_4__10->SetBinContent(12,0.03268622); DisttoEdge_4__10->SetBinContent(13,0.03829259); DisttoEdge_4__10->SetBinContent(14,0.03601831); DisttoEdge_4__10->SetBinContent(15,0.04024954); DisttoEdge_4__10->SetBinContent(16,0.04305272); DisttoEdge_4__10->SetBinContent(17,0.05495305); DisttoEdge_4__10->SetBinContent(18,0.07224818); DisttoEdge_4__10->SetBinContent(19,0.09467368); DisttoEdge_4__10->SetBinContent(20,0.1241865); DisttoEdge_4__10->SetBinContent(21,0.1585652); DisttoEdge_4__10->SetBinContent(22,0.1911456); DisttoEdge_4__10->SetBinContent(23,0.2162156); DisttoEdge_4__10->SetBinContent(24,0.2491663); DisttoEdge_4__10->SetBinContent(25,0.2901563); DisttoEdge_4__10->SetBinContent(26,0.3411426); DisttoEdge_4__10->SetBinContent(27,0.3759973); DisttoEdge_4__10->SetBinContent(28,0.443644); DisttoEdge_4__10->SetBinContent(29,0.4799268); DisttoEdge_4__10->SetBinContent(30,0.5365194); DisttoEdge_4__10->SetBinContent(31,0.5794664); DisttoEdge_4__10->SetBinContent(32,0.6081329); DisttoEdge_4__10->SetBinContent(33,0.6263272); DisttoEdge_4__10->SetBinContent(34,0.6319336); DisttoEdge_4__10->SetBinContent(35,0.6419828); DisttoEdge_4__10->SetBinContent(36,0.679482); DisttoEdge_4__10->SetBinContent(37,0.7201547); DisttoEdge_4__10->SetBinContent(38,0.7782811); DisttoEdge_4__10->SetBinContent(39,0.8550779); DisttoEdge_4__10->SetBinContent(40,0.8916251); DisttoEdge_4__10->SetBinContent(41,0.9484822); DisttoEdge_4__10->SetBinContent(42,1.041146); DisttoEdge_4__10->SetBinContent(43,1.110697); DisttoEdge_4__10->SetBinContent(44,1.228113); DisttoEdge_4__10->SetBinContent(45,1.307925); DisttoEdge_4__10->SetBinContent(46,1.369013); DisttoEdge_4__10->SetBinContent(47,1.421269); DisttoEdge_4__10->SetBinContent(48,1.487646); DisttoEdge_4__10->SetBinContent(49,1.545138); DisttoEdge_4__10->SetBinContent(50,1.585705); DisttoEdge_4__10->SetBinContent(51,1.616646); DisttoEdge_4__10->SetBinContent(52,1.679691); DisttoEdge_4__10->SetBinContent(53,1.730148); DisttoEdge_4__10->SetBinContent(54,1.766378); DisttoEdge_4__10->SetBinContent(55,1.812816); DisttoEdge_4__10->SetBinContent(56,1.838362); DisttoEdge_4__10->SetBinContent(57,1.885381); DisttoEdge_4__10->SetBinContent(58,1.927535); DisttoEdge_4__10->SetBinContent(59,1.967044); DisttoEdge_4__10->SetBinContent(60,1.974713); DisttoEdge_4__10->SetBinContent(61,2.0001); DisttoEdge_4__10->SetBinContent(62,2.026281); DisttoEdge_4__10->SetBinContent(63,2.050875); DisttoEdge_4__10->SetBinContent(64,2.040826); DisttoEdge_4__10->SetBinContent(65,2.06304); DisttoEdge_4__10->SetBinContent(66,2.06579); DisttoEdge_4__10->SetBinContent(67,2.08171); DisttoEdge_4__10->SetBinContent(68,2.111964); DisttoEdge_4__10->SetBinContent(69,2.078484); DisttoEdge_4__10->SetBinContent(70,2.081393); DisttoEdge_4__10->SetBinContent(71,2.08372); DisttoEdge_4__10->SetBinContent(72,2.077215); DisttoEdge_4__10->SetBinContent(73,2.047966); DisttoEdge_4__10->SetBinContent(74,2.038129); DisttoEdge_4__10->SetBinContent(75,1.993595); DisttoEdge_4__10->SetBinContent(76,1.973021); DisttoEdge_4__10->SetBinContent(77,1.982224); DisttoEdge_4__10->SetBinContent(78,1.924256); DisttoEdge_4__10->SetBinContent(79,1.892257); DisttoEdge_4__10->SetBinContent(80,1.836881); DisttoEdge_4__10->SetBinContent(81,1.806522); DisttoEdge_4__10->SetBinContent(82,1.769446); DisttoEdge_4__10->SetBinContent(83,1.725229); DisttoEdge_4__10->SetBinContent(84,1.661179); DisttoEdge_4__10->SetBinContent(85,1.607813); DisttoEdge_4__10->SetBinContent(86,1.550321); DisttoEdge_4__10->SetBinContent(87,1.469875); DisttoEdge_4__10->SetBinContent(88,1.397627); DisttoEdge_4__10->SetBinContent(89,1.326489); DisttoEdge_4__10->SetBinContent(90,1.235359); DisttoEdge_4__10->SetBinContent(91,1.150206); DisttoEdge_4__10->SetBinContent(92,0.7047107); DisttoEdge_4__10->SetEntries(1890705); DisttoEdge_4__10->SetStats(0); ci = TColor::GetColor("#ff0000"); DisttoEdge_4__10->SetLineColor(ci); ci = TColor::GetColor("#ff0000"); DisttoEdge_4__10->SetMarkerColor(ci); DisttoEdge_4__10->GetXaxis()->SetTitle("cm"); DisttoEdge_4__10->GetYaxis()->SetTitle("scaled number of entries"); DisttoEdge_4__10->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("DisttoEdge_1","ME11A: mean:-9.2cm;RMS:2.3cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_2","ME11B: mean:-12.0cm;RMS:3.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_3","ME12+13: mean:-18.9cm;RMS:8.0cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_4","ME2: mean:-22.5cm;RMS:10.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_5","ME3: mean:-23.0cm;RMS:10.7cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_6","ME4: mean:-23.0cm;RMS:10.9cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *DisttoEdge_5__11 = new TH1D("DisttoEdge_5__11","DisttoEdge",100,-60,0); DisttoEdge_5__11->SetBinContent(6,0.0001433996); DisttoEdge_5__11->SetBinContent(7,0.003226491); DisttoEdge_5__11->SetBinContent(8,0.009894573); DisttoEdge_5__11->SetBinContent(9,0.02258544); DisttoEdge_5__11->SetBinContent(10,0.03398571); DisttoEdge_5__11->SetBinContent(11,0.03972169); DisttoEdge_5__11->SetBinContent(12,0.05155216); DisttoEdge_5__11->SetBinContent(13,0.05363145); DisttoEdge_5__11->SetBinContent(14,0.05757494); DisttoEdge_5__11->SetBinContent(15,0.05994103); DisttoEdge_5__11->SetBinContent(16,0.06474492); DisttoEdge_5__11->SetBinContent(17,0.07944338); DisttoEdge_5__11->SetBinContent(18,0.108912); DisttoEdge_5__11->SetBinContent(19,0.1377353); DisttoEdge_5__11->SetBinContent(20,0.1804684); DisttoEdge_5__11->SetBinContent(21,0.2225562); DisttoEdge_5__11->SetBinContent(22,0.2616326); DisttoEdge_5__11->SetBinContent(23,0.2971957); DisttoEdge_5__11->SetBinContent(24,0.3312531); DisttoEdge_5__11->SetBinContent(25,0.3861034); DisttoEdge_5__11->SetBinContent(26,0.4476936); DisttoEdge_5__11->SetBinContent(27,0.5128687); DisttoEdge_5__11->SetBinContent(28,0.5685077); DisttoEdge_5__11->SetBinContent(29,0.6292375); DisttoEdge_5__11->SetBinContent(30,0.7008656); DisttoEdge_5__11->SetBinContent(31,0.7377193); DisttoEdge_5__11->SetBinContent(32,0.7872638); DisttoEdge_5__11->SetBinContent(33,0.8056907); DisttoEdge_5__11->SetBinContent(34,0.792713); DisttoEdge_5__11->SetBinContent(35,0.8489973); DisttoEdge_5__11->SetBinContent(36,0.8735187); DisttoEdge_5__11->SetBinContent(37,0.9293728); DisttoEdge_5__11->SetBinContent(38,0.993114); DisttoEdge_5__11->SetBinContent(39,1.052481); DisttoEdge_5__11->SetBinContent(40,1.096362); DisttoEdge_5__11->SetBinContent(41,1.135151); DisttoEdge_5__11->SetBinContent(42,1.150137); DisttoEdge_5__11->SetBinContent(43,1.1857); DisttoEdge_5__11->SetBinContent(44,1.213591); DisttoEdge_5__11->SetBinContent(45,1.256037); DisttoEdge_5__11->SetBinContent(46,1.265143); DisttoEdge_5__11->SetBinContent(47,1.320567); DisttoEdge_5__11->SetBinContent(48,1.344156); DisttoEdge_5__11->SetBinContent(49,1.385742); DisttoEdge_5__11->SetBinContent(50,1.42446); DisttoEdge_5__11->SetBinContent(51,1.468627); DisttoEdge_5__11->SetBinContent(52,1.496016); DisttoEdge_5__11->SetBinContent(53,1.541474); DisttoEdge_5__11->SetBinContent(54,1.562339); DisttoEdge_5__11->SetBinContent(55,1.607653); DisttoEdge_5__11->SetBinContent(56,1.644076); DisttoEdge_5__11->SetBinContent(57,1.685806); DisttoEdge_5__11->SetBinContent(58,1.733916); DisttoEdge_5__11->SetBinContent(59,1.780378); DisttoEdge_5__11->SetBinContent(60,1.857168); DisttoEdge_5__11->SetBinContent(61,1.838526); DisttoEdge_5__11->SetBinContent(62,1.923992); DisttoEdge_5__11->SetBinContent(63,1.928294); DisttoEdge_5__11->SetBinContent(64,1.950163); DisttoEdge_5__11->SetBinContent(65,1.977767); DisttoEdge_5__11->SetBinContent(66,1.989741); DisttoEdge_5__11->SetBinContent(67,2.0091); DisttoEdge_5__11->SetBinContent(68,2.007953); DisttoEdge_5__11->SetBinContent(69,2.041293); DisttoEdge_5__11->SetBinContent(70,2.021863); DisttoEdge_5__11->SetBinContent(71,1.995907); DisttoEdge_5__11->SetBinContent(72,2.005874); DisttoEdge_5__11->SetBinContent(73,2.018636); DisttoEdge_5__11->SetBinContent(74,1.987232); DisttoEdge_5__11->SetBinContent(75,1.973394); DisttoEdge_5__11->SetBinContent(76,1.931736); DisttoEdge_5__11->SetBinContent(77,1.936325); DisttoEdge_5__11->SetBinContent(78,1.914098); DisttoEdge_5__11->SetBinContent(79,1.871938); DisttoEdge_5__11->SetBinContent(80,1.846198); DisttoEdge_5__11->SetBinContent(81,1.812356); DisttoEdge_5__11->SetBinContent(82,1.767257); DisttoEdge_5__11->SetBinContent(83,1.730116); DisttoEdge_5__11->SetBinContent(84,1.683368); DisttoEdge_5__11->SetBinContent(85,1.634684); DisttoEdge_5__11->SetBinContent(86,1.581483); DisttoEdge_5__11->SetBinContent(87,1.517813); DisttoEdge_5__11->SetBinContent(88,1.418079); DisttoEdge_5__11->SetBinContent(89,1.352904); DisttoEdge_5__11->SetBinContent(90,1.247792); DisttoEdge_5__11->SetBinContent(91,1.151571); DisttoEdge_5__11->SetBinContent(92,0.6957032); DisttoEdge_5__11->SetEntries(1394704); DisttoEdge_5__11->SetStats(0); ci = TColor::GetColor("#00ff00"); DisttoEdge_5__11->SetLineColor(ci); ci = TColor::GetColor("#00ff00"); DisttoEdge_5__11->SetMarkerColor(ci); DisttoEdge_5__11->GetXaxis()->SetTitle("cm"); DisttoEdge_5__11->GetYaxis()->SetTitle("scaled number of entries"); DisttoEdge_5__11->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("DisttoEdge_1","ME11A: mean:-9.2cm;RMS:2.3cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_2","ME11B: mean:-12.0cm;RMS:3.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_3","ME12+13: mean:-18.9cm;RMS:8.0cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_4","ME2: mean:-22.5cm;RMS:10.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_5","ME3: mean:-23.0cm;RMS:10.7cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_6","ME4: mean:-23.0cm;RMS:10.9cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *DisttoEdge_6__12 = new TH1D("DisttoEdge_6__12","DisttoEdge",100,-60,0); DisttoEdge_6__12->SetBinContent(7,0.005171053); DisttoEdge_6__12->SetBinContent(8,0.01669252); DisttoEdge_6__12->SetBinContent(9,0.0322964); DisttoEdge_6__12->SetBinContent(10,0.0461766); DisttoEdge_6__12->SetBinContent(11,0.06268768); DisttoEdge_6__12->SetBinContent(12,0.07393699); DisttoEdge_6__12->SetBinContent(13,0.07829156); DisttoEdge_6__12->SetBinContent(14,0.07611427); DisttoEdge_6__12->SetBinContent(15,0.08863366); DisttoEdge_6__12->SetBinContent(16,0.1075035); DisttoEdge_6__12->SetBinContent(17,0.1345381); DisttoEdge_6__12->SetBinContent(18,0.1741828); DisttoEdge_6__12->SetBinContent(19,0.2238068); DisttoEdge_6__12->SetBinContent(20,0.2754266); DisttoEdge_6__12->SetBinContent(21,0.3174301); DisttoEdge_6__12->SetBinContent(22,0.3746745); DisttoEdge_6__12->SetBinContent(23,0.4066081); DisttoEdge_6__12->SetBinContent(24,0.4223027); DisttoEdge_6__12->SetBinContent(25,0.442624); DisttoEdge_6__12->SetBinContent(26,0.484446); DisttoEdge_6__12->SetBinContent(27,0.5122971); DisttoEdge_6__12->SetBinContent(28,0.5423255); DisttoEdge_6__12->SetBinContent(29,0.5936732); DisttoEdge_6__12->SetBinContent(30,0.6491032); DisttoEdge_6__12->SetBinContent(31,0.6478331); DisttoEdge_6__12->SetBinContent(32,0.6945541); DisttoEdge_6__12->SetBinContent(33,0.7206815); DisttoEdge_6__12->SetBinContent(34,0.739007); DisttoEdge_6__12->SetBinContent(35,0.7577861); DisttoEdge_6__12->SetBinContent(36,0.8062307); DisttoEdge_6__12->SetBinContent(37,0.8748152); DisttoEdge_6__12->SetBinContent(38,0.9201753); DisttoEdge_6__12->SetBinContent(39,1.017427); DisttoEdge_6__12->SetBinContent(40,1.028949); DisttoEdge_6__12->SetBinContent(41,1.080387); DisttoEdge_6__12->SetBinContent(42,1.119578); DisttoEdge_6__12->SetBinContent(43,1.147248); DisttoEdge_6__12->SetBinContent(44,1.165211); DisttoEdge_6__12->SetBinContent(45,1.217919); DisttoEdge_6__12->SetBinContent(46,1.2357); DisttoEdge_6__12->SetBinContent(47,1.277522); DisttoEdge_6__12->SetBinContent(48,1.310726); DisttoEdge_6__12->SetBinContent(49,1.353274); DisttoEdge_6__12->SetBinContent(50,1.405982); DisttoEdge_6__12->SetBinContent(51,1.425759); DisttoEdge_6__12->SetBinContent(52,1.461503); DisttoEdge_6__12->SetBinContent(53,1.514756); DisttoEdge_6__12->SetBinContent(54,1.556215); DisttoEdge_6__12->SetBinContent(55,1.599035); DisttoEdge_6__12->SetBinContent(56,1.642036); DisttoEdge_6__12->SetBinContent(57,1.670432); DisttoEdge_6__12->SetBinContent(58,1.721507); DisttoEdge_6__12->SetBinContent(59,1.774851); DisttoEdge_6__12->SetBinContent(60,1.809596); DisttoEdge_6__12->SetBinContent(61,1.859493); DisttoEdge_6__12->SetBinContent(62,1.899863); DisttoEdge_6__12->SetBinContent(63,1.949578); DisttoEdge_6__12->SetBinContent(64,1.968901); DisttoEdge_6__12->SetBinContent(65,1.986682); DisttoEdge_6__12->SetBinContent(66,1.995845); DisttoEdge_6__12->SetBinContent(67,2.005189); DisttoEdge_6__12->SetBinContent(68,1.992125); DisttoEdge_6__12->SetBinContent(69,2.012356); DisttoEdge_6__12->SetBinContent(70,2.035943); DisttoEdge_6__12->SetBinContent(71,2.011902); DisttoEdge_6__12->SetBinContent(72,2.007729); DisttoEdge_6__12->SetBinContent(73,2.002921); DisttoEdge_6__12->SetBinContent(74,1.982418); DisttoEdge_6__12->SetBinContent(75,1.979243); DisttoEdge_6__12->SetBinContent(76,1.971441); DisttoEdge_6__12->SetBinContent(77,1.976703); DisttoEdge_6__12->SetBinContent(78,1.914741); DisttoEdge_6__12->SetBinContent(79,1.893603); DisttoEdge_6__12->SetBinContent(80,1.851328); DisttoEdge_6__12->SetBinContent(81,1.840895); DisttoEdge_6__12->SetBinContent(82,1.812137); DisttoEdge_6__12->SetBinContent(83,1.74455); DisttoEdge_6__12->SetBinContent(84,1.739651); DisttoEdge_6__12->SetBinContent(85,1.659092); DisttoEdge_6__12->SetBinContent(86,1.595315); DisttoEdge_6__12->SetBinContent(87,1.527729); DisttoEdge_6__12->SetBinContent(88,1.459053); DisttoEdge_6__12->SetBinContent(89,1.357447); DisttoEdge_6__12->SetBinContent(90,1.278339); DisttoEdge_6__12->SetBinContent(91,1.15006); DisttoEdge_6__12->SetBinContent(92,0.700088); DisttoEdge_6__12->SetEntries(1102290); DisttoEdge_6__12->SetStats(0); ci = TColor::GetColor("#0000ff"); DisttoEdge_6__12->SetLineColor(ci); ci = TColor::GetColor("#0000ff"); DisttoEdge_6__12->SetMarkerColor(ci); DisttoEdge_6__12->GetXaxis()->SetTitle("cm"); DisttoEdge_6__12->GetYaxis()->SetTitle("scaled number of entries"); DisttoEdge_6__12->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("DisttoEdge_1","ME11A: mean:-9.2cm;RMS:2.3cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_2","ME11B: mean:-12.0cm;RMS:3.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_3","ME12+13: mean:-18.9cm;RMS:8.0cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_4","ME2: mean:-22.5cm;RMS:10.2cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_5","ME3: mean:-23.0cm;RMS:10.7cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("DisttoEdge_6","ME4: mean:-23.0cm;RMS:10.9cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TPaveText *pt = new TPaveText(0.01,0.9390678,0.263871,0.995,"blNDC"); pt->SetName("title"); pt->SetBorderSize(1); pt->SetFillColor(0); TText *AText = pt->AddText("DisttoEdge"); pt->Draw(); DisttoEdge->Modified(); DisttoEdge->cd(); DisttoEdge->SetSelected(DisttoEdge); }
void Unfold2(int algo= 3,bool useSpectraFromFile=0, bool useMatrixFromFile=0, int doToy = 0, int isMC = 0,char *spectraFileName = (char*)"pbpb_spectra_akPu3PF.root",double recoJetPtCut = 60,double trackMaxPtCut = 0, int nBayesianIter = 4, int doBjets=0) // algo 2 =akpu2 ; 3 =akpu3 ; 4 =akpu4 ;1 = icpu5 { gStyle->SetErrorX(0.5); gStyle->SetPaintTextFormat("3.2f"); gStyle->SetOptLogz(1); gStyle->SetPadRightMargin(0.13); gStyle->SetOptTitle(0); const float pplumi=5.3e9; const bool SavePlot=kTRUE; TH1::SetDefaultSumw2(); TH2::SetDefaultSumw2(); // input files char *fileNamePP_data = (char*)"/net/hidsk0001/d00/scratch/maoyx/pPb/Btag/CodeMatt/NewFormatV4_bFractionMCTemplate_pppp1_SSVHEat2.0FixCL0_bin_0_40_eta_0_2.root"; char *fileNamePbPb_data = (char*)"/net/hidsk0001/d00/scratch/maoyx/pPb/Btag/CodeMatt/AltBinningV6_bFractionMCTemplate_ppPbPb1_SSVHEat2.0FixCL0_bin_0_40_eta_0_2.root"; char *fileNamePP_mc = NULL; if(doBjets) fileNamePP_mc = (char*)"/net/hidsk0001/d00/scratch/kjung/histos/ppMC_ppReco_ak3PF_BjetTrig_noIPupperCut.root"; else fileNamePP_mc = (char*)"/net/hidsk0001/d00/scratch/kjung/histos//ppMC_ppReco_ak3PF_QCDjetTrig_noIPupperCut.root"; char *fileNamePbPb_mc = NULL; if(doBjets)fileNamePbPb_mc = (char*) "/net/hisrv0001/home/mnguyen/scratch/bTaggingOutput/ntuples/PbPbBMC_pt30by3_ipHICalibCentWeight_noTrig.root"; else fileNamePbPb_mc = (char*) "/net/hisrv0001/home/mnguyen/scratch/bTaggingOutput/ntuples/PbPbQCDMC_pt30by3_ipHICalibCentWeight_noTrig.root"; // grab ntuples TFile *infPbPb_mc = new TFile(fileNamePbPb_mc); TFile *infPP_mc = new TFile(fileNamePP_mc); // Output file TFile *pbpb_Unfo; if (isMC) pbpb_Unfo = new TFile(Form("pbpb_Unfo_%s_MC.root",algoName[algo]),"RECREATE"); else pbpb_Unfo = new TFile(Form("pbpb_Unfo_%s_jtpt%.0f_trk%.0f.root",algoName[algo],recoJetPtCut,trackMaxPtCut),"RECREATE"); // Histograms used by RooUnfold UnfoldingHistos *uhist[nbins_cent+1]; // Initialize Histograms for (int i=0;i<=nbins_cent;i++) uhist[i] = new UnfoldingHistos(i); // Initialize reweighting functions TCut dataSelection; TCut dataSelectionPP; TCut TriggerSelectionPP; TCut TriggerSelectionPbPb80; if(doBjets)dataSelection = "weight*(abs(refparton_flavorForB)==5&&abs(jteta)<2)"; else dataSelection = "weight*(abs(jteta)<2)"; if (isMC) cout<<"This is a MC closure test"<<endl; else cout<< "This is a data analysis"<<endl; // Setup jet data branches, basically the jet tree branches are assigned to this object when we loop over the events JetDataPbPb *dataPbPb = new JetDataPbPb(fileNamePbPb_mc,(char*)"nt"); // PbPb data JetDataPP *dataPP = new JetDataPP(fileNamePP_mc,(char*)"nt"); // pp data TFile *fSpectra(0); if (useSpectraFromFile||useMatrixFromFile){ fSpectra = new TFile(spectraFileName,"read"); } // Come back to the output file dir pbpb_Unfo->cd(); // Get Jet spectra from data file cout <<"Reading data..."<<endl; // This doesn't seem to be relevant for the moment -Matt /* TTree *tPbPbJet = (TTree*)infPbPb_mc->Get("nt"); TTree *tPPJet = (TTree*)infPP_mc->Get("nt"); TCanvas * cInput = new TCanvas("cInput","Input",800,400); cInput->Divide(2,1); cout <<"Spectra..."<<endl; for (int i=0;i<=nbins_cent;i++){ cout <<nbins_cent<<endl; TCut centCut = Form("bin<%.0f&&bin>=%.0f",boundaries_cent[i+1],boundaries_cent[i]); if (useSpectraFromFile) { uhist[i]->hMeas = (TH1F*)fSpectra->Get(Form("hMeas_cent%d",i)); } else { if (!isMC) { tPbPbJet->Project(Form("hMeas_cent%d",i),"jtptB", dataSelection&¢Cut&&TriggerSelectionPbPb80); } } if (useMatrixFromFile) { cout <<"Matrix"<<endl; uhist[i]->hMatrixFit = (TH2F*) fSpectra->Get(Form("hMatrixFit_cent%d",i)); uhist[i]->hMeasMatch = (TH1F*)((TH2F*) fSpectra->Get(Form("hMatrixFit_cent%d",i)))->ProjectionY(); uhist[i]->hMeasMatch->Divide(uhist[i]->hMeas); } else { uhist[i]->hMeasMatch = 0; } uhist[i]->hMeas->Draw(); } if (!isMC) tPPJet->Project(Form("hMeas_cent%d",nbins_cent),"jtpt",dataSelectionPP&&TriggerSelectionPP); */ cout <<"MC..."<<endl; TH1F *hCent = new TH1F("hCent","",nbins_cent,boundaries_cent); // Fill PbPb MC if (!useMatrixFromFile) { for (Long64_t jentry2=0; jentry2<dataPbPb->tJet->GetEntries();jentry2++) { dataPbPb->tJet->GetEntry(jentry2); // change when we switch to centrality binning int cBin = 0; //int cBin = hCent->FindBin(dataPbPb->bin)-1; /* if (cBin>=nbins_cent) continue; if (cBin==-1) continue; */ if ( dataPbPb->refpt < 0. ) continue; if ( dataPbPb->jteta > 2. || dataPbPb->jteta < -2. ) continue; if ( dataPbPb->refpt<0) dataPbPb->refpt=0; if (doBjets && fabs(dataPbPb->refparton_flavorForB)!=5) continue; if (doBjets&& dataPbPb->discr_ssvHighEff<2) continue; if (doBjets && dataPbPb->jtptB < recoJetPtCut) continue; if (!doBjets && dataPbPb->jtptA < recoJetPtCut) continue; //if ( dataPbPb->isTrig <1) continue; if(!doBjets)if(dataPbPb->refpt < 50 && dataPbPb->jtptA>120) continue; if(doBjets)if(dataPbPb->refpt < 50 && dataPbPb->jtptB>120) continue; if (!isMC||jentry2 % 2 == 1) { if(doBjets)uhist[cBin]-> hMatrix->Fill(dataPbPb->refpt,dataPbPb->jtptB,dataPbPb->weight); else uhist[cBin]-> hMatrix->Fill(dataPbPb->refpt,dataPbPb->jtptA,dataPbPb->weight); } if (jentry2 % 2 == 0) { uhist[cBin]-> hGen->Fill(dataPbPb->refpt,dataPbPb->weight); if(doBjets)uhist[cBin]-> hMeas->Fill(dataPbPb->jtptB,dataPbPb->weight); else uhist[cBin]-> hMeas->Fill(dataPbPb->jtptA,dataPbPb->weight); //uhist[cBin]-> hMeasJECSys->Fill(dataPbPb->jtpt*(1.+0.02/nbins_cent*(nbins_cent-i)),dataPbPb->weight); // FIXME!!!!!! i is supposed to be a loop over centrality !!!! if(doBjets)uhist[cBin]-> hMeasJECSys->Fill(dataPbPb->jtptB*(1.+0.02/nbins_cent*(nbins_cent-0)),dataPbPb->weight); else uhist[cBin]-> hMeasJECSys->Fill(dataPbPb->jtptA*(1.+0.02/nbins_cent*(nbins_cent-0)),dataPbPb->weight); } } //pp will just fill the last index of the centrality array // fill pp MC for (Long64_t jentry2=0; jentry2<dataPP->tJet->GetEntries();jentry2++) { dataPP->tJet->GetEntry(jentry2); if ( dataPP->refpt<0) continue; if ( dataPP->jteta > 2. || dataPP->jteta < -2. ) continue; if ( dataPP->refpt<0) dataPP->refpt=0; if ( doBjets && fabs(dataPP->refparton_flavorForB)!=5) continue; if ( doBjets && dataPP->discr_ssvHighEff<2) continue; if ( dataPP->jtpt < recoJetPtCut) continue; if (!isMC||jentry2 % 2 == 1) { uhist[nbins_cent]-> hMatrix->Fill(dataPP->refpt,dataPP->jtpt,dataPP->weight); } if (jentry2 % 2 == 0) { uhist[nbins_cent]-> hGen->Fill(dataPP->refpt,dataPP->weight); uhist[nbins_cent]-> hMeas->Fill(dataPP->jtpt,dataPP->weight); } } } cout <<"Response Matrix..."<<endl; TCanvas * cMatrix = new TCanvas("cMatrix","Matrix",800,400); cMatrix->Divide(2,1); for (int i=0;i<=nbins_cent;i++){ cMatrix->cd(i+1); if (!useMatrixFromFile) { TF1 *f = new TF1("f","[0]*pow(x+[2],[1])"); f->SetParameters(1e10,-8.8,40); for (int y=1;y<=uhist[i]->hMatrix->GetNbinsY();y++) { double sum=0; for (int x=1;x<=uhist[i]->hMatrix->GetNbinsX();x++) { if (uhist[i]->hMatrix->GetBinContent(x,y)<=1*uhist[i]->hMatrix->GetBinError(x,y)) { uhist[i]->hMatrix->SetBinContent(x,y,0); uhist[i]->hMatrix->SetBinError(x,y,0); } sum+=uhist[i]->hMatrix->GetBinContent(x,y); } for (int x=1;x<=uhist[i]->hMatrix->GetNbinsX();x++) { double ratio = 1; uhist[i]->hMatrix->SetBinContent(x,y,uhist[i]->hMatrix->GetBinContent(x,y)*ratio); uhist[i]->hMatrix->SetBinError(x,y,uhist[i]->hMatrix->GetBinError(x,y)*ratio); } } } uhist[i]->hResponse = (TH2F*)uhist[i]->hMatrix->Clone(Form("hResponse_cent%d",i)); for (int y=1;y<=uhist[i]->hResponse->GetNbinsY();y++) { double sum=0; for (int x=1;x<=uhist[i]->hResponse->GetNbinsX();x++) { if (uhist[i]->hResponse->GetBinContent(x,y)<=0*uhist[i]->hResponse->GetBinError(x,y)) { uhist[i]->hResponse->SetBinContent(x,y,0); uhist[i]->hResponse->SetBinError(x,y,0); } sum+=uhist[i]->hResponse->GetBinContent(x,y); } for (int x=1;x<=uhist[i]->hResponse->GetNbinsX();x++) { if (sum==0) continue; double ratio = uhist[i]->hMeas->GetBinContent(y)/sum; if (uhist[i]->hMeas->GetBinContent(y)==0) ratio = 1e-100/sum; } } uhist[i]->hResponseNorm = (TH2F*)uhist[i]->hMatrix->Clone(Form("hResponseNorm_cent%d",i)); for (int x=1;x<=uhist[i]->hResponseNorm->GetNbinsX();x++) { double sum=0; for (int y=1;y<=uhist[i]->hResponseNorm->GetNbinsY();y++) { if (uhist[i]->hResponseNorm->GetBinContent(x,y)<=0*uhist[i]->hResponseNorm->GetBinError(x,y)) { uhist[i]->hResponseNorm->SetBinContent(x,y,0); uhist[i]->hResponseNorm->SetBinError(x,y,0); } sum+=uhist[i]->hResponseNorm->GetBinContent(x,y); } for (int y=1;y<=uhist[i]->hResponseNorm->GetNbinsY();y++) { if (sum==0) continue; double ratio = 1./sum; uhist[i]->hResponseNorm->SetBinContent(x,y,uhist[i]->hResponseNorm->GetBinContent(x,y)*ratio); uhist[i]->hResponseNorm->SetBinError(x,y,uhist[i]->hResponseNorm->GetBinError(x,y)*ratio); } } uhist[i]->hResponse->Draw("col"); if (!useMatrixFromFile) uhist[i]->hMatrixFit = uhist[i]->hMatrix; uhist[i]->hMatrixFit->SetName(Form("hMatrixFit_cent%d",i)); } cMatrix->Update(); if (isMC==0) { // Use measured histogram from Matt & Kurt's file // PbPb file: TFile *infMatt = new TFile(fileNamePbPb_data); TH1F *hMattPbPb = NULL; if(doBjets) hMattPbPb = (TH1F*) infMatt->Get("hRawBData"); else hMattPbPb = (TH1F*) infMatt->Get("hIncJetsData"); divideBinWidth(hMattPbPb); // Need to match the binning carefully, please double check whenever you change the binning for (int i=1;i<=hMattPbPb->GetNbinsX();i++) { uhist[0]->hMeas->SetBinContent(i+uhist[0]->hMeas->FindBin(61)-1,hMattPbPb->GetBinContent(i)); uhist[0]->hMeas->SetBinError(i+uhist[0]->hMeas->FindBin(61)-1,hMattPbPb->GetBinError(i)); } // pp file: // The file name needs to be updated!!!!! TFile *infMattPP = new TFile(fileNamePP_data); TH1F *hMattPP = NULL; if(doBjets)hMattPP = (TH1F*) infMattPP->Get("hRawBData"); else hMattPP = (TH1F*) infMattPP->Get("hIncJetsData"); divideBinWidth(hMattPP); // Need to match the binning carefully, please double check whenever you change the binning for (int i=1;i<=hMattPP->GetNbinsX();i++) { uhist[nbins_cent]->hMeas->SetBinContent(i+uhist[nbins_cent]->hMeas->FindBin(61)-1,hMattPP->GetBinContent(i)); uhist[nbins_cent]->hMeas->SetBinError(i+uhist[nbins_cent]->hMeas->FindBin(61)-1,hMattPP->GetBinError(i)); } } pbpb_Unfo->cd(); cout << "==================================== UNFOLD ===================================" << endl; //char chmet[100]; // ======================= Reconstructed pp and PbPb spectra ========================================================= TCanvas * cPbPb = new TCanvas("cPbPb","Comparison",1200,600); cPbPb->Divide(2,1); cPbPb->cd(1); for (int i=0;i<=nbins_cent;i++) { cPbPb->cd(i+1)->SetLogy(); // Do Bin-by-bin TH1F *hBinByBinCorRaw = (TH1F*)uhist[i]->hResponse->ProjectionY(); TH1F *hMCGen = (TH1F*)uhist[i]->hResponse->ProjectionX(); // gen hBinByBinCorRaw->Divide(hMCGen); TF1 *f = new TF1("f","[0]+[1]*x"); hBinByBinCorRaw->Fit("f","LL ","",90,300); TH1F* hBinByBinCor = (TH1F*)hBinByBinCorRaw->Clone();//functionHist(f,hBinByBinCorRaw,Form("hBinByBinCor_cent%d",i)); delete hBinByBinCorRaw; delete hMCGen; uhist[i]->hRecoBinByBin = (TH1F*) uhist[i]->hMeas->Clone(Form("hRecoBinByBin_cent%d",i)); uhist[i]->hRecoBinByBin->Divide(hBinByBinCor); // Do unfolding //if (isMC) uhist[i]->hMeas = (TH1F*)uhist[i]->hMatrix->ProjectionY()->Clone(Form("hMeas_cent%d",i)); prior myPrior(uhist[i]->hMatrixFit,uhist[i]->hMeas,0); // myPrior.unfold(uhist[i]->hMeas,1); myPrior.unfold(uhist[i]->hMeas,nBayesianIter); TH1F *hPrior;//=(TH1F*) functionHist(fPow,uhist[i]->hMeas,Form("hPrior_cent%d",i)); hPrior = (TH1F*)uhist[i]->hGen->Clone("hPrior");//(TH1F*)uhist[i]->hMeas->Clone(Form("hPrior_cent%d",i)); removeZero(hPrior); bayesianUnfold myUnfoldingJECSys(uhist[i]->hMatrixFit,hPrior,0); myUnfoldingJECSys.unfold(uhist[i]->hMeasJECSys,nBayesianIter); bayesianUnfold myUnfoldingSmearSys(uhist[i]->hMatrixFit,hPrior,0); myUnfoldingSmearSys.unfold(uhist[i]->hMeasSmearSys,nBayesianIter); bayesianUnfold myUnfolding(uhist[i]->hMatrixFit,myPrior.hPrior,0); myUnfolding.unfold(uhist[i]->hMeas,nBayesianIter); cout <<"Unfolding bin "<<i<<endl; // Iteration Systematics for (int j=2;j<=40;j++) { bayesianUnfold myUnfoldingSys(uhist[i]->hMatrixFit,hPrior,0); myUnfoldingSys.unfold(uhist[i]->hMeas,j); uhist[i]->hRecoIterSys[j] = (TH1F*) myUnfoldingSys.hPrior->Clone(Form("hRecoRAA_IterSys%d_cent%d",j,i)); } uhist[i]->hReco = (TH1F*) uhist[i]->hRecoIterSys[nBayesianIter]->Clone(Form("Unfolded_cent%i",i)); uhist[i]->hRecoJECSys = (TH1F*) myUnfoldingJECSys.hPrior->Clone(Form("UnfoldedJeCSys_cent%i",i)); uhist[i]->hRecoSmearSys = (TH1F*) myUnfoldingSmearSys.hPrior->Clone(Form("UnfoldedSmearSys_cent%i",i)); uhist[i]->hRecoBinByBin->SetName(Form("UnfoldedBinByBin_cent%i",i)); if (doToy) { TCanvas *cToy = new TCanvas("cToy","toy",600,600); cToy->cd(); int nExp=1000; TH1F *hTmp[nbins_truth+1]; TH1F *hTmp2[nbins_truth+1]; for (int j=1;j<=nbins_truth;j++) { hTmp[j] = new TH1F(Form("hTmp%d",j),"",200,0,10.+uhist[i]->hReco->GetBinContent(j)*2); hTmp2[j] = new TH1F(Form("hTmp2%d",j),"",200,0,10.+uhist[i]->hRecoBinByBin->GetBinContent(j)*2); } for (int exp =0; exp<nExp; exp++) { TH1F *hToy = (TH1F*)uhist[i]->hMeas->Clone(); TH2F *hMatrixToy = (TH2F*)uhist[i]->hMatrixFit->Clone(); hToy->SetName("hToy"); if (exp%100==0) cout <<"Pseudo-experiment "<<exp<<endl; for (int j=1;j<=hToy->GetNbinsX();j++) { double value = gRandom->Poisson(uhist[i]->hMeas->GetBinContent(j)); hToy->SetBinContent(j,value); } for (int j=1;j<=hMatrixToy->GetNbinsX();j++) { for (int k=1;k<=hMatrixToy->GetNbinsY();k++) { double value = gRandom->Gaus(uhist[i]->hMatrixFit->GetBinContent(j,k),uhist[i]->hMatrixFit->GetBinError(j,k)); hMatrixToy->SetBinContent(j,k,value); } } prior myPriorToy(hMatrixToy,hToy,0.0); myPriorToy.unfold(hToy,1); bayesianUnfold myUnfoldingToy(hMatrixToy,myPriorToy.hPrior,0.0); myUnfoldingToy.unfold(hToy,nBayesianIter); TH1F *hRecoTmp = (TH1F*) myUnfoldingToy.hPrior->Clone(); for (int j=1;j<=hRecoTmp->GetNbinsX();j++) { hTmp[j]->Fill(hRecoTmp->GetBinContent(j)); } delete hToy; delete hRecoTmp; delete hMatrixToy; } TF1 *fGaus = new TF1("fGaus","[0]*TMath::Gaus(x,[1],[2])"); for (int j=1;j<=nbins_truth;j++) { f->SetParameters(hTmp[j]->GetMaximum(),hTmp[j]->GetMean(),hTmp[j]->GetRMS()); if (hTmp[j]->GetMean()>0) { hTmp[j]->Fit(fGaus,"LL Q "); hTmp[j]->Fit(fGaus,"LL Q "); uhist[i]->hReco->SetBinError(j,f->GetParameter(2)); } f->SetParameters(hTmp2[j]->GetMaximum(),hTmp2[j]->GetMean(),hTmp2[j]->GetRMS()); if (hTmp2[j]->GetMean()>0) { hTmp2[j]->Fit(fGaus,"LL Q "); hTmp2[j]->Fit(fGaus,"LL Q "); uhist[i]->hRecoBinByBin->SetBinError(j,f->GetParameter(2)); } delete hTmp[j]; delete hTmp2[j]; } cPbPb->cd(i+1); } uhist[i]->hMeas->SetMarkerStyle(20); uhist[i]->hMeas->SetMarkerColor(1); uhist[i]->hReco->SetMarkerStyle(24); uhist[i]->hReco->SetMarkerColor(2); uhist[i]->hReco->SetLineColor(2); uhist[i]->hReco->SetName(Form("hReco_cent%d",i)); uhist[i]->hReco->Draw(""); makeHistTitle(uhist[i]->hReco,"","Jet p_{T} (GeV/c)","dN_{jets} / dp_{T}"); uhist[i]->hReco->GetYaxis()->SetTitleOffset(1.3); uhist[i]->hReco->GetXaxis()->SetTitleOffset(1.2); uhist[i]->hGen->SetLineWidth(1); uhist[i]->hGen->SetLineColor(1); if(isMC)uhist[i]->hGen->Draw("hist same"); uhist[i]->hReco->Draw("same"); uhist[i]->hRecoBinByBin->SetMarkerStyle(28); uhist[i]->hRecoBinByBin->SetMarkerColor(4); uhist[i]->hRecoBinByBin->SetLineColor(4); uhist[i]->hRecoBinByBin->Draw("same"); uhist[i]->hReco->SetAxisRange(60,300); TH1F *hReproduced = (TH1F*)myUnfolding.hReproduced->Clone(Form("hReproduced_cent%d",i)); hReproduced->SetMarkerColor(4); hReproduced->SetMarkerStyle(24); uhist[i]->hMeas->Draw("same"); TLegend *leg = new TLegend(0.5,0.5,0.9,0.9); leg->SetBorderSize(0); leg->SetFillStyle(0); leg->AddEntry(uhist[i]->hMeas,"Measured","pl"); leg->AddEntry(uhist[i]->hReco,"Bayesian unfolded","pl"); leg->AddEntry(uhist[i]->hRecoBinByBin,"Bin-by-bin unfolded","pl"); if(isMC)leg->AddEntry(uhist[i]->hGen,"Generator level truth","l"); leg->Draw(); } cPbPb->Update(); // ======================= Unfolding closure in MC ========================================================= TCanvas * cRatio = new TCanvas("cRatio","Ratio",1200,600); TH1F * hReco[nbins_cent+1]; TH1F * hRecoBinByBin[nbins_cent+1]; TH1F * hMeas[nbins_cent+1]; TH1F * hGen[nbins_cent+1]; TLegend *leg[nbins_cent+1]; TLine *line = new TLine(60,1,250,1); line->SetLineStyle(2); line->SetLineWidth(2); for (int i=0;i<=nbins_cent;i++) { hReco[i] = (TH1F*)uhist[i]->hReco->Clone(Form("hReco_Cen%d", i)); hRecoBinByBin[i] = (TH1F*)uhist[i]->hRecoBinByBin->Clone(Form("hRecoBinByBin_Cen%d", i)); hMeas[i] = (TH1F*)uhist[i]->hMeas->Clone(Form("hMeas_Cen%d", i)); if(isMC) hGen[i] = (TH1F*)uhist[i]->hGen->Clone(Form("hGen_Cen%d", i)); } if(isMC){ cRatio->Divide(2,1); for (int i=0;i<=nbins_cent;i++) { hMeas[i]->Divide(hGen[i]); hRecoBinByBin[i]->Divide(hGen[i]); hReco[i]->Divide(hGen[i]); cRatio->cd(i+1); //hRecoPP->SetAxisRange(90,300,"X"); hReco[i]->SetAxisRange(0,2,"Y"); hReco[i]->SetMarkerStyle(24); hReco[i] ->SetLineColor(2); hReco[i] ->SetMarkerColor(2); hMeas[i]->SetMarkerStyle(20); hMeas[i]->SetLineColor(1); hMeas[i]->SetMarkerColor(1); hRecoBinByBin[i]->SetMarkerStyle(28); hRecoBinByBin[i]->SetLineColor(4); hRecoBinByBin[i]->SetMarkerColor(4); makeHistTitle(hReco[i],"","Jet p_{T} (GeV/c)","Reco / Truth"); hReco[i]->GetYaxis()->SetTitleOffset(1.4); hReco[i]->GetXaxis()->SetTitleOffset(1.2); hReco[i]->Draw(""); hRecoBinByBin[i]->Draw("same"); hMeas[i]->Draw("same"); line->Draw(); leg[i] = myLegend(0.52,0.65,0.85,0.9); leg[i]->AddEntry(hReco[i],"Bayesian","pl"); leg[i]->AddEntry(hRecoBinByBin[i],"Bin-by-bin","pl"); leg[i]->AddEntry(hMeas[i],"no unfolding","pl"); leg[i]->Draw(); putCMSPrel(0.2,0.83,0.06); drawText("Anti-k_{T} Particle Flow Jets R = 0.3",0.2,0.23,20); drawText("CMS Simulation",0.6,0.4,22); drawText("| #eta | <2 ",0.6,0.31,22); } } else { hMeas[nbins_cent]->Scale(1./CorFac[6]/5.3e9); hRecoBinByBin[nbins_cent]->Scale(1./CorFac[6]/5.3e9); hReco[nbins_cent]->Scale(1./CorFac[6]/5.3e9); cRatio->cd(1); for (int i=0;i<nbins_cent;i++) { hMeas[i] ->Scale(1./CorFac[i]/1.0908e9/TAA[i]); hRecoBinByBin[i] ->Scale(1./CorFac[i]/1.0908e9/TAA[i]); hReco[i] ->Scale(1./CorFac[i]/1.0908e9/TAA[i]); hMeas[i]->Divide(hMeas[nbins_cent]); hRecoBinByBin[i]->Divide(hRecoBinByBin[nbins_cent]); hReco[i]->Divide(hReco[nbins_cent]); hReco[i]->SetAxisRange(0,2,"Y"); hReco[i]->SetMarkerStyle(24); hReco[i] ->SetLineColor(2); hReco[i] ->SetMarkerColor(2); hMeas[i]->SetMarkerStyle(20); hMeas[i]->SetLineColor(1); hMeas[i]->SetMarkerColor(1); hRecoBinByBin[i]->SetMarkerStyle(28); hRecoBinByBin[i]->SetLineColor(4); hRecoBinByBin[i]->SetMarkerColor(4); // if(i==0){ makeHistTitle(hReco[i],"","Jet p_{T} (GeV/c)","Spectra Ratio"); hReco[i]->GetYaxis()->SetTitleOffset(1.4); hReco[i]->GetXaxis()->SetTitleOffset(1.2); hReco[i]->Draw(""); leg[i] = myLegend(0.52,0.65,0.85,0.9); leg[i]->AddEntry(hReco[i],"Bayesian","pl"); leg[i]->AddEntry(hRecoBinByBin[i],"Bin-by-bin","pl"); leg[i]->AddEntry(hMeas[i],"no unfolding","pl"); leg[i]->Draw(); // } // else { hReco[i]->Draw("same"); hRecoBinByBin[i]->Draw("same"); hMeas[i]->Draw("same"); // } } line->Draw(); putCMSPrel(0.2,0.83,0.06); drawText(Form("#intL dt = %.f #mub^{-1}",150.),0.2,0.78,22); drawText("Anti-k_{T} Particle Flow Jets R = 0.3",0.2,0.73,20); drawText("| #eta | <2 ",0.6,0.69,22); } cRatio->Update(); pbpb_Unfo->Write(); SysData systematics; // Iteration systematics TCanvas *cIterSys = new TCanvas("cIterSys","IterSys",1200,600); cIterSys->Divide(2,1); cIterSys->cd(2); TH1F *hRecoIterSysPP[100]; TH1F *hRebinPP_tmp = rebin(uhist[nbins_cent]->hReco, (char*)"hRebinPP_tmp"); TLegend *legBayesianIterPP = myLegend(0.4,0.7,0.9,0.9); legBayesianIterPP->AddEntry("","PP",""); for (int j=2;j<7;j++) { hRecoIterSysPP[j] = rebin(uhist[nbins_cent]->hRecoIterSys[j],Form("hRecoIterSysPP_IterSys%d",j)); hRecoIterSysPP[j]->SetLineColor(colorCode[j-2]); hRecoIterSysPP[j]->SetMarkerColor(colorCode[j-2]); hRecoIterSysPP[j]->Divide(hRebinPP_tmp); if (j==2){ // makeHistTitle(hRecoIterSysPP[j],(char*)"",(char*)"Jet p_{T} (GeV/c)",(char*)"Ratio (Unfolded / Nominal)"); makeHistTitle(hRecoIterSysPP[j],"","Jet p_{T} (GeV/c)","Ratio (Unfolded / Nominal)"); hRecoIterSysPP[j]->SetTitleOffset(1.3,"Y"); hRecoIterSysPP[j]->SetTitleOffset(1.2,"X"); hRecoIterSysPP[j]->SetAxisRange(0,2,"Y"); hRecoIterSysPP[j]->Draw(); } else { hRecoIterSysPP[j]->Draw("same"); } checkMaximumSys(systematics.hSysIter[nbins_cent],hRecoIterSysPP[j],0,1.1); legBayesianIterPP->AddEntry(hRecoIterSysPP[j],Form("Iteration %d",j),"pl"); } legBayesianIterPP->Draw(); line->Draw(); drawEnvelope(systematics.hSysIter[nbins_cent],(char*)"hist same"); cIterSys->cd(1); TH1F *hRecoIterSysPbPb[100]; TH1F *hRebinPbPb_tmp = rebin(uhist[0]->hReco, (char*)"hRebinPbPb_tmp"); TLegend *legBayesianIterPbPb = myLegend(0.4,0.7,0.9,0.9); legBayesianIterPbPb->AddEntry("","PbPb",""); for (int j=2;j<7;j++) { hRecoIterSysPbPb[j] = rebin(uhist[0]->hRecoIterSys[j],Form("hRecoIterSysPbPb_IterSys%d",j)); hRecoIterSysPbPb[j]->SetLineColor(colorCode[j-2]); hRecoIterSysPbPb[j]->SetMarkerColor(colorCode[j-2]); hRecoIterSysPbPb[j]->Divide(hRebinPbPb_tmp); if (j==2){ // makeHistTitle(hRecoIterSysPbPb[j],(char*)"",(char*)"Jet p_{T} (GeV/c)",(char*)"Ratio (Unfolded / Nominal)"); makeHistTitle(hRecoIterSysPbPb[j],"","Jet p_{T} (GeV/c)","Ratio (Unfolded / Nominal)"); hRecoIterSysPbPb[j]->SetTitleOffset(1.3,"Y"); hRecoIterSysPbPb[j]->SetTitleOffset(1.2,"X"); hRecoIterSysPbPb[j]->SetAxisRange(0,2,"Y"); hRecoIterSysPbPb[j]->Draw(); } else { hRecoIterSysPbPb[j]->Draw("same"); } checkMaximumSys(systematics.hSysIter[0],hRecoIterSysPbPb[j],0,1.1); legBayesianIterPbPb->AddEntry(hRecoIterSysPbPb[j],Form("Iteration %d",j),"pl"); } legBayesianIterPbPb->Draw(); line->Draw(); drawEnvelope(systematics.hSysIter[0],(char*)"hist same"); cIterSys->Update(); TString data ; if(isMC) data="MC"; else data="Data"; TString anaType ; if(doBjets) anaType="Bjet"; else anaType="Inclusive"; if(SavePlot){ cMatrix->SaveAs(Form("plots/%s%s%sResponseMatrix.gif", data.Data(), anaType.Data(), algoName[algo])); cPbPb->SaveAs(Form("plots/%s%s%sJetSpectra.gif", data.Data(), anaType.Data(), algoName[algo])); cRatio->SaveAs(Form("plots/%s%s%sJetRatio.gif", data.Data(), anaType.Data(), algoName[algo])); cIterSys->SaveAs(Form("plots/%s%s%sIterationSys.gif", data.Data(), anaType.Data(), algoName[algo])); } }
void SegtoLCTXY_2015all_sameYrange_fullIntegral() { //=========Macro generated from canvas: SegtoLCTXY/SegtoLCTXY //========= (Fri Aug 5 09:06:02 2016) by ROOT version6.06/01 TCanvas *SegtoLCTXY = new TCanvas("SegtoLCTXY", "SegtoLCTXY",0,0,500,500); gStyle->SetOptStat(0); SegtoLCTXY->SetHighLightColor(2); SegtoLCTXY->Range(-6.125,-2.123713,45.125,2.123713); SegtoLCTXY->SetFillColor(0); SegtoLCTXY->SetBorderMode(0); SegtoLCTXY->SetBorderSize(2); SegtoLCTXY->SetLogy(); SegtoLCTXY->SetFrameBorderMode(0); SegtoLCTXY->SetFrameBorderMode(0); TH1D *SegtoLCTXY_1__85 = new TH1D("SegtoLCTXY_1__85","SegtoLCTXY",100,-1,40); SegtoLCTXY_1__85->SetBinContent(3,83.85483); SegtoLCTXY_1__85->SetBinContent(4,4.975421); SegtoLCTXY_1__85->SetBinContent(5,3.354198); SegtoLCTXY_1__85->SetBinContent(6,2.52137); SegtoLCTXY_1__85->SetBinContent(7,2.310501); SegtoLCTXY_1__85->SetBinContent(8,0.5602304); SegtoLCTXY_1__85->SetBinContent(9,0.2634187); SegtoLCTXY_1__85->SetBinContent(10,0.1717543); SegtoLCTXY_1__85->SetBinContent(11,0.1882513); SegtoLCTXY_1__85->SetBinContent(12,0.1231948); SegtoLCTXY_1__85->SetBinContent(13,0.1062988); SegtoLCTXY_1__85->SetBinContent(14,0.09645383); SegtoLCTXY_1__85->SetBinContent(15,0.0973851); SegtoLCTXY_1__85->SetBinContent(16,0.08727408); SegtoLCTXY_1__85->SetBinContent(17,0.06439124); SegtoLCTXY_1__85->SetBinContent(18,0.07104323); SegtoLCTXY_1__85->SetBinContent(19,0.06465732); SegtoLCTXY_1__85->SetBinContent(20,0.05481238); SegtoLCTXY_1__85->SetBinContent(21,0.04377008); SegtoLCTXY_1__85->SetBinContent(22,0.05055511); SegtoLCTXY_1__85->SetBinContent(23,0.03911369); SegtoLCTXY_1__85->SetBinContent(24,0.03565466); SegtoLCTXY_1__85->SetBinContent(25,0.03698505); SegtoLCTXY_1__85->SetBinContent(26,0.04097625); SegtoLCTXY_1__85->SetBinContent(27,0.03099826); SegtoLCTXY_1__85->SetBinContent(28,0.03485642); SegtoLCTXY_1__85->SetBinContent(29,0.0324617); SegtoLCTXY_1__85->SetBinContent(30,0.03139738); SegtoLCTXY_1__85->SetBinContent(31,0.02660795); SegtoLCTXY_1__85->SetBinContent(32,0.02953483); SegtoLCTXY_1__85->SetBinContent(33,0.02980091); SegtoLCTXY_1__85->SetBinContent(34,0.03033307); SegtoLCTXY_1__85->SetBinContent(35,0.02288284); SegtoLCTXY_1__85->SetBinContent(36,0.02181852); SegtoLCTXY_1__85->SetBinContent(37,0.02687403); SegtoLCTXY_1__85->SetBinContent(38,0.02235068); SegtoLCTXY_1__85->SetBinContent(39,0.01782733); SegtoLCTXY_1__85->SetBinContent(40,0.01862557); SegtoLCTXY_1__85->SetBinContent(41,0.02048812); SegtoLCTXY_1__85->SetBinContent(42,0.01516653); SegtoLCTXY_1__85->SetBinContent(43,0.01702909); SegtoLCTXY_1__85->SetBinContent(44,0.01596477); SegtoLCTXY_1__85->SetBinContent(45,0.01729517); SegtoLCTXY_1__85->SetBinContent(46,0.01676301); SegtoLCTXY_1__85->SetBinContent(47,0.01250574); SegtoLCTXY_1__85->SetBinContent(48,0.01197358); SegtoLCTXY_1__85->SetBinContent(49,0.01383613); SegtoLCTXY_1__85->SetBinContent(50,0.01223966); SegtoLCTXY_1__85->SetBinContent(51,0.01596477); SegtoLCTXY_1__85->SetBinContent(52,0.01277182); SegtoLCTXY_1__85->SetBinContent(53,0.01330398); SegtoLCTXY_1__85->SetBinContent(54,0.006651988); SegtoLCTXY_1__85->SetBinContent(55,0.009312783); SegtoLCTXY_1__85->SetBinContent(56,0.008514545); SegtoLCTXY_1__85->SetBinContent(57,0.01011102); SegtoLCTXY_1__85->SetBinContent(58,0.008248465); SegtoLCTXY_1__85->SetBinContent(59,0.006651988); SegtoLCTXY_1__85->SetBinContent(60,0.006651988); SegtoLCTXY_1__85->SetBinContent(61,0.007450227); SegtoLCTXY_1__85->SetBinContent(62,0.007716306); SegtoLCTXY_1__85->SetBinContent(63,0.007716306); SegtoLCTXY_1__85->SetBinContent(64,0.007184147); SegtoLCTXY_1__85->SetBinContent(65,0.004390312); SegtoLCTXY_1__85->SetBinContent(66,0.007051107); SegtoLCTXY_1__85->SetBinContent(67,0.00558767); SegtoLCTXY_1__85->SetBinContent(68,0.005853749); SegtoLCTXY_1__85->SetBinContent(69,0.005055511); SegtoLCTXY_1__85->SetBinContent(70,0.006119829); SegtoLCTXY_1__85->SetBinContent(71,0.004523352); SegtoLCTXY_1__85->SetBinContent(72,0.004789431); SegtoLCTXY_1__85->SetBinContent(73,0.004257272); SegtoLCTXY_1__85->SetBinContent(74,0.004656392); SegtoLCTXY_1__85->SetBinContent(75,0.006651988); SegtoLCTXY_1__85->SetBinContent(76,0.004257272); SegtoLCTXY_1__85->SetBinContent(77,0.005055511); SegtoLCTXY_1__85->SetBinContent(78,0.004523352); SegtoLCTXY_1__85->SetBinContent(79,0.004922471); SegtoLCTXY_1__85->SetBinContent(80,0.004257272); SegtoLCTXY_1__85->SetBinContent(81,0.001596477); SegtoLCTXY_1__85->SetBinContent(82,0.002926875); SegtoLCTXY_1__85->SetBinContent(83,0.003725113); SegtoLCTXY_1__85->SetBinContent(84,0.003725113); SegtoLCTXY_1__85->SetBinContent(85,0.004257272); SegtoLCTXY_1__85->SetBinContent(86,0.001862557); SegtoLCTXY_1__85->SetBinContent(87,0.002394716); SegtoLCTXY_1__85->SetBinContent(88,0.003459034); SegtoLCTXY_1__85->SetBinContent(89,0.002394716); SegtoLCTXY_1__85->SetBinContent(90,0.001862557); SegtoLCTXY_1__85->SetBinContent(91,0.001596477); SegtoLCTXY_1__85->SetBinContent(92,0.001330398); SegtoLCTXY_1__85->SetBinContent(93,0.003192954); SegtoLCTXY_1__85->SetBinContent(94,0.001330398); SegtoLCTXY_1__85->SetBinContent(95,0.002394716); SegtoLCTXY_1__85->SetBinContent(96,0.0007982386); SegtoLCTXY_1__85->SetBinContent(97,0.002394716); SegtoLCTXY_1__85->SetBinContent(98,0.003192954); SegtoLCTXY_1__85->SetBinContent(99,0.002128636); SegtoLCTXY_1__85->SetBinContent(100,0.001064318); SegtoLCTXY_1__85->SetBinContent(101,2.265268); SegtoLCTXY_1__85->SetMinimum(0.02); SegtoLCTXY_1__85->SetMaximum(50); SegtoLCTXY_1__85->SetEntries(768682); SegtoLCTXY_1__85->SetStats(0); Int_t ci; // for color index setting TColor *color; // for color definition with alpha ci = TColor::GetColor("#ff00ff"); SegtoLCTXY_1__85->SetLineColor(ci); ci = TColor::GetColor("#ff00ff"); SegtoLCTXY_1__85->SetMarkerColor(ci); SegtoLCTXY_1__85->GetXaxis()->SetTitle("cm"); SegtoLCTXY_1__85->GetYaxis()->SetTitle("scaled number of entries"); SegtoLCTXY_1__85->Draw("H"); TLegend *leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); TLegendEntry *entry=leg->AddEntry("SegtoLCTXY_1","ME11A: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_2","ME11B: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_3","ME12+13: mean:0.8cm;RMS:1.8cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_4","ME2: mean:0.4cm;RMS:1.4cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_5","ME3: mean:0.5cm;RMS:1.2cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_6","ME4: mean:0.6cm;RMS:1.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *SegtoLCTXY_2__86 = new TH1D("SegtoLCTXY_2__86","SegtoLCTXY",100,-1,40); SegtoLCTXY_2__86->SetBinContent(3,75.44745); SegtoLCTXY_2__86->SetBinContent(4,5.468124); SegtoLCTXY_2__86->SetBinContent(5,5.98796); SegtoLCTXY_2__86->SetBinContent(6,4.774382); SegtoLCTXY_2__86->SetBinContent(7,4.827162); SegtoLCTXY_2__86->SetBinContent(8,0.9908015); SegtoLCTXY_2__86->SetBinContent(9,0.3601927); SegtoLCTXY_2__86->SetBinContent(10,0.2626692); SegtoLCTXY_2__86->SetBinContent(11,0.2477547); SegtoLCTXY_2__86->SetBinContent(12,0.1857074); SegtoLCTXY_2__86->SetBinContent(13,0.127787); SegtoLCTXY_2__86->SetBinContent(14,0.09810274); SegtoLCTXY_2__86->SetBinContent(15,0.07993021); SegtoLCTXY_2__86->SetBinContent(16,0.07160414); SegtoLCTXY_2__86->SetBinContent(17,0.06233687); SegtoLCTXY_2__86->SetBinContent(18,0.05697923); SegtoLCTXY_2__86->SetBinContent(19,0.0528524); SegtoLCTXY_2__86->SetBinContent(20,0.04191992); SegtoLCTXY_2__86->SetBinContent(21,0.03764829); SegtoLCTXY_2__86->SetBinContent(22,0.03554867); SegtoLCTXY_2__86->SetBinContent(23,0.03525907); SegtoLCTXY_2__86->SetBinContent(24,0.03381106); SegtoLCTXY_2__86->SetBinContent(25,0.02874302); SegtoLCTXY_2__86->SetBinContent(26,0.0266434); SegtoLCTXY_2__86->SetBinContent(27,0.02135816); SegtoLCTXY_2__86->SetBinContent(28,0.02324058); SegtoLCTXY_2__86->SetBinContent(29,0.02447139); SegtoLCTXY_2__86->SetBinContent(30,0.02114096); SegtoLCTXY_2__86->SetBinContent(31,0.01838974); SegtoLCTXY_2__86->SetBinContent(32,0.02172016); SegtoLCTXY_2__86->SetBinContent(33,0.02012735); SegtoLCTXY_2__86->SetBinContent(34,0.01759333); SegtoLCTXY_2__86->SetBinContent(35,0.01969295); SegtoLCTXY_2__86->SetBinContent(36,0.01730373); SegtoLCTXY_2__86->SetBinContent(37,0.01723133); SegtoLCTXY_2__86->SetBinContent(38,0.01694173); SegtoLCTXY_2__86->SetBinContent(39,0.01491451); SegtoLCTXY_2__86->SetBinContent(40,0.01824494); SegtoLCTXY_2__86->SetBinContent(41,0.01723133); SegtoLCTXY_2__86->SetBinContent(42,0.01520412); SegtoLCTXY_2__86->SetBinContent(43,0.01071528); SegtoLCTXY_2__86->SetBinContent(44,0.0128149); SegtoLCTXY_2__86->SetBinContent(45,0.0134665); SegtoLCTXY_2__86->SetBinContent(46,0.01505931); SegtoLCTXY_2__86->SetBinContent(47,0.01448011); SegtoLCTXY_2__86->SetBinContent(48,0.01476971); SegtoLCTXY_2__86->SetBinContent(49,0.008977668); SegtoLCTXY_2__86->SetBinContent(50,0.0130321); SegtoLCTXY_2__86->SetBinContent(51,0.01187369); SegtoLCTXY_2__86->SetBinContent(52,0.008977668); SegtoLCTXY_2__86->SetBinContent(53,0.009701674); SegtoLCTXY_2__86->SetBinContent(54,0.01028088); SegtoLCTXY_2__86->SetBinContent(55,0.01013608); SegtoLCTXY_2__86->SetBinContent(56,0.009846475); SegtoLCTXY_2__86->SetBinContent(57,0.009991276); SegtoLCTXY_2__86->SetBinContent(58,0.007529657); SegtoLCTXY_2__86->SetBinContent(59,0.00926727); SegtoLCTXY_2__86->SetBinContent(60,0.00666085); SegtoLCTXY_2__86->SetBinContent(61,0.004923237); SegtoLCTXY_2__86->SetBinContent(62,0.00666085); SegtoLCTXY_2__86->SetBinContent(63,0.006371248); SegtoLCTXY_2__86->SetBinContent(64,0.01028088); SegtoLCTXY_2__86->SetBinContent(65,0.006733251); SegtoLCTXY_2__86->SetBinContent(66,0.005357641); SegtoLCTXY_2__86->SetBinContent(67,0.004923237); SegtoLCTXY_2__86->SetBinContent(68,0.006226447); SegtoLCTXY_2__86->SetBinContent(69,0.00521284); SegtoLCTXY_2__86->SetBinContent(70,0.004199232); SegtoLCTXY_2__86->SetBinContent(71,0.00521284); SegtoLCTXY_2__86->SetBinContent(72,0.00390963); SegtoLCTXY_2__86->SetBinContent(73,0.004054431); SegtoLCTXY_2__86->SetBinContent(74,0.005068038); SegtoLCTXY_2__86->SetBinContent(75,0.004054431); SegtoLCTXY_2__86->SetBinContent(76,0.00390963); SegtoLCTXY_2__86->SetBinContent(77,0.004923237); SegtoLCTXY_2__86->SetBinContent(78,0.002896022); SegtoLCTXY_2__86->SetBinContent(79,0.003185624); SegtoLCTXY_2__86->SetBinContent(80,0.00390963); SegtoLCTXY_2__86->SetBinContent(81,0.003620027); SegtoLCTXY_2__86->SetBinContent(82,0.002172016); SegtoLCTXY_2__86->SetBinContent(83,0.002461619); SegtoLCTXY_2__86->SetBinContent(84,0.004488834); SegtoLCTXY_2__86->SetBinContent(85,0.003330425); SegtoLCTXY_2__86->SetBinContent(86,0.004344033); SegtoLCTXY_2__86->SetBinContent(87,0.001882414); SegtoLCTXY_2__86->SetBinContent(88,0.003692428); SegtoLCTXY_2__86->SetBinContent(89,0.002316818); SegtoLCTXY_2__86->SetBinContent(90,0.00260642); SegtoLCTXY_2__86->SetBinContent(91,0.003764829); SegtoLCTXY_2__86->SetBinContent(92,0.002751221); SegtoLCTXY_2__86->SetBinContent(93,0.003185624); SegtoLCTXY_2__86->SetBinContent(94,0.001882414); SegtoLCTXY_2__86->SetBinContent(95,0.002172016); SegtoLCTXY_2__86->SetBinContent(96,0.001448011); SegtoLCTXY_2__86->SetBinContent(97,0.002316818); SegtoLCTXY_2__86->SetBinContent(98,0.001882414); SegtoLCTXY_2__86->SetBinContent(99,0.001737613); SegtoLCTXY_2__86->SetBinContent(100,0.002172016); SegtoLCTXY_2__86->SetBinContent(101,1.469731); SegtoLCTXY_2__86->SetEntries(1401505); SegtoLCTXY_2__86->SetStats(0); ci = TColor::GetColor("#ff9999"); SegtoLCTXY_2__86->SetLineColor(ci); ci = TColor::GetColor("#ff9999"); SegtoLCTXY_2__86->SetMarkerColor(ci); SegtoLCTXY_2__86->GetXaxis()->SetTitle("cm"); SegtoLCTXY_2__86->GetYaxis()->SetTitle("scaled number of entries"); SegtoLCTXY_2__86->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("SegtoLCTXY_1","ME11A: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_2","ME11B: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_3","ME12+13: mean:0.8cm;RMS:1.8cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_4","ME2: mean:0.4cm;RMS:1.4cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_5","ME3: mean:0.5cm;RMS:1.2cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_6","ME4: mean:0.6cm;RMS:1.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *SegtoLCTXY_3__87 = new TH1D("SegtoLCTXY_3__87","SegtoLCTXY",100,-1,40); SegtoLCTXY_3__87->SetBinContent(3,52.28309); SegtoLCTXY_3__87->SetBinContent(4,13.35361); SegtoLCTXY_3__87->SetBinContent(5,6.225308); SegtoLCTXY_3__87->SetBinContent(6,10.4397); SegtoLCTXY_3__87->SetBinContent(7,6.743384); SegtoLCTXY_3__87->SetBinContent(8,3.390905); SegtoLCTXY_3__87->SetBinContent(9,2.427848); SegtoLCTXY_3__87->SetBinContent(10,1.31087); SegtoLCTXY_3__87->SetBinContent(11,1.108586); SegtoLCTXY_3__87->SetBinContent(12,0.9632775); SegtoLCTXY_3__87->SetBinContent(13,0.4147261); SegtoLCTXY_3__87->SetBinContent(14,0.2124422); SegtoLCTXY_3__87->SetBinContent(15,0.1318378); SegtoLCTXY_3__87->SetBinContent(16,0.09142524); SegtoLCTXY_3__87->SetBinContent(17,0.07287519); SegtoLCTXY_3__87->SetBinContent(18,0.05587098); SegtoLCTXY_3__87->SetBinContent(19,0.05057097); SegtoLCTXY_3__87->SetBinContent(20,0.04284178); SegtoLCTXY_3__87->SetBinContent(21,0.04394595); SegtoLCTXY_3__87->SetBinContent(22,0.02981258); SegtoLCTXY_3__87->SetBinContent(23,0.02716257); SegtoLCTXY_3__87->SetBinContent(24,0.03047508); SegtoLCTXY_3__87->SetBinContent(25,0.01899172); SegtoLCTXY_3__87->SetBinContent(26,0.03224175); SegtoLCTXY_3__87->SetBinContent(27,0.02142089); SegtoLCTXY_3__87->SetBinContent(28,0.01545837); SegtoLCTXY_3__87->SetBinContent(29,0.01722505); SegtoLCTXY_3__87->SetBinContent(30,0.01678338); SegtoLCTXY_3__87->SetBinContent(31,0.01590004); SegtoLCTXY_3__87->SetBinContent(32,0.01413337); SegtoLCTXY_3__87->SetBinContent(33,0.01656254); SegtoLCTXY_3__87->SetBinContent(34,0.0123667); SegtoLCTXY_3__87->SetBinContent(35,0.0110417); SegtoLCTXY_3__87->SetBinContent(36,0.01015836); SegtoLCTXY_3__87->SetBinContent(37,0.01413337); SegtoLCTXY_3__87->SetBinContent(38,0.009275024); SegtoLCTXY_3__87->SetBinContent(39,0.009716692); SegtoLCTXY_3__87->SetBinContent(40,0.005300014); SegtoLCTXY_3__87->SetBinContent(41,0.0123667); SegtoLCTXY_3__87->SetBinContent(42,0.00618335); SegtoLCTXY_3__87->SetBinContent(43,0.008833357); SegtoLCTXY_3__87->SetBinContent(44,0.005741682); SegtoLCTXY_3__87->SetBinContent(45,0.007729187); SegtoLCTXY_3__87->SetBinContent(46,0.007950021); SegtoLCTXY_3__87->SetBinContent(47,0.007066685); SegtoLCTXY_3__87->SetBinContent(48,0.01060003); SegtoLCTXY_3__87->SetBinContent(49,0.007066685); SegtoLCTXY_3__87->SetBinContent(50,0.005300014); SegtoLCTXY_3__87->SetBinContent(51,0.005741682); SegtoLCTXY_3__87->SetBinContent(52,0.005741682); SegtoLCTXY_3__87->SetBinContent(53,0.008391689); SegtoLCTXY_3__87->SetBinContent(54,0.006625017); SegtoLCTXY_3__87->SetBinContent(55,0.009716692); SegtoLCTXY_3__87->SetBinContent(56,0.005300014); SegtoLCTXY_3__87->SetBinContent(57,0.007066685); SegtoLCTXY_3__87->SetBinContent(58,0.00618335); SegtoLCTXY_3__87->SetBinContent(59,0.009716692); SegtoLCTXY_3__87->SetBinContent(60,0.006625017); SegtoLCTXY_3__87->SetBinContent(61,0.004416678); SegtoLCTXY_3__87->SetBinContent(62,0.007508353); SegtoLCTXY_3__87->SetBinContent(63,0.002650007); SegtoLCTXY_3__87->SetBinContent(64,0.00397501); SegtoLCTXY_3__87->SetBinContent(65,0.004858346); SegtoLCTXY_3__87->SetBinContent(66,0.005741682); SegtoLCTXY_3__87->SetBinContent(67,0.00397501); SegtoLCTXY_3__87->SetBinContent(68,0.003312509); SegtoLCTXY_3__87->SetBinContent(69,0.005300014); SegtoLCTXY_3__87->SetBinContent(70,0.002208339); SegtoLCTXY_3__87->SetBinContent(71,0.007066685); SegtoLCTXY_3__87->SetBinContent(72,0.004416678); SegtoLCTXY_3__87->SetBinContent(73,0.00397501); SegtoLCTXY_3__87->SetBinContent(74,0.00397501); SegtoLCTXY_3__87->SetBinContent(75,0.007508353); SegtoLCTXY_3__87->SetBinContent(76,0.002650007); SegtoLCTXY_3__87->SetBinContent(77,0.004416678); SegtoLCTXY_3__87->SetBinContent(78,0.00397501); SegtoLCTXY_3__87->SetBinContent(79,0.00397501); SegtoLCTXY_3__87->SetBinContent(80,0.005300014); SegtoLCTXY_3__87->SetBinContent(81,0.00397501); SegtoLCTXY_3__87->SetBinContent(82,0.003533343); SegtoLCTXY_3__87->SetBinContent(83,0.005300014); SegtoLCTXY_3__87->SetBinContent(84,0.00397501); SegtoLCTXY_3__87->SetBinContent(85,0.002650007); SegtoLCTXY_3__87->SetBinContent(86,0.002650007); SegtoLCTXY_3__87->SetBinContent(87,0.004416678); SegtoLCTXY_3__87->SetBinContent(88,0.003533343); SegtoLCTXY_3__87->SetBinContent(89,0.00618335); SegtoLCTXY_3__87->SetBinContent(90,0.005741682); SegtoLCTXY_3__87->SetBinContent(91,0.004858346); SegtoLCTXY_3__87->SetBinContent(92,0.002650007); SegtoLCTXY_3__87->SetBinContent(93,0.002208339); SegtoLCTXY_3__87->SetBinContent(94,0.002208339); SegtoLCTXY_3__87->SetBinContent(95,0.003091675); SegtoLCTXY_3__87->SetBinContent(96,0.002650007); SegtoLCTXY_3__87->SetBinContent(97,0.001766671); SegtoLCTXY_3__87->SetBinContent(98,0.002208339); SegtoLCTXY_3__87->SetBinContent(99,0.001325003); SegtoLCTXY_3__87->SetBinContent(100,0.002650007); SegtoLCTXY_3__87->SetBinContent(101,1.120732); SegtoLCTXY_3__87->SetEntries(457904); SegtoLCTXY_3__87->SetStats(0); SegtoLCTXY_3__87->GetXaxis()->SetTitle("cm"); SegtoLCTXY_3__87->GetYaxis()->SetTitle("scaled number of entries"); SegtoLCTXY_3__87->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("SegtoLCTXY_1","ME11A: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_2","ME11B: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_3","ME12+13: mean:0.8cm;RMS:1.8cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_4","ME2: mean:0.4cm;RMS:1.4cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_5","ME3: mean:0.5cm;RMS:1.2cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_6","ME4: mean:0.6cm;RMS:1.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *SegtoLCTXY_4__88 = new TH1D("SegtoLCTXY_4__88","SegtoLCTXY",100,-1,40); SegtoLCTXY_4__88->SetBinContent(3,69.50627); SegtoLCTXY_4__88->SetBinContent(4,9.555916); SegtoLCTXY_4__88->SetBinContent(5,7.98885); SegtoLCTXY_4__88->SetBinContent(6,3.796497); SegtoLCTXY_4__88->SetBinContent(7,2.927531); SegtoLCTXY_4__88->SetBinContent(8,1.151423); SegtoLCTXY_4__88->SetBinContent(9,2.322047); SegtoLCTXY_4__88->SetBinContent(10,0.8579425); SegtoLCTXY_4__88->SetBinContent(11,0.5186509); SegtoLCTXY_4__88->SetBinContent(12,0.3525742); SegtoLCTXY_4__88->SetBinContent(13,0.1777328); SegtoLCTXY_4__88->SetBinContent(14,0.1042271); SegtoLCTXY_4__88->SetBinContent(15,0.09202891); SegtoLCTXY_4__88->SetBinContent(16,0.0687619); SegtoLCTXY_4__88->SetBinContent(17,0.05624742); SegtoLCTXY_4__88->SetBinContent(18,0.04662436); SegtoLCTXY_4__88->SetBinContent(19,0.03795006); SegtoLCTXY_4__88->SetBinContent(20,0.03198648); SegtoLCTXY_4__88->SetBinContent(21,0.02832701); SegtoLCTXY_4__88->SetBinContent(22,0.02511933); SegtoLCTXY_4__88->SetBinContent(23,0.02168575); SegtoLCTXY_4__88->SetBinContent(24,0.01843289); SegtoLCTXY_4__88->SetBinContent(25,0.01807146); SegtoLCTXY_4__88->SetBinContent(26,0.01752932); SegtoLCTXY_4__88->SetBinContent(27,0.01237895); SegtoLCTXY_4__88->SetBinContent(28,0.01251449); SegtoLCTXY_4__88->SetBinContent(29,0.01346324); SegtoLCTXY_4__88->SetBinContent(30,0.009577873); SegtoLCTXY_4__88->SetBinContent(31,0.01039109); SegtoLCTXY_4__88->SetBinContent(32,0.009668231); SegtoLCTXY_4__88->SetBinContent(33,0.009487516); SegtoLCTXY_4__88->SetBinContent(34,0.007590013); SegtoLCTXY_4__88->SetBinContent(35,0.01021037); SegtoLCTXY_4__88->SetBinContent(36,0.006776797); SegtoLCTXY_4__88->SetBinContent(37,0.006415368); SegtoLCTXY_4__88->SetBinContent(38,0.007770727); SegtoLCTXY_4__88->SetBinContent(39,0.004788937); SegtoLCTXY_4__88->SetBinContent(40,0.005240723); SegtoLCTXY_4__88->SetBinContent(41,0.005240723); SegtoLCTXY_4__88->SetBinContent(42,0.005466616); SegtoLCTXY_4__88->SetBinContent(43,0.005105187); SegtoLCTXY_4__88->SetBinContent(44,0.005918403); SegtoLCTXY_4__88->SetBinContent(45,0.004879294); SegtoLCTXY_4__88->SetBinContent(46,0.003885364); SegtoLCTXY_4__88->SetBinContent(47,0.002801076); SegtoLCTXY_4__88->SetBinContent(48,0.003704649); SegtoLCTXY_4__88->SetBinContent(49,0.00433715); SegtoLCTXY_4__88->SetBinContent(50,0.003252863); SegtoLCTXY_4__88->SetBinContent(51,0.003252863); SegtoLCTXY_4__88->SetBinContent(52,0.003252863); SegtoLCTXY_4__88->SetBinContent(53,0.003523935); SegtoLCTXY_4__88->SetBinContent(54,0.002258932); SegtoLCTXY_4__88->SetBinContent(55,0.003433577); SegtoLCTXY_4__88->SetBinContent(56,0.002575183); SegtoLCTXY_4__88->SetBinContent(57,0.002981791); SegtoLCTXY_4__88->SetBinContent(58,0.002801076); SegtoLCTXY_4__88->SetBinContent(59,0.002891433); SegtoLCTXY_4__88->SetBinContent(60,0.002710719); SegtoLCTXY_4__88->SetBinContent(61,0.003252863); SegtoLCTXY_4__88->SetBinContent(62,0.002530004); SegtoLCTXY_4__88->SetBinContent(63,0.002891433); SegtoLCTXY_4__88->SetBinContent(64,0.002258932); SegtoLCTXY_4__88->SetBinContent(65,0.002258932); SegtoLCTXY_4__88->SetBinContent(66,0.00234929); SegtoLCTXY_4__88->SetBinContent(67,0.003162505); SegtoLCTXY_4__88->SetBinContent(68,0.001897503); SegtoLCTXY_4__88->SetBinContent(69,0.002078218); SegtoLCTXY_4__88->SetBinContent(70,0.001536074); SegtoLCTXY_4__88->SetBinContent(71,0.002530004); SegtoLCTXY_4__88->SetBinContent(72,0.001626431); SegtoLCTXY_4__88->SetBinContent(73,0.001355359); SegtoLCTXY_4__88->SetBinContent(74,0.00234929); SegtoLCTXY_4__88->SetBinContent(75,0.001626431); SegtoLCTXY_4__88->SetBinContent(76,0.001626431); SegtoLCTXY_4__88->SetBinContent(77,0.001536074); SegtoLCTXY_4__88->SetBinContent(78,0.001536074); SegtoLCTXY_4__88->SetBinContent(79,0.001174645); SegtoLCTXY_4__88->SetBinContent(80,0.002439647); SegtoLCTXY_4__88->SetBinContent(81,0.00198786); SegtoLCTXY_4__88->SetBinContent(82,0.00198786); SegtoLCTXY_4__88->SetBinContent(83,0.001807146); SegtoLCTXY_4__88->SetBinContent(84,0.002168575); SegtoLCTXY_4__88->SetBinContent(85,0.002620362); SegtoLCTXY_4__88->SetBinContent(86,0.0009939302); SegtoLCTXY_4__88->SetBinContent(87,0.002078218); SegtoLCTXY_4__88->SetBinContent(88,0.001265002); SegtoLCTXY_4__88->SetBinContent(89,0.001536074); SegtoLCTXY_4__88->SetBinContent(90,0.001536074); SegtoLCTXY_4__88->SetBinContent(91,0.001626431); SegtoLCTXY_4__88->SetBinContent(92,0.001807146); SegtoLCTXY_4__88->SetBinContent(93,0.001626431); SegtoLCTXY_4__88->SetBinContent(94,0.001716789); SegtoLCTXY_4__88->SetBinContent(95,0.002168575); SegtoLCTXY_4__88->SetBinContent(96,0.00198786); SegtoLCTXY_4__88->SetBinContent(97,0.001355359); SegtoLCTXY_4__88->SetBinContent(98,0.001716789); SegtoLCTXY_4__88->SetBinContent(99,0.001129466); SegtoLCTXY_4__88->SetBinContent(100,0.001897503); SegtoLCTXY_4__88->SetBinContent(101,1.295181); SegtoLCTXY_4__88->SetEntries(2242103); SegtoLCTXY_4__88->SetStats(0); ci = TColor::GetColor("#ff0000"); SegtoLCTXY_4__88->SetLineColor(ci); ci = TColor::GetColor("#ff0000"); SegtoLCTXY_4__88->SetMarkerColor(ci); SegtoLCTXY_4__88->GetXaxis()->SetTitle("cm"); SegtoLCTXY_4__88->GetYaxis()->SetTitle("scaled number of entries"); SegtoLCTXY_4__88->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("SegtoLCTXY_1","ME11A: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_2","ME11B: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_3","ME12+13: mean:0.8cm;RMS:1.8cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_4","ME2: mean:0.4cm;RMS:1.4cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_5","ME3: mean:0.5cm;RMS:1.2cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_6","ME4: mean:0.6cm;RMS:1.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *SegtoLCTXY_5__89 = new TH1D("SegtoLCTXY_5__89","SegtoLCTXY",100,-1,40); SegtoLCTXY_5__89->SetBinContent(3,63.26456); SegtoLCTXY_5__89->SetBinContent(4,11.68324); SegtoLCTXY_5__89->SetBinContent(5,9.308105); SegtoLCTXY_5__89->SetBinContent(6,4.112811); SegtoLCTXY_5__89->SetBinContent(7,4.384166); SegtoLCTXY_5__89->SetBinContent(8,2.208953); SegtoLCTXY_5__89->SetBinContent(9,3.275674); SegtoLCTXY_5__89->SetBinContent(10,0.5539761); SegtoLCTXY_5__89->SetBinContent(11,0.2316224); SegtoLCTXY_5__89->SetBinContent(12,0.1429886); SegtoLCTXY_5__89->SetBinContent(13,0.1133841); SegtoLCTXY_5__89->SetBinContent(14,0.09222947); SegtoLCTXY_5__89->SetBinContent(15,0.07520987); SegtoLCTXY_5__89->SetBinContent(16,0.05483429); SegtoLCTXY_5__89->SetBinContent(17,0.04692377); SegtoLCTXY_5__89->SetBinContent(18,0.04176994); SegtoLCTXY_5__89->SetBinContent(19,0.04063131); SegtoLCTXY_5__89->SetBinContent(20,0.02852581); SegtoLCTXY_5__89->SetBinContent(21,0.02780668); SegtoLCTXY_5__89->SetBinContent(22,0.02313228); SegtoLCTXY_5__89->SetBinContent(23,0.01893731); SegtoLCTXY_5__89->SetBinContent(24,0.01917702); SegtoLCTXY_5__89->SetBinContent(25,0.02133443); SegtoLCTXY_5__89->SetBinContent(26,0.01953659); SegtoLCTXY_5__89->SetBinContent(27,0.01354377); SegtoLCTXY_5__89->SetBinContent(28,0.01234521); SegtoLCTXY_5__89->SetBinContent(29,0.009828222); SegtoLCTXY_5__89->SetBinContent(30,0.01054736); SegtoLCTXY_5__89->SetBinContent(31,0.009348796); SegtoLCTXY_5__89->SetBinContent(32,0.007371166); SegtoLCTXY_5__89->SetBinContent(33,0.006711956); SegtoLCTXY_5__89->SetBinContent(34,0.008270089); SegtoLCTXY_5__89->SetBinContent(35,0.004674398); SegtoLCTXY_5__89->SetBinContent(36,0.005633249); SegtoLCTXY_5__89->SetBinContent(37,0.004794255); SegtoLCTXY_5__89->SetBinContent(38,0.005033967); SegtoLCTXY_5__89->SetBinContent(39,0.004314829); SegtoLCTXY_5__89->SetBinContent(40,0.00395526); SegtoLCTXY_5__89->SetBinContent(41,0.005153824); SegtoLCTXY_5__89->SetBinContent(42,0.002756696); SegtoLCTXY_5__89->SetBinContent(43,0.004254901); SegtoLCTXY_5__89->SetBinContent(44,0.002157415); SegtoLCTXY_5__89->SetBinContent(45,0.003595691); SegtoLCTXY_5__89->SetBinContent(46,0.002756696); SegtoLCTXY_5__89->SetBinContent(47,0.002996409); SegtoLCTXY_5__89->SetBinContent(48,0.004194973); SegtoLCTXY_5__89->SetBinContent(49,0.002816625); SegtoLCTXY_5__89->SetBinContent(50,0.002516984); SegtoLCTXY_5__89->SetBinContent(51,0.002996409); SegtoLCTXY_5__89->SetBinContent(52,0.002277271); SegtoLCTXY_5__89->SetBinContent(53,0.002397127); SegtoLCTXY_5__89->SetBinContent(54,0.001917702); SegtoLCTXY_5__89->SetBinContent(55,0.001438276); SegtoLCTXY_5__89->SetBinContent(56,0.00197763); SegtoLCTXY_5__89->SetBinContent(57,0.002816625); SegtoLCTXY_5__89->SetBinContent(58,0.0009588509); SegtoLCTXY_5__89->SetBinContent(59,0.00263684); SegtoLCTXY_5__89->SetBinContent(60,0.002876553); SegtoLCTXY_5__89->SetBinContent(61,0.001558133); SegtoLCTXY_5__89->SetBinContent(62,0.001917702); SegtoLCTXY_5__89->SetBinContent(63,0.001797845); SegtoLCTXY_5__89->SetBinContent(64,0.001797845); SegtoLCTXY_5__89->SetBinContent(65,0.0007191382); SegtoLCTXY_5__89->SetBinContent(66,0.001558133); SegtoLCTXY_5__89->SetBinContent(67,0.001078707); SegtoLCTXY_5__89->SetBinContent(68,0.0003595691); SegtoLCTXY_5__89->SetBinContent(69,0.00131842); SegtoLCTXY_5__89->SetBinContent(70,0.001917702); SegtoLCTXY_5__89->SetBinContent(71,0.001198564); SegtoLCTXY_5__89->SetBinContent(72,0.002516984); SegtoLCTXY_5__89->SetBinContent(73,0.00131842); SegtoLCTXY_5__89->SetBinContent(74,0.0008389945); SegtoLCTXY_5__89->SetBinContent(75,0.001438276); SegtoLCTXY_5__89->SetBinContent(76,0.0005992818); SegtoLCTXY_5__89->SetBinContent(77,0.001558133); SegtoLCTXY_5__89->SetBinContent(78,0.002157415); SegtoLCTXY_5__89->SetBinContent(79,0.001198564); SegtoLCTXY_5__89->SetBinContent(80,0.001917702); SegtoLCTXY_5__89->SetBinContent(81,0.001558133); SegtoLCTXY_5__89->SetBinContent(82,0.0009588509); SegtoLCTXY_5__89->SetBinContent(83,0.00131842); SegtoLCTXY_5__89->SetBinContent(84,0.0008389945); SegtoLCTXY_5__89->SetBinContent(85,0.0007191382); SegtoLCTXY_5__89->SetBinContent(86,0.001198564); SegtoLCTXY_5__89->SetBinContent(87,0.00131842); SegtoLCTXY_5__89->SetBinContent(88,0.001078707); SegtoLCTXY_5__89->SetBinContent(89,0.00131842); SegtoLCTXY_5__89->SetBinContent(90,0.0003595691); SegtoLCTXY_5__89->SetBinContent(91,0.001018779); SegtoLCTXY_5__89->SetBinContent(92,0.0003595691); SegtoLCTXY_5__89->SetBinContent(93,0.00131842); SegtoLCTXY_5__89->SetBinContent(94,0.001558133); SegtoLCTXY_5__89->SetBinContent(95,0.001078707); SegtoLCTXY_5__89->SetBinContent(96,0.0007191382); SegtoLCTXY_5__89->SetBinContent(97,0.0007191382); SegtoLCTXY_5__89->SetBinContent(98,0.0005992818); SegtoLCTXY_5__89->SetBinContent(99,0.001198564); SegtoLCTXY_5__89->SetBinContent(100,0.0005992818); SegtoLCTXY_5__89->SetBinContent(101,0.568239); SegtoLCTXY_5__89->SetEntries(1678146); SegtoLCTXY_5__89->SetStats(0); ci = TColor::GetColor("#00ff00"); SegtoLCTXY_5__89->SetLineColor(ci); ci = TColor::GetColor("#00ff00"); SegtoLCTXY_5__89->SetMarkerColor(ci); SegtoLCTXY_5__89->GetXaxis()->SetTitle("cm"); SegtoLCTXY_5__89->GetYaxis()->SetTitle("scaled number of entries"); SegtoLCTXY_5__89->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("SegtoLCTXY_1","ME11A: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_2","ME11B: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_3","ME12+13: mean:0.8cm;RMS:1.8cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_4","ME2: mean:0.4cm;RMS:1.4cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_5","ME3: mean:0.5cm;RMS:1.2cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_6","ME4: mean:0.6cm;RMS:1.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TH1D *SegtoLCTXY_6__90 = new TH1D("SegtoLCTXY_6__90","SegtoLCTXY",100,-1,40); SegtoLCTXY_6__90->SetBinContent(3,59.50759); SegtoLCTXY_6__90->SetBinContent(4,11.81155); SegtoLCTXY_6__90->SetBinContent(5,10.61662); SegtoLCTXY_6__90->SetBinContent(6,3.729491); SegtoLCTXY_6__90->SetBinContent(7,5.681678); SegtoLCTXY_6__90->SetBinContent(8,2.694751); SegtoLCTXY_6__90->SetBinContent(9,4.026062); SegtoLCTXY_6__90->SetBinContent(10,0.615116); SegtoLCTXY_6__90->SetBinContent(11,0.2587609); SegtoLCTXY_6__90->SetBinContent(12,0.1539684); SegtoLCTXY_6__90->SetBinContent(13,0.1285849); SegtoLCTXY_6__90->SetBinContent(14,0.092669); SegtoLCTXY_6__90->SetBinContent(15,0.08304597); SegtoLCTXY_6__90->SetBinContent(16,0.06523958); SegtoLCTXY_6__90->SetBinContent(17,0.05076715); SegtoLCTXY_6__90->SetBinContent(18,0.04781205); SegtoLCTXY_6__90->SetBinContent(19,0.0374313); SegtoLCTXY_6__90->SetBinContent(20,0.03538546); SegtoLCTXY_6__90->SetBinContent(21,0.02833868); SegtoLCTXY_6__90->SetBinContent(22,0.02947526); SegtoLCTXY_6__90->SetBinContent(23,0.02136767); SegtoLCTXY_6__90->SetBinContent(24,0.02470163); SegtoLCTXY_6__90->SetBinContent(25,0.01954914); SegtoLCTXY_6__90->SetBinContent(26,0.01682135); SegtoLCTXY_6__90->SetBinContent(27,0.01576055); SegtoLCTXY_6__90->SetBinContent(28,0.01189618); SegtoLCTXY_6__90->SetBinContent(29,0.01288122); SegtoLCTXY_6__90->SetBinContent(30,0.009547256); SegtoLCTXY_6__90->SetBinContent(31,0.009547256); SegtoLCTXY_6__90->SetBinContent(32,0.01030497); SegtoLCTXY_6__90->SetBinContent(33,0.006440609); SegtoLCTXY_6__90->SetBinContent(34,0.007577187); SegtoLCTXY_6__90->SetBinContent(35,0.005152487); SegtoLCTXY_6__90->SetBinContent(36,0.006971012); SegtoLCTXY_6__90->SetBinContent(37,0.005607118); SegtoLCTXY_6__90->SetBinContent(38,0.004394768); SegtoLCTXY_6__90->SetBinContent(39,0.005304031); SegtoLCTXY_6__90->SetBinContent(40,0.004546312); SegtoLCTXY_6__90->SetBinContent(41,0.005758662); SegtoLCTXY_6__90->SetBinContent(42,0.006213293); SegtoLCTXY_6__90->SetBinContent(43,0.00363705); SegtoLCTXY_6__90->SetBinContent(44,0.004546312); SegtoLCTXY_6__90->SetBinContent(45,0.003485506); SegtoLCTXY_6__90->SetBinContent(46,0.004091681); SegtoLCTXY_6__90->SetBinContent(47,0.003333962); SegtoLCTXY_6__90->SetBinContent(48,0.003182419); SegtoLCTXY_6__90->SetBinContent(49,0.002121612); SegtoLCTXY_6__90->SetBinContent(50,0.001818525); SegtoLCTXY_6__90->SetBinContent(51,0.001515437); SegtoLCTXY_6__90->SetBinContent(52,0.0024247); SegtoLCTXY_6__90->SetBinContent(53,0.001666981); SegtoLCTXY_6__90->SetBinContent(54,0.001970069); SegtoLCTXY_6__90->SetBinContent(55,0.0024247); SegtoLCTXY_6__90->SetBinContent(56,0.0024247); SegtoLCTXY_6__90->SetBinContent(57,0.002879331); SegtoLCTXY_6__90->SetBinContent(58,0.002273156); SegtoLCTXY_6__90->SetBinContent(59,0.002576244); SegtoLCTXY_6__90->SetBinContent(60,0.001060806); SegtoLCTXY_6__90->SetBinContent(61,0.001818525); SegtoLCTXY_6__90->SetBinContent(62,0.00121235); SegtoLCTXY_6__90->SetBinContent(63,0.00121235); SegtoLCTXY_6__90->SetBinContent(64,0.001515437); SegtoLCTXY_6__90->SetBinContent(65,0.001515437); SegtoLCTXY_6__90->SetBinContent(66,0.001060806); SegtoLCTXY_6__90->SetBinContent(67,0.001970069); SegtoLCTXY_6__90->SetBinContent(68,0.001666981); SegtoLCTXY_6__90->SetBinContent(69,0.001818525); SegtoLCTXY_6__90->SetBinContent(70,0.001060806); SegtoLCTXY_6__90->SetBinContent(71,0.001060806); SegtoLCTXY_6__90->SetBinContent(72,0.001818525); SegtoLCTXY_6__90->SetBinContent(73,0.001363894); SegtoLCTXY_6__90->SetBinContent(74,0.001060806); SegtoLCTXY_6__90->SetBinContent(75,0.000606175); SegtoLCTXY_6__90->SetBinContent(76,0.001818525); SegtoLCTXY_6__90->SetBinContent(77,0.001060806); SegtoLCTXY_6__90->SetBinContent(78,0.00121235); SegtoLCTXY_6__90->SetBinContent(79,0.001970069); SegtoLCTXY_6__90->SetBinContent(80,0.0007577187); SegtoLCTXY_6__90->SetBinContent(81,0.001363894); SegtoLCTXY_6__90->SetBinContent(82,0.001666981); SegtoLCTXY_6__90->SetBinContent(83,0.0007577187); SegtoLCTXY_6__90->SetBinContent(84,0.0009092624); SegtoLCTXY_6__90->SetBinContent(85,0.001363894); SegtoLCTXY_6__90->SetBinContent(86,0.001818525); SegtoLCTXY_6__90->SetBinContent(87,0.0007577187); SegtoLCTXY_6__90->SetBinContent(88,0.001060806); SegtoLCTXY_6__90->SetBinContent(89,0.0009092624); SegtoLCTXY_6__90->SetBinContent(90,0.0009092624); SegtoLCTXY_6__90->SetBinContent(91,0.001060806); SegtoLCTXY_6__90->SetBinContent(92,0.000606175); SegtoLCTXY_6__90->SetBinContent(93,0.00121235); SegtoLCTXY_6__90->SetBinContent(94,0.001363894); SegtoLCTXY_6__90->SetBinContent(95,0.001060806); SegtoLCTXY_6__90->SetBinContent(96,0.0009092624); SegtoLCTXY_6__90->SetBinContent(97,0.000606175); SegtoLCTXY_6__90->SetBinContent(98,0.0009092624); SegtoLCTXY_6__90->SetBinContent(99,0.000606175); SegtoLCTXY_6__90->SetBinContent(100,0.0004546312); SegtoLCTXY_6__90->SetBinContent(101,0.6628523); SegtoLCTXY_6__90->SetEntries(1328499); SegtoLCTXY_6__90->SetStats(0); ci = TColor::GetColor("#0000ff"); SegtoLCTXY_6__90->SetLineColor(ci); ci = TColor::GetColor("#0000ff"); SegtoLCTXY_6__90->SetMarkerColor(ci); SegtoLCTXY_6__90->GetXaxis()->SetTitle("cm"); SegtoLCTXY_6__90->GetYaxis()->SetTitle("scaled number of entries"); SegtoLCTXY_6__90->Draw("H,same"); leg = new TLegend(0.5,0.7,0.9,0.9,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextFont(62); leg->SetTextSize(0.02); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); entry=leg->AddEntry("SegtoLCTXY_1","ME11A: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff00ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_2","ME11B: mean:0.4cm;RMS:1.8cm","l"); ci = TColor::GetColor("#ff9999"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_3","ME12+13: mean:0.8cm;RMS:1.8cm","l"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_4","ME2: mean:0.4cm;RMS:1.4cm","l"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_5","ME3: mean:0.5cm;RMS:1.2cm","l"); ci = TColor::GetColor("#00ff00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("SegtoLCTXY_6","ME4: mean:0.6cm;RMS:1.3cm","l"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); leg->Draw(); TPaveText *pt = new TPaveText(0.01,0.9390678,0.2981452,0.995,"blNDC"); pt->SetName("title"); pt->SetBorderSize(1); pt->SetFillColor(0); TText *AText = pt->AddText("SegtoLCTXY"); pt->Draw(); SegtoLCTXY->Modified(); SegtoLCTXY->cd(); SegtoLCTXY->SetSelected(SegtoLCTXY); }
void DataMCComp6(int irun=0, string title="", int plot=0) { int unfold=0; // use pre-unfolding distributions //int unfold=1; // use unfolded distributions //int drawInclusive = 0; // do not plot the "inclusive" histogram int drawInclusive = 1; // do plot the "inclusive" histogram string subdir="0"; string postfix=""; if (irun==1) { // irun==1 => JEC Up subdir="1"; postfix="Up"; } if (irun==2) { // irun==2 => JEC Down subdir="2"; postfix="Down"; } if (irun==3) { // irun==3 => PU Up subdir="3"; postfix="Pup"; } if (irun==4) { // irun==4 => PU Down subdir="4"; postfix="Pum"; } if (irun==5) { // irun==5 => top bkg subdir="5"; postfix=""; } if (irun==6) { // irun==6 => b purity subdir="6"; postfix=""; } if (irun==7) { // irun==7 => unfolding subdir="7"; postfix=""; } if (irun==8) { // irun==8 => unfolding with Sherpa subdir="8"; postfix=""; } if (irun==9) { // irun==9 => unfolding with Powheg subdir="9"; postfix=""; } if (irun==10) { // irun==10 => bkg systematics subdir="10"; postfix=""; } if (irun==11) { // irun==11 => JER Up subdir="11"; postfix="JerUp"; } if (irun==12) { // irun==12 => JER Down subdir="12"; postfix="JerDown"; } if (irun==13) { // irun==13 => bkg statistics subdir="13"; postfix=""; } if (irun==14) { // irun==14 => unfolding with data weight subdir="14"; postfix=""; } if (irun==15) { // irun==15 => qcd bkg subdir="15"; postfix=""; } if (irun==77) { // irun==77 => unfolding with MadGraph 4FS subdir="77"; postfix=""; } if (irun==88) { // irun==88 => deltaR subdir="88"; postfix="DR"; } if (irun==99) { // irun==99 => pur subdir="99"; postfix="Pur"; } string title_e = title; string title_m = title; if (title=="w_mt_b") { title_e = "w_mt_wenu_b"; title_m = "w_mt_wmnu_b"; } if (title=="w_delta_b") { title_e = "w_delta_wenu_b"; title_m = "w_delta_wmnu_b"; } if (title=="w_deltaR_b") { title_e = "w_deltaR_wenu_b"; title_m = "w_deltaR_wmnu_b"; } if (title=="w_pt_W_b") { title_e = "w_pt_W_wenu_b"; title_m = "w_pt_W_wmnu_b"; } if (title=="w_eta_W_b") { title_e = "w_eta_W_wenu_b"; title_m = "w_eta_W_wmnu_b"; } string title_e_b = title_e; string title_m_b = title_m; if (title.find("_bjet_")!=string::npos) { title_e.erase(title_e.find("_bjet_")+1, 1); title_m.erase(title_m.find("_bjet_")+1, 1); } else { title_e_b = title_e_b + "b"; title_m_b = title_m_b + "b"; } TFile* f_e; TFile* f_e_b; if (unfold) { f_e = TFile::Open((path + "/electrons/" + version + "/" + subdir + "/unfolding/" + title_e + "_unfolding.root").c_str()); f_e_b = TFile::Open((path + "/electrons/" + version + "/" + subdir + "/unfolding/" + title_e_b + "_unfolding.root").c_str()); } else { f_e = TFile::Open((path + "/electrons/" + version + "/" + subdir + "/xsecs/" + title_e_b + "_xsecs.root").c_str()); f_e_b = TFile::Open((path + "/electrons/" + version + "/" + subdir + "/xsecs/" + title_e_b + "_xsecs.root").c_str()); } TH1F* h_data_e = (TH1F*)f_e->Get(title_e.c_str())->Clone(); TH1F* h_data_e_b = (TH1F*)f_e_b->Get(title_e_b.c_str())->Clone(); h_data_e->SetDirectory(0); h_data_e_b->SetDirectory(0); f_e->Close(); f_e_b->Close(); TFile* f_m; TFile* f_m_b; if (unfold) { f_m = TFile::Open((path + "/muons/" + version + "/" + subdir + "/unfolding/" + title_m + "_unfolding.root").c_str()); f_m_b= TFile::Open((path + "/muons/" + version + "/" + subdir + "/unfolding/" + title_m_b + "_unfolding.root").c_str()); } else { f_m= TFile::Open((path + "/muons/" + version + "/" + subdir + "/xsecs/" + title_m_b + "_xsecs.root").c_str()); f_m_b= TFile::Open((path + "/muons/" + version + "/" + subdir + "/xsecs/" + title_m_b + "_xsecs.root").c_str()); } TH1F* h_data_m = (TH1F*)f_m->Get(title_m.c_str())->Clone(); TH1F* h_data_m_b = (TH1F*)f_m_b->Get(title_m_b.c_str())->Clone(); h_data_m->SetDirectory(0); h_data_m_b->SetDirectory(0); f_m->Close(); f_m_b->Close(); h_data_e->SetStats(0); h_data_e_b->SetStats(0); h_data_m->SetStats(0); h_data_m_b->SetStats(0); if (unfold) { h_data_e->Scale(1./Lumi2012_ele, "width"); h_data_e_b->Scale(1./Lumi2012_ele, "width"); h_data_m->Scale(1./Lumi2012_muon, "width"); h_data_m_b->Scale(1./Lumi2012_muon, "width"); } TCanvas* c1 = new TCanvas("c", "c", 800, 600); c1->cd(); TPad *pad1 = new TPad("pad1","pad1",0.0,0.3,1.0,1.0); pad1->SetBottomMargin(0.001); pad1->Draw(); pad1->cd(); pad1->SetLogy(); h_data_e->SetTitle(""); h_data_e_b->SetTitle(""); h_data_e->GetYaxis()->SetTitle("#sigma [pb]"); h_data_e->SetMarkerStyle(20); h_data_e->SetMarkerSize(0.7); h_data_e->SetMarkerColor(kRed); h_data_e->SetLineColor(kRed); h_data_e_b->SetMarkerStyle(24); h_data_e_b->SetMarkerSize(0.7); h_data_e_b->SetMarkerColor(kRed); h_data_e_b->SetLineColor(kRed); h_data_m->SetMarkerStyle(20); h_data_m->SetMarkerSize(0.7); h_data_m->SetMarkerColor(kBlue); h_data_m->SetLineColor(kBlue); h_data_m_b->SetMarkerStyle(24); h_data_m_b->SetMarkerSize(0.7); h_data_m_b->SetMarkerColor(kBlue); h_data_m_b->SetLineColor(kBlue); if (drawInclusive) { h_data_e_b->SetMaximum(4*h_data_e->GetMaximum()); } else { h_data_e_b->SetMaximum(4*h_data_e_b->GetMaximum()); } h_data_e_b->SetMinimum(TMath::Max(0.002,0.25*h_data_e_b->GetBinContent(h_data_e_b->GetMinimumBin()))); if (title.find("_mt")!=string::npos) h_data_e_b->SetMinimum(TMath::Max(0.00002,0.25*h_data_e_b->GetBinContent(h_data_e_b->GetMinimumBin()))); if (title.find("_pt")!=string::npos) h_data_e_b->SetMinimum(TMath::Max(0.000004,0.25*h_data_e_b->GetBinContent(h_data_e_b->GetMinimumBin()))); if (title.find("_mass")!=string::npos) h_data_e_b->SetMinimum(TMath::Max(0.0002,0.25*h_data_e_b->GetBinContent(h_data_e_b->GetMinimumBin()))); h_data_e_b->Draw("E0PX"); if (drawInclusive) h_data_e->Draw("E0PXSAME"); h_data_m_b->Draw("E0PXSAME"); if (drawInclusive) h_data_m->Draw("E0PXSAME"); TLegend *leg = new TLegend(0.62, 0.580, 0.88, 0.88); leg->SetBorderSize(0); leg->SetEntrySeparation(0.01); leg->SetFillColor(0); leg->SetFillStyle(0); leg->AddEntry(h_data_e_b,"W(#rightarrow e#nu)+2b DATA","p"); if (drawInclusive) leg->AddEntry(h_data_e,"W(#rightarrow e#nu)+1b DATA","p"); leg->AddEntry(h_data_m_b,"W(#rightarrow #mu#nu)+2b DATA","p"); if (drawInclusive) leg->AddEntry(h_data_m,"W(#rightarrow #mu#nu)+1b DATA","p"); leg->Draw(); pad1->Update(); c1->Update(); c1->cd(); TLatex *latexLabel = CMSPrel((Lumi2012_ele+Lumi2012_muon)/2./1000.,"",0.15,0.94); latexLabel->Draw("same"); TPad *pad2 = new TPad("pad2","pad2",0,0,1,0.3); pad2->SetTopMargin(0); pad2->SetBottomMargin(0.3); pad2->Draw(); pad2->cd(); TH1F* h_ratio = (TH1F*)h_data_e->Clone("h_ratio"); TH1F* h_ratio_b = (TH1F*)h_data_e_b->Clone("h_ratio_b"); h_ratio->Divide(h_data_m); h_ratio_b->Divide(h_data_m_b); h_ratio_b->SetTitle(""); h_ratio_b->GetXaxis()->SetTitleOffset(0.9); h_ratio_b->GetXaxis()->SetTitleSize(0.1); h_ratio_b->GetXaxis()->SetLabelFont(42); h_ratio_b->GetXaxis()->SetLabelSize(0.08); h_ratio_b->GetXaxis()->SetTitleFont(42); h_ratio_b->GetYaxis()->SetTitle("Electrons/Muons"); h_ratio_b->GetYaxis()->SetNdivisions(505); h_ratio_b->GetYaxis()->SetTitleSize(0.09); h_ratio_b->GetYaxis()->SetLabelSize(0.08); h_ratio_b->GetYaxis()->SetRangeUser(0.5, 1.5); h_ratio_b->GetYaxis()->SetTitleOffset(0.4); h_ratio->SetMarkerStyle(20); h_ratio->SetMarkerColor(kBlack); h_ratio->SetLineColor(kBlack); h_ratio_b->SetMarkerStyle(24); h_ratio_b->SetMarkerColor(kBlack); h_ratio_b->SetLineColor(kBlack); h_ratio_b->Draw("E0PX"); if (drawInclusive) h_ratio->Draw("E0PXSAME"); TLine *OLine = new TLine(h_ratio->GetXaxis()->GetXmin(),1.,h_ratio->GetXaxis()->GetXmax(),1.); OLine->SetLineColor(kGreen); OLine->SetLineWidth(1); OLine->Draw(); c1->cd(); if (plot) { if (unfold) { gSystem->mkdir((path + "/combined/" + version + "/" + subdir + "/xsecs_unfolding/").c_str(), kTRUE); c1->SaveAs((path + "/combined/" + version + "/" + subdir + "/xsecs_unfolding/" + title + "b" + "_xsecs_unfolding.pdf").c_str()); } else { gSystem->mkdir((path + "/combined/" + version + "/" + subdir + "/xsecs/").c_str(), kTRUE); c1->SaveAs((path + "/combined/" + version + "/" + subdir + "/xsecs/" + title + "b" + "_xsecs.pdf").c_str()); } } }
void v2ExpClose_pt(bool bSavePlots = true, float rangeYAxis = 0.6, float rangeXAxis = 30, bool bDrawCh = true, const char* inputDir = "../macro_v2/outRoot", // the place where the input root files, with the histograms are const char* figNamePrefix="v2ExpClose_pt") { gSystem->mkdir(Form("./figs/png"), kTRUE); gSystem->mkdir(Form("./figs/pdf"), kTRUE); setTDRStyle(); // read CMS graphs TFile *pfV2Cms_cent = new TFile(Form("%s/Prp_v2_pt_plotter.root",inputDir)); TGraphAsymmErrors *pgV2Low = (TGraphAsymmErrors *)pfV2Cms_cent->Get("pgV2_low"); TGraphErrors *pgV2LowSyst = (TGraphErrors *)pfV2Cms_cent->Get("pgV2_low_sys"); TGraphErrors *pgV2LowP = (TGraphErrors *)pfV2Cms_cent->Get("pgV2_low_cont"); TGraphAsymmErrors *pgV2High = (TGraphAsymmErrors *)pfV2Cms_cent->Get("pgV2"); TGraphErrors *pgV2HighSyst = (TGraphErrors *)pfV2Cms_cent->Get("pgV2_sys"); TGraphErrors *pgV2HighP = (TGraphErrors *)pfV2Cms_cent->Get("pgV2_cont"); pgV2Low->SetName("pgV2Low"); pgV2LowSyst->SetFillColorAlpha(kViolet-9,0.5); pgV2High->SetName("pgV2High"); pgV2HighSyst->SetFillColorAlpha(kRed-9,0.5); // ----------------------------------------------------------------------------------------- // ----- charged hadrons TGraphErrors *gChar = new TGraphErrors(19, pTChar, v2Char, chxerr, v2CharSt); TGraphErrors *gChar2 = new TGraphErrors(19, pTChar, v2Char, chxerr, v2CharSt2); TGraphErrors *gCharSys = new TGraphErrors(19, pTChar, v2Char, chxerr2, v2CharSys); gChar->SetName("gChar"); gChar->SetMarkerStyle(20); gChar->SetMarkerColor(kTeal+3); gChar->SetLineColor(kTeal+3); gChar->SetMarkerSize(1.3); gChar2->SetMarkerStyle(24); gChar2->SetMarkerColor(kTeal+4); gChar2->SetLineColor(kTeal+4); gChar2->SetMarkerSize(1.3); gCharSys->SetFillColor(kTeal-9); //----------- D from ALICE TGraphErrors *pgAlice = new TGraphErrors(6, v2AliceX_pt, v2Alice_pt, v2AliceXl, v2AliceStat_pt); TGraphErrors *pgAliceSys = new TGraphErrors(6, v2AliceX_pt, v2Alice_pt, v2AliceXl, v2AliceSyst_pt); TGraphAsymmErrors *pgAliceSysB = new TGraphAsymmErrors(6, v2AliceX_pt, v2Alice_pt, v2AliceXl2, v2AliceXl2, v2AliceSystBLow_pt, v2AliceSystBHigh_pt); pgAlice->SetName("pgAlice"); pgAlice->SetMarkerStyle(kOpenSquare); pgAlice->SetMarkerColor(kGray+2); pgAlice->SetLineColor(kGray+2); pgAlice->SetMarkerSize(1.0); pgAliceSys->SetFillStyle(0); pgAliceSys->SetMarkerColor(kGray+2); pgAliceSys->SetLineColor(kGray+2); pgAliceSys->SetMarkerSize(1.7); pgAliceSysB->SetFillColor(kGray); // drawing //------------------------------------------------------------------------ // put everything on one plot TH1D *phAxis_v2 = new TH1D("phAxis_v2",";p_{T} (GeV/c);v_{2}",1,0,rangeXAxis); phAxis_v2->SetDirectory(0); phAxis_v2->GetXaxis()->CenterTitle(true); phAxis_v2->GetXaxis()->LabelsOption("h"); phAxis_v2->GetYaxis()->SetRangeUser(0,rangeYAxis); phAxis_v2->GetYaxis()->SetTitleOffset(1.25); TCanvas *pcCombi = new TCanvas("pcCombi","pcCombi"); phAxis_v2->Draw(); CMS_lumi(pcCombi,12001000,0); pgAliceSysB->Draw("2"); pgAliceSys->Draw("2"); pgAlice->Draw("pz"); if (bDrawCh) { gCharSys->Draw("2"); gChar->Draw("pz"); gChar2->Draw("p"); } pgV2LowSyst->Draw("2"); pgV2Low->Draw("PZ"); pgV2LowP->Draw("P"); pgV2HighSyst->Draw("2"); pgV2High->Draw("PZ"); pgV2HighP->Draw("P"); // --------- legends ---- TLegend *leg = new TLegend(0.2,0.77,0.7,0.89,NULL,"brNDC"); // at top center leg->SetBorderSize(0); leg->SetTextFont(132); leg->SetTextSize(0.03); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(19); leg->SetFillStyle(0); TLegendEntry *entry, *entry11; entry=leg->AddEntry("cmspr","Hidden charm: prompt J/#psi",""); entry->SetTextFont(132); entry->SetTextSize(ltxSetTextSize3); entry=leg->AddEntry("pgV2Low", "1.6 < |y| < 2.4","p"); entry->SetTextFont(42); entry->SetTextSize(entrySize); entry=leg->AddEntry("pgV2High", "|y| < 2.4","P"); entry->SetTextFont(42); entry->SetTextSize(entrySize); TLegend *leg1 = new TLegend(0.2,0.685,0.7,0.765,NULL,"brNDC"); leg1->SetBorderSize(0); leg1->SetTextFont(132); leg1->SetTextSize(ltxSetTextSize3); if (bDrawCh) { TLegendEntry *entry1; entry1=leg1->AddEntry("hpm","Charged hadron",""); entry1->SetTextFont(132); entry1->SetTextSize(ltxSetTextSize3); entry1=leg1->AddEntry("gChar","|#eta| < 0.8","P"); entry1->SetTextFont(42); entry1->SetTextSize(entrySize); } //--------------------------- TLegend *leg_alice; if (bDrawCh) { leg_alice = new TLegend(0.2,0.60,0.7,0.68,NULL,"brNDC"); } else { leg_alice = new TLegend(0.2,0.685,0.7,0.765,NULL,"brNDC"); } leg_alice->SetBorderSize(0); leg_alice->SetTextFont(132); leg_alice->SetLineColor(1); leg_alice->SetLineStyle(1); leg_alice->SetLineWidth(1); leg_alice->SetFillColor(19); leg_alice->SetFillStyle(0); TLegendEntry *entry_alice=leg_alice->AddEntry("pgAlice","Open charm: prompt D (ALICE)",""); entry_alice->SetTextFont(132); entry_alice->SetTextSize(ltxSetTextSize3); entry_alice=leg_alice->AddEntry("pgAlice","|y| < 0.8, Cent. 30-50\%","P"); entry_alice->SetTextFont(42); entry_alice->SetTextSize(entrySize); TLatex *lat = new TLatex(); lat->SetNDC(); lat->SetTextFont(42); lat->SetTextSize(ltxSetTextSize2); if (bDrawCh) lat->DrawLatex(0.63,0.52,"Cent. 10-60%"); else lat->DrawLatex(0.63,0.58,"Cent. 10-60%"); leg->Draw(); if (bDrawCh) leg1->Draw(); leg_alice->Draw(); gPad->RedrawAxis(); if(bSavePlots) { pcCombi->SaveAs(Form("figs/pdf/%s_RaaCh%d.pdf",figNamePrefix,bDrawCh)); pcCombi->SaveAs(Form("figs/png/%s_RaaCh%d.png",figNamePrefix,bDrawCh)); } return; }
void phielphileadj() { //=========Macro generated from canvas: phielphileadj/phielphileadj //========= (Sun Nov 8 21:56:11 2015) by ROOT version6.02/05 TCanvas *phielphileadj = new TCanvas("phielphileadj", "phielphileadj",0,23,700,700); phielphileadj->Range(-0.3926991,-4.787882,3.534292,1.179054); phielphileadj->SetFillColor(0); phielphileadj->SetBorderMode(0); phielphileadj->SetBorderSize(2); phielphileadj->SetLogy(); phielphileadj->SetFrameBorderMode(0); phielphileadj->SetFrameBorderMode(0); THStack *phielphileadj = new THStack(); phielphileadj->SetName("phielphileadj"); phielphileadj->SetTitle("phielphileadj"); TH1F *phielphileadj_stack_22 = new TH1F("phielphileadj_stack_22","phielphileadj",10,0,3.141593); phielphileadj_stack_22->SetMinimum(6.4389e-05); phielphileadj_stack_22->SetMaximum(3.822615); phielphileadj_stack_22->SetDirectory(0); phielphileadj_stack_22->SetStats(0); Int_t ci; // for color index setting TColor *color; // for color definition with alpha ci = TColor::GetColor("#000099"); phielphileadj_stack_22->SetLineColor(ci); phielphileadj_stack_22->GetXaxis()->SetTitle("phielphileadj"); phielphileadj_stack_22->GetXaxis()->SetLabelFont(42); phielphileadj_stack_22->GetXaxis()->SetLabelSize(0.035); phielphileadj_stack_22->GetXaxis()->SetTitleSize(0.035); phielphileadj_stack_22->GetXaxis()->SetTitleFont(42); phielphileadj_stack_22->GetYaxis()->SetTitle("Events/pb"); phielphileadj_stack_22->GetYaxis()->SetLabelFont(42); phielphileadj_stack_22->GetYaxis()->SetLabelSize(0.035); phielphileadj_stack_22->GetYaxis()->SetTitleSize(0.035); phielphileadj_stack_22->GetYaxis()->SetTitleFont(42); phielphileadj_stack_22->GetZaxis()->SetLabelFont(42); phielphileadj_stack_22->GetZaxis()->SetLabelSize(0.035); phielphileadj_stack_22->GetZaxis()->SetTitleSize(0.035); phielphileadj_stack_22->GetZaxis()->SetTitleFont(42); phielphileadj->SetHistogram(phielphileadj_stack_22); TH1D *phielphileadj106 = new TH1D("phielphileadj106"," #Delta_{#phi}[e_{-},jet_{1}]",10,0,3.141593); phielphileadj106->SetBinContent(1,0.04383576); phielphileadj106->SetBinContent(2,0.001250901); phielphileadj106->SetBinContent(6,0.001250901); phielphileadj106->SetBinContent(8,0.001250901); phielphileadj106->SetBinContent(9,0.002501802); phielphileadj106->SetBinContent(10,0.01000721); phielphileadj106->SetBinError(1,0.02673601); phielphileadj106->SetBinError(2,0.001250901); phielphileadj106->SetBinError(6,0.001250901); phielphileadj106->SetBinError(8,0.001250901); phielphileadj106->SetBinError(9,0.001769041); phielphileadj106->SetBinError(10,0.003538083); phielphileadj106->SetEntries(28); ci = TColor::GetColor("#00cc00"); phielphileadj106->SetFillColor(ci); ci = TColor::GetColor("#00cc00"); phielphileadj106->SetLineColor(ci); ci = TColor::GetColor("#00cc00"); phielphileadj106->SetMarkerColor(ci); phielphileadj106->SetMarkerStyle(22); phielphileadj106->GetXaxis()->SetTitle("phielphileadj"); phielphileadj106->GetXaxis()->SetLabelFont(42); phielphileadj106->GetXaxis()->SetLabelSize(0.035); phielphileadj106->GetXaxis()->SetTitleSize(0.035); phielphileadj106->GetXaxis()->SetTitleFont(42); phielphileadj106->GetYaxis()->SetTitle("Events/pb"); phielphileadj106->GetYaxis()->SetLabelFont(42); phielphileadj106->GetYaxis()->SetLabelSize(0.035); phielphileadj106->GetYaxis()->SetTitleSize(0.035); phielphileadj106->GetYaxis()->SetTitleFont(42); phielphileadj106->GetZaxis()->SetLabelFont(42); phielphileadj106->GetZaxis()->SetLabelSize(0.035); phielphileadj106->GetZaxis()->SetTitleSize(0.035); phielphileadj106->GetZaxis()->SetTitleFont(42); phielphileadj->Add(phielphileadj,""); TH1D *phielphileadj107 = new TH1D("phielphileadj107"," #Delta_{#phi}[e_{-},jet_{1}]",10,0,3.141593); phielphileadj107->SetBinContent(1,0.2179961); phielphileadj107->SetBinContent(2,0.01962548); phielphileadj107->SetBinContent(3,0.02590187); phielphileadj107->SetBinContent(4,0.04624029); phielphileadj107->SetBinContent(5,0.09403783); phielphileadj107->SetBinContent(6,0.1831221); phielphileadj107->SetBinContent(7,0.3913257); phielphileadj107->SetBinContent(8,0.7765426); phielphileadj107->SetBinContent(9,1.404146); phielphileadj107->SetBinContent(10,2.115042); phielphileadj107->SetBinError(1,0.008912504); phielphileadj107->SetBinError(2,0.002766324); phielphileadj107->SetBinError(3,0.0025562); phielphileadj107->SetBinError(4,0.003795699); phielphileadj107->SetBinError(5,0.00538164); phielphileadj107->SetBinError(6,0.007316189); phielphileadj107->SetBinError(7,0.01018447); phielphileadj107->SetBinError(8,0.01359639); phielphileadj107->SetBinError(9,0.01731972); phielphileadj107->SetBinError(10,0.01901507); phielphileadj107->SetEntries(120946); ci = TColor::GetColor("#00ffff"); phielphileadj107->SetFillColor(ci); ci = TColor::GetColor("#00ffff"); phielphileadj107->SetLineColor(ci); ci = TColor::GetColor("#00ffff"); phielphileadj107->SetMarkerColor(ci); phielphileadj107->SetMarkerStyle(20); phielphileadj107->GetXaxis()->SetTitle("phielphileadj"); phielphileadj107->GetXaxis()->SetLabelFont(42); phielphileadj107->GetXaxis()->SetLabelSize(0.035); phielphileadj107->GetXaxis()->SetTitleSize(0.035); phielphileadj107->GetXaxis()->SetTitleFont(42); phielphileadj107->GetYaxis()->SetTitle("Events/pb"); phielphileadj107->GetYaxis()->SetLabelFont(42); phielphileadj107->GetYaxis()->SetLabelSize(0.035); phielphileadj107->GetYaxis()->SetTitleSize(0.035); phielphileadj107->GetYaxis()->SetTitleFont(42); phielphileadj107->GetZaxis()->SetLabelFont(42); phielphileadj107->GetZaxis()->SetLabelSize(0.035); phielphileadj107->GetZaxis()->SetTitleSize(0.035); phielphileadj107->GetZaxis()->SetTitleFont(42); phielphileadj->Add(phielphileadj,""); TH1D *phielphileadj108 = new TH1D("phielphileadj108"," #Delta_{#phi}[e_{-},jet_{1}]",10,0,3.141593); phielphileadj108->SetBinContent(1,0.05941227); phielphileadj108->SetBinContent(2,0.00156904); phielphileadj108->SetBinContent(3,0.002351593); phielphileadj108->SetBinContent(4,0.001584431); phielphileadj108->SetBinContent(5,0.001808185); phielphileadj108->SetBinContent(6,0.001742163); phielphileadj108->SetBinContent(7,0.001625272); phielphileadj108->SetBinContent(8,0.001809533); phielphileadj108->SetBinContent(9,0.002412292); phielphileadj108->SetBinContent(10,0.002300997); phielphileadj108->SetBinError(1,0.001774682); phielphileadj108->SetBinError(2,0.0002329711); phielphileadj108->SetBinError(3,0.0003550724); phielphileadj108->SetBinError(4,0.0002277697); phielphileadj108->SetBinError(5,0.0002417215); phielphileadj108->SetBinError(6,0.0002105135); phielphileadj108->SetBinError(7,0.0001661239); phielphileadj108->SetBinError(8,0.0001667856); phielphileadj108->SetBinError(9,0.0002762658); phielphileadj108->SetBinError(10,0.0001771848); phielphileadj108->SetEntries(6831); ci = TColor::GetColor("#ffcc00"); phielphileadj108->SetFillColor(ci); ci = TColor::GetColor("#ffcc00"); phielphileadj108->SetLineColor(ci); ci = TColor::GetColor("#ffcc00"); phielphileadj108->SetMarkerColor(ci); phielphileadj108->SetMarkerStyle(21); phielphileadj108->GetXaxis()->SetTitle("phielphileadj"); phielphileadj108->GetXaxis()->SetLabelFont(42); phielphileadj108->GetXaxis()->SetLabelSize(0.035); phielphileadj108->GetXaxis()->SetTitleSize(0.035); phielphileadj108->GetXaxis()->SetTitleFont(42); phielphileadj108->GetYaxis()->SetTitle("Events/pb"); phielphileadj108->GetYaxis()->SetLabelFont(42); phielphileadj108->GetYaxis()->SetLabelSize(0.035); phielphileadj108->GetYaxis()->SetTitleSize(0.035); phielphileadj108->GetYaxis()->SetTitleFont(42); phielphileadj108->GetZaxis()->SetLabelFont(42); phielphileadj108->GetZaxis()->SetLabelSize(0.035); phielphileadj108->GetZaxis()->SetTitleSize(0.035); phielphileadj108->GetZaxis()->SetTitleFont(42); phielphileadj->Add(phielphileadj,""); TH1D *phielphileadj109 = new TH1D("phielphileadj109"," #Delta_{#phi}[e_{-},jet_{1}]",10,0,3.141593); phielphileadj109->SetBinContent(1,0.001388212); phielphileadj109->SetBinContent(2,0.0002313686); phielphileadj109->SetBinContent(3,0.0002159441); phielphileadj109->SetBinContent(4,0.0002313686); phielphileadj109->SetBinContent(5,0.0005707093); phielphileadj109->SetBinContent(6,0.0008946254); phielphileadj109->SetBinContent(7,0.0008946254); phielphileadj109->SetBinContent(8,0.001588731); phielphileadj109->SetBinContent(9,0.001789251); phielphileadj109->SetBinContent(10,0.002113167); phielphileadj109->SetBinError(1,0.0001463304); phielphileadj109->SetBinError(2,5.973913e-05); phielphileadj109->SetBinError(3,5.771348e-05); phielphileadj109->SetBinError(4,5.973913e-05); phielphileadj109->SetBinError(5,9.382403e-05); phielphileadj109->SetBinError(6,0.0001174701); phielphileadj109->SetBinError(7,0.0001174701); phielphileadj109->SetBinError(8,0.0001565423); phielphileadj109->SetBinError(9,0.0001661278); phielphileadj109->SetBinError(10,0.00018054); phielphileadj109->SetEntries(643); ci = TColor::GetColor("#ff0000"); phielphileadj109->SetFillColor(ci); ci = TColor::GetColor("#ff0000"); phielphileadj109->SetLineColor(ci); ci = TColor::GetColor("#ff0000"); phielphileadj109->SetMarkerColor(ci); phielphileadj109->SetMarkerStyle(20); phielphileadj109->GetXaxis()->SetTitle("phielphileadj"); phielphileadj109->GetXaxis()->SetLabelFont(42); phielphileadj109->GetXaxis()->SetLabelSize(0.035); phielphileadj109->GetXaxis()->SetTitleSize(0.035); phielphileadj109->GetXaxis()->SetTitleFont(42); phielphileadj109->GetYaxis()->SetTitle("Events/pb"); phielphileadj109->GetYaxis()->SetLabelFont(42); phielphileadj109->GetYaxis()->SetLabelSize(0.035); phielphileadj109->GetYaxis()->SetTitleSize(0.035); phielphileadj109->GetYaxis()->SetTitleFont(42); phielphileadj109->GetZaxis()->SetLabelFont(42); phielphileadj109->GetZaxis()->SetLabelSize(0.035); phielphileadj109->GetZaxis()->SetTitleSize(0.035); phielphileadj109->GetZaxis()->SetTitleFont(42); phielphileadj->Add(phielphileadj,""); TH1D *phielphileadj110 = new TH1D("phielphileadj110"," #Delta_{#phi}[e_{-},jet_{1}]",10,0,3.141593); phielphileadj110->SetBinContent(1,0.001593307); phielphileadj110->SetBinContent(2,0.0005199211); phielphileadj110->SetBinContent(3,0.000335433); phielphileadj110->SetBinContent(4,0.0004696061); phielphileadj110->SetBinContent(5,0.0004696061); phielphileadj110->SetBinContent(6,0.0006540943); phielphileadj110->SetBinContent(7,0.0008888973); phielphileadj110->SetBinContent(8,0.001962283); phielphileadj110->SetBinContent(9,0.002331259); phielphileadj110->SetBinContent(10,0.003119526); phielphileadj110->SetBinError(1,0.0001634698); phielphileadj110->SetBinError(2,9.338058e-05); phielphileadj110->SetBinError(3,7.500509e-05); phielphileadj110->SetBinError(4,8.874722e-05); phielphileadj110->SetBinError(5,8.874722e-05); phielphileadj110->SetBinError(6,0.0001047389); phielphileadj110->SetBinError(7,0.0001220994); phielphileadj110->SetBinError(8,0.0001814131); phielphileadj110->SetBinError(9,0.0001977348); phielphileadj110->SetBinError(10,0.0002287348); phielphileadj110->SetEntries(736); ci = TColor::GetColor("#0000ff"); phielphileadj110->SetFillColor(ci); ci = TColor::GetColor("#0000ff"); phielphileadj110->SetLineColor(ci); ci = TColor::GetColor("#0000ff"); phielphileadj110->SetMarkerColor(ci); phielphileadj110->SetMarkerStyle(21); phielphileadj110->GetXaxis()->SetTitle("phielphileadj"); phielphileadj110->GetXaxis()->SetLabelFont(42); phielphileadj110->GetXaxis()->SetLabelSize(0.035); phielphileadj110->GetXaxis()->SetTitleSize(0.035); phielphileadj110->GetXaxis()->SetTitleFont(42); phielphileadj110->GetYaxis()->SetTitle("Events/pb"); phielphileadj110->GetYaxis()->SetLabelFont(42); phielphileadj110->GetYaxis()->SetLabelSize(0.035); phielphileadj110->GetYaxis()->SetTitleSize(0.035); phielphileadj110->GetYaxis()->SetTitleFont(42); phielphileadj110->GetZaxis()->SetLabelFont(42); phielphileadj110->GetZaxis()->SetLabelSize(0.035); phielphileadj110->GetZaxis()->SetTitleSize(0.035); phielphileadj110->GetZaxis()->SetTitleFont(42); phielphileadj->Add(phielphileadj,""); phielphileadj->Draw("nostack"); TPaveText *pt = new TPaveText(0.3377011,0.9342857,0.6622989,0.995,"blNDC"); pt->SetName("title"); pt->SetBorderSize(0); pt->SetFillColor(0); pt->SetFillStyle(0); pt->SetTextFont(42); TText *AText = pt->AddText("phielphileadj"); pt->Draw(); TLegend *leg = new TLegend(0.54023,0.639881,0.938218,0.924107,NULL,"brNDC"); leg->SetBorderSize(1); leg->SetTextSize(0.034965); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); TLegendEntry *entry=leg->AddEntry("phielphileadj","phielphileadj_QCD","lp"); ci = TColor::GetColor("#00cc00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); ci = TColor::GetColor("#00cc00"); entry->SetMarkerColor(ci); entry->SetMarkerStyle(22); entry->SetMarkerSize(1); entry->SetTextFont(42); entry=leg->AddEntry("phielphileadj","phielphileadj_WJetsToLNu","lp"); ci = TColor::GetColor("#00ffff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); ci = TColor::GetColor("#00ffff"); entry->SetMarkerColor(ci); entry->SetMarkerStyle(20); entry->SetMarkerSize(1); entry->SetTextFont(42); entry=leg->AddEntry("phielphileadj","phielphileadj_ZJetsToNuNu","lp"); ci = TColor::GetColor("#ffcc00"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); ci = TColor::GetColor("#ffcc00"); entry->SetMarkerColor(ci); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(42); entry=leg->AddEntry("phielphileadj","phielphileadj_signal","lp"); ci = TColor::GetColor("#ff0000"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); ci = TColor::GetColor("#ff0000"); entry->SetMarkerColor(ci); entry->SetMarkerStyle(20); entry->SetMarkerSize(1); entry->SetTextFont(42); entry=leg->AddEntry("phielphileadj","phielphileadj_ttbar","lp"); ci = TColor::GetColor("#0000ff"); entry->SetLineColor(ci); entry->SetLineStyle(1); entry->SetLineWidth(1); ci = TColor::GetColor("#0000ff"); entry->SetMarkerColor(ci); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(42); leg->Draw(); phielphileadj->Modified(); phielphileadj->cd(); phielphileadj->SetSelected(phielphileadj); }
void paraPull_alpha_EG_RESOLUTION_ALL_2TeV_2Lep_plots_All() { //=========Macro generated from canvas: c1/alpha_EG_RESOLUTION_ALL //========= (Sun Nov 22 20:14:01 2015) by ROOT version6.02/12 TCanvas *c1 = new TCanvas("c1", "alpha_EG_RESOLUTION_ALL",0,22,1000,600); gStyle->SetOptStat(0); c1->Range(-4.125,-0.9756355,37.125,1.049623); c1->SetFillColor(0); c1->SetBorderMode(0); c1->SetBorderSize(2); c1->SetGridx(); c1->SetGridy(); c1->SetFrameBorderMode(0); c1->SetFrameBorderMode(0); TH1F *NuisanceParameterFreed6 = new TH1F("NuisanceParameterFreed6","alpha_EG_RESOLUTION_ALL",33,0,33); NuisanceParameterFreed6->SetMinimum(-0.7731097); NuisanceParameterFreed6->SetMaximum(0.8470969); NuisanceParameterFreed6->SetStats(0); Int_t ci; // for color index setting TColor *color; // for color definition with alpha ci = TColor::GetColor("#000099"); NuisanceParameterFreed6->SetLineColor(ci); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(1,"XS_ttbar"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(2,"EG_SCALE_ALL"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(3,"FT_EFF_Eigen_C_0"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(4,"Luminosity"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(5,"XS_st"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(6,"FT_EFF_Eigen_B_1"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(7,"XS_Zc"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(8,"MUONS_ID"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(9,"FT_EFF_Eigen_C_1"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(10,"FT_EFF_Eigen_C_3"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(11,"MUON_EFF_TrigSystUncertainty"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(12,"XS_Zl"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(13,"EL_EFF_ID_TotalCorrUncertainty"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(14,"FT_EFF_Eigen_B_0"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(15,"FT_EFF_Eigen_B_2"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(16,"EL_EFF_Iso_TotalCorrUncertainty"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(17,"EL_EFF_Reco_TotalCorrUncertainty"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(18,"MUONS_SCALE"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(19,"MUON_ISO_STAT"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(20,"FT_EFF_extrapolation"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(21,"MUON_EFF_STAT"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(22,"MUON_EFF_SYS"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(23,"MUON_EFF_TrigStatUncertainty"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(24,"FT_EFF_Eigen_Light_1"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(25,"FT_EFF_Eigen_Light_2"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(26,"XS_diboson"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(27,"FT_EFF_Eigen_Light_4"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(28,"FT_EFF_Eigen_Light_3"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(29,"MUON_ISO_SYS"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(30,"XS_Zb"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(31,"FT_EFF_Eigen_C_2"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(32,"MUONS_MS"); NuisanceParameterFreed6->GetXaxis()->SetBinLabel(33,"FT_EFF_Eigen_Light_0"); NuisanceParameterFreed6->GetXaxis()->SetLabelFont(42); NuisanceParameterFreed6->GetXaxis()->SetLabelSize(0.035); NuisanceParameterFreed6->GetXaxis()->SetTitleSize(0.035); NuisanceParameterFreed6->GetXaxis()->SetTitleFont(42); NuisanceParameterFreed6->GetYaxis()->SetTitle("#theta_{fit} - #theta_{initial}/#Delta#theta"); NuisanceParameterFreed6->GetYaxis()->SetLabelFont(42); NuisanceParameterFreed6->GetYaxis()->SetLabelSize(0.035); NuisanceParameterFreed6->GetYaxis()->SetTitleSize(0.035); NuisanceParameterFreed6->GetYaxis()->SetTitleFont(42); NuisanceParameterFreed6->GetZaxis()->SetLabelFont(42); NuisanceParameterFreed6->GetZaxis()->SetLabelSize(0.035); NuisanceParameterFreed6->GetZaxis()->SetTitleSize(0.035); NuisanceParameterFreed6->GetZaxis()->SetTitleFont(42); NuisanceParameterFreed6->Draw("hist"); Double_t _fx1006[35] = { 1.22802e-312, 0.5, 1.5, 2.5, 3.5, 4.5, 5.5, 6.5, 7.5, 8.5, 9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5, 19.5, 20.5, 21.5, 22.5, 23.5, 24.5, 25.5, 26.5, 27.5, 28.5, 29.5, 30.5, 31.5, 32.5, 0}; Double_t _fy1006[35] = { 1.22802e-312, -0.7731097, -0.3921743, -0.293631, -0.2062229, -0.1827488, -0.1281174, -0.1245126, -0.1082091, -0.06576492, -0.05684313, -0.05332309, -0.04675272, -0.0376783, -0.03228676, -0.03112064, -0.02395027, -0.01716815, -0.001368855, 0.0001639766, 0.01020258, 0.01060384, 0.0180787, 0.01974379, 0.02028609, 0.02046257, 0.04020329, 0.04266391, 0.04578831, 0.05049948, 0.05319844, 0.0574024, 0.05790248, 0.8470969, 0}; Double_t _fex1006[35] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; Double_t _fey1006[35] = { 0, 0, 0.610768, 1.073217, 1.263173, 0.9362314, 0.9916222, 0.9863048, 0.9259827, 0.7691218, 0.9864552, 0.9937942, 0.9917457, 0.9970139, 0.9818237, 0.9374371, 0.9926691, 0.9931835, 0.9925618, 1.004989, 0.9933467, 0.9550431, 0.9932277, 0.9929666, 0.992751, 0.9913074, 0.9909922, 0.9869917, 0.9931709, 0.9930627, 0.9855153, 0.7535663, 0.9909032, 0.7381565, 0.7858726}; TGraphErrors *gre = new TGraphErrors(35,_fx1006,_fy1006,_fex1006,_fey1006); gre->SetName(""); gre->SetTitle(""); gre->SetFillColor(1); gre->SetMarkerStyle(20); gre->SetMarkerSize(1.2); TH1F *Graph_Graph1006 = new TH1F("Graph_Graph1006","",100,0,35.75); Graph_Graph1006->SetMinimum(-1.774861); Graph_Graph1006->SetMaximum(1.890718); Graph_Graph1006->SetDirectory(0); Graph_Graph1006->SetStats(0); ci = TColor::GetColor("#000099"); Graph_Graph1006->SetLineColor(ci); Graph_Graph1006->GetXaxis()->SetLabelFont(42); Graph_Graph1006->GetXaxis()->SetLabelSize(0.035); Graph_Graph1006->GetXaxis()->SetTitleSize(0.035); Graph_Graph1006->GetXaxis()->SetTitleFont(42); Graph_Graph1006->GetYaxis()->SetLabelFont(42); Graph_Graph1006->GetYaxis()->SetLabelSize(0.035); Graph_Graph1006->GetYaxis()->SetTitleSize(0.035); Graph_Graph1006->GetYaxis()->SetTitleFont(42); Graph_Graph1006->GetZaxis()->SetLabelFont(42); Graph_Graph1006->GetZaxis()->SetLabelSize(0.035); Graph_Graph1006->GetZaxis()->SetTitleSize(0.035); Graph_Graph1006->GetZaxis()->SetTitleFont(42); gre->SetHistogram(Graph_Graph1006); gre->Draw("p"); TLegend *leg = new TLegend(0.1,0.4,0.4,0.95,NULL,"brNDC"); leg->SetBorderSize(0); leg->SetTextFont(72); leg->SetTextSize(0.015); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(0); leg->Draw(); TPaveText *pt = new TPaveText(0.2831727,0.9341608,0.7168273,0.995,"blNDC"); pt->SetName("title"); pt->SetBorderSize(0); pt->SetFillColor(0); pt->SetFillStyle(0); pt->SetTextFont(42); TText *AText = pt->AddText("alpha_EG_RESOLUTION_ALL"); pt->Draw(); c1->Modified(); c1->cd(); c1->SetSelected(c1); }
void kees_gen() { gROOT->SetStyle("HALLA"); TCanvas *cn = new TCanvas("cn"); cn->Draw(); cn->UseCurrentStyle(); TH1F *frm = new TH1F("frm","",100,0.,10.); frm->GetXaxis()->SetTitle("Q^{2} [GeV^{2}]"); frm->GetYaxis()->SetTitle("G_{E}^{n}"); frm->SetMinimum(-.02); frm->SetMaximum(0.1); frm->UseCurrentStyle(); frm->Draw(); frm->SetAxisRange(0.,5.,"X"); TF1 *genf = new TF1("genf",genff,1.,10.,1); genf->SetLineColor(2); genf->SetLineStyle(2); genf->SetParameter(0,1.); genf->SetParameter(1,.3); genf->SetParameter(0,-0.632); // match to Madey point just below 1.5 // genf->SetParameter(0,.0411/genf->Eval(1.45)); TMultiGraph* mgrDta = new TMultiGraph("Data","G_{E}^{n}"); TLegend *legDta = new TLegend(.54,.6,.875,.90,"","brNDC"); TMultiGraph* wgr = mgrDta; TLegend *wlg = legDta; // the data legDta->SetBorderSize(0); // turn off border legDta->SetFillStyle(0); datafile_t *f = datafiles; TGraph* gr=0; while ( f && f->filename ) { gr=OneGraph(f); if (gr) { if (f->lnpt) { mgrDta->Add(gr,f->lnpt); legDta->AddEntry(gr,f->label,f->lnpt); } else if (gr->GetMarkerStyle()>=20) { mgrDta->Add(gr,"p"); legDta->AddEntry(gr,f->label,"p"); } else { mgrDta->Add(gr,"l"); legDta->AddEntry(gr,f->label,"l"); } } f++; } mgrDta->Draw("p"); // legDta->Draw(); don't draw the data legend TMultiGraph* mgrThry = new TMultiGraph("Theory","G_{E}^{n}"); TLegend *legThry = new TLegend(.54,.6,.875,.9,"","brNDC"); wgr = mgrThry; wlg = legThry; // the theory wlg->SetBorderSize(0); // turn off border wlg->SetFillStyle(0); f = theoryfiles1; gr=0; while ( f && f->filename ) { gr=OneGraph(f); if (gr) { TGraphAsymmErrors *egr = dynamic_cast<TGraphAsymmErrors*>(gr); if (egr && egr->GetN()>1 && egr->GetEYhigh() && egr->GetEYhigh()[1]>0) { gr = toerror_band(egr); gr->SetFillStyle(3000+f->style); } if (f->lnpt) { wgr->Add(gr,f->lnpt); wlg->AddEntry(gr,f->label,f->lnpt); } else if (gr->GetMarkerStyle()>=20) { wgr->Add(gr,"p"); wlg->AddEntry(gr,f->label,"p"); } else { wgr->Add(gr,"l"); wlg->AddEntry(gr,f->label,"l"); } } f++; } genf->Draw("same"); mgrThry->Draw("c"); legThry->AddEntry(genf,"F_{2}/F_{1} #propto ln^{2}(Q^{2}/#Lambda^{2})/Q^{2}","l"); legThry->Draw(); // draw a line at 1 cn->Modified(); cn->Update(); cn->SaveAs(Form("%s.eps",psfile)); cn->SaveAs(Form("%s.root",psfile)); gSystem->Exec(Form("./replace_symbols.pl %s.eps",psfile)); // now an overlay, hopefully matching dimensions // remove everything but the graph cn->Update(); TList *clist = cn->GetListOfPrimitives(); TFrame* frame = cn->GetFrame(); for (int i=0; i<clist->GetSize(); ) { if (clist->At(i) != frame) { clist->RemoveAt(i); } else i++; } // draw markers in the corners TMarker *mkr = new TMarker(frame->GetX1(),frame->GetY1(),2); mkr->Draw(); mkr = new TMarker(frame->GetX2(),frame->GetY1(),2); mkr->Draw(); mkr = new TMarker(frame->GetX1(),frame->GetY2(),2); mkr->Draw(); mkr = new TMarker(frame->GetX2(),frame->GetY2(),2); mkr->Draw(); frame->SetLineColor(10); cn->Update(); datafile_t miller = { "figure_input/Miller/lattice.GEn.rtf","Miller", "[0]","[1]","[1]-[3]","[2]-[1]",0,0,1,3,"F" }; gr = OneGraph(&miller); TGraphAsymmErrors* egr = dynamic_cast<TGraphAsymmErrors*>(gr); if (egr && egr->GetEYhigh() && egr->GetEYhigh()[egr->GetN()/2]>0) { gr = toerror_band(egr); gr->SetLineStyle(1); gr->SetFillColor(gr->GetLineColor()); gr->SetFillStyle(3000+miller.style); } gr->Draw("F"); cn->Update(); cn->SaveAs("gen_Miller_Overlay.eps"); cn->SaveAs("gen_Miller_Overlay.root"); }
void balanceMetVsAj(TString infname, TString insrc, TString metType = "",bool drawLegend = false, bool drawSys = true ) { // =========================================================== // Get Input // =========================================================== TFile *inf = new TFile(infname); // =========================================================== // Analysis Setup // =========================================================== Int_t plotLayer=10; // 0 only >0.5, 1 >0.5 and highpt, 10 ~ all const int nBin = 5; double bins[nBin+1] = {0.5,1.0,2,4,8,1000}; const int nBinAj = 4; double ajBins[nBinAj+1] = {0.0001,0.11,0.22,0.33,0.49999}; cout << infname << endl; TH1D *ppos[nBin+1]; TH1D *pneg[nBin+1]; TH1D *pe[nBin+1]; // ================================= // Get Weighted Mean for each Aj bin // ================================= for (int i=0;i<nBin+1;i++) { pe[i]=new TH1D(Form("p%d",i),"",nBinAj,ajBins); for (int a=0; a<nBinAj; ++a) { TString hname = Form("%s_mptx%s_merge%d_%dSigAll",insrc.Data(),metType.Data(),i,a); TH1D * hMpt = (TH1D*)inf->Get(hname); // cout << hname << " Aj bin: " << a+1 << " mean: " << hMpt->GetMean() << endl; pe[i]->SetBinContent(a+1,hMpt->GetMean()); pe[i]->SetBinError(a+1,hMpt->GetRMS()/sqrt(hMpt->GetEntries())); } } StackHistograms(nBin,pe,ppos,pneg,nBinAj); TH1D *pall=pe[nBin]; pall->SetXTitle("A_{J}"); pall->SetYTitle("<#slash{p}_{T}^{#parallel}> (GeV/c)"); pall->GetXaxis()->CenterTitle(); pall->GetYaxis()->CenterTitle(); pall->GetXaxis()->SetLabelSize(22); pall->GetXaxis()->SetLabelFont(43); pall->GetXaxis()->SetTitleSize(24); pall->GetXaxis()->SetTitleFont(43); pall->GetYaxis()->SetLabelSize(22); pall->GetYaxis()->SetLabelFont(43); pall->GetYaxis()->SetTitleSize(24); pall->GetYaxis()->SetTitleFont(43); pall->GetXaxis()->SetTitleOffset(1.8); pall->GetYaxis()->SetTitleOffset(2.4); pall->SetNdivisions(505); pall->SetAxisRange(-59.9,59.9,"Y"); pall->SetMarkerSize(1); pall->SetMarkerColor(kBlack); pall->SetMarkerStyle(kFullCircle); pall->Draw("E"); float addSys = 0; if ( drawSys==1) addSys=0; // No sys error at this moment // ==================== // Finally Draw // ==================== for (int i=0;i<nBin;++i) { if (plotLayer==0) continue; if (plotLayer==1&&i!=nBin-1) continue; ppos[i]->SetLineWidth(1); ppos[i]->Draw("hist same"); pneg[i]->SetLineWidth(1); pneg[i]->Draw("hist same"); // PrintHistogram(ppos[i]); // PrintHistogram(pneg[i]); } // ==================== // Draw Statistical Error bars // ==================== for (int i=0;i<nBin;++i) { if (plotLayer==0) continue; if (plotLayer==1&&i!=nBin-1) continue; if ( i==0 ) drawErrorShift(ppos[i],-0.016, addSys); if ( i==1 || i==4) drawErrorShift(ppos[i],-0.008,addSys); if ( i==2 ) drawErrorShift(ppos[i],0.008,addSys); if ( i==3 ) drawErrorShift(ppos[i],0.016,addSys); if ( i==0 ) drawErrorShift(pneg[i],-0.016, addSys); if ( i==1 || i==4) drawErrorShift(pneg[i],-0.008,addSys); if ( i==2 ) drawErrorShift(pneg[i],0.008,addSys); if ( i==3 ) drawErrorShift(pneg[i],0.016,addSys); } pall->Draw("E same"); // PrintHistogram(pall); // ==================== // Draw Systematic Errors // ==================== if (drawSys == 1) { for(int i = 0; i < nBinAj; ++i){ double x = pall->GetBinCenter(i+1); double y = pall->GetBinContent(i+1); // Quote the difference between GEN and RECO in >8 Bin (20%) before adjusting eff as systematics double errReco = -pe[nBin-1]->GetBinContent(i+1)*0.2; double errBck = 3.0; // compare HYDJET+SIG to SIG double err = sqrt(errReco*errReco+errBck*errBck); DrawTick(y,err,err,x,1,0.02,1); } } // ==================== // Draw Legend // ==================== TLegend *leg = new TLegend(0.10,0.68,0.70,0.96); leg->SetFillStyle(0); leg->SetBorderSize(0); leg->SetTextFont(63); leg->SetTextSize(16); leg->AddEntry(pall,Form("> %.1f GeV/c",bins[0]),"p"); for (int i=0;i<nBin;++i) { if (plotLayer==0) continue; if (plotLayer==1&&i!=nBin-1) continue; if (i!=nBin-1){ leg->AddEntry(ppos[i],Form("%.1f - %.1f GeV/c",bins[i],bins[i+1]),"f"); } else { leg->AddEntry(ppos[i],Form("> %.1f GeV/c",bins[i]),"f"); } } if (drawLegend) leg->Draw(); TLine * l0 = new TLine(0,0,0.5,0); l0->SetLineStyle(2); l0->Draw(); TLine * l1 = new TLine(0.0001,-10,0.0001,10); l1->Draw(); }
TF1* fit_histo_poly3bkg_floatwidth_poly2bkg_combinemassvnfit( bool isPbPb, int centlow, int centhigh, TH1D * histo, TH1D * h_mc_matched_signal, TH1D * h_mc_matched_kpiswapped, int ipt, TString cfgname, bool get_sig_bkg_ratio = false, TH1D * Ratio_signal_foreground = NULL, TH1D * h_vnvsmass = NULL, TH1D * h_vnvspt = NULL, TString vnorder = "v2", TString EPorSP = "SP", TH1D * h_vnvspt_bkg = NULL) { Double_t setparam0=100.; Double_t setparam1=1.8648; Double_t setparam2=0.03; Double_t setparam3=0.005; Double_t setparam4=0.1; Double_t setparam7=0.1; Double_t fixparam1=1.8648; double fit_range_low = generalfitrange_masslow; double fit_range_high = generalfitrange_masshigh; double histomassbinsize = histo->GetBinWidth(10); float ptmin = ptbins[ipt]; float ptmax = ptbins[ipt+1]; //remove the fit function from v2 fit when perform v3 fit if( histo->GetListOfFunctions()->FindObject(Form("fmass_combinemassvnfit_%s_%d",cfgname.Data(),ipt)) ) histo->GetListOfFunctions()->Remove( histo->GetListOfFunctions()->FindObject(Form("fmass_combinemassvnfit_%s_%d",cfgname.Data(),ipt)) ); TH1F* histo_copy_nofitfun = ( TH1F * ) histo->Clone("histo_copy_nofitfun"); TH1F* histo_massfit = ( TH1F * ) histo->Clone("histo_massfit"); TCanvas* cfg= new TCanvas(Form("cfg_poly3bkg_floatwidth_poly2bkg_combinemassvnfit_%s_%d",cfgname.Data(),ipt),Form("cfg_poly3bkg_floatwidth_poly2bkg_combinemassvnfit_%s_%d",cfgname.Data(),ipt),600,600); gPad->SetRightMargin(0.043); gPad->SetLeftMargin(0.18); gPad->SetTopMargin(0.1); gPad->SetBottomMargin(0.145); TF1* f = new TF1(Form("f_%s_%d",cfgname.Data(),ipt),"[0]*([5]*([4]*TMath::Gaus(x,[1],[2]*(1.0 +[6]))/(sqrt(2*3.14159)*[2]*(1.0 +[6]))+(1-[4])*TMath::Gaus(x,[1],[3]*(1.0 +[6]))/(sqrt(2*3.14159)*[3]*(1.0 +[6])))+(1-[5])*TMath::Gaus(x,[8],[7]*(1.0 +[6]))/(sqrt(2*3.14159)*[7]*(1.0 +[6]))) + [9] + [10]*x + [11]*x*x + [12]*x*x*x", fit_range_low, fit_range_high); f->SetParLimits(10,-1000,1000); f->SetParLimits(3,0.001,0.05); f->SetParLimits(2,0.01,0.1); f->SetParLimits(7,0.02,0.2); f->SetParLimits(5,0,1); f->SetParLimits(4,0,1); f->SetParameter(0,setparam0); f->SetParameter(1,setparam1); f->SetParameter(2,setparam2); f->SetParameter(3,setparam3); f->SetParameter(4,setparam4); f->FixParameter(7,setparam7); f->FixParameter(8,setparam1); f->FixParameter(5,1); f->FixParameter(1,fixparam1); f->FixParameter(9,0); f->FixParameter(10,0); f->FixParameter(11,0); f->FixParameter(12,0); f->FixParameter(6,0); h_mc_matched_signal->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"q","",fit_range_low,fit_range_high); h_mc_matched_signal->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"q","",fit_range_low,fit_range_high); f->ReleaseParameter(1); h_mc_matched_signal->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L q","",fit_range_low,fit_range_high); h_mc_matched_signal->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L q","",fit_range_low,fit_range_high); h_mc_matched_signal->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L m","",fit_range_low,fit_range_high); f->FixParameter(1,f->GetParameter(1)); f->FixParameter(2,f->GetParameter(2)); f->FixParameter(3,f->GetParameter(3)); f->FixParameter(4,f->GetParameter(4)); f->FixParameter(5,0); f->ReleaseParameter(7); f->ReleaseParameter(8); f->SetParameter(7,setparam7); f->SetParameter(8,setparam1);//mean for swapped candidates //if want to fix parameter 8 to parameter 1 //f->FixParameter(8,f->GetParameter(1)); h_mc_matched_kpiswapped->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L q","",fit_range_low,fit_range_high); h_mc_matched_kpiswapped->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L q","",fit_range_low,fit_range_high); h_mc_matched_kpiswapped->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L q","",fit_range_low,fit_range_high); h_mc_matched_kpiswapped->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L m","",fit_range_low,fit_range_high); f->FixParameter(5,h_mc_matched_signal->Integral(0,1000)/(h_mc_matched_kpiswapped->Integral(0,1000)+h_mc_matched_signal->Integral(0,1000))); f->FixParameter(7,f->GetParameter(7)); f->FixParameter(8,f->GetParameter(8)); f->ReleaseParameter(9); f->ReleaseParameter(10); f->ReleaseParameter(11); f->ReleaseParameter(12); f->SetLineColor(kRed); histo_massfit->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"q","",fit_range_low,fit_range_high); histo_massfit->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"q","",fit_range_low,fit_range_high); f->ReleaseParameter(1); ////Release Parameter 6 to float signal width f->ReleaseParameter(6); f->SetParameter(6,0); f->SetParLimits(6,-1.0,1.0); histo_massfit->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L q","",fit_range_low,fit_range_high); histo_massfit->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L q","",fit_range_low,fit_range_high); histo_massfit->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L q","",fit_range_low,fit_range_high); histo_massfit->Fit(Form("f_%s_%d",cfgname.Data(),ipt),"L m","",fit_range_low,fit_range_high); //begin combine fit TF1* fmass_combinemassvnfit = new TF1(Form("fmass_combinemassvnfit_%s_%d",cfgname.Data(),ipt),"[0]*([5]*([4]*TMath::Gaus(x,[1],[2]*(1.0 +[6]))/(sqrt(2*3.14159)*[2]*(1.0 +[6]))+(1-[4])*TMath::Gaus(x,[1],[3]*(1.0 +[6]))/(sqrt(2*3.14159)*[3]*(1.0 +[6])))+(1-[5])*TMath::Gaus(x,[8],[7]*(1.0 +[6]))/(sqrt(2*3.14159)*[7]*(1.0 +[6]))) + [9] + [10]*x + [11]*x*x + [12]*x*x*x", fit_range_low, fit_range_high); TF1* fvn_combinemassvnfit = new TF1(Form("fvn_combinemassvnfit_%s_%d",cfgname.Data(),ipt), "( ( [0]*([5]*([4]*TMath::Gaus(x,[1],[2]*(1.0 +[6]))/(sqrt(2*3.14159)*[2]*(1.0 +[6]))+(1-[4])*TMath::Gaus(x,[1],[3]*(1.0 +[6]))/(sqrt(2*3.14159)*[3]*(1.0 +[6])))+(1-[5])*TMath::Gaus(x,[8],[7]*(1.0 +[6]))/(sqrt(2*3.14159)*[7]*(1.0 +[6]))) ) / ( [0]*([5]*([4]*TMath::Gaus(x,[1],[2]*(1.0 +[6]))/(sqrt(2*3.14159)*[2]*(1.0 +[6]))+(1-[4])*TMath::Gaus(x,[1],[3]*(1.0 +[6]))/(sqrt(2*3.14159)*[3]*(1.0 +[6])))+(1-[5])*TMath::Gaus(x,[8],[7]*(1.0 +[6]))/(sqrt(2*3.14159)*[7]*(1.0 +[6]))) + [9] + [10]*x + [11]*x*x + [12]*x*x*x ) ) * [13] + ( 1.0 - ( ( [0]*([5]*([4]*TMath::Gaus(x,[1],[2]*(1.0 +[6]))/(sqrt(2*3.14159)*[2]*(1.0 +[6]))+(1-[4])*TMath::Gaus(x,[1],[3]*(1.0 +[6]))/(sqrt(2*3.14159)*[3]*(1.0 +[6])))+(1-[5])*TMath::Gaus(x,[8],[7]*(1.0 +[6]))/(sqrt(2*3.14159)*[7]*(1.0 +[6]))) ) / ( [0]*([5]*([4]*TMath::Gaus(x,[1],[2]*(1.0 +[6]))/(sqrt(2*3.14159)*[2]*(1.0 +[6]))+(1-[4])*TMath::Gaus(x,[1],[3]*(1.0 +[6]))/(sqrt(2*3.14159)*[3]*(1.0 +[6])))+(1-[5])*TMath::Gaus(x,[8],[7]*(1.0 +[6]))/(sqrt(2*3.14159)*[7]*(1.0 +[6]))) + [9] + [10]*x + [11]*x*x + [12]*x*x*x ) ) ) * ( [14] + [15] * x + [16] * x * x)", fit_range_low, fit_range_high); ROOT::Math::WrappedMultiTF1 wfmass_combinemassvnfit(*fmass_combinemassvnfit,1); ROOT::Math::WrappedMultiTF1 wfvn_combinemassvnfit(*fvn_combinemassvnfit,1); ROOT::Fit::DataOptions opt; ROOT::Fit::DataRange range_massfit; // set the data range range_massfit.SetRange(fit_range_low,fit_range_high); ROOT::Fit::BinData datamass(opt,range_massfit); ROOT::Fit::FillData(datamass, histo); ROOT::Fit::DataRange range_vnfit; range_vnfit.SetRange(fit_range_low,fit_range_high); ROOT::Fit::BinData datavn(opt,range_vnfit); ROOT::Fit::FillData(datavn, h_vnvsmass); ROOT::Fit::Chi2Function chi2_B(datamass, wfmass_combinemassvnfit); ROOT::Fit::Chi2Function chi2_SB(datavn, wfvn_combinemassvnfit); GlobalChi2_poly3bkg_floatwidth_poly2bkg globalChi2(chi2_B, chi2_SB); ROOT::Fit::Fitter fitter; const int Npar = 17; double par0[Npar]; for( int ipar = 0; ipar < f->GetNpar(); ipar++ ) par0[ipar] = f->GetParameter(ipar); par0[13] = 0.01; par0[14] = 0.10; par0[15] = 0.05; par0[16] = 0.05; // create before the parameter settings in order to fix or set range on them fitter.Config().SetParamsSettings(Npar,par0); // fix parameter fitter.Config().ParSettings(2).Fix(); fitter.Config().ParSettings(3).Fix(); fitter.Config().ParSettings(4).Fix(); fitter.Config().ParSettings(5).Fix(); fitter.Config().ParSettings(7).Fix(); fitter.Config().ParSettings(8).Fix(); // set limits on the third and 4-th parameter fitter.Config().ParSettings(1).SetLimits(1.7, 2.0); //fitter.Config().ParSettings(12).SetStepSize(0.005); //fitter.Config().UseWeightCorrection(); fitter.Config().MinimizerOptions().SetPrintLevel(0); fitter.Config().SetMinimizer("Minuit2","Migrad"); // fit FCN function directly // (specify optionally data size and flag to indicate that is a chi2 fit) //fitter.FitFCN(Npar,globalChi2,0,datamass.Size()+datavn.Size(),false); fitter.FitFCN(Npar,globalChi2,0,datamass.Size()+datavn.Size(),true); ROOT::Fit::FitResult result = fitter.Result(); result.Print(std::cout); fmass_combinemassvnfit->SetFitResult( result, iparmassfit_poly3bkg_floatwidth_poly2bkg); fmass_combinemassvnfit->SetRange(range_massfit().first, range_massfit().second); fmass_combinemassvnfit->SetLineColor(kRed); histo->GetListOfFunctions()->Add(fmass_combinemassvnfit); fvn_combinemassvnfit->SetFitResult( result, iparvnfit_poly3bkg_floatwidth_poly2bkg); fvn_combinemassvnfit->SetRange(range_vnfit().first, range_vnfit().second); fvn_combinemassvnfit->SetLineColor(4.0); fvn_combinemassvnfit->SetLineStyle(2); h_vnvsmass->GetListOfFunctions()->Add(fvn_combinemassvnfit); h_vnvspt->SetBinContent( ipt+1, fvn_combinemassvnfit->GetParameter(13)); h_vnvspt->SetBinError( ipt+1, fvn_combinemassvnfit->GetParError(13)); //double x[2] = {1.73, 1.864}; //double error[2]; //does not work //result.GetConfidenceIntervals(2, 1, 1, x, error, 0.683, false); //h_vnvspt_bkg->SetBinContent( ipt+1, fvn_combinemassvnfit->GetParameter(13) + fvn_combinemassvnfit->GetParameter(14) * 1.864); //h_vnvspt_bkg->SetBinError( ipt+1, error[0]); h_vnvspt_bkg->SetBinContent( ipt+1, fvn_combinemassvnfit->GetParameter(14) + fvn_combinemassvnfit->GetParameter(15) * 1.864 + fvn_combinemassvnfit->GetParameter(16) * 1.864 * 1.864); h_vnvspt_bkg->SetBinError( ipt+1, 0. ); TCanvas* cfg_massfit_combinemassvn = new TCanvas(Form("cfg_poly3bkg_floatwidth_poly2bkg_combinemassvnfit_massfit_combinemassvn_%s_%d_%s_%s",cfgname.Data(),ipt,vnorder.Data(),EPorSP.Data()),Form("cfg_poly3bkg_floatwidth_poly2bkg_combinemassvnfit_massfit_combinemassvn_%s_%d_%s_%s",cfgname.Data(),ipt,vnorder.Data(),EPorSP.Data()),600,600); gPad->SetRightMargin(0.043); gPad->SetLeftMargin(0.18); // gPad->SetTopMargin(0.1); gPad->SetBottomMargin(0.145); histo->SetXTitle("m_{#piK} (GeV/c^{2})"); histo->SetYTitle("Entries / (5 MeV/c^{2})"); histo->GetXaxis()->CenterTitle(); histo->GetYaxis()->CenterTitle(); //histo->SetAxisRange(0,histo->GetMaximum()*1.4*1.2,"Y"); histo->GetXaxis()->SetRangeUser(fit_range_low+0.0001,fit_range_high-0.0001); histo->GetXaxis()->SetTitleOffset(1.3); histo->GetYaxis()->SetTitleOffset(1.8); histo->GetXaxis()->SetLabelOffset(0.007); histo->GetYaxis()->SetLabelOffset(0.007); histo->GetXaxis()->SetTitleSize(0.045); histo->GetYaxis()->SetTitleSize(0.045); histo->GetXaxis()->SetTitleFont(42); histo->GetYaxis()->SetTitleFont(42); histo->GetXaxis()->SetLabelFont(42); histo->GetYaxis()->SetLabelFont(42); histo->GetXaxis()->SetLabelSize(0.04); histo->GetYaxis()->SetLabelSize(0.04); histo->SetMarkerSize(0.8); histo->SetMarkerStyle(20); histo->SetStats(0); histo->Draw("e"); TF1* background = new TF1(Form("background_%s_%d",cfgname.Data(),ipt),"[0]+[1]*x+[2]*x*x+[3]*x*x*x"); background->SetParameter(0,fmass_combinemassvnfit->GetParameter(9)); background->SetParameter(1,fmass_combinemassvnfit->GetParameter(10)); background->SetParameter(2,fmass_combinemassvnfit->GetParameter(11)); background->SetParameter(3,fmass_combinemassvnfit->GetParameter(12)); background->SetLineColor(4); background->SetRange(fit_range_low,fit_range_high); background->SetLineStyle(2); TF1* mass = new TF1(Form("fmass_%s_%d",cfgname.Data(),ipt),"[0]*([5]*([4]*Gaus(x,[1],[2]*(1.0 +[6]))/(sqrt(2*3.14159)*[2]*(1.0 +[6]))+(1-[4])*Gaus(x,[1],[3]*(1.0 +[6]))/(sqrt(2*3.14159)*[3]*(1.0 +[6]))))"); mass->SetParameters(f->GetParameter(0),f->GetParameter(1),f->GetParameter(2),f->GetParameter(3),f->GetParameter(4),f->GetParameter(5),f->GetParameter(6)); mass->SetParError(0,f->GetParError(0)); mass->SetParError(1,f->GetParError(1)); mass->SetParError(2,f->GetParError(2)); mass->SetParError(3,f->GetParError(3)); mass->SetParError(4,f->GetParError(4)); mass->SetParError(5,f->GetParError(5)); mass->SetParError(6,f->GetParError(6)); mass->SetFillColor(kOrange-3); mass->SetFillStyle(3002); mass->SetLineColor(kOrange-3); mass->SetLineWidth(3); mass->SetLineStyle(2); TF1* massSwap = new TF1(Form("fmassSwap_%s_%d",cfgname.Data(),ipt),"[0]*(1-[2])*Gaus(x,[1],[3]*(1.0 +[4]))/(sqrt(2*3.14159)*[3]*(1.0 +[4]))"); massSwap->SetParameters(fmass_combinemassvnfit->GetParameter(0),fmass_combinemassvnfit->GetParameter(8),fmass_combinemassvnfit->GetParameter(5),fmass_combinemassvnfit->GetParameter(7),fmass_combinemassvnfit->GetParameter(6)); massSwap->SetParError(0,fmass_combinemassvnfit->GetParError(0)); massSwap->SetParError(1,fmass_combinemassvnfit->GetParError(8)); massSwap->SetParError(2,fmass_combinemassvnfit->GetParError(5)); massSwap->SetParError(3,fmass_combinemassvnfit->GetParError(7)); massSwap->SetParError(4,fmass_combinemassvnfit->GetParError(6)); massSwap->SetFillColor(kGreen+4); massSwap->SetFillStyle(3005); massSwap->SetLineColor(kGreen+4); massSwap->SetLineWidth(3); massSwap->SetLineStyle(1); background->Draw("same"); mass->SetRange(fit_range_low,fit_range_high); mass->Draw("same"); massSwap->SetRange(fit_range_low,fit_range_high); massSwap->Draw("same"); Double_t yield = mass->Integral(fit_range_low,fit_range_high)/histomassbinsize; Double_t yieldErr = mass->Integral(fit_range_low,fit_range_high)/histomassbinsize*mass->GetParError(0)/mass->GetParameter(0); TLegend* leg = new TLegend(0.65,0.58,0.82,0.88,NULL,"brNDC"); leg->SetBorderSize(0); leg->SetTextSize(0.04); leg->SetTextFont(42); leg->SetFillStyle(0); leg->AddEntry(histo,"Data","pl"); leg->AddEntry(fmass_combinemassvnfit,"Fit","l"); leg->AddEntry(mass,"D^{0}+#bar{D^{#lower[0.2]{0}}} Signal","f"); leg->AddEntry(massSwap,"K-#pi swapped","f"); leg->AddEntry(background,"Combinatorial","l"); leg->Draw("same"); TLatex Tl; Tl.SetNDC(); Tl.SetTextAlign(12); Tl.SetTextSize(0.05); Tl.SetTextFont(42); Tl.DrawLatex(0.18,0.965, "#font[61]{CMS}"); if( isPbPb ) Tl.DrawLatex(0.61,0.965, "#scale[0.8]{PbPb #sqrt{s_{NN}} = 5.02 TeV}"); else Tl.DrawLatex(0.65,0.965, "#scale[0.8]{pp #sqrt{s_{NN}} = 5.02 TeV}"); TLatex* tex; if( isPbPb ) { tex = new TLatex(0.22,0.83,"|y| < 1.0"); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.22,0.78,Form("Cent. %d-%d%%", centlow, centhigh)); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.22,0.73,Form("%.1f < p_{T} < %.1f GeV/c",ptmin,ptmax)); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.22,0.68,Form("N_{sig}: %d #pm %d",int(yield),int(yieldErr))); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); } else { tex = new TLatex(0.22,0.83,"|y| < 1.0"); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.22,0.78,Form("%.1f < p_{T} < %.1f GeV/c",ptmin,ptmax)); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.22,0.73,Form("N_{sig}: %d #pm %d",int(yield),int(yieldErr))); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); } histo_copy_nofitfun->Draw("esame"); if( get_sig_bkg_ratio ) { for(int ibin = 0; ibin < histo->GetNbinsX(); ibin++) { double foreground = 0.; double signal = 0.; double ratio = 0.; double ratioError = 999.; double massbinleftedge = massmin + histomassbinsize * ibin; double massbinrightedge = massmin + histomassbinsize * (ibin+1); if( massbinleftedge > (fit_range_low - 0.0002) && massbinrightedge < (fit_range_high + 0.0002) ) { foreground = f->Integral(massbinleftedge, massbinrightedge)/histomassbinsize; //foregroundErr = f->IntegralError(massbinleftedge, massbinrightedge)/histomassbinsize; //foreground = histo->Integral(ibin+1, ibin+1); signal = mass->Integral(massbinleftedge, massbinrightedge)/histomassbinsize + massSwap->Integral(massbinleftedge, massbinrightedge)/histomassbinsize; //signal = mass->Integral(massbinleftedge, massbinrightedge)/histomassbinsize; //signal = foreground - background->Integral(massbinleftedge, massbinrightedge)/histomassbinsize; //signalErr = signal * yieldErr/yield; if( foreground > 0 ) { ratio = signal/foreground; ratioError = TMath::Sqrt( foreground * ratio * (1.0 - ratio) ) / foreground; } else { ratio = 0.5; ratioError = 0.5; } } else { ratio = 0.0; ratioError = 1.0; } Ratio_signal_foreground->SetBinContent(ibin+1, ratio); Ratio_signal_foreground->SetBinError(ibin+1, ratioError); } TF1* Func_Ratio_signal_foreground = new TF1(Form("Func_Ratio_signal_foreground_%s_%d",cfgname.Data(),ipt),"([0]*([5]*([4]*TMath::Gaus(x,[1],[2]*(1.0 +[6]))/(sqrt(2*3.14159)*[2]*(1.0 +[6]))+(1-[4])*TMath::Gaus(x,[1],[3]*(1.0 +[6]))/(sqrt(2*3.14159)*[3]*(1.0 +[6])))+(1-[5])*TMath::Gaus(x,[8],[7]*(1.0 +[6]))/(sqrt(2*3.14159)*[7]*(1.0 +[6]))))/([0]*([5]*([4]*TMath::Gaus(x,[1],[2]*(1.0 +[6]))/(sqrt(2*3.14159)*[2]*(1.0 +[6]))+(1-[4])*TMath::Gaus(x,[1],[3]*(1.0 +[6]))/(sqrt(2*3.14159)*[3]*(1.0 +[6])))+(1-[5])*TMath::Gaus(x,[8],[7]*(1.0 +[6]))/(sqrt(2*3.14159)*[7]*(1.0 +[6]))) + [9] + [10]*x + [11]*x*x + [12]*x*x*x)", generalfitrange_masslow, generalfitrange_masshigh); for( int ipar = 0; ipar < 13; ipar++ ) { Func_Ratio_signal_foreground->SetParameter( ipar, f->GetParameter(ipar)); Func_Ratio_signal_foreground->SetParError(ipar, f->GetParError(ipar)); } Func_Ratio_signal_foreground->SetLineColor(2.0); Ratio_signal_foreground->GetListOfFunctions()->Add(Func_Ratio_signal_foreground); } if(isPbPb) { cfg_massfit_combinemassvn->SaveAs(Form("Plots_vn/combinemassvnfit/DMass_combinemassvnfit_isPbPb%d_%s_cent%dto%d_%d_%s_%s_poly3bkg_floatwidth_poly2bkg_combinemassvnfit.pdf", isPbPb, cfgname.Data(), centlow, centhigh, ipt, vnorder.Data(),EPorSP.Data())); cfg_massfit_combinemassvn->SaveAs(Form("Plots_vn/combinemassvnfit/DMass_combinemassvnfit_isPbPb%d_%s_cent%dto%d_%d_%s_%s_poly3bkg_floatwidth_poly2bkg_combinemassvnfit.png", isPbPb, cfgname.Data(), centlow, centhigh, ipt, vnorder.Data(),EPorSP.Data())); } TCanvas* cfg_vnfit_combinemassvn = new TCanvas(Form("cfg_poly3bkg_floatwidth_poly2bkg_combinemassvnfit_vnfit_combinemassvn_%s_%d_%s_%s",cfgname.Data(),ipt,vnorder.Data(),EPorSP.Data()),Form("cfg_poly3bkg_floatwidth_poly2bkg_combinemassvnfit_vnfit_combinemassvn_%s_%d_%s_%s",cfgname.Data(),ipt,vnorder.Data(),EPorSP.Data()),600,600); h_vnvsmass->GetYaxis()->SetRangeUser(-0.2, 0.6); if( vnorder == "v2") h_vnvsmass->GetYaxis()->SetTitle("v_{2}"); if( vnorder == "v3") h_vnvsmass->GetYaxis()->SetTitle("v_{3}"); h_vnvsmass->GetXaxis()->SetTitle("m_{#piK} (GeV/c^{2})"); h_vnvsmass->GetXaxis()->SetTitleSize(0.05); h_vnvsmass->GetYaxis()->SetTitleSize(0.05); h_vnvsmass->SetMarkerColor(4.0); h_vnvsmass->SetLineColor(4.0); h_vnvsmass->SetMarkerStyle(21); h_vnvsmass->SetMarkerSize(1.3); h_vnvsmass->Draw(); TLatex Tl2; Tl2.SetNDC(); Tl2.SetTextAlign(12); Tl2.SetTextSize(0.05); Tl2.SetTextFont(42); Tl2.DrawLatex(0.125,0.965, "#font[61]{CMS}"); Tl2.DrawLatex(0.57,0.965, "#scale[0.8]{PbPb #sqrt{s_{NN}} = 5.02 TeV}"); tex = new TLatex(0.18,0.83,"|y| < 1.0"); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.18,0.78,Form("Cent. %d-%d%%", centlow, centhigh)); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.18,0.73,Form("%.1f < p_{T} < %.1f GeV/c",ptmin,ptmax)); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); if( vnorder == "v2" ) tex = new TLatex(0.55,0.83,Form("v_{2}^{sig} = %.3f #pm %.3f",fvn_combinemassvnfit->GetParameter(13), fvn_combinemassvnfit->GetParError(13))); else if( vnorder == "v3" ) tex = new TLatex(0.55,0.83,Form("v_{3}^{sig} = %.3f #pm %.3f",fvn_combinemassvnfit->GetParameter(13), fvn_combinemassvnfit->GetParError(13))); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(0.04); tex->SetLineWidth(2); tex->Draw(); if(isPbPb) { cfg_vnfit_combinemassvn->SaveAs(Form("Plots_vn/combinemassvnfit/cfg_vnfit_combinemassvn_%s_cent%dto%d_%d_%s_%s_poly3bkg_floatwidth_poly2bkg_combinemassvnfit.pdf",cfgname.Data(),centlow,centhigh,ipt,vnorder.Data(),EPorSP.Data())); cfg_vnfit_combinemassvn->SaveAs(Form("Plots_vn/combinemassvnfit/cfg_vnfit_combinemassvn_%s_cent%dto%d_%d_%s_%s_poly3bkg_floatwidth_poly2bkg_combinemassvnfit.png",cfgname.Data(),centlow,centhigh,ipt,vnorder.Data(),EPorSP.Data())); } return mass; }
void plot(){ typedef std::map<double, ROOT::Math::XYZTVector , User::moreStruct>::iterator CImap; TFile* file = new TFile("./vbfTree.root","READ"); TCanvas *c1 = new TCanvas("c1Mass","",5,30,650,600); c1->SetGrid(0,0); c1->SetFillStyle(4000); c1->SetFillColor(10); c1->SetTicky(); c1->SetObjectStat(0); c1->SetLogy(1); TPad* pad1 = new TPad("pad1","",0.05,0.27,0.96,0.97); TPad* pad2 = new TPad("pad2","",0.05,0.02,0.96,0.26); pad1->SetFillColor(0); pad2->SetFillColor(0); pad1->Draw(); pad2->Draw(); pad1->cd(); pad1->SetLogy(1); TLegend* leg = new TLegend(0.55,0.45,0.85,0.75,NULL,"brNDC"); leg->SetFillStyle(0); leg->SetBorderSize(0); leg->SetFillColor(10); leg->SetTextSize(0.04); leg->SetHeader("#splitline{POWHEG+PYTHIA qqH(115)#rightarrow#tau#tau}{jets matched to tag partons}"); TTree* currentTree = (TTree*)file->Get("vbfJetAnalyzer/tree"); int nEntries = currentTree->GetEntries() ; TH1F* h_TagMult = new TH1F("h_TagMult"," ; multiplicity ; a.u. ", 6,-0.5,5.5); TH1F* h_ptTag1 = new TH1F("h_ptTag1","; p_{T} (GeV/c); a.u. ", 60,0,300); TH1F* h_ptTag2 = new TH1F("h_ptTag2","; p_{T} (GeV/c); a.u. ", 60,0,300); TH1F* h_ptTag3 = new TH1F("h_ptTag3","; p_{T} (GeV/c); a.u. ", 60,0,300); std::vector<ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double> > >* jets; std::vector<ROOT::Math::LorentzVector<ROOT::Math::PxPyPzE4D<double> > >* tagjets; currentTree->SetBranchAddress("jetsP4", &jets); currentTree->SetBranchAddress("tagjetsP4",&tagjets); for (int n = 0; n < nEntries ; n++) { currentTree->GetEntry(n); std::map<double, ROOT::Math::XYZTVector , User::moreStruct> sortedTagJets; for(unsigned int i = 0; i < tagjets->size(); i++){ sortedTagJets.insert( make_pair( (*tagjets)[i].Et(),(*tagjets)[i] ) ) ; } std::map<double, ROOT::Math::XYZTVector , User::moreStruct> sortedJets; for(unsigned int i = 0; i < jets->size(); i++){ sortedJets.insert( make_pair( (*jets)[i].Et(),(*jets)[i] ) ) ; } h_TagMult->Fill(tagjets->size()); int counter=0; for(CImap it = sortedTagJets.begin(); it!=sortedTagJets.end(); it++){ if( counter==0 ) h_ptTag1->Fill( (it->second).Et() ); if( counter==1 ) h_ptTag2->Fill( (it->second).Et() ); if( counter==2 ) h_ptTag3->Fill( (it->second).Et() ); counter++; } } h_ptTag1->SetLineColor(kRed); h_ptTag1->SetLineStyle(kSolid); h_ptTag2->SetLineColor(kBlue); h_ptTag2->SetLineStyle(kDashed); h_ptTag2->SetLineColor(kMagenta); h_ptTag2->SetLineStyle(kDotted); cout << "1st jet " << h_ptTag1->GetEntries() << endl; cout << "2nd jet " << h_ptTag2->GetEntries() << endl; cout << "3rd jet " << h_ptTag3->GetEntries() << endl; h_ptTag3->Draw("HISTS"); h_ptTag1->Draw("HISTSAME"); h_ptTag2->Draw("HISTSAME"); leg->AddEntry(h_ptTag1,"1st largest-p_{T} jet","L"); leg->AddEntry(h_ptTag2,"2nd largest-p_{T} jet","L"); leg->AddEntry(h_ptTag3,"3rd largest-p_{T} jet","L"); leg->Draw(); pad2->cd(); TH1F* hLow = (TH1F*)h_TagMult->Clone(); hLow->SetLabelSize(0.12,"X"); hLow->SetLabelSize(0.10,"Y"); hLow->SetTitleSize(0.12,"Y"); hLow->SetTitleSize(0.12,"X"); hLow->SetTitleOffset(0.36,"Y"); hLow->SetTitleOffset(0.36,"X"); hLow->Draw("HIST"); }
void drawQual(TFile * inf, TCanvas * can, Int_t ic, Float_t ymin, Float_t ymax, Int_t doLog, Float_t xmin=0, Float_t xmax=0, Int_t rebinFactor=2) { cout << "ic: " << ic << " ymin: " << ymin << " ymax " << ymax << " xmin " << xmin << " xmax " << xmax << endl; TH3F * hQual3D_precut_mc = (TH3F*)inf->FindObjectAny(Form("hTrkQual%dPreCut3D_mc80_c0to36",ic)); TH3F * hQual3D_precut_data = (TH3F*)inf->FindObjectAny(Form("hTrkQual%dPreCut3D_dataj35_c0to36",ic)); cout << hQual3D_precut_mc->GetName() << ": " << hQual3D_precut_mc << endl; cout << hQual3D_precut_data->GetName() << ": " << hQual3D_precut_data << endl; TH1D * hPtBin = (TH1D*)hQual3D_precut_data->Project3D("y"); TH1D * hQual_precut_mc[10][8], * hQual_precut_data[10][8]; Int_t colors[10] = {kBlack, kGray+2, kBlue+2,kCyan+2,kGreen+2,kYellow+2,kOrange+2,kRed}; for (Int_t p=0; p<=9; ++p){ for (Int_t c=0; c<=7; ++c) { Int_t ptBin=p; Int_t cBin=c; hQual3D_precut_mc->GetYaxis()->SetRange(ptBin,ptBin); //hQual3D_precut_mc->GetZaxis()->SetRange(cBin,cBin+5); hQual3D_precut_data->GetYaxis()->SetRange(ptBin,ptBin); //hQual3D_precut_data->GetZaxis()->SetRange(cBin,cBin+5); hQual_precut_mc[p][c] = (TH1D*)hQual3D_precut_mc->Project3D("x"); hQual_precut_mc[p][c]->SetName(Form("%s_p%d_c%d",hQual3D_precut_mc->GetName(),ptBin,cBin)); hQual_precut_data[p][c] = (TH1D*)hQual3D_precut_data->Project3D("x"); hQual_precut_data[p][c]->SetName(Form("%s_p%d_c%d",hQual3D_precut_data->GetName(),ptBin,cBin)); //cout << Form("Project data %d: %.1f-%.1f GeV/c: ",ptBin, hPtBin->GetBinLowEdge(ptBin),hPtBin->GetBinLowEdge(ptBin+1)) << hQual_precut_data[p][c]->GetEntries() << endl; //rebin hQual_precut_data[p][c]->Rebin(rebinFactor); hQual_precut_mc[p][c]->Rebin(rebinFactor); // styles hQual_precut_mc[p][c]->SetMarkerColor(kRed-9); hQual_precut_mc[p][c]->SetLineColor(kRed-9); hQual_precut_mc[p][c]->SetMarkerStyle(kOpenSquare); hQual_precut_mc[p][c]->SetFillStyle(3001); hQual_precut_mc[p][c]->SetFillColor(kRed-9); hQual_precut_data[p][c]->SetMarkerColor(colors[c]); hQual_precut_mc[p][c]->Scale(1./hQual_precut_mc[p][c]->GetEntries()/rebinFactor); hQual_precut_data[p][c]->Scale(1./hQual_precut_data[p][c]->GetEntries()/rebinFactor); // set title fixedFontHist(hQual_precut_mc[p][c]); fixedFontHist(hQual_precut_data[p][c]); hQual_precut_mc[p][c]->SetYTitle("unit normalization"); hQual_precut_data[p][c]->SetYTitle("unit normalization"); // set axis if(xmin!=xmax) { hQual_precut_mc[p][c]->SetAxisRange(xmin,xmax,"X"); hQual_precut_data[p][c]->SetAxisRange(xmin,xmax,"X"); } hQual_precut_mc[p][c]->SetAxisRange(ymin,ymax,"Y"); hQual_precut_data[p][c]->SetAxisRange(ymin,ymax,"Y"); hQual_precut_mc[p][c]->GetXaxis()->SetNdivisions(508); hQual_precut_data[p][c]->GetXaxis()->SetNdivisions(508); } } //can->Divide(5,1); Int_t centBin=0; Int_t ipad=1; for (Int_t p=3; p<=7; ++p) { can->cd(ipad); if (doLog==1) gPad->SetLogy(); Int_t ptBin=p; cout << "ptBin: " << ptBin << endl; handsomeTH1(hQual_precut_data[ptBin][centBin]); hQual_precut_data[ptBin][centBin]->Draw("E"); hQual_precut_mc[ptBin][centBin]->Draw("histsame"); hQual_precut_data[ptBin][centBin]->Draw("Esame"); cout << Form("%.1f-%.1f GeV/c: ",hPtBin->GetBinLowEdge(ptBin),hPtBin->GetBinLowEdge(ptBin+1)) << hQual_precut_data[ptBin][centBin]->GetEntries() << endl; ++ipad; } can->cd(1); //TLegend *legdata = new TLegend(0.19,0.71,0.49,0.90); TLegend *legdata = new TLegend(0.26,0.72,0.56,0.92); legdata->SetFillStyle(0); legdata->SetBorderSize(0); legdata->SetTextSize(0.035); legdata->AddEntry(hQual_precut_data[0][0],"0-90%",""); legdata->AddEntry(hQual_precut_data[0][0],"Data Jet35U","p"); legdata->AddEntry(hQual_precut_mc[0][0],"MC, #hat{p}_{T} 80 GeV/c","p"); legdata->Draw(); ipad=1; for (Int_t p=3; p<=7; ++p) { can->cd(ipad); Int_t ptBin=p; cout << "ptBin leg: " << ptBin << endl; Float_t px=0.4,py=0.88; if (ipad==1) px=0.63; drawText(Form("%.1f - %.1f GeV/c",hPtBin->GetBinLowEdge(ptBin),hPtBin->GetBinLowEdge(ptBin+1)),px,py); ++ipad; } }
void DrawRatioAndSave( const char *nameFile, TGraphErrors* data, TGraphErrors* mc, int xmin, int xmax, const char *XTitle, const char *YTitle){ char * nameSaved ; nameSaved = new char[strlen(nameFile) +20] ; //copio stringa 1 in stringa nuova strcpy(nameSaved, nameFile); gStyle -> SetOptStat(kFALSE); TCanvas* c1 = new TCanvas("c1", "c1", 800, 800); c1->cd(); // Data / MC comparison TPad* pad_hi = new TPad("pad_hi", "", 0., 0.3, 1., 1.); pad_hi->Draw(); // pad_hi->SetLogx(); pad_hi->SetLeftMargin(0.15); pad_hi->SetBottomMargin(0.015); // Data / MC ratio TPad* pad_lo = new TPad("pad_lo", "", 0., 0.05, 1, 0.305); pad_lo->Draw(); //pad_lo->SetLogx(); pad_lo->SetLeftMargin(0.15); pad_lo->SetTopMargin(1.); pad_lo->SetBottomMargin(0.3); TGraphErrors* gr_resp_ratio = 0; TH2* h2_axes_lo_resp = NULL; TLine* line_one = new TLine(xmin, 1., xmax, 1.); TLine* line_plus_resp = new TLine(xmin, 1.05, xmax, 1.05); TLine* line_minus_resp = new TLine(xmin, 0.95, xmax, 0.95); pad_lo->cd(); // h2_axes_lo_resp = new TH2D("axes_lo_resp", "", 10, 0, 5, 10, 0.86, 1.14); h2_axes_lo_resp = new TH2D("axes_lo_resp", "", 10, xmin, xmax, 10, 0.5, 1.2); h2_axes_lo_resp->SetXTitle(XTitle); //"|#eta (jet)|"); h2_axes_lo_resp->SetYTitle("Data / MC"); h2_axes_lo_resp->GetXaxis()->SetTitleOffset(1.2); h2_axes_lo_resp->GetYaxis()->SetTitleOffset(0.55); h2_axes_lo_resp->GetXaxis()->SetTickLength(0.06); h2_axes_lo_resp->GetXaxis()->SetMoreLogLabels(); h2_axes_lo_resp->GetXaxis()->SetNoExponent(); //h2_axes_lo_resp->GetXaxis()->SetLabelSize(0.); h2_axes_lo_resp->GetXaxis()->SetLabelSize(0.085); h2_axes_lo_resp->GetYaxis()->SetLabelSize(0.07); h2_axes_lo_resp->GetXaxis()->SetTitleSize(0.09); h2_axes_lo_resp->GetYaxis()->SetTitleSize(0.08); h2_axes_lo_resp->GetYaxis()->SetNdivisions(7, kTRUE); h2_axes_lo_resp->Draw(""); line_one->Draw("same"); //line_plus_resp->SetLineColor(46); line_plus_resp->SetLineWidth(2); line_plus_resp->SetLineStyle(2); //line_minus_resp->SetLineColor(46); line_minus_resp->SetLineWidth(2); line_minus_resp->SetLineStyle(2); //this-> gr_resp_ratio = get_graphRatio(data, mc); gr_resp_ratio->SetName("response_ratio"); gr_resp_ratio->SetMarkerStyle(20); gr_resp_ratio->SetMarkerSize(1.5); gr_resp_ratio->SetMarkerColor(kBlue - 6); // TF1* ratioFit = new TF1("ratioFit", "[0]", 0, 5); //ratioFit->SetParameter(0, 0.); //ratioFit->SetLineColor(46); //ratioFit->SetLineWidth(2); // gr_resp_ratio->Fit(ratioFit, "RQ"); //std::cout << "-> ChiSquare: " << constline->GetChisquare() << " NDF: " << constline->GetNDF() << std::endl; //double fitValue = ratioFit->GetParameter(0); //double fitError = ratioFit->GetParError(0); // TH1D* errors = new TH1D("errors", "errors", 100, 0, 5); //(TVirtualFitter::GetFitter())->GetConfidenceIntervals(errors, 0.68); //errors->SetStats(false); //errors->SetFillColor(LIGHT_RED); //errors->SetLineColor(46); // TPaveText* label = new TPaveText(0.55, 0.77, 0.88, 0.83, "brNDC"); //fitlabel->SetTextSize(0.08); //fitlabel->SetFillColor(0); // TString fitLabelText = TString::Format("Fit: %.3f #pm %.3f", fitValue, fitError); //fitlabel->AddText(fitLabelText); // fitlabel->Draw("same"); line_plus_resp->Draw("same"); line_minus_resp->Draw("same"); // errors->Draw("e3 same"); //ratioFit->Draw("same"); gr_resp_ratio->Draw("Psame"); gPad->RedrawAxis(); pad_hi->cd(); TH2D* h2_axes = new TH2D("axes_again", "", 10, xmin, xmax, 10, 0.4, 1.25); h2_axes->SetYTitle("Jet p_{T} response"); //h2_axes->SetYTitle("< p_{T}^{jet} / p_{T}^{#gamma} >"); h2_axes->GetXaxis()->SetTitleOffset(1.1); h2_axes->GetYaxis()->SetTitleOffset(1.2); h2_axes->GetYaxis()->SetTitleSize(0.045); //h2_axes->GetXaxis()->SetMoreLogLabels(); //h2_axes->GetXaxis()->SetNoExponent(); h2_axes->Draw(); // TPaveText* label = new TPaveText(0.55, 0.77, 0.88, 0.83, "brNDC"); // label->SetTextSize(0.08); // label->SetFillColor(0); // TString fitLabelText = TString::Format("|#eta|< 1.3"); //label->AddText("|#eta|< 1.3"); //label->Draw("same"); // Float_t labelTextSize = 0.035; // TPaveText* label_algo = get_labelAlgo(2); TLegend* legend = new TLegend(0.85, 0.85, 0.75, 0.75); legend->SetTextFont(42); legend->SetBorderSize(0); legend->SetFillColor(kWhite); legend->SetFillStyle(0); legend->SetTextSize(0.036); // legend->SetHeader("3.0 <|#eta|< 5.0"); legend->AddEntry(data, "Data", "P"); legend->AddEntry(mc, "MC (#gamma+Jet)", "P"); legend->Draw("same"); mc->SetMarkerStyle(24); mc->SetMarkerSize(1.5); mc->SetMarkerColor(kBlue - 6); mc->SetLineColor(kBlue - 6); mc->Draw("Psame"); data->SetMarkerStyle(20); data->SetMarkerSize(1.5); data->SetMarkerColor(kBlue - 6); data->Draw("Psame"); gPad->RedrawAxis(); c1->SaveAs(nameSaved); c1->Destructor(); }
void fit_3to2(){ gStyle -> SetStripDecimals(kFALSE); gStyle -> SetPadTickX(1); gStyle -> SetPadTickY(1); gStyle -> SetOptTitle(0); gStyle -> SetOptStat(0); gStyle->SetOptFit(11111); float y1=-5 , y2=10; float x1=1200., x2=5200.; Double_t t1=0.2,t2=0.8; Double_t t3=0.2, t4=0.72; TFile *data = new TFile("/Users/asifsaddique/CMS_BH/QCD_13TeV/output_qcd/QCD_madgraph.root", "READ"); TH1F *st_ref = (TH1F*)gDirectory -> Get("ST/ST_2jet_exc"); TH1F *st_inp = (TH1F*)gDirectory -> Get("ST/ST_3jet_exc"); TH1F* st_32jet_exc = new TH1F("st_32jet_exc","",80,0,8000); st_32jet_exc -> Divide(st_inp,st_ref); float sf = st_ref->Integral(0,4000)/st_inp->Integral(0,4000); st_32jet_exc -> Scale(sf); TF1 *f1 = new TF1("f1","pol1",1200,4200); TCanvas *c1 = new TCanvas("c1","c1",800,600); st_32jet_exc -> Fit("f1","R"); st_32jet_exc -> GetYaxis()->SetTitle("Entries / 100 GeV"); st_32jet_exc -> GetXaxis()->SetTitle("S_{T} [GeV]"); st_32jet_exc -> GetXaxis()->SetRangeUser(x1,x2); st_32jet_exc -> GetYaxis()->SetRangeUser(y1,y2); st_32jet_exc -> SetMarkerStyle(21); st_32jet_exc -> SetMarkerSize(0.8); st_32jet_exc -> SetMarkerColor(1); st_32jet_exc -> SetLineColor(1); st_32jet_exc -> Draw("E1"); float tsize=0.04; tex = new TLatex(t1,t2,"#sqrt[]{s} = 13 TeV, #intLdt = 1000 pb^{-1}"); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(tsize); tex->Draw(); TLatex * tex = new TLatex(t3,t4,"Jets, E_{T} > 50 GeV, |#eta| < 2.4"); tex->SetNDC(); tex->SetTextFont(42); tex->SetTextSize(tsize); tex->SetLineWidth(2); tex->Draw(); TLegend *leg = new TLegend(0.2,0.6,0.6,0.6); leg->AddEntry( st_32jet_exc, "N = 3 / N=2", "lp"); leg->SetTextFont(42); leg->SetTextSize(tsize); leg->SetLineColor(1); leg->SetBorderSize(0); leg->SetBorderSize(0); leg->SetLineStyle(4); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); leg->Draw(""); c1->SaveAs("/Users/asifsaddique/CMS_BH/QCD_13TeV/Macros/bh_plots/fitratio/N3to2_fit.eps"); }
Double_t Fit_purity(TH1F * const inclusive,Int_t ipt,Float_t E_mean_err,Float_t E_sigma_err,TF1 *total_3,TF1 * g1,TF1 *g2,TF1 *g3, TF1 *g4,Int_t Sigma_flag,Int_t Draw_flag) { TH1F *Inclusive= (TH1F *) inclusive->Clone("Inclusive"); TCanvas * c4=new TCanvas("c4","",1200,1000); gPad->SetLogy(); total_3->SetParNames("#pi C", "#pi #mu", "#pi #sigma", "proton C", "proton #mu", "proton #sigma","e C","e #mu","e sigma"); total_3->SetLineColor(kBlue); g1->SetLineColor(3); g2->SetLineColor(6); g3->SetLineColor(7); g4->SetLineColor(2); g1->SetLineStyle(7); g2->SetLineStyle(7); g3->SetLineStyle(7); Inclusive->SetTitle(mh1_pT_Title[ipt]); Inclusive->GetXaxis()->SetTitle("nSigmaE"); Inclusive->GetYaxis()->SetTitle("Counts"); total_3->SetParameter(1,pi_mean_tof->GetBinContent(ipt+1)); total_3->SetParLimits(1,pi_mean_tof->GetBinContent(ipt+1)-0.2,pi_mean_tof->GetBinContent(ipt+1)+0.2); //pi sigma total_3->SetParameter(2,pi_sigma_tof->GetBinContent(ipt+1)); total_3->SetParLimits(2,pi_sigma_tof->GetBinContent(ipt+1)-0.1,pi_sigma_tof->GetBinContent(ipt+1)+0.1); //proton mean proton + kaon total_3->SetParameter(4,proton_mean_tof->GetBinContent(ipt+1)); total_3->SetParLimits(4,proton_mean_tof->GetBinContent(ipt+1)-1,proton_mean_tof->GetBinContent(ipt+1)+1); //proton sigma total_3->SetParameter(5,proton_sigma_tof->GetBinContent(ipt+1)); total_3->SetParLimits(5,proton_sigma_tof->GetBinContent(ipt+1)-0.2,proton_sigma_tof->GetBinContent(ipt+1)+0.2); //electron mean total_3->SetParameter(7,electron_Mean->GetBinContent(ipt+1)); total_3->SetParLimits(7,electron_Mean->GetBinContent(ipt+1)-Sigma_flag*electron_Mean->GetBinError(ipt+1),electron_Mean->GetBinContent(ipt+1)+Sigma_flag*electron_Mean->GetBinError(ipt+1)); //electron sigma total_3->SetParameter(8,electron_Sigma->GetBinContent(ipt+1)); total_3->SetParLimits(8,electron_Sigma->GetBinContent(ipt+1)-Sigma_flag*electron_Sigma->GetBinError(ipt+1),electron_Sigma->GetBinContent(ipt+1)+Sigma_flag*electron_Sigma->GetBinError(ipt+1)); if(Draw_flag==0) { Inclusive->Fit(total_3,"R0","",-10,4); } else Inclusive->Fit(total_3,"R","same",-10,4); g1->SetParameter(0,total_3->GetParameter(0)); g1->SetParameter(1,total_3->GetParameter(1)); g1->SetParameter(2,total_3->GetParameter(2)); g2->SetParameter(0,total_3->GetParameter(3)); g2->SetParameter(1,total_3->GetParameter(4)); g2->SetParameter(2,total_3->GetParameter(5)); g4->SetParameter(0,total_3->GetParameter(6)); g4->SetParameter(1,total_3->GetParameter(7)); g4->SetParameter(2,total_3->GetParameter(8)); // g4->SetParameter(0,total_3->GetParameter(9)); // g4->SetParameter(1,total_3->GetParameter(10)); // g4->SetParameter(2,total_3->GetParameter(11)); if(Draw_flag!=0){ TLegend *legend = new TLegend(0.15,0.6,0.35,0.8); legend->AddEntry(g1,"#pi ","lp"); legend->AddEntry(g2,"p+k ","lp"); //legend->AddEntry(g3,"kaon","lp"); legend->AddEntry(g4,"e","lp"); legend->SetBorderSize(0); legend->SetFillStyle(0); legend->SetTextSize(0.055); legend ->SetTextFont(62); legend->Draw("same"); g1->Draw("same"); g2->Draw("same"); g3->Draw("same"); g4->Draw("same"); sprintf(buf,"purity_fit_%ipt_%i_sigma_constrain.pdf",ipt,Sigma_flag); c4->SaveAs(buf); } return g4->Integral(-1,3)/total_3->Integral(-1,3); }
TCanvas *drawOneVariable(TTree *signalTree, TTree *backgroundTree1, TTree *backgroundTree2,TTree *backgroundTree3, TCut signalCuts, TCut backgroundCuts, TString var, int nbins, double xlow, double xhigh, TString sigLegend, TString bg1Legend, TString bg2Legend,TString bg3Legend, TString comment) { TString cname = "c_"; cname += var; TCanvas *c1 = new TCanvas(cname,cname,10,10,600,600); c1->cd(); TH1F *hsig = new TH1F(TString("hsig_")+var,"",nbins, xlow, xhigh); TH1F *hbg1 = new TH1F(TString("hbg1_")+var,"",nbins, xlow, xhigh); TH1F *hbg2 = new TH1F(TString("hbg2_")+var,"",nbins, xlow, xhigh); TH1F *hbg3 = new TH1F(TString("hbg3_")+var,"",nbins, xlow, xhigh); TString projectCommandSig = var+TString(">>hsig_")+var; TString projectCommandBg1 = var+TString(">>hbg1_")+var; TString projectCommandBg2 = var+TString(">>hbg2_")+var; TString projectCommandBg3 = var+TString(">>hbg3_")+var; if( !useSmallEventCount ){ signalTree->Draw(projectCommandSig, "genWeight"*signalCuts); }else{ printf("DEBUG MODE: using small event count\n"); signalTree->Draw(projectCommandSig, "genWeight"*signalCuts, "", 100000); } TGaxis::SetMaxDigits(3); hsig->GetXaxis()->SetTitle(var); hsig->SetDirectory(0); if(backgroundTree1 != 0){ if( !useSmallEventCount ){ backgroundTree1->Draw(projectCommandBg1, "genWeight"*backgroundCuts); }else{ printf("DEBUG MODE: using small event count\n"); backgroundTree1->Draw(projectCommandBg1, "genWeight"*backgroundCuts, "", 100000); } hbg1->Scale(hsig->GetSumOfWeights() / hbg1->GetSumOfWeights()); hbg1->SetDirectory(0); } else { delete hbg1; hbg1 = 0; } if(backgroundTree2 != 0){ if( !useSmallEventCount ){ backgroundTree2->Draw(projectCommandBg2, "genWeight"*backgroundCuts); }else{ printf("DEBUG MODE: using small event count\n"); backgroundTree2->Draw(projectCommandBg2, "genWeight"*backgroundCuts, "", 100000); } hbg2->Scale(hsig->GetSumOfWeights() / hbg2->GetSumOfWeights()); hbg2->SetDirectory(0); } else { delete hbg2; hbg2 = 0; } if(backgroundTree3 != 0){ if( !useSmallEventCount ){ backgroundTree3->Draw(projectCommandBg3, "genWeight"*backgroundCuts); }else{ printf("DEBUG MODE: using small event count\n"); backgroundTree3->Draw(projectCommandBg3, "genWeight"*backgroundCuts, "", 100000); } hbg3->Scale(hsig->GetSumOfWeights() / hbg3->GetSumOfWeights()); hbg3->SetDirectory(0); } else { delete hbg3; hbg3 = 0; } setHistogramAttributes(hsig, hbg1, hbg2, hbg3); c1->Clear(); hsig->Draw("hist"); if( hbg1 ){ hbg1->Draw("same"); } if( hbg2 ){ hbg2->Draw("same"); } if( hbg3 ){ //hbg3->Draw("same"); } TLegend *leg = new TLegend(0.55, 0.65, 0.95, 0.80); // 0.6 0.9 leg->SetFillStyle(0); leg->SetBorderSize(0); leg->AddEntry(hsig, sigLegend, "lf"); leg->AddEntry(hbg1, bg1Legend, "lf"); leg->AddEntry(hbg2, bg2Legend, "lf"); // leg->AddEntry(hbg3, bg3Legend, "lf"); leg->Draw("same"); TLatex *lat = new TLatex(0.5, 0.95, comment); // 0.85 lat->SetNDC(kTRUE); lat->Draw("same"); c1->Update(); return c1; }
void gemTurnOns(int label_eff = GEM_EFF98) { // gROOT->ProcessLine(".L effFunctions.C"); TCut ok_eta = "TMath::Abs(eta)>1.64 && TMath::Abs(eta)<2.14"; const int N = 5; int pt_lbl[N] = {DPHI_PT10, DPHI_PT15, DPHI_PT20, DPHI_PT30, DPHI_PT40}; TString pt[N] = {"pt10","pt15","pt20","pt30","pt40"}; int marker_styles[5] = {24, 28, 22 , 21, 20}; TCanvas* gEff = new TCanvas("gEff","gEff",700,500); gEff->SetGridx(1); gEff->SetGridy(1); TCanvas* gEff_odd = new TCanvas("gEff_odd","gEff_odd",700,500); gEff_odd->SetGridx(1); gEff_odd->SetGridy(1); TCanvas* gEff_even = new TCanvas("gEff_even","gEff_even",700,500); gEff_even->SetGridx(1); gEff_even->SetGridy(1); TTree *t = getTree(filesDir + "gem_csc_eff_pt2pt50_pad4.root"); TH1F *ho[N], *he[N]; for (int n=0; n<N; ++n) { if (n==1) continue; TString opt = "p"; if (n>0) opt = "same p"; setDPhi(n, label_eff); gEff->cd(); ho[n] = draw_eff(gt, "Eff. for track with LCT to have matched GEM pad;p_{T}, GeV/c;Eff.", Form("h_odd%d",n), "(50,0.,50.)", "pt", ok_lct1 && ok_eta && ok_pad1, ok_dphi1, opt, kRed, marker_styles[n]); he[n] = draw_eff(gt, "Eff. for track with LCT to have matched GEM pad;p_{T}, GeV/c;Eff.", Form("h_evn%d",n), "(50,0.,50.)", "pt", ok_lct2 && ok_eta && ok_pad2, ok_dphi2, "same p", kBlue, marker_styles[n]); gEff_odd->cd(); ho[n]->Draw(opt); gEff_even->cd(); he[n]->Draw(opt); } TString pts[N] = {"10","15","20","30","40"}; TString efs[5] = {"95", "98", "99"}; TString leg_header = " #Delta#phi(LCT,GEM) is " + efs[label_eff] + "% efficient for"; gEff->cd(); TLegend *leg = new TLegend(0.50,0.17,.99,0.57, NULL, "brNDC"); leg->SetNColumns(2); leg->SetBorderSize(0); leg->SetFillStyle(0); leg->SetHeader(leg_header); leg->AddEntry(ho[0], "odd chambers", ""); leg->AddEntry(he[0], "even chambers", ""); leg->AddEntry(ho[0], "at pt", ""); leg->AddEntry(he[0], "at pt", ""); for (int n=0; n<N; ++n) { if (n==1) continue; leg->AddEntry(ho[n], pts[n], "p"); leg->AddEntry(he[n], pts[n], "p"); } leg->Draw(); gEff->Print(plotDir + "gem_pad_eff_for_LCT_gemEff" + efs[label_eff] +"" + ext); gEff_odd->cd(); TLegend *leg = new TLegend(0.50,0.17,.99,0.57, NULL, "brNDC"); leg->SetBorderSize(0); leg->SetFillStyle(0); leg->SetHeader(leg_header); leg->AddEntry(ho[0], "odd chambers at pt", ""); for (int n=0; n<N; ++n) { if (n==1) continue; leg->AddEntry(ho[n], pts[n], "p"); } leg->Draw(); gEff_odd->Print(plotDir + "gem_pad_eff_for_LCT_gemEff" + efs[label_eff] +"_odd" + ext); gEff_even->cd(); TLegend *leg = new TLegend(0.50,0.17,.99,0.57, NULL, "brNDC"); leg->SetBorderSize(0); leg->SetFillStyle(0); leg->SetHeader(leg_header); leg->AddEntry(ho[0], "even chambers at pt", ""); for (int n=0; n<N; ++n) { if (n==1) continue; leg->AddEntry(he[n], pts[n], "p"); } leg->Draw(); gEff_even->Print(plotDir + "gem_pad_eff_for_LCT_gemEff" + efs[label_eff] +"_even" + ext); }
plot() { //=========Macro generated from canvas: FigExample/FigExample //========= (Wed Feb 10 18:30:48 2016) by ROOT version5.34/32 TCanvas *FigExample = new TCanvas("FigExample", "FigExample",0,23,1366,720); gStyle->SetOptFit(1); gStyle->SetOptStat(0); gStyle->SetOptTitle(0); FigExample->Range(1.546456,-0.2025,6.412106,1.485); FigExample->SetFillColor(0); FigExample->SetBorderMode(0); FigExample->SetBorderSize(2); FigExample->SetLogx(); FigExample->SetLeftMargin(0.12); FigExample->SetRightMargin(0.04); FigExample->SetTopMargin(0.08); FigExample->SetBottomMargin(0.12); FigExample->SetFrameFillStyle(0); FigExample->SetFrameBorderMode(0); FigExample->SetFrameFillStyle(0); FigExample->SetFrameBorderMode(0); TGraphErrors *gre = new TGraphErrors(6); gre->SetName("Graph0"); gre->SetTitle(""); gre->SetFillColor(1); gre->SetLineColor(4); gre->SetMarkerColor(4); gre->SetMarkerStyle(22); gre->SetMarkerSize(1.8); gre->SetPoint(0,1500000,0.192982); gre->SetPointError(0,0,0.118988); gre->SetPoint(1,681818.2,0.704545); gre->SetPointError(1,0,0.0473106); gre->SetPoint(2,217391.3,0.943028); gre->SetPointError(2,0,0.009242); gre->SetPoint(3,68181.82,0.973359); gre->SetPointError(3,0,0.00320719); gre->SetPoint(4,326.0869,0.967568); gre->SetPointError(4,0,0.0132405); gre->SetPoint(5,150,0.97559); gre->SetPointError(5,0,0.00223768); TH1F *Graph_Graph_Graph11 = new TH1F("Graph_Graph_Graph11","",100,135,1649985); Graph_Graph_Graph11->SetMinimum(0); Graph_Graph_Graph11->SetMaximum(1.35); Graph_Graph_Graph11->SetDirectory(0); Graph_Graph_Graph11->SetStats(0); Int_t ci; // for color index setting TColor *color; // for color definition with alpha ci = TColor::GetColor("#000099"); Graph_Graph_Graph11->SetLineColor(ci); Graph_Graph_Graph11->SetLineStyle(0); Graph_Graph_Graph11->SetMarkerStyle(20); Graph_Graph_Graph11->GetXaxis()->SetTitle("Cesium Source Rate ( N_{#gamma}.cm^{-2}.s^{-1} )"); Graph_Graph_Graph11->GetXaxis()->CenterTitle(true); Graph_Graph_Graph11->GetXaxis()->SetLabelFont(42); Graph_Graph_Graph11->GetXaxis()->SetLabelOffset(0.007); Graph_Graph_Graph11->GetXaxis()->SetLabelSize(0.035); Graph_Graph_Graph11->GetXaxis()->SetTitleSize(0.045); Graph_Graph_Graph11->GetXaxis()->SetTitleOffset(1.1); Graph_Graph_Graph11->GetXaxis()->SetTitleFont(42); Graph_Graph_Graph11->GetYaxis()->SetTitle("#mu detection efficiency"); Graph_Graph_Graph11->GetYaxis()->SetRange(0,1); Graph_Graph_Graph11->GetYaxis()->CenterTitle(true); Graph_Graph_Graph11->GetYaxis()->SetLabelFont(42); Graph_Graph_Graph11->GetYaxis()->SetLabelOffset(0.007); Graph_Graph_Graph11->GetYaxis()->SetLabelSize(0.035); Graph_Graph_Graph11->GetYaxis()->SetTitleSize(0.045); Graph_Graph_Graph11->GetYaxis()->SetTitleOffset(1.1); Graph_Graph_Graph11->GetYaxis()->SetTitleFont(42); Graph_Graph_Graph11->GetZaxis()->SetLabelFont(42); Graph_Graph_Graph11->GetZaxis()->SetLabelOffset(0.007); Graph_Graph_Graph11->GetZaxis()->SetLabelSize(0.035); Graph_Graph_Graph11->GetZaxis()->SetTitleSize(0.035); Graph_Graph_Graph11->GetZaxis()->SetTitleFont(42); gre->SetHistogram(Graph_Graph_Graph11); gre->Draw("ap"); gre = new TGraphErrors(6); gre->SetName("Graph1"); gre->SetTitle(""); gre->SetFillColor(1); gre->SetLineColor(2); gre->SetMarkerColor(2); gre->SetMarkerStyle(3); gre->SetMarkerSize(1.8); gre->SetPoint(0,1500000,0); gre->SetPointError(0,0,0); gre->SetPoint(1,681818.2,0.0381356); gre->SetPointError(1,0,0.0638412); gre->SetPoint(2,217391.3,0.242259); gre->SetPointError(2,0,0.0371513); gre->SetPoint(3,68181.82,0.70679); gre->SetPointError(3,0,0.0113702); gre->SetPoint(4,326.0869,0.919075); gre->SetPointError(4,0,0.021681); gre->SetPoint(5,150,0.929634); gre->SetPointError(5,0,0.00395216); TH1F *Graph_Graph_Graph22 = new TH1F("Graph_Graph_Graph22","",100,135,1649985); Graph_Graph_Graph22->SetMinimum(-0.1223518); Graph_Graph_Graph22->SetMaximum(1.037402); Graph_Graph_Graph22->SetDirectory(0); Graph_Graph_Graph22->SetStats(0); ci = TColor::GetColor("#000099"); Graph_Graph_Graph22->SetLineColor(ci); Graph_Graph_Graph22->SetLineStyle(0); Graph_Graph_Graph22->SetMarkerStyle(20); Graph_Graph_Graph22->GetXaxis()->SetTitle("Cesium Source Rate ( N_{#gamma}.cm^{-2}.s^{-1} )"); Graph_Graph_Graph22->GetXaxis()->CenterTitle(true); Graph_Graph_Graph22->GetXaxis()->SetLabelFont(42); Graph_Graph_Graph22->GetXaxis()->SetLabelOffset(0.007); Graph_Graph_Graph22->GetXaxis()->SetLabelSize(0.035); Graph_Graph_Graph22->GetXaxis()->SetTitleSize(0.045); Graph_Graph_Graph22->GetXaxis()->SetTitleOffset(0.9); Graph_Graph_Graph22->GetXaxis()->SetTitleFont(42); Graph_Graph_Graph22->GetYaxis()->SetTitle("Efficiency"); Graph_Graph_Graph22->GetYaxis()->CenterTitle(true); Graph_Graph_Graph22->GetYaxis()->SetLabelFont(42); Graph_Graph_Graph22->GetYaxis()->SetLabelOffset(0.007); Graph_Graph_Graph22->GetYaxis()->SetLabelSize(0.035); Graph_Graph_Graph22->GetYaxis()->SetTitleSize(0.045); Graph_Graph_Graph22->GetYaxis()->SetTitleOffset(1.25); Graph_Graph_Graph22->GetYaxis()->SetTitleFont(42); Graph_Graph_Graph22->GetZaxis()->SetLabelFont(42); Graph_Graph_Graph22->GetZaxis()->SetLabelOffset(0.007); Graph_Graph_Graph22->GetZaxis()->SetLabelSize(0.035); Graph_Graph_Graph22->GetZaxis()->SetTitleSize(0.035); Graph_Graph_Graph22->GetZaxis()->SetTitleFont(42); gre->SetHistogram(Graph_Graph_Graph22); gre->Draw("p&"); TLegend *leg = new TLegend(0.15,0.15,0.3,0.3,NULL,"brNDC"); leg->SetBorderSize(0); leg->SetTextFont(62); leg->SetTextSize(0.035); leg->SetLineColor(1); leg->SetLineStyle(1); leg->SetLineWidth(1); leg->SetFillColor(0); leg->SetFillStyle(1001); TLegendEntry *entry=leg->AddEntry("NULL","GIF++ test beams 08.2015","h"); entry->SetLineColor(1); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(1); entry->SetMarkerStyle(21); entry->SetMarkerSize(1); entry->SetTextFont(62); entry=leg->AddEntry("Graph0","Low Resistive Glass RPC ~10^{10}#Omega","p"); entry->SetFillStyle(1001); entry->SetLineColor(4); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(4); entry->SetMarkerStyle(22); entry->SetMarkerSize(1.8); entry->SetTextFont(42); entry=leg->AddEntry("Graph1","Float Glass RPC ~10^{12}-10^{13}#Omega","p"); entry->SetFillStyle(1001); entry->SetLineColor(2); entry->SetLineStyle(1); entry->SetLineWidth(1); entry->SetMarkerColor(2); entry->SetMarkerStyle(3); entry->SetMarkerSize(1.8); entry->SetTextFont(42); leg->Draw(); TLine *line = new TLine(0,1,1650000,1); line->SetLineStyle(2); line->Draw(); TH1F *Graph_Graph1 = new TH1F("Graph_Graph1","",100,135,1649985); Graph_Graph1->SetMinimum(0); Graph_Graph1->SetMaximum(1.07149); Graph_Graph1->SetDirectory(0); Graph_Graph1->SetStats(0); ci = TColor::GetColor("#000099"); Graph_Graph1->SetLineColor(ci); Graph_Graph1->SetLineStyle(0); Graph_Graph1->SetMarkerStyle(20); Graph_Graph1->GetXaxis()->SetTitle("Cesium Source Rate ( N_{#gamma}.cm^{-2}.s^{-1} )"); Graph_Graph1->GetXaxis()->CenterTitle(true); Graph_Graph1->GetXaxis()->SetLabelFont(42); Graph_Graph1->GetXaxis()->SetLabelOffset(0.007); Graph_Graph1->GetXaxis()->SetLabelSize(0.035); Graph_Graph1->GetXaxis()->SetTitleSize(0.045); Graph_Graph1->GetXaxis()->SetTitleOffset(1.1); Graph_Graph1->GetXaxis()->SetTitleFont(42); Graph_Graph1->GetYaxis()->SetTitle("#mu detection efficiency"); Graph_Graph1->GetYaxis()->SetRange(0,1); Graph_Graph1->GetYaxis()->CenterTitle(true); Graph_Graph1->GetYaxis()->SetLabelFont(42); Graph_Graph1->GetYaxis()->SetLabelOffset(0.007); Graph_Graph1->GetYaxis()->SetLabelSize(0.035); Graph_Graph1->GetYaxis()->SetTitleSize(0.045); Graph_Graph1->GetYaxis()->SetTitleOffset(1.1); Graph_Graph1->GetYaxis()->SetTitleFont(42); Graph_Graph1->GetZaxis()->SetLabelFont(42); Graph_Graph1->GetZaxis()->SetLabelOffset(0.007); Graph_Graph1->GetZaxis()->SetLabelSize(0.035); Graph_Graph1->GetZaxis()->SetTitleSize(0.035); Graph_Graph1->GetZaxis()->SetTitleFont(42); Graph_Graph1->Draw("sameaxis"); TLatex * tex = new TLatex(0.96,0.936," "); tex->SetNDC(); tex->SetTextAlign(31); tex->SetTextFont(42); tex->SetTextSize(0.048); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.1722,0.892,"Preliminary"); tex->SetNDC(); tex->SetTextAlign(13); tex->SetTextFont(52); tex->SetTextSize(0.0456); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.1722,0.851872,"CMS gas mixture : 95.2% TFE, 4.5%CO_{2}, 0.3%SF_{6}"); tex->SetNDC(); tex->SetTextAlign(13); tex->SetTextFont(52); tex->SetTextSize(0.032); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.1722,0.811744,"Threshold : 0.13pC"); tex->SetNDC(); tex->SetTextAlign(13); tex->SetTextFont(52); tex->SetTextSize(0.032); tex->SetLineWidth(2); tex->Draw(); tex = new TLatex(0.1722,0.7635904,"Sensitivity to background with E_{#gamma} = 661.7 keV : 3.1 hits/1000 #gamma"); tex->SetNDC(); tex->SetTextAlign(13); tex->SetTextFont(52); tex->SetTextSize(0.032); tex->SetLineWidth(2); tex->Draw(); TH1F *Graph_Graph1 = new TH1F("Graph_Graph1","",100,135,1649985); Graph_Graph1->SetMinimum(0); Graph_Graph1->SetMaximum(1.07149); Graph_Graph1->SetDirectory(0); Graph_Graph1->SetStats(0); ci = TColor::GetColor("#000099"); Graph_Graph1->SetLineColor(ci); Graph_Graph1->SetLineStyle(0); Graph_Graph1->SetMarkerStyle(20); Graph_Graph1->GetXaxis()->SetTitle("Cesium Source Rate ( N_{#gamma}.cm^{-2}.s^{-1} )"); Graph_Graph1->GetXaxis()->CenterTitle(true); Graph_Graph1->GetXaxis()->SetLabelFont(42); Graph_Graph1->GetXaxis()->SetLabelOffset(0.007); Graph_Graph1->GetXaxis()->SetLabelSize(0.035); Graph_Graph1->GetXaxis()->SetTitleSize(0.045); Graph_Graph1->GetXaxis()->SetTitleOffset(1.1); Graph_Graph1->GetXaxis()->SetTitleFont(42); Graph_Graph1->GetYaxis()->SetTitle("#mu detection efficiency"); Graph_Graph1->GetYaxis()->SetRange(0,1); Graph_Graph1->GetYaxis()->CenterTitle(true); Graph_Graph1->GetYaxis()->SetLabelFont(42); Graph_Graph1->GetYaxis()->SetLabelOffset(0.007); Graph_Graph1->GetYaxis()->SetLabelSize(0.035); Graph_Graph1->GetYaxis()->SetTitleSize(0.045); Graph_Graph1->GetYaxis()->SetTitleOffset(1.1); Graph_Graph1->GetYaxis()->SetTitleFont(42); Graph_Graph1->GetZaxis()->SetLabelFont(42); Graph_Graph1->GetZaxis()->SetLabelOffset(0.007); Graph_Graph1->GetZaxis()->SetLabelSize(0.035); Graph_Graph1->GetZaxis()->SetTitleSize(0.035); Graph_Graph1->GetZaxis()->SetTitleFont(42); Graph_Graph1->Draw("sameaxis"); FigExample->Modified(); FigExample->cd(); FigExample->SetSelected(FigExample); }