{ int i_theta_bins = 4; int n_p = 6; int sectors=6; TCanvas *canEfficiency[6]; // TCanvas *CanEfficiency_11[sectors]; char canName[32], canLabel[48]; for (int isec=0; isec< sectors; isec++){ sprintf(canName,"CanEfficiency%03d",isec); sprintf(canLabel,"Sector %03d Efficiency",isec); canEfficiency[isec]= new TCanvas(canName,canLabel,12000,6000); // canEfficiency[isec]= new TCanvas(Form("canEfficiency%d",isec)); canEfficiency[isec]->Divide(n_p,i_theta_bins); for (int ith=0; ith< i_theta_bins ; ith++) { for (int ippim=0; ippimGetEntries(); // remove overflows and underflows (should be 0) n3bgnd[i_theta_bins][n_p][sectors] += -h_pimMX2array_3fold_bgnd[ith][ippim][isec]->GetBinContent(0,0); n3bgnd[i_theta_bins][n_p][sectors] += -h_pimMX2array_3fold_bgnd[ith][ippim][isec]->GetBinContent(h_pimMX2array_3fold_bgnd[ith][ippim][isec]->GetNbinsX()+1); // printf("3fold_bngd events = %f \n", n3bgnd[i_theta_bins][n_p]); n4bgnd[i_theta_bins][n_p][sectors]=h_pimMX2array_4fold_bgnd_notexc[ith][ippim][isec]->GetEntries(); // remove overflows and underflows (should be 0) n4bgnd[i_theta_bins][n_p][sectors] += -h_pimMX2array_4fold_bgnd_notexc[ith][ippim][isec]->GetBinContent(0,0); n4bgnd[i_theta_bins][n_p][sectors] += -h_pimMX2array_4fold_bgnd_notexc[ith][ippim][isec]->GetBinContent(h_pimMX2array_4fold_bgnd_notexc[ith][ippim][isec]->GetNbinsX()+1); // printf("4fold_bngd_notExc events = %f \n", n4bgnd[i_theta_bins][n_p]); bgnd_norm[i_theta_bins][n_p][sectors] = n3bgnd[i_theta_bins][n_p][sectors]/n4bgnd[i_theta_bins][n_p][sectors]; TH1F *h_pimMX2array_3fold_norm =(TH1F*)h_pimMX2array_4fold_exc_notexc[ith][ippim][isec]->Clone("h_pimMX2array_3fold_norm"); h_pimMX2array_3fold_norm->Add(h_pimMX2array_4fold_exc_notexc[ith][ippim][isec],bgnd_norm[i_theta_bins][n_p][sectors]-1.0); TH1F* Neg_Normalized_bgnd=( TH1F* )h_pimMX2array_3fold_norm->Clone("Neg_Normalized_bgnd"); Neg_Normalized_bgnd->Scale(-1); TH1F* h_pimMX2array_1=(TH1F*) h_pimMX2array[ith][ippim][isec]->Clone("h_pimMX2array_1"); h_pimMX2array_1->Add(Neg_Normalized_bgnd); TH1F*h_pimMX2array_4fold_exc_notexc_1=(TH1F*) h_pimMX2array_4fold_exc_notexc[ith][ippim][isec]->Clone("h_pimMX2array_4fold_exc_notexc_1"); h_pimMX2array_4fold_exc_notexc_1->Scale(-1); h_pimMX2array_4fold_exc_notexc_1->Add(h_pimMX2array_4fold[ith][ippim][isec]); TH1F* Efficiency=(TH1F*)h_pimMX2array_4fold_exc_notexc_1->Clone("Efficiency"); Efficiency->Divide(h_pimMX2array_1); k++; canEfficiency[isec]->cd(k);h_pimMX2array[ith][ippim][isec]->SetLineColor(4);h_pimMX2array[ith][ippim][isec]->Draw(); canEfficiency[isec]->cd(k); h_pimMX2array_4fold[ith][ippim][isec]->SetLineColor(5);h_pimMX2array_4fold[ith][ippim][isec]->Draw("sames"); canEfficiency[isec]->cd(k); h_pimMX2array_4fold_exc_notexc[ith][ippim][isec]->SetLineColor(7);h_pimMX2array_4fold_exc_notexc[ith][ippim][isec]->Draw("sames"); canEfficiency[isec] ->cd(k); h_pimMX2array_4fold_bgnd_notexc[ith][ippim][isec]->SetLineColor(6);h_pimMX2array_4fold_bgnd_notexc[ith][ippim][isec]->Draw("sames"); canEfficiency[isec]->cd(k); h_pimMX2array_3fold_bgnd[ith][ippim][isec]->SetLineColor(8);h_pimMX2array_3fold_bgnd[ith][ippim][isec]->Draw("sames"); canEfficiency[isec]->cd(k); h_pimMX2array_3fold_norm->SetLineColor(9);h_pimMX2array_3fold_norm->Draw("sames"); canEfficiency[isec]->cd(k); h_pimMX2array_1->SetLineColor(1);h_pimMX2array_1->Draw("sames"); canEfficiency[isec]->cd(k); h_pimMX2array_4fold_exc_notexc_1->SetLineColor(2);h_pimMX2array_4fold_exc_notexc_1->Draw("sames"); //Using fiitng method /* TF1 *fAve = new TF1("fAve","[0]",-0.06,0.10); fAve->SetParameter(0,0.34); Efficiency->Fit("fAve","","",-0.06,0.10); canEfficiency_11->cd(k); Efficiency->SetLineColor(5);Efficiency->SetMarkerSize(1.2); Efficiency->SetMinimum(0.0); Efficiency->SetMaximum(2.0); Efficiency->Draw(); canEfficiency_11->cd(k); fAve->SetLineColor(2); fAve->Draw("sames");*/ } } } }