26 #include <TPaveText.h> 37 gROOT->SetStyle(
"Plain");
38 gStyle->SetOptStat(0);
39 gStyle->SetOptTitle(1);
46 sprintf(refname,
"%s",
argv[2]);
48 cout <<
fname <<
" " << refname << std::endl;
57 for (
unsigned int i = promt.size() - 11;
i < promt.size() - 5;
i++)
59 string refrunnumber =
"";
61 for (
unsigned int i = promt.size() - 11;
i < promt.size() - 5;
i++)
62 refrunnumber += refname[
i];
64 TFile *hfile =
new TFile(
fname,
"READ");
65 TFile *hreffile =
new TFile(refname,
"READ");
68 double MIN_M[7][5] = {{0., 0., 0., 0., 0.},
71 {0, 1.0, 1.0, 0.2, 0.1},
72 {0, 0.10, 0.10, 0.18, 0.30},
73 {0, 0.8, 0.8, 0.8, 0.1},
74 {0, -0.5, -0.5, -0.5, -0.5}};
75 double MAX_M[7][5] = {{0., 0., 0., 0., 0.},
77 {0, 900, 900, 9000, 3000},
78 {0, 3.9, 3.9, 4.4, 2.0},
79 {0, 0.95, 0.98, 0.96, 1.04},
80 {0, 8.0, 8.0, 8.0, 2.8},
81 {0, 6.5, 6.5, 6.5, 3.5}};
84 double MIN_C[7][5] = {{0., 0., 0., 0., 0.},
86 {0, 120., 120., 120., 60.},
87 {0, 1.0, 1.0, 0.50, 0.2},
88 {0, 0.6, 0.64, 0.25, 0.25},
89 {0, 1.0, 1.0, 1.0, 1.0},
90 {0, 0.5, 0.5, 0.5, 0.5}};
91 double MAX_C[7][5] = {{0., 0., 0., 0., 0.},
93 {0, 1E20, 1E20, 1E20, 1E20},
94 {0, 2.3, 2.3, 3.0, 2.3},
95 {0, 1., 1., 1., 1.00},
96 {0, 5.5, 5.5, 3.5, 5.2},
97 {0, 8.5, 8.5, 8.5, 9.5}};
98 double porog[5] = {0., 2., 2., 5., 1.};
100 double Pedest[2][5] = {{0., 0.2, 0.9, 0.1, 0.2}, {0., 0.2, 0.2, 0.1, 0.16}};
106 TCanvas *cHB =
new TCanvas(
"cHB",
"cHB", 1000, 1000);
108 TCanvas *cHE =
new TCanvas(
"cHE",
"cHE", 1500, 1500);
110 TCanvas *cONE =
new TCanvas(
"cONE",
"cONE", 1500, 500);
111 TCanvas *cPED =
new TCanvas(
"cPED",
"cPED", 1000, 500);
113 TCanvas *cHF =
new TCanvas(
"cHF",
"cHF", 1000, 1000);
115 char *
str = (
char *)alloca(10000);
133 int k_min[5] = {0, 1, 1, 4, 1};
137 int k_max[5] = {0, 4, 7, 4, 4};
139 TH2F *Map_Ampl[33][5][ALLDEPTH];
140 TH2F *Map_SUB[5][ALLDEPTH];
141 TH1F *HistAmplDepth[22][5][ALLDEPTH];
142 TH1F *HistAmpl[22][5];
144 TH1F *HistPed[3][5][4];
146 TH1F *hist_GoodTSshape[5];
147 TH1F *hist_GoodTSshape0[5];
148 TH1F *hist_BadTSshape[5];
149 TH1F *hist_BadTSshape0[5];
150 TH1F *hist_ADC_All[5];
151 TH1F *hist_ADC_DS[5][ALLDEPTH];
152 TH1F *hist_SumADC[5][ALLDEPTH];
153 TH1F *hist_SumADC0[5][ALLDEPTH];
154 TH1F *hist_SumADC1[5][ALLDEPTH];
156 Map_SUB[1][1] = (TH2F *)hfile->Get(
"h_mapDepth1_HB");
157 Map_SUB[1][2] = (TH2F *)hfile->Get(
"h_mapDepth2_HB");
158 Map_SUB[2][1] = (TH2F *)hfile->Get(
"h_mapDepth1_HE");
159 Map_SUB[2][2] = (TH2F *)hfile->Get(
"h_mapDepth2_HE");
160 Map_SUB[2][3] = (TH2F *)hfile->Get(
"h_mapDepth3_HE");
161 Map_SUB[3][4] = (TH2F *)hfile->Get(
"h_mapDepth4_HO");
162 Map_SUB[4][1] = (TH2F *)hfile->Get(
"h_mapDepth1_HF");
163 Map_SUB[4][2] = (TH2F *)hfile->Get(
"h_mapDepth2_HF");
165 Map_SUB[2][4] = (TH2F *)hfile->Get(
"h_mapDepth4_HE");
166 Map_SUB[2][5] = (TH2F *)hfile->Get(
"h_mapDepth5_HE");
167 Map_SUB[2][6] = (TH2F *)hfile->Get(
"h_mapDepth6_HE");
168 Map_SUB[2][7] = (TH2F *)hfile->Get(
"h_mapDepth7_HE");
169 Map_SUB[4][3] = (TH2F *)hfile->Get(
"h_mapDepth3_HF");
170 Map_SUB[4][4] = (TH2F *)hfile->Get(
"h_mapDepth4_HF");
172 Map_SUB[1][3] = (TH2F *)hfile->Get(
"h_mapDepth3_HB");
173 Map_SUB[1][4] = (TH2F *)hfile->Get(
"h_mapDepth4_HB");
178 for (
int sub = 1; sub <= 4; sub++) {
193 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
206 sprintf(
str,
"HB, Depth%d \b",
k);
208 sprintf(
str,
"HE, Depth%d \b",
k);
210 sprintf(
str,
"HO, Depth%d \b",
k);
212 sprintf(
str,
"HF, Depth%d \b",
k);
213 Map_SUB[sub][
k]->SetTitle(
str);
214 Map_SUB[sub][
k]->SetXTitle(
"#eta \b");
215 Map_SUB[sub][
k]->SetYTitle(
"#phi \b");
216 Map_SUB[sub][
k]->SetZTitle(
"Number of events \b");
218 Map_SUB[sub][
k]->SetTitleOffset(0.8,
"Z");
219 Map_SUB[sub][
k]->Draw(
"COLZ");
220 Map_SUB[sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
241 cHB->Print(
"MapRateEntryHB.png");
245 cHE->Print(
"MapRateEntryHE.png");
249 cONE->Print(
"MapRateEntryHO.png");
253 cHF->Print(
"MapRateEntryHF.png");
262 Map_Ampl[1][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1Error_HB");
263 Map_Ampl[1][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2Error_HB");
264 Map_Ampl[1][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1Error_HE");
265 Map_Ampl[1][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2Error_HE");
266 Map_Ampl[1][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3Error_HE");
267 Map_Ampl[1][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4Error_HO");
268 Map_Ampl[1][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1Error_HF");
269 Map_Ampl[1][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2Error_HF");
271 Map_Ampl[1][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4Error_HE");
272 Map_Ampl[1][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5Error_HE");
273 Map_Ampl[1][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6Error_HE");
274 Map_Ampl[1][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7Error_HE");
275 Map_Ampl[1][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3Error_HF");
276 Map_Ampl[1][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4Error_HF");
278 Map_Ampl[1][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3Error_HB");
279 Map_Ampl[1][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4Error_HB");
281 for (
int sub = 1; sub <= 4; sub++) {
296 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
305 Map_Ampl[1][sub][
k]->Divide(Map_Ampl[1][sub][
k], Map_SUB[sub][
k], 1, 1,
"B");
310 sprintf(
str,
"HB, Depth%d \b",
k);
312 sprintf(
str,
"HE, Depth%d \b",
k);
314 sprintf(
str,
"HO, Depth%d \b",
k);
316 sprintf(
str,
"HF, Depth%d \b",
k);
317 Map_Ampl[1][sub][
k]->SetTitle(
str);
318 Map_Ampl[1][sub][
k]->SetXTitle(
"#eta \b");
319 Map_Ampl[1][sub][
k]->SetYTitle(
"#phi \b");
320 Map_Ampl[1][sub][
k]->SetZTitle(
"Rate \b");
322 Map_Ampl[1][sub][
k]->SetTitleOffset(0.8,
"Z");
323 Map_Ampl[1][sub][
k]->Draw(
"COLZ");
324 Map_Ampl[1][sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
325 Map_Ampl[1][sub][
k]->GetZaxis()->SetRangeUser(0.0001, 1.);
345 cHB->Print(
"MapRateCapIDHB.png");
349 cHE->Print(
"MapRateCapIDHE.png");
353 cONE->Print(
"MapRateCapIDHO.png");
357 cHF->Print(
"MapRateCapIDHF.png");
366 Map_Ampl[2][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1ADCAmpl225_HB");
367 Map_Ampl[2][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2ADCAmpl225_HB");
368 Map_Ampl[2][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1ADCAmpl225_HE");
369 Map_Ampl[2][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2ADCAmpl225_HE");
370 Map_Ampl[2][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3ADCAmpl225_HE");
371 Map_Ampl[2][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4ADCAmpl225_HO");
372 Map_Ampl[2][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1ADCAmpl225_HF");
373 Map_Ampl[2][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2ADCAmpl225_HF");
375 Map_Ampl[2][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4ADCAmpl225_HE");
376 Map_Ampl[2][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5ADCAmpl225_HE");
377 Map_Ampl[2][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6ADCAmpl225_HE");
378 Map_Ampl[2][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7ADCAmpl225_HE");
379 Map_Ampl[2][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3ADCAmpl225_HF");
380 Map_Ampl[2][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4ADCAmpl225_HF");
382 Map_Ampl[2][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3ADCAmpl225_HB");
383 Map_Ampl[2][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4ADCAmpl225_HB");
385 HistAmpl[2][1] = (TH1F *)hfile->Get(
"h_ADCAmpl_HB");
386 HistAmpl[2][2] = (TH1F *)hfile->Get(
"h_ADCAmpl_HE");
387 HistAmpl[2][3] = (TH1F *)hfile->Get(
"h_ADCAmpl_HO");
388 HistAmpl[2][4] = (TH1F *)hfile->Get(
"h_ADCAmpl_HF");
394 Map_Ampl[3][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1Amplitude225_HB");
395 Map_Ampl[3][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2Amplitude225_HB");
396 Map_Ampl[3][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1Amplitude225_HE");
397 Map_Ampl[3][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2Amplitude225_HE");
398 Map_Ampl[3][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3Amplitude225_HE");
399 Map_Ampl[3][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4Amplitude225_HO");
400 Map_Ampl[3][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1Amplitude225_HF");
401 Map_Ampl[3][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2Amplitude225_HF");
403 Map_Ampl[3][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4Amplitude225_HE");
404 Map_Ampl[3][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5Amplitude225_HE");
405 Map_Ampl[3][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6Amplitude225_HE");
406 Map_Ampl[3][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7Amplitude225_HE");
407 Map_Ampl[3][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3Amplitude225_HF");
408 Map_Ampl[3][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4Amplitude225_HF");
410 Map_Ampl[3][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3Amplitude225_HB");
411 Map_Ampl[3][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4Amplitude225_HB");
413 HistAmpl[3][1] = (TH1F *)hfile->Get(
"h_Amplitude_HB");
414 HistAmpl[3][2] = (TH1F *)hfile->Get(
"h_Amplitude_HE");
415 HistAmpl[3][3] = (TH1F *)hfile->Get(
"h_Amplitude_HO");
416 HistAmpl[3][4] = (TH1F *)hfile->Get(
"h_Amplitude_HF");
422 Map_Ampl[4][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1Ampl047_HB");
423 Map_Ampl[4][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2Ampl047_HB");
424 Map_Ampl[4][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1Ampl047_HE");
425 Map_Ampl[4][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2Ampl047_HE");
426 Map_Ampl[4][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3Ampl047_HE");
427 Map_Ampl[4][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4Ampl047_HO");
428 Map_Ampl[4][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1Ampl047_HF");
429 Map_Ampl[4][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2Ampl047_HF");
431 Map_Ampl[4][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4Ampl047_HE");
432 Map_Ampl[4][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5Ampl047_HE");
433 Map_Ampl[4][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6Ampl047_HE");
434 Map_Ampl[4][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7Ampl047_HE");
435 Map_Ampl[4][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3Ampl047_HF");
436 Map_Ampl[4][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4Ampl047_HF");
438 Map_Ampl[4][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3Ampl047_HB");
439 Map_Ampl[4][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4Ampl047_HB");
441 HistAmpl[4][1] = (TH1F *)hfile->Get(
"h_Ampl_HB");
442 HistAmpl[4][2] = (TH1F *)hfile->Get(
"h_Ampl_HE");
443 HistAmpl[4][3] = (TH1F *)hfile->Get(
"h_Ampl_HO");
444 HistAmpl[4][4] = (TH1F *)hfile->Get(
"h_Ampl_HF");
450 Map_Ampl[5][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmeanA225_HB");
451 Map_Ampl[5][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmeanA225_HB");
452 Map_Ampl[5][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmeanA225_HE");
453 Map_Ampl[5][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmeanA225_HE");
454 Map_Ampl[5][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmeanA225_HE");
455 Map_Ampl[5][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmeanA225_HO");
456 Map_Ampl[5][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmeanA225_HF");
457 Map_Ampl[5][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmeanA225_HF");
459 Map_Ampl[5][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmeanA225_HE");
460 Map_Ampl[5][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5TSmeanA225_HE");
461 Map_Ampl[5][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6TSmeanA225_HE");
462 Map_Ampl[5][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7TSmeanA225_HE");
463 Map_Ampl[5][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmeanA225_HF");
464 Map_Ampl[5][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmeanA225_HF");
466 Map_Ampl[5][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmeanA225_HB");
467 Map_Ampl[5][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmeanA225_HB");
469 HistAmpl[5][1] = (TH1F *)hfile->Get(
"h_TSmeanA_HB");
470 HistAmpl[5][2] = (TH1F *)hfile->Get(
"h_TSmeanA_HE");
471 HistAmpl[5][3] = (TH1F *)hfile->Get(
"h_TSmeanA_HO");
472 HistAmpl[5][4] = (TH1F *)hfile->Get(
"h_TSmeanA_HF");
478 Map_Ampl[6][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmaxA225_HB");
479 Map_Ampl[6][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmaxA225_HB");
480 Map_Ampl[6][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmaxA225_HE");
481 Map_Ampl[6][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmaxA225_HE");
482 Map_Ampl[6][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmaxA225_HE");
483 Map_Ampl[6][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmaxA225_HO");
484 Map_Ampl[6][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmaxA225_HF");
485 Map_Ampl[6][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmaxA225_HF");
487 Map_Ampl[6][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmaxA225_HE");
488 Map_Ampl[6][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5TSmaxA225_HE");
489 Map_Ampl[6][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6TSmaxA225_HE");
490 Map_Ampl[6][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7TSmaxA225_HE");
491 Map_Ampl[6][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmaxA225_HF");
492 Map_Ampl[6][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmaxA225_HF");
494 Map_Ampl[6][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmaxA225_HB");
495 Map_Ampl[6][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmaxA225_HB");
497 HistAmpl[6][1] = (TH1F *)hfile->Get(
"h_TSmaxA_HB");
498 HistAmpl[6][2] = (TH1F *)hfile->Get(
"h_TSmaxA_HE");
499 HistAmpl[6][3] = (TH1F *)hfile->Get(
"h_TSmaxA_HO");
500 HistAmpl[6][4] = (TH1F *)hfile->Get(
"h_TSmaxA_HF");
503 for (
int sub = 1; sub <= 4; sub++) {
518 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
527 Map_Ampl[
test][sub][
k]->Divide(Map_Ampl[
test][sub][
k], Map_SUB[sub][
k], 1, 1,
"B");
532 sprintf(
str,
"HB, Depth%d \b",
k);
534 sprintf(
str,
"HE, Depth%d \b",
k);
536 sprintf(
str,
"HO, Depth%d \b",
k);
538 sprintf(
str,
"HF, Depth%d \b",
k);
539 Map_Ampl[
test][sub][
k]->SetTitle(
str);
540 Map_Ampl[
test][sub][
k]->SetXTitle(
"#eta \b");
541 Map_Ampl[
test][sub][
k]->SetYTitle(
"#phi \b");
542 Map_Ampl[
test][sub][
k]->SetZTitle(
"Rate \b");
544 Map_Ampl[
test][sub][
k]->SetTitleOffset(0.8,
"Z");
545 Map_Ampl[
test][sub][
k]->Draw(
"COLZ");
546 Map_Ampl[
test][sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
547 Map_Ampl[
test][sub][
k]->GetZaxis()->SetRangeUser(0.0001, 1.);
567 cHB->Print(
"MapRateAmplHB.png");
571 cHE->Print(
"MapRateAmplHE.png");
575 cONE->Print(
"MapRateAmplHO.png");
579 cHF->Print(
"MapRateAmplHF.png");
585 cHB->Print(
"MapRateRMSHB.png");
589 cHE->Print(
"MapRateRMSHE.png");
593 cONE->Print(
"MapRateRMSHO.png");
597 cHF->Print(
"MapRateRMSHF.png");
603 cHB->Print(
"MapRate43TStoAllTSHB.png");
607 cHE->Print(
"MapRate43TStoAllTSHE.png");
611 cONE->Print(
"MapRate43TStoAllTSHO.png");
615 cHF->Print(
"MapRate43TStoAllTSHF.png");
621 cHB->Print(
"MapRateMeanPosHB.png");
625 cHE->Print(
"MapRateMeanPosHE.png");
629 cONE->Print(
"MapRateMeanPosHO.png");
633 cHF->Print(
"MapRateMeanPosHF.png");
639 cHB->Print(
"MapRateMaxPosHB.png");
643 cHE->Print(
"MapRateMaxPosHE.png");
647 cONE->Print(
"MapRateMaxPosHO.png");
651 cHF->Print(
"MapRateMaxPosHF.png");
670 if (
test == 2 && sub == 2) {
672 TH1F *kjkjkhj2 = (TH1F *)hfile->Get(
"h_AmplitudeHEtest1");
674 kjkjkhj2->SetTitle(
"HE, All Depth: shunt1");
676 TH1F *kjkjkhj3 = (TH1F *)hfile->Get(
"h_AmplitudeHEtest6");
678 kjkjkhj3->SetTitle(
"HE, All Depth: shunt6");
680 if (
test == 2 && sub == 1) {
682 TH1F *kjkjkhb2 = (TH1F *)hfile->Get(
"h_AmplitudeHBtest1");
684 kjkjkhb2->SetTitle(
"HB, All Depth: shunt1");
686 TH1F *kjkjkhb3 = (TH1F *)hfile->Get(
"h_AmplitudeHBtest6");
688 kjkjkhb3->SetTitle(
"HB, All Depth: shunt6");
696 HistAmpl[
test][sub]->SetTitle(
"HB, All Depth: shunt6");
698 HistAmpl[
test][sub]->SetTitle(
"HE, All Depth: shunt6");
700 HistAmpl[
test][sub]->SetTitle(
"HO, All Depth");
702 HistAmpl[
test][sub]->SetTitle(
"HF, All Depth");
704 HistAmpl[
test][sub]->SetXTitle(
"ADC Amlitude in each event & cell \b");
706 HistAmpl[
test][sub]->SetXTitle(
"RMS in each event & cell \b");
708 HistAmpl[
test][sub]->SetXTitle(
"Ratio in each event & cell \b");
710 HistAmpl[
test][sub]->SetXTitle(
"Mean TS position in each event & cell \b");
712 HistAmpl[
test][sub]->SetXTitle(
"Max TS position in each event & cell \b");
713 HistAmpl[
test][sub]->SetYTitle(
"Number of cell-events \b");
714 HistAmpl[
test][sub]->SetLineColor(4);
715 HistAmpl[
test][sub]->SetLineWidth(2);
716 HistAmpl[
test][sub]->SetTitleOffset(1.4,
"Y");
717 HistAmpl[
test][sub]->Draw(
"");
724 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 5.);
726 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 1.);
728 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 9.);
730 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 9.);
733 double min_x[] = {MIN_M[
test][sub], MIN_M[
test][sub]};
734 double min_y[] = {0., 100000000.};
735 TGraph *
MIN =
new TGraph(2, min_x, min_y);
736 MIN->SetLineStyle(2);
737 MIN->SetLineColor(2);
738 MIN->SetLineWidth(2 + 100 * 100);
739 MIN->SetFillStyle(3005);
740 MIN->SetFillColor(2);
742 double max_x[] = {MAX_M[
test][sub], MAX_M[
test][sub]};
743 double max_y[] = {0., 100000000.};
744 TGraph *
MAX =
new TGraph(2, max_x, max_y);
745 MAX->SetLineStyle(2);
746 MAX->SetLineColor(2);
747 MAX->SetLineWidth(-2 - 100 * 100);
748 MAX->SetFillStyle(3004);
749 MAX->SetFillColor(2);
753 cONE->Print(
"HistAmplHB.png");
757 cONE->Print(
"HistAmplHE.png");
761 cONE->Print(
"HistAmplHO.png");
765 cONE->Print(
"HistAmplHF.png");
771 cONE->Print(
"HistRMSHB.png");
775 cONE->Print(
"HistRMSHE.png");
779 cONE->Print(
"HistRMSHO.png");
783 cONE->Print(
"HistRMSHF.png");
789 cONE->Print(
"Hist43TStoAllTSHB.png");
793 cONE->Print(
"Hist43TStoAllTSHE.png");
797 cONE->Print(
"Hist43TStoAllTSHO.png");
801 cONE->Print(
"Hist43TStoAllTSHF.png");
807 cONE->Print(
"HistMeanPosHB.png");
811 cONE->Print(
"HistMeanPosHE.png");
815 cONE->Print(
"HistMeanPosHO.png");
819 cONE->Print(
"HistMeanPosHF.png");
825 cONE->Print(
"HistMaxPosHB.png");
829 cONE->Print(
"HistMaxPosHE.png");
833 cONE->Print(
"HistMaxPosHO.png");
837 cONE->Print(
"HistMaxPosHF.png");
844 TH2F *Map_Calib[5][5];
846 Map_Calib[1][1] = (TH2F *)hfile->Get(
"h_map_HB");
847 Map_Calib[1][2] = (TH2F *)hfile->Get(
"h_map_HB");
848 Map_Calib[2][1] = (TH2F *)hfile->Get(
"h_map_HE");
849 Map_Calib[2][2] = (TH2F *)hfile->Get(
"h_map_HE");
850 Map_Calib[2][3] = (TH2F *)hfile->Get(
"h_map_HE");
851 Map_Calib[3][4] = (TH2F *)hfile->Get(
"h_map_HO");
852 Map_Calib[4][1] = (TH2F *)hfile->Get(
"h_map_HF");
853 Map_Calib[4][2] = (TH2F *)hfile->Get(
"h_map_HF");
859 for (
int sub = 1; sub <= 4; sub++) {
885 Map_Calib[sub][
k]->SetTitle(
str);
886 Map_Calib[sub][
k]->SetXTitle(
"#eta \b");
887 Map_Calib[sub][
k]->SetYTitle(
"#phi \b");
888 Map_Calib[sub][
k]->SetZTitle(
"Number of events\b");
890 Map_Calib[sub][
k]->SetTitleOffset(0.8,
"Z");
891 Map_Calib[sub][
k]->Draw(
"COLZ");
892 Map_Calib[sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
902 cONE->Print(
"MapRateCalibEntryHB.png");
906 cONE->Print(
"MapRateCalibEntryHE.png");
910 cONE->Print(
"MapRateCalibEntryHO.png");
914 cONE->Print(
"MapRateCalibEntryHF.png");
923 Map_Ampl[11][1][1] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HB");
924 Map_Ampl[11][1][2] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HB");
925 Map_Ampl[11][2][1] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HE");
926 Map_Ampl[11][2][2] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HE");
927 Map_Ampl[11][2][3] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HE");
928 Map_Ampl[11][3][4] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HO");
929 Map_Ampl[11][4][1] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HF");
930 Map_Ampl[11][4][2] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HF");
932 for (
int sub = 1; sub <= 4; sub++) {
947 Map_Ampl[11][sub][
k]->Divide(Map_Ampl[11][sub][
k], Map_Calib[sub][
k], 1, 1,
"B");
959 Map_Ampl[11][sub][
k]->SetTitle(
str);
960 Map_Ampl[11][sub][
k]->SetXTitle(
"#eta \b");
961 Map_Ampl[11][sub][
k]->SetYTitle(
"#phi \b");
962 Map_Ampl[11][sub][
k]->SetZTitle(
"Rate \b");
963 Map_Ampl[11][sub][
k]->SetTitleOffset(0.75,
"Z");
964 Map_Ampl[11][sub][
k]->Draw(
"COLZ");
965 Map_Ampl[11][sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
966 Map_Ampl[11][sub][
k]->GetZaxis()->SetRangeUser(0.0001, 1.);
975 cONE->Print(
"MapRateCapCalibHB.png");
979 cONE->Print(
"MapRateCapCalibHE.png");
983 cONE->Print(
"MapRateCapCalibHO.png");
987 cONE->Print(
"MapRateCapCalibHF.png");
996 Map_Ampl[12][1][1] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HB");
997 Map_Ampl[12][1][2] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HB");
998 Map_Ampl[12][2][1] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HE");
999 Map_Ampl[12][2][2] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HE");
1000 Map_Ampl[12][2][3] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HE");
1001 Map_Ampl[12][3][4] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HO");
1002 Map_Ampl[12][4][1] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HF");
1003 Map_Ampl[12][4][2] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HF");
1005 HistAmpl[12][1] = (TH1F *)hfile->Get(
"h_ADCCalib_HB");
1006 HistAmpl[12][2] = (TH1F *)hfile->Get(
"h_ADCCalib_HE");
1007 HistAmpl[12][3] = (TH1F *)hfile->Get(
"h_ADCCalib_HO");
1008 HistAmpl[12][4] = (TH1F *)hfile->Get(
"h_ADCCalib_HF");
1014 Map_Ampl[13][1][1] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HB");
1015 Map_Ampl[13][1][2] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HB");
1016 Map_Ampl[13][2][1] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HE");
1017 Map_Ampl[13][2][2] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HE");
1018 Map_Ampl[13][2][3] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HE");
1019 Map_Ampl[13][3][4] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HO");
1020 Map_Ampl[13][4][1] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HF");
1021 Map_Ampl[13][4][2] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HF");
1023 HistAmpl[13][1] = (TH1F *)hfile->Get(
"h_WidthCalib_HB");
1024 HistAmpl[13][2] = (TH1F *)hfile->Get(
"h_WidthCalib_HE");
1025 HistAmpl[13][3] = (TH1F *)hfile->Get(
"h_WidthCalib_HO");
1026 HistAmpl[13][4] = (TH1F *)hfile->Get(
"h_WidthCalib_HF");
1032 Map_Ampl[14][1][1] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HB");
1033 Map_Ampl[14][1][2] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HB");
1034 Map_Ampl[14][2][1] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HE");
1035 Map_Ampl[14][2][2] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HE");
1036 Map_Ampl[14][2][3] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HE");
1037 Map_Ampl[14][3][4] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HO");
1038 Map_Ampl[14][4][1] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HF");
1039 Map_Ampl[14][4][2] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HF");
1041 HistAmpl[14][1] = (TH1F *)hfile->Get(
"h_RatioCalib_HB");
1042 HistAmpl[14][2] = (TH1F *)hfile->Get(
"h_RatioCalib_HE");
1043 HistAmpl[14][3] = (TH1F *)hfile->Get(
"h_RatioCalib_HO");
1044 HistAmpl[14][4] = (TH1F *)hfile->Get(
"h_RatioCalib_HF");
1050 Map_Ampl[15][1][1] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HB");
1051 Map_Ampl[15][1][2] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HB");
1052 Map_Ampl[15][2][1] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HE");
1053 Map_Ampl[15][2][2] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HE");
1054 Map_Ampl[15][2][3] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HE");
1055 Map_Ampl[15][3][4] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HO");
1056 Map_Ampl[15][4][1] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HF");
1057 Map_Ampl[15][4][2] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HF");
1059 HistAmpl[15][1] = (TH1F *)hfile->Get(
"h_TSmeanCalib_HB");
1060 HistAmpl[15][2] = (TH1F *)hfile->Get(
"h_TSmeanCalib_HE");
1061 HistAmpl[15][3] = (TH1F *)hfile->Get(
"h_TSmeanCalib_HO");
1062 HistAmpl[15][4] = (TH1F *)hfile->Get(
"h_TSmeanCalib_HF");
1068 Map_Ampl[16][1][1] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HB");
1069 Map_Ampl[16][1][2] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HB");
1070 Map_Ampl[16][2][1] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HE");
1071 Map_Ampl[16][2][2] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HE");
1072 Map_Ampl[16][2][3] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HE");
1073 Map_Ampl[16][3][4] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HO");
1074 Map_Ampl[16][4][1] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HF");
1075 Map_Ampl[16][4][2] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HF");
1077 HistAmpl[16][1] = (TH1F *)hfile->Get(
"h_TSmaxCalib_HB");
1078 HistAmpl[16][2] = (TH1F *)hfile->Get(
"h_TSmaxCalib_HE");
1079 HistAmpl[16][3] = (TH1F *)hfile->Get(
"h_TSmaxCalib_HO");
1080 HistAmpl[16][4] = (TH1F *)hfile->Get(
"h_TSmaxCalib_HF");
1083 for (
int sub = 1; sub <= 4; sub++) {
1112 Map_Ampl[
test][sub][
k]->Divide(Map_Ampl[
test][sub][
k], Map_Calib[sub][
k], 1, 1,
"B");
1124 Map_Ampl[
test][sub][
k]->SetTitle(
str);
1125 Map_Ampl[
test][sub][
k]->SetXTitle(
"#eta \b");
1126 Map_Ampl[
test][sub][
k]->SetYTitle(
"#phi \b");
1127 Map_Ampl[
test][sub][
k]->SetZTitle(
"Rate \b");
1128 Map_Ampl[
test][sub][
k]->SetTitleOffset(0.8,
"Z");
1129 Map_Ampl[
test][sub][
k]->Draw(
"COLZ");
1130 Map_Ampl[
test][sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
1131 Map_Ampl[
test][sub][
k]->GetZaxis()->SetRangeUser(0.00001, 1.);
1140 cONE->Print(
"MapRateAmplCalibHB.png");
1144 cONE->Print(
"MapRateAmplCalibHE.png");
1148 cONE->Print(
"MapRateAmplCalibHO.png");
1152 cONE->Print(
"MapRateAmplCalibHF.png");
1158 cONE->Print(
"MapRateRMSCalibHB.png");
1162 cONE->Print(
"MapRateRMSCalibHE.png");
1166 cONE->Print(
"MapRateRMSCalibHO.png");
1170 cONE->Print(
"MapRateRMSCalibHF.png");
1176 cONE->Print(
"MapRate43TStoAllTSCalibHB.png");
1180 cONE->Print(
"MapRate43TStoAllTSCalibHE.png");
1184 cONE->Print(
"MapRate43TStoAllTSCalibHO.png");
1188 cONE->Print(
"MapRate43TStoAllTSCalibHF.png");
1194 cONE->Print(
"MapRateMeanPosCalibHB.png");
1198 cONE->Print(
"MapRateMeanPosCalibHE.png");
1202 cONE->Print(
"MapRateMeanPosCalibHO.png");
1206 cONE->Print(
"MapRateMeanPosCalibHF.png");
1212 cONE->Print(
"MapRateMaxPosCalibHB.png");
1216 cONE->Print(
"MapRateMaxPosCalibHE.png");
1220 cONE->Print(
"MapRateMaxPosCalibHO.png");
1224 cONE->Print(
"MapRateMaxPosCalibHF.png");
1235 HistAmpl[
test][sub]->SetTitle(
"HB, All Depth");
1237 HistAmpl[
test][sub]->SetTitle(
"HE, All Depth");
1239 HistAmpl[
test][sub]->SetTitle(
"HO, All Depth");
1241 HistAmpl[
test][sub]->SetTitle(
"HF, All Depth");
1243 HistAmpl[
test][sub]->SetXTitle(
"ADC Amlitude in each event & cell \b");
1245 HistAmpl[
test][sub]->SetXTitle(
"Amplitude RMS in each event & cell \b");
1247 HistAmpl[
test][sub]->SetXTitle(
"Ratio in each event & cell \b");
1249 HistAmpl[
test][sub]->SetXTitle(
"Mean TS position in each event & cell \b");
1251 HistAmpl[
test][sub]->SetXTitle(
"Max TS position in each event & cell \b");
1252 HistAmpl[
test][sub]->SetYTitle(
"Number of cell-events \b");
1253 HistAmpl[
test][sub]->SetLineColor(4);
1254 HistAmpl[
test][sub]->SetLineWidth(2);
1255 HistAmpl[
test][sub]->SetTitleOffset(1.4,
"Y");
1256 HistAmpl[
test][sub]->Draw(
"");
1260 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(1., 10000.);
1263 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 5.);
1265 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 1.);
1267 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 9.);
1269 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 9.);
1272 double min_x[] = {MIN_C[
test - 10][sub], MIN_C[
test - 10][sub]};
1273 double min_y[] = {0., 100000000.};
1274 TGraph *
MIN =
new TGraph(2, min_x, min_y);
1275 MIN->SetLineStyle(2);
1276 MIN->SetLineColor(2);
1277 MIN->SetLineWidth(2 + 100 * 100);
1278 MIN->SetFillStyle(3005);
1279 MIN->SetFillColor(2);
1281 double max_x[] = {MAX_C[
test - 10][sub], MAX_C[
test - 10][sub]};
1282 double max_y[] = {0., 100000000.};
1283 TGraph *
MAX =
new TGraph(2, max_x, max_y);
1284 MAX->SetLineStyle(2);
1285 MAX->SetLineColor(2);
1286 MAX->SetLineWidth(-2 - 100 * 100);
1287 MAX->SetFillStyle(3004);
1288 MAX->SetFillColor(2);
1292 cONE->Print(
"HistAmplCalibHB.png");
1296 cONE->Print(
"HistAmplCalibHE.png");
1300 cONE->Print(
"HistAmplCalibHO.png");
1304 cONE->Print(
"HistAmplCalibHF.png");
1310 cONE->Print(
"HistRMSCalibHB.png");
1314 cONE->Print(
"HistRMSCalibHE.png");
1318 cONE->Print(
"HistRMSCalibHO.png");
1322 cONE->Print(
"HistRMSCalibHF.png");
1328 cONE->Print(
"Hist43TStoAllTSCalibHB.png");
1332 cONE->Print(
"Hist43TStoAllTSCalibHE.png");
1336 cONE->Print(
"Hist43TStoAllTSCalibHO.png");
1340 cONE->Print(
"Hist43TStoAllTSCalibHF.png");
1346 cONE->Print(
"HistMeanPosCalibHB.png");
1350 cONE->Print(
"HistMeanPosCalibHE.png");
1354 cONE->Print(
"HistMeanPosCalibHO.png");
1358 cONE->Print(
"HistMeanPosCalibHF.png");
1364 cONE->Print(
"HistMaxPosCalibHB.png");
1368 cONE->Print(
"HistMaxPosCalibHE.png");
1372 cONE->Print(
"HistMaxPosCalibHO.png");
1376 cONE->Print(
"HistMaxPosCalibHF.png");
1387 Map_Ampl[21][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1AmplE34_HB");
1388 Map_Ampl[21][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2AmplE34_HB");
1389 Map_Ampl[21][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3AmplE34_HB");
1390 Map_Ampl[21][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4AmplE34_HB");
1391 Map_Ampl[21][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1AmplE34_HE");
1392 Map_Ampl[21][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2AmplE34_HE");
1393 Map_Ampl[21][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3AmplE34_HE");
1394 Map_Ampl[21][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4AmplE34_HE");
1395 Map_Ampl[21][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5AmplE34_HE");
1396 Map_Ampl[21][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6AmplE34_HE");
1397 Map_Ampl[21][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7AmplE34_HE");
1398 Map_Ampl[21][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4AmplE34_HO");
1399 Map_Ampl[21][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1AmplE34_HF");
1400 Map_Ampl[21][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2AmplE34_HF");
1401 Map_Ampl[21][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3AmplE34_HF");
1402 Map_Ampl[21][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4AmplE34_HF");
1404 TH2F *Map_RefAmpl[5][ALLDEPTH];
1405 TH2F *Map_RefSUB[5][ALLDEPTH];
1407 Map_RefAmpl[1][1] = (TH2F *)hreffile->Get(
"h_mapDepth1AmplE34_HB");
1408 Map_RefAmpl[1][2] = (TH2F *)hreffile->Get(
"h_mapDepth2AmplE34_HB");
1409 Map_RefAmpl[1][3] = (TH2F *)hreffile->Get(
"h_mapDepth3AmplE34_HB");
1410 Map_RefAmpl[1][4] = (TH2F *)hreffile->Get(
"h_mapDepth4AmplE34_HB");
1411 Map_RefAmpl[2][1] = (TH2F *)hreffile->Get(
"h_mapDepth1AmplE34_HE");
1412 Map_RefAmpl[2][2] = (TH2F *)hreffile->Get(
"h_mapDepth2AmplE34_HE");
1413 Map_RefAmpl[2][3] = (TH2F *)hreffile->Get(
"h_mapDepth3AmplE34_HE");
1414 Map_RefAmpl[2][4] = (TH2F *)hreffile->Get(
"h_mapDepth4AmplE34_HE");
1415 Map_RefAmpl[2][5] = (TH2F *)hreffile->Get(
"h_mapDepth5AmplE34_HE");
1416 Map_RefAmpl[2][6] = (TH2F *)hreffile->Get(
"h_mapDepth6AmplE34_HE");
1417 Map_RefAmpl[2][7] = (TH2F *)hreffile->Get(
"h_mapDepth7AmplE34_HE");
1418 Map_RefAmpl[3][4] = (TH2F *)hreffile->Get(
"h_mapDepth4AmplE34_HO");
1419 Map_RefAmpl[4][1] = (TH2F *)hreffile->Get(
"h_mapDepth1AmplE34_HF");
1420 Map_RefAmpl[4][2] = (TH2F *)hreffile->Get(
"h_mapDepth2AmplE34_HF");
1421 Map_RefAmpl[4][3] = (TH2F *)hreffile->Get(
"h_mapDepth3AmplE34_HF");
1422 Map_RefAmpl[4][4] = (TH2F *)hreffile->Get(
"h_mapDepth4AmplE34_HF");
1424 Map_RefSUB[1][1] = (TH2F *)hreffile->Get(
"h_mapDepth1_HB");
1425 Map_RefSUB[1][2] = (TH2F *)hreffile->Get(
"h_mapDepth2_HB");
1426 Map_RefSUB[1][3] = (TH2F *)hreffile->Get(
"h_mapDepth3_HB");
1427 Map_RefSUB[1][4] = (TH2F *)hreffile->Get(
"h_mapDepth4_HB");
1428 Map_RefSUB[2][1] = (TH2F *)hreffile->Get(
"h_mapDepth1_HE");
1429 Map_RefSUB[2][2] = (TH2F *)hreffile->Get(
"h_mapDepth2_HE");
1430 Map_RefSUB[2][3] = (TH2F *)hreffile->Get(
"h_mapDepth3_HE");
1431 Map_RefSUB[2][4] = (TH2F *)hreffile->Get(
"h_mapDepth4_HE");
1432 Map_RefSUB[2][5] = (TH2F *)hreffile->Get(
"h_mapDepth5_HE");
1433 Map_RefSUB[2][6] = (TH2F *)hreffile->Get(
"h_mapDepth6_HE");
1434 Map_RefSUB[2][7] = (TH2F *)hreffile->Get(
"h_mapDepth7_HE");
1435 Map_RefSUB[3][4] = (TH2F *)hreffile->Get(
"h_mapDepth4_HO");
1436 Map_RefSUB[4][1] = (TH2F *)hreffile->Get(
"h_mapDepth1_HF");
1437 Map_RefSUB[4][2] = (TH2F *)hreffile->Get(
"h_mapDepth2_HF");
1438 Map_RefSUB[4][3] = (TH2F *)hreffile->Get(
"h_mapDepth3_HF");
1439 Map_RefSUB[4][4] = (TH2F *)hreffile->Get(
"h_mapDepth4_HF");
1441 HistAmplDepth[21][1][1] =
new TH1F(
"diffAmpl_Depth1_HB",
"", 100, -10., 10.);
1442 HistAmplDepth[21][1][2] =
new TH1F(
"diffAmpl_Depth2_HB",
"", 100, -10., 10.);
1443 HistAmplDepth[21][1][3] =
new TH1F(
"diffAmpl_Depth3_HB",
"", 100, -10., 10.);
1444 HistAmplDepth[21][1][4] =
new TH1F(
"diffAmpl_Depth4_HB",
"", 100, -10., 10.);
1445 HistAmplDepth[21][2][1] =
new TH1F(
"diffAmpl_Depth1_HE",
"", 100, -10., 10.);
1446 HistAmplDepth[21][2][2] =
new TH1F(
"diffAmpl_Depth2_HE",
"", 100, -10., 10.);
1447 HistAmplDepth[21][2][3] =
new TH1F(
"diffAmpl_Depth3_HE",
"", 100, -10., 10.);
1448 HistAmplDepth[21][2][4] =
new TH1F(
"diffAmpl_Depth4_HE",
"", 100, -10., 10.);
1449 HistAmplDepth[21][2][5] =
new TH1F(
"diffAmpl_Depth5_HE",
"", 100, -10., 10.);
1450 HistAmplDepth[21][2][6] =
new TH1F(
"diffAmpl_Depth6_HE",
"", 100, -10., 10.);
1451 HistAmplDepth[21][2][7] =
new TH1F(
"diffAmpl_Depth7_HE",
"", 100, -10., 10.);
1452 HistAmplDepth[21][3][4] =
new TH1F(
"diffAmpl_Depth4_HO",
"", 100, -10., 10.);
1453 HistAmplDepth[21][4][1] =
new TH1F(
"diffAmpl_Depth1_HF",
"", 100, -10., 10.);
1454 HistAmplDepth[21][4][2] =
new TH1F(
"diffAmpl_Depth2_HF",
"", 100, -10., 10.);
1455 HistAmplDepth[21][4][3] =
new TH1F(
"diffAmpl_Depth3_HF",
"", 100, -10., 10.);
1456 HistAmplDepth[21][4][4] =
new TH1F(
"diffAmpl_Depth4_HF",
"", 100, -10., 10.);
1458 for (
int sub = 1; sub <= 4; sub++) {
1473 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
1482 Map_Ampl[21][sub][
k]->Divide(Map_Ampl[21][sub][
k], Map_SUB[sub][
k], 1, 1,
"B");
1487 sprintf(
str,
"HB, Depth%d \b",
k);
1489 sprintf(
str,
"HE, Depth%d \b",
k);
1491 sprintf(
str,
"HO, Depth%d \b",
k);
1493 sprintf(
str,
"HF, Depth%d \b",
k);
1494 Map_Ampl[21][sub][
k]->SetTitle(
str);
1495 Map_Ampl[21][sub][
k]->SetXTitle(
"#eta \b");
1496 Map_Ampl[21][sub][
k]->SetYTitle(
"#phi \b");
1497 Map_Ampl[21][sub][
k]->SetZTitle(
"Response \b");
1498 Map_Ampl[21][sub][
k]->SetTitleOffset(1.1,
"Z");
1499 Map_Ampl[21][sub][
k]->Draw(
"COLZ");
1500 Map_Ampl[21][sub][
k]->GetYaxis()->SetRangeUser(0, 71.);
1520 cHB->Print(
"MapRateAmpl1HB.png");
1524 cHE->Print(
"MapRateAmpl1HE.png");
1528 cONE->Print(
"MapRateAmpl1HO.png");
1532 cHF->Print(
"MapRateAmpl1HF.png");
1548 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
1557 Map_RefAmpl[sub][
k]->Divide(Map_RefAmpl[sub][
k], Map_RefSUB[sub][
k], 1, 1,
"B");
1562 sprintf(
str,
"HB, Depth%d \b",
k);
1564 sprintf(
str,
"HE, Depth%d \b",
k);
1566 sprintf(
str,
"HO, Depth%d \b",
k);
1568 sprintf(
str,
"HF, Depth%d \b",
k);
1569 Map_RefAmpl[sub][
k]->SetTitle(
str);
1570 Map_RefAmpl[sub][
k]->SetXTitle(
"#eta \b");
1571 Map_RefAmpl[sub][
k]->SetYTitle(
"#phi \b");
1572 Map_RefAmpl[sub][
k]->SetZTitle(
"Response\b");
1573 Map_RefAmpl[sub][
k]->SetTitleOffset(1.1,
"Z");
1574 Map_RefAmpl[sub][
k]->Draw(
"COLZ");
1575 Map_RefAmpl[sub][
k]->GetYaxis()->SetRangeUser(0, 71.);
1595 cHB->Print(
"MapRateAmpl2HB.png");
1599 cHE->Print(
"MapRateAmpl2HE.png");
1603 cONE->Print(
"MapRateAmpl2HO.png");
1607 cHF->Print(
"MapRateAmpl2HF.png");
1623 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
1632 TH2F *
TTT =
new TH2F(
"Map",
"Map", 82, -41, 40, 72, 0, 71);
1633 for (
int x = 1;
x <= Map_Ampl[21][sub][
k]->GetXaxis()->GetNbins();
x++) {
1634 for (
int y = 1; y <= Map_Ampl[21][sub][
k]->GetYaxis()->GetNbins(); y++) {
1635 if (Map_Ampl[21][sub][
k]->GetBinContent(
x, y) != 0 && Map_RefAmpl[sub][
k]->GetBinContent(
x, y) != 0) {
1636 double ccc1 = Map_Ampl[21][sub][
k]->GetBinContent(
x, y) - Map_RefAmpl[sub][
k]->GetBinContent(
x, y);
1637 ccc1 = 100. * ccc1 / Map_Ampl[21][sub][
k]->GetBinContent(
x, y);
1638 HistAmplDepth[21][sub][
k]->Fill(ccc1);
1639 Map_Ampl[21][sub][
k]->SetBinContent(
x, y, fabs(ccc1));
1640 if (fabs(ccc1) > porog[sub])
1641 TTT->SetBinContent(
x, y, fabs(ccc1));
1643 TTT->SetBinContent(
x, y, 0);
1651 sprintf(
str,
"HB, Depth%d \b",
k);
1653 sprintf(
str,
"HE, Depth%d \b",
k);
1655 sprintf(
str,
"HO, Depth%d \b",
k);
1657 sprintf(
str,
"HF, Depth%d \b",
k);
1659 TTT->SetXTitle(
"#eta \b");
1660 TTT->SetYTitle(
"#phi \b");
1661 TTT->SetZTitle(
"Relative difference, % \b");
1662 TTT->SetTitleOffset(0.9,
"Z");
1664 TTT->GetYaxis()->SetRangeUser(0, 71.);
1665 TTT->GetZaxis()->SetRangeUser(0, 10.);
1685 cHB->Print(
"MapRateAmplDriftHB.png");
1689 cHE->Print(
"MapRateAmplDriftHE.png");
1693 cONE->Print(
"MapRateAmplDriftHO.png");
1697 cHF->Print(
"MapRateAmplDriftHF.png");
1714 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
1727 sprintf(
str,
"HB, Depth%d \b",
k);
1729 sprintf(
str,
"HE, Depth%d \b",
k);
1731 sprintf(
str,
"HO, Depth%d \b",
k);
1733 sprintf(
str,
"HF, Depth%d \b",
k);
1734 HistAmplDepth[21][sub][
k]->SetTitle(
str);
1735 HistAmplDepth[21][sub][
k]->SetYTitle(
"Number of cell-events \b");
1736 HistAmplDepth[21][sub][
k]->SetXTitle(
"Per cent \b");
1737 HistAmplDepth[21][sub][
k]->SetLineColor(4);
1738 HistAmplDepth[21][sub][
k]->SetLineWidth(2);
1739 HistAmplDepth[21][sub][
k]->SetTitleOffset(1.4,
"Y");
1740 HistAmplDepth[21][sub][
k]->Draw();
1742 HistAmplDepth[21][sub][
k]->GetXaxis()->SetRangeUser(-10., 10.);
1759 double min_x[] = {-1 * porog[sub], -1 * porog[sub]};
1760 double min_y[] = {0., 100000000.};
1761 TGraph *
MIN =
new TGraph(2, min_x, min_y);
1762 MIN->SetLineStyle(2);
1763 MIN->SetLineColor(2);
1764 MIN->SetLineWidth(2 + 100 * 100);
1765 MIN->SetFillStyle(3005);
1766 MIN->SetFillColor(2);
1768 double max_x[] = {porog[sub], porog[sub]};
1769 double max_y[] = {0., 100000000.};
1770 TGraph *
MAX =
new TGraph(2, max_x, max_y);
1771 MAX->SetLineStyle(2);
1772 MAX->SetLineColor(2);
1773 MAX->SetLineWidth(-2 - 100 * 100);
1774 MAX->SetFillStyle(3004);
1775 MAX->SetFillColor(2);
1779 cHB->Print(
"HistAmplDriftDepthHB.png");
1783 cHE->Print(
"HistAmplDriftDepthHE.png");
1787 cONE->Print(
"HistAmplDriftDepthHO.png");
1791 cHF->Print(
"HistAmplDriftDepthHF.png");
1800 Map_Ampl[31][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestal_HB");
1801 Map_Ampl[31][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestal_HB");
1802 Map_Ampl[31][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestal_HB");
1803 Map_Ampl[31][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestal_HB");
1804 Map_Ampl[31][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestal_HE");
1805 Map_Ampl[31][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestal_HE");
1806 Map_Ampl[31][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestal_HE");
1807 Map_Ampl[31][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestal_HE");
1808 Map_Ampl[31][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5pedestal_HE");
1809 Map_Ampl[31][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6pedestal_HE");
1810 Map_Ampl[31][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7pedestal_HE");
1811 Map_Ampl[31][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestal_HO");
1812 Map_Ampl[31][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestal_HF");
1813 Map_Ampl[31][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestal_HF");
1814 Map_Ampl[31][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestal_HF");
1815 Map_Ampl[31][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestal_HF");
1817 Map_Ampl[32][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestalw_HB");
1818 Map_Ampl[32][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestalw_HB");
1819 Map_Ampl[32][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestalw_HB");
1820 Map_Ampl[32][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestalw_HB");
1821 Map_Ampl[32][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestalw_HE");
1822 Map_Ampl[32][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestalw_HE");
1823 Map_Ampl[32][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestalw_HE");
1824 Map_Ampl[32][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestalw_HE");
1825 Map_Ampl[32][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5pedestalw_HE");
1826 Map_Ampl[32][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6pedestalw_HE");
1827 Map_Ampl[32][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7pedestalw_HE");
1828 Map_Ampl[32][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestalw_HO");
1829 Map_Ampl[32][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestalw_HF");
1830 Map_Ampl[32][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestalw_HF");
1831 Map_Ampl[32][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestalw_HF");
1832 Map_Ampl[32][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestalw_HF");
1834 HistPed[1][1][0] = (TH1F *)hfile->Get(
"h_pedestal0_HB");
1835 HistPed[1][1][1] = (TH1F *)hfile->Get(
"h_pedestal1_HB");
1836 HistPed[1][1][2] = (TH1F *)hfile->Get(
"h_pedestal2_HB");
1837 HistPed[1][1][3] = (TH1F *)hfile->Get(
"h_pedestal3_HB");
1838 HistPed[2][1][0] = (TH1F *)hfile->Get(
"h_pedestalw0_HB");
1839 HistPed[2][1][1] = (TH1F *)hfile->Get(
"h_pedestalw1_HB");
1840 HistPed[2][1][2] = (TH1F *)hfile->Get(
"h_pedestalw2_HB");
1841 HistPed[2][1][3] = (TH1F *)hfile->Get(
"h_pedestalw3_HB");
1843 HistPed[1][2][0] = (TH1F *)hfile->Get(
"h_pedestal0_HE");
1844 HistPed[1][2][1] = (TH1F *)hfile->Get(
"h_pedestal1_HE");
1845 HistPed[1][2][2] = (TH1F *)hfile->Get(
"h_pedestal2_HE");
1846 HistPed[1][2][3] = (TH1F *)hfile->Get(
"h_pedestal3_HE");
1847 HistPed[2][2][0] = (TH1F *)hfile->Get(
"h_pedestalw0_HE");
1848 HistPed[2][2][1] = (TH1F *)hfile->Get(
"h_pedestalw1_HE");
1849 HistPed[2][2][2] = (TH1F *)hfile->Get(
"h_pedestalw2_HE");
1850 HistPed[2][2][3] = (TH1F *)hfile->Get(
"h_pedestalw3_HE");
1852 HistPed[1][3][0] = (TH1F *)hfile->Get(
"h_pedestal0_HO");
1853 HistPed[1][3][1] = (TH1F *)hfile->Get(
"h_pedestal1_HO");
1854 HistPed[1][3][2] = (TH1F *)hfile->Get(
"h_pedestal2_HO");
1855 HistPed[1][3][3] = (TH1F *)hfile->Get(
"h_pedestal3_HO");
1856 HistPed[2][3][0] = (TH1F *)hfile->Get(
"h_pedestalw0_HO");
1857 HistPed[2][3][1] = (TH1F *)hfile->Get(
"h_pedestalw1_HO");
1858 HistPed[2][3][2] = (TH1F *)hfile->Get(
"h_pedestalw2_HO");
1859 HistPed[2][3][3] = (TH1F *)hfile->Get(
"h_pedestalw3_HO");
1861 HistPed[1][4][0] = (TH1F *)hfile->Get(
"h_pedestal0_HF");
1862 HistPed[1][4][1] = (TH1F *)hfile->Get(
"h_pedestal1_HF");
1863 HistPed[1][4][2] = (TH1F *)hfile->Get(
"h_pedestal2_HF");
1864 HistPed[1][4][3] = (TH1F *)hfile->Get(
"h_pedestal3_HF");
1865 HistPed[2][4][0] = (TH1F *)hfile->Get(
"h_pedestalw0_HF");
1866 HistPed[2][4][1] = (TH1F *)hfile->Get(
"h_pedestalw1_HF");
1867 HistPed[2][4][2] = (TH1F *)hfile->Get(
"h_pedestalw2_HF");
1868 HistPed[2][4][3] = (TH1F *)hfile->Get(
"h_pedestalw3_HF");
1871 for (
int sub = 1; sub <= 4; sub++) {
1886 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
1895 Map_Ampl[
test][sub][
k]->Divide(Map_Ampl[
test][sub][
k], Map_SUB[sub][
k], 1, 1,
"B");
1900 sprintf(
str,
"HB, Depth%d \b",
k);
1902 sprintf(
str,
"HE, Depth%d \b",
k);
1904 sprintf(
str,
"HO, Depth%d \b",
k);
1906 sprintf(
str,
"HF, Depth%d \b",
k);
1907 Map_Ampl[
test][sub][
k]->SetTitle(
str);
1908 Map_Ampl[
test][sub][
k]->SetXTitle(
"#eta \b");
1909 Map_Ampl[
test][sub][
k]->SetYTitle(
"#phi \b");
1910 Map_Ampl[
test][sub][
k]->SetZTitle(
"Rate \b");
1912 Map_Ampl[
test][sub][
k]->SetTitleOffset(0.8,
"Z");
1913 Map_Ampl[
test][sub][
k]->Draw(
"COLZ");
1914 Map_Ampl[
test][sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
1915 Map_Ampl[
test][sub][
k]->GetZaxis()->SetRangeUser(0.0001, 1.);
1935 cHB->Print(
"MapRatePedHB.png");
1939 cHE->Print(
"MapRatePedHE.png");
1943 cONE->Print(
"MapRatePedHO.png");
1947 cHF->Print(
"MapRatePedHF.png");
1953 cHB->Print(
"MapRatePedWidthsHB.png");
1957 cHE->Print(
"MapRatePedWidthsHE.png");
1961 cONE->Print(
"MapRatePedWidthsHO.png");
1965 cHF->Print(
"MapRatePedWidthsHF.png");
1980 sprintf(
str,
"HB, Cap%d, all depth\b",
cap);
1982 sprintf(
str,
"HE, Cap%d, all depth\b",
cap);
1984 sprintf(
str,
"HO, Cap%d, all depth\b",
cap);
1986 sprintf(
str,
"HF, Cap%d, all depth\b",
cap);
1991 HistPed[
test - 30][sub][
cap]->SetXTitle(
"Pedestals in each event & cell \b");
1993 HistPed[
test - 30][sub][
cap]->SetXTitle(
"Pedestal Widths in each event & cell \b");
1995 HistPed[
test - 30][sub][
cap]->SetYTitle(
"Number of channel-events \b");
1996 HistPed[
test - 30][sub][
cap]->SetLineColor(4);
1997 HistPed[
test - 30][sub][
cap]->SetLineWidth(2);
1998 HistPed[
test - 30][sub][
cap]->SetTitleOffset(1.4,
"Y");
1999 HistPed[
test - 30][sub][
cap]->Draw(
"");
2006 double min_x[] = {Pedest[
test - 31][sub], Pedest[
test - 31][sub]};
2007 double min_y[] = {0., 100000000.};
2008 TGraph *
MIN =
new TGraph(2, min_x, min_y);
2009 MIN->SetLineStyle(2);
2010 MIN->SetLineColor(2);
2011 MIN->SetLineWidth(2 + 100 * 100);
2012 MIN->SetFillStyle(3005);
2013 MIN->SetFillColor(2);
2018 cPED->Print(
"HistPedestalsHB.png");
2022 cPED->Print(
"HistPedestalsHE.png");
2026 cPED->Print(
"HistPedestalsHO.png");
2030 cPED->Print(
"HistPedestalsHF.png");
2036 cPED->Print(
"HistPedestalWidthsHB.png");
2040 cPED->Print(
"HistPedestalWidthsHE.png");
2044 cPED->Print(
"HistPedestalWidthsHO.png");
2048 cPED->Print(
"HistPedestalWidthsHF.png");
2060 Map_Ped[1][1] = (TH2F *)hfile->Get(
"h2_pedvsampl_HB");
2061 Map_Ped[1][2] = (TH2F *)hfile->Get(
"h2_pedvsampl_HE");
2062 Map_Ped[1][3] = (TH2F *)hfile->Get(
"h2_pedvsampl_HO");
2063 Map_Ped[1][4] = (TH2F *)hfile->Get(
"h2_pedvsampl_HF");
2064 Map_Ped[2][1] = (TH2F *)hfile->Get(
"h2_pedwvsampl_HB");
2065 Map_Ped[2][2] = (TH2F *)hfile->Get(
"h2_pedwvsampl_HE");
2066 Map_Ped[2][3] = (TH2F *)hfile->Get(
"h2_pedwvsampl_HO");
2067 Map_Ped[2][4] = (TH2F *)hfile->Get(
"h2_pedwvsampl_HF");
2068 for (
int sub = 1; sub <= 4; sub++) {
2076 Map_Ped[
test][sub]->SetXTitle(
"Pedestal, fC \b");
2078 Map_Ped[
test][sub]->SetXTitle(
"pedestal Width, fC \b");
2079 Map_Ped[
test][sub]->SetYTitle(
"Amplitude, fC \b");
2080 Map_Ped[
test][sub]->SetZTitle(
"entries \b");
2082 sprintf(
str,
"Cap0 Pedestal vs Amplitude \b");
2084 sprintf(
str,
"Cap0 pedestalWidth vs Amplitude \b");
2085 Map_Ped[
test][sub]->SetTitle(
str);
2086 Map_Ped[
test][sub]->Draw(
"COLZ");
2093 cPED->Print(
"CorrelationsMapPedestalVsfullAmplitudeHB.png");
2097 cPED->Print(
"CorrelationsMapPedestalVsfullAmplitudeHE.png");
2101 cPED->Print(
"CorrelationsMapPedestalVsfullAmplitudeHO.png");
2105 cPED->Print(
"CorrelationsMapPedestalVsfullAmplitudeHF.png");
2115 hist_GoodTSshape[1] = (TH1F *)hfile->Get(
"h_shape_good_channels_HB");
2116 hist_GoodTSshape[2] = (TH1F *)hfile->Get(
"h_shape_good_channels_HE");
2117 hist_GoodTSshape[3] = (TH1F *)hfile->Get(
"h_shape_good_channels_HO");
2118 hist_GoodTSshape[4] = (TH1F *)hfile->Get(
"h_shape_good_channels_HF");
2120 hist_GoodTSshape0[1] = (TH1F *)hfile->Get(
"h_shape0_good_channels_HB");
2121 hist_GoodTSshape0[2] = (TH1F *)hfile->Get(
"h_shape0_good_channels_HE");
2122 hist_GoodTSshape0[3] = (TH1F *)hfile->Get(
"h_shape0_good_channels_HO");
2123 hist_GoodTSshape0[4] = (TH1F *)hfile->Get(
"h_shape0_good_channels_HF");
2125 hist_BadTSshape[1] = (TH1F *)hfile->Get(
"h_shape_bad_channels_HB");
2126 hist_BadTSshape[2] = (TH1F *)hfile->Get(
"h_shape_bad_channels_HE");
2127 hist_BadTSshape[3] = (TH1F *)hfile->Get(
"h_shape_bad_channels_HO");
2128 hist_BadTSshape[4] = (TH1F *)hfile->Get(
"h_shape_bad_channels_HF");
2130 hist_BadTSshape0[1] = (TH1F *)hfile->Get(
"h_shape0_bad_channels_HB");
2131 hist_BadTSshape0[2] = (TH1F *)hfile->Get(
"h_shape0_bad_channels_HE");
2132 hist_BadTSshape0[3] = (TH1F *)hfile->Get(
"h_shape0_bad_channels_HO");
2133 hist_BadTSshape0[4] = (TH1F *)hfile->Get(
"h_shape0_bad_channels_HF");
2137 for (
int sub = 1; sub <= 4; sub++) {
2142 hist_GoodTSshape[sub]->Divide(hist_GoodTSshape[sub], hist_GoodTSshape0[sub], 1, 1,
"B");
2143 hist_GoodTSshape[sub]->SetXTitle(
"Time slice \b");
2144 hist_GoodTSshape[sub]->SetYTitle(
"ADC counts \b");
2145 sprintf(
str,
"Mean ADC Shape \b");
2146 hist_GoodTSshape[sub]->SetTitle(
str);
2147 hist_GoodTSshape[sub]->Draw(
"");
2153 cONE->Print(
"HistGoodTSshapesHB.png");
2157 cONE->Print(
"HistGoodTSshapesHE.png");
2161 cONE->Print(
"HistGoodTSshapesHO.png");
2165 cONE->Print(
"HistGoodTSshapesHF.png");
2170 for (
int sub = 1; sub <= 4; sub++) {
2175 hist_BadTSshape[sub]->Divide(hist_BadTSshape[sub], hist_BadTSshape0[sub], 1, 1,
"B");
2176 hist_BadTSshape[sub]->SetXTitle(
"Time slice \b");
2177 hist_BadTSshape[sub]->SetYTitle(
"ADC counts \b");
2178 sprintf(
str,
"Mean ADC Shape \b");
2179 hist_BadTSshape[sub]->SetTitle(
str);
2180 hist_BadTSshape[sub]->Draw(
"");
2186 cONE->Print(
"HistBadTSshapesHB.png");
2190 cONE->Print(
"HistBadTSshapesHE.png");
2194 cONE->Print(
"HistBadTSshapesHO.png");
2198 cONE->Print(
"HistBadTSshapesHF.png");
2433 std::cout <<
" We are here to print 2017 MAPs (do not use for run3 )" << std::endl;
2763 std::string raw_class, raw_class1, raw_class2, raw_class3;
2766 for (
int sub = 1; sub <= 4; sub++) {
2767 ofstream htmlFileT, htmlFileC, htmlFileD, htmlFileP, htmlFileS;
2769 htmlFileT.open(
"HB_Tile.html");
2770 htmlFileC.open(
"HB_Calib.html");
2771 htmlFileD.open(
"HB_Drift.html");
2772 htmlFileP.open(
"HB_Pedestals.html");
2773 htmlFileS.open(
"HB_Shapes.html");
2776 htmlFileT.open(
"HE_Tile.html");
2777 htmlFileC.open(
"HE_Calib.html");
2778 htmlFileD.open(
"HE_Drift.html");
2779 htmlFileP.open(
"HE_Pedestals.html");
2780 htmlFileS.open(
"HE_Shapes.html");
2783 htmlFileT.open(
"HO_Tile.html");
2784 htmlFileC.open(
"HO_Calib.html");
2785 htmlFileD.open(
"HO_Drift.html");
2786 htmlFileP.open(
"HO_Pedestals.html");
2787 htmlFileS.open(
"HO_Shapes.html");
2790 htmlFileT.open(
"HF_Tile.html");
2791 htmlFileC.open(
"HF_Calib.html");
2792 htmlFileD.open(
"HF_Drift.html");
2793 htmlFileP.open(
"HF_Pedestals.html");
2794 htmlFileS.open(
"HF_Shapes.html");
2798 htmlFileT <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
2799 htmlFileT <<
"<head>" << std::endl;
2800 htmlFileT <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
2801 htmlFileT <<
"<title> Remote Monitoring Tool Global</title>" << std::endl;
2802 htmlFileT <<
"<style type=\"text/css\">" << std::endl;
2803 htmlFileT <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }" 2805 htmlFileT <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
2806 htmlFileT <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; " 2807 "text-align: center;}" 2809 htmlFileT <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
2810 htmlFileT <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
2811 htmlFileT <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
2812 htmlFileT <<
"</style>" << std::endl;
2813 htmlFileT <<
"<body>" << std::endl;
2816 htmlFileT <<
"<h1> Criteria for megatile channels for HB, RUN = " <<
runnumber <<
" </h1>" << std::endl;
2818 htmlFileT <<
"<h1> Criteria for megatile channels for HE, RUN = " <<
runnumber <<
" </h1>" << std::endl;
2820 htmlFileT <<
"<h1> Criteria for megatile channels for HO, RUN = " <<
runnumber <<
" </h1>" << std::endl;
2822 htmlFileT <<
"<h1> Criteria for megatile channels for HF, RUN = " <<
runnumber <<
" </h1>" << std::endl;
2823 htmlFileT <<
"<br>" << std::endl;
2827 htmlFileT <<
"<h2> 0. Entries for each channel.</h3>" << std::endl;
2828 htmlFileT <<
"<h3> 0.A. Entries in each channel for each depth.</h3>" << std::endl;
2829 htmlFileT <<
"<h4> Channel legend: color is number of hits in digi collection </h4>" << std::endl;
2831 htmlFileT <<
" <img src=\"MapRateEntryHB.png\" />" << std::endl;
2833 htmlFileT <<
" <img src=\"MapRateEntryHE.png\" />" << std::endl;
2835 htmlFileT <<
" <img src=\"MapRateEntryHO.png\" />" << std::endl;
2837 htmlFileT <<
" <img src=\"MapRateEntryHF.png\" />" << std::endl;
2838 htmlFileT <<
"<br>" << std::endl;
2841 htmlFileT <<
"<h2> 1. Cm criterion: CapID errors for each channel.</h3>" << std::endl;
2842 htmlFileT <<
"<h3> 1.A. Rate of CapId failures in each channel for each depth.</h3>" << std::endl;
2843 htmlFileT <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
2845 htmlFileT <<
" <img src=\"MapRateCapIDHB.png\" />" << std::endl;
2847 htmlFileT <<
" <img src=\"MapRateCapIDHE.png\" />" << std::endl;
2849 htmlFileT <<
" <img src=\"MapRateCapIDHO.png\" />" << std::endl;
2851 htmlFileT <<
" <img src=\"MapRateCapIDHF.png\" />" << std::endl;
2852 htmlFileT <<
"<br>" << std::endl;
2855 htmlFileT <<
"<h2> 2. Am criterion: ADC amplitude collected over all TSs(Full Amplitude) for each channel. </h3>" 2857 htmlFileT <<
"<h3> 2.A. Full ADC amplitude distribution over all events, channels and depths.</h3>" << std::endl;
2858 htmlFileT <<
"<h4> Legend: Bins less " << MIN_M[2][sub] <<
" correpond to bad ADC amplitude </h4>" << std::endl;
2860 htmlFileT <<
" <img src=\"HistAmplHB.png\" />" << std::endl;
2862 htmlFileT <<
" <img src=\"HistAmplHE.png\" />" << std::endl;
2864 htmlFileT <<
" <img src=\"HistAmplHO.png\" />" << std::endl;
2866 htmlFileT <<
" <img src=\"HistAmplHF.png\" />" << std::endl;
2867 htmlFileT <<
"<br>" << std::endl;
2868 htmlFileT <<
"<h3> 2.B. Rate of bad ADC amplitude (<" << MIN_M[2][sub] <<
") in each channel for each depth. </h3>" 2870 htmlFileT <<
"<h4> Channel legend: white - good, other colours - bad. </h4>" << std::endl;
2872 htmlFileT <<
" <img src=\"MapRateAmplHB.png\" />" << std::endl;
2874 htmlFileT <<
" <img src=\"MapRateAmplHE.png\" />" << std::endl;
2876 htmlFileT <<
" <img src=\"MapRateAmplHO.png\" />" << std::endl;
2878 htmlFileT <<
" <img src=\"MapRateAmplHF.png\" />" << std::endl;
2879 htmlFileT <<
"<br>" << std::endl;
2882 htmlFileT <<
"<h2> 3. Wm criterion: RMS (width) of ADC amplutude for each channel.</h3>" << std::endl;
2883 htmlFileT <<
"<h3> 3.A. RMS distribution over all events, channel and depth.</h3>" << std::endl;
2884 htmlFileT <<
"<h4> Legend: Bins less " << MIN_M[3][sub] <<
" and more " << MAX_M[3][sub]
2885 <<
" correpond to bad RMS </h4>" << std::endl;
2887 htmlFileT <<
" <img src=\"HistRMSHB.png\" />" << std::endl;
2889 htmlFileT <<
" <img src=\"HistRMSHE.png\" />" << std::endl;
2891 htmlFileT <<
" <img src=\"HistRMSHO.png\" />" << std::endl;
2893 htmlFileT <<
" <img src=\"HistRMSHF.png\" />" << std::endl;
2894 htmlFileT <<
"<br>" << std::endl;
2895 htmlFileT <<
"<h3> 3.B. Rate of bad RMS (<" << MIN_M[3][sub] <<
",>" << MAX_M[3][sub]
2896 <<
") in each channel for each depth.</h3>" << std::endl;
2897 htmlFileT <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
2899 htmlFileT <<
" <img src=\"MapRateRMSHB.png\" />" << std::endl;
2901 htmlFileT <<
" <img src=\"MapRateRMSHE.png\" />" << std::endl;
2903 htmlFileT <<
" <img src=\"MapRateRMSHO.png\" />" << std::endl;
2905 htmlFileT <<
" <img src=\"MapRateRMSHF.png\" />" << std::endl;
2906 htmlFileT <<
"<br>" << std::endl;
2909 htmlFileT <<
"<h2> 4. Rm criterion: Ratio ADC value sum over four near maximum (-2, -1, max, +1) TS to ADC value " 2910 "sum over all TS for each channel. </h3>" 2912 htmlFileT <<
"<h3> 4.A. Ratio distribution over all events, channels and depths.</h3>" << std::endl;
2913 htmlFileT <<
"<h4> Legend: Bins less " << MIN_M[4][sub] <<
" and more " << MAX_M[4][sub]
2914 <<
" correpond to bad ratio </h4>" << std::endl;
2916 htmlFileT <<
" <img src=\"Hist43TStoAllTSHB.png\" />" << std::endl;
2918 htmlFileT <<
" <img src=\"Hist43TStoAllTSHE.png\" />" << std::endl;
2920 htmlFileT <<
" <img src=\"Hist43TStoAllTSHO.png\" />" << std::endl;
2922 htmlFileT <<
" <img src=\"Hist43TStoAllTSHF.png\" />" << std::endl;
2923 htmlFileT <<
"<br>" << std::endl;
2924 htmlFileT <<
"<h3> 4.B. Rate of bad ratio (<" << MIN_M[4][sub] <<
", >" << MAX_M[4][sub]
2925 <<
") in each channel for each depth.</h3>" << std::endl;
2926 htmlFileT <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
2928 htmlFileT <<
" <img src=\"MapRate43TStoAllTSHB.png\" />" << std::endl;
2930 htmlFileT <<
" <img src=\"MapRate43TStoAllTSHE.png\" />" << std::endl;
2932 htmlFileT <<
" <img src=\"MapRate43TStoAllTSHO.png\" />" << std::endl;
2934 htmlFileT <<
" <img src=\"MapRate43TStoAllTSHF.png\" />" << std::endl;
2935 htmlFileT <<
"<br>" << std::endl;
2938 htmlFileT <<
"<h2> 5. TNm criterion: Mean TS position for each channel.</h3>" << std::endl;
2939 htmlFileT <<
"<h3> 5.A. TN position distribution over all events, channels and depths.</h3>" << std::endl;
2940 htmlFileT <<
"<h4> Legend: Bins less " << MIN_M[5][sub] <<
" and more " << MAX_M[5][sub]
2941 <<
" correpond to bad mean position </h4>" << std::endl;
2943 htmlFileT <<
" <img src=\"HistMeanPosHB.png\" />" << std::endl;
2945 htmlFileT <<
" <img src=\"HistMeanPosHE.png\" />" << std::endl;
2947 htmlFileT <<
" <img src=\"HistMeanPosHO.png\" />" << std::endl;
2949 htmlFileT <<
" <img src=\"HistMeanPosHF.png\" />" << std::endl;
2950 htmlFileT <<
"<br>" << std::endl;
2951 htmlFileT <<
"<h3> 5.B. Rate of bad TN position (<" << MIN_M[5][sub] <<
", >" << MAX_M[5][sub]
2952 <<
") in each channel for each depth. </h3>" << std::endl;
2953 htmlFileT <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
2955 htmlFileT <<
" <img src=\"MapRateMeanPosHB.png\" />" << std::endl;
2957 htmlFileT <<
" <img src=\"MapRateMeanPosHE.png\" />" << std::endl;
2959 htmlFileT <<
" <img src=\"MapRateMeanPosHO.png\" />" << std::endl;
2961 htmlFileT <<
" <img src=\"MapRateMeanPosHF.png\" />" << std::endl;
2962 htmlFileT <<
"<br>" << std::endl;
2965 htmlFileT <<
"<h2> 6.TXm criterion: Maximum TS position for each channel.</h3>" << std::endl;
2966 htmlFileT <<
"<h3> 6.A. TX position distribution over all events, channel and depth.</h3>" << std::endl;
2967 htmlFileT <<
"<h4> Legend: Bins less " << MIN_M[6][sub] <<
" and more " << MAX_M[6][sub]
2968 <<
" correpond to bad position </h4>" << std::endl;
2970 htmlFileT <<
" <img src=\"HistMaxPosHB.png\" />" << std::endl;
2972 htmlFileT <<
" <img src=\"HistMaxPosHE.png\" />" << std::endl;
2974 htmlFileT <<
" <img src=\"HistMaxPosHO.png\" />" << std::endl;
2976 htmlFileT <<
" <img src=\"HistMaxPosHF.png\" />" << std::endl;
2977 htmlFileT <<
"<br>" << std::endl;
2978 htmlFileT <<
"<h3> 6.B. Rate of bad TX position (<" << MIN_M[6][sub] <<
", >" << MAX_M[6][sub]
2979 <<
") in each channel for each depth. </h3>" << std::endl;
2980 htmlFileT <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
2982 htmlFileT <<
" <img src=\"MapRateMaxPosHB.png\" />" << std::endl;
2984 htmlFileT <<
" <img src=\"MapRateMaxPosHE.png\" />" << std::endl;
2986 htmlFileT <<
" <img src=\"MapRateMaxPosHO.png\" />" << std::endl;
2988 htmlFileT <<
" <img src=\"MapRateMaxPosHF.png\" />" << std::endl;
2989 htmlFileT <<
"<br>" << std::endl;
2991 htmlFileT <<
"</body> " << std::endl;
2992 htmlFileT <<
"</html> " << std::endl;
2996 htmlFileC <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
2997 htmlFileC <<
"<head>" << std::endl;
2998 htmlFileC <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
2999 htmlFileC <<
"<title> Raw Data Analyser </title>" << std::endl;
3000 htmlFileC <<
"<style type=\"text/css\">" << std::endl;
3001 htmlFileC <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }" 3003 htmlFileC <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
3004 htmlFileC <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; " 3005 "text-align: center;}" 3007 htmlFileC <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
3008 htmlFileC <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
3009 htmlFileC <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
3010 htmlFileC <<
"</style>" << std::endl;
3011 htmlFileC <<
"<body>" << std::endl;
3014 htmlFileC <<
"<h1> Criteria for calibration channels for HB, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3016 htmlFileC <<
"<h1> Criteria for calibration channels for HE, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3018 htmlFileC <<
"<h1> Criteria for calibration channels for HO, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3020 htmlFileC <<
"<h1> Criteria for calibration channels for HF, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3021 htmlFileC <<
"<br>" << std::endl;
3024 htmlFileC <<
"<h2> 1.Cc criterion: CapID errors for each channel.</h3>" << std::endl;
3025 htmlFileC <<
"<h3> 1.A. Rate of CapId failures in each channel for each depth.</h3>" << std::endl;
3026 htmlFileC <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3028 htmlFileC <<
" <img src=\"MapRateCapCalibHB.png\" />" << std::endl;
3030 htmlFileC <<
" <img src=\"MapRateCapCalibHE.png\" />" << std::endl;
3032 htmlFileC <<
" <img src=\"MapRateCapCalibHO.png\" />" << std::endl;
3034 htmlFileC <<
" <img src=\"MapRateCapCalibHF.png\" />" << std::endl;
3035 htmlFileC <<
"<br>" << std::endl;
3038 htmlFileC <<
"<h2> 2. Ac criterion: ADC amplitude collected over all TSs(Full Amplitude) for each channel. </h3>" 3040 htmlFileC <<
"<h3> 2.A. Full ADC amplitude distribution over all events, channels and depths.</h3>" << std::endl;
3041 htmlFileC <<
"<h4> Legend: Bins less " << MIN_C[2][sub] <<
" correpond to bad ADC amplitude </h4>" << std::endl;
3043 htmlFileC <<
" <img src=\"HistAmplCalibHB.png\" />" << std::endl;
3045 htmlFileC <<
" <img src=\"HistAmplCalibHE.png\" />" << std::endl;
3047 htmlFileC <<
" <img src=\"HistAmplCalibHO.png\" />" << std::endl;
3049 htmlFileC <<
" <img src=\"HistAmplCalibHF.png\" />" << std::endl;
3050 htmlFileC <<
"<br>" << std::endl;
3051 htmlFileC <<
"<h3> 2.B. Rate of bad ADC amplitude (<" << MIN_C[2][sub] <<
") in each channel for each depth. </h3>" 3053 htmlFileC <<
"<h4> Channel legend: white - good, other colours - bad. </h4>" << std::endl;
3055 htmlFileC <<
" <img src=\"MapRateAmplCalibHB.png\" />" << std::endl;
3057 htmlFileC <<
" <img src=\"MapRateAmplCalibHE.png\" />" << std::endl;
3059 htmlFileC <<
" <img src=\"MapRateAmplCalibHO.png\" />" << std::endl;
3061 htmlFileC <<
" <img src=\"MapRateAmplCalibHF.png\" />" << std::endl;
3062 htmlFileC <<
"<br>" << std::endl;
3065 htmlFileC <<
"<h2> 3. Wc criterion: RMS (width) of ADC amplutude for each channel.</h3>" << std::endl;
3066 htmlFileC <<
"<h3> 3.A. W distribution over all events, channel and depth.</h3>" << std::endl;
3067 htmlFileC <<
"<h4> Legend: Bins less " << MIN_C[3][sub] <<
" and more " << MAX_C[3][sub]
3068 <<
" correpond to bad RMS </h4>" << std::endl;
3070 htmlFileC <<
" <img src=\"HistRMSCalibHB.png\" />" << std::endl;
3072 htmlFileC <<
" <img src=\"HistRMSCalibHE.png\" />" << std::endl;
3074 htmlFileC <<
" <img src=\"HistRMSCalibHO.png\" />" << std::endl;
3076 htmlFileC <<
" <img src=\"HistRMSCalibHF.png\" />" << std::endl;
3077 htmlFileC <<
"<br>" << std::endl;
3078 htmlFileC <<
"<h3> 3.B. Rate of bad W (<" << MIN_C[3][sub] <<
",>" << MAX_C[3][sub]
3079 <<
") in each channel for each depth.</h3>" << std::endl;
3080 htmlFileC <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3082 htmlFileC <<
" <img src=\"MapRateRMSCalibHB.png\" />" << std::endl;
3084 htmlFileC <<
" <img src=\"MapRateRMSCalibHE.png\" />" << std::endl;
3086 htmlFileC <<
" <img src=\"MapRateRMSCalibHO.png\" />" << std::endl;
3088 htmlFileC <<
" <img src=\"MapRateRMSCalibHF.png\" />" << std::endl;
3089 htmlFileC <<
"<br>" << std::endl;
3092 htmlFileC <<
"<h2> 4. Rc criterion: Ratio ADC value sum over five near maximum (-2, -1, max, +1, +2) TS to ADC " 3093 "value sum over all TS for each channel. </h3>" 3095 htmlFileC <<
"<h3> 4.A. Ratio distribution over all events, channels and depths.</h3>" << std::endl;
3096 htmlFileC <<
"<h4> Legend: Bins less " << MIN_C[4][sub] <<
" and more " << MAX_C[4][sub]
3097 <<
" correpond to bad ratio </h4>" << std::endl;
3099 htmlFileC <<
" <img src=\"Hist43TStoAllTSCalibHB.png\" />" << std::endl;
3101 htmlFileC <<
" <img src=\"Hist43TStoAllTSCalibHE.png\" />" << std::endl;
3103 htmlFileC <<
" <img src=\"Hist43TStoAllTSCalibHO.png\" />" << std::endl;
3105 htmlFileC <<
" <img src=\"Hist43TStoAllTSCalibHF.png\" />" << std::endl;
3106 htmlFileC <<
"<br>" << std::endl;
3107 htmlFileC <<
"<h3> 4.B. Rate of bad Ratio (<" << MIN_C[4][sub] <<
", >" << MAX_C[4][sub]
3108 <<
") in each channel for each depth.</h3>" << std::endl;
3109 htmlFileC <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3111 htmlFileC <<
" <img src=\"MapRate43TStoAllTSCalibHB.png\" />" << std::endl;
3113 htmlFileC <<
" <img src=\"MapRate43TStoAllTSCalibHE.png\" />" << std::endl;
3115 htmlFileC <<
" <img src=\"MapRate43TStoAllTSCalibHO.png\" />" << std::endl;
3117 htmlFileC <<
" <img src=\"MapRate43TStoAllTSCalibHF.png\" />" << std::endl;
3118 htmlFileC <<
"<br>" << std::endl;
3121 htmlFileC <<
"<h2> 5. TNc criterion: Mean TS position for each channel.</h3>" << std::endl;
3122 htmlFileC <<
"<h3> 5.A. TN position distribution over all events, channels and depths.</h3>" << std::endl;
3123 htmlFileC <<
"<h4> Legend: Bins less " << MIN_C[5][sub] <<
" and more " << MAX_C[5][sub]
3124 <<
" correpond to bad position </h4>" << std::endl;
3126 htmlFileC <<
" <img src=\"HistMeanPosCalibHB.png\" />" << std::endl;
3128 htmlFileC <<
" <img src=\"HistMeanPosCalibHE.png\" />" << std::endl;
3130 htmlFileC <<
" <img src=\"HistMeanPosCalibHO.png\" />" << std::endl;
3132 htmlFileC <<
" <img src=\"HistMeanPosCalibHF.png\" />" << std::endl;
3133 htmlFileC <<
"<br>" << std::endl;
3134 htmlFileC <<
"<h3> 5.B. Rate of bad TN position (<" << MIN_C[5][sub] <<
", >" << MAX_C[5][sub]
3135 <<
") in each channel for each depth. </h3>" << std::endl;
3136 htmlFileC <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3138 htmlFileC <<
" <img src=\"MapRateMeanPosCalibHB.png\" />" << std::endl;
3140 htmlFileC <<
" <img src=\"MapRateMeanPosCalibHE.png\" />" << std::endl;
3142 htmlFileC <<
" <img src=\"MapRateMeanPosCalibHO.png\" />" << std::endl;
3144 htmlFileC <<
" <img src=\"MapRateMeanPosCalibHF.png\" />" << std::endl;
3145 htmlFileC <<
"<br>" << std::endl;
3148 htmlFileC <<
"<h2> 6.TXc criterion: Maximum TS position for each channel.</h3>" << std::endl;
3149 htmlFileC <<
"<h3> 6.A. TX position distribution over all events, channel and depth.</h3>" << std::endl;
3150 htmlFileC <<
"<h4> Legend: Bins less " << MIN_C[6][sub] <<
" and more " << MAX_C[6][sub]
3151 <<
" correpond to bad position </h4>" << std::endl;
3153 htmlFileC <<
" <img src=\"HistMaxPosCalibHB.png\" />" << std::endl;
3155 htmlFileC <<
" <img src=\"HistMaxPosCalibHE.png\" />" << std::endl;
3157 htmlFileC <<
" <img src=\"HistMaxPosCalibHO.png\" />" << std::endl;
3159 htmlFileC <<
" <img src=\"HistMaxPosCalibHF.png\" />" << std::endl;
3160 htmlFileC <<
"<br>" << std::endl;
3161 htmlFileC <<
"<h3> 6.B. Rate of bad TX position (<" << MIN_C[6][sub] <<
", >" << MAX_C[6][sub]
3162 <<
") in each channel for each depth. </h3>" << std::endl;
3163 htmlFileC <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3165 htmlFileC <<
" <img src=\"MapRateMaxPosCalibHB.png\" />" << std::endl;
3167 htmlFileC <<
" <img src=\"MapRateMaxPosCalibHE.png\" />" << std::endl;
3169 htmlFileC <<
" <img src=\"MapRateMaxPosCalibHO.png\" />" << std::endl;
3171 htmlFileC <<
" <img src=\"MapRateMaxPosCalibHF.png\" />" << std::endl;
3172 htmlFileC <<
"<br>" << std::endl;
3174 htmlFileC <<
"</body> " << std::endl;
3175 htmlFileC <<
"</html> " << std::endl;
3179 htmlFileD <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
3180 htmlFileD <<
"<head>" << std::endl;
3181 htmlFileD <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
3182 htmlFileD <<
"<title> Remote Monitoring Tool Global </title>" << std::endl;
3183 htmlFileD <<
"<style type=\"text/css\">" << std::endl;
3184 htmlFileD <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }" 3186 htmlFileD <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
3187 htmlFileD <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; " 3188 "text-align: center;}" 3190 htmlFileD <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
3191 htmlFileD <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
3192 htmlFileD <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
3193 htmlFileD <<
"</style>" << std::endl;
3194 htmlFileD <<
"<body>" << std::endl;
3197 htmlFileD <<
"<h1> Response drift for HB: Current RUN = " <<
runnumber <<
", Reference RUN = " << refrunnumber
3198 <<
" </h1>" << std::endl;
3200 htmlFileD <<
"<h1> Response drift for HE: Current RUN = " <<
runnumber <<
", Reference RUN = " << refrunnumber
3201 <<
" </h1>" << std::endl;
3203 htmlFileD <<
"<h1> Response drift for HO: Current RUN = " <<
runnumber <<
", Reference RUN = " << refrunnumber
3204 <<
" </h1>" << std::endl;
3206 htmlFileD <<
"<h1> Response drift for HF: Current RUN = " <<
runnumber <<
", Reference RUN = " << refrunnumber
3207 <<
" </h1>" << std::endl;
3208 htmlFileD <<
"<br>" << std::endl;
3211 htmlFileD <<
"<h2> 1. Gain Stability (GS) </h3>" << std::endl;
3212 htmlFileD <<
"<h3> 1.A. Averaged channel response, collected over all TS, for Current run in each channel for each " 3215 htmlFileD <<
"<h4> Channel legend: colour means cooresponding value of mean response. </h4>" << std::endl;
3217 htmlFileD <<
" <img src=\"MapRateAmpl1HB.png\" />" << std::endl;
3219 htmlFileD <<
" <img src=\"MapRateAmpl1HE.png\" />" << std::endl;
3221 htmlFileD <<
" <img src=\"MapRateAmpl1HO.png\" />" << std::endl;
3223 htmlFileD <<
" <img src=\"MapRateAmpl1HF.png\" />" << std::endl;
3224 htmlFileD <<
"<br>" << std::endl;
3225 htmlFileD <<
"<h3> 1.B. Averaged channel response, collected over all TS, for Reference run in each channel for " 3228 htmlFileD <<
"<h4> Channel legend: colour means cooresponding value of mean response. </h4>" << std::endl;
3230 htmlFileD <<
" <img src=\"MapRateAmpl2HB.png\" />" << std::endl;
3232 htmlFileD <<
" <img src=\"MapRateAmpl2HE.png\" />" << std::endl;
3234 htmlFileD <<
" <img src=\"MapRateAmpl2HO.png\" />" << std::endl;
3236 htmlFileD <<
" <img src=\"MapRateAmpl2HF.png\" />" << std::endl;
3237 htmlFileD <<
"<br>" << std::endl;
3238 htmlFileD <<
"<h3> 1.C. Relative difference between Current run and Current run distribution over all events, " 3239 "channels for each depth.</h3>" 3241 htmlFileD <<
"<h4> Legend: Bins less -" << porog[sub] <<
"% and more +" << porog[sub]
3242 <<
"% correpond to bad relative difference position </h4>" << std::endl;
3244 htmlFileD <<
" <img src=\"HistAmplDriftDepthHB.png\" />" << std::endl;
3246 htmlFileD <<
" <img src=\"HistAmplDriftDepthHE.png\" />" << std::endl;
3248 htmlFileD <<
" <img src=\"HistAmplDriftDepthHO.png\" />" << std::endl;
3250 htmlFileD <<
" <img src=\"HistAmplDriftDepthHF.png\" />" << std::endl;
3251 htmlFileD <<
"<br>" << std::endl;
3252 htmlFileD <<
"<h3> 1.D. Rate of bad relative difference (<-" << porog[sub] <<
", >+" << porog[sub]
3253 <<
") in each channel for each depth.</h3>" << std::endl;
3254 htmlFileD <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3256 htmlFileD <<
" <img src=\"MapRateAmplDriftHB.png\" />" << std::endl;
3258 htmlFileD <<
" <img src=\"MapRateAmplDriftHE.png\" />" << std::endl;
3260 htmlFileD <<
" <img src=\"MapRateAmplDriftHO.png\" />" << std::endl;
3262 htmlFileD <<
" <img src=\"MapRateAmplDriftHF.png\" />" << std::endl;
3263 htmlFileD <<
"<br>" << std::endl;
3265 htmlFileD <<
"</body> " << std::endl;
3266 htmlFileD <<
"</html> " << std::endl;
3270 htmlFileP <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
3271 htmlFileP <<
"<head>" << std::endl;
3272 htmlFileP <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
3273 htmlFileP <<
"<title> Remote Monitoring Tool Global</title>" << std::endl;
3274 htmlFileP <<
"<style type=\"text/css\">" << std::endl;
3275 htmlFileP <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }" 3277 htmlFileP <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
3278 htmlFileP <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; " 3279 "text-align: center;}" 3281 htmlFileP <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
3282 htmlFileP <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
3283 htmlFileP <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
3284 htmlFileP <<
"</style>" << std::endl;
3285 htmlFileP <<
"<body>" << std::endl;
3288 htmlFileP <<
"<h1> Pedestals for HB, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3290 htmlFileP <<
"<h1> Pedestals for HE, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3292 htmlFileP <<
"<h1> Pedestals for HO, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3294 htmlFileP <<
"<h1> Pedestals for HF, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3295 htmlFileP <<
"<br>" << std::endl;
3298 htmlFileP <<
"<h2> 1.Pm criterion: Pedestals for each CapID .</h3>" << std::endl;
3299 htmlFileP <<
"<h3> 1.A. Pedestal distribution over all events, channels for each CapID and all depths.</h3>" 3301 htmlFileP <<
"<h4> Legend: Bins less " << Pedest[0][sub] <<
" correpond to bad Pedestals </h4>" << std::endl;
3303 htmlFileP <<
" <img src=\"HistPedestalsHB.png\" />" << std::endl;
3305 htmlFileP <<
" <img src=\"HistPedestalsHE.png\" />" << std::endl;
3307 htmlFileP <<
" <img src=\"HistPedestalsHO.png\" />" << std::endl;
3309 htmlFileP <<
" <img src=\"HistPedestalsHF.png\" />" << std::endl;
3310 htmlFileP <<
"<br>" << std::endl;
3311 htmlFileP <<
"<h3> 1.B. Rate of channels at very low Pedestals at least in one CapID for each depth.</h3>" 3313 htmlFileP <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3315 htmlFileP <<
" <img src=\"MapRatePedHB.png\" />" << std::endl;
3317 htmlFileP <<
" <img src=\"MapRatePedHE.png\" />" << std::endl;
3319 htmlFileP <<
" <img src=\"MapRatePedHO.png\" />" << std::endl;
3321 htmlFileP <<
" <img src=\"MapRatePedHF.png\" />" << std::endl;
3324 htmlFileP <<
"<h2> 2.pWm criterion: Pedestal Widths for each CapID .</h3>" << std::endl;
3325 htmlFileP <<
"<h3> 2.A. Pedestal Widths distribution over all events, channels for each CapID and all depths.</h3>" 3327 htmlFileP <<
"<h4> Legend: Bins less " << Pedest[1][sub] <<
" correpond to bad Pedestal Widths </h4>" << std::endl;
3329 htmlFileP <<
" <img src=\"HistPedestalWidthsHB.png\" />" << std::endl;
3331 htmlFileP <<
" <img src=\"HistPedestalWidthsHE.png\" />" << std::endl;
3333 htmlFileP <<
" <img src=\"HistPedestalWidthsHO.png\" />" << std::endl;
3335 htmlFileP <<
" <img src=\"HistPedestalWidthsHF.png\" />" << std::endl;
3336 htmlFileP <<
"<br>" << std::endl;
3337 htmlFileP <<
"<h3> 2.B. Rate of channels at very low Pedestal Widths at least in one CapID for each depth.</h3>" 3339 htmlFileP <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3341 htmlFileP <<
" <img src=\"MapRatePedWidthsHB.png\" />" << std::endl;
3343 htmlFileP <<
" <img src=\"MapRatePedWidthsHE.png\" />" << std::endl;
3345 htmlFileP <<
" <img src=\"MapRatePedWidthsHO.png\" />" << std::endl;
3347 htmlFileP <<
" <img src=\"MapRatePedWidthsHF.png\" />" << std::endl;
3350 htmlFileP <<
"<h2> 3.Pedestal and pedestalWidths vs Amplitude .</h3>" << std::endl;
3351 htmlFileP <<
"<h3> 3.A. Correlation of Pedestal(pedestalWidths) and Amplitude over all channels and events .</h3>" 3353 htmlFileP <<
"<h4> Legend: colour - entries </h4>" << std::endl;
3355 htmlFileP <<
"<img src=\"CorrelationsMapPedestalVsfullAmplitudeHB.png\" />" << std::endl;
3357 htmlFileP <<
"<img src=\"CorrelationsMapPedestalVsfullAmplitudeHE.png\" />" << std::endl;
3359 htmlFileP <<
"<img src=\"CorrelationsMapPedestalVsfullAmplitudeHO.png\" />" << std::endl;
3361 htmlFileP <<
"<img src=\"CorrelationsMapPedestalVsfullAmplitudeHF.png\" />" << std::endl;
3362 htmlFileP <<
"<br>" << std::endl;
3366 htmlFileS <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
3367 htmlFileS <<
"<head>" << std::endl;
3368 htmlFileS <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
3369 htmlFileS <<
"<title> Remote Monitoring Tool Global</title>" << std::endl;
3370 htmlFileS <<
"<style type=\"text/css\">" << std::endl;
3371 htmlFileS <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }" 3373 htmlFileS <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
3374 htmlFileS <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; " 3375 "text-align: center;}" 3377 htmlFileS <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
3378 htmlFileS <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
3379 htmlFileS <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
3380 htmlFileS <<
"</style>" << std::endl;
3381 htmlFileS <<
"<body>" << std::endl;
3384 htmlFileS <<
"<h1> ADC Shape for HB, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3386 htmlFileS <<
"<h1> ADC Shape for HE, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3388 htmlFileS <<
"<h1> ADC Shape for HO, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3390 htmlFileS <<
"<h1> ADC Shape for HF, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3391 htmlFileP <<
"<br>" << std::endl;
3393 htmlFileS <<
"<h2> 1.Mean ADC Shape </h3>" << std::endl;
3394 htmlFileS <<
"<h3> 1.A. ADC shape averaged over all good channels, depth and events.</h3>" << std::endl;
3397 htmlFileS <<
" <img src=\"HistGoodTSshapesHB.png\" />" << std::endl;
3399 htmlFileS <<
" <img src=\"HistGoodTSshapesHE.png\" />" << std::endl;
3401 htmlFileS <<
" <img src=\"HistGoodTSshapesHO.png\" />" << std::endl;
3403 htmlFileS <<
" <img src=\"HistGoodTSshapesHF.png\" />" << std::endl;
3404 htmlFileS <<
"<br>" << std::endl;
3405 htmlFileS <<
"<h3> 1.B. ADC shape averaged over all bad channels, depth and events. Bad channels are selected by 5 " 3406 "criteria: CapId, A, W, P, Pw</h3>" 3410 htmlFileS <<
" <img src=\"HistBadTSshapesHB.png\" />" << std::endl;
3412 htmlFileS <<
" <img src=\"HistBadTSshapesHE.png\" />" << std::endl;
3414 htmlFileS <<
" <img src=\"HistBadTSshapesHO.png\" />" << std::endl;
3416 htmlFileS <<
" <img src=\"HistBadTSshapesHF.png\" />" << std::endl;
3418 htmlFileS <<
"<h2> 2. ADC in Time Slice </h3>" << std::endl;
3419 htmlFileS <<
"<h3> 2.A. ADC counts histogrammed over all channels, depth and events.</h3>" << std::endl;
3422 htmlFileS <<
" <img src=\"Hist_ADC_HB_All.png\" />" << std::endl;
3424 htmlFileS <<
" <img src=\"Hist_ADC_HE_All.png\" />" << std::endl;
3426 htmlFileS <<
" <img src=\"Hist_ADC_HO_All.png\" />" << std::endl;
3428 htmlFileS <<
" <img src=\"Hist_ADC_HF_All.png\" />" << std::endl;
3429 htmlFileS <<
"<br>" << std::endl;
3430 htmlFileS <<
"<h3> 2.B. ADC counts histogrammed over all channels and events for each depth separately. </h3>" 3434 htmlFileS <<
" <img src=\"Hist_ADC_HB_DS.png\" />" << std::endl;
3436 htmlFileS <<
" <img src=\"Hist_ADC_HE_DS.png\" />" << std::endl;
3438 htmlFileS <<
" <img src=\"Hist_ADC_HO_DS.png\" />" << std::endl;
3440 htmlFileS <<
" <img src=\"Hist_ADC_HF_DS.png\" />" << std::endl;
3442 htmlFileS <<
"<h2> 3. ADC Sum in Time Slice </h3>" << std::endl;
3443 htmlFileS <<
"<h3> 3.A. ADC Sum over all channels histogrammed over all events for each depth separately. </h3>" 3447 htmlFileS <<
" <img src=\"Hist_SumADC_HB.png\" />" << std::endl;
3449 htmlFileS <<
" <img src=\"Hist_SumADC_HE.png\" />" << std::endl;
3451 htmlFileS <<
" <img src=\"Hist_SumADC_HO.png\" />" << std::endl;
3453 htmlFileS <<
" <img src=\"Hist_SumADC_HF.png\" />" << std::endl;
3455 htmlFileS <<
"<h3> 3.B. ADC Sum over all channels histogrammed over all events for each depth separately. </h3>" 3459 htmlFileS <<
" <img src=\"Hist_SumADC_HB0.png\" />" << std::endl;
3461 htmlFileS <<
" <img src=\"Hist_SumADC_HE0.png\" />" << std::endl;
3463 htmlFileS <<
" <img src=\"Hist_SumADC_HO0.png\" />" << std::endl;
3465 htmlFileS <<
" <img src=\"Hist_SumADC_HF0.png\" />" << std::endl;
3467 htmlFileS <<
"<h3> 3.C. ADC Sum over all channels histogrammed over all events for each depth separately. </h3>" 3471 htmlFileS <<
" <img src=\"Hist_SumADC_HB1.png\" />" << std::endl;
3473 htmlFileS <<
" <img src=\"Hist_SumADC_HE1.png\" />" << std::endl;
3475 htmlFileS <<
" <img src=\"Hist_SumADC_HO1.png\" />" << std::endl;
3477 htmlFileS <<
" <img src=\"Hist_SumADC_HF1.png\" />" << std::endl;
3487 for (
int sub = 1; sub <= 4; sub++) {
3490 htmlFile.open(
"HB.html");
3492 htmlFile.open(
"HE.html");
3494 htmlFile.open(
"HO.html");
3496 htmlFile.open(
"HF.html");
3498 htmlFile <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
3499 htmlFile <<
"<head>" << std::endl;
3500 htmlFile <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
3501 htmlFile <<
"<title> Remote Monitoring Tool </title>" << std::endl;
3502 htmlFile <<
"<style type=\"text/css\">" << std::endl;
3503 htmlFile <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }" 3505 htmlFile <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
3506 htmlFile <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; " 3507 "text-align: center;}" 3509 htmlFile <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
3510 htmlFile <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
3511 htmlFile <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
3512 htmlFile <<
" td.s5 { font-family: arial, arial ce, helvetica; background-color: #FF00FF; }" << std::endl;
3513 htmlFile <<
" td.s6 { font-family: arial, arial ce, helvetica; background-color: #9ACD32; }" << std::endl;
3514 htmlFile <<
" td.s7 { font-family: arial, arial ce, helvetica; background-color: #32CD32; }" << std::endl;
3515 htmlFile <<
" td.s8 { font-family: arial, arial ce, helvetica; background-color: #00FFFF; }" << std::endl;
3516 htmlFile <<
" td.s9 { font-family: arial, arial ce, helvetica; background-color: #FFE4E1; }" << std::endl;
3517 htmlFile <<
" td.s10 { font-family: arial, arial ce, helvetica; background-color: #A0522D; }" << std::endl;
3518 htmlFile <<
" td.s11 { font-family: arial, arial ce, helvetica; background-color: #1E90FF; }" << std::endl;
3519 htmlFile <<
" td.s12 { font-family: arial, arial ce, helvetica; background-color: #00BFFF; }" << std::endl;
3520 htmlFile <<
" td.s13 { font-family: arial, arial ce, helvetica; background-color: #FFFF00; }" << std::endl;
3521 htmlFile <<
" td.s14 { font-family: arial, arial ce, helvetica; background-color: #B8860B; }" << std::endl;
3522 htmlFile <<
"</style>" << std::endl;
3523 htmlFile <<
"<body>" << std::endl;
3525 htmlFile <<
"<h1> HCAL BARREL, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3527 htmlFile <<
"<h1> HCAL ENDCAP, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3529 htmlFile <<
"<h1> HCAL OUTER, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3531 htmlFile <<
"<h1> HCAL FORWARD, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3532 htmlFile <<
"<br>" << std::endl;
3534 htmlFile <<
"<a name=\"Top\"></a>\n";
3535 htmlFile <<
"<b>Contents:<br>\n";
3536 htmlFile <<
"1. <a href=\"#AnalysisResults\">Analysis results</a><br>\n";
3537 htmlFile <<
"2. <a href=\"#Status\">Status</a><br>\n";
3538 htmlFile <<
"2A. <a href=\"#ChannelMap\">Channel map</a><br>\n";
3542 htmlFile <<
"<a name=\"AnalysisResults\"></a>\n";
3544 htmlFile <<
"<h2> 1. Analysis results for HB</h2>" << std::endl;
3546 htmlFile <<
"<h2> 1. Analysis results for HE</h2>" << std::endl;
3548 htmlFile <<
"<h2> 1. Analysis results for HO</h2>" << std::endl;
3550 htmlFile <<
"<h2> 1. Analysis results for HF</h2>" << std::endl;
3551 htmlFile <<
"<table width=\"400\">" << std::endl;
3552 htmlFile <<
"<tr>" << std::endl;
3556 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3557 <<
runnumber <<
"/HB_Tile.html\">Megatile Channels</a></td>" << std::endl;
3562 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3563 <<
runnumber <<
"/HB_Pedestals.html\">Pedestals</a></td>" << std::endl;
3564 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3565 <<
runnumber <<
"/HB_Shapes.html\">ADC Shapes</a></td>" << std::endl;
3569 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3570 <<
runnumber <<
"/HE_Tile.html\">Megatile Channels</a></td>" << std::endl;
3575 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3576 <<
runnumber <<
"/HE_Pedestals.html\">Pedestals</a></td>" << std::endl;
3577 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3578 <<
runnumber <<
"/HE_Shapes.html\">ADC Shapes</a></td>" << std::endl;
3581 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3582 <<
runnumber <<
"/HO_Tile.html\">Megatile Channels</a></td>" << std::endl;
3585 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3586 <<
runnumber <<
"/HO_Pedestals.html\">Pedestals</a></td>" << std::endl;
3587 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3588 <<
runnumber <<
"/HO_Shapes.html\">ADC Shapes</a></td>" << std::endl;
3591 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3592 <<
runnumber <<
"/HF_Tile.html\">Megatile Channels</a></td>" << std::endl;
3595 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3596 <<
runnumber <<
"/HF_Pedestals.html\">Pedestals</a></td>" << std::endl;
3597 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 3598 <<
runnumber <<
"/HF_Shapes.html\">ADC Shapes</a></td>" << std::endl;
3601 htmlFile <<
"</tr>" << std::endl;
3602 htmlFile <<
"</table>" << std::endl;
3603 htmlFile <<
"<br>" << std::endl;
3605 htmlFile <<
"<a name=\"Status\"></a>\n";
3607 htmlFile <<
"<h2> 2.Status HB over all criteria </h2>" << std::endl;
3609 htmlFile <<
"<h2> 2.Status HE over all criteria </h2>" << std::endl;
3611 htmlFile <<
"<h2> 2.Status HO over all criteria </h2>" << std::endl;
3613 htmlFile <<
"<h2> 2.Status HF over all criteria </h2>" << std::endl;
3615 htmlFile <<
"<a name=\"ChannelMap\"></a>\n";
3616 htmlFile <<
"<h3> 2.A.Channel map for each Depth </h3>" << std::endl;
3617 htmlFile <<
"<h4> Channel legend: green - good, not yellow - suspicious(rate of failures at least 0.1), white - " 3618 "not applicable or out of range </h4>" 3621 htmlFile <<
" <img src=\"MAPHB.png\" />" << std::endl;
3623 htmlFile <<
" <img src=\"MAPHE.png\" />" << std::endl;
3625 htmlFile <<
" <img src=\"MAPHO.png\" />" << std::endl;
3627 htmlFile <<
" <img src=\"MAPHF.png\" />" << std::endl;
3628 htmlFile <<
"<br>" << std::endl;
3629 htmlFile <<
"<a href=\"#Top\">to top</a><br>\n";
3994 htmlFile <<
"</body> " << std::endl;
3995 htmlFile <<
"</html> " << std::endl;
4048 htmlFile.open(
"MAP.html");
4049 htmlFile <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
4050 htmlFile <<
"<head>" << std::endl;
4051 htmlFile <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
4052 htmlFile <<
"<title> Remote Monitoring Tool </title>" << std::endl;
4053 htmlFile <<
"<style type=\"text/css\">" << std::endl;
4054 htmlFile <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }" 4056 htmlFile <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
4057 htmlFile <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; " 4058 "text-align: center;}" 4060 htmlFile <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
4061 htmlFile <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
4062 htmlFile <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
4063 htmlFile <<
" td.s5 { font-family: arial, arial ce, helvetica; background-color: #FF00FF; }" << std::endl;
4064 htmlFile <<
" td.s6 { font-family: arial, arial ce, helvetica; background-color: #9ACD32; }" << std::endl;
4065 htmlFile <<
" td.s7 { font-family: arial, arial ce, helvetica; background-color: #32CD32; }" << std::endl;
4066 htmlFile <<
"</style>" << std::endl;
4067 htmlFile <<
"<body>" << std::endl;
4069 htmlFile <<
"<h1> Remote Monitoring Tool, RUN = " <<
runnumber <<
". </h1>" << std::endl;
4070 htmlFile <<
"<br>" << std::endl;
4072 htmlFile <<
"<h2> 1. Analysis results for subdetectors </h2>" << std::endl;
4073 htmlFile <<
"<table width=\"400\">" << std::endl;
4074 htmlFile <<
"<tr>" << std::endl;
4084 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 4085 <<
runnumber <<
"/HB.html\">HB</a></td>" << std::endl;
4086 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 4087 <<
runnumber <<
"/HE.html\">HE</a></td>" << std::endl;
4088 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 4089 <<
runnumber <<
"/HO.html\">HO</a></td>" << std::endl;
4090 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_" 4091 <<
runnumber <<
"/HF.html\">HF</a></td>" << std::endl;
4093 htmlFile <<
"</tr>" << std::endl;
4094 htmlFile <<
"</table>" << std::endl;
4095 htmlFile <<
"<br>" << std::endl;
4097 htmlFile <<
"<h2> 2. HCAL status over all criteria and subdetectors </h2>" << std::endl;
4098 htmlFile <<
"<h3> 2.A. Channels in detector space </h3>" << std::endl;
4099 htmlFile <<
"<h4> Legend for channel status: green - good, others - may be a problems, white - not applicable or out " 4102 htmlFile <<
" <img src=\"MAP.png\" />" << std::endl;
4103 htmlFile <<
"<br>" << std::endl;
4105 htmlFile <<
"<h3> 2.B. List of Bad channels </h3>" << std::endl;
4109 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/HELP.html\"> " 4110 "Description of criteria for bad channel selection</a></td>" 4113 htmlFile <<
"<table>" << std::endl;
4115 htmlFile <<
"<td class=\"s4\" align=\"center\">#</td>" << std::endl;
4116 htmlFile <<
"<td class=\"s1\" align=\"center\">ETA</td>" << std::endl;
4117 htmlFile <<
"<td class=\"s1\" align=\"center\">PHI</td>" << std::endl;
4118 htmlFile <<
"<td class=\"s1\" align=\"center\">DEPTH</td>" << std::endl;
4119 htmlFile <<
"<td class=\"s1\" align=\"center\">RBX</td>" << std::endl;
4120 htmlFile <<
"<td class=\"s1\" align=\"center\">RM</td>" << std::endl;
4121 htmlFile <<
"<td class=\"s1\" align=\"center\">PIXEL</td>" << std::endl;
4122 htmlFile <<
"<td class=\"s1\" align=\"center\">RM_FIBER</td>" << std::endl;
4123 htmlFile <<
"<td class=\"s1\" align=\"center\">FIBER_CH</td>" << std::endl;
4124 htmlFile <<
"<td class=\"s1\" align=\"center\">QIE</td>" << std::endl;
4125 htmlFile <<
"<td class=\"s1\" align=\"center\">ADC</td>" << std::endl;
4126 htmlFile <<
"<td class=\"s1\" align=\"center\">CRATE</td>" << std::endl;
4127 htmlFile <<
"<td class=\"s1\" align=\"center\">DCC</td>" << std::endl;
4128 htmlFile <<
"<td class=\"s1\" align=\"center\">SPIGOT</td>" << std::endl;
4129 htmlFile <<
"<td class=\"s1\" align=\"center\">HTR_FIBER</td>" << std::endl;
4130 htmlFile <<
"<td class=\"s1\" align=\"center\">HTR_SLOT</td>" << std::endl;
4131 htmlFile <<
"<td class=\"s1\" align=\"center\">HTR_FPGA</td>" << std::endl;
4132 htmlFile <<
"<td class=\"s5\" align=\"center\">RMT-criteria</td>" << std::endl;
4133 htmlFile <<
"</tr>" << std::endl;
4177 htmlFile <<
"</table>" << std::endl;
4178 htmlFile <<
"<br>" << std::endl;
4320 htmlFile <<
"</body> " << std::endl;
4321 htmlFile <<
"</html> " << std::endl;
int main(int argc, char *argv[])