void drawIaa( bool saveFigures=true) { const int nPtBin = 4; int ptBin[nPtBin+1] = {40, 50,60,80,9999}; double ptBinPaDraw[nPtBin+1] = { 40.5 ,49.5, 58.5, 76.5, 123. } ; // double AvePtBin[nPtBin+1] = { 45, 54.1479, 67.4204, 99.6956, 9999}; const int nCentBinHI = 2; const int centBinHI[nCentBinHI +1] = {-1, 10030, 13099}; TH1D* hJetPt[7][10][6]; // [Collision][centrality][pt] TH1D* hIaa[10][6]; // [centrality][pt] for (int icent=1 ; icent<= 10 ; icent++) { for (int ipt=1 ; ipt<=nPtBin ; ipt++) { hIaa[icent][ipt] = NULL; for (int icoll=0 ; icoll<6 ; icoll++) { hJetPt[icoll][icent][ipt] = NULL; } } } TFile* histFile[7][6]; // [Collision][pt] for (int ipt=1 ; ipt<=nPtBin ; ipt++) { for (int icoll=0 ; icoll<6 ; icoll++) { TString sampleName = getSampleName( icoll ) ; char* fname = Form("ffFiles/jetEnergyResL2L3_smeared/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131018.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); // char* fname = Form("ffFiles/centralValue/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131011.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); // char* fname = Form("ffFiles/centralOct16th/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131016.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); // char* fname = Form("ffFiles/jetEnergyResCorrectedOct16th/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131016.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); // char* fname = Form("ffFiles/jetEnergyScaledMinus2percentOct17/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131017.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); // char* fname = Form("ffFiles/ak5Cone/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131017.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); //char* fname = Form("ffFiles/jetEnergyResCorrected/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131011.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); //char* fname = Form("ffFiles/jetEnergyScaledPlus2percent/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131011.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); // char* fname = Form("ffFiles/jetEnergyScaledMinus2percent/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131011.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); // char* fname = Form("ffFiles/noElectronRejection/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131011.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); //char* fname = Form("ffFiles/leadingJetAnalysis/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131011.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); // char* fname = Form("ffFiles/jetEnergySmearedBy10percent/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131011.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); // char* fname = Form("ffFiles/photonEnergyScaled/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20131011_photonEnergyScaledBy-0.015.root",sampleName.Data(), (int)ptBin[ipt-1], 9999); histFile[icoll][ipt] = new TFile(fname) ; cout << " Reading file : " << fname << endl; if ( histFile[icoll][ipt]->IsZombie() == false ) { cout << " Success." << endl; if ( (icoll == kPPDATA) || (icoll == kPPMC) ) { // PP int icent = 7 ; hJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPtForIaa_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("jetPt_icent%d_final", icent) << endl; // hJetPt[icoll][7][ipt]->Rebin(10); // hJetPt[icoll][7][ipt]->Scale(1./10); } if ( ( icoll == kHIDATA) || (icoll == kHIMC) ) { // PbPb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { hJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPtForIaa_icent%d_final", centBinHI[icent] ) ); cout << " Getting histogram : " << Form("jetPt_icent%d_final", centBinHI[icent] ) << endl; // hJetPt[icoll][icent][ipt]->Rebin(10); //hJetPt[icoll][icent][ipt]->Scale(1/10.); } } } else cout << " no such file " << endl; } } // Calculation of IAA for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { for (int ipt=1 ; ipt<=nPtBin ; ipt++) { hIaa[icent][ipt] = (TH1D*)hJetPt[kHIDATA][icent][ipt]->Clone(Form("iaa_%s",hJetPt[kHIDATA][icent][ipt]->GetName())); hIaa[icent][ipt]->Divide(hJetPt[kPPDATA][7][ipt]); } } TH1D* hTempPt = new TH1D("hTemp",";p_{T}^{#gamma} (GeV);",200,10,300); TCanvas* c2 = new TCanvas("c2","",1000,450); makeMultiPanelCanvas(c2,nPtBin,2,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { c2->cd(ipt); // draw pp hTempPt->SetXTitle("p_{T}^{Jet} (GeV)"); hTempPt->SetYTitle("#frac{dN}{dp_{T}} #frac{1}{N^{#gamma}}"); hTempPt->SetAxisRange(30,200,"X"); // hTempPt->SetAxisRange(0,0.025,"Y"); hTempPt->SetAxisRange(0.00007,0.11,"Y"); handsomeTH1(hTempPt,0); hTempPt->DrawCopy(); gPad->SetLogy(); handsomeTH1(hJetPt[kPPDATA][7][ipt], 1); hJetPt[kPPDATA][7][ipt]->SetMarkerStyle(24); hJetPt[kPPDATA][7][ipt]->Draw("same"); // draw pbpb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(hJetPt[kHIDATA][icent][ipt],kRed); if ( icent == 2 ) hJetPt[kHIDATA][icent][ipt]->SetMarkerStyle(24); hJetPt[kHIDATA][icent][ipt]->Draw("same"); } double dx1=0.15; drawText(Form("p_{T}^{#gamma} > %dGeV, ", (int)ptBin[ipt-1]), 0.12+dx1+0.25,0.85,1,15); /* if ( ipt == nPtBin ) drawText(Form("p_{T}^{#gamma} > %dGeV, ", (int)ptBin[ipt-1]), 0.12+dx1+0.25,0.85,1,15); else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1], (int)ptBin[ipt]), 0.12+dx1,0.85,1,15); */ onSun(30,0,200,0); c2->cd(ipt + nPtBin); hTempPt->SetAxisRange(0,2.5,"Y"); hTempPt->SetYTitle("Ratio of Yield PbPb/pp"); handsomeTH1(hTempPt,0); hTempPt->DrawCopy(); for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(hIaa[icent][ipt],kRed); if ( icent == 2 ) hIaa[icent][ipt]->SetMarkerStyle(24); // if ( icent == 1 ) hIaa[icent][ipt]->Draw("same"); jumSun(30,1,200,1); } } c2->cd(1); TLegend *l2 = new TLegend(0.5933981,0.3877892,0.9981436,0.7857262,NULL,"brNDC"); easyLeg(l2,"2.76TeV"); l2->AddEntry(hJetPt[kPPDATA][7][1],"pp", "p"); l2->AddEntry(hJetPt[kHIDATA][2][1],"PbPb 30-100%", "p"); l2->AddEntry(hJetPt[kHIDATA][1][1],"PbPb 0-30%", "p"); l2->Draw(); if (saveFigures) c2->SaveAs("figures/pT_dependence_IAA_figure1.pdf"); if (saveFigures) c2->SaveAs("figures/pT_dependence_IAA_figure1.gif"); TFile * fResults = new TFile("resultHistograms.root","update"); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { hJetPt[kPPDATA][7][ipt]->SetName(Form("dNdJetPt_forIaa_pp_ptBin%dAndHigher",ipt)); hJetPt[kPPDATA][7][ipt]->Write(); for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { hJetPt[kHIDATA][icent][ipt]->SetName(Form("dNdJetPt_forIaa_pbpb_centralityBin%d_ptBin%dAndHigher",icent,ipt)); hJetPt[kHIDATA][icent][ipt]->Write(); hIaa[icent][ipt]->SetName(Form("Ryaa_centralityBin%d_ptBin%dAndHigher",icent,ipt)); hIaa[icent][ipt]->Write(); } } fResults->Close(); }
void drawPtDependencePA(TString dirName, int prodDate, int jetPtCut, TString fNameSuffix, TString outNameSuffix){ bool saveFigures=true; const int nPtBin = 4; double ptBin[nPtBin+1] = {40, 50,60,80,9999}; double ptBinPaDraw[nPtBin+1] = { 40.5 ,49.5, 58.5, 76.5, 123. } ; // double AvePtBin[nPtBin+1] = { 45, 54.1479, 67.4204, 99.6956, 9999}; const int nCentBinHI = 2; const int centBinHI[nCentBinHI +1] = {-1, 10030, 13099}; TH1D* hxjg[7][10][6]; // [Collision][centrality][pt] TH1D* hJetPt[7][10][6]; // [Collision][centrality][pt] TH1D* hJetPtIaaBin[7][10][6]; // [Collision][centrality][pt] TH1D* hDphi[7][10][6]; // [Collision][centrality][pt] TH1D* meanXjg[7][10]; // [Collision][centrality] TH1D* meanJetPt[7][10]; // [Collisi on][centrality] TH1D* rjg[7][5]; // [Collision][centrality] for (int icoll=0 ; icoll<6 ; icoll++) { for (int icent=1 ; icent<= 10 ; icent++) { meanXjg[icoll][icent] = new TH1D( Form("meanXjg_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); <X_{J#gamma}>",nPtBin,ptBinPaDraw); meanJetPt[icoll][icent] = new TH1D( Form("meanJetPt_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); <p_{T}^{Jet}>",nPtBin,ptBinPaDraw); rjg[icoll][icent] = new TH1D( Form("rjg_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); R_{J#gamma}",nPtBin,ptBinPaDraw); for (int ipt=1 ; ipt<=nPtBin ; ipt++) { hxjg[icoll][icent][ipt] = NULL; hJetPt[icoll][icent][ipt] = NULL; hJetPtIaaBin[icoll][icent][ipt] = NULL; hDphi[icoll][icent][ipt] = NULL; } } } TFile* histFile[7][6]; // [Collision][pt] for (int ipt=1 ; ipt<=nPtBin ; ipt++) { for (int icoll=0 ; icoll<6 ; icoll++) { TString sampleName = getSampleName( icoll ) ; char* fname; if (fNameSuffix.EqualTo("")) { // if no explicit suffix for the input file name is specified fname = Form("ffFiles/%s/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr%d_%d.root",dirName.Data(), sampleName.Data(), (int)ptBin[ipt-1], (int)ptBin[ipt], (int)jetPtCut, prodDate); } else { fname = Form("ffFiles/%s/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr%d_%d_%s.root",dirName.Data(), sampleName.Data(), (int)ptBin[ipt-1], (int)ptBin[ipt], (int)jetPtCut, prodDate, fNameSuffix.Data()); } histFile[icoll][ipt] = new TFile(fname) ; cout << " Reading file : " << fname << endl; if ( histFile[icoll][ipt]->IsZombie() == false ) { cout << " Success." << endl; if ( (icoll == kPPDATA) || (icoll == kPPMC) ) { // PP int icent = 7 ; hxjg[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("xjg_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("xjg_icent%d_final", icent) << endl; hJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPt_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("jetPt_icent%d_final", icent) << endl; hJetPtIaaBin[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPtForIaa_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("jetPtForIaa_icent%d_final", icent) << endl; hDphi[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetDphi_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("jetDphi_icent%d_final", icent) << endl; //hEta[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("etaJg_icent%d_final", icent)) ; //cout << " Getting histogram : " << Form("etaJg_icent%d_final", icent) << endl; } if ( (icoll == kPADATA) || (icoll == kPAMC) ) { // PA int icent = 1 ; hxjg[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("xjg_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("xjg_icent%d_final", icent) << endl; hJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPt_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("jetPt_icent%d_final", icent) << endl; hJetPtIaaBin[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPtForIaa_icent%d_final", icent ) ) ; cout << " Getting histogram : " << Form("jetPtForIaa_icent%d_final", icent ) << endl; hDphi[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetDphi_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("jetDphi_icent%d_final", icent) << endl; //hEta[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("etaJg_icent%d_final", icent)) ; //cout << " Getting histogram : " << Form("etaJg_icent%d_final", icent) << endl; } if ( ( icoll == kHIDATA) || (icoll == kHIMC) ) { // PbPb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { hxjg[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("xjg_icent%d_final", centBinHI[icent] )) ; cout << " Getting histogram : " << Form("xjg_icent%d_final", centBinHI[icent] ) << endl; hJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPt_icent%d_final", centBinHI[icent] ) ); cout << " Getting histogram : " << Form("jetPt_icent%d_final", centBinHI[icent] ) << endl; hJetPtIaaBin[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPtForIaa_icent%d_final", centBinHI[icent] ) ); cout << " Getting histogram : " << Form("jetPtForIaa_icent%d_final", centBinHI[icent] ) << endl; hDphi[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetDphi_icent%d_final", centBinHI[icent] ) ) ; cout << " Getting histogram : " << Form("jetDphi_icent%d_final", centBinHI[icent])<< endl; //hEta[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("etaJg_icent%d_final", centBinHI[icent] ) ) ; //cout << " Getting histogram : " << Form("etaJg_icent%d_final", centBinHI[icent])<< endl; } } } else cout << " no such file " << endl; } } for (int ipt=1 ; ipt<=nPtBin ; ipt++) { for (int icoll=0 ; icoll<6 ; icoll++) { for (int icent=1 ; icent<= 10 ; icent++ ) { if ( hxjg[icoll][icent][ipt] == NULL ) continue; // emtpy histogram double rVal, rErr; rVal = hxjg[icoll][icent][ipt]->IntegralAndError(1, hxjg[icoll][icent][ipt]->GetNbinsX(), rErr, "width"); rjg[icoll][icent]->SetBinContent( ipt, rVal ); rjg[icoll][icent]->SetBinError ( ipt, rErr ); meanXjg[icoll][icent]->SetBinContent( ipt, hxjg[icoll][icent][ipt]->GetMean() ); meanXjg[icoll][icent]->SetBinError ( ipt, hxjg[icoll][icent][ipt]->GetMeanError() ); meanJetPt[icoll][icent]->SetBinContent( ipt, hJetPt[icoll][icent][ipt]->GetMean() ); meanJetPt[icoll][icent]->SetBinError ( ipt, hJetPt[icoll][icent][ipt]->GetMeanError() ); } } } TCanvas* c1 = new TCanvas("c1","",1200,350); makeMultiPanelCanvas(c1,nPtBin,1,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { c1->cd(ipt); handsomeTH1(hDphi[kPAMC][1][ipt], 1); hDphi[kPAMC][1][ipt]->SetXTitle("#Delta#phi_{J#gamma}"); hDphi[kPAMC][1][ipt]->SetYTitle("Normalized entries"); hDphi[kPAMC][1][ipt]->SetMarkerStyle(24); hDphi[kPAMC][1][ipt]->Scale(1./hDphi[kPAMC][1][ipt]->Integral("width")); hDphi[kPAMC][1][ipt]->SetAxisRange(0,3.141592,"X"); hDphi[kPAMC][1][ipt]->SetAxisRange(0.01,30,"Y"); hDphi[kPAMC][1][ipt]->Draw(); handsomeTH1(hDphi[kPADATA][1][ipt], kRed); hDphi[kPADATA][1][ipt]->Scale(1./hDphi[kPADATA][1][ipt]->Integral("width")); hDphi[kPADATA][1][ipt]->Draw("same"); gPad->SetLogy(); double dx1=0.15; if ( ipt == nPtBin ) drawText(Form("p_{T}^{#gamma} > %dGeV, ", (int)ptBin[ipt-1]), 0.12+dx1+0.25,0.85,1,15);//yeonju 130823 else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1], (int)ptBin[ipt]), 0.12+dx1,0.85,1,15);//yeonju 130823 } c1->cd(1); TLegend *l1 = new TLegend(0.2199474,0.5971384,0.7283974,0.8119819,NULL,"brNDC"); easyLeg(l1,"5.02TeV"); l1->AddEntry(hDphi[kPAMC][1][1],"pA pythia+HIJING ","p"); l1->AddEntry(hDphi[kPADATA][1][1],"pA Data","p"); l1->Draw(); if (saveFigures) { if(outNameSuffix.EqualTo("")){ c1->SaveAs("figures/pT_dependence_dphi_pA_figure1.pdf"); c1->SaveAs("figures/pT_dependence_dphi_pA_figure1.gif"); } else { c1->SaveAs(Form("figures/pT_dependence_dphi_pA_figure1_%s.pdf", outNameSuffix.Data())); c1->SaveAs(Form("figures/pT_dependence_dphi_pA_figure1_%s.gif", outNameSuffix.Data())); } } TH1D* hTempPt = new TH1D("hTemp",";p_{T}^{#gamma} (GeV);",200,10,300); TCanvas* c2 = new TCanvas("c2","",1200,350); makeMultiPanelCanvas(c2,nPtBin,1,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { c2->cd(ipt); hTempPt->SetXTitle("p_{T}^{Jet} (GeV)"); hTempPt->SetYTitle("#frac{dN}{dp_{T}} #frac{1}{N}"); hTempPt->SetAxisRange(10,150,"X"); // hTempPt->SetAxisRange(0,0.025,"Y"); hTempPt->SetAxisRange(0,0.08,"Y"); handsomeTH1(hTempPt,0); hTempPt->DrawCopy(); // hJetPt[kPAMC][1][ipt]->Scale(1./rjg[kPAMC][1]->GetBinContent(ipt)); // rjg normalization handsomeTH1(hJetPt[kPAMC][1][ipt], 1); hJetPt[kPAMC][1][ipt]->SetMarkerStyle(24); hJetPt[kPAMC][1][ipt]->Draw("same"); handsomeTH1(hJetPt[kPADATA][1][ipt],kRed); // hJetPt[kPADATA][1][ipt]->Scale(1./rjg[kPADATA][1]->GetBinContent(ipt)); hJetPt[kPADATA][1][ipt]->Draw("same"); double dx1=0.15; if ( ipt == nPtBin ) drawText(Form("p_{T}^{#gamma} > %dGeV, ", (int)ptBin[ipt-1]), 0.12+dx1+0.25,0.85,1,15);//yeonju 130823 else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1], (int)ptBin[ipt]), 0.12+dx1,0.85,1,15);//yeonju 130823 onSun(30,0,200,0); } c2->cd(1); l1->Draw(); if (saveFigures) { if(outNameSuffix.EqualTo("")){ c2->SaveAs("figures/pT_dependence_jetPt_pA_figure1.pdf"); c2->SaveAs("figures/pT_dependence_jetPt_pA_figure1.gif"); } else { c2->SaveAs(Form("figures/pT_dependence_jetPt_pA_figure1_%s.pdf", outNameSuffix.Data())); c2->SaveAs(Form("figures/pT_dependence_jetPt_pA_figure1_%s.gif", outNameSuffix.Data())); } } TLegend *l2 = new TLegend(0.2116935,0.7012712,0.6149194,0.904661,NULL,"brNDC"); easyLeg(l2,"5.02TeV"); l2->AddEntry(hDphi[kPAMC][1][1],"pPb pythia+HIJING","p"); l2->AddEntry(hDphi[kPADATA][1][1],"pPb Data","p"); TCanvas* c21 = new TCanvas("c21","",500,500); handsomeTH1(meanJetPt[kPAMC][1], 1); meanJetPt[kPAMC][1]->SetYTitle("<p_{T}^{Jet}> (>30GeV)"); meanJetPt[kPAMC][1]->SetMarkerStyle(24); // meanJetPt[kPAMC][1]->SetAxisRange(-2,2,"X"); meanJetPt[kPAMC][1]->SetAxisRange(40,115,"Y"); meanJetPt[kPAMC][1]->Draw(); handsomeTH1(meanJetPt[kPADATA][1],kRed); meanJetPt[kPADATA][1]->Draw("same"); l1 ->Draw(); if (saveFigures) { if(outNameSuffix.EqualTo("")){ c21->SaveAs("figures/pT_dependence_jetPt_pA_figure2.pdf"); c21->SaveAs("figures/pT_dependence_jetPt_pA_figure2.gif"); } else { c21->SaveAs(Form("figures/pT_dependence_jetPt_pA_figure2_%s.pdf", outNameSuffix.Data())); c21->SaveAs(Form("figures/pT_dependence_jetPt_pA_figure2_%s.gif", outNameSuffix.Data())); } } TCanvas* c3 = new TCanvas("c3","",1200,350); makeMultiPanelCanvas(c3,nPtBin,1,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { c3->cd(ipt); handsomeTH1(hxjg[kPAMC][1][ipt], 1); hxjg[kPAMC][1][ipt]->SetXTitle("x_{J#gamma}"); hxjg[kPAMC][1][ipt]->SetYTitle("#frac{dN}{dp_{T}} #frac{1}{N}"); hxjg[kPAMC][1][ipt]->SetMarkerStyle(24); // hxjg[kPAMC][1][ipt]->Scale(1./rjg[kPAMC][1]->GetBinContent(ipt)); // rjg normalization hxjg[kPAMC][1][ipt]->SetAxisRange(0,2,"X"); hxjg[kPAMC][1][ipt]->Draw(); handsomeTH1(hxjg[kPADATA][1][ipt],kRed); // hxjg[kPADATA][1][ipt]->Scale(1./rjg[kPADATA][1]->GetBinContent(ipt)); // rjg normalization hxjg[kPADATA][1][ipt]->Draw("same"); double dx1=0.15; if ( ipt == nPtBin ) drawText(Form("p_{T}^{#gamma} > %dGeV, ", (int)ptBin[ipt-1]), 0.12+dx1+0.25,0.85,1,15);//yeonju 130823 else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1], (int)ptBin[ipt]), 0.12+dx1,0.85,1,15);//yeonju 130823 onSun(30,0,200,0); } c3->cd(1); l1->Draw(); if (saveFigures) { if(outNameSuffix.EqualTo("")){ c3->SaveAs("figures/pT_dependence_xjg_pA_figure1.pdf"); c3->SaveAs("figures/pT_dependence_xjg_pA_figure1.gif"); } else { c3->SaveAs(Form("figures/pT_dependence_xjg_pA_figure1_%s.pdf", outNameSuffix.Data())); c3->SaveAs(Form("figures/pT_dependence_xjg_pA_figure1_%s.gif", outNameSuffix.Data())); } } TCanvas* c31 = new TCanvas("c31","",500,500); handsomeTH1(meanXjg[kPAMC][1], 1); meanXjg[kPAMC][1]->SetYTitle("<x_{J#gamma}> (>30GeV)"); meanXjg[kPAMC][1]->SetMarkerStyle(24); // meanXjg[kPAMC][1]->SetAxisRange(-2,2,"X"); meanXjg[kPAMC][1]->SetAxisRange(0.6,1.2,"Y"); meanXjg[kPAMC][1]->Draw(); handsomeTH1(meanXjg[kPADATA][1],kRed); meanXjg[kPADATA][1]->Draw("same"); l1->Draw(); if (saveFigures) { if(outNameSuffix.EqualTo("")){ c31->SaveAs("figures/pT_dependence_xjg_pA_figure2.pdf"); c31->SaveAs("figures/pT_dependence_xjg_pA_figure2.gif"); } else { c31->SaveAs(Form("figures/pT_dependence_xjg_pA_figure2_%s.pdf", outNameSuffix.Data())); c31->SaveAs(Form("figures/pT_dependence_xjg_pA_figure2_%s.gif", outNameSuffix.Data())); } } TCanvas* c_rjg = new TCanvas("c_rjg","",500,500); handsomeTH1(rjg[kPAMC][1], 1); rjg[kPAMC][1]->SetYTitle("R_{J#gamma}"); rjg[kPAMC][1]->SetMarkerStyle(24); // rjg[kPAMC][1]->SetAxisRange(-2,2,"X"); rjg[kPAMC][1]->SetAxisRange(0.0,1.1,"Y"); rjg[kPAMC][1]->Draw(); handsomeTH1(rjg[kPADATA][1],kRed); rjg[kPADATA][1]->Draw("same"); l1->Draw(); if (saveFigures) { if(outNameSuffix.EqualTo("")){ c_rjg->SaveAs("figures/pT_dependence_rjg_pA_figure1.pdf"); c_rjg->SaveAs("figures/pT_dependence_rjg_pA_figure1.gif"); } else { c_rjg->SaveAs(Form("figures/pT_dependence_rjg_pA_figure1_%s.pdf", outNameSuffix.Data())); c_rjg->SaveAs(Form("figures/pT_dependence_rjg_pA_figure1_%s.gif", outNameSuffix.Data())); } } // Save the final root histogram files TFile* fResults; if(outNameSuffix.EqualTo("")){ fResults = new TFile("resultHistograms.root", "update"); } else { fResults = new TFile(Form("resultHistograms_%s.root", outNameSuffix.Data()), "update"); } // TFile * fResults = new TFile("resultHistograms_ppb_photonEnergy_ScaledBy0.015.root","update"); meanJetPt[kPADATA][1]->SetName(Form("meanJetPt_ppb")); meanJetPt[kPADATA][1]->Write(); meanXjg[kPADATA][1]->SetName(Form("meanXjg_ppb")); meanXjg[kPADATA][1]->Write(); rjg[kPADATA][1]->SetName(Form("meanRjg_ppb")); rjg[kPADATA][1]->Write(); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { hJetPt[kPADATA][1][ipt]->SetName(Form("dNdJetPt_ppb_ptBin%d",ipt)); hJetPt[kPADATA][1][ipt]->Write(); hJetPtIaaBin[kPADATA][1][ipt]->SetName(Form("dNdJetPt_IaaBin_ppb_ptBin%d",ipt)); hJetPtIaaBin[kPADATA][1][ipt]->Write(); hxjg[kPADATA][1][ipt]->SetName(Form("dNdXjg_ppb_ptBin%d",ipt)); hxjg[kPADATA][1][ipt]->Write(); hDphi[kPADATA][1][ipt]->SetName(Form("dNdphi_ppb_ptBin%d",ipt)); hDphi[kPADATA][1][ipt]->Write(); } fResults->Close(); }
void drawPtDependencePPSmeared(int centBin = 10030, TString dirName="nominal", int prodDate=20131021, int jetPtCut=30) { TH1::SetDefaultSumw2(); const int nPtBin = 4; double ptBin[nPtBin+1] = {40, 50,60,80,9999}; double ptBinPaDraw[nPtBin+1] = { 40.5 ,49.5, 58.5, 76.5, 123. } ; // double AvePtBin[nPtBin+1] = { 45, 54.1479, 67.4204, 99.6956, 9999}; const int nCentBinHI = 2; const int centBinHI[nCentBinHI +1] = {-1, 10030, 13099}; TH1D* hxjg[7][10][6]; // [Collision][centrality][pt] TH1D* hJetPt[7][10][6]; // [Collision][centrality][pt] TH1D* hJetPtIaaBin[7][10][6]; // [Collision][centrality][pt] TH1D* hDphi[7][10][6]; // [Collision][centrality][pt] TH1D* hEta[7][10][6]; // [Collision][centrality][pt] TH1D* meanXjg[7][10]; // [Collision][centrality] TH1D* meanJetPt[7][10]; // [Collisi on][centrality] TH1D* rjg[7][10]; // [Collision][centrality] for (int icoll=0 ; icoll<6 ; icoll++) { for (int icent=1 ; icent<= 10 ; icent++) { meanXjg[icoll][icent] = new TH1D( Form("meanXjg_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); <X_{J#gamma}>",nPtBin,ptBinPaDraw); meanJetPt[icoll][icent] = new TH1D( Form("meanJetPt_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); <p_{T}^{Jet}>",nPtBin,ptBinPaDraw); rjg[icoll][icent] = new TH1D( Form("rjg_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); R_{J#gamma}",nPtBin,ptBinPaDraw); for (int ipt=1 ; ipt<=nPtBin ; ipt++) { hxjg[icoll][icent][ipt] = NULL; hJetPt[icoll][icent][ipt] = NULL; hJetPtIaaBin[icoll][icent][ipt] = NULL; hDphi[icoll][icent][ipt] = NULL; hEta[icoll][icent][ipt] = NULL; } } } TFile* histFile[7][6]; // [Collision][pt] for (int ipt=1 ; ipt<=nPtBin ; ipt++) { for (int icoll=0 ; icoll<6 ; icoll++) { TString sampleName = getSampleName( icoll ) ; char* fname = Form("ffFiles/%s/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr%d_%d.root",dirName.Data(), sampleName.Data(), (int)ptBin[ipt-1], (int)ptBin[ipt], (int)jetPtCut, prodDate); histFile[icoll][ipt] = new TFile(fname) ; cout << " Reading file : " << fname << endl; if ( histFile[icoll][ipt]->IsZombie() == false ) { cout << " Success." << endl; if ( (icoll == kPPDATA) || (icoll == kPPMC) ) { // PP int icent = 7 ; hxjg[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("xjg_icent%d_final", centBin)); cout << " Getting histogram : " << Form("xjg_icent%d_final", icent) << endl; hJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPt_icent%d_final", centBin)); cout << " Getting histogram : " << Form("jetPt_icent%d_final", icent) << endl; hJetPtIaaBin[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPtForIaa_icent%d_final", centBin)); cout << " Getting histogram : " << Form("jetPtForIaa_icent%d_final", icent) << endl; hDphi[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetDphi_icent%d_final", centBin)); cout << " Getting histogram : " << Form("jetDphi_icent%d_final", icent) << endl; hEta[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("etaJg_icent%d_final", centBin)) ; cout << " Getting histogram : " << Form("etaJg_icent%d_final", centBin) << endl; } if ( ( icoll == kHIDATA) || (icoll == kHIMC) ) { // PbPb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { hxjg[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("xjg_icent%d_final", centBinHI[icent] )) ; cout << " Getting histogram : " << Form("xjg_icent%d_final", centBinHI[icent] ) << endl; hJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPt_icent%d_final", centBinHI[icent] ) ); cout << " Getting histogram : " << Form("jetPt_icent%d_final", centBinHI[icent] ) << endl; hJetPtIaaBin[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPtForIaa_icent%d_final", centBinHI[icent] ) ); cout << " Getting histogram : " << Form("jetPtForIaa_icent%d_final", centBinHI[icent] ) << endl; hDphi[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetDphi_icent%d_final", centBinHI[icent] ) ) ; cout << " Getting histogram : " << Form("jetDphi_icent%d_final", icent)<< endl; hEta[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("etaJg_icent%d_final", centBinHI[icent] ) ) ; cout << " Getting histogram : " << Form("etaJg_icent%d_final", icent)<< endl; } } } else cout << " no such file " << endl; } } for (int ipt=1 ; ipt<=nPtBin ; ipt++) { for (int icoll=0 ; icoll<6 ; icoll++) { for (int icent=1 ; icent<= 10 ; icent++ ) { if ( hxjg[icoll][icent][ipt] == NULL ) continue; // emtpy histogram double rVal, rErr; rVal = hxjg[icoll][icent][ipt]->IntegralAndError(1, hxjg[icoll][icent][ipt]->GetNbinsX(), rErr, "width"); printf("icoll: %d icent: %d ipt: %d rval: %lf\n",icoll, icent, ipt, rVal); rjg[icoll][icent]->SetBinContent( ipt, rVal ); rjg[icoll][icent]->SetBinError ( ipt, rErr ); meanXjg[icoll][icent]->SetBinContent( ipt, hxjg[icoll][icent][ipt]->GetMean() ); meanXjg[icoll][icent]->SetBinError ( ipt, hxjg[icoll][icent][ipt]->GetMeanError() ); meanJetPt[icoll][icent]->SetBinContent( ipt, hJetPt[icoll][icent][ipt]->GetMean() ); meanJetPt[icoll][icent]->SetBinError ( ipt, hJetPt[icoll][icent][ipt]->GetMeanError() ); } } } TCanvas* c1 = new TCanvas("c1","",1200,350); makeMultiPanelCanvas(c1,nPtBin,1,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { c1->cd(ipt); // draw pp handsomeTH1(hDphi[kPPDATA][7][ipt], 1); hDphi[kPPDATA][7][ipt]->SetXTitle("#Delta#phi_{J#gamma}"); hDphi[kPPDATA][7][ipt]->SetYTitle("Normalized entries"); hDphi[kPPDATA][7][ipt]->SetMarkerStyle(24); hDphi[kPPDATA][7][ipt]->Scale(1./hDphi[kPPDATA][7][ipt]->Integral("width")); hDphi[kPPDATA][7][ipt]->SetAxisRange(0,3.141592,"X"); hDphi[kPPDATA][7][ipt]->SetAxisRange(0.01,30,"Y"); hDphi[kPPDATA][7][ipt]->Draw(); // draw pbpb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(hDphi[kHIDATA][icent][ipt],kRed); if ( icent == 2 ) hDphi[kHIDATA][icent][ipt]->SetMarkerStyle(24); hDphi[kHIDATA][icent][ipt]->Scale(1./hDphi[kHIDATA][icent][ipt]->Integral("width")); hDphi[kHIDATA][icent][ipt]->Draw("same"); } gPad->SetLogy(); // onSun(30,0,200,0); } c1->cd(1); TLegend *ly = new TLegend(0.4913112,0.6561548,0.9997611,0.9431145,NULL,"brNDC"); easyLeg(ly,"2.76TeV"); ly->AddEntry(hDphi[kPPDATA][7][1],"pp ","p"); ly->AddEntry(hDphi[kHIDATA][2][1],"PbPb 0-30%","p"); TLegend *l1 = new TLegend(0.1995968,0.7097458,0.7076613,0.9237288,NULL,"brNDC"); easyLeg(l1,"2.76TeV"); l1->AddEntry(hDphi[kPPDATA][7][1],"pp ","p"); l1->AddEntry(hDphi[kHIDATA][2][1],"PbPb 30-100%","p"); l1->AddEntry(hDphi[kHIDATA][1][1],"PbPb 0-30%","p"); l1->Draw(); // c1->SaveAs("figures/pT_dependence_dphi_pp_pbpb_figure1.pdf"); // c1->SaveAs("figures/pT_dependence_dphi_pp_pbpb_figure1.gif"); TH1D* hTempPt = new TH1D("hTemp",";p_{T}^{#gamma} (GeV);",200,10,300); TCanvas* c2 = new TCanvas("c2","",1200,350); makeMultiPanelCanvas(c2,nPtBin,1,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { c2->cd(ipt); // draw pp hTempPt->SetXTitle("p_{T}^{Jet} (GeV)"); hTempPt->SetYTitle("#frac{dN}{dp_{T}} #frac{1}{N}"); hTempPt->SetAxisRange(10,150,"X"); // hTempPt->SetAxisRange(0,0.025,"Y"); hTempPt->SetAxisRange(0,0.08,"Y"); handsomeTH1(hTempPt,0); hTempPt->DrawCopy(); // hJetPt[kPPDATA][7][ipt]->Scale(1./rjg[kPPDATA][7]->GetBinContent(ipt)); // rjg normalization handsomeTH1(hJetPt[kPPDATA][7][ipt], 1); hJetPt[kPPDATA][7][ipt]->SetMarkerStyle(24); hJetPt[kPPDATA][7][ipt]->Draw("same"); // draw pbpb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(hJetPt[kHIDATA][icent][ipt],kRed); // hJetPt[kHIDATA][icent][ipt]->Scale(1./rjg[kHIDATA][icent]->GetBinContent(ipt)); // rjg normalization // hJetPt[kHIDATA][icent][ipt]->Rebin(10); // hJetPt[kHIDATA][icent][ipt]->Scale(1/10.); if ( icent == 2 ) hJetPt[kHIDATA][icent][ipt]->SetMarkerStyle(24); if ( icent == 2 ) hJetPt[kHIDATA][icent][ipt]->Draw("same"); if ( icent == 1 ) hJetPt[kHIDATA][icent][ipt]->Draw("same"); } double dx1=0.15; if ( ipt == nPtBin ) drawText(Form("p_{T}^{#gamma} > %dGeV, ", (int)ptBin[ipt-1]), 0.12+dx1+0.25,0.85,1,15);//yeonju 130823 else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1], (int)ptBin[ipt]), 0.12+dx1,0.85,1,15);//yeonju 130823 onSun(30,0,200,0); } c2->cd(1); l1->Draw(); c2->SaveAs("figures/pT_dependence_jetPt_pp_pbpb_figure1.pdf"); c2->SaveAs("figures/pT_dependence_jetPt_pp_pbpb_figure1.gif"); TLegend *l2 = new TLegend(0.2116935,0.7012712,0.6149194,0.904661,NULL,"brNDC"); easyLeg(l2,"2.76TeV"); l2->AddEntry(hDphi[kPPDATA][7][1],"pp ","p"); l2->AddEntry(hDphi[kHIDATA][1][1],"PbPb 30-100%","p"); l2->AddEntry(hDphi[kHIDATA][2][1],"PbPb 0-30%","p"); TCanvas* c21 = new TCanvas("c21","",500,500); handsomeTH1(meanJetPt[kPPDATA][7], 1); meanJetPt[kPPDATA][7]->SetYTitle("<p_{T}^{Jet}> (>30GeV)"); meanJetPt[kPPDATA][7]->SetMarkerStyle(24); // meanJetPt[kPPDATA][7]->SetAxisRange(-2,2,"X"); meanJetPt[kPPDATA][7]->SetAxisRange(40,90,"Y"); meanJetPt[kPPDATA][7]->Draw(); for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(meanJetPt[kHIDATA][icent],kRed); if ( icent == 2 ) meanJetPt[kHIDATA][icent]->SetMarkerStyle(24); //if ( icent == 2 ) meanJetPt[kHIDATA][icent]->Draw("same"); meanJetPt[kHIDATA][icent]->Draw("same"); } l1 ->Draw(); c21->SaveAs("figures/pT_dependence_jetPt_pp_pbpb_figure2.pdf"); c21->SaveAs("figures/pT_dependence_jetPt_pp_pbpb_figure2.gif"); TCanvas* c3 = new TCanvas("c3","",1200,350); makeMultiPanelCanvas(c3,nPtBin,1,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { c3->cd(ipt); // draw pp handsomeTH1(hxjg[kPPDATA][7][ipt], 1); hxjg[kPPDATA][7][ipt]->SetXTitle("x_{J#gamma}"); hxjg[kPPDATA][7][ipt]->SetYTitle("#frac{dN}{dp_{T}} #frac{1}{N}"); hxjg[kPPDATA][7][ipt]->SetMarkerStyle(24); // hxjg[kPPDATA][7][ipt]->Scale(1./rjg[kPPDATA][7]->GetBinContent(ipt)); // rjg normalization // hxjg[kPPDATA][7][ipt]->Rebin(10); // hxjg[kPPDATA][7][ipt]->Scale(1./10); hxjg[kPPDATA][7][ipt]->SetAxisRange(0,2.5,"X"); hxjg[kPPDATA][7][ipt]->SetAxisRange(0,3,"Y"); hxjg[kPPDATA][7][ipt]->Draw(); // draw pbpb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(hxjg[kHIDATA][icent][ipt],kRed); // hxjg[kHIDATA][icent][ipt]->Scale(1./rjg[kHIDATA][icent]->GetBinContent(ipt)); // rjg normalization // hxjg[kHIDATA][icent][ipt]->Rebin(10); // hxjg[kHIDATA][icent][ipt]->Scale(1./10); if ( icent == 2 ) hxjg[kHIDATA][icent][ipt]->SetMarkerStyle(24); if ( icent == 2 ) hxjg[kHIDATA][icent][ipt]->Draw("same"); if ( icent == 1 ) hxjg[kHIDATA][icent][ipt]->Draw("same"); } double dx1=0.15; if ( ipt == nPtBin ) drawText(Form("p_{T}^{#gamma} > %dGeV, ", (int)ptBin[ipt-1]), 0.12+dx1+0.25,0.85,1,15);//yeonju 130823 else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1], (int)ptBin[ipt]), 0.12+dx1,0.85,1,15);//yeonju 130823 onSun(30,0,200,0); } c3->cd(1); l1->Draw(); c3->SaveAs("figures/pT_dependence_xjg_pp_pbpb_figure1.pdf"); c3->SaveAs("figures/pT_dependence_xjg_pp_pbpb_figure1.gif"); TCanvas* c31 = new TCanvas("c31","",500,500); handsomeTH1(meanXjg[kPPDATA][7], 1); meanXjg[kPPDATA][7]->SetYTitle("<x_{J#gamma}> (>30GeV)"); meanXjg[kPPDATA][7]->SetMarkerStyle(24); // meanXjg[kPPDATA][7]->SetAxisRange(-2,2,"X"); meanXjg[kPPDATA][7]->SetAxisRange(0.6,1.2,"Y"); meanXjg[kPPDATA][7]->Draw(); for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(meanXjg[kHIDATA][icent],kRed); if ( icent == 2 ) meanXjg[kHIDATA][icent]->SetMarkerStyle(24); //if ( icent != 2 ) meanXjg[kHIDATA][icent]->Draw("same"); meanXjg[kHIDATA][icent]->Draw("same"); } l1->Draw(); c31->SaveAs("figures/pT_dependence_xjg_pp_pbpb_figure1.pdf"); c31->SaveAs("figures/pT_dependence_xjg_pp_pbpb_figure1.gif"); TCanvas* c_rjg = new TCanvas("c_rjg","",500,500); handsomeTH1(rjg[kPPDATA][7], 1); rjg[kPPDATA][7]->SetYTitle("r_{J#gamma}"); rjg[kPPDATA][7]->SetMarkerStyle(24); // rjg[kPPDATA][7]->SetAxisRange(-2,2,"X"); rjg[kPPDATA][7]->SetAxisRange(0.0,1.1,"Y"); rjg[kPPDATA][7]->Draw(); for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(rjg[kHIDATA][icent],kRed); if ( icent == 2 ) rjg[kHIDATA][icent]->SetMarkerStyle(24); // if ( icent != 2 ) rjg[kHIDATA][icent]->Draw("same"); rjg[kHIDATA][icent]->Draw("same"); } l1->Draw(); c_rjg->SaveAs("figures/pT_dependence_rjg_pp_pbpb_figure1.pdf"); c_rjg->SaveAs("figures/pT_dependence_rjg_pp_pbpb_figure1.gif"); // Save the final root histogram files TFile * fResults = new TFile(Form("resultHistograms_ppSmeared%d.root",centBin),"update"); // pp meanJetPt[kPPDATA][7]->SetName(Form("meanJetPt_pp")); meanJetPt[kPPDATA][7]->Write(); meanXjg[kPPDATA][7]->SetName(Form("meanXjg_pp")); meanXjg[kPPDATA][7]->Write(); rjg[kPPDATA][7]->SetName(Form("meanRjg_pp")); rjg[kPPDATA][7]->Write(); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { hJetPt[kPPDATA][7][ipt]->SetName(Form("dNdJetPt_pp_ptBin%d",ipt)); hJetPt[kPPDATA][7][ipt]->Write(); hJetPtIaaBin[kPPDATA][7][ipt]->SetName(Form("dNdJetPt_IaaBin_pp_ptBin%d",ipt)); hJetPtIaaBin[kPPDATA][7][ipt]->Write(); hxjg[kPPDATA][7][ipt]->SetName(Form("dNdXjg_pp_ptBin%d",ipt)); hxjg[kPPDATA][7][ipt]->Write(); hDphi[kPPDATA][7][ipt]->SetName(Form("dNdphi_pp_ptBin%d",ipt)); hDphi[kPPDATA][7][ipt]->Write(); } // PbPb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { hJetPt[kHIDATA][icent][ipt]->SetName(Form("dNdJetPt_pbpb_centralityBin%d_ptBin%d",icent,ipt)); hJetPt[kHIDATA][icent][ipt]->Write(); hJetPtIaaBin[kHIDATA][icent][ipt]->SetName(Form("dNdJetPt_IaaBin_pbpb_centralityBin%d_ptBin%d",icent,ipt)); hJetPtIaaBin[kHIDATA][icent][ipt]->Write(); hxjg[kHIDATA][icent][ipt]->SetName(Form("dNdXjg_pbpb_centralityBin%d_ptBin%d",icent,ipt)); hxjg[kHIDATA][icent][ipt]->Write(); hDphi[kHIDATA][icent][ipt]->SetName(Form("dNdphi_pbpb_centralityBin%d_ptBin%d",icent,ipt)); hDphi[kHIDATA][icent][ipt]->Write(); } meanJetPt[kHIDATA][icent]->SetName(Form("meanJetPt_pbpb_centralityBin%d",icent)); meanJetPt[kHIDATA][icent]->Write(); meanXjg[kHIDATA][icent]->SetName(Form("meanXjg_pbpb_centralityBin%d",icent)); meanXjg[kHIDATA][icent]->Write(); rjg[kHIDATA][icent]->SetName(Form("meanRjg_pbpb_centralityBin%d",icent)); rjg[kHIDATA][icent]->Write(); } fResults->Close(); }
void drawPbPb_pp_subEnergy( bool saveFigures=true) { const int nPtBin = 4; double ptBin[nPtBin+1] = {40, 50,60,80,9999}; double ptBinPaDraw[nPtBin+1] = { 40.5 ,49.5, 58.5, 76.5, 123. } ; // double AvePtBin[nPtBin+1] = { 45, 54.1479, 67.4204, 99.6956, 9999}; const int nCentBinHI = 2; const int centBinHI[nCentBinHI +1] = {-1, 10030, 13099}; TH1D* hxjg[7][10][6]; // [Collision][centrality][pt] TH1D* hJetPt[7][10][6]; // [Collision][centrality][pt] TH1D* hGenJetPt[7][10][6]; // [Collision][centrality][pt] TH1D* hIaa[7][10][6]; // [Collision][centrality][pt] TH1D* hDphi[7][10][6]; // [Collision][centrality][pt] TH1D* hEta[7][10][6]; // [Collision][centrality][pt] TH1D* meanXjg[7][10]; // [Collision][centrality] TH1D* meanJetPt[7][10]; // [Collisi on][centrality] TH1D* meanGenJetPt[7][10]; // [Collisi on][centrality] TH1D* rjg[7][5]; // [Collision][centrality] TH1D* rGenjg[7][5]; // [Collision][centrality] for (int icoll=0 ; icoll<4 ; icoll++) { // only pp and PbPb for (int icent=1 ; icent<= 10 ; icent++) { meanXjg[icoll][icent] = new TH1D( Form("meanXjg_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); <X_{J#gamma}>",nPtBin,ptBinPaDraw); meanJetPt[icoll][icent] = new TH1D( Form("meanJetPt_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); <p_{T}^{Jet}>",nPtBin,ptBinPaDraw); meanGenJetPt[icoll][icent] = new TH1D( Form("meanGenJetPt_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); <p_{T}^{Jet}>",nPtBin,ptBinPaDraw); rjg[icoll][icent] = new TH1D( Form("rjg_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); R_{J#gamma}",nPtBin,ptBinPaDraw); rGenjg[icoll][icent] = new TH1D( Form("rGenjg_icoll%d_icent%d",icoll,icent), ";p_{T}^{#gamma} (GeV); R_{J#gamma}",nPtBin,ptBinPaDraw); for (int ipt=1 ; ipt<=nPtBin ; ipt++) { hxjg[icoll][icent][ipt] = NULL; hJetPt[icoll][icent][ipt] = NULL; hGenJetPt[icoll][icent][ipt] = NULL; hIaa[icoll][icent][ipt] = NULL; hDphi[icoll][icent][ipt] = NULL; hEta[icoll][icent][ipt] = NULL; } } } TFile* histFile[7][6]; // [Collision][pt] for (int ipt=1 ; ipt<=nPtBin ; ipt++) { for (int icoll=0 ; icoll<4 ; icoll++) { TString sampleName = getSampleName( icoll ) ; char* fname = Form("ffFilesEnergySub/photonTrackCorr_%s_output_photonPtThr%d_to_%d_jetPtThr30_20130917.root",sampleName.Data(), (int)ptBin[ipt-1], (int)ptBin[ipt]); histFile[icoll][ipt] = new TFile(fname) ; cout << " Reading file : " << fname << endl; if ( histFile[icoll][ipt]->IsZombie() == false ) { cout << " Success." << endl; if ( (icoll == kPPDATA) || (icoll == kPPMC) ) { // PP int icent = 7 ; hxjg[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("xjg_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("xjg_icent%d_final", icent) << endl; hJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPt_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("jetPt_icent%d_final", icent) << endl; hDphi[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetDphi_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("jetDphi_icent%d_final", icent) << endl; hEta[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("etaJg_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("etaJg_icent%d_final", icent) << endl; if ( icoll%2 == 1) { // if it is MC hGenJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("genJetPt_icent%d_final", icent)) ; cout << " Getting histogram : " << Form("genJetPt_icent%d_final", icent) << endl; } } if ( ( icoll == kHIDATA) || (icoll == kHIMC) ) { // PbPb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { hxjg[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("xjg_icent%d_final", centBinHI[icent] )) ; cout << " Getting histogram : " << Form("xjg_icent%d_final", centBinHI[icent] ) << endl; hJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetPt_icent%d_final", centBinHI[icent] ) ); cout << " Getting histogram : " << Form("jetPt_icent%d_final", centBinHI[icent] ) << endl; hDphi[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("jetDphi_icent%d_final", centBinHI[icent] ) ) ; cout << " Getting histogram : " << Form("jetDphi_icent%d_final", icent)<< endl; hEta[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("etaJg_icent%d_final", centBinHI[icent] ) ) ; cout << " Getting histogram : " << Form("etaJg_icent%d_final", icent)<< endl; if ( icoll%2 == 1) { // if it is MC hGenJetPt[icoll][icent][ipt] = (TH1D*)histFile[icoll][ipt]->Get(Form("genJetPt_icent%d_final",centBinHI[icent])); cout << " Getting histogram : " << Form("genJetPt_icent%d_final", centBinHI[icent] ) << endl; } } } } else cout << " no such file " << endl; } } for (int ipt=1 ; ipt<=nPtBin ; ipt++) { for (int icoll=0 ; icoll<4 ; icoll++) { for (int icent=1 ; icent<= 10 ; icent++ ) { if ( hxjg[icoll][icent][ipt] == NULL ) continue; // emtpy histogram double rVal, rErr; rVal = hxjg[icoll][icent][ipt]->IntegralAndError(1, hxjg[icoll][icent][ipt]->GetNbinsX(), rErr, "width"); rjg[icoll][icent]->SetBinContent( ipt, rVal ); rjg[icoll][icent]->SetBinError ( ipt, rErr ); meanXjg[icoll][icent]->SetBinContent( ipt, hxjg[icoll][icent][ipt]->GetMean() ); meanXjg[icoll][icent]->SetBinError ( ipt, hxjg[icoll][icent][ipt]->GetMeanError() ); meanJetPt[icoll][icent]->SetBinContent( ipt, hJetPt[icoll][icent][ipt]->GetMean() ); meanJetPt[icoll][icent]->SetBinError ( ipt, hJetPt[icoll][icent][ipt]->GetMeanError() ); if ( icoll%2 == 1) { // if it is MC meanGenJetPt[icoll][icent]->SetBinContent( ipt, hGenJetPt[icoll][icent][ipt]->GetMean() ); meanGenJetPt[icoll][icent]->SetBinError ( ipt, hGenJetPt[icoll][icent][ipt]->GetMeanError() ); rVal = hGenJetPt[icoll][icent][ipt]->IntegralAndError(1, hGenJetPt[icoll][icent][ipt]->GetNbinsX(), rErr, "width"); rGenjg[icoll][icent]->SetBinContent( ipt, rVal ); rGenjg[icoll][icent]->SetBinError ( ipt, rErr ); } } } } TH1D* hTempPt = new TH1D("hTemp",";p_{T}^{Jet} (GeV);#frac{dN}{dp_{T}} #frac{1}{N}",200,10,150); hTempPt->SetAxisRange(30,150,"X"); hTempPt->SetAxisRange(0,0.05,"Y"); hTempPt->GetYaxis()->SetTitleOffset(1.35); handsomeTH1(hTempPt,0); TCanvas* c2 = new TCanvas("c2_jetPt","",1200,350); makeMultiPanelCanvas(c2,nPtBin,1,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { c2->cd(ipt); // draw pp hTempPt->DrawCopy(); hJetPt[kPPMC][7][ipt]->Scale(1./rjg[kPPMC][7]->GetBinContent(ipt)); // rjg normalization handsomeTH1(hJetPt[kPPMC][7][ipt], 1); hJetPt[kPPMC][7][ipt]->SetMarkerStyle(24); hJetPt[kPPMC][7][ipt]->Draw("same hist"); // draw pbpb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(hJetPt[kHIMC][icent][ipt],kRed); hJetPt[kHIMC][icent][ipt]->Scale(1./rjg[kHIMC][icent]->GetBinContent(ipt)); // rjg normalization if ( icent == 2 ) hJetPt[kHIMC][icent][ipt]->SetMarkerStyle(24); if ( icent == 2 ) hJetPt[kHIMC][icent][ipt]->Draw("same hist"); if ( icent == 1 ) hJetPt[kHIMC][icent][ipt]->Draw("same"); } double dx1=0.15; if ( ipt == nPtBin ) drawText(Form("p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1]), 0.15+dx1+0.25,0.85,1,15);//yeonju 130823 else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1], (int)ptBin[ipt]), 0.15+dx1,0.85,1,15);//yeonju 130823 if ( ipt == nPtBin ) { TLegend *l0 = new TLegend(0.1542202,0.4928762,0.9769094,0.7803873,NULL,"brNDC"); easyLeg(l0,"MC 2.76TeV"); l0->AddEntry(hJetPt[kPPMC][7][ipt],"PYTHIA pp ","l"); l0->AddEntry(hJetPt[kHIMC][2][ipt],"PYTHIA+HYDJET 30-100%","l"); l0->AddEntry(hJetPt[kHIMC][1][ipt],"PYTHIA+HYDJET 0-30%","p"); l0->Draw(); } onSun(30,0,200,0); } TCanvas* c3 = new TCanvas("c3_GenjetPt","",1200,350); makeMultiPanelCanvas(c3,nPtBin,1,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { c3->cd(ipt); // draw pp hTempPt->DrawCopy(); hGenJetPt[kPPMC][7][ipt]->Scale(1./rGenjg[kPPMC][7]->GetBinContent(ipt)); // rjg normalization handsomeTH1(hGenJetPt[kPPMC][7][ipt], 1); hGenJetPt[kPPMC][7][ipt]->SetMarkerStyle(24); hGenJetPt[kPPMC][7][ipt]->Draw("same hist"); // draw pbpb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(hGenJetPt[kHIMC][icent][ipt],kRed); hGenJetPt[kHIMC][icent][ipt]->Scale(1./rGenjg[kHIMC][icent]->GetBinContent(ipt)); // rjg normalization if ( icent == 2 ) hGenJetPt[kHIMC][icent][ipt]->SetMarkerStyle(24); if ( icent == 2 ) hGenJetPt[kHIMC][icent][ipt]->Draw("same hist"); if ( icent == 1 ) hGenJetPt[kHIMC][icent][ipt]->Draw("same"); } double dx1=0.15; if ( ipt == nPtBin ) drawText(Form("p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1]), 0.15+dx1+0.25,0.85,1,15);//yeonju 130823 else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1], (int)ptBin[ipt]), 0.15+dx1,0.85,1,15);//yeonju 130823 if ( ipt == nPtBin ) { TLegend *l0 = new TLegend(0.1542202,0.4928762,0.9769094,0.7803873,NULL,"brNDC"); easyLeg(l0,"Gen Jet Used"); l0->AddEntry(hGenJetPt[kPPMC][7][ipt],"PYTHIA pp ","l"); l0->AddEntry(hGenJetPt[kHIMC][2][ipt],"PYTHIA+HYDJET 30-100%","l"); l0->AddEntry(hGenJetPt[kHIMC][1][ipt],"PYTHIA+HYDJET 0-30%","p"); l0->Draw(); } onSun(30,0,200,0); } TCanvas* c101 = new TCanvas("c101_xjg","",1200,350); makeMultiPanelCanvas(c101,nPtBin,1,0.0,0.0,0.2,0.15,0.02); TH1D* hTempXjg = new TH1D("htempxjg",";x_{J#gamma};#frac{dN}{dp_{T}} #frac{1}{N}",200,0,2); hTempXjg->SetAxisRange(0,2,"X"); hTempXjg->SetAxisRange(0,3,"Y"); hTempXjg->GetYaxis()->SetTitleOffset(1.35); handsomeTH1(hTempXjg,0); for ( int ipt = 1 ; ipt<=nPtBin ; ipt++) { c101->cd(ipt); // draw pp hTempXjg->DrawCopy(); hxjg[kPPMC][7][ipt]->Scale(1./rjg[kPPMC][7]->GetBinContent(ipt)); // rjg normalization handsomeTH1(hxjg[kPPMC][7][ipt], 1); hxjg[kPPMC][7][ipt]->SetMarkerStyle(24); hxjg[kPPMC][7][ipt]->Draw("same hist"); // draw pbpb for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(hxjg[kHIMC][icent][ipt],kRed); hxjg[kHIMC][icent][ipt]->Scale(1./rjg[kHIMC][icent]->GetBinContent(ipt)); // rjg normalization if ( icent == 2 ) hxjg[kHIMC][icent][ipt]->SetMarkerStyle(24); if ( icent == 2 ) hxjg[kHIMC][icent][ipt]->Draw("same hist"); if ( icent == 1 ) hxjg[kHIMC][icent][ipt]->Draw("same"); } double dx1=0.15; if ( ipt == nPtBin ) drawText(Form("p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1]), 0.15+dx1+0.25,0.85,1,15);//yeonju 130823 else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)ptBin[ipt-1], (int)ptBin[ipt]), 0.15+dx1,0.85,1,15);//yeonju 130823 if ( ipt == nPtBin ) { TLegend *l0 = new TLegend(-0.0007607977,0.6729655,0.8215427,0.9383604,NULL,"brNDC"); easyLeg(l0,"MC 2.76TeV"); l0->AddEntry(hxjg[kPPMC][7][ipt],"PYTHIA pp ","l"); l0->AddEntry(hxjg[kHIMC][2][ipt],"PYTHIA+HYDJET 30-100%","l"); l0->AddEntry(hxjg[kHIMC][1][ipt],"PYTHIA+HYDJET 0-30%","p"); l0->Draw(); } onSun(30,0,200,0); } TCanvas* c32 = new TCanvas("c32","",500,500); handsomeTH1(meanXjg[kPPMC][7], 1); meanXjg[kPPMC][7]->SetYTitle("<x_{J#gamma}> (>30GeV)"); meanXjg[kPPMC][7]->SetMarkerStyle(24); // meanXjg[kPPMC][7]->SetAxisRange(-2,2,"X"); meanXjg[kPPMC][7]->SetAxisRange(0.8,1.05,"Y"); meanXjg[kPPMC][7]->Draw(); for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(meanXjg[kHIMC][icent],kRed); if ( icent == 2 ) meanXjg[kHIMC][icent]->SetMarkerStyle(24); meanXjg[kHIMC][icent]->Draw("same"); } if (1 == 1) { TLegend *l1mc = new TLegend(0.3387097,0.6864407,0.8729839,0.9004237,NULL,"brNDC"); easyLeg(l1mc,"MC 2.76TeV"); l1mc->AddEntry(meanXjg[kPPMC][7],"PYTHIA pp ","l"); l1mc->AddEntry(meanXjg[kHIMC][2],"PYTHIA+HYDJET 30-100%","l"); l1mc->AddEntry(meanXjg[kHIMC][1],"PYTHIA+HYDJET 0-30%","p"); l1mc->Draw(); } TCanvas* c33 = new TCanvas("c33","",500,500); handsomeTH1(meanJetPt[kPPMC][7], 1); meanJetPt[kPPMC][7]->SetYTitle("<p_{T}^{Jet}> (>30GeV)"); meanJetPt[kPPMC][7]->SetMarkerStyle(24); // meanJetPt[kPPMC][7]->SetAxisRange(-2,2,"X"); meanJetPt[kPPMC][7]->SetAxisRange(40,80,"Y"); meanJetPt[kPPMC][7]->Draw(); for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(meanJetPt[kHIMC][icent],kRed); if ( icent == 2 ) meanJetPt[kHIMC][icent]->SetMarkerStyle(24); meanJetPt[kHIMC][icent]->Draw("same"); } if (1 == 1) { TLegend *l1mc = new TLegend(0.3810484,0.1864407,0.891129,0.4004237,NULL,"brNDC"); easyLeg(l1mc,"MC 2.76TeV"); l1mc->AddEntry(meanJetPt[kPPMC][7],"PYTHIA pp ","p"); l1mc->AddEntry(meanJetPt[kHIMC][2],"PYTHIA+HYDJET 30-100%","p"); l1mc->AddEntry(meanJetPt[kHIMC][1],"PYTHIA+HYDJET 0-30%","p"); l1mc->Draw(); } TCanvas* c33_genJet = new TCanvas("c33_genJet","",500,500); handsomeTH1(meanGenJetPt[kPPMC][7], 1); meanGenJetPt[kPPMC][7]->SetYTitle("<p_{T}^{Jet}> (>30GeV)"); meanGenJetPt[kPPMC][7]->SetMarkerStyle(24); // meanGenJetPt[kPPMC][7]->SetAxisRange(-2,2,"X"); meanGenJetPt[kPPMC][7]->SetAxisRange(40,80,"Y"); meanGenJetPt[kPPMC][7]->Draw(); for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(meanGenJetPt[kHIMC][icent],kRed); if ( icent == 2 ) meanGenJetPt[kHIMC][icent]->SetMarkerStyle(24); meanGenJetPt[kHIMC][icent]->Draw("same"); } if (1 == 1) { TLegend *l1mc = new TLegend(0.3810484,0.1864407,0.891129,0.4004237,NULL,"brNDC"); easyLeg(l1mc,"Gen Jet Used"); l1mc->AddEntry(meanGenJetPt[kPPMC][7],"PYTHIA pp ","p"); l1mc->AddEntry(meanGenJetPt[kHIMC][2],"PYTHIA+HYDJET 30-100%","p"); l1mc->AddEntry(meanGenJetPt[kHIMC][1],"PYTHIA+HYDJET 0-30%","p"); l1mc->Draw(); } TCanvas* c34 = new TCanvas("c34","",500,500); handsomeTH1(rjg[kPPMC][7], 1); rjg[kPPMC][7]->SetYTitle("r_{j#gamma} (>30GeV)"); rjg[kPPMC][7]->SetMarkerStyle(24); // rjg[kPPMC][7]->SetAxisRange(-2,2,"X"); rjg[kPPMC][7]->SetAxisRange(.2,1,"Y"); rjg[kPPMC][7]->Draw(); for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(rjg[kHIMC][icent],kRed); if ( icent == 2 ) rjg[kHIMC][icent]->SetMarkerStyle(24); rjg[kHIMC][icent]->Draw("same"); } if (1 == 1) { TLegend *l1mc = new TLegend(0.3810484,0.1864407,0.891129,0.4004237,NULL,"brNDC"); easyLeg(l1mc,"MC 2.76TeV"); l1mc->AddEntry(rjg[kPPMC][7],"PYTHIA pp ","p"); l1mc->AddEntry(rjg[kHIMC][2],"PYTHIA+HYDJET 30-100%","p"); l1mc->AddEntry(rjg[kHIMC][1],"PYTHIA+HYDJET 0-30%","p"); l1mc->Draw(); } TCanvas* c34_genJet = new TCanvas("c34_genJet","",500,500); handsomeTH1(rGenjg[kPPMC][7], 1); rGenjg[kPPMC][7]->SetYTitle("r_{j#gamma} (>30GeV)"); rGenjg[kPPMC][7]->SetMarkerStyle(24); // rGenjg[kPPMC][7]->SetAxisRange(-2,2,"X"); rGenjg[kPPMC][7]->SetAxisRange(.2,1,"Y"); rGenjg[kPPMC][7]->Draw(); for ( int icent = 1; icent <= nCentBinHI ; icent++ ) { handsomeTH1(rGenjg[kHIMC][icent],kRed); if ( icent == 2 ) rGenjg[kHIMC][icent]->SetMarkerStyle(24); rGenjg[kHIMC][icent]->Draw("same"); } if (1 == 1) { TLegend *l1mc = new TLegend(0.3810484,0.1864407,0.891129,0.4004237,NULL,"brNDC"); easyLeg(l1mc,"Gen Jet Used"); l1mc->AddEntry(rGenjg[kPPMC][7],"PYTHIA pp ","p"); l1mc->AddEntry(rGenjg[kHIMC][2],"PYTHIA+HYDJET 30-100%","p"); l1mc->AddEntry(rGenjg[kHIMC][1],"PYTHIA+HYDJET 0-30%","p"); l1mc->Draw(); } }
void drawPtDependence_yeonju0815(bool drawPbPb=1, int xNorm = 1) { gStyle -> SetOptStat(0); const int nPtBin = 5; double ptBin[nPtBin+1] = {40, 50,60,80,120,9999}; double AvePtBin[nPtBin+1] = { 45, 54.1479, 67.4204, 99.6956, 150, 9999}; TH1D* hxjg[7][1000]; // [species][centrality] TH1D* hxjgNorm[7][1000]; TH1D* hdphi[7][1000]; valPair meanX[7][1000]; valPair rjg[7][1000]; TGraphAsymmErrors* gr[7]; TGraphAsymmErrors* gx[7]; for (int i=0;i<7;i++) { gr[i] = new TGraphAsymmErrors(); gr[i]->SetName(Form("gr_%d",i)); gx[i] = new TGraphAsymmErrors(); gx[i]->SetName(Form("gx_%d",i)); } TFile* fff[7][1000]; for ( int ipt = 0 ; ipt<nPtBin ; ipt++) { for ( int iSpecies=0 ; iSpecies<=5 ; iSpecies++){ if ( (iSpecies!=kPPDATA)&&(iSpecies!=kHIDATA) ) continue; int iglb = ipt + iSpecies*50.; int icent = -1; if ( iSpecies == kPPDATA) { icent = 7; fff[iSpecies][iglb] = new TFile(Form("ffFiles/photonTrackCorr_ppDATA_output_photonPtThr%d_to_%d_jetPtThr30_20130815.root",(int)ptBin[ipt],(int)ptBin[ipt+1])); } if ( iSpecies == kHIDATA) { icent = 10030; fff[iSpecies][iglb] = new TFile(Form("ffFiles/photonTrackCorr_pbpbDATA_output_photonPtThr%d_to_%d_jetPtThr30_20130815.root",(int)ptBin[ipt],(int)ptBin[ipt+1])); } hdphi[iSpecies][iglb] = (TH1D*)fff[iSpecies][iglb]->Get(Form("jetDphi_icent%d_final",icent)); hxjg[iSpecies][iglb] = (TH1D*)fff[iSpecies][iglb]->Get(Form("xjg_icent%d_final",icent)); hxjgNorm[iSpecies][iglb] = (TH1D*)hxjg[iSpecies][iglb]->Clone(Form("norm_%s",hxjg[iSpecies][iglb]->GetName()) ); meanX[iSpecies][iglb].val = hxjg[iSpecies][iglb]->GetMean(); meanX[iSpecies][iglb].err = hxjg[iSpecies][iglb]->GetMeanError(); gx[iSpecies]->SetPoint (ipt+1, AvePtBin[ipt], meanX[iSpecies][iglb].val); gx[iSpecies]->SetPointError(ipt+1, 0.001,0.001, meanX[iSpecies][iglb].err, meanX[iSpecies][iglb].err); double rError; rjg[iSpecies][iglb].val = hxjg[iSpecies][iglb]->IntegralAndError(1, hxjg[iSpecies][iglb]->GetNbinsX(), rError, "width"); rjg[iSpecies][iglb].err = rError; gr[iSpecies]->SetPoint (ipt+1, AvePtBin[ipt], rjg[iSpecies][iglb].val); gr[iSpecies]->SetPointError(ipt+1, 0.001,0.001, rjg[iSpecies][iglb].err, rjg[iSpecies][iglb].err); } } // for PbPb 30-9999!!!! for ( int ipt = 0 ; ipt<nPtBin ; ipt++) { int iSpecies=6; int iglb = ipt + iSpecies*50.; int icent = 13099; fff[iSpecies][iglb] = new TFile(Form("photonTrackCorr_pbpbDATA_output_photonPtThr%d_to_%d_jetPtThr30_20130815.root",(int)ptBin[ipt],(int)ptBin[ipt+1])); hdphi[iSpecies][iglb] = (TH1D*)fff[iSpecies][iglb]->Get(Form("jetDphi_icent%d_final",icent)); hxjg[iSpecies][iglb] = (TH1D*)fff[iSpecies][iglb]->Get(Form("xjg_icent%d_final",icent)); hxjgNorm[iSpecies][iglb] = (TH1D*)hxjg[iSpecies][iglb]->Clone(Form("norm_%s",hxjg[iSpecies][iglb]->GetName()) ); meanX[iSpecies][iglb].val = hxjg[iSpecies][iglb]->GetMean(); meanX[iSpecies][iglb].err = hxjg[iSpecies][iglb]->GetMeanError(); gx[iSpecies]->SetPoint (ipt+1, AvePtBin[ipt], meanX[iSpecies][iglb].val); gx[iSpecies]->SetPointError(ipt+1, 0.001,0.001, meanX[iSpecies][iglb].err, meanX[iSpecies][iglb].err); double rError; rjg[iSpecies][iglb].val = hxjg[iSpecies][iglb]->IntegralAndError(1, hxjg[iSpecies][iglb]->GetNbinsX(), rError, "width"); rjg[iSpecies][iglb].err = rError; gr[iSpecies]->SetPoint (ipt+1, AvePtBin[ipt], rjg[iSpecies][iglb].val); gr[iSpecies]->SetPointError(ipt+1, 0.001,0.001, rjg[iSpecies][iglb].err, rjg[iSpecies][iglb].err); } TCanvas* c1 = new TCanvas("c1","",1350,350); makeMultiPanelCanvas(c1,nPtBin,1,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 0 ; ipt<nPtBin ; ipt++) { c1->cd(ipt+1); int iSpecies = kPPDATA; int iglb = ipt + iSpecies*50.; handsomeTH1(hxjgNorm[iSpecies][iglb],1); if (xNorm==1) scaleInt(hxjgNorm[iSpecies][iglb]); hxjgNorm[iSpecies][iglb]->SetXTitle("x_{J,#gamma}"); hxjgNorm[iSpecies][iglb]->SetYTitle("#frac{dN}{dx} #frac{1}{N}"); if (xNorm==1) hxjgNorm[iSpecies][iglb]->SetAxisRange(-0.015,0.3,"Y"); else hxjgNorm[iSpecies][iglb]->SetAxisRange(-0.06,1.5,"Y"); hxjgNorm[iSpecies][iglb]->SetMarkerStyle(24); hxjgNorm[iSpecies][iglb]->Draw(); iSpecies = kHIDATA; iglb = ipt + iSpecies*50.; if (xNorm==1) scaleInt(hxjgNorm[iSpecies][iglb]); handsomeTH1(hxjgNorm[iSpecies][iglb],2); if (drawPbPb) hxjgNorm[iSpecies][iglb]->Draw("same"); //for PbPb 30-9999!!!! iSpecies = 6; iglb = ipt + iSpecies*50.; if (xNorm==1) scaleInt(hxjgNorm[iSpecies][iglb]); handsomeTH1(hxjgNorm[iSpecies][iglb],2); hxjgNorm[iSpecies][iglb] -> SetMarkerStyle(24); if (drawPbPb) hxjgNorm[iSpecies][iglb]->Draw("same"); onSun(0,0,2,0); // onSun(meanX[iSpecies][iglb].val - meanX[iSpecies][iglb].err, 0, meanX[iSpecies][iglb].val+meanX[iSpecies][iglb].err,0,ycolor[ipt+1],2); float dx1; (ipt==0)? dx1=0.15 : dx1=0 ; if ( ipt == nPtBin-1 ) drawText(Form("p_{T}^{#gamma} > %dGeV, p_{T}^{jet}>30GeV", (int)ptBin[ipt]), 0.12+dx1+0.25,0.889118,1,15); else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, p_{T}^{jet}>30GeV", (int)ptBin[ipt], (int)ptBin[ipt+1]), 0.12+dx1,0.889118,1,15); TLegend *l1 = new TLegend(0.6365615,0.6445304,0.9577623,0.846736,NULL,"brNDC"); easyLeg(l1,"2.76TeV"); l1->AddEntry(hxjgNorm[kPPDATA][ipt + kPPDATA*50],"pp ","p"); if (drawPbPb) l1->AddEntry(hxjgNorm[kHIDATA][iglb],"PbPb 0-30%","p"); if (drawPbPb) l1->AddEntry(hxjgNorm[6][iglb],"PbPb 30-100%","p"); if ( ipt==0 ) l1->Draw(); } c1->SaveAs(Form("gifs/xjg_ptDependence_drawPbPb%d_norm%d.pdf",drawPbPb,xNorm)); TCanvas* cDphi = new TCanvas("cDphi","",1350,350); makeMultiPanelCanvas(cDphi,nPtBin,1,0.0,0.0,0.2,0.15,0.02); for ( int ipt = 0 ; ipt<nPtBin ; ipt++) { cDphi->cd(ipt+1); int iSpecies = kPPDATA; int iglb = ipt + iSpecies*50.; handsomeTH1(hdphi[iSpecies][iglb],1); hdphi[iSpecies][iglb]->SetYTitle("x_{J,#gamma}"); hdphi[iSpecies][iglb]->SetXTitle("#Delta#phi_{J,#gamma}"); hdphi[iSpecies][iglb]->Scale(1./hdphi[iSpecies][iglb]->Integral("width")); hdphi[iSpecies][iglb]->SetAxisRange(0.01,30,"Y"); hdphi[iSpecies][iglb]->SetMarkerStyle(24); hdphi[iSpecies][iglb]->Draw(); iSpecies = kHIDATA; iglb = ipt + iSpecies*50.; hdphi[iSpecies][iglb]->Scale(1./hdphi[iSpecies][iglb]->Integral("width")); handsomeTH1(hdphi[iSpecies][iglb],2); if (drawPbPb) hdphi[iSpecies][iglb]->Draw("same"); //for PbPb 30-100!!! iSpecies = 6; iglb = ipt + iSpecies*50.; hdphi[iSpecies][iglb]->Scale(1./hdphi[iSpecies][iglb]->Integral("width")); handsomeTH1(hdphi[iSpecies][iglb],2); hdphi[iSpecies][iglb]->SetMarkerStyle(24); if (drawPbPb) hdphi[iSpecies][iglb]->Draw("same"); gPad->SetLogy(); float dx1; (ipt==0)? dx1=0.15 : dx1=0 ; if ( ipt == nPtBin-1 ) drawText(Form("%dGeV<p_{T}^{#gamma}, p_{T}^{jet}>30GeV", (int)ptBin[ipt]), 0.15+dx1+0.25,0.889118,1,15); else drawText(Form("%dGeV<p_{T}^{#gamma}<%dGeV, p_{T}^{jet}>30GeV", (int)ptBin[ipt], (int)ptBin[ipt+1]), 0.15+dx1,0.889118,1,15); TLegend *l1 = new TLegend(0.6365615,0.6445304,0.9577623,0.846736,NULL,"brNDC"); easyLeg(l1,"2.76TeV"); l1->AddEntry(hdphi[kPPDATA][ipt + kPPDATA*50],"pp ","p"); if (drawPbPb) l1->AddEntry(hdphi[kHIDATA][iglb],"PbPb 0-30%","p"); if (drawPbPb) l1->AddEntry(hdphi[kHIDATA][iglb],"PbPb 30-100%","p"); if ( ipt==0 ) l1->Draw(); } cDphi->SaveAs(Form("gifs/dphi_ptDependence_drawPbPb%d_norm%d.pdf",drawPbPb,xNorm)); TCanvas* c2 = new TCanvas("c2","",800,400); c2->Divide(2,1); c2->cd(2); TH1D* hr = new TH1D("hr",";p_{T}^{#gamma};r_{J,#gamma}",200,20,180); handsomeTH1(hr,1); hr->SetAxisRange(0.0,1.1,"Y"); // hr->SetNdivisions(5); hr->Draw(); handsomeTGraph(gr[kPPDATA],1); handsomeTGraph(gr[kHIDATA],2); handsomeTGraph(gr[6],2); gr[kPPDATA]->SetMarkerStyle(24); gr[kPPDATA]->Draw("same p"); gr[6]->SetMarkerStyle(24); if (drawPbPb) gr[kHIDATA]->Draw("same p"); if (drawPbPb) gr[6]->Draw("same p"); jumSun(20,1,180,1); gStyle->SetEndErrorSize(0); c2->cd(1); TH1D* hx = (TH1D*)hr->Clone("hx"); handsomeTH1(hx,1); hx->SetYTitle("<x_{J,#gamma}>"); hx->SetAxisRange(0.6,1.05,"Y"); // hx->SetNdivisions(5); hx->Draw(); handsomeTGraph(gx[kPPDATA],1); handsomeTGraph(gx[kHIDATA],2); handsomeTGraph(gx[6],2); gx[kPPDATA]->SetMarkerStyle(24); gx[kPPDATA]->Draw("same p"); gx[6]->SetMarkerStyle(24); if (drawPbPb) gx[kHIDATA]->Draw("same p"); if (drawPbPb) gx[6]->Draw("same p"); jumSun(20,1,180,1); c2->cd(2); TLegend *l1= new TLegend(0.5226071,0.6300415,0.9597724,0.8332584,NULL,"brNDC"); easyLeg(l1,"2.76TeV"); l1->AddEntry(gr[kPPDATA],"pp ","p"); if (drawPbPb) l1->AddEntry(gr[kHIDATA],"PbPb 0-30%","p"); if (drawPbPb) l1->AddEntry(gr[6],"PbPb 30-100%","p"); l1->Draw(); c2->SaveAs(Form("gifs/summaryPlot_ptDependence_drawPbPb%d_norm%d.pdf",drawPbPb,xNorm)); }
void yeonju_drawPAFigures_0815(int xNorm = 1) { gStyle -> SetOptStat(0); //yeonju const int nCentBinPa = 3; double centBinPa[nCentBinPa+1] = {0,20,30,100}; double AvePtBin[nCentBinPa+1] = {10, 25.0, 65.0, 9999}; const int nPt = 5; const int nFile = 10; double PtBinPa[nPt+1] = {40,50,60,80,120,9999}; /* const int nCentBinPa = 5; double centBinPa[nCentBinPa+1] = {0,20,25,30,40,100}; double AvePtBin[nCentBinPa+1] = { 10, 22.5, 27.5, 35, 70, 9999}; */ TH1D* hxjg[7][1000][20]; // [species][centrality][pt_dependence] TH1D* hxjgNorm[7][1000][20]; TH1D* hdphi[7][1000][20]; valPair meanX[7][1000][20]; valPair rjg[7][1000][20]; TGraphAsymmErrors* gr[7][20]; TGraphAsymmErrors* gx[7][20]; for (int j=1;j<=nFile;j++){ for (int i=1;i<=7;i++) { gr[i][j] = new TGraphAsymmErrors(); gr[i][j]->SetName(Form("gr_%d_%d",i,j)); gx[i][j] = new TGraphAsymmErrors(); gx[i][j]->SetName(Form("gx_%d_%d",i,j)); } } TFile* fff[7][1000][20]; double rError[20]; // cout << "ok!"<< endl; for ( int icent = 1 ; icent<=nCentBinPa ; icent++) { int iSpecies =kPADATA ; int iglb = icent + iSpecies*50.; fff[iSpecies][iglb][1] = new TFile("ffFiles/photonTrackCorr_ppbDATA_output_photonPtThr40_to_50_jetPtThr30_20130815.root"); fff[iSpecies][iglb][2] = new TFile("ffFiles/photonTrackCorr_ppbDATA_output_photonPtThr50_to_60_jetPtThr30_20130815.root"); fff[iSpecies][iglb][3] = new TFile("ffFiles/photonTrackCorr_ppbDATA_output_photonPtThr60_to_80_jetPtThr30_20130815.root"); fff[iSpecies][iglb][4] = new TFile("ffFiles/photonTrackCorr_ppbDATA_output_photonPtThr80_to_120_jetPtThr30_20130815.root"); fff[iSpecies][iglb][5] = new TFile("ffFiles/photonTrackCorr_ppbDATA_output_photonPtThr120_to_9999_jetPtThr30_20130815.root"); fff[iSpecies][iglb][6] = new TFile("ffFiles/photonTrackCorr_ppbMC_output_photonPtThr40_to_50_jetPtThr30_20130815.root"); fff[iSpecies][iglb][7] = new TFile("ffFiles/photonTrackCorr_ppbMC_output_photonPtThr50_to_60_jetPtThr30_20130815.root"); fff[iSpecies][iglb][8] = new TFile("ffFiles/photonTrackCorr_ppbMC_output_photonPtThr60_to_80_jetPtThr30_20130815.root"); fff[iSpecies][iglb][9] = new TFile("ffFiles/photonTrackCorr_ppbMC_output_photonPtThr80_to_120_jetPtThr30_20130815.root"); fff[iSpecies][iglb][10] = new TFile("ffFiles/photonTrackCorr_ppbMC_output_photonPtThr120_to_9999_jetPtThr30_20130815.root"); // cout << "fffff" << endl; for(int j = 1; j <= nFile ; j++){ hdphi[iSpecies][iglb][j] = (TH1D*)fff[iSpecies][iglb][j]->Get(Form("jetDphi_icent%d_final",icent)); //cout << "hdphi" <<endl; hxjg[iSpecies][iglb][j] = (TH1D*)fff[iSpecies][iglb][j]->Get(Form("xjg_icent%d_final",icent)); hxjgNorm[iSpecies][iglb][j] = (TH1D*)hxjg[iSpecies][iglb][j]->Clone(Form("norm_%s",hxjg[iSpecies][iglb][j]->GetName()) ); //cout << "meanX" <<endl; meanX[iSpecies][iglb][j].val = hxjg[iSpecies][iglb][j]->GetMean(); meanX[iSpecies][iglb][j].err = hxjg[iSpecies][iglb][j]->GetMeanError(); gx[iSpecies][j]->SetPoint (icent, AvePtBin[icent-1], meanX[iSpecies][iglb][j].val); gx[iSpecies][j]->SetPointError(icent, AvePtBin[icent-1] - centBinPa[icent-1], centBinPa[icent] - AvePtBin[icent-1], meanX[iSpecies][iglb][j].err, meanX[iSpecies][iglb][j].err); //cout << "rjg" <<endl; rjg[iSpecies][iglb][j].val = hxjg[iSpecies][iglb][j]->IntegralAndError(1, hxjg[iSpecies][iglb][j]->GetNbinsX(), rError[j], "width"); rjg[iSpecies][iglb][j].err = rError[j]; gr[iSpecies][j]->SetPoint (icent, AvePtBin[icent-1], rjg[iSpecies][iglb][j].val); gr[iSpecies][j]->SetPointError(icent, AvePtBin[icent-1] - centBinPa[icent-1], centBinPa[icent] - AvePtBin[icent-1], rjg[iSpecies][iglb][j].err, rjg[iSpecies][iglb][j].err); } } cout << "Tcanvas c1 " << endl; TCanvas* c1 = new TCanvas("c1","xjg_distribution",900,1750); makeMultiPanelCanvas(c1,3,5,0.0,0.0,0.2,0.15,0.02); for ( int j = 1 ; j <= nPt ; j++){//pt for ( int icent = 1 ; icent<=nCentBinPa ; icent++) { c1->cd(icent+3*(j-1)); int iSpecies = kPADATA; int iglb = icent + iSpecies*50.; handsomeTH1(hxjgNorm[iSpecies][iglb][j],icent); hxjgNorm[iSpecies][iglb][j]->Scale(0.1); if (xNorm==1) scaleInt(hxjgNorm[iSpecies][iglb][j]); hxjgNorm[iSpecies][iglb][j]->SetXTitle("x_{J,#gamma}"); hxjgNorm[iSpecies][iglb][j]->SetYTitle("#frac{dN}{dx} #frac{1}{N}"); if (xNorm==1) hxjgNorm[iSpecies][iglb][j]->SetAxisRange(-0.015,0.35,"Y"); else hxjgNorm[iSpecies][iglb][j]->SetAxisRange(-0.06,1.5,"Y"); hxjgNorm[iSpecies][iglb][j]->SetMarkerStyle(19+j); hxjgNorm[iSpecies][iglb][j]->Draw(); float dx1; ((icent==1)||(icent==4))? dx1=0.15 : dx1=0 ; if ( icent == nCentBinPa ) drawText(Form("E_{T}^{HF|#eta|>4} > %dGeV, ", (int)centBinPa[icent-1]), 0.12+dx1+0.25,0.889118,1,15);//yeonju 130805 else drawText(Form("%dGeV < E_{T}^{HF|#eta|>4} < %dGeV, ", (int)centBinPa[icent-1], (int)centBinPa[icent]), 0.12+dx1,0.889118,1,15); if ( j == nPt ) drawText(Form("p_{T}^{#gamma} < %dGeV, ", (int)PtBinPa[j-1]), 0.12+dx1+0.25,0.79,1,15);//yeonju 130823 else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)PtBinPa[j-1], (int)PtBinPa[j]), 0.12+dx1,0.79,1,15);//yeonju 130823 TLegend *l1 = new TLegend(0.6365615,0.6445304,0.9577623,0.846736,NULL,"brNDC"); easyLeg(l1,"p+Pb 5.02TeV"); // l1->AddEntry(hxjgNorm[kPADATA][icent + kPADATA*50][j],"pPb ","p"); if ( icent==1 && j==1) l1->Draw(); onSun(0,0,2,0); jumSun(1,0,1,1); } } c1 -> SaveAs("pPbData_xjgDistribution_pt_cent_dep.gif"); //cout<< "c11" << endl; /* TCanvas* c11 = new TCanvas("c11","xjgDist_onePanel_pt_cent_dep",500,500); for ( int j = 1 ; j <=nPt ; j++){ for ( int icent = 1 ; icent<=nCentBinPa ; icent++) { int iSpecies = kPADATA; int iglb = icent + iSpecies*50.; handsomeTH1(hxjgNorm[iSpecies][iglb][j],icent+3*(j-1)); if ( icent == 1 && j == 1) hxjgNorm[iSpecies][iglb][j]->Draw(); else hxjgNorm[iSpecies][iglb][j]->Draw("same"); onSun(0,0,2,0); } } c11 -> SaveAs("xjgDist_onePanel_by_pt_cent_dep.gif"); */ TCanvas* cDphi = new TCanvas("cDphi","",1200,350); makeMultiPanelCanvas(cDphi,5,1,0.0,0.0,0.2,0.15,0.02); TH1D* meanDphi[7][10]; // [iSpecies][pt] for (int j=1 ; j<=nPt ; j++) { int iSpecies = kPADATA; meanDphi[iSpecies][j] = new TH1D(Form("meanDphi_iSpecies%d_pt%d",iSpecies,j), ";p_{T}^{#gamma} (GeV); <Dphi_{J#phi}>",nPt,AvePtBin); } for (int ipt=1 ; ipt<=nPt ; ipt++) { for (int icent=1 ; icent<= nCentBinPa ; icent++ ) { int iSpecies = kPADATA; int iglb = icent + iSpecies*50.; if ( hdphi[iSpecies][iglb][ipt] == NULL ) continue; // emtpy histogram meanDphi[iSpecies][ipt]->SetBinContent( ipt, hdphi[iSpecies][iglb][ipt]->GetMean() ); meanDphi[iSpecies][ipt]->SetBinError ( ipt, hdphi[iSpecies][iglb][ipt]->GetMeanError() ); } } for ( int j = 1 ; j<=nPt ; j++){ int icent=1; // for ( int icent = 1 ; icent<=nCentBinPa ; icent++) { cDphi->cd(j-1); int iSpecies = kPADATA; int iglb = icent + iSpecies*50.; handsomeTH1(meanDphi[iSpecies][j]); meanDphi[iSpecies][j]->SetXTitle("#Delta#phi_{J,#gamma}"); meanDphi[iSpecies][j]->Scale(1./meanDphi[iSpecies][j]->Integral("width")); meanDphi[iSpecies][j]->SetAxisRange(0.01,30,"Y"); // meanDphi[iSpecies][j]->SetMarkerStyle(24); // handsomeTH1(meanDphi[iSpecies][j],icent+3*(j-1)); meanDphi[iSpecies][j]->Draw(); gPad->SetLogy(); float dx1=0; // ((icent==1)||(icent==4))? dx1=0.15 : dx1=0 ; /* if ( icent == nCentBinPa ) drawText(Form("E_{T}^{HF|#eta|>4} > %dGeV", (int)centBinPa[icent-1]), 0.12+dx1+0.25,0.889118,1,15);//yeonju 130805 else drawText(Form("%dGeV < E_{T}^{HF|#eta|>4} < %dGeV", (int)centBinPa[icent-1], (int)centBinPa[icent]), 0.12+dx1,0.889118,1,15); */ if ( j == nPt ) drawText(Form("p_{T}^{#gamma} < %dGeV, ", (int)PtBinPa[j-1]), 0.12+dx1+0.25,0.79,1,15);//yeonju 130823 else drawText(Form("%dGeV < p_{T}^{#gamma} < %dGeV, ", (int)PtBinPa[j-1], (int)PtBinPa[j]), 0.12+dx1,0.79,1,15);//yeonju 130823 TLegend *l1 = new TLegend(0.6365615,0.6445304,0.9577623,0.846736,NULL,"brNDC"); easyLeg(l1,"p+Pb 5.02TeV"); if ( icent==1 && j==1) l1->Draw(); // } } cDphi -> SaveAs("pPbData_Dphi_distribution_by_pt_dep.pdf"); TCanvas* c2 = new TCanvas("c2","xjg_rjg_vs_pt",800,400); c2->Divide(2,1); TH1D* hr[15]; TH1D* hx[15]; for(int j=1; j<=nFile ; j++){ c2->cd(2); hr[j] = new TH1D(Form("hr%d",j),";E_{T}^{HF|#eta|>4} (GeV);r_{J,#gamma}",200,0,100); handsomeTH1(hr[j],j+1); hr[j]->SetAxisRange(0.01,1.1,"Y"); // hr->SetNdivisions(5); if (j ==1 ) {hr[j]->Draw();} else { hr[j]->Draw("same");} if (j < 4) { handsomeTGraph(gr[kPADATA][j],j+1); gr[kPADATA][j]->SetMarkerStyle(20); gr[kPADATA][j]->SetMarkerSize(1); gr[kPADATA][j]->Draw("same p"); } else { handsomeTGraph(gr[kPADATA][j],j-2); gr[kPADATA][j]->SetMarkerStyle(24); gr[kPADATA][j]->SetMarkerSize(1.5); gr[kPADATA][j]->Draw("same p"); } jumSun(0,1,100,1); c2->cd(1); hx[j] = (TH1D*)hr[j]->Clone(Form("hx%d",j)); handsomeTH1(hx[j],j+1); hx[j]->SetYTitle("<x_{J,#gamma}>"); hx[j]->SetAxisRange(0.6,1.05,"Y"); // hx->SetNdivisions(5); if (j==1) {hx[j]->Draw();} else {hx[j]->Draw("same");} if (j < 4) { handsomeTGraph(gx[kPADATA][j],j+1); gx[kPADATA][j]->SetMarkerStyle(20); gx[kPADATA][j]->SetMarkerSize(1); gx[kPADATA][j]->Draw("same p"); } else { handsomeTGraph(gx[kPADATA][j],j-2); gx[kPADATA][j]->SetMarkerStyle(24); gx[kPADATA][j]->SetMarkerSize(0.2); gx[kPADATA][j]->Draw("same p"); } jumSun(0,1,100,1); TLegend *l1 = new TLegend(0.5226071,0.6300415,0.9597724,0.8332584,NULL,"brNDC"); easyLeg(l1,"5.02TeV"); l1->AddEntry(gr[kPADATA][j],"pPb ","p"); l1->Draw(); } c2 -> SaveAs("pPbMC_and_Data_comparison_xjg_rjg.gif"); /* for(int j=1; j<=nPt ; j++){ c2->cd(2*j); hr[j] = new TH1D(Form("hr%d",j),";E_{T}^{HF|#eta|>4} (GeV);r_{J,#gamma}",200,0,100); handsomeTH1(hr[j],1); hr[j]->SetAxisRange(0.01,1.1,"Y"); // hr->SetNdivisions(5); hr[j]->Draw(); handsomeTGraph(gr[kPADATA][j],1); gr[kPADATA][j]->SetMarkerStyle(20+j); gr[kPADATA][j]->Draw("same p"); jumSun(0,1,100,1); c2->cd(2*j-1); hx[j] = (TH1D*)hr[j]->Clone(Form("hx%d",j)); handsomeTH1(hx[j],1); hx[j]->SetYTitle("<x_{J,#gamma}>"); hx[j]->SetAxisRange(0.6,1.05,"Y"); // hx->SetNdivisions(5); hx[j]->Draw(); handsomeTGraph(gx[kPADATA][j],1); gx[kPADATA][j]->SetMarkerStyle(20+j); gx[kPADATA][j]->Draw("same p"); jumSun(0,1,100,1); TLegend *l1 = new TLegend(0.5226071,0.6300415,0.9597724,0.8332584,NULL,"brNDC"); easyLeg(l1,"5.02TeV"); l1->AddEntry(gr[kPADATA][j],"pPb ","p"); l1->Draw(); c2 -> SaveAs("x_Jgamma.gif"); }*/ }