12def cdc_layers(layers=None):
14 layers = [lyr
for lyr
in range(0, 56)]
20 for param
in [1, 2, 6, 11, 12, 16]:
24 result.append(label.label())
29def cdc_wires(layers=None):
31 layers = list(range(0, 56))
34 160, 160, 160, 160, 160, 160, 160, 160,
35 160, 160, 160, 160, 160, 160,
36 192, 192, 192, 192, 192, 192,
37 224, 224, 224, 224, 224, 224,
38 256, 256, 256, 256, 256, 256,
39 288, 288, 288, 288, 288, 288,
40 320, 320, 320, 320, 320, 320,
41 352, 352, 352, 352, 352, 352,
42 384, 384, 384, 384, 384, 384]
47 for wire
in range(0, wires_in_layer[layer]):
54 label.construct(cdcid, wireid, Belle2.CDCAlignment.wireBwdX)
55 result.append(label.label())
57 label.construct(cdcid, wireid, Belle2.CDCAlignment.wireFwdX)
58 result.append(label.label())
60 label.construct(cdcid, wireid, Belle2.CDCAlignment.wireBwdY)
61 result.append(label.label())
63 label.construct(cdcid, wireid, Belle2.CDCAlignment.wireFwdY)
64 result.append(label.label())
71 160, 160, 160, 160, 160, 160, 160, 160,
72 160, 160, 160, 160, 160, 160,
73 192, 192, 192, 192, 192, 192,
74 224, 224, 224, 224, 224, 224,
75 256, 256, 256, 256, 256, 256,
76 288, 288, 288, 288, 288, 288,
77 320, 320, 320, 320, 320, 320,
78 352, 352, 352, 352, 352, 352,
79 384, 384, 384, 384, 384, 384]
83 for layer
in range(0, 56):
84 for wire
in range(0, wires_in_layer[layer]):
87 result.append(label.label())
92def vxd_halfshells(pxd=True, svd=True, parameters=None, ying=True, yang=True, pat=True, mat=True):
93 if parameters
is None:
94 parameters = [1, 2, 3, 4, 5, 6]
116 for param
in parameters:
120 result.append(label.label())
129 for param
in [1, 2, 3]:
132 result.append(label.label())
137def vxd_ladders(layers=None, parameters=None):
139 layers = [1, 2, 3, 4, 5, 6]
140 if parameters
is None:
141 parameters = [1, 2, 3, 4, 5, 6]
145 ladders = [8, 12, 7, 10, 12, 16]
148 for ladder
in range(1, ladders[layer - 1] + 1):
149 for ipar
in parameters:
152 result.append(label.label())
157def vxd_sensors(layers=None, rigid=True, surface=True, surface2=True, surface3=True, surface4=True, parameters=None):
159 layers = [1, 2, 3, 4, 5, 6]
161 params_rigid = [1, 2, 3, 4, 5, 6]
162 params_surface2 = [31, 32, 33]
163 params_surface3 = [41, 42, 43, 44]
164 params_surface4 = [51, 52, 53, 54, 55]
168 params += params_rigid
172 params += params_surface2
174 params += params_surface3
176 params += params_surface4
184 ladders = [8, 12, 7, 10, 12, 16]
185 sensors = [2, 2, 2, 3, 4, 5]
188 for ladder
in range(1, ladders[layer - 1] + 1):
189 for sensor
in range(1, sensors[layer - 1] + 1):
193 result.append(label.label())
198 return vxd_sensors() + vxd_ladders() + vxd_halfshells()
202 return vxd_sensors(layers=[1, 2]) + vxd_ladders(layers=[1, 2]) + vxd_halfshells(pxd=
True, svd=
False)
206 return vxd_sensors(layers=[3, 4, 5, 6]) + vxd_ladders(layers=[3, 4, 5, 6]) + vxd_halfshells(pxd=
False, svd=
True)
211 return beamspot() +
pxd() +
svd() + cdc_layers() + cdc_wires() + cdc_t0s()
214if __name__ ==
'__main__':
215 print(
"Number of available parameters:")
217 print(
"PXD:", len(
pxd()))
218 print(
"SVD:", len(
svd()))
219 print(
"( VXD:", len(vxd()),
")")
220 assert(len(vxd()) == len(
pxd()) + len(
svd()))
221 print(
"CDC layers:", len(cdc_layers()))
222 print(
"CDC wires:", len(cdc_wires()))
223 print(
"CDC T0s:", len(cdc_t0s()))
224 print(
"TOTAL:", len(all()))
static unsigned short getGlobalUniqueID()
Return unique ID of BeamSpot in global Millepede calibration (1)
static unsigned short getGlobalUniqueID()
Get global unique id.
static unsigned short getGlobalUniqueID()
Get global unique id.
Class to convert to/from global labels for Millepede II to/from detector & parameter identificators.
static unsigned short getGlobalUniqueID()
Get global unique id.
Class to uniquely identify a any structure of the PXD and SVD.
Class to identify a wire inside the CDC.