Belle II Software development
NoKickCuts_evaluation.py
1
8
9
26
27import basf2 as b2
28
29import argparse
30
31
32def main():
33 """Only execute the code if the script is run but not when it's imported."""
34 parser = argparse.ArgumentParser(description="NoKickCuts evaluation module")
35 parser.add_argument(
36 '--useValidation',
37 dest='use_validation',
38 action='store_const',
39 const=True,
40 default=False,
41 help='print validation plots')
42 parser.add_argument(
43 '--useFitMethod',
44 dest='use_fitMethod',
45 action='store_const',
46 const=True,
47 default=False,
48 help='definition of the cuts with the double-gaussian fit')
49
50 args = parser.parse_args()
51 use_Validation = args.use_validation
52 use_fit = args.use_fitMethod
53
54 main_path = b2.create_path()
55
56 mctrackfinder = b2.register_module('TrackFinderMCTruthRecoTracks')
57 mctrackfinder.param('WhichParticles', ['SVD'])
58 mctrackfinder.param('EnergyCut', 0)
59
60 gearbox = b2.register_module('Gearbox')
61
62 geometry = b2.register_module('Geometry')
63
64 rootinput = b2.register_module('RootInput')
65
66 progressbar = b2.register_module('ProgressBar')
67
68 mctrackmatcher = b2.register_module('MCRecoTracksMatcher')
69 mctrackmatcher.param('UseCDCHits', False)
70 mctrackmatcher.param('UseSVDHits', True)
71 mctrackmatcher.param('UsePXDHits', True)
72 mctrackmatcher.param('mcRecoTracksStoreArrayName', 'MCRecoTracks')
73
74 NoKickCuts = b2.register_module('NoKickCutsEval')
75 NoKickCuts.param('useValidation', use_Validation)
76 NoKickCuts.param('useFitMethod', use_fit)
77
78 main_path.add_module(rootinput)
79 main_path.add_module(gearbox)
80 main_path.add_module(geometry)
81 main_path.add_module(mctrackfinder)
82 main_path.add_module(NoKickCuts)
83 main_path.add_module(progressbar)
84
85 b2.process(main_path)
86 print(b2.statistics)
87
88
89if __name__ == "__main__":
90 main()
Definition: main.py:1