49 e_.setup(&(*geoHandle), &(*chStatus), statusThreshold_);
56 nBads_barl_SM_[
ieta][iphi_r][
sign]++;
64 if (have_initial_miscalib_) {
66 namespace fs = std::filesystem;
69 edm::LogError(
"PhiSym") <<
"File not found: " << initialmiscalibfile_ << endl;
75 for (vector<DetId>::iterator it = barrelCells.begin(); it != barrelCells.end(); ++it) {
79 for (vector<DetId>::iterator it = endcapCells.begin(); it != endcapCells.end(); ++it) {
88 namespace fs = std::filesystem;
91 edm::LogError(
"PhiSym") <<
"File not found: " << oldcalibfile_ << endl;
100 for (vector<DetId>::iterator it = barrelCells.begin(); it != barrelCells.end(); ++it)
103 for (vector<DetId>::iterator it = endcapCells.begin(); it != endcapCells.end(); ++it)
118 etsum_barl_SM_[
ieta][iphi_r][
sign] = 0;
119 nBads_barl_SM_[
ieta][iphi_r][
sign] = 0;
120 epsilon_M_barl_SM_[
ieta][iphi_r][
sign] = 0;
123 etsumMean_barl_SM_[
ieta] = 0.;
129 etsum_endc_[ix][iy][
sign] = 0.;
130 nhits_endc_[ix][iy][
sign] = 0;
131 esum_endc_[ix][iy][
sign] = 0.;
142 edm::LogError(
"PhiSym") <<
"Must process at least one event-Exiting" << endl;
172 std::ofstream etsumMean_barl_out(
"etsumMean_barl.dat",
ios::out);
174 etsumMean_barl_out <<
ieta <<
" " << etsumMean_barl_[
ieta] << endl;
176 etsumMean_barl_out.close();
178 std::ofstream etsumMean_endc_out(
"etsumMean_endc.dat",
ios::out);
180 etsumMean_endc_out << e_.cellPos_[
ring][50].eta() <<
" " << etsumMean_endc_[
ring] << endl;
182 etsumMean_endc_out.close();
195 float epsilon_T_SM = etsum_barl_SM_[
ieta][iphi_r][
sign] / etsumMean_barl_SM_[
ieta] - 1.;
197 epsilon_M_barl_SM_[
ieta][iphi_r][
sign] = epsilon_T_SM / k_barl_[
ieta];
201 float epsilon_T = (etsum / etsumMean_barl_[
ieta]) - 1.;
217 int ring = e_.endcapRing_[ix][iy];
218 if (
ring != -1 && e_.goodCell_endc[ix][iy][
sign]) {
219 float etsum = etsum_endc_[ix][iy][
sign];
220 float epsilon_T = (etsum / etsumMean_endc_[
ring]) - 1.;
221 rawconst_endc[ix][iy][
sign] = epsilon_T + 1.;
222 epsilon_M_endc[ix][iy][
sign] = epsilon_T / k_endc_[
ring];
224 epsilon_M_endc[ix][iy][0] = 0.;
225 epsilon_M_endc[ix][iy][1] = 0.;
226 rawconst_endc[ix][iy][0] = 1.;
227 rawconst_endc[ix][iy][1] = 1.;
236 for (
int iphi_r = 0; iphi_r <
int(
kBarlWedges / nscx); ++iphi_r) {
238 scfile <<
ieta <<
" " << iphi_r <<
" " <<
sign <<
" " << 1 / (1 + epsilon_M_barl_SM_[
ieta][iphi_r][
sign])
244 std::string newcalibfile(
"EcalIntercalibConstants_new.xml");
246 TFile ehistof(
"ehistos.root",
"recreate");
248 TH1D ebhisto(
"eb",
"eb", 100, 0., 2.);
250 std::vector<DetId>::const_iterator barrelIt = barrelCells.begin();
251 for (; barrelIt != barrelCells.end(); barrelIt++) {
259 newCalibs_[eb] = oldCalibs_[eb] / (1 + epsilon_M_barl[
ieta][
iphi][
sign]);
262 ebhisto.Fill(newCalibs_[eb]);
265 miscal_resid_barl_histos[
ieta]->Fill(miscalib_[eb] * newCalibs_[eb]);
266 correl_barl_histos[
ieta]->Fill(miscalib_[eb], newCalibs_[eb]);
271 TH1D eehisto(
"ee",
"ee", 100, 0., 2.);
272 std::vector<DetId>::const_iterator endcapIt = endcapCells.begin();
274 for (; endcapIt != endcapCells.end(); endcapIt++) {
276 int ix = ee.
ix() - 1;
277 int iy = ee.
iy() - 1;
280 newCalibs_[ee] = oldCalibs_[ee] / (1 + epsilon_M_endc[ix][iy][
sign]);
282 if (e_.goodCell_endc[ix][iy][
sign]) {
283 eehisto.Fill(newCalibs_[ee]);
284 miscal_resid_endc_histos[e_.endcapRing_[ix][iy]]->Fill(miscalib_[ee] * newCalibs_[ee]);
287 correl_endc_histos[e_.endcapRing_[ix][iy]]->Fill(miscalib_[ee], newCalibs_[ee]);
292 header.method_ =
"phi symmetry";
294 header.datasource_ =
"testdata";
297 header.date_ =
"Mar 24 1973";
305 fillConstantsHistos();
311 TFile
f(
"CalibHistos.root",
"recreate");
313 TH2F barreletamap(
"barreletamap",
"barreletamap", 171, -85, 86, 100, 0., 2.);
314 TH2F barreletamapraw(
"barreletamapraw",
"barreletamapraw", 171, -85, 86, 100, 0., 2.);
316 TH2F barrelmapold(
"barrelmapold",
"barrelmapold", 360, 1., 361., 171, -85., 86.);
317 TH2F barrelmapnew(
"barrelmapnew",
"barrelmapnew", 360, 1., 361., 171, -85., 86.);
318 TH2F barrelmapratio(
"barrelmapratio",
"barrelmapratio", 360, 1., 361., 171, -85., 86.);
320 TH1F rawconst_endc_h(
"rawconst_endc",
"rawconst_endc", 100, 0., 2.);
321 TH1F const_endc_h(
"const_endc",
"const_endc", 100, 0., 2.);
323 TH1F oldconst_endc_h(
"oldconst_endc",
"oldconst_endc;oldCalib;", 200, 0, 2);
324 TH2F newvsraw_endc_h(
"newvsraw_endc",
"newvsraw_endc;rawConst;newCalib", 200, 0, 2, 200, 0, 2);
326 TH2F endcapmapold_plus(
"endcapmapold_plus",
"endcapmapold_plus", 100, 1., 101., 100, 1., 101.);
327 TH2F endcapmapnew_plus(
"endcapmapnew_plus",
"endcapmapnew_plus", 100, 1., 101., 100, 1., 101.);
328 TH2F endcapmapratio_plus(
"endcapmapratio_plus",
"endcapmapratio_plus", 100, 1., 101., 100, 1., 101.);
330 TH2F endcapmapold_minus(
"endcapmapold_minus",
"endcapmapold_minus", 100, 1., 101., 100, 1., 101.);
331 TH2F endcapmapnew_minus(
"endcapmapnew_minus",
"endcapmapnew_minus", 100, 1., 101., 100, 1., 101.);
332 TH2F endcapmapratio_minus(
"endcapmapratio_minus",
"endcapmapratio_minus", 100, 1., 101., 100, 1., 101.);
335 int thesign =
sign == 1 ? 1 : -1;
343 barreletamap.Fill(
ieta * thesign + thesign, newCalibs_[eb]);
344 barreletamapraw.Fill(
ieta * thesign + thesign, rawconst_barl[
ieta][
iphi][
sign]);
346 barrelmapold.Fill(
iphi + 1,
ieta * thesign + thesign, oldCalibs_[eb]);
347 barrelmapnew.Fill(
iphi + 1,
ieta * thesign + thesign, newCalibs_[eb]);
348 barrelmapratio.Fill(
iphi + 1,
ieta * thesign + thesign, newCalibs_[eb] / oldCalibs_[eb]);
355 if (e_.goodCell_endc[ix][iy][
sign]) {
358 EEDetId ee(ix + 1, iy + 1, thesign);
360 rawconst_endc_h.Fill(rawconst_endc[ix][iy][
sign]);
361 const_endc_h.Fill(newCalibs_[ee]);
362 oldconst_endc_h.Fill(oldCalibs_[ee]);
363 newvsraw_endc_h.Fill(rawconst_endc[ix][iy][
sign], newCalibs_[ee]);
366 endcapmapold_plus.Fill(ix + 1, iy + 1, oldCalibs_[ee]);
367 endcapmapnew_plus.Fill(ix + 1, iy + 1, newCalibs_[ee]);
368 endcapmapratio_plus.Fill(ix + 1, iy + 1, newCalibs_[ee] / oldCalibs_[ee]);
370 endcapmapold_minus.Fill(ix + 1, iy + 1, oldCalibs_[ee]);
371 endcapmapnew_minus.Fill(ix + 1, iy + 1, newCalibs_[ee]);
372 endcapmapratio_minus.Fill(ix + 1, iy + 1, newCalibs_[ee] / oldCalibs_[ee]);
381 barreletamap.Write();
382 barreletamapraw.Write();
383 rawconst_endc_h.Write();
384 const_endc_h.Write();
385 oldconst_endc_h.Write();
386 newvsraw_endc_h.Write();
387 barrelmapold.Write();
388 barrelmapnew.Write();
389 barrelmapratio.Write();
390 endcapmapold_plus.Write();
391 endcapmapnew_plus.Write();
392 endcapmapratio_plus.Write();
393 endcapmapold_minus.Write();
394 endcapmapnew_minus.Write();
395 endcapmapratio_minus.Write();
403 TFile
f(
"PhiSymmetryCalibration.root",
"recreate");
405 std::vector<TH1F*> etsum_barl_histos(
kBarlRings);
406 std::vector<TH1F*> esum_barl_histos(
kBarlRings);
412 float low_e = 999999.;
418 if (etsum <
low && etsum != 0.)
424 if (esum < low_e && esum != 0.)
432 t <<
"etsum_barl_" <<
ieta + 1;
433 etsum_barl_histos[
ieta] =
new TH1F(
t.str().c_str(),
"", 50,
low - .2 *
low,
high + .1 *
high);
436 t <<
"esum_barl_" <<
ieta + 1;
437 esum_barl_histos[
ieta] =
new TH1F(
t.str().c_str(),
"", 50, low_e - .2 * low_e, high_e + .1 * high_e);
441 etsumMean_barl_[
ieta] = 0.;
442 esumMean_barl_[
ieta] = 0.;
449 if (!(
iphi % nscx)) {
451 etsum_barl_SM_[
ieta][iphi_r][
sign] =
452 etsum_barl_SM_[
ieta][iphi_r][
sign] * nscx / (nscx - nBads_barl_SM_[
ieta][iphi_r][
sign]);
460 etsum_barl_histos[
ieta]->Fill(etsum);
461 esum_barl_histos[
ieta]->Fill(esum);
462 etsumMean_barl_[
ieta] += etsum;
464 esumMean_barl_[
ieta] += esum;
469 etsum_barl_histos[
ieta]->Write();
470 esum_barl_histos[
ieta]->Write();
471 etsumMean_barl_[
ieta] /= (720. - e_.nBads_barl[
ieta]);
472 esumMean_barl_[
ieta] /= (720. - e_.nBads_barl[
ieta]);
474 delete etsum_barl_histos[
ieta];
475 delete esum_barl_histos[
ieta];
488 float low_uncorr = FLT_MAX;
490 float high_uncorr = 0;
491 float low_e = FLT_MAX;
497 if (e_.endcapRing_[ix][iy] ==
ring) {
499 float etsum = etsum_endc_[ix][iy][
sign];
500 if (etsum <
low && etsum != 0.)
505 float etsum_uncorr = etsum_endc_uncorr[ix][iy][
sign];
506 if (etsum_uncorr < low_uncorr && etsum_uncorr != 0.)
507 low_uncorr = etsum_uncorr;
508 if (etsum_uncorr > high_uncorr)
509 high_uncorr = etsum_uncorr;
511 float esum = esum_endc_[ix][iy][
sign];
512 if (esum < low_e && esum != 0.)
517 float area = e_.cellArea_[ix][iy];
528 t <<
"etsum_endc_" <<
ring + 1;
529 etsum_endc_histos[
ring] =
new TH1F(
t.str().c_str(),
"", 50,
low - .2 *
low,
high + .1 *
high);
532 t <<
"etsum_endc_uncorr_" <<
ring + 1;
533 etsum_endc_uncorr_histos[
ring] =
534 new TH1F(
t.str().c_str(),
"", 50, low_uncorr - .2 * low_uncorr, high_uncorr + .1 * high_uncorr);
537 t <<
"esum_endc_" <<
ring + 1;
538 esum_endc_histos[
ring] =
new TH1F(
t.str().c_str(),
"", 50, low_e - .2 * low_e, high_e + .1 * high_e);
541 t <<
"etsumvsarea_endc_" <<
ring + 1;
542 etsumvsarea_endc_histos[
ring] =
543 new TH2F(
t.str().c_str(),
";A_{#eta#phi};#Sigma E_{T}", 50, low_a, high_a, 50,
low,
high);
546 t <<
"esumvsarea_endc_" <<
ring + 1;
547 esumvsarea_endc_histos[
ring] =
548 new TH2F(
t.str().c_str(),
";A_{#eta#phi};#Sigma E", 50, low_a, high_a, 50, low_e, high_e);
552 etsumMean_endc_[
ring] = 0.;
553 esumMean_endc_[
ring] = 0.;
556 if (e_.endcapRing_[ix][iy] ==
ring) {
558 if (e_.goodCell_endc[ix][iy][
sign]) {
559 float etsum = etsum_endc_[ix][iy][
sign];
560 float esum = esum_endc_[ix][iy][
sign];
561 float etsum_uncorr = etsum_endc_uncorr[ix][iy][
sign];
562 etsum_endc_histos[
ring]->Fill(etsum);
563 etsum_endc_uncorr_histos[
ring]->Fill(etsum_uncorr);
564 esum_endc_histos[
ring]->Fill(esum);
566 float area = e_.cellArea_[ix][iy];
567 etsumvsarea_endc_histos[
ring]->Fill(
area, etsum);
568 esumvsarea_endc_histos[
ring]->Fill(
area, esum);
570 etsumMean_endc_[
ring] += etsum;
571 esumMean_endc_[
ring] += esum;
578 etsum_endc_histos[
ring]->Write();
579 etsum_endc_uncorr_histos[
ring]->Write();
580 esum_endc_histos[
ring]->Write();
583 etsumvsarea_endc_histos[
ring]->Write();
584 esumvsarea_endc_histos[
ring]->Write();
586 delete etsum_endc_histos[
ring];
587 delete etsum_endc_uncorr_histos[
ring];
588 delete esum_endc_histos[
ring];
589 delete etsumvsarea_endc_histos[
ring];
590 delete esumvsarea_endc_histos[
ring];
594 TH2F barreletamap(
"barreletamap",
"barreletamap", 171, -85, 86, 100, 0, 2);
595 TH2F barrelmap(
"barrelmap",
"barrelmap - #frac{#Sigma E_{T}}{<#Sigma E_{T}>_{0}}", 360, 1, 360, 171, -85, 86);
596 TH2F barrelmap_e(
"barrelmape",
"barrelmape - #frac{#Sigma E}{<#Sigma E>_{0}}", 360, 1, 360, 171, -85, 86);
597 TH2F barrelmap_divided(
"barrelmapdiv",
"barrelmapdivided - #frac{#Sigma E_{T}}{hits}", 360, 1, 360, 171, -85, 86);
598 TH2F barrelmap_e_divided(
"barrelmapediv",
"barrelmapedivided - #frac{#Sigma E}{hits}", 360, 1, 360, 171, -85, 86);
599 TH2F endcmap_plus_corr(
600 "endcapmapplus_corrected",
"endcapmapplus - #frac{#Sigma E_{T}}{<#Sigma E_{T}>_{38}}", 100, 1, 101, 100, 1, 101);
601 TH2F endcmap_minus_corr(
602 "endcapmapminus_corrected",
"endcapmapminus - #frac{#Sigma E_{T}}{<#Sigma E_{T}>_{38}}", 100, 1, 101, 100, 1, 101);
603 TH2F endcmap_plus_uncorr(
"endcapmapplus_uncorrected",
604 "endcapmapplus_uncor - #frac{#Sigma E_{T}}{<#Sigma E_{T}>_{38}}",
611 TH2F endcmap_minus_uncorr(
"endcapmapminus_uncorrected",
612 "endcapmapminus_uncor - #frac{#Sigma E_{T}}{<#Sigma E_{T}>_{38}}",
619 TH2F endcmap_e_plus(
"endcapmapeplus",
"endcapmapeplus - #frac{#Sigma E}{<#Sigma E>_{38}}", 100, 1, 101, 100, 1, 101);
620 TH2F endcmap_e_minus(
621 "endcapmapeminus",
"endcapmapeminus - #frac{#Sigma E}{<#Sigma E>_{38}}", 100, 1, 101, 100, 1, 101);
624 int thesign =
sign == 1 ? 1 : -1;
629 barrelmap.Fill(
iphi + 1,
ieta * thesign + thesign, etsum_barl_[
ieta][
iphi][
sign] / etsumMean_barl_[0]);
630 barrelmap_e.Fill(
iphi + 1,
ieta * thesign + thesign, esum_barl_[
ieta][
iphi][
sign] / esumMean_barl_[0]);
633 barrelmap_divided.Fill(
635 barrelmap_e_divided.Fill(
639 barreletamap.Fill(
ieta * thesign + thesign, etsum_barl_[
ieta][
iphi][
sign] / etsumMean_barl_[0]);
647 endcmap_plus_corr.Fill(ix + 1, iy + 1, etsum_endc_[ix][iy][
sign] / etsumMean_endc_[38]);
648 endcmap_plus_uncorr.Fill(ix + 1, iy + 1, etsum_endc_uncorr[ix][iy][
sign] / etsumMean_endc_[38]);
649 endcmap_e_plus.Fill(ix + 1, iy + 1, esum_endc_[ix][iy][
sign] / esumMean_endc_[38]);
651 endcmap_minus_corr.Fill(ix + 1, iy + 1, etsum_endc_[ix][iy][
sign] / etsumMean_endc_[38]);
652 endcmap_minus_uncorr.Fill(ix + 1, iy + 1, etsum_endc_uncorr[ix][iy][
sign] / etsumMean_endc_[38]);
653 endcmap_e_minus.Fill(ix + 1, iy + 1, esum_endc_[ix][iy][
sign] / esumMean_endc_[38]);
660 barreletamap.Write();
661 barrelmap_divided.Write();
663 barrelmap_e_divided.Write();
665 endcmap_plus_corr.Write();
666 endcmap_minus_corr.Write();
667 endcmap_plus_uncorr.Write();
668 endcmap_minus_uncorr.Write();
669 endcmap_e_plus.Write();
670 endcmap_e_minus.Write();
686 t <<
"etavsphi_endc_" <<
ring;
687 etavsphi_endc[
ring] =
new TH1F(
t.str().c_str(),
t.str().c_str(), e_.nRing_[
ring], 0, e_.nRing_[
ring]);
690 t <<
"areavsphi_endc_" <<
ring;
691 areavsphi_endc[
ring] =
new TH1F(
t.str().c_str(),
t.str().c_str(), e_.nRing_[
ring], 0, e_.nRing_[
ring]);
694 t <<
"etsumvsphi_endcp_corr_" <<
ring;
695 etsumvsphi_endcp_corr[
ring] =
new TH1F(
t.str().c_str(),
t.str().c_str(), e_.nRing_[
ring], 0, e_.nRing_[
ring]);
698 t <<
"etsumvsphi_endcm_corr_" <<
ring;
699 etsumvsphi_endcm_corr[
ring] =
new TH1F(
t.str().c_str(),
t.str().c_str(), e_.nRing_[
ring], 0, e_.nRing_[
ring]);
702 t <<
"etsumvsphi_endcp_uncorr_" <<
ring;
703 etsumvsphi_endcp_uncorr[
ring] =
new TH1F(
t.str().c_str(),
t.str().c_str(), e_.nRing_[
ring], 0, e_.nRing_[
ring]);
706 t <<
"etsumvsphi_endcm_uncorr_" <<
ring;
707 etsumvsphi_endcm_uncorr[
ring] =
new TH1F(
t.str().c_str(),
t.str().c_str(), e_.nRing_[
ring], 0, e_.nRing_[
ring]);
710 t <<
"esumvsphi_endcp_" <<
ring;
711 esumvsphi_endcp[
ring] =
new TH1F(
t.str().c_str(),
t.str().c_str(), e_.nRing_[
ring], 0, e_.nRing_[
ring]);
714 t <<
"esumvsphi_endcm_" <<
ring;
715 esumvsphi_endcm[
ring] =
new TH1F(
t.str().c_str(),
t.str().c_str(), e_.nRing_[
ring], 0, e_.nRing_[
ring]);
718 t <<
"deltaeta_" <<
ring;
719 deltaeta_histos[
ring] =
new TH1F(
t.str().c_str(),
"", 50, -.1, .1);
721 t <<
"deltaphi_" <<
ring;
722 deltaphi_histos[
ring] =
new TH1F(
t.str().c_str(),
"", 50, -.1, .1);
728 int ring = e_.endcapRing_[ix][iy];
731 for (
int ip = 0; ip < e_.nRing_[
ring]; ip++) {
732 if (e_.cellPhi_[ix][iy] == e_.phi_endc_[ip][
ring])
736 if (iphi_endc != -1) {
738 if (e_.goodCell_endc[ix][iy][
sign]) {
740 etsumvsphi_endcp_corr[
ring]->Fill(iphi_endc, etsum_endc_[ix][iy][
sign]);
741 etsumvsphi_endcp_uncorr[
ring]->Fill(iphi_endc, etsum_endc_uncorr[ix][iy][
sign]);
742 esumvsphi_endcp[
ring]->Fill(iphi_endc, esum_endc_[ix][iy][
sign]);
744 etsumvsphi_endcm_corr[
ring]->Fill(iphi_endc, etsum_endc_[ix][iy][
sign]);
745 etsumvsphi_endcm_uncorr[
ring]->Fill(iphi_endc, etsum_endc_uncorr[ix][iy][
sign]);
746 esumvsphi_endcm[
ring]->Fill(iphi_endc, esum_endc_[ix][iy][
sign]);
750 etavsphi_endc[
ring]->Fill(iphi_endc, e_.cellPos_[ix][iy].eta());
751 areavsphi_endc[
ring]->Fill(iphi_endc, e_.cellArea_[ix][iy]);
759 etavsphi_endc[
ring]->Write();
760 areavsphi_endc[
ring]->Write();
761 etsumvsphi_endcp_corr[
ring]->Write();
762 etsumvsphi_endcm_corr[
ring]->Write();
763 etsumvsphi_endcp_uncorr[
ring]->Write();
764 etsumvsphi_endcm_uncorr[
ring]->Write();
765 esumvsphi_endcp[
ring]->Write();
766 esumvsphi_endcm[
ring]->Write();
767 deltaeta_histos[
ring]->Write();
768 deltaphi_histos[
ring]->Write();
770 delete etsumvsphi_endcp_corr[
ring];
771 delete etsumvsphi_endcm_corr[
ring];
772 delete etsumvsphi_endcp_uncorr[
ring];
773 delete etsumvsphi_endcm_uncorr[
ring];
774 delete etavsphi_endc[
ring];
775 delete areavsphi_endc[
ring];
776 delete esumvsphi_endcp[
ring];
777 delete esumvsphi_endcm[
ring];
778 delete deltaeta_histos[
ring];
779 delete deltaphi_histos[
ring];
791 std::ifstream etsum_barl_in(
"etsum_barl.dat",
ios::in);
798 etsum_barl_SM_[
ieta][iphi_r][
sign] += etsum;
805 std::ifstream etsum_endc_in(
"etsum_endc.dat",
ios::in);
807 etsum_endc_[ix][iy][
sign] += etsum;
811 std::ifstream k_barl_in(
"k_barl.dat",
ios::in);
816 std::ifstream k_endc_in(
"k_endc.dat",
ios::in);
828 t1 <<
"mr_barl_" <<
ieta + 1;
829 miscal_resid_barl_histos[
ieta] =
new TH1F(
t1.str().c_str(),
"", 100, 0., 2.);
831 t2 <<
"co_barl_" <<
ieta + 1;
832 correl_barl_histos[
ieta] =
new TH2F(
t2.str().c_str(),
"", 50, .5, 1.5, 50, .5, 1.5);
840 t1 <<
"mr_endc_" <<
ring + 1;
841 miscal_resid_endc_histos[
ring] =
new TH1F(
t1.str().c_str(),
"", 100, 0., 2.);
843 t2 <<
"co_endc_" <<
ring + 1;
844 correl_endc_histos[
ring] =
new TH2F(
t2.str().c_str(),
"", 50, .5, 1.5, 50, .5, 1.5);
850 TFile
f(
"PhiSymmetryCalibration_miscal_resid.root",
"recreate");
852 miscal_resid_barl_histos[
ieta]->Write();
853 correl_barl_histos[
ieta]->Write();
855 delete miscal_resid_barl_histos[
ieta];
856 delete correl_barl_histos[
ieta];
860 miscal_resid_endc_histos[
ring]->Write();
861 correl_endc_histos[
ring]->Write();
863 delete miscal_resid_endc_histos[
ring];
864 delete correl_endc_histos[
ring];