13 <contact>simon.kurz@desy.de</contact>
14 <input>EvtGenSimNoBkg.root</input>
15 <output>toCDCfromEclCKFTrackingValidation.root</output>
16 <description>This module validates toCDCfromEclCKF module using Y(4S) runs.</description>
21from tracking.validation.run import TrackingValidationRun
24VALIDATION_OUTPUT_FILE = 'toCDCfromEclCKFTrackingValidation.root'
29class toCDCfromEclCKF(TrackingValidationRun):
30 """Validate the ecl seeded ckf"""
34 generator_module =
'generic'
36 root_input_file =
'../EvtGenSimNoBkg.root'
40 """Only run the following (necessary) modules"""
41 path.add_module(
'SetupGenfitExtrapolation',
42 energyLossBrems=
False, noiseBrems=
False)
47 path.add_module(
'TrackFinderMCTruthRecoTracks',
48 RecoTracksStoreArrayName=
"MCRecoTracks",
54 path.add_module(
"TFCDC_WireHitPreparer",
55 wirePosition=
"aligned",
57 flightTimeEstimation=
"outwards")
59 path.add_module(
"ToCDCFromEclCKF",
60 inputWireHits=
"CDCWireHitVector",
61 minimalEnRequirementCluster=0.3,
62 eclSeedRecoTrackStoreArrayName=
'EclSeedRecoTracks',
63 hitFindingDirection=
"backward",
64 outputRecoTrackStoreArrayName=
"CKFCDCRecoTracksFromEcl",
65 outputRelationRecoTrackStoreArrayName=
"EclSeedRecoTracks",
66 writeOutDirection=
"forward",
67 stateBasicFilterParameters={
"maximalHitDistance": 7.5,
"maximalHitDistanceEclSeed": 75.0},
68 stateExtrapolationFilterParameters={
"direction":
"backward"},
69 pathFilter=
"arc_length_fromEcl",
70 inputECLshowersStoreArrayName=
"ECLShowers",
71 trackFindingDirection=
"backward",
75 path.add_module(
"ToCDCCKF",
76 inputWireHits=
"CDCWireHitVector",
77 inputRecoTrackStoreArrayName=
"CKFCDCRecoTracksFromEcl",
78 relatedRecoTrackStoreArrayName=
"RecoTracks",
79 relationCheckForDirection=
"backward",
80 outputRecoTrackStoreArrayName=
"RecoTracks",
81 outputRelationRecoTrackStoreArrayName=
"CKFCDCRecoTracksFromEcl",
82 writeOutDirection=
"backward",
83 stateBasicFilterParameters={
"maximalHitDistance": 0.75},
84 stateExtrapolationFilterParameters={
"direction":
"forward"},
85 pathFilter=
"arc_length",
89 path.add_module(
"DAFRecoFitter", recoTracksStoreArrayName=
"RecoTracks")
91 path.add_module(
'TrackCreator', recoTrackColName=
'RecoTracks')
93 path.add_module(
"MCRecoTracksMatcher",
94 mcRecoTracksStoreArrayName=
"MCRecoTracks",
95 prRecoTracksStoreArrayName=
"RecoTracks",
101 tracking_coverage = {
105 'WhichParticles': [],
111 use_fit_information =
True
117 output_file_name = VALIDATION_OUTPUT_FILE
119 non_expert_parameters = []
123 basf2.set_random_seed(1337)
125 validation_run.configure_and_execute_from_commandline()
128if __name__ ==
'__main__':
129 logging.basicConfig(level=logging.INFO)
134 print(
"This validation deactivated and thus basf2 is not executed.\n"
135 "If you want to run this validation, please set the 'ACTIVE' flag above to 'True'.\n"
None finder_module
Name of the finder module to be used - can be everything that is accepted by tracking....
def add_ecl_modules(path, components=None)