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 print(
'size: ', len(digits_sorted), len(digitsUnpacked_sorted))
55 B2FATAL(
"TOPDigits: size not equal after packing and unpacking")
59 for i
in range(len(digits_sorted)):
61 digit = digits_sorted[i]
62 digitUnpacked = digitsUnpacked_sorted[i]
65 assert digit.getModuleID() == digitUnpacked.getModuleID()
66 assert digit.getPixelID() == digitUnpacked.getPixelID()
67 assert digit.getChannel() == digitUnpacked.getChannel()
68 assert digit.getRawTime() == digitUnpacked.getRawTime()
69 assert abs(digit.getTime() - digitUnpacked.getTime()) < precision
70 assert abs(digit.getTimeError() - digitUnpacked.getTimeError()) < precision
71 assert digit.getPulseHeight() == digitUnpacked.getPulseHeight()
72 assert abs(digit.getPulseWidth() - digitUnpacked.getPulseWidth()) < precision
74 assert digit.getFirstWindow() == digitUnpacked.getFirstWindow()
75 assert digit.getHitQuality() == digitUnpacked.getHitQuality()
76 assert digit.getStatus() == digitUnpacked.getStatus()
77 assert digit.isChargeShare() == digitUnpacked.isChargeShare()
78 assert digit.isPrimaryChargeShare() == digitUnpacked.isPrimaryChargeShare()
84 module which ckecks if two collections of TOPRawDigits are equal
89 Use some digit information to sort the digits
90 Returns a python-list containing the sorted digits
94 py_list = [x
for x
in unsortedPyStoreArray]
101 x.getCarrierNumber(),
109 load original TOPRawDigits and the packed/unpacked ones, sort and compare them
119 digitsUnpacked_sorted = self.
sortDigits(digitsUnpacked)
122 if not len(digits_sorted) == len(digitsUnpacked_sorted):
123 print(
'size: ', len(digits_sorted), len(digitsUnpacked_sorted))
124 B2FATAL(
"TOPRawDigits: size not equal after packing and unpacking")
127 for i
in range(len(digits_sorted)):
129 digit = digits_sorted[i]
130 digitUnpacked = digitsUnpacked_sorted[i]
133 assert digit.getScrodID() == digitUnpacked.getScrodID()
134 assert digit.getCarrierNumber() == digitUnpacked.getCarrierNumber()
135 assert digit.getASICNumber() == digitUnpacked.getASICNumber()
136 assert digit.getASICChannel() == digitUnpacked.getASICChannel()
137 assert digit.getASICWindow() == digitUnpacked.getASICWindow()
138 assert digit.getTFine() == digitUnpacked.getTFine()
139 assert digit.getSampleRise() == digitUnpacked.getSampleRise()
140 assert digit.getDeltaSamplePeak() == digitUnpacked.getDeltaSamplePeak()
141 assert digit.getDeltaSampleFall() == digitUnpacked.getDeltaSampleFall()
142 assert digit.getValueRise0() == digitUnpacked.getValueRise0()
143 assert digit.getValueRise1() == digitUnpacked.getValueRise1()
144 assert digit.getValuePeak() == digitUnpacked.getValuePeak()
145 assert digit.getValueFall0() == digitUnpacked.getValueFall0()
146 assert digit.getValueFall1() == digitUnpacked.getValueFall1()
148 assert digit.getRevo9Counter() == digitUnpacked.getRevo9Counter()
149 assert digit.getPhase() == digitUnpacked.getPhase()
150 assert digit.getErrorFlags() == digitUnpacked.getErrorFlags()
151 assert digit.getDataType() == digitUnpacked.getDataType()
156 eventinfosetter = register_module(
'EventInfoSetter')
157 eventinfosetter.param({
'evtNumList': [10]})
158 main.add_module(eventinfosetter)
160 particlegun = register_module(
'ParticleGun')
161 particlegun.param(
'pdgCodes', [13, -13])
162 particlegun.param(
'nTracks', 10)
163 main.add_module(particlegun)
165 add_simulation(main, components=[
'TOP'])
166 set_module_parameters(main, type=
"Geometry", useDB=
False, components=[
"TOP"])
168 Packer = register_module(
'TOPPacker')
169 main.add_module(Packer)
171 unPacker = register_module(
'TOPUnpacker')
172 unPacker.param(
'outputRawDigitsName',
'TOPRawDigitsUnpacked')
173 unPacker.param(
'outputDigitsName',
'TOPDigitsUnpacked')
174 main.add_module(unPacker)
176 converter = register_module(
'TOPRawDigitConverter')
177 converter.param(
'inputRawDigitsName',
'TOPRawDigitsUnpacked')
178 converter.param(
'outputDigitsName',
'TOPDigitsUnpacked')
179 converter.param(
'minPulseWidth', 0.0)
180 converter.param(
'maxPulseWidth', 1000.0)
181 main.add_module(converter)
186 progress = register_module(
'Progress')
187 main.add_module(progress)