25from setup_modules
import setup_VXDTF2
31arg_parser = argparse.ArgumentParser(description=
'VXDTF2 application:\
32 Applies trained SecMap on provided data and returns RecoTrackCands.\n\
33 Usage: basf2 testVXDTF2.py -i <inputFileName> -o <outputFileName> -- --secmap <secmapFile>')
35arg_parser.add_argument(
'--secmap',
'-s', type=str,
36 help=
'Inclusion of the root file containing the trained SecMap for the application of the VXDTF2.')
38arguments = arg_parser.parse_args(sys.argv[1:])
39secmap_name = arguments.secmap
48generateTimeSeedAfterFit =
False
51b2.set_log_level(b2.LogLevel.ERROR)
52b2.log_to_file(
'logVXDTF2Execution.log', append=
False)
56path = b2.create_path()
59rootInput = b2.register_module(
'RootInput')
60path.add_module(rootInput)
63eventinfoprinter = b2.register_module(
'EventInfoPrinter')
64path.add_module(eventinfoprinter)
67gearbox = b2.register_module(
'Gearbox')
68path.add_module(gearbox)
71geometry = b2.register_module(
'Geometry')
72geometry.param(
'components', [
'BeamPipe',
73 'MagneticFieldConstant4LimitedRSVD',
76path.add_module(geometry)
80setup_VXDTF2(path=path,
82 sec_map_file=secmap_name,
83 overlap_filter=
'hopfield',
84 quality_estimator=
'circleFit')
89 genFitExtrapolation = b2.register_module(
'SetupGenfitExtrapolation')
90 path.add_module(genFitExtrapolation)
92 if not generateTimeSeedAfterFit:
93 timeSeed = b2.register_module(
'IPTrackTimeEstimator')
94 timeSeed.param(
'useFittedInformation',
False)
95 path.add_module(timeSeed)
97 fitter = b2.register_module(
'DAFRecoFitter')
98 path.add_module(fitter)
100 if generateTimeSeedAfterFit:
101 timeSeedAfterFit = b2.register_module(
'IPTrackTimeEstimator')
102 timeSeedAfterFit.param(
'useFittedInformation',
True)
103 path.add_module(timeSeedAfterFit)
106output = b2.register_module(
'RootOutput')
107path.add_module(output)
111 display = b2.register_module(
'Display')
112 display.param(
'showAllPrimaries',
True)
113 path.add_module(display)
115path.add_module(
'Progress')