void anaFragShape(TString infile="dj_HCPR-GoodTrkAndPixel_CleanEvt1130.root") { TChain * djcalo = new TChain("djcalo/djTree"); djcalo->Add(infile); aliases_dijet(djcalo); TChain * djcalopix = new TChain("djcalo_pxl/djTree"); djcalopix->Add(infile); aliases_dijet(djcalopix); TString evtSel("(cent<10 && nljet>120 && abs(nljeta)<2 && aljet>50 && abs(aljeta)<2 && jdphi>2.5 && Aj>0.24)"); TH1::SetDefaultSumw2(); TCanvas * c0 = new TCanvas("c0","c0",500,500); djcalo->Draw("Aj>>hAj(20,0,1)",evtSel); djcalopix->Draw("Aj",evtSel,"Esame"); TCanvas * c2 = new TCanvas("c2","c2",500,500); TH1D * hJDPhi = new TH1D("hJDPhi","hJDPhi",50,0,3.1416); TH1D * hJDPhi2 = new TH1D("hJDPhi2","hJDPhi",50,0,3.1416); Float_t numDJ = djcalo->Draw("jdphi>>hJDPhi",evtSel); Float_t numDJ2 = djcalopix->Draw("jdphi>>hJDPhi2",evtSel); cout << "num djs: " << numDJ << " djs(pix)" << numDJ2 << endl; TH1D * hPNDRTrk = new TH1D("hPNDRTrk",";R(trk,jet);1/(N_{DJ} 2#piR) dp_{T}^{Trk}/dR",10,0,TMath::PiOver2()); TH1D * hPNDRPix = new TH1D("hPNDRPix",";R(trk,jet);1/(N_{DJ} 2#piR) dp_{T}^{Trk}/dR",10,0,TMath::PiOver2()); TH1D * hPADRTrk = new TH1D("hPADRTrk",";R(trk,jet);1/(N_{DJ} 2#piR) dp_{T}^{Trk}/dR",10,0,TMath::PiOver2()); TH1D * hPADRPix = new TH1D("hPADRPix",";R(trk,jet);1/(N_{DJ} 2#piR) dp_{T}^{Trk}/dR",10,0,TMath::PiOver2()); djcalo->Draw("pndr>>hPNDRTrk",Form("(%s&&ppt>=1.2)*(ppt/(TMath::TwoPi()*pndr))",evtSel.Data())); djcalopix->Draw("pndr>>hPNDRPix",Form("(%s&&ppt>=0.3&&ppt<1.2)*(ppt/(TMath::TwoPi()*pndr))",evtSel.Data())); djcalo->Draw("padr>>hPADRTrk",Form("(%s&&ppt>=1.2)*(ppt/(TMath::TwoPi()*padr))",evtSel.Data())); djcalopix->Draw("padr>>hPADRPix",Form("(%s&&ppt>=0.3&&ppt<1.2)*(ppt/(TMath::TwoPi()*padr))",evtSel.Data())); hPNDRTrk->Scale(1./(numDJ*hPNDRTrk->GetBinWidth(1))); hPNDRPix->Scale(1./(numDJ*hPNDRPix->GetBinWidth(1))); hPADRTrk->Scale(1./(numDJ*hPADRTrk->GetBinWidth(1))); hPADRPix->Scale(1./(numDJ*hPADRPix->GetBinWidth(1))); hPNDRPix->SetMinimum(50); hPNDRPix->SetMaximum(100); hPNDRTrk->SetMinimum(10); hPNDRTrk->SetMaximum(2000); hPNDRPix->SetMarkerStyle(kFullCircle); hPNDRTrk->SetMarkerStyle(kFullSquare); hPNDRPix->SetMarkerColor(kRed); hPNDRTrk->SetMarkerColor(kRed); hPADRPix->SetMarkerStyle(kOpenCircle); hPADRTrk->SetMarkerStyle(kOpenSquare); hPADRPix->SetMarkerColor(kBlue); hPADRTrk->SetMarkerColor(kBlue); TCanvas * c3 = new TCanvas("c3","c3",500,500); hPNDRPix->Draw("E"); hPADRPix->Draw("Esame"); TCanvas * c3_2 = new TCanvas("c3_2","c3_2",500,500); c3_2->SetLogy(); hPNDRTrk->Draw("E"); hPADRTrk->Draw("Esame"); }
void anaFragShapePtBinsDR(TString infile1="/net/hisrv0001/home/frankma/scratch01/ana/merge/dj_HCPR-J50U-JSON_hiGoodMergedTrksRuns152562to152643-v1_StdAna1204v2.root", TString infile2="/net/hisrv0001/home/frankma/scratch01/ana/merge/dj_HCPR-GoodTrk1123_All0.root" ) { gStyle->SetMarkerStyle(20); TChain * djcalo = new TChain("djcalo/djTree"); djcalo->Add(infile1); djcalo->Add(infile2); aliases_dijet(djcalo); TString evtSel("(cent<10 && nljet>120 && abs(nljeta)<2 && aljet>50 && abs(aljeta)<2 && jdphi>2.5 && Aj>0.24)"); TH1::SetDefaultSumw2(); //cones reflected in eta. avoid jets *right* at mid-rapidity to avoid overlap djcalo->SetAlias("pndrrefl","(sqrt(pndphi*pndphi+(peta+nljeta)*(peta+nljeta)))"); djcalo->SetAlias("padrrefl","(sqrt(padphi*padphi+(peta+aljeta)*(peta+aljeta)))"); TString evtSelNS = evtSel + " && (abs(nljeta)>0.5)"; TString evtSelAS = evtSel + " && (abs(aljeta)>0.5)"; //jet energy imbalance TCanvas * c0 = new TCanvas("c0","c0",500,500); djcalo->Draw("Aj>>hAj(20,0,1)",evtSel); //back-to-back correlation TCanvas * c2 = new TCanvas("c2","c2",500,500); TH1D * hJDPhi = new TH1D("hJDPhi","hJDPhi",50,0,3.1416); TH1D * hJDPhi2 = new TH1D("hJDPhi2","hJDPhi",50,0,3.1416); Float_t numDJNS = djcalo->Draw("jdphi>>hJDPhi",evtSelNS); Float_t numDJAS = djcalo->Draw("jdphi>>hJDPhi",evtSelAS,"same"); cout << "num djs: " << numDJNS << " (near-side) \t" << numDJAS << " (away-side)" << endl; //track energy density by dR in pt bins TString histtitle = ";R(trk,jet);1/N_{DJ} dp_{T}^{Trk}/dR"; TH1D * hPNDRTrk0 = new TH1D("hPNDRTrk0",histtitle.Data(),10,0,TMath::PiOver2()); TH1D * hPADRTrk0 = new TH1D("hPADRTrk0",histtitle.Data(),10,0,TMath::PiOver2()); djcalo->Draw("pndr>>hPNDRTrk0",Form("(%s&&ppt<1.0)*ppt",evtSelNS.Data()),"goff"); djcalo->Draw("padr>>hPADRTrk0",Form("(%s&&ppt<1.0)*ppt",evtSelAS.Data()),"goff"); TH1D * hPNDRReflTrk0 = new TH1D("hPNDRReflTrk0",histtitle.Data(),10,0,TMath::PiOver2()); TH1D * hPADRReflTrk0 = new TH1D("hPADRReflTrk0",histtitle.Data(),10,0,TMath::PiOver2()); djcalo->Draw("pndrrefl>>hPNDRReflTrk0",Form("(%s&&ppt<1.0)*ppt",evtSelNS.Data()),"goff"); djcalo->Draw("padrrefl>>hPADRReflTrk0",Form("(%s&&ppt<1.0)*ppt",evtSelAS.Data()),"goff"); TH1D * hPNDRTrk1 = new TH1D("hPNDRTrk1",histtitle.Data(),10,0,TMath::PiOver2()); TH1D * hPADRTrk1 = new TH1D("hPADRTrk1",histtitle.Data(),10,0,TMath::PiOver2()); djcalo->Draw("pndr>>hPNDRTrk1",Form("(%s&&ppt<2.0&&ppt>=1.0)*ppt",evtSelNS.Data()),"goff"); djcalo->Draw("padr>>hPADRTrk1",Form("(%s&&ppt<2.0&&ppt>=1.0)*ppt",evtSelAS.Data()),"goff"); TH1D * hPNDRReflTrk1 = new TH1D("hPNDRReflTrk1",histtitle.Data(),10,0,TMath::PiOver2()); TH1D * hPADRReflTrk1 = new TH1D("hPADRReflTrk1",histtitle.Data(),10,0,TMath::PiOver2()); djcalo->Draw("pndrrefl>>hPNDRReflTrk1",Form("(%s&&ppt<2.0&&ppt>=1.0)*ppt",evtSelNS.Data()),"goff"); djcalo->Draw("padrrefl>>hPADRReflTrk1",Form("(%s&&ppt<2.0&&ppt>=1.0)*ppt",evtSelAS.Data()),"goff"); TH1D * hPNDRTrk2 = new TH1D("hPNDRTrk2",histtitle.Data(),10,0,TMath::PiOver2()); TH1D * hPADRTrk2 = new TH1D("hPADRTrk2",histtitle.Data(),10,0,TMath::PiOver2()); djcalo->Draw("pndr>>hPNDRTrk2",Form("(%s&&ppt<4.0&&ppt>=2.0)*ppt",evtSelNS.Data()),"goff"); djcalo->Draw("padr>>hPADRTrk2",Form("(%s&&ppt<4.0&&ppt>=2.0)*ppt",evtSelAS.Data()),"goff"); TH1D * hPNDRReflTrk2 = new TH1D("hPNDRReflTrk2",histtitle.Data(),10,0,TMath::PiOver2()); TH1D * hPADRReflTrk2 = new TH1D("hPADRReflTrk2",histtitle.Data(),10,0,TMath::PiOver2()); djcalo->Draw("pndrrefl>>hPNDRReflTrk2",Form("(%s&&ppt<4.0&&ppt>=2.0)*ppt",evtSelNS.Data()),"goff"); djcalo->Draw("padrrefl>>hPADRReflTrk2",Form("(%s&&ppt<4.0&&ppt>=2.0)*ppt",evtSelAS.Data()),"goff"); TH1D * hPNDRTrk4 = new TH1D("hPNDRTrk4",histtitle.Data(),10,0,TMath::PiOver2()); TH1D * hPADRTrk4 = new TH1D("hPADRTrk4",histtitle.Data(),10,0,TMath::PiOver2()); djcalo->Draw("pndr>>hPNDRTrk4",Form("(%s&&ppt<8.0&&ppt>=4.0)*ppt",evtSelNS.Data()),"goff"); djcalo->Draw("padr>>hPADRTrk4",Form("(%s&&ppt<8.0&&ppt>=4.0)*ppt",evtSelAS.Data()),"goff"); TH1D * hPNDRReflTrk4 = new TH1D("hPNDRReflTrk4",histtitle.Data(),10,0,TMath::PiOver2()); TH1D * hPADRReflTrk4 = new TH1D("hPADRReflTrk4",histtitle.Data(),10,0,TMath::PiOver2()); djcalo->Draw("pndrrefl>>hPNDRReflTrk4",Form("(%s&&ppt<8.0&&ppt>=4.0)*ppt",evtSelNS.Data()),"goff"); djcalo->Draw("padrrefl>>hPADRReflTrk4",Form("(%s&&ppt<8.0&&ppt>=4.0)*ppt",evtSelAS.Data()),"goff"); TH1D * hPNDRTrk8 = new TH1D("hPNDRTrk8",histtitle.Data(),10,0,TMath::PiOver2()); TH1D * hPADRTrk8 = new TH1D("hPADRTrk8",histtitle.Data(),10,0,TMath::PiOver2()); djcalo->Draw("pndr>>hPNDRTrk8",Form("(%s&&ppt>=8.0)*ppt",evtSelNS.Data()),"goff"); djcalo->Draw("padr>>hPADRTrk8",Form("(%s&&ppt>=8.0)*ppt",evtSelAS.Data()),"goff"); TH1D * hPNDRReflTrk8 = new TH1D("hPNDRReflTrk8",histtitle.Data(),10,0,TMath::PiOver2()); TH1D * hPADRReflTrk8 = new TH1D("hPADRReflTrk8",histtitle.Data(),10,0,TMath::PiOver2()); djcalo->Draw("pndrrefl>>hPNDRReflTrk8",Form("(%s&&ppt>=8.0)*ppt",evtSelNS.Data()),"goff"); djcalo->Draw("padrrefl>>hPADRReflTrk8",Form("(%s&&ppt>=8.0)*ppt",evtSelAS.Data()),"goff"); hPNDRTrk0->Scale(1./(numDJNS*hPNDRTrk0->GetBinWidth(1))); hPADRTrk0->Scale(1./(numDJAS*hPADRTrk0->GetBinWidth(1))); hPNDRReflTrk0->Scale(1./(numDJNS*hPNDRReflTrk0->GetBinWidth(1))); hPADRReflTrk0->Scale(1./(numDJAS*hPADRReflTrk0->GetBinWidth(1))); hPNDRTrk1->Scale(1./(numDJNS*hPNDRTrk1->GetBinWidth(1))); hPADRTrk1->Scale(1./(numDJAS*hPADRTrk1->GetBinWidth(1))); hPNDRReflTrk1->Scale(1./(numDJNS*hPNDRReflTrk1->GetBinWidth(1))); hPADRReflTrk1->Scale(1./(numDJAS*hPADRReflTrk1->GetBinWidth(1))); hPNDRTrk2->Scale(1./(numDJNS*hPNDRTrk2->GetBinWidth(1))); hPADRTrk2->Scale(1./(numDJAS*hPADRTrk2->GetBinWidth(1))); hPNDRReflTrk2->Scale(1./(numDJNS*hPNDRReflTrk2->GetBinWidth(1))); hPADRReflTrk2->Scale(1./(numDJAS*hPADRReflTrk2->GetBinWidth(1))); hPNDRTrk4->Scale(1./(numDJNS*hPNDRTrk4->GetBinWidth(1))); hPADRTrk4->Scale(1./(numDJAS*hPADRTrk4->GetBinWidth(1))); hPNDRReflTrk4->Scale(1./(numDJNS*hPNDRReflTrk4->GetBinWidth(1))); hPADRReflTrk4->Scale(1./(numDJAS*hPADRReflTrk4->GetBinWidth(1))); hPNDRTrk8->Scale(1./(numDJNS*hPNDRTrk8->GetBinWidth(1))); hPADRTrk8->Scale(1./(numDJAS*hPADRTrk8->GetBinWidth(1))); hPNDRReflTrk8->Scale(1./(numDJNS*hPNDRReflTrk8->GetBinWidth(1))); hPADRReflTrk8->Scale(1./(numDJAS*hPADRReflTrk8->GetBinWidth(1))); hPNDRTrk0->SetMinimum(0.1); hPNDRTrk0->SetMaximum(1.3*hPNDRTrk0->GetBinContent(1)); hPNDRTrk0->SetMarkerStyle(kFullSquare); hPNDRTrk0->SetMarkerColor(kRed); hPADRTrk0->SetMarkerStyle(kOpenSquare); hPADRTrk0->SetMarkerColor(kBlue); hPNDRReflTrk0->SetLineColor(kRed); hPADRReflTrk0->SetLineColor(kBlue); hPNDRTrk1->SetMinimum(0.1); hPNDRTrk1->SetMaximum(1.3*hPNDRTrk1->GetBinContent(1)); hPNDRTrk1->SetMarkerStyle(kFullSquare); hPNDRTrk1->SetMarkerColor(kRed); hPADRTrk1->SetMarkerStyle(kOpenSquare); hPADRTrk1->SetMarkerColor(kBlue); hPNDRReflTrk1->SetLineColor(kRed); hPADRReflTrk1->SetLineColor(kBlue); hPNDRTrk2->SetMinimum(0.1); hPNDRTrk2->SetMaximum(1.3*hPNDRTrk2->GetBinContent(1)); hPNDRTrk2->SetMarkerStyle(kFullSquare); hPNDRTrk2->SetMarkerColor(kRed); hPADRTrk2->SetMarkerStyle(kOpenSquare); hPADRTrk2->SetMarkerColor(kBlue); hPNDRReflTrk2->SetLineColor(kRed); hPADRReflTrk2->SetLineColor(kBlue); hPNDRTrk4->SetMinimum(0.1); hPNDRTrk4->SetMaximum(1.3*hPNDRTrk4->GetBinContent(1)); hPNDRTrk4->SetMarkerStyle(kFullSquare); hPNDRTrk4->SetMarkerColor(kRed); hPADRTrk4->SetMarkerStyle(kOpenSquare); hPADRTrk4->SetMarkerColor(kBlue); hPNDRReflTrk4->SetLineColor(kRed); hPADRReflTrk4->SetLineColor(kBlue); hPNDRTrk8->SetMinimum(0.1); hPNDRTrk8->SetMaximum(1.3*hPNDRTrk8->GetBinContent(1)); hPNDRTrk8->SetMarkerStyle(kFullSquare); hPNDRTrk8->SetMarkerColor(kRed); hPADRTrk8->SetMarkerStyle(kOpenSquare); hPADRTrk8->SetMarkerColor(kBlue); hPNDRReflTrk8->SetLineColor(kRed); hPADRReflTrk8->SetLineColor(kBlue); TCanvas * c3 = new TCanvas("c3","c3",800,500); c3->Divide(3,2); c3->cd(1); hPNDRTrk0->Draw("E"); hPADRTrk0->Draw("Esame"); hPNDRReflTrk0->Draw("histsame"); hPADRReflTrk0->Draw("histsame"); c3->cd(2); hPNDRTrk1->Draw("E"); hPADRTrk1->Draw("Esame"); hPNDRReflTrk1->Draw("histsame"); hPADRReflTrk1->Draw("histsame"); c3->cd(3); hPNDRTrk2->Draw("E"); hPADRTrk2->Draw("Esame"); hPNDRReflTrk2->Draw("histsame"); hPADRReflTrk2->Draw("histsame"); c3->cd(4); hPNDRTrk4->Draw("E"); hPADRTrk4->Draw("Esame"); hPNDRReflTrk4->Draw("histsame"); hPADRReflTrk4->Draw("histsame"); c3->cd(5); hPNDRTrk8->Draw("E"); hPADRTrk8->Draw("Esame"); hPNDRReflTrk8->Draw("histsame"); hPADRReflTrk8->Draw("histsame"); TCanvas * c4 = new TCanvas("c4","c4",600,500); c4->Divide(3,2); c4->cd(1); TH1D* hPNDRSigTrk0 = (TH1D*) hPNDRTrk0->Clone("hPNDRSigTrk0"); hPNDRSigTrk0->Add(hPNDRReflTrk0,-1); hPNDRSigTrk0->Draw("E"); TH1D* hPADRSigTrk0 = (TH1D*) hPADRTrk0->Clone("hPADRSigTrk0"); hPADRSigTrk0->Add(hPADRReflTrk0,-1); hPADRSigTrk0->Draw("Esame"); c4->cd(2); TH1D* hPNDRSigTrk1 = (TH1D*) hPNDRTrk1->Clone("hPNDRSigTrk1"); hPNDRSigTrk1->Add(hPNDRReflTrk1,-1); hPNDRSigTrk1->Draw("E"); TH1D* hPADRSigTrk1 = (TH1D*) hPADRTrk1->Clone("hPADRSigTrk1"); hPADRSigTrk1->Add(hPADRReflTrk1,-1); hPADRSigTrk1->Draw("Esame"); c4->cd(3); TH1D* hPNDRSigTrk2 = (TH1D*) hPNDRTrk2->Clone("hPNDRSigTrk2"); hPNDRSigTrk2->Add(hPNDRReflTrk2,-1); hPNDRSigTrk2->Draw("E"); TH1D* hPADRSigTrk2 = (TH1D*) hPADRTrk2->Clone("hPADRSigTrk2"); hPADRSigTrk2->Add(hPADRReflTrk2,-1); hPADRSigTrk2->Draw("Esame"); c4->cd(4); TH1D* hPNDRSigTrk4 = (TH1D*) hPNDRTrk4->Clone("hPNDRSigTrk4"); hPNDRSigTrk4->Add(hPNDRReflTrk4,-1); hPNDRSigTrk4->Draw("E"); TH1D* hPADRSigTrk4 = (TH1D*) hPADRTrk4->Clone("hPADRSigTrk4"); hPADRSigTrk4->Add(hPADRReflTrk4,-1); hPADRSigTrk4->Draw("Esame"); c4->cd(5); TH1D* hPNDRSigTrk8 = (TH1D*) hPNDRTrk8->Clone("hPNDRSigTrk8"); hPNDRSigTrk8->Add(hPNDRReflTrk8,-1); hPNDRSigTrk8->Draw("E"); TH1D* hPADRSigTrk8 = (TH1D*) hPADRTrk8->Clone("hPADRSigTrk8"); hPADRSigTrk8->Add(hPADRReflTrk8,-1); hPADRSigTrk8->Draw("Esame"); TCanvas * c5 = new TCanvas("c5","c5",600,500); TH1D* hDiff0 = (TH1D*) hPADRSigTrk0->Clone("hDiff0"); hDiff0->Add(hPNDRSigTrk0,-1); hDiff0->SetMarkerColor(kBlue); hDiff0->SetMarkerStyle(kFullSquare); hDiff0->SetMaximum(14); hDiff0->SetMinimum(-4); hDiff0->SetStats(0); TH1D* hDiff1 = (TH1D*) hPADRSigTrk1->Clone("hDiff1"); hDiff1->Add(hPNDRSigTrk1,-1); hDiff1->SetMarkerColor(kGreen-2); hDiff1->SetMarkerStyle(kFullCircle); TH1D* hDiff2 = (TH1D*) hPADRSigTrk2->Clone("hDiff2"); hDiff2->Add(hPNDRSigTrk2,-1); hDiff2->SetMarkerColor(kOrange-2); hDiff2->SetMarkerSize(1.3); hDiff2->SetMarkerStyle(kFullStar); TH1D* hDiff4 = (TH1D*) hPADRSigTrk4->Clone("hDiff4"); hDiff4->Add(hPNDRSigTrk4,-1); hDiff4->SetMarkerColor(kOrange+8); hDiff4->SetMarkerStyle(kFullTriangleUp); TH1D* hDiff8 = (TH1D*) hPADRSigTrk8->Clone("hDiff8"); hDiff8->Add(hPNDRSigTrk8,-1); hDiff8->SetMarkerColor(kRed); hDiff8->SetMarkerStyle(kFullTriangleDown); hDiff0->Draw("l"); hDiff1->Draw("lsame"); hDiff2->Draw("lsame"); hDiff4->Draw("lsame"); hDiff8->Draw("lsame"); TFile *fout = new TFile("out.root","RECREATE"); fout->cd(); hPNDRSigTrk0->Write(); hPADRSigTrk0->Write(); hPNDRSigTrk1->Write(); hPADRSigTrk1->Write(); hPNDRSigTrk2->Write(); hPADRSigTrk2->Write(); hPNDRSigTrk4->Write(); hPADRSigTrk4->Write(); hPNDRSigTrk8->Write(); hPADRSigTrk8->Write(); /* hPNDRTrk0->Write(); hPADRTrk0->Write(); hPNDRReflTrk0->Write(); hPADRReflTrk0->Write(); hPNDRTrk1->Write(); hPADRTrk1->Write(); hPNDRReflTrk1->Write(); hPADRReflTrk1->Write(); hPNDRTrk2->Write(); hPADRTrk2->Write(); hPNDRReflTrk2->Write(); hPADRReflTrk2->Write(); hPNDRTrk4->Write(); hPADRTrk4->Write(); hPNDRReflTrk4->Write(); hPADRReflTrk4->Write(); hPNDRTrk8->Write(); hPADRTrk8->Write(); hPNDRReflTrk8->Write(); hPADRReflTrk8->Write(); */ fout->Close(); }
void RateEstimateVpt(TString infile="alldatacleaned.root") //Contains both cleaned and uncleaned data { //TChain * tree = new TChain("icPu5JetAnalyzer_clean/t"); TChain * tree = new TChain("icPu5JetAnalyzer/t"); tree->Add(infile); //tree->AddFriend("hltanalysis_clean/HltTree",infile); tree->AddFriend("hltanalysis/HltTree",infile); // cout << "Total: " << tree->GetEntries() << endl; TCut evtSel("Run==152957&&HLT_HIMinBiasHfOrBSC&&hiBin<40&&abs(jteta[0])<2"); //Canvas definition and choosing uncorrected and corrected jet pt variables TCanvas *e1 = new TCanvas("e1","Rate Estimate vs. Threshold",200,10,700,500); e1->SetLogy(); TH1D * RJetPt = new TH1D("RJetPt",";Leading Jet p_{T} (GeV/c);count;",300,0,300); TH1D * JetPt = new TH1D("JetPt",";Leading Jet p_{T} (GeV/c);count;",300,0,300); tree->Draw("rawpt[0]>>RJetPt",evtSel,"goff"); tree->Draw("jtpt[0]>>JetPt",evtSel,"goff"); cout << "Integral: " << JetPt->Integral(0,101) << endl; //Defines total # of entries for normalization and max rate TH1F * h4 = new TH1F("h4","",50,0,300); tree->Draw("LumiBlock>>h4",evtSel,"goff"); Float_t R = 1 ; //Defines Maximum Rate Float_t TA = h4->GetEntries(); //Computes Accept Fraction as a function of pt const Int_t n = 61; Float_t x[n], y[n], z[n], w[n], t[n]; for (Int_t i=0;i<n;i++) { x[i] = 300-i*5; y[i] = RJetPt->Integral(x[i],301); z[i] = R*y[i]/TA; w[i] = JetPt->Integral(x[i],301); t[i] = R*w[i]/TA; printf(" i %i %f %f %f \n",i,x[i],y[i],z[i]); } //Defines graphs and axis. gr = new TGraph(n,x,z); gs = new TGraph(n,x,t); gr->GetYaxis()->SetRangeUser(0.001,5000); // Attractive features for graphs gr->SetLineColor(kRed); gs->SetLineColor(kBlue); gr->SetMarkerColor(kRed); gr->SetMarkerStyle(kOpenCircle); gs->SetMarkerColor(kBlue); gs->SetMarkerStyle(kOpenCircle); gr->SetTitle(""); gr->GetXaxis()->SetTitle("Jet Pt Threshold (GeV/c)"); gr->GetYaxis()->SetTitle("Rate Estimate (Hz)"); //Draw graphs gr->Draw("LAP"); gs->Draw("LP"); //Defines Legened TLegend *L = new TLegend(0.52292,0.675103,0.932471,0.919831); L->SetHeader("AllPhysics, |#eta| < 2, All Centrality" ); L->SetBorderSize(0); L->SetFillStyle(0); L->AddEntry(gr,"Uncorrected p_{T}","pl"); L->AddEntry(gs,"Corrected p_{T}","pl"); L->Draw(); }