Ejemplo n.º 1
0
                   ],
                   outputs=["wab-beam-tri.stdhep"])

# generate events in slic
slic = SLIC(description="Run detector simulation using SLIC",
            detector=params.detector,
            inputs=["wab-beam-tri.stdhep"],
            outputs=["wab-beam-tri.slcio"],
            nevents=params.nevents,
            ignore_returncode=True)

# run simulated events in readout to generate triggers
readout = JobManager(
    description="Run the readout simulation to create triggers",
    steering_resource=params.readout_steering,
    java_args=["-DdisableSvtAlignmentConstants"],
    run=params.run,
    detector=params.detector,
    inputs=["wab-beam-tri.slcio"],
    outputs=["wab-beam-tri_readout"])

# run physics reconstruction
recon = JobManager(description="Run the MC recon",
                   steering_resource=params.recon_steering,
                   java_args=["-DdisableSvtAlignmentConstants"],
                   run=params.run,
                   detector=params.detector,
                   inputs=["wab-beam-tri_readout.slcio"],
                   outputs=["wab-beam-tri_recon"])

# run the job
job.components = [
Ejemplo n.º 2
0
output_base, ext = os.path.splitext(input_files[0])
if (len(input_files) > 1):
    # Strip off extension from name if multiple file inputs.
    output_base, ext = os.path.splitext(output_base)

# Job parameters may optionally specify number of events to read from LCIO file.
if hasattr(params, "nevents"):
    nevents = params.nevents
else:
    nevents = -1

# Make text tuple outputs.
make_tuples = JobManager(steering_resource=params.tuple_steering,
                         run=params.run,
                         detector=params.detector,
                         inputs=input_files,
                         outputs=[output_base],
                         nevents=nevents)
job.components.append(make_tuples)

# Create components to convert each of the text tuple files to ROOT.
tuple_outputs = []
for tuple_type in ["fee", "moller", "tri", "fulltruth"]:
    tuple_base = output_base + "_" + tuple_type
    tuple_input = tuple_base + ".txt"
    tuple_output = tuple_base + ".root"
    tuple_outputs.append(tuple_output)
    make_tree = MakeTree(inputs=[tuple_input], outputs=[tuple_output])
    job.components.append(make_tree)

# Tar the files into an output archive.
Ejemplo n.º 3
0
                 nevents=nevents * event_interval,
                 ignore_job_params=['nevents'])

# Merge signal and beam events
merge = LCIOMerge(
    inputs=[filter_bunches.output_files()[0],
            slic_beam.output_files()[0]],
    outputs=['%s.slcio' % tritrig_beam_name],
    ignore_job_params=['nevents'])

# Print number of merged events
count_merge = LCIOCount(inputs=merge.output_files())

# Run simulated events in readout to generate triggers
readout = JobManager(steering='readout',
                     inputs=merge.output_files(),
                     outputs=['%s_readout.slcio' % tritrig_beam_name])

# Print number of readout events
count_readout = LCIOCount(inputs=readout.output_files())

# Run physics reconstruction
recon = JobManager(steering='recon',
                   inputs=readout.output_files(),
                   outputs=['%s_recon.slcio' % tritrig_beam_name])

# Print number of recon events
count_recon = LCIOCount(inputs=recon.output_files())

# Convert LCIO to ROOT
#tuple = HPSTR(cfg='recon',
Ejemplo n.º 4
0
output_base = os.path.splitext(os.path.basename(input_files[0]))[0]
job.ptag('filt', '%s_filt.slcio' % output_base)
job.ptag('readout', '%s_filt_readout.slcio' % output_base)
job.ptag('lcio_recon', '%s_filt_readout_recon.slcio' % output_base)
#job.ptag('hpstr_recon', '%s_filt_readout_recon.root' % output_base)
#job.ptag('hpstr_ana', '%s_filt_readout_recon_ana.root' % output_base)

count_input = LCIOCount()

# Insert empty bunches expected by pile-up simulation
filter_bunches = FilterBunches()

count_filt = LCIOCount()

# Run simulated events in readout to generate triggers
readout = JobManager(steering='readout')

count_readout = LCIOCount()

# Run physics reconstruction
reco = JobManager(steering='recon')

count_reco = LCIOCount()

# Convert LCIO to ROOT
#cnv = HPSTR(cfg='recon')

# Run an analysis on the ROOT file
#ana = HPSTR(cfg='ana')

job.add([count_input, filter_bunches, count_filt, readout, count_readout, reco, count_reco])
Ejemplo n.º 5
0
            nevents=params.nevents,
            ignore_returncode=True)

# insert empty bunches expected by pile-up simulation
filter_bunches = FilterMCBunches(java_args=["-DdisableSvtAlignmentConstants"],
                                 inputs=[procname + ".slcio"],
                                 outputs=[procname + "_filt.slcio"],
                                 ecal_hit_ecut=0.05,
                                 enable_ecal_energy_filter=True,
                                 nevents=2000000,
                                 event_interval=250)

# run simulated events in readout to generate triggers
readout = JobManager(steering_resource=params.readout_steering,
                     java_args=["-DdisableSvtAlignmentConstants"],
                     run=params.run,
                     detector=params.detector,
                     inputs=[procname + "_filt.slcio"],
                     outputs=[procname + "_readout"])

# run physics reconstruction
recon = JobManager(steering_resource=params.recon_steering,
                   java_args=["-DdisableSvtAlignmentConstants"],
                   defs={
                       "detector": params.detector,
                       "run": params.run
                   },
                   inputs=[procname + "_readout.slcio"],
                   outputs=[procname + "_recon"])

# run the job
job.components = [
Ejemplo n.º 6
0
                             outputs=["wab-beam_filter.slcio"],
                             event_interval=0,
                             enable_ecal_energy_filter=False,
                             args=["-a"])

# merge the files together
merge = LCIOTool(name="merge",
                 args=[
                     "-f", "tritrig_filter.slcio", "-f",
                     "wab-beam_filter.slcio", "-o", "merged.slcio"
                 ])

# run simulated events in readout to generate triggers
readout = JobManager(steering_resource=params.readout_steering,
                     java_args=["-DdisableSvtAlignmentConstants"],
                     run=params.run,
                     detector=params.detector,
                     inputs=["merged.slcio"],
                     outputs=["readout"])

# run physics reconstruction
recon = JobManager(steering_resource=params.recon_steering,
                   java_args=["-DdisableSvtAlignmentConstants"],
                   run=params.run,
                   detector=params.detector,
                   inputs=["readout.slcio"],
                   outputs=["tritrig-wab-beam"])

job.components = [filter_tritrig, filter_wab, merge, readout, recon]
job.run()
Ejemplo n.º 7
0
}

# job init
job = Job(name="engrun2015 readout job")
job.set_default_params(def_params)
job.initialize()
params = job.params

# set number of events if present in params
nevents = -1
if "nevents" in params:
    nevents = params['nevents']

# run readout on all input files, assigning input files to output files from JSON names
for io in zip(sorted(params.input_files.keys()),
              sorted(params.output_files.keys())):

    # run simulated events in readout to generate triggers
    readout = JobManager(
        description="Run the readout simulation to create triggers",
        steering_resource=params['readout_steering'],
        run=params['run'],
        detector=params['detector'],
        inputs=[io[0]],
        outputs=[os.path.splitext(io[1])[0]],
        nevents=nevents)

    job.components.append(readout)

job.run()
from hpsmc.job import Job
from hpsmc.tools import JobManager

job = Job(name="Job Manager Test")
job.initialize()
params = job.params

mgr = JobManager(steering_file=params.steering_file, inputs=params.input_files)
job.components = [mgr]
job.run()
Ejemplo n.º 9
0
slic_beams = []
for i in range(len(beam_file_names)):
    slic_beams.append(
        SLIC(inputs=[beam_file_names[i]],
             outputs=[beam_slic_file_names[i]],
             nevents=nevents * event_int,
             ignore_job_params=['nevents']))

# concatonate beam events before merging
slic_beam_cat = ExtractEventsWithHitAtHodoEcal(inputs=beam_slic_file_names,
                                               outputs=['beam_cat.slcio'],
                                               event_interval=0,
                                               num_hodo_hits=0)

# Run simulated events in readout to generate triggers
readout = JobManager(steering='readout',
                     inputs=slic_beam_cat.output_files(),
                     outputs=['fee_readout.slcio'])

# Run physics reconstruction
recon = JobManager(steering='recon',
                   inputs=readout.output_files(),
                   outputs=['fee_recon.slcio'])

# Add the components
comps = []
for i in range(len(slic_beams)):
    comps.append(slic_beams[i])
comps.extend([slic_beam_cat, readout, recon])
job.add(comps)
Ejemplo n.º 10
0
    raise Exception("Output file list is empty!")

# if using multiple input and multiple output files, the lists have to be same length
if (len(params.input_files) != len(params.output_files)) and len(
        params.output_files) != 1:
    raise Exception("Input and output file lengths have different lengths!")

if len(params.input_files) == len(params.output_files):
    # multiple input files to multiple output files
    for io in zip(sorted(params.input_files.keys()),
                  sorted(params.output_files.keys())):

        # run physics reconstruction for each input file and write a separate output file
        recon = JobManager(description="Run the MC recon",
                           steering_resource=params['recon_steering'],
                           run=params['run'],
                           detector=params['detector'],
                           inputs=[io[0]],
                           outputs=[os.path.splitext(io[1])[0]])

        job.components.append(recon)
elif len(params.output_files) == 1:
    # write a single output file from multiple input files
    recon = JobManager(
        description="Run the MC recon",
        steering_resource=params['recon_steering'],
        run=params['run'],
        detector=params['detector'],
        inputs=params.input_files.keys(),
        outputs=[os.path.splitext(params.output_files.keys()[0])[0]])
    job.components.append(recon)
else: