Back to home page

EIC code displayed by LXR

 
 

    


Warning, /detector_benchmarks/benchmarks/insert_neutron/Snakefile is written in an unsupported language. File is not indexed.

0001 rule insert_neutron_generate:
0002         input:
0003                 script="benchmarks/insert_neutron/analysis/gen_particles.cxx",
0004         params:
0005                 NEVENTS_GEN=1000,
0006                 th_max=5.7,
0007                 th_min=2.0
0008         output:
0009                 GEN_FILE="sim_output/insert_neutron/neutron_{P}GeV.hepmc"
0010         shell:
0011                 """
0012 mkdir -p sim_output/insert_neutron
0013 root -l -b -q '{input.script}({params.NEVENTS_GEN},"{output.GEN_FILE}", "neutron", {params.th_min}, {params.th_max}, 0., 360., {wildcards.P})'
0014 """
0015 
0016 rule insert_neutron_simulate:
0017         input:
0018                 GEN_FILE="sim_output/insert_neutron/neutron_{P}GeV.hepmc"
0019         params:
0020                 PHYSICS_LIST="FTFP_BERT"
0021         output:
0022                 SIM_FILE="sim_output/insert_neutron/{DETECTOR_CONFIG}_sim_neutron_{P}GeV.edm4hep.root"
0023         shell:
0024                 """
0025 NEVENTS_SIM=1000
0026 # Running simulation
0027 npsim \
0028    --compactFile $DETECTOR_PATH/{wildcards.DETECTOR_CONFIG}.xml \
0029    --numberOfEvents $NEVENTS_SIM \
0030    --physicsList {params.PHYSICS_LIST} \
0031    --inputFiles {input.GEN_FILE} \
0032    --outputFile {output.SIM_FILE}
0033 """
0034 
0035 rule insert_neutron_recon:
0036         input:
0037                 SIM_FILE="sim_output/insert_neutron/{DETECTOR_CONFIG}_sim_neutron_{P}GeV.edm4hep.root"
0038         output:
0039                 REC_FILE="sim_output/insert_neutron/{DETECTOR_CONFIG}_rec_neutron_{P}GeV.edm4eic.root"
0040         shell:
0041                 """
0042 NEVENTS_REC=1000
0043 eicrecon {input.SIM_FILE} -Ppodio:output_file={output.REC_FILE} -Pdd4hep:xml_files=$DETECTOR_PATH/{wildcards.DETECTOR_CONFIG}.xml -Ppodio:output_collections=MCParticles,HcalEndcapPInsertRecHits,HcalEndcapPInsertClusters,HcalEndcapPInsertSubcellHits,EcalEndcapPInsertRecHits,EcalEndcapPInsertClusters  -Pjana:nevents=$NEVENTS_REC
0044 """
0045 
0046 rule insert_neutron_analysis:
0047         input:
0048                 expand("sim_output/insert_neutron/{DETECTOR_CONFIG}_rec_neutron_{P}GeV.edm4eic.root",
0049                     P=[20, 30, 40, 50, 60, 70, 80],
0050                     DETECTOR_CONFIG=["{DETECTOR_CONFIG}"]),
0051                 script="benchmarks/insert_neutron/analysis/neutron_plots.py",
0052         output:
0053                 results_dir=directory("results/{DETECTOR_CONFIG}/insert_neutron"),
0054         shell:
0055                 """
0056 mkdir -p {output.results_dir}
0057 python {input.script} {output.results_dir}
0058 """