Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-05 08:11:18

0001 float TickSize = 0.03;
0002 float AxisTitleSize = 0.05;
0003 float AxisLabelSize = 0.04;
0004 float LeftMargin = 0.15;
0005 float RightMargin = 0.08;
0006 float TopMargin = 0.08;
0007 float BottomMargin = 0.13;
0008 float textscale = 2.7;
0009 
0010 void InnerOuterClus_quickana()
0011 {
0012     TH1F *hM_cent_IsMB_all = new TH1F("hM_cent_IsMB_all", "hM_cent_IsMB_all", 10, 0, 10);
0013     TH1F *hM_cent_IsMB_OuterInnerBranch = new TH1F("hM_cent_IsMB_OuterInnerBranch", "hM_cent_IsMB_OuterInnerBranch", 10, 0, 10);
0014     TH1F *hM_ratio = new TH1F("hM_ratio", "hM_ratio", 10, 0, 10);
0015 
0016     TChain *chain = new TChain("EventTree");
0017     chain->Add("./ntuple_00*.root");
0018     
0019     for (int i = 0; i < 10; i++)
0020     {
0021         TString cut_base = Form("is_min_bias==1&&(MBD_centrality>%f&&MBD_centrality<=%f)", i * 0.1, (i + 1) * 0.1);
0022         // TString cut_OuterInnerBranch = Form("is_min_bias==1&&(MBD_centrality>%f&&MBD_centrality<=%f)&&((NClus-NClus_Layer1)/NClus_Layer1)>=1.1", i * 0.1, (i + 1) * 0.1);
0023         TString cut_OuterInnerBranch = Form("is_min_bias==1&&(MBD_centrality>%f&&MBD_centrality<=%f)&&(NClus_Layer1<(NClus-NClus_Layer1)-5*TMath::Sqrt(NClus-NClus_Layer1))", i * 0.1, (i + 1) * 0.1); // inner cluster is smaller than outer cluster by 5 sigma
0024         std::cout << chain->GetEntries(cut_base.Data()) << " " << chain->GetEntries(cut_OuterInnerBranch.Data()) << " " << static_cast<double>(chain->GetEntries(cut_OuterInnerBranch.Data())) / static_cast<double>(chain->GetEntries(cut_base.Data())) * 100. << std::endl;
0025 
0026         hM_cent_IsMB_all->SetBinContent(i + 1, static_cast<double>(chain->GetEntries(cut_base.Data())));
0027         hM_cent_IsMB_OuterInnerBranch->SetBinContent(i + 1, static_cast<double>(chain->GetEntries(cut_OuterInnerBranch.Data())));
0028         hM_ratio->SetBinContent(i + 1, static_cast<double>(chain->GetEntries(cut_OuterInnerBranch.Data())) / static_cast<double>(chain->GetEntries(cut_base.Data())) * 100.);
0029     }
0030 
0031     TCanvas *c1 = new TCanvas("c1", "c1", 800, 600);
0032     TPad *pad1 = new TPad("pad1", "pad1", 0, 0.3, 1, 1);
0033     pad1->SetBottomMargin(0);
0034     pad1->SetTopMargin(TopMargin);
0035     pad1->SetRightMargin(RightMargin);
0036     pad1->Draw();
0037     TPad *pad2 = new TPad("pad2", "pad2", 0, 0, 1, 0.3);
0038     pad2->SetRightMargin(RightMargin);
0039     pad2->SetTopMargin(0);
0040     pad2->SetBottomMargin(0.31);
0041     pad2->Draw();
0042     pad1->cd();
0043     pad1->SetLogy(1);
0044     hM_cent_IsMB_all->GetXaxis()->SetTitleSize(0);
0045     hM_cent_IsMB_all->GetXaxis()->SetLabelSize(0);
0046     hM_cent_IsMB_all->GetYaxis()->SetRangeUser(hM_cent_IsMB_OuterInnerBranch->GetMinimum(0)*0.5, hM_cent_IsMB_all->GetMaximum()*1000);
0047     hM_cent_IsMB_all->GetYaxis()->SetTitle("Counts");
0048     hM_cent_IsMB_all->GetYaxis()->SetTitleSize(AxisTitleSize);
0049     hM_cent_IsMB_all->GetYaxis()->SetLabelSize(AxisTitleSize);
0050     hM_cent_IsMB_all->SetMarkerSize(1.6);
0051     hM_cent_IsMB_all->Draw("histtext");
0052     hM_cent_IsMB_OuterInnerBranch->SetLineColor(kTVibRed);
0053     hM_cent_IsMB_OuterInnerBranch->SetMarkerSize(1.6);
0054     hM_cent_IsMB_OuterInnerBranch->Draw("histtextsame");
0055     TLegend *leg = new TLegend(0.55, 0.75, 0.85, 0.85);
0056     leg->AddEntry(hM_cent_IsMB_all, "Is Minimum Bias (MB)", "l");
0057     leg->AddEntry(hM_cent_IsMB_OuterInnerBranch, "Is MB && N_{Inner}<5#times#sigma(N_{outer})", "l");
0058     leg->SetBorderSize(0);
0059     leg->SetFillStyle(0);
0060     leg->SetTextSize(0.04);
0061     leg->Draw();
0062     pad2->cd();
0063     pad2->SetLogy(1);
0064     for (int i = 0; i < 10; i++)
0065     {
0066         hM_ratio->GetXaxis()->SetBinLabel(i + 1, Form("%d-%d%%", i * 10, (i + 1) * 10));
0067     }
0068     hM_ratio->SetLineColor(kBlack);
0069     hM_ratio->SetLineWidth(2);
0070     hM_ratio->GetYaxis()->SetTitle("Ratio (%)");
0071     hM_ratio->GetYaxis()->SetNdivisions(505);
0072     hM_ratio->GetYaxis()->SetTitleSize(AxisTitleSize*textscale);
0073     hM_ratio->GetYaxis()->SetTitleOffset(0.5);
0074     hM_ratio->GetYaxis()->SetLabelSize(AxisTitleSize*textscale);
0075     hM_ratio->GetYaxis()->SetRangeUser(hM_ratio->GetMinimum(0)*0.5, hM_ratio->GetMaximum()*100);
0076     hM_ratio->GetXaxis()->SetTitle("Centrality interval");
0077     hM_ratio->GetXaxis()->SetTitleSize(AxisTitleSize*textscale);
0078     hM_ratio->GetXaxis()->SetTitleOffset(1.1);
0079     hM_ratio->GetXaxis()->SetLabelSize(AxisTitleSize*textscale);
0080     gStyle->SetPaintTextFormat(".2e");
0081     hM_ratio->SetMarkerSize(1.5*textscale);
0082     hM_ratio->Draw("histtext");
0083     c1->SaveAs("InnerOuterClus_quickana.pdf");
0084 }