Belle II Software  release-06-01-15
OverlapResiduals_example.py
1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3 
4 
11 
12 
22 
23 import basf2
24 from simulation import add_simulation
25 from reconstruction import add_reconstruction
26 
27 
28 # Register the necessary modules
29 
30 # =====================================================================================================
31 # Generate specific cosmic events
32 cosmics = basf2.register_module('Cosmics')
33 cosmics.param('level', 1)
34 cosmics.param('ipRequirement', 1)
35 cosmics.param('cylindricalR', 16.0)
36 # Setting the random seed for particle generation
37 basf2.set_random_seed(0)
38 # Create Event information
39 eventinfosetter = basf2.register_module('EventInfoSetter')
40 # Show progress of processing
41 progress = basf2.register_module('ProgressBar')
42 # Load parameters
43 gearbox = basf2.register_module('Gearbox')
44 # Create geometry
45 geometry = basf2.register_module('Geometry', excludedComponents=['MagneticField'])
46 # Manages created histograms
47 histos = basf2.register_module('HistoManager')
48 # The main module: studies hits in overlapping sensors of a same VXD layer to monitor the VXD alignment
49 VXDResiduals = basf2.register_module('OverlapResiduals')
50 # ======================================================================================================
51 
52 eventinfosetter.param({'evtNumList': [100], 'runList': [1]})
53 
54 # Run the modules
55 main = basf2.create_path()
56 main.add_module(eventinfosetter)
57 main.add_module(gearbox)
58 main.add_module(geometry)
59 main.add_module(histos)
60 # Performs generation
61 main.add_module(cosmics)
62 # Performs simulation
63 add_simulation(main)
64 # Performs reconstruction
65 add_reconstruction(main, pruneTracks=False)
66 # Runs module OverlapResiduals
67 main.add_module(VXDResiduals)
68 main.add_module(progress)
69 
70 # Process events
71 basf2.process(main)
72 
73 # Print call statistics
74 print(basf2.statistics)