Belle II Software  release-05-02-19
SpacePointCreatorDemo.py
1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3 
4 # This steering file will
5 import os
6 from sys import argv
7 from basf2 import *
8 from time import time
9 from beamparameters import add_beamparameters
10 
11 numEvents = 25
12 initialValue = 42
13 
14 set_log_level(LogLevel.ERROR)
15 set_random_seed(initialValue)
16 
17 eventinfosetter = register_module('EventInfoSetter')
18 eventinfosetter.param('expList', [0])
19 eventinfosetter.param('runList', [1])
20 eventinfosetter.param('evtNumList', [numEvents])
21 
22 eventinfoprinter = register_module('EventInfoPrinter')
23 
24 gearbox = register_module('Gearbox')
25 
26 pxdDigitizer = register_module('PXDDigitizer')
27 svdDigitizer = register_module('SVDDigitizer')
28 pxdClusterizer = register_module('PXDClusterizer')
29 svdClusterizer = register_module('SVDClusterizer')
30 evtgeninput = register_module('EvtGenInput')
31 evtgeninput.logging.log_level = LogLevel.WARNING
32 
33 geometry = register_module('Geometry')
34 geometry.param('components', ['BeamPipe', 'MagneticFieldConstant4LimitedRSVD',
35  'PXD', 'SVD'])
36 
37 g4sim = register_module('FullSim')
38 g4sim.param('StoreAllSecondaries', True)
39 
40 spCreatorSingle = register_module('SVDSpacePointCreator')
41 spCreatorSingle.logging.log_level = LogLevel.INFO
42 spCreatorSingle.logging.debug_level = 1
43 spCreatorSingle.param('OnlySingleClusterSpacePoints', True)
44 spCreatorSingle.param('NameOfInstance', 'singlesOnly')
45 spCreatorSingle.param('SpacePoints', 'singlesOnly')
46 
47 spCreatorCombi = register_module('SVDSpacePointCreator')
48 spCreatorCombi.logging.log_level = LogLevel.DEBUG
49 spCreatorCombi.logging.debug_level = 1
50 spCreatorCombi.param('OnlySingleClusterSpacePoints', False)
51 spCreatorCombi.param('NameOfInstance', 'couplesAllowed')
52 spCreatorCombi.param('SpacePoints', 'couplesAllowed')
53 
54 spCreatorPXD = register_module('PXDSpacePointCreator')
55 spCreatorPXD.logging.log_level = LogLevel.INFO
56 spCreatorPXD.logging.debug_level = 1
57 spCreatorPXD.param('NameOfInstance', 'pxdOnly')
58 spCreatorPXD.param('SpacePoints', 'pxdOnly')
59 
60 spCreatorTest = register_module('SpacePointCreatorTest')
61 spCreatorTest.logging.log_level = LogLevel.DEBUG
62 spCreatorTest.logging.debug_level = 20
63 spCreatorTest.param('NameOfInstance', 'SPTester')
64 # spCreatorTest.param('SpacePoints', 'couplesAllowed')
65 # spCreatorTest.param('AllSpacePointContainers', [ 'pxdOnly'] )
66 spCreatorTest.param('AllSpacePointContainers', ['singlesOnly', 'couplesAllowed', 'pxdOnly'])
67 
68 # Create paths
69 main = create_path()
70 
71 
72 # beam parameters
73 beamparameters = add_beamparameters(main, "Y4S")
74 # beamparameters = add_beamparameters(main, "Y1S")
75 # beamparameters.param("generateCMS", True)
76 # beamparameters.param("smearVertex", False)
77 # beamparameters.param("smearEnergy", False)
78 # print_params(beamparameters)
79 
80 
81 main.add_module(eventinfosetter)
82 main.add_module(eventinfoprinter)
83 main.add_module(gearbox)
84 main.add_module(geometry)
85 main.add_module(evtgeninput)
86 main.add_module(g4sim)
87 main.add_module(pxdDigitizer)
88 main.add_module(pxdClusterizer)
89 main.add_module(svdDigitizer)
90 main.add_module(svdClusterizer)
91 main.add_module(spCreatorSingle)
92 main.add_module(spCreatorCombi)
93 main.add_module(spCreatorPXD)
94 main.add_module(spCreatorTest)
95 
96 # Process events
97 process(main)
98 
99 print('Event Statistics :')
100 print(statistics)