13 import RpcRawDataMonitoring.RPCRawDataMonUtils
as RPCRawDataMonUtils
14 import RpcRawDataMonitoring.HistDecorate
as HistDecorate
16 colors = [ROOT.kBlack, ROOT.kPink-6, ROOT.kOrange-9, ROOT.kRed, ROOT.kAzure+7, ROOT.kCyan-3, ROOT.kGreen+2, ROOT.kYellow, ROOT.kBlack, ROOT.kBlue]
17 markers= [20, 24, 21, 25, 22, 26, 23, 32, 33, 27]
22 layerNames = {1:
"BM-Confirm-Gasgap1", 2:
"BM-Confirm-Gasgap2", 3:
"BM-Pivot-Gasgap1", 4:
"BM-Pivot-Gasgap2", 5:
"BO-Confirm-Gasgap1", 6:
"BO-Confirm-Gasgap2", 7:
"BOF_BOG-dR2-Gasgap1", 8:
"BOF_BOG-dR2-Gasgap2"}
23 isMeasPhiNames = [
"#eta view",
"#phi view"]
27 (-8, 2): 1, (-8, 1): 2,
28 (-7, 2): 3, (-7, 1): 4,
29 (-6, 2): 5, (-6, 1): 6,
30 (-5, 2): 7, (-5, 1): 8,
31 (-4, 3): 9, (-4, 2): 10, (-4, 1): 11,
32 (-3, 2): 12, (-3, 1): 13,
33 (-2, 3): 14, (-2, 2): 15, (-2, 1): 16,
34 (-1, 2): 17, (-1, 1): 18,
35 ( 0, 2): 19, ( 0, 1): 20,
36 ( 1, 1): 21, ( 1, 2): 22,
37 ( 2, 1): 23, ( 2, 2): 24, ( 2, 3): 25,
38 ( 3, 1): 26, ( 3, 2): 27,
39 ( 4, 1): 28, ( 4, 2): 29, ( 4, 3): 30,
40 ( 5, 1): 31, ( 5, 2): 32,
41 ( 6, 1): 33, ( 6, 2): 34,
42 ( 7, 1): 35, ( 7, 2): 36,
43 ( 8, 1): 37, ( 8, 2): 38,
49 _rangeOfVariables_perPanel = {
53 "predRate" : (0., 1e6),
54 "meanRate" : (0., 1e6),
55 "extrapMuons" : (0., 2000),
57 "detEffError" : (0., 0.1),
58 "hitMultiplicity" : (-0.5, 10.5),
59 "averageClusterSize" : (1, 4),
60 "outTimeHitFrac" : (0., 1.),
61 "outTimeHitFrac_onTrack" : (0., 1.),
62 "outTimeHitFracError" : (0., 0.1)
65 _rangeOfVariables_allPanels = {
69 "predRate" : (0., 30e6),
70 "meanRate" : (0., 30e6),
71 "extrapMuons" : (0., 2000),
73 "detEffError" : (0., 0.1),
74 "hitMultiplicity" : (-0.5, 10.5),
75 "averageClusterSize" : (1, 4),
76 "outTimeHitFrac" : (0., 1.),
77 "outTimeHitFrac_onTrack" : (0., 1.),
78 "outTimeHitFracError" : (0., 0.1)
90 "hitMultiplicity" : 10,
91 "averageClusterSize" : 30,
92 "outTimeHitFrac" : 20,
93 "outTimeHitFrac_onTrack" : 20,
94 "outTimeHitFracError" : 20
99 "p1" :
'Hz/(10^{34} cm^{-2}s^{-1})',
111 "hitMultiplicity" :
'',
112 "averageClusterSize" :
'',
113 "outTimeHitFrac" :
'',
114 "outTimeHitFrac_onTrack" :
'',
115 "outTimeHitFracError" :
''
127 "hitMultiplicity" : 2,
128 "averageClusterSize" : 3,
129 "outTimeHitFrac" : 4,
130 "outTimeHitFrac_onTrack" : 4,
131 "outTimeHitFracError" : 4
137 "chi2" :
"Chi2/ndf" ,
139 "muon_Z_num" :
"Muons(Z) extrapolated to individual RPC panels with hits",
140 "muon_Z_den" :
"Muons(Z) extrapolated to individual RPC panels",
141 "muon_all_num" :
"Muons(All) extrapolated to individual RPC panels with hits",
142 "muon_all_den" :
"Muons(All) extrapolated to individual RPC panels",
143 "predRate" :
"Predicted hit rate" ,
144 "meanRate" :
"Mean actual hit rate" ,
145 "extrapMuons" :
"Extrapolated muons",
146 "detEff" :
"Muon detection efficiency",
147 "detEffError" :
"Muon detection efficiency error",
148 "hitMultiplicity" :
"RPC hit multiplicity",
149 "averageClusterSize" :
"Average cluster size",
150 "outTimeHitFrac" :
"Fraction of RPC hits with |t|>12.5 ns",
151 "outTimeHitFrac_onTrack" :
"Fraction of RPC on-track hits with |t|>12.5 ns",
152 "outTimeHitFracError" :
"Error of fraction of RPC hits with |t|>12.5 ns"
155 _cut_variables = [
"p0",
"p1",
"chi2",
"predRate",
"meanRate"]
157 _cuts_summaryHist_allSectorLayer = {
165 _cuts_summaryHist_perSectorLayer = {
176 _list_outPanelInds = []
177 _list_outPanelNames = []
178 _hists_bad_panels = []
192 T_predRate_panel = 30e6
216 panel_name = i_panel.getPanelName()
217 panelLocalPar = i_panel.getLocalPos()
218 sec_layer = i_panel.getSector()
219 i_etaSta = panelLocalPar[0]
220 i_dbZ = panelLocalPar[1]
221 i_dbPhi = panelLocalPar[2]
222 i_measPhi = panelLocalPar[3]
237 dbPhi_meas_detect = sec_layer_detect[(i_dbPhi, i_measPhi)]
239 sec_layer_detect[(i_dbPhi, i_measPhi)] = {}
240 dbPhi_meas_detect = sec_layer_detect[(i_dbPhi, i_measPhi)]
245 config = [p_ind, panel_name, sec_layer, (i_dbPhi, i_measPhi), (i_etaSta, i_dbZ)]
255 temp_dic_sectors_layers = {}
257 panel_name = i_panel.getPanelName()
258 sec_layer = i_panel.getSector()
259 i_measPhi = i_panel.measPhi
266 print (
"_post_allSectorAndLayers - do nothing")
283 y_title = out_htitle+
'['+y_unit+
']'
286 for i_layer
in range(1, 9):
287 h_name =
"Summary_layer"+
str(i_layer)+
"_"+out_hname
288 h_title =
"Summary of "+out_htitle.lower()+
'('+layerNames[i_layer]+
')'
290 h1_all = ROOT.TH1F(h_name, h_title+
";Sector;"+y_title, 33, -16.5, 16.5)
291 dic_hist[i_layer] = h1_all
293 for sec_lay, obj_perSecLay
in self._dic_sectors_layers.
items():
294 contentAndErr = self.
getContent(obj_perSecLay)
295 i_bin = sec_lay[0] + 17
297 dic_hist[sec_lay[1]].SetBinContent(i_bin, contentAndErr[0])
298 dic_hist[sec_lay[1]].SetBinError(i_bin, contentAndErr[1])
321 for i_sector
in sectors:
322 for i_layer
in range(1, 9):
329 sector_layer_name = (
"Summary_Sector%d_Layer%d" %(i_sector, i_layer))
330 sector_layer_title =
"Summary of "+out_htitle.lower()+
" of panels in sector"+
str(i_sector)+
'-'+layerNames[i_layer]
332 for i_dbPhi
in [1,2]:
333 for i_measPhi
in [0,1]:
335 if not (i_dbPhi, i_measPhi)
in dic_perSecLayer:
338 dic_dbPhi_meas = dic_perSecLayer[(i_dbPhi, i_measPhi)]
340 h_name = sector_layer_name+(
"_dbPhi%d_measPhi%d" %(i_dbPhi, i_measPhi))+
"_"+out_hname
341 h_title = sector_layer_title+
"-dbPhi"+
str(i_dbPhi)+
'-'+isMeasPhiNames[i_measPhi]
342 hist = ROOT.TH1F(h_name, h_title+
";(#eta station, dbZ);"+y_title, 19, 0, 19)
344 for i_eta_dbZ, object_perPanel
in dic_dbPhi_meas.items():
346 x_bin = (i_eta_dbZ[0]-1)*2+i_eta_dbZ[1]+3
347 elif i_eta_dbZ[0] > 2:
348 x_bin = (i_eta_dbZ[0]-1)*2+i_eta_dbZ[1]+2
350 x_bin = (i_eta_dbZ[0]-1)*2+i_eta_dbZ[1]+1
354 hist.SetBinContent(x_bin, cont_error[0])
355 hist.SetBinError(x_bin, cont_error[1])
358 dic_hist[(i_dbPhi, i_measPhi)] = hist
379 x_title = out_htitle+
'['+x_unit+
']'
385 h_name = out_hname+
"_per_sectors_per_layers"
386 h_title = out_htitle+
" per sectors per layers"
388 all_hist = ROOT.TH1F(h_name+
"_etaAndPhiPanels", h_title+
"(#eta & #phi view)"+
";" +x_title+
";N_{sectors*layers}", nbins, x_min, x_max)
389 all_hist.GetXaxis().SetRange(0, nbins+1)
390 for sec_lay, obj_perSecLay
in self._dic_sectors_layers.
items():
391 contentAndErr = self.
getContent(obj_perSecLay)
392 all_hist.Fill(contentAndErr[0])
417 h_name = out_hname+
"_per_panel"
418 h_title = out_htitle+
" per panel"
420 h_name_all = h_name+
"_etaAndPhiView"
421 h_name_eta = h_name+
"_etaView"
422 h_name_phi = h_name+
"_phiView"
423 h_title_all = h_title +
"(#eta & #phi view)"
424 h_title_eta = h_title +
"(#eta view)"
425 h_title_phi = h_title +
"(#phi view)"
427 hist_allPanels = ROOT.TH1F(h_name_all, h_title_all+
";"+x_title+
";N_{panels}", nbins, x_min, x_max)
428 hist_allPanels_eta = ROOT.TH1F(h_name_eta, h_title_eta+
";"+x_title+
";N_{panels}", nbins, x_min, x_max)
429 hist_allPanels_phi = ROOT.TH1F(h_name_phi, h_title_phi+
";"+x_title+
";N_{panels}", nbins, x_min, x_max)
430 hist_allPanels. GetXaxis().SetRange(0, nbins+1)
431 hist_allPanels_eta.GetXaxis().SetRange(0, nbins+1)
432 hist_allPanels_phi.GetXaxis().SetRange(0, nbins+1)
435 for i_dbPhi_meas, dic_dbPhi_meas
in dic_perSecLayer.items():
436 for i_eta_dbZ, object_perPanel
in dic_dbPhi_meas.items():
438 hist_allPanels.Fill(cont_error[0])
439 if i_dbPhi_meas[1] == 0:
440 hist_allPanels_eta.Fill(cont_error[0])
442 hist_allPanels_phi.Fill(cont_error[0])
444 return [hist_allPanels, hist_allPanels_eta, hist_allPanels_phi]
470 for i_layer
in range(1, 9):
471 for i_measPhi
in [0, 1]:
472 h2_name = out_hname+
"_layer"+
str(i_layer)+
"_measPhi"+
str(i_measPhi)
473 h2_title = out_htitle+
"("+layerNames[i_layer]+
"-"+isMeasPhiNames[i_measPhi]+
")"
474 h2_temp = ROOT.TH2D(h2_name, h2_title+
";#eta index;#phi sector;"+z_title, 38, -19, 19, 32, 0, 32)
475 dic_hists[(i_layer, i_measPhi)] = h2_temp
478 i_layer = i_sector[1]
480 for i_dbPhi_meas, dic_dbPhi_meas
in dic_perSecLayer.items():
481 h2_temp = dic_hists[(i_layer, i_dbPhi_meas[1])]
482 y_bin = (abs(i_sector[0])-1)*2+i_dbPhi_meas[0]
488 for i_eta_dbZ, object_perPanel
in dic_dbPhi_meas.items():
489 x_bin = Bin_EtaDbZ[(i_eta_dbZ[0]*side, i_eta_dbZ[1])]
490 (content, error) = self.
getContent(object_perPanel)
492 h2_temp.SetBinContent(x_bin, y_bin, content)
495 for i_layer
in range(1, 9):
496 for i_measPhi
in [0, 1]:
497 h2 = dic_hists[(i_layer, i_measPhi)]
502 h2.GetZaxis().SetRangeUser(z_min, z_max)
512 list_hists.append(h2)
520 for i_layer
in range(1, 9):
522 i_histo = dic_hist[i_layer]
523 i_histo.SetMarkerSize(1.0)
524 i_histo.SetMarkerStyle(markers[ind])
525 i_histo.SetMarkerColor(colors[ind])
526 i_histo.SetLineColor(colors[ind])
527 i_histo.SetLineWidth(2)
529 minY =
min(i_histo.GetMinimum(), minY)
530 maxY =
max(i_histo.GetMaximum(), maxY)
532 diffMaxMin = maxY-minY
534 for i_layer
in range(1, 9):
535 i_histo = dic_hist[i_layer]
536 i_histo.GetXaxis().SetTitleOffset(1.0)
537 i_histo.GetYaxis().SetTitleOffset(1.0)
538 i_histo.GetYaxis().SetRangeUser(minY-0.2*diffMaxMin, maxY+1.5*diffMaxMin)
541 self.setCutLine(i_histo, 0)
543 list_hist.append(i_histo)
552 for i_dbPhi_meas, i_histo
in dic_hist.items():
553 i_histo.SetMarkerSize(1.0)
554 i_histo.SetMarkerStyle(markers[ind])
555 i_histo.SetMarkerColor(colors[ind])
556 i_histo.SetLineColor(colors[ind])
557 i_histo.SetLineWidth(2)
558 i_histo.GetXaxis().SetTitleOffset(1.0)
559 i_histo.GetYaxis().SetTitleOffset(1.2)
562 minY =
min(i_histo.GetMinimum(), minY)
563 maxY =
max(i_histo.GetMaximum(), maxY)
565 diffMaxMin = maxY-minY
569 for i_dbPhi
in [1,2]:
570 for i_measPhi
in [0,1]:
572 i_histo = dic_hist[(i_dbPhi, i_measPhi)]
576 i_histo.GetYaxis().SetRangeUser(minY-0.2*diffMaxMin, maxY+1.3*diffMaxMin)
579 self.setCutLine(i_histo, 1)
581 list_hist.append(i_histo)
590 '(2,1)',
'(2,2)',
'(2,3)',
592 '(4,1)',
'(4,2)',
'(4,3)',
598 for i_bin
in range(1, 20):
599 hist.GetXaxis().SetBinLabel(i_bin, etaStation_dbZ[i_bin-1])
614 if len(list_panelInds) > 8000
or len(list_panelNames) > 8000 :
630 raise NotImplementedError
634 raise NotImplementedError
640 if sec_layer
in temp_dic:
641 temp_dic[sec_layer].Add(h_temp)
643 all_name_suffix = (
"_Sector%d_Layer%d" %(sec_layer[0], sec_layer[1]))
644 all_title_suffix =
"(Sector"+
str(sec_layer[0])+
'-'+layerNames[sec_layer[1]]+
")"
645 all_hist = self.initialHist_1Panel(all_name_suffix, all_title_suffix, titles)
647 temp_dic[sec_layer] = all_hist
648 temp_dic[sec_layer].Add(h_temp)
654 raise NotImplementedError
658 raise NotImplementedError
665 super(Draw_Occupancy, self).
__init__(inHisto)
678 h_name = h_LB.GetName()
679 h_title = h_LB.GetTitle()
680 g_name = h_name.replace(
'LB',
'Lumi')
681 g_title = h_title.replace(
'LB',
'Lumi')
682 g_Xtitle =
'Inst luminosity [10^{34} cm^{-2}s^{-1}]'
683 g_Ytitle =
'RPC hit rate[Hz]'
692 if lbInfo[
'AtlasPhysics'] ==
'false' or float(lbInfo[
'Duration'])<50.:
695 hit_content =
round(h_LB.GetBinContent(LB), 2)
696 hit_err =
round(h_LB.GetBinError(LB),2)
709 hit_rate = hit_content/(evt_content*timeScale)
711 err_temp1 =
pow(hit_err/evt_content,2)
712 err_temp2 =
pow(evt_error*hit_content/
pow(evt_content,2), 2)
713 hitRate_err = math.sqrt(err_temp1+err_temp2)/timeScale
715 hit_y_err = hitRate_err
717 x.append(
float(lbInfo[
'InstLumi']) )
719 y_err.append( hit_y_err )
723 null_graph = ROOT.TGraph()
744 g_Xtitle =
'Inst luminosity [10^{34} cm^{-2}s^{-1}]'
745 g_Ytitle =
'RPC hit rate[Hz]'
754 if lbInfo[
'AtlasPhysics'] ==
'false' or float(lbInfo[
'Duration'])<50. :
757 hit_content = self.
_in_histo.GetBinContent(LB, panelInd+1)
758 hit_err = self.
_in_histo.GetBinError(LB, panelInd+1)
769 hit_rate = hit_content/(evt_content*timeScale)
771 err_temp1 =
pow(hit_err/evt_content,2)
772 err_temp2 =
pow(evt_error*hit_content/
pow(evt_content,2), 2)
773 hitRate_err = math.sqrt(err_temp1+err_temp2)/timeScale
775 hit_y_err = hitRate_err
777 x.append(
float(lbInfo[
'InstLumi']) )
779 y_err.append( hit_y_err )
789 fitRe_g1 = {
"p0": 0,
"p0_err":0,
"p1": -1,
"p1_err":-1,
"chi2":-1,
"mean":0,
"mean_err":0}
790 out_dic = {
'fit_able':fit_able,
'is_good':is_good,
'hit_rate':0}
794 out_dic = {
'fit_able':fit_able,
'is_good':is_good,
'hit_rate':gr}
797 out_dic[
'N_selLBs'] = len_LB
800 out_dic[
'is_good'] =
False
808 titles = [name_pre+
"_LB", name_pre+
" vs LB",
"LB",
"N_{hits}"]
815 h_temp = ROOT.TH1F(
"h_temp"+
str(panelInd),
"h_temp"+
str(panelInd), self.
_nbins, self.
_low, self.
_up)
817 hit_content = self.
_in_histo.GetBinContent(i_bin, panelInd+1)
818 hit_err = self.
_in_histo.GetBinError(i_bin, panelInd+1)
820 h_temp.SetBinContent(i_bin, hit_content)
821 h_temp.SetBinError(i_bin, hit_err)
826 hist = ROOT.TH1F(titles[0]+name_suffix, titles[1]+title_suffix+
";"+titles[2]+
";"+titles[3], self.
_nbins, self.
_low, self.
_up)
833 error = singleObj[
'p0_err']+self.
__refInstLumi*singleObj[
'p1_err']
835 cont = singleObj[
'mean']
836 error = singleObj[
'mean_err']
850 for sec_layer, hist
in temp_dic.items():
867 line = ROOT.TLine(minX, y, maxX, y)
870 line.SetLineColor(ROOT.kBlue)
872 i_histo.GetListOfFunctions().Add(line)
879 super(Draw_HitMultiplicity, self).
__init__(inHisto)
890 panelName = config[1]
897 for i_bin
in range(1, nbins+1):
898 h1_temp.SetBinContent(i_bin, self.
_in_histo.GetBinContent(i_bin, panelInd+1))
899 h1_temp.SetBinError(i_bin, self.
_in_histo.GetBinError(i_bin, panelInd+1))
913 h_temp = ROOT.TH1F(
"h_temp"+
str(panelInd),
"h_temp"+
str(panelInd), self.
_nbins, self.
_low, self.
_up)
915 hit_content = self.
_in_histo.GetBinContent(i_bin, panelInd+1)
916 hit_err = self.
_in_histo.GetBinError(i_bin, panelInd+1)
918 h_temp.SetBinContent(i_bin, hit_content)
919 h_temp.SetBinError(i_bin, hit_err)
924 hist = ROOT.TH1F(titles[0]+name_suffix, titles[1]+title_suffix+
";"+titles[2]+
";"+titles[3], self.
_nbins, self.
_low, self.
_up)
943 all_hist = ROOT.TH1F(out_hname+
"_wholeRPC", out_htitle+
" of whole RPC;" +self.
_out_htitle+
";muon entries", self.
_nbins, self.
_low, self.
_up)
944 eta_hist = ROOT.TH1F(out_hname+
"_etaView", out_htitle+
" in "+isMeasPhiNames[0]+
";"+self.
_out_htitle+
";muon entries", self.
_nbins, self.
_low, self.
_up)
945 phi_hist = ROOT.TH1F(out_hname+
"_phiView", out_htitle+
" in "+isMeasPhiNames[1]+
";"+self.
_out_htitle+
";muon entries", self.
_nbins, self.
_low, self.
_up)
946 all_hist.GetXaxis().SetRange(0, self.
_nbins+1)
947 eta_hist.GetXaxis().SetRange(0, self.
_nbins+1)
948 phi_hist.GetXaxis().SetRange(0, self.
_nbins+1)
950 all_hist.Add(hists_eta_phi[0])
951 all_hist.Add(hists_eta_phi[1])
952 eta_hist.Add(hists_eta_phi[0])
953 phi_hist.Add(hists_eta_phi[1])
955 return [all_hist, eta_hist, phi_hist]
961 for i_hist
in hists_eta_phi:
962 list_hist.append(i_hist)
968 cont = singleObj.GetMean()
969 error = singleObj.GetMeanError()
978 super(Draw_DetectEfficiency, self).
__init__(inHisto)
994 err_low = self.
_in_histo.GetEfficiencyErrorLow(panelInd+1)
995 err_up = self.
_in_histo.GetEfficiencyErrorUp(panelInd+1)
996 cont = self.
_in_histo.GetEfficiency(panelInd+1)
997 if (cont+err_up) > 1:
999 return (cont, err_low, err_up)
1008 panelInd = config[0]
1010 num_hist = self.
_in_histo.GetPassedHistogram()
1011 den_hist = self.
_in_histo.GetTotalHistogram()
1013 h_num_temp = ROOT.TH1F(
"h_effNum"+
str(panelInd),
"h_effNum"+
str(panelInd), 1, 0., 1.)
1014 h_den_temp = ROOT.TH1F(
"h_effDen"+
str(panelInd),
"h_effDen"+
str(panelInd), 1, 0., 1.)
1015 num = num_hist.GetBinContent(panelInd+1); num_err = num_hist.GetBinError(panelInd+1)
1016 den = den_hist.GetBinContent(panelInd+1); den_err = den_hist.GetBinError(panelInd+1)
1017 h_num_temp.SetBinContent(1, num); h_num_temp.SetBinError(1, num_err)
1018 h_den_temp.SetBinContent(1, den); h_den_temp.SetBinError(1, den_err)
1020 h_temp = ROOT.TEfficiency(h_num_temp, h_den_temp)
1026 hist = ROOT.TEfficiency(titles[0]+name_suffix, titles[1]+title_suffix+
";"+titles[2]+
";"+titles[3], self.
_nbins, self.
_low, self.
_up)
1033 for sec_layer, hist
in temp_dic.items():
1038 con_err = [hist.GetEfficiency(1), hist.GetEfficiencyErrorLow(1), hist.GetEfficiencyErrorUp(1)]
1065 content = singleObj[0]
1066 error = singleObj[1]
1068 content = singleObj[1]
1070 return (content, error)
1076 super(Draw_HitOuttimeFraction, self).
__init__(inHisto)
1088 panelInd = config[0]
1090 frac_cont = self.
_in_histo.GetEfficiency(panelInd+1)
1091 frac_err_low = self.
_in_histo.GetEfficiencyErrorLow(panelInd+1)
1092 frac_err_up = self.
_in_histo.GetEfficiencyErrorUp(panelInd+1)
1094 if (frac_cont+frac_err_up) > 1:
1095 frac_err_up = 1. - frac_cont
1096 return (frac_cont, frac_err_low, frac_err_up)
1105 panelInd = config[0]
1107 num_hist = self.
_in_histo.GetPassedHistogram()
1108 den_hist = self.
_in_histo.GetTotalHistogram()
1110 h_num_temp = ROOT.TH1F(
"h_effNum"+
str(panelInd),
"h_effNum"+
str(panelInd), 1, 0., 1.)
1111 h_den_temp = ROOT.TH1F(
"h_effDen"+
str(panelInd),
"h_effDen"+
str(panelInd), 1, 0., 1.)
1112 num = num_hist.GetBinContent(panelInd+1); num_err = num_hist.GetBinError(panelInd+1)
1113 den = den_hist.GetBinContent(panelInd+1); den_err = den_hist.GetBinError(panelInd+1)
1114 h_num_temp.SetBinContent(1, num); h_num_temp.SetBinError(1, num_err)
1115 h_den_temp.SetBinContent(1, den); h_den_temp.SetBinError(1, den_err)
1117 h_temp = ROOT.TEfficiency(h_num_temp, h_den_temp)
1122 hist = ROOT.TEfficiency(titles[0]+name_suffix, titles[1]+title_suffix+
";"+titles[2]+
";"+titles[3], self.
_nbins, self.
_low, self.
_up)
1128 for sec_layer, hist
in temp_dic.items():
1132 con_err = [hist.GetEfficiency(1), hist.GetEfficiencyErrorLow(1), hist.GetEfficiencyErrorUp(1)]
1139 content = singleObj[1]
1142 content = singleObj[0]
1143 error = singleObj[1]
1145 return (content, error)
1152 super(Draw_2DCount, self).
__init__(inHisto)
1156 panelInd = config[0]
1157 cont_err = (self.
_in_histo.GetBinContent(panelInd+1), self.
_in_histo.GetBinError(panelInd+1))
1167 if __name__ ==
'__main__':
1168 print (
"CoreClass: Hello, World !")