Belle II Software  release-06-01-15
pxdDataReduction.py
1 #!/usr/bin/env python3
2 # -*- coding: utf-8 -*-
3 
4 
11 
12 import basf2 as b2
13 from tracking import add_tracking_reconstruction
14 from simulation import add_simulation
15 
16 numEvents = 2000
17 
18 # first register the modules
19 
20 b2.set_random_seed(1)
21 
22 eventinfosetter = b2.register_module('EventInfoSetter')
23 eventinfosetter.param('expList', [0])
24 eventinfosetter.param('runList', [1])
25 eventinfosetter.param('evtNumList', [numEvents])
26 
27 eventinfoprinter = b2.register_module('EventInfoPrinter')
28 
29 evtgeninput = b2.register_module('EvtGenInput')
30 evtgeninput.logging.log_level = b2.LogLevel.INFO
31 
32 pxdROIFinder = b2.register_module('PXDROIFinder')
33 pxdROIFinder.logging.log_level = b2.LogLevel.DEBUG
34 # pxdROIFinder.logging.debug_level = 2
35 param_pxdROIFinder = {
36  'recoTrackListName': 'RecoTracks',
37  'PXDInterceptListName': 'PXDIntercepts',
38  'ROIListName': 'ROIs',
39  'tolerancePhi': 0.15,
40  'toleranceZ': 0.5,
41  # optimized performance
42  # 'sigmaSystU': 0.1,
43  # 'sigmaSystV': 0.1,
44  # 'numSigmaTotU': 10,
45  # 'numSigmaTotV': 10,
46  # 'maxWidthU': 2,
47  # 'maxWidthV': 6,
48  # official simulation
49  'sigmaSystU': 0.02,
50  'sigmaSystV': 0.02,
51  'numSigmaTotU': 10,
52  'numSigmaTotV': 10,
53  'maxWidthU': 0.5,
54  'maxWidthV': 0.5,
55 }
56 pxdROIFinder.param(param_pxdROIFinder)
57 
58 pxdROIFinderAnalysis = b2.register_module('PXDROIFinderAnalysis')
59 pxdROIFinderAnalysis.logging.log_level = b2.LogLevel.RESULT
60 pxdROIFinderAnalysis.logging.debug_level = 1
61 param_pxdROIFinderAnalysis = {
62  'recoTrackListName': 'RecoTracks',
63  'PXDInterceptListName': 'PXDIntercepts',
64  'ROIListName': 'ROIs',
65  'writeToRoot': True,
66  'rootFileName': 'pxdDataRedAnalysis_SVDCDC_MCTF_test',
67 }
68 pxdROIFinderAnalysis.param(param_pxdROIFinderAnalysis)
69 
70 # Create paths
71 main = b2.create_path()
72 
73 # Add modules to paths
74 main.add_module(eventinfosetter)
75 main.add_module(eventinfoprinter)
76 main.add_module(evtgeninput)
77 add_simulation(main, components=['SVD', 'CDC'], forceSetPXDDataReduction=True, usePXDDataReduction=False)
78 add_tracking_reconstruction(main, ['SVD', 'CDC'], mcTrackFinding=True)
79 main.add_module(pxdROIFinder)
80 main.add_module(pxdROIFinderAnalysis)
81 # display = register_module("Display")
82 # main.add_module(display)
83 
84 # Process events
85 b2.process(main)
86 
87 print(b2.statistics)