5 from ROOT
import Belle2
6 from simulation
import add_simulation
11 set_random_seed(12345)
17 module which ckecks if two collections of TOPDigits are equal
22 Use some digit information to sort the digits
23 Returns a python-list containing the sorted digits
27 py_list = [x
for x
in unsortedPyStoreArray]
40 load original TOPDigits and the packed/unpacked ones, sort and compare them
50 digitsUnpacked_sorted = self.
sortDigits(digitsUnpacked)
53 if not len(digits_sorted) == len(digitsUnpacked_sorted):
54 B2FATAL(
"TOPDigits: size not equal after packing and unpacking")
58 for i
in range(len(digits_sorted)):
59 digit = digits_sorted[i]
60 digitUnpacked = digitsUnpacked_sorted[i]
63 assert digit.getModuleID() == digitUnpacked.getModuleID()
64 assert digit.getPixelID() == digitUnpacked.getPixelID()
65 assert digit.getChannel() == digitUnpacked.getChannel()
66 assert digit.getRawTime() == digitUnpacked.getRawTime()
67 assert abs(digit.getTime() - digitUnpacked.getTime()) < precision
68 assert abs(digit.getTimeError() - digitUnpacked.getTimeError()) < precision
69 assert digit.getPulseHeight() == digitUnpacked.getPulseHeight()
70 assert abs(digit.getPulseWidth() - digitUnpacked.getPulseWidth()) < precision
71 assert digit.getIntegral() == digitUnpacked.getIntegral()
72 assert digit.getFirstWindow() == digitUnpacked.getFirstWindow()
73 assert digit.getHitQuality() == digitUnpacked.getHitQuality()
74 assert digit.getStatus() == digitUnpacked.getStatus()
75 assert digit.isChargeShare() == digitUnpacked.isChargeShare()
76 assert digit.isPrimaryChargeShare() == digitUnpacked.isPrimaryChargeShare()
81 eventinfosetter = register_module(
'EventInfoSetter')
82 eventinfosetter.param({
'evtNumList': [10]})
83 main.add_module(eventinfosetter)
85 particlegun = register_module(
'ParticleGun')
86 particlegun.param(
'pdgCodes', [13, -13])
87 particlegun.param(
'nTracks', 10)
88 main.add_module(particlegun)
90 add_simulation(main, components=[
'TOP'])
91 set_module_parameters(main, type=
"Geometry", useDB=
False, components=[
"TOP"])
93 converter = register_module(
'TOPRawDigitConverter')
94 converter.param(
'outputDigitsName',
'TOPDigitsUnpacked')
95 converter.param(
'minPulseWidth', 0.0)
96 converter.param(
'maxPulseWidth', 1000.0)
97 main.add_module(converter)
101 progress = register_module(
'Progress')
102 main.add_module(progress)