1 from ROOT
import Belle2
4 def cdc_layers(layers=None):
6 layers = [l
for l
in range(0, 56)]
12 for param
in [1, 2, 6, 11, 12, 16]:
16 result.append(label.label())
23 160, 160, 160, 160, 160, 160, 160, 160,
24 160, 160, 160, 160, 160, 160,
25 192, 192, 192, 192, 192, 192,
26 224, 224, 224, 224, 224, 224,
27 256, 256, 256, 256, 256, 256,
28 288, 288, 288, 288, 288, 288,
29 320, 320, 320, 320, 320, 320,
30 352, 352, 352, 352, 352, 352,
31 384, 384, 384, 384, 384, 384]
35 for layer
in range(0, 56):
36 for wire
in range(0, wires_in_layer[layer]):
43 label.construct(cdcid, wireid, Belle2.CDCAlignment.wireBwdX)
44 result.append(label.label())
46 label.construct(cdcid, wireid, Belle2.CDCAlignment.wireFwdX)
47 result.append(label.label())
49 label.construct(cdcid, wireid, Belle2.CDCAlignment.wireBwdY)
50 result.append(label.label())
52 label.construct(cdcid, wireid, Belle2.CDCAlignment.wireFwdY)
53 result.append(label.label())
60 160, 160, 160, 160, 160, 160, 160, 160,
61 160, 160, 160, 160, 160, 160,
62 192, 192, 192, 192, 192, 192,
63 224, 224, 224, 224, 224, 224,
64 256, 256, 256, 256, 256, 256,
65 288, 288, 288, 288, 288, 288,
66 320, 320, 320, 320, 320, 320,
67 352, 352, 352, 352, 352, 352,
68 384, 384, 384, 384, 384, 384]
72 for layer
in range(0, 56):
73 for wire
in range(0, wires_in_layer[layer]):
76 result.append(label.label())
81 def vxd_halfshells(pxd=True, svd=True, parameters=None, ying=True, yang=True, pat=True, mat=True):
82 if parameters
is None:
83 parameters = [1, 2, 3, 4, 5, 6]
105 for param
in parameters:
109 result.append(label.label())
118 for param
in [1, 2, 3]:
121 result.append(label.label())
126 def vxd_ladders(layers=None, parameters=None):
128 layers = [1, 2, 3, 4, 5, 6]
129 if parameters
is None:
130 parameters = [1, 2, 3, 4, 5, 6]
134 ladders = [8, 12, 7, 10, 12, 16]
137 for ladder
in range(1, ladders[layer - 1] + 1):
138 for ipar
in parameters:
141 result.append(label.label())
146 def vxd_sensors(layers=None, rigid=True, surface=True, surface2=True, surface3=True, surface4=True, parameters=None):
148 layers = [1, 2, 3, 4, 5, 6]
150 params_rigid = [1, 2, 3, 4, 5, 6]
151 params_surface2 = [31, 32, 33]
152 params_surface3 = [41, 42, 43, 44]
153 params_surface4 = [51, 52, 53, 54, 55]
157 params += params_rigid
161 params += params_surface2
163 params += params_surface3
165 params += params_surface4
173 ladders = [8, 12, 7, 10, 12, 16]
174 sensors = [2, 2, 2, 3, 4, 5]
177 for ladder
in range(1, ladders[layer - 1] + 1):
178 for sensor
in range(1, sensors[layer - 1] + 1):
182 result.append(label.label())
187 return vxd_sensors() + vxd_ladders() + vxd_halfshells()
191 return vxd_sensors(layers=[1, 2]) + vxd_ladders(layers=[1, 2]) + vxd_halfshells(pxd=
True, svd=
False)
195 return vxd_sensors(layers=[3, 4, 5, 6]) + vxd_ladders(layers=[3, 4, 5, 6]) + vxd_halfshells(pxd=
False, svd=
True)
200 return beamspot() +
pxd() +
svd() + cdc_layers() + cdc_wires() + cdc_t0s()
203 if __name__ ==
'__main__':
204 print(
"Number of available parameters:")
206 print(
"PXD:", len(
pxd()))
207 print(
"SVD:", len(
svd()))
208 print(
"( VXD:", len(vxd()),
")")
209 assert(len(vxd()) == len(
pxd()) + len(
svd()))
210 print(
"CDC layers:", len(cdc_layers()))
211 print(
"CDC wires:", len(cdc_wires()))
212 print(
"CDC T0s:", len(cdc_t0s()))
213 print(
"TOTAL:", len(all()))