Belle II Software  release-05-01-25
CoGCalibration_utils_tbindependent.py
1 # !/usr/bin/env python
2 # -*- coding: utf-8 -*-
3 
4 
18 
19 
20 from basf2 import *
21 from svd import *
22 import ROOT
23 from ROOT import Belle2, TFile, TTree, TH1F, TH2F, TH2D, TGraph, TFitResultPtr
24 from ROOT import TROOT, gROOT, TF1, TMath, gStyle, gDirectory
25 import os
26 # import numpy
27 import math
28 import random
29 from array import array
30 import basf2
31 import sys
32 from ROOT.Belle2 import SVDCoGCalibrationFunction
33 from ROOT.Belle2 import SVDCoGTimeCalibrations
34 
35 import matplotlib.pyplot as plt
36 import numpy as np
37 from numpy.linalg import inv, pinv
38 from numpy.linalg import det, norm, cond
39 
40 svd_recoDigits = "SVDRecoDigitsFromTracks"
41 cdc_Time0 = "EventT0"
42 svd_Clusters = "SVDClustersFromTracks"
43 
44 gROOT.SetBatch(True)
45 
46 # mode = True
47 
48 
50  """
51  Python class used for checking SVD CoG Calibration stored in a localDB,
52  creating a localDB with the correction and a root file to check the corrections
53  """
54 
56  """
57  Function that allows to set if apply the CDC latency correction
58 
59  parameters:
60  mode (bool):
61  - if True -> not apply correction
62  - if False -> apply correction
63  """
64 
66  print("Not Correct for CDC latency: " + str(mode) + " " + str(self.notApplyCDCLatencyCorrection))
67 
68  def fillLists(self, svdRecoDigits_rel_Clusters, svdClusters_rel_RecoTracks_cl):
69  """
70  Function that fill the lists needed for the CoG corrections
71 
72  parameters:
73  svdRecoDigits_rel_Clusters (SVDRecoDigit): reco digits related to clusters
74  svdClusters_rel_RecoTracks_cl (SVDCluster): cluster related to tracks
75  """
76 
77  timeCluster = svdClusters_rel_RecoTracks_cl.getClsTime()
78  snrCluster = svdClusters_rel_RecoTracks_cl.getSNR()
79  layerCluster = svdClusters_rel_RecoTracks_cl.getSensorID().getLayerNumber()
80  layerIndex = layerCluster - 3
81  sensorCluster = svdClusters_rel_RecoTracks_cl.getSensorID().getSensorNumber()
82  sensorIndex = sensorCluster - 1
83  ladderCluster = svdClusters_rel_RecoTracks_cl.getSensorID().getLadderNumber()
84  ladderIndex = ladderCluster - 1
85  sideCluster = svdClusters_rel_RecoTracks_cl.isUCluster()
86  if sideCluster:
87  sideIndex = 1
88  else:
89  sideIndex = 0
90 
91  hasTimezero = self.cdcEventT0.hasEventT0()
92  # print("Time: " + str(hasTimezero))
93  if hasTimezero:
94  TBClusters = svdRecoDigits_rel_Clusters.getModeByte().getTriggerBin()
95  TBIndex = ord(TBClusters)
96  tZero = self.cdcEventT0.getEventT0()
97  # tZero_err = self.cdcEventT0.getEventT0Uncertainty()
98  tZero_err = 5.1
99  tZeroSync = tZero - 4000./509 * (3 - TBIndex)
100  et0 = self.EventT0Hist
101  et0.Fill(tZeroSync)
102  # print(str(tZero_err))
103 
104  # print(self.resList[sideIndex])
105  resHist = self.resList[layerIndex][ladderIndex][sensorIndex][sideIndex]
106  resHist.Fill(timeCluster - tZeroSync)
107  spHist = self.spList[layerIndex][ladderIndex][sensorIndex][sideIndex]
108  # spHist.Fill(timeCluster, 1.3*timeCluster - 50 + random.gauss(0,10))
109  spHist.Fill(timeCluster, tZeroSync)
110  cogHist = self.cogList[layerIndex][ladderIndex][sensorIndex][sideIndex]
111  cogHist.Fill(timeCluster)
112  cdcHist = self.cdcList[layerIndex][ladderIndex][sensorIndex][sideIndex]
113  cdcHist.Fill(tZeroSync)
114  snrHist = self.snrList[layerIndex][ladderIndex][sensorIndex][sideIndex]
115  snrHist.Fill(snrCluster)
116 
117  self.nList[layerIndex][ladderIndex][sensorIndex][sideIndex] += 1
118 
119  self.sumCOGList[layerIndex][ladderIndex][sensorIndex][sideIndex] += timeCluster
120  self.sumCOGList2[layerIndex][ladderIndex][sensorIndex][sideIndex] += timeCluster * timeCluster
121  self.sumCOGList3[layerIndex][ladderIndex][sensorIndex][sideIndex] += timeCluster * timeCluster * timeCluster
122  self.sumCOGList4[layerIndex][ladderIndex][sensorIndex][sideIndex] += timeCluster * \
123  timeCluster * timeCluster * timeCluster
124  self.sumCOGList5[layerIndex][ladderIndex][sensorIndex][sideIndex] += timeCluster * \
125  timeCluster * timeCluster * timeCluster * timeCluster
126  self.sumCOGList6[layerIndex][ladderIndex][sensorIndex][sideIndex] += timeCluster * \
127  timeCluster * timeCluster * timeCluster * timeCluster * timeCluster
128 
129  self.sumCDCList[layerIndex][ladderIndex][sensorIndex][sideIndex] += tZeroSync
130  self.sumCDCCOGList[layerIndex][ladderIndex][sensorIndex][sideIndex] += tZeroSync * timeCluster
131  self.sumCDCCOGList2[layerIndex][ladderIndex][sensorIndex][sideIndex] += tZeroSync * timeCluster * timeCluster
132  self.sumCDCCOGList3[layerIndex][ladderIndex][sensorIndex][sideIndex] += tZeroSync * \
133  timeCluster * timeCluster * timeCluster
134 
135 
136  self.NTOT = self.NTOT + 1
137 
138  def set_localdb(self, localDB):
139  """
140  Function that allows to set the localDB
141 
142  parameters:
143  localDB (str): Name of the localDB used
144  """
145 
146  self.localdb = localDB
147 
148  def initialize(self):
149  """
150  Initialize object (histograms, lists, ...) used by the class
151  """
152 
153 
154  self.outputFileName = "CoGCorrectionMonitor_" + self.localdb + ".root"
155 
156 
158  self.resList = []
159 
160  self.spList = []
161 
162  self.cogList = []
163 
164  self.cdcList = []
165 
166  self.snrList = []
167 
168  self.nList = []
169 
170  self.sumCOGList = []
171 
172  self.sumCOGList2 = []
173 
174  self.sumCOGList3 = []
175 
176  self.sumCOGList4 = []
177 
178  self.sumCOGList5 = []
179 
180  self.sumCOGList6 = []
181 
182  self.sumCDCList = []
183 
184  self.sumCDCCOGList = []
185 
186  self.sumCDCCOGList2 = []
187 
188  self.sumCDCCOGList3 = []
189 
191 
192  self.Evt = 0
193  for layer in geoCache.getLayers(Belle2.VXD.SensorInfoBase.SVD):
194  layerList0 = []
195  layerList1 = []
196  layerList2 = []
197  layerList3 = []
198  layerList4 = []
199  layerList5 = []
200  layerList6 = []
201  layerList7 = []
202  layerList8 = []
203 
204  layerList9 = []
205  layerList10 = []
206  layerList11 = []
207  layerList12 = []
208  layerList13 = []
209  layerList14 = []
210  layerList15 = []
211  layerList16 = []
212  layerList17 = []
213 
214  self.resList.append(layerList0)
215  self.spList.append(layerList1)
216  self.cogList.append(layerList2)
217  self.cdcList.append(layerList3)
218  self.snrList.append(layerList4)
219 
220  self.nList.append(layerList8)
221  self.sumCOGList.append(layerList7)
222  self.sumCOGList2.append(layerList9)
223  self.sumCOGList3.append(layerList10)
224  self.sumCOGList4.append(layerList11)
225  self.sumCOGList5.append(layerList12)
226  self.sumCOGList6.append(layerList13)
227 
228  self.sumCDCList.append(layerList14)
229  self.sumCDCCOGList.append(layerList15)
230  self.sumCDCCOGList2.append(layerList16)
231  self.sumCDCCOGList3.append(layerList17)
232 
233  # layerNumber = layer.getLayerNumber()
234  for ladder in geoCache.getLadders(layer):
235  ladderList0 = []
236  ladderList1 = []
237  ladderList2 = []
238  ladderList3 = []
239  ladderList4 = []
240  ladderList5 = []
241  ladderList6 = []
242  ladderList7 = []
243  ladderList8 = []
244 
245  ladderList9 = []
246  ladderList10 = []
247  ladderList11 = []
248  ladderList12 = []
249  ladderList13 = []
250  ladderList14 = []
251  ladderList15 = []
252  ladderList16 = []
253  ladderList17 = []
254 
255  layerList0.append(ladderList0)
256  layerList1.append(ladderList1)
257  layerList2.append(ladderList2)
258  layerList3.append(ladderList3)
259  layerList4.append(ladderList4)
260  layerList5.append(ladderList5)
261  layerList6.append(ladderList6)
262  layerList7.append(ladderList7)
263  layerList8.append(ladderList8)
264 
265  layerList9.append(ladderList9)
266  layerList10.append(ladderList10)
267  layerList11.append(ladderList11)
268  layerList12.append(ladderList12)
269  layerList13.append(ladderList13)
270  layerList14.append(ladderList14)
271  layerList15.append(ladderList15)
272  layerList16.append(ladderList16)
273  layerList17.append(ladderList17)
274  # ladderNumber = ladder.getLadderNumber()
275  for sensor in geoCache.getSensors(ladder):
276  sensorList0 = []
277  sensorList1 = []
278  sensorList2 = []
279  sensorList3 = []
280  sensorList4 = []
281  sensorList5 = []
282  sensorList6 = []
283  sensorList7 = []
284  sensorList8 = []
285 
286  sensorList9 = []
287  sensorList10 = []
288  sensorList11 = []
289  sensorList12 = []
290  sensorList13 = []
291  sensorList14 = []
292  sensorList15 = []
293  sensorList16 = []
294  sensorList17 = []
295 
296  ladderList0.append(sensorList0)
297  ladderList1.append(sensorList1)
298  ladderList2.append(sensorList2)
299  ladderList3.append(sensorList3)
300  ladderList4.append(sensorList4)
301  ladderList5.append(sensorList5)
302  ladderList6.append(sensorList6)
303  ladderList7.append(sensorList7)
304  ladderList8.append(sensorList8)
305 
306  ladderList9.append(sensorList9)
307  ladderList10.append(sensorList10)
308  ladderList11.append(sensorList11)
309  ladderList12.append(sensorList12)
310  ladderList13.append(sensorList13)
311  ladderList14.append(sensorList14)
312  ladderList15.append(sensorList15)
313  ladderList16.append(sensorList16)
314  ladderList17.append(sensorList17)
315  # sensorNumber = sensor.getSensorNumber()
316  '''
317  for side in range(2):
318  sideList0 = []
319  sideList1 = []
320  sideList2 = []
321  sideList3 = []
322  sideList4 = []
323  sideList5 = []
324  sideList6 = []
325  sideList7 = []
326  sideList8 = []
327  sensorList0.append(sideList0)
328  sensorList1.append(sideList1)
329  sensorList2.append(sideList2)
330  sensorList3.append(sideList3)
331  sensorList4.append(sideList4)
332  sensorList5.append(sideList5)
333  sensorList6.append(sideList6)
334  sensorList7.append(sideList7)
335  sensorList8.append(sideList8)
336  '''
337  for i in geoCache.getLayers(Belle2.VXD.SensorInfoBase.SVD):
338  layerN = i.getLayerNumber()
339  li = layerN - 3
340  for j in geoCache.getLadders(i):
341  ladderN = j.getLadderNumber()
342  ldi = ladderN - 1
343  for k in geoCache.getSensors(j):
344  sensorN = k.getSensorNumber()
345  si = sensorN - 1
346  for s in range(2):
347  self.resList[li][ldi][si].append(
348  TH1F("res" + "_" + str(k) + "." + str(s), " ", 200, -100, 100))
349  self.spList[li][ldi][si].append(
350  TH2D("sp" + "_" + str(k) + "." + str(s), " ", 300, -150, 150, 300, -150, 150))
351  self.cogList[li][ldi][si].append(
352  TH1F("cog" + "_" + str(k) + "." + str(s), " ", 200, -100, 100))
353  self.cdcList[li][ldi][si].append(
354  TH1F("cdc" + "_" + str(k) + "." + str(s), " ", 200, -100, 100))
355  self.snrList[li][ldi][si].append(
356  TH1F("snr" + "_" + str(k) + "." + str(s), " ", 100, 0, 100))
357  self.nList[li][ldi][si].append(0)
358  self.sumCOGList[li][ldi][si].append(0)
359  self.sumCOGList2[li][ldi][si].append(0)
360  self.sumCOGList3[li][ldi][si].append(0)
361  self.sumCOGList4[li][ldi][si].append(0)
362  self.sumCOGList5[li][ldi][si].append(0)
363  self.sumCOGList6[li][ldi][si].append(0)
364  self.sumCDCList[li][ldi][si].append(0)
365  self.sumCDCCOGList[li][ldi][si].append(0)
366  self.sumCDCCOGList2[li][ldi][si].append(0)
367  self.sumCDCCOGList3[li][ldi][si].append(0)
368 
369 
370  self.EventT0Hist = TH1F("EventT0", " ", 200, -100, 100)
371 
372  self.gaus = TF1("gaus", 'gaus(0)', -150, 100)
373 
374  self.pol = TF1("pol", "[0] + [1]*x + [2]*x*x + [3]*x*x*x", -150, 150)
375 
376  self.NTOT = 0
377 
378  def event(self):
379  """
380  Function that allows to cicle on the events
381  """
382  timeClusterU = 0
383  timeClusterV = 0
384  sideIndex = 0
385  TBIndexU = 0
386  TBIndexV = 0
387 
388  self.Evt = self.Evt + 1
389 
390 
391  self.cdcEventT0 = Belle2.PyStoreObj(cdc_Time0)
392  svdCluster_list = Belle2.PyStoreArray(svd_Clusters)
393  svdRecoDigit_list = Belle2.PyStoreArray(svd_recoDigits)
394 
395  for svdCluster in svdCluster_list:
396  svdRecoDigit = svdCluster.getRelatedTo(svd_recoDigits)
397  self.fillLists(svdRecoDigit, svdCluster)
398 
399  def terminate(self):
400  """
401  Terminates te class and produces the output rootfile
402  """
403 
404  tfile = TFile(self.outputFileName, 'recreate')
406 
408 
409  timeCal = SVDCoGCalibrationFunction()
410  par = [0, 1, 0, 0]
411  TCOGMEAN = 0
412  T0MEAN = 0
413 
414  '''
415  geoCache = Belle2.VXD.GeoCache.getInstance()
416  for layer in geoCache.getLayers(Belle2.VXD.SensorInfoBase.SVD):
417  layerNumber = layer.getLayerNumber()
418  li = layerNumber - 3
419  for ladder in geoCache.getLadders(layer):
420  ladderNumber = ladder.getLadderNumber()
421  ldi = ladderNumber - 1
422  for sensor in geoCache.getSensors(ladder):
423  sensorNumber = sensor.getSensorNumber()
424  si = sensorNumber - 1
425  for side in range(2):
426  for tb in range(4):
427  n = self.nList[li][ldi][si][side][tb]
428  NTOT += n
429  '''
431  gDirectory.mkdir("plots")
432  gDirectory.cd("plots")
433  for layer in geoCache.getLayers(Belle2.VXD.SensorInfoBase.SVD):
434  layerNumber = layer.getLayerNumber()
435  li = layerNumber - 3
436  gDirectory.mkdir("layer" + str(layer))
437  gDirectory.cd("layer" + str(layer))
438  for ladder in geoCache.getLadders(layer):
439  ladderNumber = ladder.getLadderNumber()
440  ldi = ladderNumber - 1
441  for sensor in geoCache.getSensors(ladder):
442  sensorNumber = sensor.getSensorNumber()
443  si = sensorNumber - 1
444  for side in range(2):
445  # Resolution distribution Histograms with Gaussian Fit
446  res = self.resList[li][ldi][si][side]
447  fitResult = int(TFitResultPtr(res.Fit(self.gaus, "R")))
448 
449  res.Write()
450  # COG Distribution Histograms
451  cog = self.cogList[li][ldi][si][side]
452  cog.Write()
453  # CDC EventT0 Distribution Histograms
454  cdc = self.cdcList[li][ldi][si][side]
455  cdc.Write()
456  # SNR Distribution Histograms
457  snr = self.snrList[li][ldi][si][side]
458  snrMean = snr.GetMean()
459  snr.Write()
460  # ScatterPlot Histograms with Linear Fit
461  sp = self.spList[li][ldi][si][side]
462  covscalebias = sp.GetCovariance()
463  pfxsp = sp.ProfileX()
464  self.pol.SetParameters(-50, 1.5, 0.001, 0.00001)
465  pfxsp.Fit(self.pol, "R")
466  par[0] = self.pol.GetParameter(0)
467  par[1] = self.pol.GetParameter(1)
468  par[2] = self.pol.GetParameter(2)
469  par[3] = self.pol.GetParameter(3)
470  sp.Write()
471  pfxsp.Write()
472 
473  if sp.GetRMS() != 0:
474  m = sp.GetCovariance() / pow(sp.GetRMS(1), 2)
475  # m = sp.GetCovariance()/cog.GetRMS()
476  m_err = 2 / pow(sp.GetRMS(), 3) * sp.GetRMSError() * sp.GetCovariance()
477  q = sp.GetMean(2) - m * sp.GetMean(1)
478  q_err = math.sqrt(pow(sp.GetMeanError(2), 2) +
479  pow(m * sp.GetMeanError(1), 2) + pow(m_err * sp.GetMean(1), 2))
480  else:
481  m = 1
482  m_err = 0
483  q = 0
484  q_err = 0
485 
486  # T0MEAN = self.EventT0Hist.GetMean()
487  T0MEAN = cdc.GetMean()
488  '''
489  print(
490  "Mean of the CoG corrected distribution: " +
491  str(TCOGMEAN) +
492  " Mean of the T0 distribution: " +
493  str(T0MEAN))
494  '''
495  timeCal.set_current(1)
496  timeCal.set_pol3parameters(par[0] - T0MEAN, par[1], par[2], par[3])
497  print("setting CoG calibration for " + str(layerNumber) + "." + str(ladderNumber) + "." + str(sensorNumber))
498  payload.set(layerNumber, ladderNumber, sensorNumber, bool(side), 1, timeCal)
499  gDirectory.cd("../")
500 
501  gDirectory.cd("../")
502  self.EventT0Hist.Write()
503 
504  Belle2.Database.Instance().storeData(Belle2.SVDCoGTimeCalibrations.name, payload, iov)
505 
506  tfile.Close()
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.sumCOGList
sumCOGList
sum of CoG times
Definition: CoGCalibration_utils_tbindependent.py:170
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.snrList
snrList
Cluster SNR.
Definition: CoGCalibration_utils_tbindependent.py:166
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.sumCDCCOGList3
sumCDCCOGList3
sum of t0 times to the third
Definition: CoGCalibration_utils_tbindependent.py:188
Belle2::IntervalOfValidity::always
static IntervalOfValidity always()
Function that returns an interval of validity that is always valid, c.f.
Definition: IntervalOfValidity.h:72
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.sumCDCCOGList
sumCDCCOGList
sum of t0*cog
Definition: CoGCalibration_utils_tbindependent.py:184
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.sumCOGList6
sumCOGList6
sum of CoG times to the sixth
Definition: CoGCalibration_utils_tbindependent.py:180
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.Evt
Evt
counts the number of events
Definition: CoGCalibration_utils_tbindependent.py:192
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.fillLists
def fillLists(self, svdRecoDigits_rel_Clusters, svdClusters_rel_RecoTracks_cl)
Definition: CoGCalibration_utils_tbindependent.py:68
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule
Definition: CoGCalibration_utils_tbindependent.py:49
Belle2::PyStoreObj
a (simplified) python wrapper for StoreObjPtr.
Definition: PyStoreObj.h:69
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.initialize
def initialize(self)
Definition: CoGCalibration_utils_tbindependent.py:148
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.gaus
gaus
gaus function used for fitting distributions
Definition: CoGCalibration_utils_tbindependent.py:372
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.NTOT
NTOT
counts the number of clusters
Definition: CoGCalibration_utils_tbindependent.py:136
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.pol
pol
third order polynomial function used for fitting distributions
Definition: CoGCalibration_utils_tbindependent.py:374
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.localdb
localdb
set the name of the localDB used
Definition: CoGCalibration_utils_tbindependent.py:146
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.cdcEventT0
cdcEventT0
registers PyStoreObj EventT0
Definition: CoGCalibration_utils_tbindependent.py:391
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.nList
nList
number of clusters
Definition: CoGCalibration_utils_tbindependent.py:168
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.terminate
def terminate(self)
Definition: CoGCalibration_utils_tbindependent.py:399
Belle2::VXD::GeoCache::getInstance
static GeoCache & getInstance()
Return a reference to the singleton instance.
Definition: GeoCache.cc:215
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.cdcList
cdcList
t0
Definition: CoGCalibration_utils_tbindependent.py:164
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.resList
resList
lists used to create the histograms for each TB : residuals
Definition: CoGCalibration_utils_tbindependent.py:158
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.sumCOGList4
sumCOGList4
sum of CoG times to the fourth
Definition: CoGCalibration_utils_tbindependent.py:176
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.notApplyCDCLatencyCorrection
notApplyCDCLatencyCorrection
parameter that allows to apply or not the CDC latency correction
Definition: CoGCalibration_utils_tbindependent.py:65
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.sumCDCList
sumCDCList
sum of t0 times
Definition: CoGCalibration_utils_tbindependent.py:182
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.outputFileName
outputFileName
name of the output file
Definition: CoGCalibration_utils_tbindependent.py:154
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.sumCOGList3
sumCOGList3
sum of CoG times to the third
Definition: CoGCalibration_utils_tbindependent.py:174
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.set_localdb
def set_localdb(self, localDB)
Definition: CoGCalibration_utils_tbindependent.py:138
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.sumCOGList5
sumCOGList5
sum of CoG times to the fifth
Definition: CoGCalibration_utils_tbindependent.py:178
Belle2::PyStoreArray
a (simplified) python wrapper for StoreArray.
Definition: PyStoreArray.h:58
Belle2::Database::Instance
static Database & Instance()
Instance of a singleton Database.
Definition: Database.cc:54
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.cogList
cogList
cog
Definition: CoGCalibration_utils_tbindependent.py:162
Belle2::SVDCalibrationsBase
base class for calibrations classes
Definition: SVDCalibrationsBase.h:36
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.sumCDCCOGList2
sumCDCCOGList2
sum of t0*cog squared
Definition: CoGCalibration_utils_tbindependent.py:186
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.EventT0Hist
EventT0Hist
distribution of EventT0
Definition: CoGCalibration_utils_tbindependent.py:370
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.notApplyCorrectForCDCLatency
def notApplyCorrectForCDCLatency(self, mode)
Definition: CoGCalibration_utils_tbindependent.py:55
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.event
def event(self)
Definition: CoGCalibration_utils_tbindependent.py:378
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.spList
spList
scatterplot t0 vs cog
Definition: CoGCalibration_utils_tbindependent.py:160
svd.CoGCalibration_utils_tbindependent.SVDCoGTimeCalibrationImporterModule.sumCOGList2
sumCOGList2
sum of CoG times squared
Definition: CoGCalibration_utils_tbindependent.py:172