2 @file track_align_job.py
4 This job is focused on running the hps-java JobManager once. The user
5 can decide which steering file to use; however, the user must know that
6 this job provides many command-line definitions to be substituted into
7 the SimpleGblAliDriver config parameters. Look at the steering files
8 in the examples/alignment/tracking directory as an example.
16 logger = logging.getLogger(
'hpsmc.job')
18 job.description =
'single hps-java run with input steering file'
21 input_files = list(job.input_files.values())
22 if len(input_files) > 1:
23 raise Exception(
'This script accepts only one input file.')
26 steering=job.params[
"steering"],
27 outputs=list(job.output_files.keys())
31 traj_ali_driver_defaults = {
32 'enableAlignmentCuts':
True,
33 'doCOMAlignment':
True,
37 'debugAlignmentDs':
False,
39 'includeNoHitScatters':
False,
40 'gblRefitIterations': 0,
41 'storeTrackStates':
True,
42 'compositeAlign':
True,
43 'constrainedFit':
False,
45 'constrainedBSFit':
False,
48 'writeMilleChisqCut': 5,
49 'enableStandardCuts':
False,
50 'maxTrackChisqFourHits': 60.,
51 'maxTrackChisqFiveHits': 60.,
52 'maxTrackChisqSixHits': 60.,
53 'inputCollectionName':
'KalmanFullTracks'
55 if 'defs' not in job.params:
57 java_run.defs = traj_ali_driver_defaults
60 java_run.defs = job.params[
'defs']
61 for key, val
in traj_ali_driver_defaults.items():
62 if key
not in java_run.defs:
63 java_run.defs[key] = val