Belle II Software  release-08-01-10
wirehit_preparation.py
1 
8 
9 from tracking.run.mixins import RunMixin
10 
11 import argparse
12 
13 
15  """Mixin part the """
16 
17 
18  flight_time_estimation = ""
19 
20 
21  n_loops = float("nan")
22 
23  def create_argument_parser(self, **kwds):
24  """Configure the basf2 job script using the translated command-line arguments"""
25 
26  argument_parser = super().create_argument_parser(**kwds)
27 
28  argument_parser.add_argument(
29  "-ft",
30  "--flight-time-estimation",
31  choices=["none", "outwards", "downwards"],
32  default=argparse.SUPPRESS,
33  dest="flight_time_estimation",
34  help=("Choose which estimation method for the time of flight should be use. \n"
35  "* 'none' no time of flight corrections\n"
36  "* 'outwards' means the minimal time needed to travel to the wire from the interaction point \n"
37  "* 'downwards' means the minimal time needed to travel to the wire from the y = 0 plane downwards \n")
38  )
39 
40  argument_parser.add_argument(
41  "-l",
42  "--mc-loop-limit",
43  type=float,
44  dest="n_loops",
45  help=("Choose to block all wire hits but the ones located on the {mc_loops} first loops")
46  )
47 
48  return argument_parser
49 
50  def create_path(self):
51  """
52  Sets up a path that plays back pregenerated events or generates events
53  based on the properties in the base class.
54  """
55  path = super().create_path()
56 
57  wire_hit_preparer = path.add_module("TFCDC_WireHitPreparer",
58  UseNLoops=self.n_loopsn_loops)
59  if self.flight_time_estimationflight_time_estimation:
60  wire_hit_preparer.param(dict(flightTimeEstimation=self.flight_time_estimationflight_time_estimation))
61 
62  return path
string flight_time_estimation
Used option for the initial flight time estimation.
n_loops
Loop limit above which on wire hits are prepared for the track finder - Uses MC information.