File indexing completed on 2025-08-05 08:11:20
0001
0002 from optparse import OptionParser
0003 import sys
0004 import os
0005 import datetime
0006 from array import *
0007 from ROOT import *
0008 import numpy
0009 import math
0010 import glob
0011 from plotUtil import *
0012
0013 titlesize = 0.05
0014 labelsize = 0.05
0015 pad1scale = 1.05
0016 pad2scale = 2.6
0017
0018 gROOT.SetBatch(True)
0019
0020 if __name__ == '__main__':
0021 hM_PHG4Hit_all_z0 = TH1F("hM_PHG4Hit_all_z0","hM_PHG4Hit_all_z0",500,-25,25)
0022 hM_TrkrHit_truthhit_z0 = TH1F("hM_TrkrHit_truthhit_z0","hM_TrkrHit_truthhit_z0",500,-25,25)
0023
0024
0025
0026 file = TFile("/sphenix/user/hjheng/sPHENIXRepo/analysis/dNdEta_Run2023/production/Sim_Ntuple_HIJING_ana443_20241102/ntuple_00008.root", "READ")
0027
0028
0029 tree = file.Get("EventTree")
0030 nentries = tree.GetEntries()
0031 for ientry in range(nentries):
0032 tree.GetEntry(ientry)
0033 for i in range(len(tree.PHG4Hit_z0)):
0034 hM_PHG4Hit_all_z0.Fill(tree.PHG4Hit_z0[i])
0035 for i in range(len(tree.TrkrHit_truthHit_z0)):
0036 hM_TrkrHit_truthhit_z0.Fill(tree.TrkrHit_truthHit_z0[i])
0037
0038 maxbincontent = max(hM_PHG4Hit_all_z0.GetMaximum(), hM_TrkrHit_truthhit_z0.GetMaximum())
0039
0040 c = TCanvas("c","c",800,600)
0041 pad1 = TPad( 'pad1', ' ', 0, 0.3, 1, 1)
0042 pad2 = TPad( 'pad2', ' ', 0, 0, 1, 0.3)
0043 pad1.SetBottomMargin(0.0)
0044 pad1.Draw()
0045 pad2.SetTopMargin(0.0)
0046 pad2.SetBottomMargin(0.3)
0047 pad2.Draw()
0048 pad1.cd()
0049 hM_PHG4Hit_all_z0.SetLineColor(kBlack)
0050 hM_PHG4Hit_all_z0.SetLineWidth(2)
0051 hM_PHG4Hit_all_z0.GetYaxis().SetTitle("Counts")
0052 hM_PHG4Hit_all_z0.GetYaxis().SetTitleOffset(1.5)
0053 hM_PHG4Hit_all_z0.GetYaxis().SetRangeUser(0, maxbincontent*1.3)
0054 hM_PHG4Hit_all_z0.GetYaxis().SetTitleSize(titlesize)
0055 hM_PHG4Hit_all_z0.GetXaxis().SetTitleSize(titlesize)
0056 hM_PHG4Hit_all_z0.Draw("hist")
0057 hM_TrkrHit_truthhit_z0.SetLineColor(kRed+1)
0058 hM_TrkrHit_truthhit_z0.SetLineWidth(2)
0059 hM_TrkrHit_truthhit_z0.Draw("hist same")
0060 print(hM_PHG4Hit_all_z0.Integral(-1,-1), hM_TrkrHit_truthhit_z0.Integral(-1,-1))
0061 leg = TLegend(0.5, 0.8, 0.9, 0.9)
0062 leg.AddEntry(hM_PHG4Hit_all_z0, "PHG4Hit (all)", "l")
0063 leg.AddEntry(hM_TrkrHit_truthhit_z0, "PHG4Hit (TrkrHit matched)", "l")
0064 leg.SetFillStyle(0)
0065 leg.SetTextSize(0.05)
0066 leg.Draw()
0067 pad2.cd()
0068 pad2.SetGridy()
0069 hM_ratio = hM_TrkrHit_truthhit_z0.Clone("hM_ratio")
0070 hM_ratio.Divide(hM_PHG4Hit_all_z0)
0071 hM_ratio.SetLineColor(kBlack)
0072 hM_ratio.SetLineWidth(1)
0073 hM_ratio.GetXaxis().SetTitle("PHG4Hit z_{0} [cm]")
0074 hM_ratio.GetYaxis().SetTitle("Ratio")
0075 hM_ratio.GetYaxis().SetNdivisions(505)
0076 hM_ratio.GetYaxis().SetTitleSize(titlesize*pad2scale)
0077 hM_ratio.GetYaxis().SetLabelSize(labelsize*pad2scale)
0078 hM_ratio.GetYaxis().SetTitleOffset(0.6)
0079 hM_ratio.GetXaxis().SetTitleSize(titlesize*pad2scale)
0080 hM_ratio.GetXaxis().SetLabelSize(labelsize*pad2scale)
0081 hM_ratio.GetXaxis().SetTitleOffset(1.1)
0082 hM_ratio.GetYaxis().SetRangeUser(0, 1.2)
0083 hM_ratio.Draw("l")
0084 pad1.RedrawAxis()
0085 c.SaveAs("./ClusEtaStripSize/TrkrHit_truthhit_z0.png")
0086 c.SaveAs("./ClusEtaStripSize/TrkrHit_truthhit_z0.pdf")
0087