Belle II Software  release-08-01-10
VXDTF2TrackingValidation.py
1 #!/usr/bin/env python3
2 
3 
10 
11 """
12 <header>
13  <contact>software-tracking@belle2.org</contact>
14  <input>EvtGenSimNoBkg.root</input>
15  <output>VXDTF2TrackingValidation.root</output>
16  <description>
17  This module validates that the VXDTF2 SVD-only track finding is capable of reconstructing tracks in Y(4S) runs.
18  </description>
19 </header>
20 """
21 
22 import tracking
23 from tracking.validation.run import TrackingValidationRun
24 import logging
25 import basf2
26 VALIDATION_OUTPUT_FILE = 'VXDTF2TrackingValidation.root'
27 N_EVENTS = 1000
28 ACTIVE = False
29 
30 
31 def setupFinderModule(path):
32  tracking.add_hit_preparation_modules(path, components=["SVD"])
33  tracking.add_vxd_track_finding_vxdtf2(path, components=["SVD"])
34 
35 
37  """
38  Validation class for the four 4-SVD Layer tracking
39  """
40 
41  n_events = N_EVENTS
42 
43  generator_module = 'generic'
44 
45  root_input_file = '../EvtGenSimNoBkg.root'
46 
47  components = None
48 
49 
50  finder_module = staticmethod(setupFinderModule)
51 
52 
53  tracking_coverage = {
54  'WhichParticles': ['SVD'], # Include all particles seen in the SVD detector, also secondaries
55  'UsePXDHits': False,
56  'UseSVDHits': True,
57  'UseCDCHits': False,
58  }
59 
60 
61  fit_tracks = True
62 
63  pulls = True
64 
65  use_expert_folder = False
66 
67  output_file_name = VALIDATION_OUTPUT_FILE
68 
69  # tweak sectormap
70  # def adjust_path(self, path):
71  # basf2.set_module_parameters( path, "SectorMapBootstrap", ReadSecMapFromDB=False)
72  # basf2.set_module_parameters( path, "SectorMapBootstrap", ReadSectorMap=True)
73  # basf2.set_module_parameters( path, "SectorMapBootstrap", SectorMapsInputFile="mymap.root")
74 
75 
76 def main():
77  """
78  create SVD validation class and execute
79  """
80  basf2.set_random_seed(1337)
81  validation_run = VXDTF2TrackingValidation()
82  validation_run.configure_and_execute_from_commandline()
83 
84 
85 if __name__ == '__main__':
86  logging.basicConfig(level=logging.INFO)
87  if ACTIVE:
88  main()
89  else:
90  print("This validation deactivated and thus basf2 is not executed.\n"
91  "If you want to run this validation, please set the 'ACTIVE' flag above to 'True'.\n"
92  "Exiting.")
Definition: main.py:1
int main(int argc, char **argv)
Run all tests.
Definition: test_main.cc:91