Belle II Software development
SegmentPairCreationValidationRun Class Reference
Inheritance diagram for SegmentPairCreationValidationRun:
BrowseTFileOnTerminateRunMixin StandardEventGenerationRun PostProcessingRunMixin ReadOrGenerateEventsRun EmptyRun MinimalRun EmptyRun

Public Member Functions

 create_argument_parser (self, **kwds)
 
 create_path (self)
 
 postprocess (self)
 
 run (self, path)
 
 name (self)
 
 configure_and_execute_from_commandline (self)
 
 execute (self)
 
 configure_from_commandline (self)
 
 configure (self, arguments)
 
 adjust_path (self, path)
 

Static Public Attributes

 segment_finder_module = basf2.register_module("TFCDC_SegmentCreatorMCTruth")
 Use the SegmentFinderFacetAutomaton for track-segment creation with MC truth-matching.
 
 segment_pair_finder_module = basf2.register_module("TFCDC_TrackFinderSegmentPairAutomaton")
 use the TrackFinderSegmentPairAutomaton for track-segment finding
 
bool py_profile = True
 post-process with profiling validation
 
 output_file_name = None
 There is no default for the name of the output TFile.
 
bool show_results = False
 By default, do not show the browsing results.
 
bool postprocess_only = False
 By default, browse the output TFile too.
 
str description = "Empty execution of basf2"
 Description of the run setup to be displayed on command line.
 
 generator_module = None
 By default, do not generate events.
 
str detector_setup = "Default"
 By default, use the default detector setup.
 
list bkg_files = []
 By default, no background overlay.
 
 components = None
 By default, do specific components.
 
bool disable_deltas = False
 By default, do not disable delta-ray generation.
 
 simulation_output = None
 By default, do no store the simulation output.
 
bool allow_input = True
 By default, this basf2 job can read events from an input ROOT TFile.
 
int n_events = 10000
 By default, process 10000 events.
 
 root_input_file = None
 By default, there is no input ROOT TFile.
 
 random_seed = None
 By default, the random-number seed is unassigned.
 
int n_processes = 0
 By default, no parallel processing.
 
int n_events_to_skip = 0
 By default, do not skip any events at the start of the input ROOT TFile.
 

Detailed Description

Generate, postprocess and inspect MC events for track segment-pair validation

Definition at line 33 of file segmentPairCreationValidation.py.

Member Function Documentation

◆ adjust_path()

adjust_path ( self,
path )
inherited
Hook that gives the opportunity to check the path for consistency before processing it

Reimplemented in VXDTF2TrackingValidation, and VXDTF2TrackingValidationBkg.

Definition at line 94 of file minimal.py.

94 def adjust_path(self, path):
95 """Hook that gives the opportunity to check the path for consistency before processing it"""
96
97# Minimal run stub defining some general parameters
98
99

◆ configure()

configure ( self,
arguments )
inherited
Save the command-line arguments as key-value pairs

Reimplemented in ReadOrGenerateEventsRun.

Definition at line 73 of file minimal.py.

73 def configure(self, arguments):
74 """Save the command-line arguments as key-value pairs"""
75 # Simply translate the arguments that have
76 # the same name as valid instance arguments
77 for (key, value) in list(vars(arguments).items()):
78 if value is None:
79 continue
80 if hasattr(self, key):
81 get_logger().info("Setting %s to %s", key, value)
82 setattr(self, key, value)
83

◆ configure_and_execute_from_commandline()

configure_and_execute_from_commandline ( self)
inherited
Configure basf2 job script from command-line arguments then run it

Definition at line 45 of file minimal.py.

45 def configure_and_execute_from_commandline(self):
46 """Configure basf2 job script from command-line arguments then run it"""
47 self.configure_from_commandline()
48 self.execute()
49

◆ configure_from_commandline()

configure_from_commandline ( self)
inherited
Convert the command-line arguments to a basf2 job script

Definition at line 67 of file minimal.py.

67 def configure_from_commandline(self):
68 """Convert the command-line arguments to a basf2 job script"""
69 argument_parser = self.create_argument_parser()
70 arguments = argument_parser.parse_args()
71 self.configure(arguments)
72

◆ create_argument_parser()

create_argument_parser ( self,
** kwds )
Convert command-line arguments to basf2 argument list

Reimplemented from BrowseTFileOnTerminateRunMixin.

Definition at line 52 of file segmentPairCreationValidation.py.

52 def create_argument_parser(self, **kwds):
53 """Convert command-line arguments to basf2 argument list"""
54 argument_parser = super().create_argument_parser(**kwds)
55 return argument_parser
56

◆ create_path()

create_path ( self)
Sets up a path that plays back pregenerated events or generates events
based on the properties in the base class.

Reimplemented from EmptyRun.

Definition at line 57 of file segmentPairCreationValidation.py.

57 def create_path(self):
58 """
59 Sets up a path that plays back pregenerated events or generates events
60 based on the properties in the base class.
61 """
62 main_path = super().create_path()
63
64 segment_finder_module = self.get_basf2_module(self.segment_finder_module)
65 main_path.add_module(segment_finder_module)
66
67 main_path.add_module("TFCDC_SegmentFitter")
68
69 segment_pair_finder_module = self.get_basf2_module(self.segment_pair_finder_module)
70 main_path.add_module(segment_pair_finder_module)
71
72 # main_path.add_module(AxialStereoPairFitterModule())
73 validation_module = SegmentPairCreationValidationModule(output_file_name=self.output_file_name)
74 if self.py_profile:
75 main_path.add_module(metamodules.PyProfilingModule(validation_module))
76 else:
77 main_path.add_module(validation_module)
78
79 return main_path
80
81

◆ execute()

execute ( self)
inherited
Create the basf2 path then run the job

Reimplemented in ReadOrGenerateEventsRun.

Definition at line 50 of file minimal.py.

50 def execute(self):
51 """Create the basf2 path then run the job"""
52 # Create path and run #
53
54 path = self.create_path()
55 self.adjust_path(path)
56 self.run(path)
57

◆ name()

name ( self)
inherited
provide name of this object

Definition at line 41 of file minimal.py.

41 def name(self):
42 """provide name of this object"""
43 return self.__class__.__name__
44

◆ postprocess()

postprocess ( self)
inherited
Browse the TFile interactively

Reimplemented from PostProcessingRunMixin.

Definition at line 84 of file mixins.py.

84 def postprocess(self):
85 """Browse the TFile interactively"""
86 if self.show_results and self.output_file_name:
87 with root_utils.root_open(self.output_file_name) as tfile:
88 root_utils.root_browse(tfile)
89 input("Close with return key.")
90
91 super().postprocess()
92
93

◆ run()

run ( self,
path )
inherited
Post-process the basf2 job output

Reimplemented from EmptyRun.

Definition at line 45 of file mixins.py.

45 def run(self, path):
46 """Post-process the basf2 job output"""
47 if not self.postprocess_only:
48 super().run(path)
49
50 self.postprocess()
51

Member Data Documentation

◆ allow_input

bool allow_input = True
staticinherited

By default, this basf2 job can read events from an input ROOT TFile.

Definition at line 109 of file minimal.py.

◆ bkg_files

list bkg_files = []
staticinherited

By default, no background overlay.

Definition at line 47 of file event_generation.py.

◆ components

components = None
staticinherited

By default, do specific components.

Definition at line 49 of file event_generation.py.

◆ description

str description = "Empty execution of basf2"
staticinherited

Description of the run setup to be displayed on command line.

Definition at line 33 of file minimal.py.

◆ detector_setup

str detector_setup = "Default"
staticinherited

By default, use the default detector setup.

Definition at line 45 of file event_generation.py.

◆ disable_deltas

bool disable_deltas = False
staticinherited

By default, do not disable delta-ray generation.

Definition at line 51 of file event_generation.py.

◆ generator_module

generator_module = None
staticinherited

By default, do not generate events.

Definition at line 43 of file event_generation.py.

◆ n_events

n_events = 10000
staticinherited

By default, process 10000 events.

Definition at line 111 of file minimal.py.

◆ n_events_to_skip

int n_events_to_skip = 0
staticinherited

By default, do not skip any events at the start of the input ROOT TFile.

Definition at line 119 of file minimal.py.

◆ n_processes

n_processes = 0
staticinherited

By default, no parallel processing.

Definition at line 117 of file minimal.py.

◆ output_file_name

output_file_name = None
staticinherited

There is no default for the name of the output TFile.

Definition at line 60 of file mixins.py.

◆ postprocess_only

bool postprocess_only = False
staticinherited

By default, browse the output TFile too.

Post-process the basf2 job output

Definition at line 29 of file mixins.py.

◆ py_profile

bool py_profile = True
static

post-process with profiling validation

Definition at line 48 of file segmentPairCreationValidation.py.

◆ random_seed

random_seed = None
staticinherited

By default, the random-number seed is unassigned.

Definition at line 115 of file minimal.py.

◆ root_input_file

root_input_file = None
staticinherited

By default, there is no input ROOT TFile.

Definition at line 113 of file minimal.py.

◆ segment_finder_module

segment_finder_module = basf2.register_module("TFCDC_SegmentCreatorMCTruth")
static

Use the SegmentFinderFacetAutomaton for track-segment creation with MC truth-matching.

Definition at line 36 of file segmentPairCreationValidation.py.

◆ segment_pair_finder_module

segment_pair_finder_module = basf2.register_module("TFCDC_TrackFinderSegmentPairAutomaton")
static

use the TrackFinderSegmentPairAutomaton for track-segment finding

Definition at line 40 of file segmentPairCreationValidation.py.

◆ show_results

bool show_results = False
staticinherited

By default, do not show the browsing results.

Definition at line 62 of file mixins.py.

◆ simulation_output

simulation_output = None
staticinherited

By default, do no store the simulation output.

Definition at line 53 of file event_generation.py.


The documentation for this class was generated from the following file: