24 #include <TPaveText.h>
35 gROOT->SetStyle(
"Plain");
36 gStyle->SetOptStat(0);
37 gStyle->SetOptTitle(1);
44 sprintf(refname,
"%s",
argv[2]);
46 cout <<
fname <<
" " << refname << std::endl;
55 for (
unsigned int i = promt.size() - 11;
i < promt.size() - 5;
i++)
57 string refrunnumber =
"";
59 for (
unsigned int i = promt.size() - 11;
i < promt.size() - 5;
i++)
60 refrunnumber += refname[
i];
62 TFile *hfile =
new TFile(
fname,
"READ");
63 TFile *hreffile =
new TFile(refname,
"READ");
66 double MIN_M[7][5] = {{0., 0., 0., 0., 0.},
69 {0, 1.0, 1.0, 0.2, 0.1},
70 {0, 0.10, 0.10, 0.18, 0.30},
71 {0, 0.8, 0.8, 0.8, 0.1},
72 {0, -0.5, -0.5, -0.5, -0.5}};
73 double MAX_M[7][5] = {{0., 0., 0., 0., 0.},
75 {0, 900, 900, 9000, 3000},
76 {0, 3.9, 3.9, 4.4, 2.0},
77 {0, 0.95, 0.98, 0.96, 1.04},
78 {0, 8.0, 8.0, 8.0, 2.8},
79 {0, 6.5, 6.5, 6.5, 3.5}};
82 double MIN_C[7][5] = {{0., 0., 0., 0., 0.},
84 {0, 120., 120., 120., 60.},
85 {0, 1.0, 1.0, 0.50, 0.2},
86 {0, 0.6, 0.64, 0.25, 0.25},
87 {0, 1.0, 1.0, 1.0, 1.0},
88 {0, 0.5, 0.5, 0.5, 0.5}};
89 double MAX_C[7][5] = {{0., 0., 0., 0., 0.},
91 {0, 1E20, 1E20, 1E20, 1E20},
92 {0, 2.3, 2.3, 3.0, 2.3},
93 {0, 1., 1., 1., 1.00},
94 {0, 5.5, 5.5, 3.5, 5.2},
95 {0, 8.5, 8.5, 8.5, 9.5}};
96 double porog[5] = {0., 2., 2., 5., 1.};
98 double Pedest[2][5] = {{0., 0.2, 0.9, 0.1, 0.2}, {0., 0.2, 0.2, 0.1, 0.16}};
104 TCanvas *cHB =
new TCanvas(
"cHB",
"cHB", 1000, 1000);
106 TCanvas *cHE =
new TCanvas(
"cHE",
"cHE", 1500, 1500);
108 TCanvas *cONE =
new TCanvas(
"cONE",
"cONE", 1500, 500);
109 TCanvas *cPED =
new TCanvas(
"cPED",
"cPED", 1000, 500);
111 TCanvas *cHF =
new TCanvas(
"cHF",
"cHF", 1000, 1000);
113 char *
str = (
char *)alloca(10000);
131 int k_min[5] = {0, 1, 1, 4, 1};
135 int k_max[5] = {0, 4, 7, 4, 4};
137 TH2F *Map_Ampl[33][5][ALLDEPTH];
138 TH2F *Map_SUB[5][ALLDEPTH];
139 TH1F *HistAmplDepth[22][5][ALLDEPTH];
140 TH1F *HistAmpl[22][5];
142 TH1F *HistPed[3][5][4];
144 TH1F *hist_GoodTSshape[5];
145 TH1F *hist_GoodTSshape0[5];
146 TH1F *hist_BadTSshape[5];
147 TH1F *hist_BadTSshape0[5];
148 TH1F *hist_ADC_All[5];
149 TH1F *hist_ADC_DS[5][ALLDEPTH];
150 TH1F *hist_SumADC[5][ALLDEPTH];
151 TH1F *hist_SumADC0[5][ALLDEPTH];
152 TH1F *hist_SumADC1[5][ALLDEPTH];
154 Map_SUB[1][1] = (TH2F *)hfile->Get(
"h_mapDepth1_HB");
155 Map_SUB[1][2] = (TH2F *)hfile->Get(
"h_mapDepth2_HB");
156 Map_SUB[2][1] = (TH2F *)hfile->Get(
"h_mapDepth1_HE");
157 Map_SUB[2][2] = (TH2F *)hfile->Get(
"h_mapDepth2_HE");
158 Map_SUB[2][3] = (TH2F *)hfile->Get(
"h_mapDepth3_HE");
159 Map_SUB[3][4] = (TH2F *)hfile->Get(
"h_mapDepth4_HO");
160 Map_SUB[4][1] = (TH2F *)hfile->Get(
"h_mapDepth1_HF");
161 Map_SUB[4][2] = (TH2F *)hfile->Get(
"h_mapDepth2_HF");
163 Map_SUB[2][4] = (TH2F *)hfile->Get(
"h_mapDepth4_HE");
164 Map_SUB[2][5] = (TH2F *)hfile->Get(
"h_mapDepth5_HE");
165 Map_SUB[2][6] = (TH2F *)hfile->Get(
"h_mapDepth6_HE");
166 Map_SUB[2][7] = (TH2F *)hfile->Get(
"h_mapDepth7_HE");
167 Map_SUB[4][3] = (TH2F *)hfile->Get(
"h_mapDepth3_HF");
168 Map_SUB[4][4] = (TH2F *)hfile->Get(
"h_mapDepth4_HF");
170 Map_SUB[1][3] = (TH2F *)hfile->Get(
"h_mapDepth3_HB");
171 Map_SUB[1][4] = (TH2F *)hfile->Get(
"h_mapDepth4_HB");
176 for (
int sub = 1; sub <= 4; sub++) {
191 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
204 sprintf(
str,
"HB, Depth%d \b",
k);
206 sprintf(
str,
"HE, Depth%d \b",
k);
208 sprintf(
str,
"HO, Depth%d \b",
k);
210 sprintf(
str,
"HF, Depth%d \b",
k);
211 Map_SUB[sub][
k]->SetTitle(
str);
212 Map_SUB[sub][
k]->SetXTitle(
"#eta \b");
213 Map_SUB[sub][
k]->SetYTitle(
"#phi \b");
214 Map_SUB[sub][
k]->SetZTitle(
"Number of events \b");
216 Map_SUB[sub][
k]->SetTitleOffset(0.8,
"Z");
217 Map_SUB[sub][
k]->Draw(
"COLZ");
218 Map_SUB[sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
239 cHB->Print(
"MapRateEntryHB.png");
243 cHE->Print(
"MapRateEntryHE.png");
247 cONE->Print(
"MapRateEntryHO.png");
251 cHF->Print(
"MapRateEntryHF.png");
260 Map_Ampl[1][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1Error_HB");
261 Map_Ampl[1][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2Error_HB");
262 Map_Ampl[1][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1Error_HE");
263 Map_Ampl[1][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2Error_HE");
264 Map_Ampl[1][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3Error_HE");
265 Map_Ampl[1][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4Error_HO");
266 Map_Ampl[1][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1Error_HF");
267 Map_Ampl[1][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2Error_HF");
269 Map_Ampl[1][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4Error_HE");
270 Map_Ampl[1][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5Error_HE");
271 Map_Ampl[1][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6Error_HE");
272 Map_Ampl[1][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7Error_HE");
273 Map_Ampl[1][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3Error_HF");
274 Map_Ampl[1][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4Error_HF");
276 Map_Ampl[1][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3Error_HB");
277 Map_Ampl[1][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4Error_HB");
279 for (
int sub = 1; sub <= 4; sub++) {
294 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
303 Map_Ampl[1][sub][
k]->Divide(Map_Ampl[1][sub][
k], Map_SUB[sub][
k], 1, 1,
"B");
308 sprintf(
str,
"HB, Depth%d \b",
k);
310 sprintf(
str,
"HE, Depth%d \b",
k);
312 sprintf(
str,
"HO, Depth%d \b",
k);
314 sprintf(
str,
"HF, Depth%d \b",
k);
315 Map_Ampl[1][sub][
k]->SetTitle(
str);
316 Map_Ampl[1][sub][
k]->SetXTitle(
"#eta \b");
317 Map_Ampl[1][sub][
k]->SetYTitle(
"#phi \b");
318 Map_Ampl[1][sub][
k]->SetZTitle(
"Rate \b");
320 Map_Ampl[1][sub][
k]->SetTitleOffset(0.8,
"Z");
321 Map_Ampl[1][sub][
k]->Draw(
"COLZ");
322 Map_Ampl[1][sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
323 Map_Ampl[1][sub][
k]->GetZaxis()->SetRangeUser(0.0001, 1.);
343 cHB->Print(
"MapRateCapIDHB.png");
347 cHE->Print(
"MapRateCapIDHE.png");
351 cONE->Print(
"MapRateCapIDHO.png");
355 cHF->Print(
"MapRateCapIDHF.png");
364 Map_Ampl[2][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1ADCAmpl225_HB");
365 Map_Ampl[2][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2ADCAmpl225_HB");
366 Map_Ampl[2][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1ADCAmpl225_HE");
367 Map_Ampl[2][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2ADCAmpl225_HE");
368 Map_Ampl[2][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3ADCAmpl225_HE");
369 Map_Ampl[2][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4ADCAmpl225_HO");
370 Map_Ampl[2][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1ADCAmpl225_HF");
371 Map_Ampl[2][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2ADCAmpl225_HF");
373 Map_Ampl[2][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4ADCAmpl225_HE");
374 Map_Ampl[2][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5ADCAmpl225_HE");
375 Map_Ampl[2][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6ADCAmpl225_HE");
376 Map_Ampl[2][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7ADCAmpl225_HE");
377 Map_Ampl[2][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3ADCAmpl225_HF");
378 Map_Ampl[2][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4ADCAmpl225_HF");
380 Map_Ampl[2][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3ADCAmpl225_HB");
381 Map_Ampl[2][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4ADCAmpl225_HB");
383 HistAmpl[2][1] = (TH1F *)hfile->Get(
"h_ADCAmpl_HB");
384 HistAmpl[2][2] = (TH1F *)hfile->Get(
"h_ADCAmpl_HE");
385 HistAmpl[2][3] = (TH1F *)hfile->Get(
"h_ADCAmpl_HO");
386 HistAmpl[2][4] = (TH1F *)hfile->Get(
"h_ADCAmpl_HF");
392 Map_Ampl[3][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1Amplitude225_HB");
393 Map_Ampl[3][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2Amplitude225_HB");
394 Map_Ampl[3][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1Amplitude225_HE");
395 Map_Ampl[3][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2Amplitude225_HE");
396 Map_Ampl[3][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3Amplitude225_HE");
397 Map_Ampl[3][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4Amplitude225_HO");
398 Map_Ampl[3][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1Amplitude225_HF");
399 Map_Ampl[3][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2Amplitude225_HF");
401 Map_Ampl[3][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4Amplitude225_HE");
402 Map_Ampl[3][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5Amplitude225_HE");
403 Map_Ampl[3][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6Amplitude225_HE");
404 Map_Ampl[3][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7Amplitude225_HE");
405 Map_Ampl[3][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3Amplitude225_HF");
406 Map_Ampl[3][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4Amplitude225_HF");
408 Map_Ampl[3][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3Amplitude225_HB");
409 Map_Ampl[3][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4Amplitude225_HB");
411 HistAmpl[3][1] = (TH1F *)hfile->Get(
"h_Amplitude_HB");
412 HistAmpl[3][2] = (TH1F *)hfile->Get(
"h_Amplitude_HE");
413 HistAmpl[3][3] = (TH1F *)hfile->Get(
"h_Amplitude_HO");
414 HistAmpl[3][4] = (TH1F *)hfile->Get(
"h_Amplitude_HF");
420 Map_Ampl[4][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1Ampl047_HB");
421 Map_Ampl[4][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2Ampl047_HB");
422 Map_Ampl[4][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1Ampl047_HE");
423 Map_Ampl[4][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2Ampl047_HE");
424 Map_Ampl[4][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3Ampl047_HE");
425 Map_Ampl[4][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4Ampl047_HO");
426 Map_Ampl[4][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1Ampl047_HF");
427 Map_Ampl[4][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2Ampl047_HF");
429 Map_Ampl[4][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4Ampl047_HE");
430 Map_Ampl[4][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5Ampl047_HE");
431 Map_Ampl[4][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6Ampl047_HE");
432 Map_Ampl[4][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7Ampl047_HE");
433 Map_Ampl[4][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3Ampl047_HF");
434 Map_Ampl[4][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4Ampl047_HF");
436 Map_Ampl[4][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3Ampl047_HB");
437 Map_Ampl[4][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4Ampl047_HB");
439 HistAmpl[4][1] = (TH1F *)hfile->Get(
"h_Ampl_HB");
440 HistAmpl[4][2] = (TH1F *)hfile->Get(
"h_Ampl_HE");
441 HistAmpl[4][3] = (TH1F *)hfile->Get(
"h_Ampl_HO");
442 HistAmpl[4][4] = (TH1F *)hfile->Get(
"h_Ampl_HF");
448 Map_Ampl[5][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmeanA225_HB");
449 Map_Ampl[5][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmeanA225_HB");
450 Map_Ampl[5][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmeanA225_HE");
451 Map_Ampl[5][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmeanA225_HE");
452 Map_Ampl[5][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmeanA225_HE");
453 Map_Ampl[5][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmeanA225_HO");
454 Map_Ampl[5][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmeanA225_HF");
455 Map_Ampl[5][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmeanA225_HF");
457 Map_Ampl[5][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmeanA225_HE");
458 Map_Ampl[5][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5TSmeanA225_HE");
459 Map_Ampl[5][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6TSmeanA225_HE");
460 Map_Ampl[5][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7TSmeanA225_HE");
461 Map_Ampl[5][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmeanA225_HF");
462 Map_Ampl[5][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmeanA225_HF");
464 Map_Ampl[5][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmeanA225_HB");
465 Map_Ampl[5][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmeanA225_HB");
467 HistAmpl[5][1] = (TH1F *)hfile->Get(
"h_TSmeanA_HB");
468 HistAmpl[5][2] = (TH1F *)hfile->Get(
"h_TSmeanA_HE");
469 HistAmpl[5][3] = (TH1F *)hfile->Get(
"h_TSmeanA_HO");
470 HistAmpl[5][4] = (TH1F *)hfile->Get(
"h_TSmeanA_HF");
476 Map_Ampl[6][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmaxA225_HB");
477 Map_Ampl[6][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmaxA225_HB");
478 Map_Ampl[6][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmaxA225_HE");
479 Map_Ampl[6][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmaxA225_HE");
480 Map_Ampl[6][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmaxA225_HE");
481 Map_Ampl[6][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmaxA225_HO");
482 Map_Ampl[6][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1TSmaxA225_HF");
483 Map_Ampl[6][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2TSmaxA225_HF");
485 Map_Ampl[6][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmaxA225_HE");
486 Map_Ampl[6][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5TSmaxA225_HE");
487 Map_Ampl[6][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6TSmaxA225_HE");
488 Map_Ampl[6][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7TSmaxA225_HE");
489 Map_Ampl[6][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmaxA225_HF");
490 Map_Ampl[6][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmaxA225_HF");
492 Map_Ampl[6][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3TSmaxA225_HB");
493 Map_Ampl[6][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4TSmaxA225_HB");
495 HistAmpl[6][1] = (TH1F *)hfile->Get(
"h_TSmaxA_HB");
496 HistAmpl[6][2] = (TH1F *)hfile->Get(
"h_TSmaxA_HE");
497 HistAmpl[6][3] = (TH1F *)hfile->Get(
"h_TSmaxA_HO");
498 HistAmpl[6][4] = (TH1F *)hfile->Get(
"h_TSmaxA_HF");
501 for (
int sub = 1; sub <= 4; sub++) {
516 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
525 Map_Ampl[
test][sub][
k]->Divide(Map_Ampl[
test][sub][
k], Map_SUB[sub][
k], 1, 1,
"B");
530 sprintf(
str,
"HB, Depth%d \b",
k);
532 sprintf(
str,
"HE, Depth%d \b",
k);
534 sprintf(
str,
"HO, Depth%d \b",
k);
536 sprintf(
str,
"HF, Depth%d \b",
k);
537 Map_Ampl[
test][sub][
k]->SetTitle(
str);
538 Map_Ampl[
test][sub][
k]->SetXTitle(
"#eta \b");
539 Map_Ampl[
test][sub][
k]->SetYTitle(
"#phi \b");
540 Map_Ampl[
test][sub][
k]->SetZTitle(
"Rate \b");
542 Map_Ampl[
test][sub][
k]->SetTitleOffset(0.8,
"Z");
543 Map_Ampl[
test][sub][
k]->Draw(
"COLZ");
544 Map_Ampl[
test][sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
545 Map_Ampl[
test][sub][
k]->GetZaxis()->SetRangeUser(0.0001, 1.);
565 cHB->Print(
"MapRateAmplHB.png");
569 cHE->Print(
"MapRateAmplHE.png");
573 cONE->Print(
"MapRateAmplHO.png");
577 cHF->Print(
"MapRateAmplHF.png");
583 cHB->Print(
"MapRateRMSHB.png");
587 cHE->Print(
"MapRateRMSHE.png");
591 cONE->Print(
"MapRateRMSHO.png");
595 cHF->Print(
"MapRateRMSHF.png");
601 cHB->Print(
"MapRate43TStoAllTSHB.png");
605 cHE->Print(
"MapRate43TStoAllTSHE.png");
609 cONE->Print(
"MapRate43TStoAllTSHO.png");
613 cHF->Print(
"MapRate43TStoAllTSHF.png");
619 cHB->Print(
"MapRateMeanPosHB.png");
623 cHE->Print(
"MapRateMeanPosHE.png");
627 cONE->Print(
"MapRateMeanPosHO.png");
631 cHF->Print(
"MapRateMeanPosHF.png");
637 cHB->Print(
"MapRateMaxPosHB.png");
641 cHE->Print(
"MapRateMaxPosHE.png");
645 cONE->Print(
"MapRateMaxPosHO.png");
649 cHF->Print(
"MapRateMaxPosHF.png");
668 if (
test == 2 && sub == 2) {
670 TH1F *kjkjkhj2 = (TH1F *)hfile->Get(
"h_AmplitudeHEtest1");
672 kjkjkhj2->SetTitle(
"HE, All Depth: shunt1");
674 TH1F *kjkjkhj3 = (TH1F *)hfile->Get(
"h_AmplitudeHEtest6");
676 kjkjkhj3->SetTitle(
"HE, All Depth: shunt6");
678 if (
test == 2 && sub == 1) {
680 TH1F *kjkjkhb2 = (TH1F *)hfile->Get(
"h_AmplitudeHBtest1");
682 kjkjkhb2->SetTitle(
"HB, All Depth: shunt1");
684 TH1F *kjkjkhb3 = (TH1F *)hfile->Get(
"h_AmplitudeHBtest6");
686 kjkjkhb3->SetTitle(
"HB, All Depth: shunt6");
694 HistAmpl[
test][sub]->SetTitle(
"HB, All Depth: shunt6");
696 HistAmpl[
test][sub]->SetTitle(
"HE, All Depth: shunt6");
698 HistAmpl[
test][sub]->SetTitle(
"HO, All Depth");
700 HistAmpl[
test][sub]->SetTitle(
"HF, All Depth");
702 HistAmpl[
test][sub]->SetXTitle(
"ADC Amlitude in each event & cell \b");
704 HistAmpl[
test][sub]->SetXTitle(
"RMS in each event & cell \b");
706 HistAmpl[
test][sub]->SetXTitle(
"Ratio in each event & cell \b");
708 HistAmpl[
test][sub]->SetXTitle(
"Mean TS position in each event & cell \b");
710 HistAmpl[
test][sub]->SetXTitle(
"Max TS position in each event & cell \b");
711 HistAmpl[
test][sub]->SetYTitle(
"Number of cell-events \b");
712 HistAmpl[
test][sub]->SetLineColor(4);
713 HistAmpl[
test][sub]->SetLineWidth(2);
714 HistAmpl[
test][sub]->SetTitleOffset(1.4,
"Y");
715 HistAmpl[
test][sub]->Draw(
"");
722 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 5.);
724 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 1.);
726 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 9.);
728 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 9.);
731 double min_x[] = {MIN_M[
test][sub], MIN_M[
test][sub]};
732 double min_y[] = {0., 100000000.};
733 TGraph *MIN =
new TGraph(2, min_x, min_y);
734 MIN->SetLineStyle(2);
735 MIN->SetLineColor(2);
736 MIN->SetLineWidth(2 + 100 * 100);
737 MIN->SetFillStyle(3005);
738 MIN->SetFillColor(2);
740 double max_x[] = {MAX_M[
test][sub], MAX_M[
test][sub]};
741 double max_y[] = {0., 100000000.};
742 TGraph *MAX =
new TGraph(2, max_x, max_y);
743 MAX->SetLineStyle(2);
744 MAX->SetLineColor(2);
745 MAX->SetLineWidth(-2 - 100 * 100);
746 MAX->SetFillStyle(3004);
747 MAX->SetFillColor(2);
751 cONE->Print(
"HistAmplHB.png");
755 cONE->Print(
"HistAmplHE.png");
759 cONE->Print(
"HistAmplHO.png");
763 cONE->Print(
"HistAmplHF.png");
769 cONE->Print(
"HistRMSHB.png");
773 cONE->Print(
"HistRMSHE.png");
777 cONE->Print(
"HistRMSHO.png");
781 cONE->Print(
"HistRMSHF.png");
787 cONE->Print(
"Hist43TStoAllTSHB.png");
791 cONE->Print(
"Hist43TStoAllTSHE.png");
795 cONE->Print(
"Hist43TStoAllTSHO.png");
799 cONE->Print(
"Hist43TStoAllTSHF.png");
805 cONE->Print(
"HistMeanPosHB.png");
809 cONE->Print(
"HistMeanPosHE.png");
813 cONE->Print(
"HistMeanPosHO.png");
817 cONE->Print(
"HistMeanPosHF.png");
823 cONE->Print(
"HistMaxPosHB.png");
827 cONE->Print(
"HistMaxPosHE.png");
831 cONE->Print(
"HistMaxPosHO.png");
835 cONE->Print(
"HistMaxPosHF.png");
842 TH2F *Map_Calib[5][5];
844 Map_Calib[1][1] = (TH2F *)hfile->Get(
"h_map_HB");
845 Map_Calib[1][2] = (TH2F *)hfile->Get(
"h_map_HB");
846 Map_Calib[2][1] = (TH2F *)hfile->Get(
"h_map_HE");
847 Map_Calib[2][2] = (TH2F *)hfile->Get(
"h_map_HE");
848 Map_Calib[2][3] = (TH2F *)hfile->Get(
"h_map_HE");
849 Map_Calib[3][4] = (TH2F *)hfile->Get(
"h_map_HO");
850 Map_Calib[4][1] = (TH2F *)hfile->Get(
"h_map_HF");
851 Map_Calib[4][2] = (TH2F *)hfile->Get(
"h_map_HF");
857 for (
int sub = 1; sub <= 4; sub++) {
883 Map_Calib[sub][
k]->SetTitle(
str);
884 Map_Calib[sub][
k]->SetXTitle(
"#eta \b");
885 Map_Calib[sub][
k]->SetYTitle(
"#phi \b");
886 Map_Calib[sub][
k]->SetZTitle(
"Number of events\b");
888 Map_Calib[sub][
k]->SetTitleOffset(0.8,
"Z");
889 Map_Calib[sub][
k]->Draw(
"COLZ");
890 Map_Calib[sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
900 cONE->Print(
"MapRateCalibEntryHB.png");
904 cONE->Print(
"MapRateCalibEntryHE.png");
908 cONE->Print(
"MapRateCalibEntryHO.png");
912 cONE->Print(
"MapRateCalibEntryHF.png");
921 Map_Ampl[11][1][1] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HB");
922 Map_Ampl[11][1][2] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HB");
923 Map_Ampl[11][2][1] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HE");
924 Map_Ampl[11][2][2] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HE");
925 Map_Ampl[11][2][3] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HE");
926 Map_Ampl[11][3][4] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HO");
927 Map_Ampl[11][4][1] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HF");
928 Map_Ampl[11][4][2] = (TH2F *)hfile->Get(
"h_mapCapCalib047_HF");
930 for (
int sub = 1; sub <= 4; sub++) {
945 Map_Ampl[11][sub][
k]->Divide(Map_Ampl[11][sub][
k], Map_Calib[sub][
k], 1, 1,
"B");
957 Map_Ampl[11][sub][
k]->SetTitle(
str);
958 Map_Ampl[11][sub][
k]->SetXTitle(
"#eta \b");
959 Map_Ampl[11][sub][
k]->SetYTitle(
"#phi \b");
960 Map_Ampl[11][sub][
k]->SetZTitle(
"Rate \b");
961 Map_Ampl[11][sub][
k]->SetTitleOffset(0.75,
"Z");
962 Map_Ampl[11][sub][
k]->Draw(
"COLZ");
963 Map_Ampl[11][sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
964 Map_Ampl[11][sub][
k]->GetZaxis()->SetRangeUser(0.0001, 1.);
973 cONE->Print(
"MapRateCapCalibHB.png");
977 cONE->Print(
"MapRateCapCalibHE.png");
981 cONE->Print(
"MapRateCapCalibHO.png");
985 cONE->Print(
"MapRateCapCalibHF.png");
994 Map_Ampl[12][1][1] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HB");
995 Map_Ampl[12][1][2] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HB");
996 Map_Ampl[12][2][1] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HE");
997 Map_Ampl[12][2][2] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HE");
998 Map_Ampl[12][2][3] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HE");
999 Map_Ampl[12][3][4] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HO");
1000 Map_Ampl[12][4][1] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HF");
1001 Map_Ampl[12][4][2] = (TH2F *)hfile->Get(
"h_mapADCCalib047_HF");
1003 HistAmpl[12][1] = (TH1F *)hfile->Get(
"h_ADCCalib_HB");
1004 HistAmpl[12][2] = (TH1F *)hfile->Get(
"h_ADCCalib_HE");
1005 HistAmpl[12][3] = (TH1F *)hfile->Get(
"h_ADCCalib_HO");
1006 HistAmpl[12][4] = (TH1F *)hfile->Get(
"h_ADCCalib_HF");
1012 Map_Ampl[13][1][1] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HB");
1013 Map_Ampl[13][1][2] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HB");
1014 Map_Ampl[13][2][1] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HE");
1015 Map_Ampl[13][2][2] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HE");
1016 Map_Ampl[13][2][3] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HE");
1017 Map_Ampl[13][3][4] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HO");
1018 Map_Ampl[13][4][1] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HF");
1019 Map_Ampl[13][4][2] = (TH2F *)hfile->Get(
"h_mapWidthCalib047_HF");
1021 HistAmpl[13][1] = (TH1F *)hfile->Get(
"h_WidthCalib_HB");
1022 HistAmpl[13][2] = (TH1F *)hfile->Get(
"h_WidthCalib_HE");
1023 HistAmpl[13][3] = (TH1F *)hfile->Get(
"h_WidthCalib_HO");
1024 HistAmpl[13][4] = (TH1F *)hfile->Get(
"h_WidthCalib_HF");
1030 Map_Ampl[14][1][1] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HB");
1031 Map_Ampl[14][1][2] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HB");
1032 Map_Ampl[14][2][1] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HE");
1033 Map_Ampl[14][2][2] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HE");
1034 Map_Ampl[14][2][3] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HE");
1035 Map_Ampl[14][3][4] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HO");
1036 Map_Ampl[14][4][1] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HF");
1037 Map_Ampl[14][4][2] = (TH2F *)hfile->Get(
"h_mapRatioCalib047_HF");
1039 HistAmpl[14][1] = (TH1F *)hfile->Get(
"h_RatioCalib_HB");
1040 HistAmpl[14][2] = (TH1F *)hfile->Get(
"h_RatioCalib_HE");
1041 HistAmpl[14][3] = (TH1F *)hfile->Get(
"h_RatioCalib_HO");
1042 HistAmpl[14][4] = (TH1F *)hfile->Get(
"h_RatioCalib_HF");
1048 Map_Ampl[15][1][1] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HB");
1049 Map_Ampl[15][1][2] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HB");
1050 Map_Ampl[15][2][1] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HE");
1051 Map_Ampl[15][2][2] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HE");
1052 Map_Ampl[15][2][3] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HE");
1053 Map_Ampl[15][3][4] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HO");
1054 Map_Ampl[15][4][1] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HF");
1055 Map_Ampl[15][4][2] = (TH2F *)hfile->Get(
"h_mapTSmeanCalib047_HF");
1057 HistAmpl[15][1] = (TH1F *)hfile->Get(
"h_TSmeanCalib_HB");
1058 HistAmpl[15][2] = (TH1F *)hfile->Get(
"h_TSmeanCalib_HE");
1059 HistAmpl[15][3] = (TH1F *)hfile->Get(
"h_TSmeanCalib_HO");
1060 HistAmpl[15][4] = (TH1F *)hfile->Get(
"h_TSmeanCalib_HF");
1066 Map_Ampl[16][1][1] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HB");
1067 Map_Ampl[16][1][2] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HB");
1068 Map_Ampl[16][2][1] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HE");
1069 Map_Ampl[16][2][2] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HE");
1070 Map_Ampl[16][2][3] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HE");
1071 Map_Ampl[16][3][4] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HO");
1072 Map_Ampl[16][4][1] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HF");
1073 Map_Ampl[16][4][2] = (TH2F *)hfile->Get(
"h_mapTSmaxCalib047_HF");
1075 HistAmpl[16][1] = (TH1F *)hfile->Get(
"h_TSmaxCalib_HB");
1076 HistAmpl[16][2] = (TH1F *)hfile->Get(
"h_TSmaxCalib_HE");
1077 HistAmpl[16][3] = (TH1F *)hfile->Get(
"h_TSmaxCalib_HO");
1078 HistAmpl[16][4] = (TH1F *)hfile->Get(
"h_TSmaxCalib_HF");
1081 for (
int sub = 1; sub <= 4; sub++) {
1110 Map_Ampl[
test][sub][
k]->Divide(Map_Ampl[
test][sub][
k], Map_Calib[sub][
k], 1, 1,
"B");
1122 Map_Ampl[
test][sub][
k]->SetTitle(
str);
1123 Map_Ampl[
test][sub][
k]->SetXTitle(
"#eta \b");
1124 Map_Ampl[
test][sub][
k]->SetYTitle(
"#phi \b");
1125 Map_Ampl[
test][sub][
k]->SetZTitle(
"Rate \b");
1126 Map_Ampl[
test][sub][
k]->SetTitleOffset(0.8,
"Z");
1127 Map_Ampl[
test][sub][
k]->Draw(
"COLZ");
1128 Map_Ampl[
test][sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
1129 Map_Ampl[
test][sub][
k]->GetZaxis()->SetRangeUser(0.00001, 1.);
1138 cONE->Print(
"MapRateAmplCalibHB.png");
1142 cONE->Print(
"MapRateAmplCalibHE.png");
1146 cONE->Print(
"MapRateAmplCalibHO.png");
1150 cONE->Print(
"MapRateAmplCalibHF.png");
1156 cONE->Print(
"MapRateRMSCalibHB.png");
1160 cONE->Print(
"MapRateRMSCalibHE.png");
1164 cONE->Print(
"MapRateRMSCalibHO.png");
1168 cONE->Print(
"MapRateRMSCalibHF.png");
1174 cONE->Print(
"MapRate43TStoAllTSCalibHB.png");
1178 cONE->Print(
"MapRate43TStoAllTSCalibHE.png");
1182 cONE->Print(
"MapRate43TStoAllTSCalibHO.png");
1186 cONE->Print(
"MapRate43TStoAllTSCalibHF.png");
1192 cONE->Print(
"MapRateMeanPosCalibHB.png");
1196 cONE->Print(
"MapRateMeanPosCalibHE.png");
1200 cONE->Print(
"MapRateMeanPosCalibHO.png");
1204 cONE->Print(
"MapRateMeanPosCalibHF.png");
1210 cONE->Print(
"MapRateMaxPosCalibHB.png");
1214 cONE->Print(
"MapRateMaxPosCalibHE.png");
1218 cONE->Print(
"MapRateMaxPosCalibHO.png");
1222 cONE->Print(
"MapRateMaxPosCalibHF.png");
1233 HistAmpl[
test][sub]->SetTitle(
"HB, All Depth");
1235 HistAmpl[
test][sub]->SetTitle(
"HE, All Depth");
1237 HistAmpl[
test][sub]->SetTitle(
"HO, All Depth");
1239 HistAmpl[
test][sub]->SetTitle(
"HF, All Depth");
1241 HistAmpl[
test][sub]->SetXTitle(
"ADC Amlitude in each event & cell \b");
1243 HistAmpl[
test][sub]->SetXTitle(
"Amplitude RMS in each event & cell \b");
1245 HistAmpl[
test][sub]->SetXTitle(
"Ratio in each event & cell \b");
1247 HistAmpl[
test][sub]->SetXTitle(
"Mean TS position in each event & cell \b");
1249 HistAmpl[
test][sub]->SetXTitle(
"Max TS position in each event & cell \b");
1250 HistAmpl[
test][sub]->SetYTitle(
"Number of cell-events \b");
1251 HistAmpl[
test][sub]->SetLineColor(4);
1252 HistAmpl[
test][sub]->SetLineWidth(2);
1253 HistAmpl[
test][sub]->SetTitleOffset(1.4,
"Y");
1254 HistAmpl[
test][sub]->Draw(
"");
1258 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(1., 10000.);
1261 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 5.);
1263 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 1.);
1265 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 9.);
1267 HistAmpl[
test][sub]->GetXaxis()->SetRangeUser(0., 9.);
1270 double min_x[] = {MIN_C[
test - 10][sub], MIN_C[
test - 10][sub]};
1271 double min_y[] = {0., 100000000.};
1272 TGraph *MIN =
new TGraph(2, min_x, min_y);
1273 MIN->SetLineStyle(2);
1274 MIN->SetLineColor(2);
1275 MIN->SetLineWidth(2 + 100 * 100);
1276 MIN->SetFillStyle(3005);
1277 MIN->SetFillColor(2);
1279 double max_x[] = {MAX_C[
test - 10][sub], MAX_C[
test - 10][sub]};
1280 double max_y[] = {0., 100000000.};
1281 TGraph *MAX =
new TGraph(2, max_x, max_y);
1282 MAX->SetLineStyle(2);
1283 MAX->SetLineColor(2);
1284 MAX->SetLineWidth(-2 - 100 * 100);
1285 MAX->SetFillStyle(3004);
1286 MAX->SetFillColor(2);
1290 cONE->Print(
"HistAmplCalibHB.png");
1294 cONE->Print(
"HistAmplCalibHE.png");
1298 cONE->Print(
"HistAmplCalibHO.png");
1302 cONE->Print(
"HistAmplCalibHF.png");
1308 cONE->Print(
"HistRMSCalibHB.png");
1312 cONE->Print(
"HistRMSCalibHE.png");
1316 cONE->Print(
"HistRMSCalibHO.png");
1320 cONE->Print(
"HistRMSCalibHF.png");
1326 cONE->Print(
"Hist43TStoAllTSCalibHB.png");
1330 cONE->Print(
"Hist43TStoAllTSCalibHE.png");
1334 cONE->Print(
"Hist43TStoAllTSCalibHO.png");
1338 cONE->Print(
"Hist43TStoAllTSCalibHF.png");
1344 cONE->Print(
"HistMeanPosCalibHB.png");
1348 cONE->Print(
"HistMeanPosCalibHE.png");
1352 cONE->Print(
"HistMeanPosCalibHO.png");
1356 cONE->Print(
"HistMeanPosCalibHF.png");
1362 cONE->Print(
"HistMaxPosCalibHB.png");
1366 cONE->Print(
"HistMaxPosCalibHE.png");
1370 cONE->Print(
"HistMaxPosCalibHO.png");
1374 cONE->Print(
"HistMaxPosCalibHF.png");
1385 Map_Ampl[21][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1AmplE34_HB");
1386 Map_Ampl[21][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2AmplE34_HB");
1387 Map_Ampl[21][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3AmplE34_HB");
1388 Map_Ampl[21][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4AmplE34_HB");
1389 Map_Ampl[21][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1AmplE34_HE");
1390 Map_Ampl[21][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2AmplE34_HE");
1391 Map_Ampl[21][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3AmplE34_HE");
1392 Map_Ampl[21][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4AmplE34_HE");
1393 Map_Ampl[21][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5AmplE34_HE");
1394 Map_Ampl[21][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6AmplE34_HE");
1395 Map_Ampl[21][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7AmplE34_HE");
1396 Map_Ampl[21][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4AmplE34_HO");
1397 Map_Ampl[21][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1AmplE34_HF");
1398 Map_Ampl[21][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2AmplE34_HF");
1399 Map_Ampl[21][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3AmplE34_HF");
1400 Map_Ampl[21][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4AmplE34_HF");
1402 TH2F *Map_RefAmpl[5][ALLDEPTH];
1403 TH2F *Map_RefSUB[5][ALLDEPTH];
1405 Map_RefAmpl[1][1] = (TH2F *)hreffile->Get(
"h_mapDepth1AmplE34_HB");
1406 Map_RefAmpl[1][2] = (TH2F *)hreffile->Get(
"h_mapDepth2AmplE34_HB");
1407 Map_RefAmpl[1][3] = (TH2F *)hreffile->Get(
"h_mapDepth3AmplE34_HB");
1408 Map_RefAmpl[1][4] = (TH2F *)hreffile->Get(
"h_mapDepth4AmplE34_HB");
1409 Map_RefAmpl[2][1] = (TH2F *)hreffile->Get(
"h_mapDepth1AmplE34_HE");
1410 Map_RefAmpl[2][2] = (TH2F *)hreffile->Get(
"h_mapDepth2AmplE34_HE");
1411 Map_RefAmpl[2][3] = (TH2F *)hreffile->Get(
"h_mapDepth3AmplE34_HE");
1412 Map_RefAmpl[2][4] = (TH2F *)hreffile->Get(
"h_mapDepth4AmplE34_HE");
1413 Map_RefAmpl[2][5] = (TH2F *)hreffile->Get(
"h_mapDepth5AmplE34_HE");
1414 Map_RefAmpl[2][6] = (TH2F *)hreffile->Get(
"h_mapDepth6AmplE34_HE");
1415 Map_RefAmpl[2][7] = (TH2F *)hreffile->Get(
"h_mapDepth7AmplE34_HE");
1416 Map_RefAmpl[3][4] = (TH2F *)hreffile->Get(
"h_mapDepth4AmplE34_HO");
1417 Map_RefAmpl[4][1] = (TH2F *)hreffile->Get(
"h_mapDepth1AmplE34_HF");
1418 Map_RefAmpl[4][2] = (TH2F *)hreffile->Get(
"h_mapDepth2AmplE34_HF");
1419 Map_RefAmpl[4][3] = (TH2F *)hreffile->Get(
"h_mapDepth3AmplE34_HF");
1420 Map_RefAmpl[4][4] = (TH2F *)hreffile->Get(
"h_mapDepth4AmplE34_HF");
1422 Map_RefSUB[1][1] = (TH2F *)hreffile->Get(
"h_mapDepth1_HB");
1423 Map_RefSUB[1][2] = (TH2F *)hreffile->Get(
"h_mapDepth2_HB");
1424 Map_RefSUB[1][3] = (TH2F *)hreffile->Get(
"h_mapDepth3_HB");
1425 Map_RefSUB[1][4] = (TH2F *)hreffile->Get(
"h_mapDepth4_HB");
1426 Map_RefSUB[2][1] = (TH2F *)hreffile->Get(
"h_mapDepth1_HE");
1427 Map_RefSUB[2][2] = (TH2F *)hreffile->Get(
"h_mapDepth2_HE");
1428 Map_RefSUB[2][3] = (TH2F *)hreffile->Get(
"h_mapDepth3_HE");
1429 Map_RefSUB[2][4] = (TH2F *)hreffile->Get(
"h_mapDepth4_HE");
1430 Map_RefSUB[2][5] = (TH2F *)hreffile->Get(
"h_mapDepth5_HE");
1431 Map_RefSUB[2][6] = (TH2F *)hreffile->Get(
"h_mapDepth6_HE");
1432 Map_RefSUB[2][7] = (TH2F *)hreffile->Get(
"h_mapDepth7_HE");
1433 Map_RefSUB[3][4] = (TH2F *)hreffile->Get(
"h_mapDepth4_HO");
1434 Map_RefSUB[4][1] = (TH2F *)hreffile->Get(
"h_mapDepth1_HF");
1435 Map_RefSUB[4][2] = (TH2F *)hreffile->Get(
"h_mapDepth2_HF");
1436 Map_RefSUB[4][3] = (TH2F *)hreffile->Get(
"h_mapDepth3_HF");
1437 Map_RefSUB[4][4] = (TH2F *)hreffile->Get(
"h_mapDepth4_HF");
1439 HistAmplDepth[21][1][1] =
new TH1F(
"diffAmpl_Depth1_HB",
"", 100, -10., 10.);
1440 HistAmplDepth[21][1][2] =
new TH1F(
"diffAmpl_Depth2_HB",
"", 100, -10., 10.);
1441 HistAmplDepth[21][1][3] =
new TH1F(
"diffAmpl_Depth3_HB",
"", 100, -10., 10.);
1442 HistAmplDepth[21][1][4] =
new TH1F(
"diffAmpl_Depth4_HB",
"", 100, -10., 10.);
1443 HistAmplDepth[21][2][1] =
new TH1F(
"diffAmpl_Depth1_HE",
"", 100, -10., 10.);
1444 HistAmplDepth[21][2][2] =
new TH1F(
"diffAmpl_Depth2_HE",
"", 100, -10., 10.);
1445 HistAmplDepth[21][2][3] =
new TH1F(
"diffAmpl_Depth3_HE",
"", 100, -10., 10.);
1446 HistAmplDepth[21][2][4] =
new TH1F(
"diffAmpl_Depth4_HE",
"", 100, -10., 10.);
1447 HistAmplDepth[21][2][5] =
new TH1F(
"diffAmpl_Depth5_HE",
"", 100, -10., 10.);
1448 HistAmplDepth[21][2][6] =
new TH1F(
"diffAmpl_Depth6_HE",
"", 100, -10., 10.);
1449 HistAmplDepth[21][2][7] =
new TH1F(
"diffAmpl_Depth7_HE",
"", 100, -10., 10.);
1450 HistAmplDepth[21][3][4] =
new TH1F(
"diffAmpl_Depth4_HO",
"", 100, -10., 10.);
1451 HistAmplDepth[21][4][1] =
new TH1F(
"diffAmpl_Depth1_HF",
"", 100, -10., 10.);
1452 HistAmplDepth[21][4][2] =
new TH1F(
"diffAmpl_Depth2_HF",
"", 100, -10., 10.);
1453 HistAmplDepth[21][4][3] =
new TH1F(
"diffAmpl_Depth3_HF",
"", 100, -10., 10.);
1454 HistAmplDepth[21][4][4] =
new TH1F(
"diffAmpl_Depth4_HF",
"", 100, -10., 10.);
1456 for (
int sub = 1; sub <= 4; sub++) {
1471 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
1480 Map_Ampl[21][sub][
k]->Divide(Map_Ampl[21][sub][
k], Map_SUB[sub][
k], 1, 1,
"B");
1485 sprintf(
str,
"HB, Depth%d \b",
k);
1487 sprintf(
str,
"HE, Depth%d \b",
k);
1489 sprintf(
str,
"HO, Depth%d \b",
k);
1491 sprintf(
str,
"HF, Depth%d \b",
k);
1492 Map_Ampl[21][sub][
k]->SetTitle(
str);
1493 Map_Ampl[21][sub][
k]->SetXTitle(
"#eta \b");
1494 Map_Ampl[21][sub][
k]->SetYTitle(
"#phi \b");
1495 Map_Ampl[21][sub][
k]->SetZTitle(
"Response \b");
1496 Map_Ampl[21][sub][
k]->SetTitleOffset(1.1,
"Z");
1497 Map_Ampl[21][sub][
k]->Draw(
"COLZ");
1498 Map_Ampl[21][sub][
k]->GetYaxis()->SetRangeUser(0, 71.);
1518 cHB->Print(
"MapRateAmpl1HB.png");
1522 cHE->Print(
"MapRateAmpl1HE.png");
1526 cONE->Print(
"MapRateAmpl1HO.png");
1530 cHF->Print(
"MapRateAmpl1HF.png");
1546 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
1555 Map_RefAmpl[sub][
k]->Divide(Map_RefAmpl[sub][
k], Map_RefSUB[sub][
k], 1, 1,
"B");
1560 sprintf(
str,
"HB, Depth%d \b",
k);
1562 sprintf(
str,
"HE, Depth%d \b",
k);
1564 sprintf(
str,
"HO, Depth%d \b",
k);
1566 sprintf(
str,
"HF, Depth%d \b",
k);
1567 Map_RefAmpl[sub][
k]->SetTitle(
str);
1568 Map_RefAmpl[sub][
k]->SetXTitle(
"#eta \b");
1569 Map_RefAmpl[sub][
k]->SetYTitle(
"#phi \b");
1570 Map_RefAmpl[sub][
k]->SetZTitle(
"Response\b");
1571 Map_RefAmpl[sub][
k]->SetTitleOffset(1.1,
"Z");
1572 Map_RefAmpl[sub][
k]->Draw(
"COLZ");
1573 Map_RefAmpl[sub][
k]->GetYaxis()->SetRangeUser(0, 71.);
1593 cHB->Print(
"MapRateAmpl2HB.png");
1597 cHE->Print(
"MapRateAmpl2HE.png");
1601 cONE->Print(
"MapRateAmpl2HO.png");
1605 cHF->Print(
"MapRateAmpl2HF.png");
1621 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
1630 TH2F *
TTT =
new TH2F(
"Map",
"Map", 82, -41, 40, 72, 0, 71);
1631 for (
int x = 1; x <= Map_Ampl[21][sub][
k]->GetXaxis()->GetNbins(); x++) {
1632 for (
int y = 1; y <= Map_Ampl[21][sub][
k]->GetYaxis()->GetNbins(); y++) {
1633 if (Map_Ampl[21][sub][
k]->GetBinContent(x, y) != 0 && Map_RefAmpl[sub][
k]->GetBinContent(x, y) != 0) {
1634 double ccc1 = Map_Ampl[21][sub][
k]->GetBinContent(x, y) - Map_RefAmpl[sub][
k]->GetBinContent(x, y);
1635 ccc1 = 100. * ccc1 / Map_Ampl[21][sub][
k]->GetBinContent(x, y);
1636 HistAmplDepth[21][sub][
k]->Fill(ccc1);
1637 Map_Ampl[21][sub][
k]->SetBinContent(x, y, fabs(ccc1));
1638 if (fabs(ccc1) > porog[sub])
1639 TTT->SetBinContent(x, y, fabs(ccc1));
1641 TTT->SetBinContent(x, y, 0);
1649 sprintf(
str,
"HB, Depth%d \b",
k);
1651 sprintf(
str,
"HE, Depth%d \b",
k);
1653 sprintf(
str,
"HO, Depth%d \b",
k);
1655 sprintf(
str,
"HF, Depth%d \b",
k);
1657 TTT->SetXTitle(
"#eta \b");
1658 TTT->SetYTitle(
"#phi \b");
1659 TTT->SetZTitle(
"Relative difference, % \b");
1660 TTT->SetTitleOffset(0.9,
"Z");
1662 TTT->GetYaxis()->SetRangeUser(0, 71.);
1663 TTT->GetZaxis()->SetRangeUser(0, 10.);
1683 cHB->Print(
"MapRateAmplDriftHB.png");
1687 cHE->Print(
"MapRateAmplDriftHE.png");
1691 cONE->Print(
"MapRateAmplDriftHO.png");
1695 cHF->Print(
"MapRateAmplDriftHF.png");
1712 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
1725 sprintf(
str,
"HB, Depth%d \b",
k);
1727 sprintf(
str,
"HE, Depth%d \b",
k);
1729 sprintf(
str,
"HO, Depth%d \b",
k);
1731 sprintf(
str,
"HF, Depth%d \b",
k);
1732 HistAmplDepth[21][sub][
k]->SetTitle(
str);
1733 HistAmplDepth[21][sub][
k]->SetYTitle(
"Number of cell-events \b");
1734 HistAmplDepth[21][sub][
k]->SetXTitle(
"Per cent \b");
1735 HistAmplDepth[21][sub][
k]->SetLineColor(4);
1736 HistAmplDepth[21][sub][
k]->SetLineWidth(2);
1737 HistAmplDepth[21][sub][
k]->SetTitleOffset(1.4,
"Y");
1738 HistAmplDepth[21][sub][
k]->Draw();
1740 HistAmplDepth[21][sub][
k]->GetXaxis()->SetRangeUser(-10., 10.);
1757 double min_x[] = {-1 * porog[sub], -1 * porog[sub]};
1758 double min_y[] = {0., 100000000.};
1759 TGraph *MIN =
new TGraph(2, min_x, min_y);
1760 MIN->SetLineStyle(2);
1761 MIN->SetLineColor(2);
1762 MIN->SetLineWidth(2 + 100 * 100);
1763 MIN->SetFillStyle(3005);
1764 MIN->SetFillColor(2);
1766 double max_x[] = {porog[sub], porog[sub]};
1767 double max_y[] = {0., 100000000.};
1768 TGraph *MAX =
new TGraph(2, max_x, max_y);
1769 MAX->SetLineStyle(2);
1770 MAX->SetLineColor(2);
1771 MAX->SetLineWidth(-2 - 100 * 100);
1772 MAX->SetFillStyle(3004);
1773 MAX->SetFillColor(2);
1777 cHB->Print(
"HistAmplDriftDepthHB.png");
1781 cHE->Print(
"HistAmplDriftDepthHE.png");
1785 cONE->Print(
"HistAmplDriftDepthHO.png");
1789 cHF->Print(
"HistAmplDriftDepthHF.png");
1798 Map_Ampl[31][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestal_HB");
1799 Map_Ampl[31][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestal_HB");
1800 Map_Ampl[31][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestal_HB");
1801 Map_Ampl[31][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestal_HB");
1802 Map_Ampl[31][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestal_HE");
1803 Map_Ampl[31][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestal_HE");
1804 Map_Ampl[31][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestal_HE");
1805 Map_Ampl[31][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestal_HE");
1806 Map_Ampl[31][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5pedestal_HE");
1807 Map_Ampl[31][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6pedestal_HE");
1808 Map_Ampl[31][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7pedestal_HE");
1809 Map_Ampl[31][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestal_HO");
1810 Map_Ampl[31][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestal_HF");
1811 Map_Ampl[31][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestal_HF");
1812 Map_Ampl[31][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestal_HF");
1813 Map_Ampl[31][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestal_HF");
1815 Map_Ampl[32][1][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestalw_HB");
1816 Map_Ampl[32][1][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestalw_HB");
1817 Map_Ampl[32][1][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestalw_HB");
1818 Map_Ampl[32][1][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestalw_HB");
1819 Map_Ampl[32][2][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestalw_HE");
1820 Map_Ampl[32][2][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestalw_HE");
1821 Map_Ampl[32][2][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestalw_HE");
1822 Map_Ampl[32][2][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestalw_HE");
1823 Map_Ampl[32][2][5] = (TH2F *)hfile->Get(
"h_mapDepth5pedestalw_HE");
1824 Map_Ampl[32][2][6] = (TH2F *)hfile->Get(
"h_mapDepth6pedestalw_HE");
1825 Map_Ampl[32][2][7] = (TH2F *)hfile->Get(
"h_mapDepth7pedestalw_HE");
1826 Map_Ampl[32][3][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestalw_HO");
1827 Map_Ampl[32][4][1] = (TH2F *)hfile->Get(
"h_mapDepth1pedestalw_HF");
1828 Map_Ampl[32][4][2] = (TH2F *)hfile->Get(
"h_mapDepth2pedestalw_HF");
1829 Map_Ampl[32][4][3] = (TH2F *)hfile->Get(
"h_mapDepth3pedestalw_HF");
1830 Map_Ampl[32][4][4] = (TH2F *)hfile->Get(
"h_mapDepth4pedestalw_HF");
1832 HistPed[1][1][0] = (TH1F *)hfile->Get(
"h_pedestal0_HB");
1833 HistPed[1][1][1] = (TH1F *)hfile->Get(
"h_pedestal1_HB");
1834 HistPed[1][1][2] = (TH1F *)hfile->Get(
"h_pedestal2_HB");
1835 HistPed[1][1][3] = (TH1F *)hfile->Get(
"h_pedestal3_HB");
1836 HistPed[2][1][0] = (TH1F *)hfile->Get(
"h_pedestalw0_HB");
1837 HistPed[2][1][1] = (TH1F *)hfile->Get(
"h_pedestalw1_HB");
1838 HistPed[2][1][2] = (TH1F *)hfile->Get(
"h_pedestalw2_HB");
1839 HistPed[2][1][3] = (TH1F *)hfile->Get(
"h_pedestalw3_HB");
1841 HistPed[1][2][0] = (TH1F *)hfile->Get(
"h_pedestal0_HE");
1842 HistPed[1][2][1] = (TH1F *)hfile->Get(
"h_pedestal1_HE");
1843 HistPed[1][2][2] = (TH1F *)hfile->Get(
"h_pedestal2_HE");
1844 HistPed[1][2][3] = (TH1F *)hfile->Get(
"h_pedestal3_HE");
1845 HistPed[2][2][0] = (TH1F *)hfile->Get(
"h_pedestalw0_HE");
1846 HistPed[2][2][1] = (TH1F *)hfile->Get(
"h_pedestalw1_HE");
1847 HistPed[2][2][2] = (TH1F *)hfile->Get(
"h_pedestalw2_HE");
1848 HistPed[2][2][3] = (TH1F *)hfile->Get(
"h_pedestalw3_HE");
1850 HistPed[1][3][0] = (TH1F *)hfile->Get(
"h_pedestal0_HO");
1851 HistPed[1][3][1] = (TH1F *)hfile->Get(
"h_pedestal1_HO");
1852 HistPed[1][3][2] = (TH1F *)hfile->Get(
"h_pedestal2_HO");
1853 HistPed[1][3][3] = (TH1F *)hfile->Get(
"h_pedestal3_HO");
1854 HistPed[2][3][0] = (TH1F *)hfile->Get(
"h_pedestalw0_HO");
1855 HistPed[2][3][1] = (TH1F *)hfile->Get(
"h_pedestalw1_HO");
1856 HistPed[2][3][2] = (TH1F *)hfile->Get(
"h_pedestalw2_HO");
1857 HistPed[2][3][3] = (TH1F *)hfile->Get(
"h_pedestalw3_HO");
1859 HistPed[1][4][0] = (TH1F *)hfile->Get(
"h_pedestal0_HF");
1860 HistPed[1][4][1] = (TH1F *)hfile->Get(
"h_pedestal1_HF");
1861 HistPed[1][4][2] = (TH1F *)hfile->Get(
"h_pedestal2_HF");
1862 HistPed[1][4][3] = (TH1F *)hfile->Get(
"h_pedestal3_HF");
1863 HistPed[2][4][0] = (TH1F *)hfile->Get(
"h_pedestalw0_HF");
1864 HistPed[2][4][1] = (TH1F *)hfile->Get(
"h_pedestalw1_HF");
1865 HistPed[2][4][2] = (TH1F *)hfile->Get(
"h_pedestalw2_HF");
1866 HistPed[2][4][3] = (TH1F *)hfile->Get(
"h_pedestalw3_HF");
1869 for (
int sub = 1; sub <= 4; sub++) {
1884 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
1893 Map_Ampl[
test][sub][
k]->Divide(Map_Ampl[
test][sub][
k], Map_SUB[sub][
k], 1, 1,
"B");
1898 sprintf(
str,
"HB, Depth%d \b",
k);
1900 sprintf(
str,
"HE, Depth%d \b",
k);
1902 sprintf(
str,
"HO, Depth%d \b",
k);
1904 sprintf(
str,
"HF, Depth%d \b",
k);
1905 Map_Ampl[
test][sub][
k]->SetTitle(
str);
1906 Map_Ampl[
test][sub][
k]->SetXTitle(
"#eta \b");
1907 Map_Ampl[
test][sub][
k]->SetYTitle(
"#phi \b");
1908 Map_Ampl[
test][sub][
k]->SetZTitle(
"Rate \b");
1910 Map_Ampl[
test][sub][
k]->SetTitleOffset(0.8,
"Z");
1911 Map_Ampl[
test][sub][
k]->Draw(
"COLZ");
1912 Map_Ampl[
test][sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
1913 Map_Ampl[
test][sub][
k]->GetZaxis()->SetRangeUser(0.0001, 1.);
1933 cHB->Print(
"MapRatePedHB.png");
1937 cHE->Print(
"MapRatePedHE.png");
1941 cONE->Print(
"MapRatePedHO.png");
1945 cHF->Print(
"MapRatePedHF.png");
1951 cHB->Print(
"MapRatePedWidthsHB.png");
1955 cHE->Print(
"MapRatePedWidthsHE.png");
1959 cONE->Print(
"MapRatePedWidthsHO.png");
1963 cHF->Print(
"MapRatePedWidthsHF.png");
1978 sprintf(
str,
"HB, Cap%d, all depth\b",
cap);
1980 sprintf(
str,
"HE, Cap%d, all depth\b",
cap);
1982 sprintf(
str,
"HO, Cap%d, all depth\b",
cap);
1984 sprintf(
str,
"HF, Cap%d, all depth\b",
cap);
1989 HistPed[
test - 30][sub][
cap]->SetXTitle(
"Pedestals in each event & cell \b");
1991 HistPed[
test - 30][sub][
cap]->SetXTitle(
"Pedestal Widths in each event & cell \b");
1993 HistPed[
test - 30][sub][
cap]->SetYTitle(
"Number of channel-events \b");
1994 HistPed[
test - 30][sub][
cap]->SetLineColor(4);
1995 HistPed[
test - 30][sub][
cap]->SetLineWidth(2);
1996 HistPed[
test - 30][sub][
cap]->SetTitleOffset(1.4,
"Y");
1997 HistPed[
test - 30][sub][
cap]->Draw(
"");
2004 double min_x[] = {Pedest[
test - 31][sub], Pedest[
test - 31][sub]};
2005 double min_y[] = {0., 100000000.};
2006 TGraph *MIN =
new TGraph(2, min_x, min_y);
2007 MIN->SetLineStyle(2);
2008 MIN->SetLineColor(2);
2009 MIN->SetLineWidth(2 + 100 * 100);
2010 MIN->SetFillStyle(3005);
2011 MIN->SetFillColor(2);
2016 cPED->Print(
"HistPedestalsHB.png");
2020 cPED->Print(
"HistPedestalsHE.png");
2024 cPED->Print(
"HistPedestalsHO.png");
2028 cPED->Print(
"HistPedestalsHF.png");
2034 cPED->Print(
"HistPedestalWidthsHB.png");
2038 cPED->Print(
"HistPedestalWidthsHE.png");
2042 cPED->Print(
"HistPedestalWidthsHO.png");
2046 cPED->Print(
"HistPedestalWidthsHF.png");
2058 Map_Ped[1][1] = (TH2F *)hfile->Get(
"h2_pedvsampl_HB");
2059 Map_Ped[1][2] = (TH2F *)hfile->Get(
"h2_pedvsampl_HE");
2060 Map_Ped[1][3] = (TH2F *)hfile->Get(
"h2_pedvsampl_HO");
2061 Map_Ped[1][4] = (TH2F *)hfile->Get(
"h2_pedvsampl_HF");
2062 Map_Ped[2][1] = (TH2F *)hfile->Get(
"h2_pedwvsampl_HB");
2063 Map_Ped[2][2] = (TH2F *)hfile->Get(
"h2_pedwvsampl_HE");
2064 Map_Ped[2][3] = (TH2F *)hfile->Get(
"h2_pedwvsampl_HO");
2065 Map_Ped[2][4] = (TH2F *)hfile->Get(
"h2_pedwvsampl_HF");
2066 for (
int sub = 1; sub <= 4; sub++) {
2074 Map_Ped[
test][sub]->SetXTitle(
"Pedestal, fC \b");
2076 Map_Ped[
test][sub]->SetXTitle(
"pedestal Width, fC \b");
2077 Map_Ped[
test][sub]->SetYTitle(
"Amplitude, fC \b");
2078 Map_Ped[
test][sub]->SetZTitle(
"entries \b");
2080 sprintf(
str,
"Cap0 Pedestal vs Amplitude \b");
2082 sprintf(
str,
"Cap0 pedestalWidth vs Amplitude \b");
2083 Map_Ped[
test][sub]->SetTitle(
str);
2084 Map_Ped[
test][sub]->Draw(
"COLZ");
2091 cPED->Print(
"CorrelationsMapPedestalVsfullAmplitudeHB.png");
2095 cPED->Print(
"CorrelationsMapPedestalVsfullAmplitudeHE.png");
2099 cPED->Print(
"CorrelationsMapPedestalVsfullAmplitudeHO.png");
2103 cPED->Print(
"CorrelationsMapPedestalVsfullAmplitudeHF.png");
2113 hist_GoodTSshape[1] = (TH1F *)hfile->Get(
"h_shape_good_channels_HB");
2114 hist_GoodTSshape[2] = (TH1F *)hfile->Get(
"h_shape_good_channels_HE");
2115 hist_GoodTSshape[3] = (TH1F *)hfile->Get(
"h_shape_good_channels_HO");
2116 hist_GoodTSshape[4] = (TH1F *)hfile->Get(
"h_shape_good_channels_HF");
2118 hist_GoodTSshape0[1] = (TH1F *)hfile->Get(
"h_shape0_good_channels_HB");
2119 hist_GoodTSshape0[2] = (TH1F *)hfile->Get(
"h_shape0_good_channels_HE");
2120 hist_GoodTSshape0[3] = (TH1F *)hfile->Get(
"h_shape0_good_channels_HO");
2121 hist_GoodTSshape0[4] = (TH1F *)hfile->Get(
"h_shape0_good_channels_HF");
2123 hist_BadTSshape[1] = (TH1F *)hfile->Get(
"h_shape_bad_channels_HB");
2124 hist_BadTSshape[2] = (TH1F *)hfile->Get(
"h_shape_bad_channels_HE");
2125 hist_BadTSshape[3] = (TH1F *)hfile->Get(
"h_shape_bad_channels_HO");
2126 hist_BadTSshape[4] = (TH1F *)hfile->Get(
"h_shape_bad_channels_HF");
2128 hist_BadTSshape0[1] = (TH1F *)hfile->Get(
"h_shape0_bad_channels_HB");
2129 hist_BadTSshape0[2] = (TH1F *)hfile->Get(
"h_shape0_bad_channels_HE");
2130 hist_BadTSshape0[3] = (TH1F *)hfile->Get(
"h_shape0_bad_channels_HO");
2131 hist_BadTSshape0[4] = (TH1F *)hfile->Get(
"h_shape0_bad_channels_HF");
2135 for (
int sub = 1; sub <= 4; sub++) {
2140 hist_GoodTSshape[sub]->Divide(hist_GoodTSshape[sub], hist_GoodTSshape0[sub], 1, 1,
"B");
2141 hist_GoodTSshape[sub]->SetXTitle(
"Time slice \b");
2142 hist_GoodTSshape[sub]->SetYTitle(
"ADC counts \b");
2143 sprintf(
str,
"Mean ADC Shape \b");
2144 hist_GoodTSshape[sub]->SetTitle(
str);
2145 hist_GoodTSshape[sub]->Draw(
"");
2151 cONE->Print(
"HistGoodTSshapesHB.png");
2155 cONE->Print(
"HistGoodTSshapesHE.png");
2159 cONE->Print(
"HistGoodTSshapesHO.png");
2163 cONE->Print(
"HistGoodTSshapesHF.png");
2168 for (
int sub = 1; sub <= 4; sub++) {
2173 hist_BadTSshape[sub]->Divide(hist_BadTSshape[sub], hist_BadTSshape0[sub], 1, 1,
"B");
2174 hist_BadTSshape[sub]->SetXTitle(
"Time slice \b");
2175 hist_BadTSshape[sub]->SetYTitle(
"ADC counts \b");
2176 sprintf(
str,
"Mean ADC Shape \b");
2177 hist_BadTSshape[sub]->SetTitle(
str);
2178 hist_BadTSshape[sub]->Draw(
"");
2184 cONE->Print(
"HistBadTSshapesHB.png");
2188 cONE->Print(
"HistBadTSshapesHE.png");
2192 cONE->Print(
"HistBadTSshapesHO.png");
2196 cONE->Print(
"HistBadTSshapesHF.png");
2430 std::cout <<
" We are here to print 2017 MAPs " << std::endl;
2437 TH2F *Map_ALL =
new TH2F(
"Map_All",
"Map_all", 82, -41, 40, 72, 0, 71);
2438 int nx = Map_ALL->GetXaxis()->GetNbins();
2439 int ny = Map_ALL->GetYaxis()->GetNbins();
2445 int Eta[4][10000] = {0};
2446 int Phi[4][10000] = {0};
2447 int Sub[4][10000] = {0};
2448 int Depth[4][10000] = {0};
2449 string Comment[4][10000] = {
""};
2450 string Text[33] = {
"",
"Cm",
"Am",
"Wm",
"Rm",
"TNm",
"TXm",
"",
"",
"",
"",
"Cc",
"Ac",
"Wc",
"Rc",
"TNc",
"TXc",
2451 "",
"",
"",
"",
"GS",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"Pm",
"pWm"};
2456 for (
int i = 1;
i <= nx;
i++) {
2457 for (
int j = 1;
j <= ny;
j++) {
2458 for (
int sub = 1; sub <= 4; sub++) {
2462 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
2463 if (Map_SUB[sub][
k]->GetBinContent(
i,
j) != 0) {
2464 Map_SUB[sub][
k]->SetBinContent(
i,
j, 0.5);
2465 Map_ALL->SetBinContent(
i,
j, 0.5);
2472 for (
int i = 1;
i <= nx;
i++) {
2473 for (
int j = 1;
j <= ny;
j++) {
2474 for (
int sub = 1; sub <= 4; sub++) {
2478 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
2484 if (Map_Ampl[
test][sub][
k]->GetBinContent(
i,
j) >
2486 Map_ALL->SetBinContent(
i,
j, 1.);
2487 Map_SUB[sub][
k]->SetBinContent(
i,
j, 1.);
2490 Eta[2][NBad] =
i - 41;
2491 Phi[2][NBad] =
j - 1;
2494 Comment[2][NBad] = Text[
test];
2496 Comment[2][NBad] +=
", " + Text[
test];
2566 if (Map_Ampl[
test][sub][
k]->GetBinContent(
i,
j) > 0.1) {
2571 Eta[3][NPed] =
i - 41;
2572 Phi[3][NPed] =
j - 1;
2575 Comment[3][NPed] = Text[
test];
2577 Comment[3][NPed] +=
", " + Text[
test];
2590 for (
int sub = 1; sub <= 4; sub++) {
2592 std::cout <<
" 2017 MAPS_SUB " << sub << std::endl;
2607 for (
int k = k_min[sub];
k <= k_max[sub];
k++) {
2621 sprintf(
str,
"HB, Depth%d \b",
k);
2623 sprintf(
str,
"HE, Depth%d \b",
k);
2625 sprintf(
str,
"HO, Depth%d \b",
k);
2627 sprintf(
str,
"HF, Depth%d \b",
k);
2628 Map_SUB[sub][
k]->SetTitle(
str);
2629 Map_SUB[sub][
k]->SetXTitle(
"#eta \b");
2630 Map_SUB[sub][
k]->SetYTitle(
"#phi \b");
2631 Map_SUB[sub][
k]->Draw(
"COL");
2632 Map_SUB[sub][
k]->GetYaxis()->SetRangeUser(0, 72.);
2633 Map_SUB[sub][
k]->GetZaxis()->SetRangeUser(0., 1.);
2652 cHB->Print(
"MAPHB.png");
2656 cHE->Print(
"MAPHE.png");
2660 cONE->Print(
"MAPHO.png");
2664 cHF->Print(
"MAPHF.png");
2669 TCanvas *cmain1 =
new TCanvas(
"cmain1",
"MAP", 200, 10, 1400, 1800);
2670 cmain1->Divide(2, 2);
2673 TH1F *JDBEYESJ0 = (TH1F *)hfile->Get(
"h_totalAmplitudeHBperEvent");
2674 JDBEYESJ0->SetStats(0);
2675 JDBEYESJ0->SetMarkerStyle(20);
2676 JDBEYESJ0->SetMarkerSize(0.8);
2677 JDBEYESJ0->GetYaxis()->SetLabelSize(0.04);
2678 JDBEYESJ0->SetXTitle(
"iEvent \b");
2679 JDBEYESJ0->SetYTitle(
"totalAmplitude perEvent \b");
2680 JDBEYESJ0->SetTitle(
"HB \b");
2681 JDBEYESJ0->SetMarkerColor(2);
2682 JDBEYESJ0->SetLineColor(1);
2683 JDBEYESJ0->SetMinimum(0.8);
2684 JDBEYESJ0->Draw(
"HIST same P0");
2687 TH1F *JDBEYESJ1 = (TH1F *)hfile->Get(
"h_totalAmplitudeHEperEvent");
2688 JDBEYESJ1->SetStats(0);
2689 JDBEYESJ1->SetMarkerStyle(20);
2690 JDBEYESJ1->SetMarkerSize(0.8);
2691 JDBEYESJ1->GetYaxis()->SetLabelSize(0.04);
2692 JDBEYESJ1->SetXTitle(
"iEvent \b");
2693 JDBEYESJ1->SetYTitle(
"totalAmplitude perEvent \b");
2694 JDBEYESJ1->SetTitle(
"HE \b");
2695 JDBEYESJ1->SetMarkerColor(2);
2696 JDBEYESJ1->SetLineColor(1);
2697 JDBEYESJ1->SetMinimum(0.8);
2698 JDBEYESJ1->Draw(
"HIST same P0");
2701 TH1F *JDBEYESJ2 = (TH1F *)hfile->Get(
"h_totalAmplitudeHFperEvent");
2702 JDBEYESJ2->SetStats(0);
2703 JDBEYESJ2->SetMarkerStyle(20);
2704 JDBEYESJ2->SetMarkerSize(0.8);
2705 JDBEYESJ2->GetYaxis()->SetLabelSize(0.04);
2706 JDBEYESJ2->SetXTitle(
"iEvent \b");
2707 JDBEYESJ2->SetYTitle(
"totalAmplitude perEvent \b");
2708 JDBEYESJ2->SetTitle(
"HF \b");
2709 JDBEYESJ2->SetMarkerColor(2);
2710 JDBEYESJ2->SetLineColor(1);
2711 JDBEYESJ2->SetMinimum(0.8);
2712 JDBEYESJ2->Draw(
"HIST same P0");
2715 TH1F *JDBEYESJ3 = (TH1F *)hfile->Get(
"h_totalAmplitudeHOperEvent");
2716 JDBEYESJ3->SetStats(0);
2717 JDBEYESJ3->SetMarkerStyle(20);
2718 JDBEYESJ3->SetMarkerSize(0.8);
2719 JDBEYESJ3->GetYaxis()->SetLabelSize(0.04);
2720 JDBEYESJ3->SetXTitle(
"iEvent \b");
2721 JDBEYESJ3->SetYTitle(
"totalAmplitude perEvent \b");
2722 JDBEYESJ3->SetTitle(
"HO \b");
2723 JDBEYESJ3->SetMarkerColor(2);
2724 JDBEYESJ3->SetLineColor(1);
2725 JDBEYESJ3->SetMinimum(0.8);
2726 JDBEYESJ3->Draw(
"HIST same P0");
2730 cmain1->Print(
"EVENTDEPENDENCE.png");
2732 std::cout <<
" EVENTDEPENDENCE " << std::endl;
2736 gStyle->SetOptTitle(0);
2737 TCanvas *cmain =
new TCanvas(
"cmain",
"MAP", 1000, 1000);
2741 Map_ALL->SetTitleOffset(1.3,
"Y");
2742 Map_ALL->SetXTitle(
"#eta \b");
2743 Map_ALL->SetYTitle(
"#phi \b");
2744 Map_ALL->Draw(
"COL");
2745 Map_ALL->GetYaxis()->SetRangeUser(0, 72.);
2746 Map_ALL->GetZaxis()->SetRangeUser(0, 1.);
2749 cmain->Print(
"MAP.png");
2757 std::string raw_class, raw_class1, raw_class2, raw_class3;
2760 for (
int sub = 1; sub <= 4; sub++) {
2761 ofstream htmlFileT, htmlFileC, htmlFileD, htmlFileP, htmlFileS;
2763 htmlFileT.open(
"HB_Tile.html");
2764 htmlFileC.open(
"HB_Calib.html");
2765 htmlFileD.open(
"HB_Drift.html");
2766 htmlFileP.open(
"HB_Pedestals.html");
2767 htmlFileS.open(
"HB_Shapes.html");
2770 htmlFileT.open(
"HE_Tile.html");
2771 htmlFileC.open(
"HE_Calib.html");
2772 htmlFileD.open(
"HE_Drift.html");
2773 htmlFileP.open(
"HE_Pedestals.html");
2774 htmlFileS.open(
"HE_Shapes.html");
2777 htmlFileT.open(
"HO_Tile.html");
2778 htmlFileC.open(
"HO_Calib.html");
2779 htmlFileD.open(
"HO_Drift.html");
2780 htmlFileP.open(
"HO_Pedestals.html");
2781 htmlFileS.open(
"HO_Shapes.html");
2784 htmlFileT.open(
"HF_Tile.html");
2785 htmlFileC.open(
"HF_Calib.html");
2786 htmlFileD.open(
"HF_Drift.html");
2787 htmlFileP.open(
"HF_Pedestals.html");
2788 htmlFileS.open(
"HF_Shapes.html");
2792 htmlFileT <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
2793 htmlFileT <<
"<head>" << std::endl;
2794 htmlFileT <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
2795 htmlFileT <<
"<title> Remote Monitoring Tool Global</title>" << std::endl;
2796 htmlFileT <<
"<style type=\"text/css\">" << std::endl;
2797 htmlFileT <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }"
2799 htmlFileT <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
2800 htmlFileT <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; "
2801 "text-align: center;}"
2803 htmlFileT <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
2804 htmlFileT <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
2805 htmlFileT <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
2806 htmlFileT <<
"</style>" << std::endl;
2807 htmlFileT <<
"<body>" << std::endl;
2810 htmlFileT <<
"<h1> Criteria for megatile channels for HB, RUN = " <<
runnumber <<
" </h1>" << std::endl;
2812 htmlFileT <<
"<h1> Criteria for megatile channels for HE, RUN = " <<
runnumber <<
" </h1>" << std::endl;
2814 htmlFileT <<
"<h1> Criteria for megatile channels for HO, RUN = " <<
runnumber <<
" </h1>" << std::endl;
2816 htmlFileT <<
"<h1> Criteria for megatile channels for HF, RUN = " <<
runnumber <<
" </h1>" << std::endl;
2817 htmlFileT <<
"<br>" << std::endl;
2821 htmlFileT <<
"<h2> 0. Entries for each channel.</h3>" << std::endl;
2822 htmlFileT <<
"<h3> 0.A. Entries in each channel for each depth.</h3>" << std::endl;
2823 htmlFileT <<
"<h4> Channel legend: color is rate of entries </h4>" << std::endl;
2825 htmlFileT <<
" <img src=\"MapRateEntryHB.png\" />" << std::endl;
2827 htmlFileT <<
" <img src=\"MapRateEntryHE.png\" />" << std::endl;
2829 htmlFileT <<
" <img src=\"MapRateEntryHO.png\" />" << std::endl;
2831 htmlFileT <<
" <img src=\"MapRateEntryHF.png\" />" << std::endl;
2832 htmlFileT <<
"<br>" << std::endl;
2835 htmlFileT <<
"<h2> 1. Cm criterion: CapID errors for each channel.</h3>" << std::endl;
2836 htmlFileT <<
"<h3> 1.A. Rate of CapId failures in each channel for each depth.</h3>" << std::endl;
2837 htmlFileT <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
2839 htmlFileT <<
" <img src=\"MapRateCapIDHB.png\" />" << std::endl;
2841 htmlFileT <<
" <img src=\"MapRateCapIDHE.png\" />" << std::endl;
2843 htmlFileT <<
" <img src=\"MapRateCapIDHO.png\" />" << std::endl;
2845 htmlFileT <<
" <img src=\"MapRateCapIDHF.png\" />" << std::endl;
2846 htmlFileT <<
"<br>" << std::endl;
2849 htmlFileT <<
"<h2> 2. Am criterion: ADC amplitude collected over all TSs(Full Amplitude) for each channel. </h3>"
2851 htmlFileT <<
"<h3> 2.A. Full ADC amplitude distribution over all events, channels and depths.</h3>" << std::endl;
2852 htmlFileT <<
"<h4> Legend: Bins less " << MIN_M[2][sub] <<
" correpond to bad ADC amplitude </h4>" << std::endl;
2854 htmlFileT <<
" <img src=\"HistAmplHB.png\" />" << std::endl;
2856 htmlFileT <<
" <img src=\"HistAmplHE.png\" />" << std::endl;
2858 htmlFileT <<
" <img src=\"HistAmplHO.png\" />" << std::endl;
2860 htmlFileT <<
" <img src=\"HistAmplHF.png\" />" << std::endl;
2861 htmlFileT <<
"<br>" << std::endl;
2862 htmlFileT <<
"<h3> 2.B. Rate of bad ADC amplitude (<" << MIN_M[2][sub] <<
") in each channel for each depth. </h3>"
2864 htmlFileT <<
"<h4> Channel legend: white - good, other colours - bad. </h4>" << std::endl;
2866 htmlFileT <<
" <img src=\"MapRateAmplHB.png\" />" << std::endl;
2868 htmlFileT <<
" <img src=\"MapRateAmplHE.png\" />" << std::endl;
2870 htmlFileT <<
" <img src=\"MapRateAmplHO.png\" />" << std::endl;
2872 htmlFileT <<
" <img src=\"MapRateAmplHF.png\" />" << std::endl;
2873 htmlFileT <<
"<br>" << std::endl;
2876 htmlFileT <<
"<h2> 3. Wm criterion: RMS (width) of ADC amplutude for each channel.</h3>" << std::endl;
2877 htmlFileT <<
"<h3> 3.A. RMS distribution over all events, channel and depth.</h3>" << std::endl;
2878 htmlFileT <<
"<h4> Legend: Bins less " << MIN_M[3][sub] <<
" and more " << MAX_M[3][sub]
2879 <<
" correpond to bad RMS </h4>" << std::endl;
2881 htmlFileT <<
" <img src=\"HistRMSHB.png\" />" << std::endl;
2883 htmlFileT <<
" <img src=\"HistRMSHE.png\" />" << std::endl;
2885 htmlFileT <<
" <img src=\"HistRMSHO.png\" />" << std::endl;
2887 htmlFileT <<
" <img src=\"HistRMSHF.png\" />" << std::endl;
2888 htmlFileT <<
"<br>" << std::endl;
2889 htmlFileT <<
"<h3> 3.B. Rate of bad RMS (<" << MIN_M[3][sub] <<
",>" << MAX_M[3][sub]
2890 <<
") in each channel for each depth.</h3>" << std::endl;
2891 htmlFileT <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
2893 htmlFileT <<
" <img src=\"MapRateRMSHB.png\" />" << std::endl;
2895 htmlFileT <<
" <img src=\"MapRateRMSHE.png\" />" << std::endl;
2897 htmlFileT <<
" <img src=\"MapRateRMSHO.png\" />" << std::endl;
2899 htmlFileT <<
" <img src=\"MapRateRMSHF.png\" />" << std::endl;
2900 htmlFileT <<
"<br>" << std::endl;
2903 htmlFileT <<
"<h2> 4. Rm criterion: Ratio ADC value sum over four near maximum (-2, -1, max, +1) TS to ADC value "
2904 "sum over all TS for each channel. </h3>"
2906 htmlFileT <<
"<h3> 4.A. Ratio distribution over all events, channels and depths.</h3>" << std::endl;
2907 htmlFileT <<
"<h4> Legend: Bins less " << MIN_M[4][sub] <<
" and more " << MAX_M[4][sub]
2908 <<
" correpond to bad ratio </h4>" << std::endl;
2910 htmlFileT <<
" <img src=\"Hist43TStoAllTSHB.png\" />" << std::endl;
2912 htmlFileT <<
" <img src=\"Hist43TStoAllTSHE.png\" />" << std::endl;
2914 htmlFileT <<
" <img src=\"Hist43TStoAllTSHO.png\" />" << std::endl;
2916 htmlFileT <<
" <img src=\"Hist43TStoAllTSHF.png\" />" << std::endl;
2917 htmlFileT <<
"<br>" << std::endl;
2918 htmlFileT <<
"<h3> 4.B. Rate of bad ratio (<" << MIN_M[4][sub] <<
", >" << MAX_M[4][sub]
2919 <<
") in each channel for each depth.</h3>" << std::endl;
2920 htmlFileT <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
2922 htmlFileT <<
" <img src=\"MapRate43TStoAllTSHB.png\" />" << std::endl;
2924 htmlFileT <<
" <img src=\"MapRate43TStoAllTSHE.png\" />" << std::endl;
2926 htmlFileT <<
" <img src=\"MapRate43TStoAllTSHO.png\" />" << std::endl;
2928 htmlFileT <<
" <img src=\"MapRate43TStoAllTSHF.png\" />" << std::endl;
2929 htmlFileT <<
"<br>" << std::endl;
2932 htmlFileT <<
"<h2> 5. TNm criterion: Mean TS position for each channel.</h3>" << std::endl;
2933 htmlFileT <<
"<h3> 5.A. TN position distribution over all events, channels and depths.</h3>" << std::endl;
2934 htmlFileT <<
"<h4> Legend: Bins less " << MIN_M[5][sub] <<
" and more " << MAX_M[5][sub]
2935 <<
" correpond to bad mean position </h4>" << std::endl;
2937 htmlFileT <<
" <img src=\"HistMeanPosHB.png\" />" << std::endl;
2939 htmlFileT <<
" <img src=\"HistMeanPosHE.png\" />" << std::endl;
2941 htmlFileT <<
" <img src=\"HistMeanPosHO.png\" />" << std::endl;
2943 htmlFileT <<
" <img src=\"HistMeanPosHF.png\" />" << std::endl;
2944 htmlFileT <<
"<br>" << std::endl;
2945 htmlFileT <<
"<h3> 5.B. Rate of bad TN position (<" << MIN_M[5][sub] <<
", >" << MAX_M[5][sub]
2946 <<
") in each channel for each depth. </h3>" << std::endl;
2947 htmlFileT <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
2949 htmlFileT <<
" <img src=\"MapRateMeanPosHB.png\" />" << std::endl;
2951 htmlFileT <<
" <img src=\"MapRateMeanPosHE.png\" />" << std::endl;
2953 htmlFileT <<
" <img src=\"MapRateMeanPosHO.png\" />" << std::endl;
2955 htmlFileT <<
" <img src=\"MapRateMeanPosHF.png\" />" << std::endl;
2956 htmlFileT <<
"<br>" << std::endl;
2959 htmlFileT <<
"<h2> 6.TXm criterion: Maximum TS position for each channel.</h3>" << std::endl;
2960 htmlFileT <<
"<h3> 6.A. TX position distribution over all events, channel and depth.</h3>" << std::endl;
2961 htmlFileT <<
"<h4> Legend: Bins less " << MIN_M[6][sub] <<
" and more " << MAX_M[6][sub]
2962 <<
" correpond to bad position </h4>" << std::endl;
2964 htmlFileT <<
" <img src=\"HistMaxPosHB.png\" />" << std::endl;
2966 htmlFileT <<
" <img src=\"HistMaxPosHE.png\" />" << std::endl;
2968 htmlFileT <<
" <img src=\"HistMaxPosHO.png\" />" << std::endl;
2970 htmlFileT <<
" <img src=\"HistMaxPosHF.png\" />" << std::endl;
2971 htmlFileT <<
"<br>" << std::endl;
2972 htmlFileT <<
"<h3> 6.B. Rate of bad TX position (<" << MIN_M[6][sub] <<
", >" << MAX_M[6][sub]
2973 <<
") in each channel for each depth. </h3>" << std::endl;
2974 htmlFileT <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
2976 htmlFileT <<
" <img src=\"MapRateMaxPosHB.png\" />" << std::endl;
2978 htmlFileT <<
" <img src=\"MapRateMaxPosHE.png\" />" << std::endl;
2980 htmlFileT <<
" <img src=\"MapRateMaxPosHO.png\" />" << std::endl;
2982 htmlFileT <<
" <img src=\"MapRateMaxPosHF.png\" />" << std::endl;
2983 htmlFileT <<
"<br>" << std::endl;
2985 htmlFileT <<
"</body> " << std::endl;
2986 htmlFileT <<
"</html> " << std::endl;
2990 htmlFileC <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
2991 htmlFileC <<
"<head>" << std::endl;
2992 htmlFileC <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
2993 htmlFileC <<
"<title> Raw Data Analyser </title>" << std::endl;
2994 htmlFileC <<
"<style type=\"text/css\">" << std::endl;
2995 htmlFileC <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }"
2997 htmlFileC <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
2998 htmlFileC <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; "
2999 "text-align: center;}"
3001 htmlFileC <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
3002 htmlFileC <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
3003 htmlFileC <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
3004 htmlFileC <<
"</style>" << std::endl;
3005 htmlFileC <<
"<body>" << std::endl;
3008 htmlFileC <<
"<h1> Criteria for calibration channels for HB, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3010 htmlFileC <<
"<h1> Criteria for calibration channels for HE, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3012 htmlFileC <<
"<h1> Criteria for calibration channels for HO, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3014 htmlFileC <<
"<h1> Criteria for calibration channels for HF, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3015 htmlFileC <<
"<br>" << std::endl;
3018 htmlFileC <<
"<h2> 1.Cc criterion: CapID errors for each channel.</h3>" << std::endl;
3019 htmlFileC <<
"<h3> 1.A. Rate of CapId failures in each channel for each depth.</h3>" << std::endl;
3020 htmlFileC <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3022 htmlFileC <<
" <img src=\"MapRateCapCalibHB.png\" />" << std::endl;
3024 htmlFileC <<
" <img src=\"MapRateCapCalibHE.png\" />" << std::endl;
3026 htmlFileC <<
" <img src=\"MapRateCapCalibHO.png\" />" << std::endl;
3028 htmlFileC <<
" <img src=\"MapRateCapCalibHF.png\" />" << std::endl;
3029 htmlFileC <<
"<br>" << std::endl;
3032 htmlFileC <<
"<h2> 2. Ac criterion: ADC amplitude collected over all TSs(Full Amplitude) for each channel. </h3>"
3034 htmlFileC <<
"<h3> 2.A. Full ADC amplitude distribution over all events, channels and depths.</h3>" << std::endl;
3035 htmlFileC <<
"<h4> Legend: Bins less " << MIN_C[2][sub] <<
" correpond to bad ADC amplitude </h4>" << std::endl;
3037 htmlFileC <<
" <img src=\"HistAmplCalibHB.png\" />" << std::endl;
3039 htmlFileC <<
" <img src=\"HistAmplCalibHE.png\" />" << std::endl;
3041 htmlFileC <<
" <img src=\"HistAmplCalibHO.png\" />" << std::endl;
3043 htmlFileC <<
" <img src=\"HistAmplCalibHF.png\" />" << std::endl;
3044 htmlFileC <<
"<br>" << std::endl;
3045 htmlFileC <<
"<h3> 2.B. Rate of bad ADC amplitude (<" << MIN_C[2][sub] <<
") in each channel for each depth. </h3>"
3047 htmlFileC <<
"<h4> Channel legend: white - good, other colours - bad. </h4>" << std::endl;
3049 htmlFileC <<
" <img src=\"MapRateAmplCalibHB.png\" />" << std::endl;
3051 htmlFileC <<
" <img src=\"MapRateAmplCalibHE.png\" />" << std::endl;
3053 htmlFileC <<
" <img src=\"MapRateAmplCalibHO.png\" />" << std::endl;
3055 htmlFileC <<
" <img src=\"MapRateAmplCalibHF.png\" />" << std::endl;
3056 htmlFileC <<
"<br>" << std::endl;
3059 htmlFileC <<
"<h2> 3. Wc criterion: RMS (width) of ADC amplutude for each channel.</h3>" << std::endl;
3060 htmlFileC <<
"<h3> 3.A. W distribution over all events, channel and depth.</h3>" << std::endl;
3061 htmlFileC <<
"<h4> Legend: Bins less " << MIN_C[3][sub] <<
" and more " << MAX_C[3][sub]
3062 <<
" correpond to bad RMS </h4>" << std::endl;
3064 htmlFileC <<
" <img src=\"HistRMSCalibHB.png\" />" << std::endl;
3066 htmlFileC <<
" <img src=\"HistRMSCalibHE.png\" />" << std::endl;
3068 htmlFileC <<
" <img src=\"HistRMSCalibHO.png\" />" << std::endl;
3070 htmlFileC <<
" <img src=\"HistRMSCalibHF.png\" />" << std::endl;
3071 htmlFileC <<
"<br>" << std::endl;
3072 htmlFileC <<
"<h3> 3.B. Rate of bad W (<" << MIN_C[3][sub] <<
",>" << MAX_C[3][sub]
3073 <<
") in each channel for each depth.</h3>" << std::endl;
3074 htmlFileC <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3076 htmlFileC <<
" <img src=\"MapRateRMSCalibHB.png\" />" << std::endl;
3078 htmlFileC <<
" <img src=\"MapRateRMSCalibHE.png\" />" << std::endl;
3080 htmlFileC <<
" <img src=\"MapRateRMSCalibHO.png\" />" << std::endl;
3082 htmlFileC <<
" <img src=\"MapRateRMSCalibHF.png\" />" << std::endl;
3083 htmlFileC <<
"<br>" << std::endl;
3086 htmlFileC <<
"<h2> 4. Rc criterion: Ratio ADC value sum over five near maximum (-2, -1, max, +1, +2) TS to ADC "
3087 "value sum over all TS for each channel. </h3>"
3089 htmlFileC <<
"<h3> 4.A. Ratio distribution over all events, channels and depths.</h3>" << std::endl;
3090 htmlFileC <<
"<h4> Legend: Bins less " << MIN_C[4][sub] <<
" and more " << MAX_C[4][sub]
3091 <<
" correpond to bad ratio </h4>" << std::endl;
3093 htmlFileC <<
" <img src=\"Hist43TStoAllTSCalibHB.png\" />" << std::endl;
3095 htmlFileC <<
" <img src=\"Hist43TStoAllTSCalibHE.png\" />" << std::endl;
3097 htmlFileC <<
" <img src=\"Hist43TStoAllTSCalibHO.png\" />" << std::endl;
3099 htmlFileC <<
" <img src=\"Hist43TStoAllTSCalibHF.png\" />" << std::endl;
3100 htmlFileC <<
"<br>" << std::endl;
3101 htmlFileC <<
"<h3> 4.B. Rate of bad Ratio (<" << MIN_C[4][sub] <<
", >" << MAX_C[4][sub]
3102 <<
") in each channel for each depth.</h3>" << std::endl;
3103 htmlFileC <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3105 htmlFileC <<
" <img src=\"MapRate43TStoAllTSCalibHB.png\" />" << std::endl;
3107 htmlFileC <<
" <img src=\"MapRate43TStoAllTSCalibHE.png\" />" << std::endl;
3109 htmlFileC <<
" <img src=\"MapRate43TStoAllTSCalibHO.png\" />" << std::endl;
3111 htmlFileC <<
" <img src=\"MapRate43TStoAllTSCalibHF.png\" />" << std::endl;
3112 htmlFileC <<
"<br>" << std::endl;
3115 htmlFileC <<
"<h2> 5. TNc criterion: Mean TS position for each channel.</h3>" << std::endl;
3116 htmlFileC <<
"<h3> 5.A. TN position distribution over all events, channels and depths.</h3>" << std::endl;
3117 htmlFileC <<
"<h4> Legend: Bins less " << MIN_C[5][sub] <<
" and more " << MAX_C[5][sub]
3118 <<
" correpond to bad position </h4>" << std::endl;
3120 htmlFileC <<
" <img src=\"HistMeanPosCalibHB.png\" />" << std::endl;
3122 htmlFileC <<
" <img src=\"HistMeanPosCalibHE.png\" />" << std::endl;
3124 htmlFileC <<
" <img src=\"HistMeanPosCalibHO.png\" />" << std::endl;
3126 htmlFileC <<
" <img src=\"HistMeanPosCalibHF.png\" />" << std::endl;
3127 htmlFileC <<
"<br>" << std::endl;
3128 htmlFileC <<
"<h3> 5.B. Rate of bad TN position (<" << MIN_C[5][sub] <<
", >" << MAX_C[5][sub]
3129 <<
") in each channel for each depth. </h3>" << std::endl;
3130 htmlFileC <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3132 htmlFileC <<
" <img src=\"MapRateMeanPosCalibHB.png\" />" << std::endl;
3134 htmlFileC <<
" <img src=\"MapRateMeanPosCalibHE.png\" />" << std::endl;
3136 htmlFileC <<
" <img src=\"MapRateMeanPosCalibHO.png\" />" << std::endl;
3138 htmlFileC <<
" <img src=\"MapRateMeanPosCalibHF.png\" />" << std::endl;
3139 htmlFileC <<
"<br>" << std::endl;
3142 htmlFileC <<
"<h2> 6.TXc criterion: Maximum TS position for each channel.</h3>" << std::endl;
3143 htmlFileC <<
"<h3> 6.A. TX position distribution over all events, channel and depth.</h3>" << std::endl;
3144 htmlFileC <<
"<h4> Legend: Bins less " << MIN_C[6][sub] <<
" and more " << MAX_C[6][sub]
3145 <<
" correpond to bad position </h4>" << std::endl;
3147 htmlFileC <<
" <img src=\"HistMaxPosCalibHB.png\" />" << std::endl;
3149 htmlFileC <<
" <img src=\"HistMaxPosCalibHE.png\" />" << std::endl;
3151 htmlFileC <<
" <img src=\"HistMaxPosCalibHO.png\" />" << std::endl;
3153 htmlFileC <<
" <img src=\"HistMaxPosCalibHF.png\" />" << std::endl;
3154 htmlFileC <<
"<br>" << std::endl;
3155 htmlFileC <<
"<h3> 6.B. Rate of bad TX position (<" << MIN_C[6][sub] <<
", >" << MAX_C[6][sub]
3156 <<
") in each channel for each depth. </h3>" << std::endl;
3157 htmlFileC <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3159 htmlFileC <<
" <img src=\"MapRateMaxPosCalibHB.png\" />" << std::endl;
3161 htmlFileC <<
" <img src=\"MapRateMaxPosCalibHE.png\" />" << std::endl;
3163 htmlFileC <<
" <img src=\"MapRateMaxPosCalibHO.png\" />" << std::endl;
3165 htmlFileC <<
" <img src=\"MapRateMaxPosCalibHF.png\" />" << std::endl;
3166 htmlFileC <<
"<br>" << std::endl;
3168 htmlFileC <<
"</body> " << std::endl;
3169 htmlFileC <<
"</html> " << std::endl;
3173 htmlFileD <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
3174 htmlFileD <<
"<head>" << std::endl;
3175 htmlFileD <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
3176 htmlFileD <<
"<title> Remote Monitoring Tool Global </title>" << std::endl;
3177 htmlFileD <<
"<style type=\"text/css\">" << std::endl;
3178 htmlFileD <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }"
3180 htmlFileD <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
3181 htmlFileD <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; "
3182 "text-align: center;}"
3184 htmlFileD <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
3185 htmlFileD <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
3186 htmlFileD <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
3187 htmlFileD <<
"</style>" << std::endl;
3188 htmlFileD <<
"<body>" << std::endl;
3191 htmlFileD <<
"<h1> Response drift for HB: Current RUN = " <<
runnumber <<
", Reference RUN = " << refrunnumber
3192 <<
" </h1>" << std::endl;
3194 htmlFileD <<
"<h1> Response drift for HE: Current RUN = " <<
runnumber <<
", Reference RUN = " << refrunnumber
3195 <<
" </h1>" << std::endl;
3197 htmlFileD <<
"<h1> Response drift for HO: Current RUN = " <<
runnumber <<
", Reference RUN = " << refrunnumber
3198 <<
" </h1>" << std::endl;
3200 htmlFileD <<
"<h1> Response drift for HF: Current RUN = " <<
runnumber <<
", Reference RUN = " << refrunnumber
3201 <<
" </h1>" << std::endl;
3202 htmlFileD <<
"<br>" << std::endl;
3205 htmlFileD <<
"<h2> 1. Gain Stability (GS) </h3>" << std::endl;
3206 htmlFileD <<
"<h3> 1.A. Averaged channel response, collected over all TS, for Current run in each channel for each "
3209 htmlFileD <<
"<h4> Channel legend: colour means cooresponding value of mean response. </h4>" << std::endl;
3211 htmlFileD <<
" <img src=\"MapRateAmpl1HB.png\" />" << std::endl;
3213 htmlFileD <<
" <img src=\"MapRateAmpl1HE.png\" />" << std::endl;
3215 htmlFileD <<
" <img src=\"MapRateAmpl1HO.png\" />" << std::endl;
3217 htmlFileD <<
" <img src=\"MapRateAmpl1HF.png\" />" << std::endl;
3218 htmlFileD <<
"<br>" << std::endl;
3219 htmlFileD <<
"<h3> 1.B. Averaged channel response, collected over all TS, for Reference run in each channel for "
3222 htmlFileD <<
"<h4> Channel legend: colour means cooresponding value of mean response. </h4>" << std::endl;
3224 htmlFileD <<
" <img src=\"MapRateAmpl2HB.png\" />" << std::endl;
3226 htmlFileD <<
" <img src=\"MapRateAmpl2HE.png\" />" << std::endl;
3228 htmlFileD <<
" <img src=\"MapRateAmpl2HO.png\" />" << std::endl;
3230 htmlFileD <<
" <img src=\"MapRateAmpl2HF.png\" />" << std::endl;
3231 htmlFileD <<
"<br>" << std::endl;
3232 htmlFileD <<
"<h3> 1.C. Relative difference between Current run and Current run distribution over all events, "
3233 "channels for each depth.</h3>"
3235 htmlFileD <<
"<h4> Legend: Bins less -" << porog[sub] <<
"% and more +" << porog[sub]
3236 <<
"% correpond to bad relative difference position </h4>" << std::endl;
3238 htmlFileD <<
" <img src=\"HistAmplDriftDepthHB.png\" />" << std::endl;
3240 htmlFileD <<
" <img src=\"HistAmplDriftDepthHE.png\" />" << std::endl;
3242 htmlFileD <<
" <img src=\"HistAmplDriftDepthHO.png\" />" << std::endl;
3244 htmlFileD <<
" <img src=\"HistAmplDriftDepthHF.png\" />" << std::endl;
3245 htmlFileD <<
"<br>" << std::endl;
3246 htmlFileD <<
"<h3> 1.D. Rate of bad relative difference (<-" << porog[sub] <<
", >+" << porog[sub]
3247 <<
") in each channel for each depth.</h3>" << std::endl;
3248 htmlFileD <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3250 htmlFileD <<
" <img src=\"MapRateAmplDriftHB.png\" />" << std::endl;
3252 htmlFileD <<
" <img src=\"MapRateAmplDriftHE.png\" />" << std::endl;
3254 htmlFileD <<
" <img src=\"MapRateAmplDriftHO.png\" />" << std::endl;
3256 htmlFileD <<
" <img src=\"MapRateAmplDriftHF.png\" />" << std::endl;
3257 htmlFileD <<
"<br>" << std::endl;
3259 htmlFileD <<
"</body> " << std::endl;
3260 htmlFileD <<
"</html> " << std::endl;
3264 htmlFileP <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
3265 htmlFileP <<
"<head>" << std::endl;
3266 htmlFileP <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
3267 htmlFileP <<
"<title> Remote Monitoring Tool Global</title>" << std::endl;
3268 htmlFileP <<
"<style type=\"text/css\">" << std::endl;
3269 htmlFileP <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }"
3271 htmlFileP <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
3272 htmlFileP <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; "
3273 "text-align: center;}"
3275 htmlFileP <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
3276 htmlFileP <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
3277 htmlFileP <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
3278 htmlFileP <<
"</style>" << std::endl;
3279 htmlFileP <<
"<body>" << std::endl;
3282 htmlFileP <<
"<h1> Pedestals for HB, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3284 htmlFileP <<
"<h1> Pedestals for HE, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3286 htmlFileP <<
"<h1> Pedestals for HO, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3288 htmlFileP <<
"<h1> Pedestals for HF, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3289 htmlFileP <<
"<br>" << std::endl;
3292 htmlFileP <<
"<h2> 1.Pm criterion: Pedestals for each CapID .</h3>" << std::endl;
3293 htmlFileP <<
"<h3> 1.A. Pedestal distribution over all events, channels for each CapID and all depths.</h3>"
3295 htmlFileP <<
"<h4> Legend: Bins less " << Pedest[0][sub] <<
" correpond to bad Pedestals </h4>" << std::endl;
3297 htmlFileP <<
" <img src=\"HistPedestalsHB.png\" />" << std::endl;
3299 htmlFileP <<
" <img src=\"HistPedestalsHE.png\" />" << std::endl;
3301 htmlFileP <<
" <img src=\"HistPedestalsHO.png\" />" << std::endl;
3303 htmlFileP <<
" <img src=\"HistPedestalsHF.png\" />" << std::endl;
3304 htmlFileP <<
"<br>" << std::endl;
3305 htmlFileP <<
"<h3> 1.B. Rate of channels at very low Pedestals at least in one CapID for each depth.</h3>"
3307 htmlFileP <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3309 htmlFileP <<
" <img src=\"MapRatePedHB.png\" />" << std::endl;
3311 htmlFileP <<
" <img src=\"MapRatePedHE.png\" />" << std::endl;
3313 htmlFileP <<
" <img src=\"MapRatePedHO.png\" />" << std::endl;
3315 htmlFileP <<
" <img src=\"MapRatePedHF.png\" />" << std::endl;
3318 htmlFileP <<
"<h2> 2.pWm criterion: Pedestal Widths for each CapID .</h3>" << std::endl;
3319 htmlFileP <<
"<h3> 2.A. Pedestal Widths distribution over all events, channels for each CapID and all depths.</h3>"
3321 htmlFileP <<
"<h4> Legend: Bins less " << Pedest[1][sub] <<
" correpond to bad Pedestal Widths </h4>" << std::endl;
3323 htmlFileP <<
" <img src=\"HistPedestalWidthsHB.png\" />" << std::endl;
3325 htmlFileP <<
" <img src=\"HistPedestalWidthsHE.png\" />" << std::endl;
3327 htmlFileP <<
" <img src=\"HistPedestalWidthsHO.png\" />" << std::endl;
3329 htmlFileP <<
" <img src=\"HistPedestalWidthsHF.png\" />" << std::endl;
3330 htmlFileP <<
"<br>" << std::endl;
3331 htmlFileP <<
"<h3> 2.B. Rate of channels at very low Pedestal Widths at least in one CapID for each depth.</h3>"
3333 htmlFileP <<
"<h4> Channel legend: white - good, other colour - bad. </h4>" << std::endl;
3335 htmlFileP <<
" <img src=\"MapRatePedWidthsHB.png\" />" << std::endl;
3337 htmlFileP <<
" <img src=\"MapRatePedWidthsHE.png\" />" << std::endl;
3339 htmlFileP <<
" <img src=\"MapRatePedWidthsHO.png\" />" << std::endl;
3341 htmlFileP <<
" <img src=\"MapRatePedWidthsHF.png\" />" << std::endl;
3344 htmlFileP <<
"<h2> 3.Pedestal and pedestalWidths vs Amplitude .</h3>" << std::endl;
3345 htmlFileP <<
"<h3> 3.A. Correlation of Pedestal(pedestalWidths) and Amplitude over all channels and events .</h3>"
3347 htmlFileP <<
"<h4> Legend: colour - entries </h4>" << std::endl;
3349 htmlFileP <<
"<img src=\"CorrelationsMapPedestalVsfullAmplitudeHB.png\" />" << std::endl;
3351 htmlFileP <<
"<img src=\"CorrelationsMapPedestalVsfullAmplitudeHE.png\" />" << std::endl;
3353 htmlFileP <<
"<img src=\"CorrelationsMapPedestalVsfullAmplitudeHO.png\" />" << std::endl;
3355 htmlFileP <<
"<img src=\"CorrelationsMapPedestalVsfullAmplitudeHF.png\" />" << std::endl;
3356 htmlFileP <<
"<br>" << std::endl;
3360 htmlFileS <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
3361 htmlFileS <<
"<head>" << std::endl;
3362 htmlFileS <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
3363 htmlFileS <<
"<title> Remote Monitoring Tool Global</title>" << std::endl;
3364 htmlFileS <<
"<style type=\"text/css\">" << std::endl;
3365 htmlFileS <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }"
3367 htmlFileS <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
3368 htmlFileS <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; "
3369 "text-align: center;}"
3371 htmlFileS <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
3372 htmlFileS <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
3373 htmlFileS <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
3374 htmlFileS <<
"</style>" << std::endl;
3375 htmlFileS <<
"<body>" << std::endl;
3378 htmlFileS <<
"<h1> ADC Shape for HB, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3380 htmlFileS <<
"<h1> ADC Shape for HE, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3382 htmlFileS <<
"<h1> ADC Shape for HO, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3384 htmlFileS <<
"<h1> ADC Shape for HF, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3385 htmlFileP <<
"<br>" << std::endl;
3387 htmlFileS <<
"<h2> 1.Mean ADC Shape </h3>" << std::endl;
3388 htmlFileS <<
"<h3> 1.A. ADC shape averaged over all good channels, depth and events.</h3>" << std::endl;
3391 htmlFileS <<
" <img src=\"HistGoodTSshapesHB.png\" />" << std::endl;
3393 htmlFileS <<
" <img src=\"HistGoodTSshapesHE.png\" />" << std::endl;
3395 htmlFileS <<
" <img src=\"HistGoodTSshapesHO.png\" />" << std::endl;
3397 htmlFileS <<
" <img src=\"HistGoodTSshapesHF.png\" />" << std::endl;
3398 htmlFileS <<
"<br>" << std::endl;
3399 htmlFileS <<
"<h3> 1.B. ADC shape averaged over all bad channels, depth and events. Bad channels are selected by 5 "
3400 "criteria: CapId, A, W, P, Pw</h3>"
3404 htmlFileS <<
" <img src=\"HistBadTSshapesHB.png\" />" << std::endl;
3406 htmlFileS <<
" <img src=\"HistBadTSshapesHE.png\" />" << std::endl;
3408 htmlFileS <<
" <img src=\"HistBadTSshapesHO.png\" />" << std::endl;
3410 htmlFileS <<
" <img src=\"HistBadTSshapesHF.png\" />" << std::endl;
3412 htmlFileS <<
"<h2> 2. ADC in Time Slice </h3>" << std::endl;
3413 htmlFileS <<
"<h3> 2.A. ADC counts histogrammed over all channels, depth and events.</h3>" << std::endl;
3416 htmlFileS <<
" <img src=\"Hist_ADC_HB_All.png\" />" << std::endl;
3418 htmlFileS <<
" <img src=\"Hist_ADC_HE_All.png\" />" << std::endl;
3420 htmlFileS <<
" <img src=\"Hist_ADC_HO_All.png\" />" << std::endl;
3422 htmlFileS <<
" <img src=\"Hist_ADC_HF_All.png\" />" << std::endl;
3423 htmlFileS <<
"<br>" << std::endl;
3424 htmlFileS <<
"<h3> 2.B. ADC counts histogrammed over all channels and events for each depth separately. </h3>"
3428 htmlFileS <<
" <img src=\"Hist_ADC_HB_DS.png\" />" << std::endl;
3430 htmlFileS <<
" <img src=\"Hist_ADC_HE_DS.png\" />" << std::endl;
3432 htmlFileS <<
" <img src=\"Hist_ADC_HO_DS.png\" />" << std::endl;
3434 htmlFileS <<
" <img src=\"Hist_ADC_HF_DS.png\" />" << std::endl;
3436 htmlFileS <<
"<h2> 3. ADC Sum in Time Slice </h3>" << std::endl;
3437 htmlFileS <<
"<h3> 3.A. ADC Sum over all channels histogrammed over all events for each depth separately. </h3>"
3441 htmlFileS <<
" <img src=\"Hist_SumADC_HB.png\" />" << std::endl;
3443 htmlFileS <<
" <img src=\"Hist_SumADC_HE.png\" />" << std::endl;
3445 htmlFileS <<
" <img src=\"Hist_SumADC_HO.png\" />" << std::endl;
3447 htmlFileS <<
" <img src=\"Hist_SumADC_HF.png\" />" << std::endl;
3449 htmlFileS <<
"<h3> 3.B. ADC Sum over all channels histogrammed over all events for each depth separately. </h3>"
3453 htmlFileS <<
" <img src=\"Hist_SumADC_HB0.png\" />" << std::endl;
3455 htmlFileS <<
" <img src=\"Hist_SumADC_HE0.png\" />" << std::endl;
3457 htmlFileS <<
" <img src=\"Hist_SumADC_HO0.png\" />" << std::endl;
3459 htmlFileS <<
" <img src=\"Hist_SumADC_HF0.png\" />" << std::endl;
3461 htmlFileS <<
"<h3> 3.C. ADC Sum over all channels histogrammed over all events for each depth separately. </h3>"
3465 htmlFileS <<
" <img src=\"Hist_SumADC_HB1.png\" />" << std::endl;
3467 htmlFileS <<
" <img src=\"Hist_SumADC_HE1.png\" />" << std::endl;
3469 htmlFileS <<
" <img src=\"Hist_SumADC_HO1.png\" />" << std::endl;
3471 htmlFileS <<
" <img src=\"Hist_SumADC_HF1.png\" />" << std::endl;
3481 for (
int sub = 1; sub <= 4; sub++) {
3484 htmlFile.open(
"HB.html");
3486 htmlFile.open(
"HE.html");
3488 htmlFile.open(
"HO.html");
3490 htmlFile.open(
"HF.html");
3492 htmlFile <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
3493 htmlFile <<
"<head>" << std::endl;
3494 htmlFile <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
3495 htmlFile <<
"<title> Remote Monitoring Tool </title>" << std::endl;
3496 htmlFile <<
"<style type=\"text/css\">" << std::endl;
3497 htmlFile <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }"
3499 htmlFile <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
3500 htmlFile <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; "
3501 "text-align: center;}"
3503 htmlFile <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
3504 htmlFile <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
3505 htmlFile <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
3506 htmlFile <<
" td.s5 { font-family: arial, arial ce, helvetica; background-color: #FF00FF; }" << std::endl;
3507 htmlFile <<
" td.s6 { font-family: arial, arial ce, helvetica; background-color: #9ACD32; }" << std::endl;
3508 htmlFile <<
" td.s7 { font-family: arial, arial ce, helvetica; background-color: #32CD32; }" << std::endl;
3509 htmlFile <<
" td.s8 { font-family: arial, arial ce, helvetica; background-color: #00FFFF; }" << std::endl;
3510 htmlFile <<
" td.s9 { font-family: arial, arial ce, helvetica; background-color: #FFE4E1; }" << std::endl;
3511 htmlFile <<
" td.s10 { font-family: arial, arial ce, helvetica; background-color: #A0522D; }" << std::endl;
3512 htmlFile <<
" td.s11 { font-family: arial, arial ce, helvetica; background-color: #1E90FF; }" << std::endl;
3513 htmlFile <<
" td.s12 { font-family: arial, arial ce, helvetica; background-color: #00BFFF; }" << std::endl;
3514 htmlFile <<
" td.s13 { font-family: arial, arial ce, helvetica; background-color: #FFFF00; }" << std::endl;
3515 htmlFile <<
" td.s14 { font-family: arial, arial ce, helvetica; background-color: #B8860B; }" << std::endl;
3516 htmlFile <<
"</style>" << std::endl;
3517 htmlFile <<
"<body>" << std::endl;
3519 htmlFile <<
"<h1> HCAL BARREL, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3521 htmlFile <<
"<h1> HCAL ENDCAP, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3523 htmlFile <<
"<h1> HCAL OUTER, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3525 htmlFile <<
"<h1> HCAL FORWARD, RUN = " <<
runnumber <<
" </h1>" << std::endl;
3526 htmlFile <<
"<br>" << std::endl;
3528 htmlFile <<
"<a name=\"Top\"></a>\n";
3529 htmlFile <<
"<b>Contents:<br>\n";
3530 htmlFile <<
"1. <a href=\"#AnalysisResults\">Analysis results</a><br>\n";
3531 htmlFile <<
"2. <a href=\"#Status\">Status</a><br>\n";
3532 htmlFile <<
"2A. <a href=\"#ChannelMap\">Channel map</a><br>\n";
3536 htmlFile <<
"<a name=\"AnalysisResults\"></a>\n";
3538 htmlFile <<
"<h2> 1. Analysis results for HB</h2>" << std::endl;
3540 htmlFile <<
"<h2> 1. Analysis results for HE</h2>" << std::endl;
3542 htmlFile <<
"<h2> 1. Analysis results for HO</h2>" << std::endl;
3544 htmlFile <<
"<h2> 1. Analysis results for HF</h2>" << std::endl;
3545 htmlFile <<
"<table width=\"400\">" << std::endl;
3546 htmlFile <<
"<tr>" << std::endl;
3550 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3551 <<
runnumber <<
"/HB_Tile.html\">Megatile Channels</a></td>" << std::endl;
3556 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3557 <<
runnumber <<
"/HB_Pedestals.html\">Pedestals</a></td>" << std::endl;
3558 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3559 <<
runnumber <<
"/HB_Shapes.html\">ADC Shapes</a></td>" << std::endl;
3563 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3564 <<
runnumber <<
"/HE_Tile.html\">Megatile Channels</a></td>" << std::endl;
3569 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3570 <<
runnumber <<
"/HE_Pedestals.html\">Pedestals</a></td>" << std::endl;
3571 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3572 <<
runnumber <<
"/HE_Shapes.html\">ADC Shapes</a></td>" << std::endl;
3575 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3576 <<
runnumber <<
"/HO_Tile.html\">Megatile Channels</a></td>" << std::endl;
3579 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3580 <<
runnumber <<
"/HO_Pedestals.html\">Pedestals</a></td>" << std::endl;
3581 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3582 <<
runnumber <<
"/HO_Shapes.html\">ADC Shapes</a></td>" << std::endl;
3585 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3586 <<
runnumber <<
"/HF_Tile.html\">Megatile Channels</a></td>" << std::endl;
3589 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3590 <<
runnumber <<
"/HF_Pedestals.html\">Pedestals</a></td>" << std::endl;
3591 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
3592 <<
runnumber <<
"/HF_Shapes.html\">ADC Shapes</a></td>" << std::endl;
3595 htmlFile <<
"</tr>" << std::endl;
3596 htmlFile <<
"</table>" << std::endl;
3597 htmlFile <<
"<br>" << std::endl;
3599 htmlFile <<
"<a name=\"Status\"></a>\n";
3601 htmlFile <<
"<h2> 2.Status HB over all criteria </h2>" << std::endl;
3603 htmlFile <<
"<h2> 2.Status HE over all criteria </h2>" << std::endl;
3605 htmlFile <<
"<h2> 2.Status HO over all criteria </h2>" << std::endl;
3607 htmlFile <<
"<h2> 2.Status HF over all criteria </h2>" << std::endl;
3609 htmlFile <<
"<a name=\"ChannelMap\"></a>\n";
3610 htmlFile <<
"<h3> 2.A.Channel map for each Depth </h3>" << std::endl;
3611 htmlFile <<
"<h4> Channel legend: green - good, not yellow - suspicious(rate of failures at least 0.1), white - "
3612 "not applicable or out of range </h4>"
3615 htmlFile <<
" <img src=\"MAPHB.png\" />" << std::endl;
3617 htmlFile <<
" <img src=\"MAPHE.png\" />" << std::endl;
3619 htmlFile <<
" <img src=\"MAPHO.png\" />" << std::endl;
3621 htmlFile <<
" <img src=\"MAPHF.png\" />" << std::endl;
3622 htmlFile <<
"<br>" << std::endl;
3623 htmlFile <<
"<a href=\"#Top\">to top</a><br>\n";
3988 htmlFile <<
"</body> " << std::endl;
3989 htmlFile <<
"</html> " << std::endl;
4042 htmlFile.open(
"MAP.html");
4043 htmlFile <<
"</html><html xmlns=\"http://www.w3.org/1999/xhtml\">" << std::endl;
4044 htmlFile <<
"<head>" << std::endl;
4045 htmlFile <<
"<meta http-equiv=\"Content-Type\" content=\"text/html\"/>" << std::endl;
4046 htmlFile <<
"<title> Remote Monitoring Tool </title>" << std::endl;
4047 htmlFile <<
"<style type=\"text/css\">" << std::endl;
4048 htmlFile <<
" body,td{ background-color: #FFFFCC; font-family: arial, arial ce, helvetica; font-size: 12px; }"
4050 htmlFile <<
" td.s0 { font-family: arial, arial ce, helvetica; }" << std::endl;
4051 htmlFile <<
" td.s1 { font-family: arial, arial ce, helvetica; font-weight: bold; background-color: #FFC169; "
4052 "text-align: center;}"
4054 htmlFile <<
" td.s2 { font-family: arial, arial ce, helvetica; background-color: #eeeeee; }" << std::endl;
4055 htmlFile <<
" td.s3 { font-family: arial, arial ce, helvetica; background-color: #d0d0d0; }" << std::endl;
4056 htmlFile <<
" td.s4 { font-family: arial, arial ce, helvetica; background-color: #FFC169; }" << std::endl;
4057 htmlFile <<
" td.s5 { font-family: arial, arial ce, helvetica; background-color: #FF00FF; }" << std::endl;
4058 htmlFile <<
" td.s6 { font-family: arial, arial ce, helvetica; background-color: #9ACD32; }" << std::endl;
4059 htmlFile <<
" td.s7 { font-family: arial, arial ce, helvetica; background-color: #32CD32; }" << std::endl;
4060 htmlFile <<
"</style>" << std::endl;
4061 htmlFile <<
"<body>" << std::endl;
4063 htmlFile <<
"<h1> Remote Monitoring Tool, RUN = " <<
runnumber <<
". </h1>" << std::endl;
4064 htmlFile <<
"<br>" << std::endl;
4066 htmlFile <<
"<h2> 1. Analysis results for subdetectors </h2>" << std::endl;
4067 htmlFile <<
"<table width=\"400\">" << std::endl;
4068 htmlFile <<
"<tr>" << std::endl;
4078 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
4079 <<
runnumber <<
"/HB.html\">HB</a></td>" << std::endl;
4080 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
4081 <<
runnumber <<
"/HE.html\">HE</a></td>" << std::endl;
4082 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
4083 <<
runnumber <<
"/HO.html\">HO</a></td>" << std::endl;
4084 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/GLOBAL_"
4085 <<
runnumber <<
"/HF.html\">HF</a></td>" << std::endl;
4087 htmlFile <<
"</tr>" << std::endl;
4088 htmlFile <<
"</table>" << std::endl;
4089 htmlFile <<
"<br>" << std::endl;
4091 htmlFile <<
"<h2> 2. HCAL status over all criteria and subdetectors </h2>" << std::endl;
4092 htmlFile <<
"<h3> 2.A. Channels in detector space </h3>" << std::endl;
4093 htmlFile <<
"<h4> Legend for channel status: green - good, others - may be a problems, white - not applicable or out "
4096 htmlFile <<
" <img src=\"MAP.png\" />" << std::endl;
4097 htmlFile <<
"<br>" << std::endl;
4099 htmlFile <<
"<h3> 2.B. List of Bad channels </h3>" << std::endl;
4103 htmlFile <<
" <td><a href=\"https://cms-conddb.cern.ch/eosweb/hcal/HcalRemoteMonitoring/GlobalRMT/HELP.html\"> "
4104 "Description of criteria for bad channel selection</a></td>"
4107 htmlFile <<
"<table>" << std::endl;
4109 htmlFile <<
"<td class=\"s4\" align=\"center\">#</td>" << std::endl;
4110 htmlFile <<
"<td class=\"s1\" align=\"center\">ETA</td>" << std::endl;
4111 htmlFile <<
"<td class=\"s1\" align=\"center\">PHI</td>" << std::endl;
4112 htmlFile <<
"<td class=\"s1\" align=\"center\">DEPTH</td>" << std::endl;
4113 htmlFile <<
"<td class=\"s1\" align=\"center\">RBX</td>" << std::endl;
4114 htmlFile <<
"<td class=\"s1\" align=\"center\">RM</td>" << std::endl;
4115 htmlFile <<
"<td class=\"s1\" align=\"center\">PIXEL</td>" << std::endl;
4116 htmlFile <<
"<td class=\"s1\" align=\"center\">RM_FIBER</td>" << std::endl;
4117 htmlFile <<
"<td class=\"s1\" align=\"center\">FIBER_CH</td>" << std::endl;
4118 htmlFile <<
"<td class=\"s1\" align=\"center\">QIE</td>" << std::endl;
4119 htmlFile <<
"<td class=\"s1\" align=\"center\">ADC</td>" << std::endl;
4120 htmlFile <<
"<td class=\"s1\" align=\"center\">CRATE</td>" << std::endl;
4121 htmlFile <<
"<td class=\"s1\" align=\"center\">DCC</td>" << std::endl;
4122 htmlFile <<
"<td class=\"s1\" align=\"center\">SPIGOT</td>" << std::endl;
4123 htmlFile <<
"<td class=\"s1\" align=\"center\">HTR_FIBER</td>" << std::endl;
4124 htmlFile <<
"<td class=\"s1\" align=\"center\">HTR_SLOT</td>" << std::endl;
4125 htmlFile <<
"<td class=\"s1\" align=\"center\">HTR_FPGA</td>" << std::endl;
4126 htmlFile <<
"<td class=\"s5\" align=\"center\">RMT-criteria</td>" << std::endl;
4127 htmlFile <<
"</tr>" << std::endl;
4171 htmlFile <<
"</table>" << std::endl;
4172 htmlFile <<
"<br>" << std::endl;
4314 htmlFile <<
"</body> " << std::endl;
4315 htmlFile <<
"</html> " << std::endl;