def make_residuals(pdgid, xtitle, jetline): hname = 'res_{pdgid}'.format(pdgid=pdgid) res = TH1F(hname, '', nbins, xmin, xmax) var = 'jet1_{pdgid}_pt/jet1_gen_{pdgid}_pt'.format(pdgid=pdgid) minfrac_sel = '(jet1_gen_{pdgid}_pt/jet1_gen_pt > 0.1)'.format(pdgid=pdgid) sel = ' && '.join([gen_sel, minfrac_sel]) print 'var\t', var print 'sel\t', sel events.Project(hname, var, sel, "", n_for_frac) res.Draw() res.Scale(1/res.GetEntries()) res.SetXTitle(xtitle) tdrstyle.cmsPrel(-1, 13., True, textScale=textScale) print_jet_info(jetline) gPad.Update() gPad.SaveAs(hname + '.pdf') return res
func = TF1("matthieu", "sqrt( [0]*[0]+ ([1]*sqrt(x-[2]))**2 + ([3]*(x-[4]))**2 )") func.SetLineColor(1) metpf = MetVsSumEt('pfMetT1', *args) metpf.format(pf_style, '#SigmaE_{T} (GeV)') metpf.hsigma.Draw('same') # metpf.hsigma.Fit(func, '', 'same', 50, xmax) metcalo.hsigma.SetStats(False) metpf.hsigma.SetStats(False) legend = TLegend(0.68,0.21, 0.87, 0.35) legend.AddEntry(metcalo.hsigma, 'Calo', 'p') legend.AddEntry(metpf.hsigma, 'PF', 'p') legend.Draw('same') tdrstyle.cmsPrel(-1, 13, True) c1.SaveAs('met_sigma_vs_sumet.pdf') c2 = TCanvas("c2","c2") # sumetresponse_args = (tree, 50, xmin, xmax, 100, 0, 2) sumetresponse_args = (tree, len(xbins)-1, xbins, 100, 0, 2) sumetresponse_pf = SumEtResponse('pfMetT1', *sumetresponse_args) sumetresponse_pf.format(pf_style, '#SigmaE_{T} (GeV)') sumetresponse_pf.hmean.Draw() sumetresponse_pf.hmean.GetXaxis().SetNdivisions(5) sumetresponse_calo = SumEtResponse('caloMetT1', *sumetresponse_args) sumetresponse_calo.format(traditional_style, '#SigmaE_{T} (GeV)') sumetresponse_calo.hmean.Draw("same")
cneutral = TCanvas('cneutral') hname = 'res_neutrals' res = TH1F(hname, '', nbins, xmin, xmax) var = '(jet1_22_pt+jet1_130_pt)/jet1_gen_130_pt' minfrac_sel = '(jet1_gen_130_pt/jet1_gen_pt > 0.1)' sel = ' && '.join([gen_sel, minfrac_sel]) print 'var\t', var print 'sel\t', sel events.Draw('>>nophotons', 'jet1_gen_22_num == 0.') events.SetEventList(gDirectory.Get('nophotons')) events.Project(hname, var, sel) res.Draw() res.Scale(1/res.GetEntries()) res.SetXTitle('(#Sigma p_{T,#gamma} + #Sigma p_{T,h^{0}}) / #Sigma p_{T,h^{0}}^{Ref}') tdrstyle.cmsPrel(-1, 13., True, textScale=textScale) print_jet_info('#Sigma p_{T,h^{0}}^{Ref}/ p_{T}^{Ref} > 0.1', '#Sigma p_{T, #gamma}^{Ref} = 0') gPad.Update() gPad.SaveAs(hname + '.pdf') # cneutralprof = TCanvas('cneutralprof') # neutralprof = TProfile('neutralprof','', 50, 0, 1) # events.Project(neutralprof.GetName(), '(jet1_22_pt+jet1_130_pt)/jet1_pt:jet1_gen_130_pt/jet1_gen_pt', gen_sel, 'prof') # neutralprof.SetXTitle('p_{T,h^{0}}^{Ref}/p_{T}^{Ref}') # neutralprof.SetYTitle('(p_{T,#gamma} + p_{T,h^{0}}) / p_{T}') # neutralprof.SetMarkerSize(1) # neutralprof.Draw() # line = TLine(0,0,1,1) # line.SetLineStyle(7) # line.Draw() # tdrstyle.cmsPrel(-1, 13., True, textScale=textScale)