Belle II Software  release-08-01-10
misalignVXDRandom.py
1 #!/usr/bin/env python3
2 
3 
10 
11 """
12 Generate alignment payload for VXD
13 
14 """
15 
16 import basf2 as b2
17 
18 from alignment.utils import AlignmentGeneratorConfig
19 
20 alignment = AlignmentGeneratorConfig()
21 # 100 um normal distribution for all shifts
22 alignment.gen_u_gaus('0.0.0', 0.01)
23 alignment.gen_v_gaus('0.0.0', 0.01)
24 alignment.gen_w_gaus('0.0.0', 0.01)
25 # -1 mrad to +1 mrad uniform distribution for all angles
26 alignment.gen_alpha_uniform('0.0.0', 0.001)
27 alignment.gen_beta_uniform('0.0.0', 0.001)
28 alignment.gen_gamma_uniform('0.0.0', 0.001)
29 
30 alignment.set_all('1.1.1', 0.0)
31 
32 main = b2.create_path()
33 main.add_module('EventInfoSetter')
34 main.add_module('Gearbox')
35 main.add_module('Geometry', components=['PXD', 'SVD'])
36 main.add_module('AlignmentGenerator', payloadIov=[0, 0, -1, -1], payloadName="", data=alignment.get_data(), createPayload=True)
37 main.add_module('Progress')
38 
39 b2.process(main)
40 print(b2.statistics)