167def execute(run, sfile, lb_max):
168 db = []
169 gROOT.Reset()
170 file = TFile(sfile)
171
172 shits = []
173 shits.append("InnerDetector/Pixel/IBL/Hits/AvgOccActivePerLumi_IBL2D")
174 shits.append("InnerDetector/Pixel/BLayer/Hits/AvgOccActivePerLumi_BLayer")
175 shits.append("InnerDetector/Pixel/Layer1/Hits/AvgOccActivePerLumi_Layer1")
176 shits.append("InnerDetector/Pixel/Layer2/Hits/AvgOccActivePerLumi_Layer2")
177 shits.append("InnerDetector/Pixel/ECA/Hits/AvgOccActivePerLumi_ECA")
178 shits.append("InnerDetector/Pixel/ECC/Hits/AvgOccActivePerLumi_ECC")
179
180 sbtagdeg = "InnerDetector/Pixel/PixelExpert/BTagDegEstimation/TotalDegradationPerLumi"
181
182 sclus = "Global/Luminosity/AnyTrigger/nClustersAll_vs_LB"
183
184 nlayer = 6
185 hhits = []
186 fexist_hhits = True
187 for i in range(0, nlayer):
188 if not file.Get(shits[i]):
189 fexist_hhits = False
190 continue
191
192 hhits.append(file.Get(shits[i]))
193
194 standby_lb = []
195 if fexist_hhits is True:
196 find_standby(nlayer, hhits, lb_max, standby_lb)
197
198
199
200
201
202 fexist_hbtagdeg = True
203 hbtagdeg = file.Get(sbtagdeg)
204 if not hbtagdeg:
205 fexist_hbtagdeg = False
206 btagdegestim_tolerable_lb = []
207 btagdegestim_intolerable_lb = []
208
209 if fexist_hhits is True and fexist_hbtagdeg is True:
210 find_btagdeg(hbtagdeg, 0.05, 0.25, btagdegestim_tolerable_lb, lb_max)
211 find_btagdeg(hbtagdeg, 0.25, 1., btagdegestim_intolerable_lb, lb_max)
212
213 if 0:
214 print_btagdegdef("tolerable", btagdegestim_tolerable_lb)
215 print_btagdegdef("intolerable", btagdegestim_intolerable_lb)
216
217 if 1:
218 assign_btagdegdef(db, "PERFORMANCE_TOLERABLE", run, btagdegestim_tolerable_lb)
219 assign_btagdegdef(db, "PERFORMANCE_INTOLERABLE", run, btagdegestim_intolerable_lb)
220
221 fexist_hclus = True
222 hclus = file.Get(sclus)
223 if not hclus:
224 fexist_hclus = False
225 if fexist_hclus is True:
226 nevent = hclus.GetEntries()
227 if nevent < 100000:
228 assign_lowstat(db, run, "assign PIXEL_LOWSTAT")
229
230 return db