4 Job script to convert A-prime events to StdHep, apply transformations,
5 and resulting simulate signal events using SLIC.
10 from hpsmc.tools import DisplaceUni, Unzip, BeamCoords, AddMotherFullTruth, SLIC
13 logger = logging.getLogger(
'hpsmc.job')
15 job.description =
'ap to slic'
18 inputs = list(job.input_files.values())
20 if 'nevents' in job.params:
21 nevents = job.params[
'nevents']
25 if 'ap_decay_dist' in job.params:
26 ap_decay_dist = job.params[
'ap_decay_dist']
28 ap_decay_dist =
"lhe_uniform"
31 unzip =
Unzip(inputs=[
"ap_unweighted_events.lhe.gz"], outputs=[
"ap_unweighted_events.lhe"])
33 if ap_decay_dist ==
"lhe_uniform":
37 elif ap_decay_dist ==
"lhe_prompt":
39 cnv =
StdHepConverter(name=
"lhe_prompt", inputs=[
"ap_unweighted_events.lhe"])
41 elif ap_decay_dist ==
"displace_time":
42 if 'ctau' in job.params:
44 cnv =
DisplaceUni(inputs=[
"ap_unweighted_events.lhe"])
47 logger.error(
"Missing parameter ctau")
49 logger.error(
"Invalid ap decay distribution: ap_decay_dist = %s" % ap_decay_dist)
52 mom =
AddMotherFullTruth(inputs=[
"ap_displace.stdhep", unzip.output_files()[0]], outputs=[
"ap_mom.stdhep"])
55 rot =
BeamCoords(inputs=mom.output_files(), outputs=[
"ap_rot.stdhep"])
58 slic =
SLIC(nevents=nevents + 1, inputs=rot.output_files(), outputs=[
"ap.slcio"])
61 job.add([unzip, mom, rot, slic])
Convert LHE files to StdHep using EGS5.