File indexing completed on 2025-08-05 08:19:54
0001
0002 #include "sPhenixStyle.C"
0003
0004 void myText(Double_t x,Double_t y,Color_t color, const char *text, Double_t tsize=0.04) {
0005
0006 TLatex l; l.SetTextAlign(12); l.SetTextSize(tsize);
0007 l.SetNDC();
0008 l.SetTextColor(color);
0009 l.DrawLatex(x,y,text);
0010 }
0011
0012 TH1F* proj(TH2F* h2);
0013
0014 TH1F* FBratio(TH1F* h){
0015
0016 const int Nbin = h->GetXaxis()->GetNbins();
0017 TH1F* hfb = new TH1F("temp32","",Nbin/2,0,Nbin/2);
0018
0019 for(int i=0; i<Nbin/2; i++){
0020 int b1 = i+1;
0021 int b2 = Nbin-i;
0022 float ratio = h->GetBinContent(b1)/h->GetBinContent(b2);
0023 float err = sqrt( pow(h->GetBinError(b1)/h->GetBinContent(b1),2)+ pow(h->GetBinError(b2)/h->GetBinContent(b2),2))*pow(ratio,2);
0024 hfb->SetBinContent(i,ratio);
0025 hfb->SetBinError(i,err);
0026 }
0027 return hfb;
0028 }
0029
0030
0031
0032 void figmaker(){
0033
0034
0035 SetsPhenixStyle();
0036
0037 int totalEvents = 0;
0038
0039 std::ifstream infile("../condor/runList.txt");
0040 if (!infile) { std::cerr << "Error: Unable to open the file\n"; return 1;}
0041 std::vector<int> runList;
0042 int num;
0043 while (infile >> num) runList.push_back(num);
0044
0045 int Nruns= runList.size();
0046
0047 for (int ir=0; ir<Nruns; ir++){
0048
0049 int run = runList[ir];
0050
0051 TFile* fin = new TFile(Form("../condor/combine_out/out_%d.root",run));
0052
0053 TH2F* h_emcal_mbd_correlation = (TH2F*) fin->Get("h_emcal_mbd_correlation" );
0054 TH2F* h_ihcal_mbd_correlation = (TH2F*) fin->Get("h_ihcal_mbd_correlation" );
0055 TH2F* h_ohcal_mbd_correlation = (TH2F*) fin->Get("h_ohcal_mbd_correlation" );
0056 TH2F* h_emcal_hcal_correlation = (TH2F*) fin->Get("h_emcal_hcal_correlation");
0057 TH1F* h_InvMass = (TH1F*) fin->Get("h_InvMass" );
0058 TH2F* h_cemc_etaphi = (TH2F*) fin->Get("h_cemc_etaphi_wQA" );
0059 TH2F* h_ihcal_etaphi = (TH2F*) fin->Get("h_ihcal_etaphi_wQA" );
0060 TH2F* h_ohcal_etaphi = (TH2F*) fin->Get("h_ohcal_etaphi_wQA" );
0061 TH2F* h_zdc_emcal_correlation = (TH2F*) fin->Get("h_zdc_emcal_correlation");
0062 TH1F* hzdcNorthcalib = (TH1F*) fin->Get("hzdcNorthcalib");
0063 TH1F* hzdcSouthcalib = (TH1F*) fin->Get("hzdcSouthcalib");
0064 TH2F* h_etaphi_clus = (TH2F*) fin->Get("h_etaphi_clus" );
0065 TH1F* hvtx_z_raw = (TH1F*) fin->Get("hvtx_z_raw");
0066 TProfile2D* h_cemc_etaphi_time = (TProfile2D*) fin->Get("h_cemc_etaphi_time");
0067 TProfile2D* h_ihcal_etaphi_time = (TProfile2D*) fin->Get("h_ihcal_etaphi_time");
0068 TProfile2D* h_ohcal_etaphi_time = (TProfile2D*) fin->Get("h_ohcal_etaphi_time");
0069
0070 TH2F* h_cemc_e_chi2 = (TH2F*) fin->Get("h_cemc_e_chi2");
0071 TH2F* h_ohcal_e_chi2 = (TH2F*) fin->Get("h_ohcal_e_chi2");
0072 TH2F* h_ihcal_e_chi2 = (TH2F*) fin->Get("h_ihcal_e_chi2");
0073
0074 TCanvas* c1 = new TCanvas("c1", "c1", 400, 400);
0075 h_emcal_mbd_correlation ->Draw("COLZ");
0076 h_emcal_mbd_correlation ->SetXTitle("#Sigma #it{E}^{EMCal} [Arb]");
0077 h_emcal_mbd_correlation ->SetYTitle("#Sigma #it{E}^{MBD} [Arb]");
0078 h_emcal_mbd_correlation->GetXaxis()->SetNdivisions(505);
0079 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0080 myText(0.22, 0.85, 1, Form("run %d", run));
0081 gPad->SetRightMargin(0.15);
0082 gPad->SetLogz();
0083
0084 c1->SaveAs(Form("../plots/emcal_mbd_correlation_%d.pdf",run));
0085
0086
0087 TCanvas* c2 = new TCanvas("c2", "c2", 400, 400);
0088 h_ihcal_mbd_correlation ->Draw("COLZ");
0089 h_ihcal_mbd_correlation ->SetXTitle("#Sigma #it{E}^{ihcal} [Arb]");
0090 h_ihcal_mbd_correlation ->SetYTitle("#Sigma #it{E}^{MBD} [Arb]");
0091 h_ihcal_mbd_correlation->GetXaxis()->SetNdivisions(505);
0092 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0093 myText(0.22, 0.85, 1, Form("run %d", run));
0094 gPad->SetRightMargin(0.15);
0095 gPad->SetLogz();
0096
0097 c2->SaveAs(Form("../plots/ihcal_mbd_correlation_%d.pdf",run));
0098
0099 TCanvas* c3 = new TCanvas("c3", "c3", 400, 400);
0100 h_ohcal_mbd_correlation ->Draw("COLZ");
0101 h_ohcal_mbd_correlation ->SetXTitle("#Sigma #it{E}^{ohcal} [Arb]");
0102 h_ohcal_mbd_correlation ->SetYTitle("#Sigma #it{E}^{MBD} [Arb]");
0103 h_ohcal_mbd_correlation->GetXaxis()->SetNdivisions(505);
0104 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0105 myText(0.22, 0.85, 1, Form("run %d", run));
0106 gPad->SetRightMargin(0.15);
0107 gPad->SetLogz();
0108
0109 c3->SaveAs(Form("../plots/ohcal_mbd_correlation_%d.pdf",run));
0110
0111
0112 TCanvas* c4 = new TCanvas("c4", "c4", 400, 400);
0113 h_emcal_hcal_correlation->Draw("COLZ");
0114 h_emcal_hcal_correlation->SetXTitle("#Sigma #it{E}^{EMCal} [Arb]");
0115 h_emcal_hcal_correlation->SetYTitle("#Sigma #it{E}^{HCal} [Arb]");
0116 h_emcal_hcal_correlation->GetXaxis()->SetNdivisions(505);
0117 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0118 myText(0.22, 0.85, 1, Form("run %d", run));
0119 gPad->SetRightMargin(0.15);
0120 gPad->SetLogz();
0121
0122 c4->SaveAs(Form("../plots/emcal_hcal_correlation_%d.pdf",run));
0123
0124
0125 TCanvas* c5 = new TCanvas("c5", "c5", 400, 400);
0126 h_InvMass ->Draw("");
0127 h_InvMass ->SetXTitle("#it{M}_{#gamma#gamma}");
0128 h_InvMass ->SetYTitle("counts");
0129 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0130 myText(0.22, 0.85, 1, Form("run %d", run));
0131
0132 c5->SaveAs(Form("../plots/InvMass_%d.pdf",run));
0133
0134
0135 TCanvas* c6 = new TCanvas("c6", "c6", 400, 400);
0136 h_cemc_etaphi ->Draw("COLZ");
0137 h_cemc_etaphi ->SetXTitle("#it{#eta}_{i} EMCal");
0138 h_cemc_etaphi ->SetYTitle("#it{#phi}_{i} EMCal");
0139 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0140 myText(0.22, 0.85, 1, Form("run %d", run));
0141 myText(0.22, 0.80,1,"EMCal");
0142 gPad->SetRightMargin(0.15);
0143
0144 c6->SaveAs(Form("../plots/cemc_etaphi_%d.pdf",run));
0145
0146
0147
0148
0149 TCanvas* c7 = new TCanvas("c7", "c7", 400, 400);
0150 h_ihcal_etaphi ->Draw("COLZ");
0151 h_ihcal_etaphi ->SetXTitle("#it{#eta}_{i} iHcal");
0152 h_ihcal_etaphi ->SetYTitle("#it{#phi}_{i} iHcal");
0153 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0154 myText(0.22, 0.85, 1, Form("run %d", run));
0155 myText(0.22, 0.80,1,"iHCal");
0156 gPad->SetRightMargin(0.15);
0157
0158 c7->SaveAs(Form("../plots/ihcal_etaphi_%d.pdf",run));
0159
0160
0161 TCanvas* c8 = new TCanvas("c8", "c8", 400, 400);
0162 h_ohcal_etaphi ->Draw("COLZ");
0163 h_ohcal_etaphi ->SetXTitle("#it{#eta}_{i} oHcal");
0164 h_ohcal_etaphi ->SetYTitle("#it{#phi}_{i} oHcal");
0165 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0166 myText(0.22, 0.85, 1, Form("run %d", run));
0167 myText(0.22, 0.80,1,"oHCal");
0168 gPad->SetRightMargin(0.15);
0169
0170 c8->SaveAs(Form("../plots/ohcal_etaphi_%d.pdf",run));
0171
0172
0173 TH1F* h_emcal_proj = (TH1F*) proj(h_cemc_etaphi)->Clone("h_emcal_proj");
0174
0175 TCanvas* c9 = new TCanvas("c9", "c9", 400, 400);
0176 h_emcal_proj->Draw("hist");
0177 h_emcal_proj->SetYTitle("N^{twr}(E_{T} > 1 GeV)");
0178
0179 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0180 myText(0.22, 0.85, 1, Form("run %d", run));
0181 myText(0.22, 0.80,1,"EMCal");
0182
0183 c9->SaveAs(Form("../plots/cemc_proj_%d.pdf",run));
0184
0185
0186 TH1F* h_ohcal_proj = (TH1F*) proj(h_ohcal_etaphi)->Clone("h_ohcal_proj");
0187
0188 TCanvas* c10 = new TCanvas("c10", "c10", 400, 400);
0189 h_ohcal_proj->Draw("hist");
0190 h_ohcal_proj->SetYTitle("N^{twr}(E_{T} > 1 GeV)");
0191 h_ohcal_proj->GetYaxis()->SetRangeUser(0, h_ohcal_proj->GetMaximum()*1.05);
0192
0193 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0194 myText(0.22, 0.85, 1, Form("run %d", run));
0195 myText(0.22, 0.80,1,"oHCal");
0196
0197 c10->SaveAs(Form("../plots/ohcal_proj_%d.pdf",run));
0198
0199
0200 TH1F* h_ihcal_proj = (TH1F*) proj(h_ihcal_etaphi)->Clone("h_ihcal_proj");
0201
0202 TCanvas* c11 = new TCanvas("c11", "c10", 400, 400);
0203 h_ihcal_proj->Draw("hist");
0204 h_ihcal_proj->SetYTitle("N^{twr}(E_{T} > 1 GeV)");
0205 h_ihcal_proj->SetXTitle("#eta_{i}");
0206
0207 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0208 myText(0.22, 0.85, 1, Form("run %d", run));
0209 myText(0.22, 0.80,1,"iHCal");
0210
0211 c11->SaveAs(Form("../plots/ihcal_proj_%d.pdf",run));
0212
0213
0214 TH1F* h_fb_ratio_emcal = FBratio(h_emcal_proj);
0215 TH1F* h_fb_ratio_ihcal = FBratio(h_ihcal_proj);
0216 TH1F* h_fb_ratio_ohcal = FBratio(h_ohcal_proj);
0217
0218 TCanvas* c12 = new TCanvas("c12", "c12", 400, 400);
0219 h_fb_ratio_emcal->Draw("ex0");
0220 h_fb_ratio_emcal->SetYTitle("N^{twr}(#eta_{i})/N^{twr}(#eta_{N-i})");
0221 h_fb_ratio_emcal->SetXTitle("#eta_{i}");
0222 h_fb_ratio_emcal->GetYaxis()->SetRangeUser(0.1,2);
0223
0224 h_fb_ratio_ohcal->Draw("ex0 same");
0225 h_fb_ratio_ohcal->SetLineColor(kBlue);
0226 h_fb_ratio_ohcal->SetMarkerColor(kBlue);
0227 h_fb_ratio_ohcal->SetMarkerStyle(22);
0228
0229 h_fb_ratio_ihcal->Draw("ex0 same");
0230 h_fb_ratio_ihcal->SetLineColor(kRed);
0231 h_fb_ratio_ihcal->SetMarkerColor(kRed);
0232 h_fb_ratio_ihcal->SetMarkerStyle(33);
0233
0234 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0235 myText(0.22, 0.85, 1, Form("run %d", run));
0236 myText(0.22, 0.80,1,"EMCal");
0237 myText(0.32,0.80,kBlue,"oHCal");
0238 myText(0.42,0.80,kRed,"iHCal");
0239
0240 c12->SaveAs(Form("../plots/h_fb_ratio_emcal_%d.pdf",run));
0241
0242
0243 TCanvas* c13 = new TCanvas("c13", "c13", 400, 400);
0244 h_zdc_emcal_correlation->Draw("COLZ");
0245 h_zdc_emcal_correlation->SetXTitle("#Sigma #it{E}^{EMCal} [Arb]");
0246 h_zdc_emcal_correlation->SetYTitle("#Sigma #it{E}^{ZDC} [Arb]");
0247 h_zdc_emcal_correlation->GetXaxis()->SetNdivisions(505);
0248 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0249 myText(0.22, 0.85, 1, Form("run %d", run));
0250 gPad->SetRightMargin(0.15);
0251 gPad->SetLogz();
0252
0253 c13->SaveAs(Form("../plots/zdc_emcal_correlation_%d.pdf",run));
0254
0255
0256 TCanvas* c14 = new TCanvas("c14", "c14", 400, 400);
0257 hzdcNorthcalib->Draw();
0258 hzdcNorthcalib->SetLineColor(kBlue);
0259 hzdcNorthcalib->GetXaxis()->SetRangeUser(0.0,12000);
0260 hzdcNorthcalib->SetXTitle("#Sigma #it{E}^{ZDC Side}");
0261 hzdcNorthcalib->SetYTitle("Events");
0262 hzdcNorthcalib->GetXaxis()->SetNdivisions(505);
0263
0264 hzdcSouthcalib->Draw("same");
0265 hzdcSouthcalib->SetLineColor(kRed);
0266 gPad->SetLogy();
0267
0268 myText(0.7, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0269 myText(0.7, 0.85, 1, Form("run %d", run));
0270 myText(0.75, 0.80, kBlue,"North");
0271 myText(0.65, 0.80, kRed,"South");
0272
0273 c14->SaveAs(Form("../plots/zdc_e_northSouth_%d.pdf",run));
0274
0275
0276
0277
0278 TCanvas* c15 = new TCanvas("c15", "c15", 400, 400);
0279 h_etaphi_clus ->Draw("COLZ");
0280 h_etaphi_clus ->SetXTitle("#it{#eta}_{i} EMCal Clusters");
0281 h_etaphi_clus ->SetYTitle("#it{#phi}_{i} EMCal Clusters");
0282 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0283 myText(0.22, 0.85, 1, Form("run %d", run));
0284 gPad->SetRightMargin(0.15);
0285
0286 c15->SaveAs(Form("../plots/etaphi_clus_%d.pdf",run));
0287
0288 totalEvents += hvtx_z_raw->GetEntries();
0289 int events = hvtx_z_raw->GetEntries();
0290
0291 TCanvas* c16 = new TCanvas("c16", "c16", 400, 400);
0292 hvtx_z_raw ->Draw("COLZ");
0293 hvtx_z_raw ->SetXTitle("MBD Vertex #it{z} [cm]");
0294 hvtx_z_raw ->SetYTitle("Events");
0295 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0296 myText(0.22, 0.85, 1, Form("run %d", run));
0297 myText(0.22, 0.80, 1, Form("events %d", events));
0298
0299 c16->SaveAs(Form("../plots/vtx_z_%d.pdf",run));
0300
0301
0302 TCanvas* c17 = new TCanvas("c17", "c17", 400, 400);
0303 hzdcNorthcalib->Draw();
0304 hzdcNorthcalib->SetLineColor(kBlue);
0305 hzdcNorthcalib->GetXaxis()->SetRangeUser(10,300);
0306 hzdcNorthcalib->SetXTitle("#Sigma #it{E}^{ZDC Side}");
0307 hzdcNorthcalib->SetYTitle("Events");
0308
0309 TGraph* gr_1n = new TGraph();
0310 gr_1n->SetPoint(0,100,0);
0311 gr_1n->SetPoint(1,100,1e7);
0312 gr_1n->SetLineStyle(7);
0313 gr_1n->Draw("l");
0314
0315 hzdcSouthcalib->Draw("same");
0316 hzdcSouthcalib->SetLineColor(kRed);
0317 gPad->SetLogy();
0318
0319 myText(0.7, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0320 myText(0.7, 0.85, 1, Form("run %d", run));
0321 myText(0.75, 0.80, kBlue,"North");
0322 myText(0.65, 0.80, kRed,"South");
0323
0324 c17->SaveAs(Form("../plots/zdc_e_northSouth_1n_%d.pdf",run));
0325
0326
0327 TCanvas* c18 = new TCanvas("c18", "c18", 400, 400);
0328 h_cemc_etaphi_time->Draw("COLZ");
0329 h_cemc_etaphi_time->SetXTitle("#it{#eta}_{i} EMCal");
0330 h_cemc_etaphi_time->SetYTitle("#it{#phi}_{i} EMCal");
0331 h_cemc_etaphi_time->GetXaxis()->SetNdivisions(505);
0332
0333 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0334 myText(0.22, 0.85, 1, Form("run %d", run));
0335 myText(0.22, 0.80, 1, "mean hit peak time EMCal");
0336 gPad->SetRightMargin(0.15);
0337
0338 c18->SaveAs(Form("../plots/cemc_etaphi_time%d.pdf",run));
0339
0340 TCanvas* c19 = new TCanvas("c19", "c19", 400, 400);
0341 h_ohcal_etaphi_time->Draw("COLZ");
0342 h_ohcal_etaphi_time->SetXTitle("#it{#eta}_{i} oHcal");
0343 h_ohcal_etaphi_time->SetYTitle("#it{#phi}_{i} oHcal");
0344 h_ohcal_etaphi_time->GetXaxis()->SetNdivisions(505);
0345
0346 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0347 myText(0.22, 0.85, 1, Form("run %d", run));
0348 myText(0.22, 0.80, 1, "mean hit peak time Outter HCal");
0349 gPad->SetRightMargin(0.15);
0350
0351 c19->SaveAs(Form("../plots/ohcal_etaphi_time%d.pdf",run));
0352
0353
0354 TCanvas* c20 = new TCanvas("c20", "c20", 400, 400);
0355 h_ihcal_etaphi_time->Draw("COLZ");
0356 h_ihcal_etaphi_time->SetXTitle("#it{#eta}_{i} iHcal");
0357 h_ihcal_etaphi_time->SetYTitle("#it{#phi}_{i} iHcal");
0358 h_ihcal_etaphi_time->GetXaxis()->SetNdivisions(505);
0359
0360 myText(0.22, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0361 myText(0.22, 0.85, 1, Form("run %d", run));
0362 myText(0.22, 0.80, 1, "mean hit peak time Inner HCal");
0363 gPad->SetRightMargin(0.15);
0364
0365 c20->SaveAs(Form("../plots/ihcal_etaphi_time%d.pdf",run));
0366
0367 TCanvas* c21 = new TCanvas("c21", "c21", 400, 400);
0368 h_ihcal_e_chi2->Draw("COLZ");
0369 h_ihcal_e_chi2->SetXTitle("#i{E} [GeV] iHcal");
0370 h_ihcal_e_chi2->SetYTitle("chi2 iHcal");
0371 h_ihcal_e_chi2->GetXaxis()->SetNdivisions(505);
0372 h_ihcal_e_chi2->GetXaxis()->SetRangeUser(-1,2);
0373 gPad->SetLogy();
0374 gPad->SetLogz();
0375
0376 myText(0.52, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0377 myText(0.52, 0.85, 1, Form("run %d", run));
0378 myText(0.52, 0.80, 1, "Inner HCal");
0379 gPad->SetRightMargin(0.15);
0380
0381 c21->SaveAs(Form("../plots/ihcal_e_chi2%d.pdf",run));
0382
0383
0384 TCanvas* c22 = new TCanvas("c22", "c22", 400, 400);
0385 h_ohcal_e_chi2->Draw("COLZ");
0386 h_ohcal_e_chi2->SetXTitle("#i{E} [GeV] oHcal");
0387 h_ohcal_e_chi2->SetYTitle("chi2 oHcal");
0388 h_ohcal_e_chi2->GetXaxis()->SetNdivisions(505);
0389 h_ohcal_e_chi2->GetXaxis()->SetRangeUser(-1,7);
0390 gPad->SetLogy();
0391 gPad->SetLogz();
0392
0393 myText(0.52, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0394 myText(0.52, 0.85, 1, Form("run %d", run));
0395 myText(0.52, 0.80, 1, "Outer HCal");
0396 gPad->SetRightMargin(0.15);
0397
0398 c22->SaveAs(Form("../plots/ohcal_e_chi2%d.pdf",run));
0399
0400
0401 TCanvas* c23 = new TCanvas("c23", "c23", 400, 400);
0402 h_cemc_e_chi2->Draw("COLZ");
0403 h_cemc_e_chi2->SetXTitle("#i{E} [GeV] EMCal ");
0404 h_cemc_e_chi2->SetYTitle("chi2 EMCal");
0405 h_cemc_e_chi2->GetXaxis()->SetNdivisions(505);
0406 h_cemc_e_chi2->GetXaxis()->SetRangeUser(-1,15);
0407 gPad->SetLogy();
0408 gPad->SetLogz();
0409
0410 myText(0.52, 0.9, 1, "#it{#bf{sPHENIX}} Internal");
0411 myText(0.52, 0.85, 1, Form("run %d", run));
0412 myText(0.52, 0.80, 1, "EMCal");
0413 gPad->SetRightMargin(0.15);
0414
0415 c23->SaveAs(Form("../plots/cemc_e_chi2%d.pdf",run));
0416
0417 }
0418
0419 for (int ir=0; ir<Nruns; ir++){
0420 cout << runList[ir] << ",";
0421 }
0422 cout << endl;
0423 cout << "total events=" << totalEvents <<endl;
0424 cout << endl;
0425
0426 }
0427
0428
0429
0430
0431
0432
0433 TH1F* proj(TH2F* h2){
0434
0435 int x = h2->GetXaxis()->GetNbins();
0436 int y = h2->GetYaxis()->GetNbins();
0437 TH1F* h = (TH1F*) h2->ProjectionX("temp");
0438 h->Reset();
0439 for (int ix=1; ix<x+1; ix++){
0440 float sum = 0;
0441 float cc = 0;
0442 for(int iy=1; iy<y+1; iy++){
0443 float bc = h2->GetBinContent(ix,iy);
0444 if (bc==0) cc+=1;
0445 sum += bc;
0446 }
0447 if (cc==y) continue;
0448 float sum_cor = sum*y/(y-cc);
0449 h->SetBinContent(ix,sum_cor);
0450 h->SetBinError(ix,sqrt(sum_cor));
0451 }
0452
0453
0454 return h;
0455 }
0456