Skip to content
Snippets Groups Projects
Commit e7a6fcd1 authored by Whitney Armstrong's avatar Whitney Armstrong
Browse files

DVCS benchmarks directory

- Currently a skeleton.
- Need to add analysis scripts for DVCS analysis
- Need to use some standard event generators to cross check performance.
parent 2fb3354f
No related branches found
No related tags found
1 merge request!7DVCS benchmarks directory
...@@ -16,9 +16,10 @@ stages: ...@@ -16,9 +16,10 @@ stages:
include: include:
- local: 'dis/config.yml' - local: 'dis/config.yml'
- local: 'dvmp/config.yml' - local: 'dvmp/config.yml'
- local: 'dvcs/config.yml'
summary: summary:
stage: finish stage: finish
needs: ["dis:results", "dvmp:results"] needs: ["dis:results", "dvcs:results", "dvmp:results"]
script: script:
- echo "All benchmarks passed" - echo "All benchmarks passed"
dvcs:process:
stage: process
timeout: 1 hour
script:
- bash dvcs/dvcs.sh
artifacts:
paths:
- results
dvcs:analysis:
stage: analyze
needs: ["dvcs:process"]
script:
- echo "THIS IS A PLACE HOLDER"
dvcs:results:
stage: collect
needs: ["dvcs:analysis"]
script:
- echo "All DVCS benchmarks successful"
#!/bin/bash
if [[ ! -n "${JUGGLER_DETECTOR}" ]] ; then
export JUGGLER_DETECTOR="topside"
fi
if [[ ! -n "${JUGGLER_N_EVENTS}" ]] ; then
export JUGGLER_N_EVENTS=100
fi
# only used when running locally (not in CI)
if [[ ! -n "${JUGGLER_INSTALL_PREFIX}" ]] ; then
export JUGGLER_INSTALL_PREFIX="/usr/local"
fi
# these variables might not need exported.
export JUGGLER_FILE_NAME_TAG="dvcs"
export JUGGLER_SIM_FILE="sim_${JUGGLER_FILE_NAME_TAG}.root"
export JUGGLER_REC_FILE="rec_${JUGGLER_FILE_NAME_TAG}.root"
echo "JUGGLER_N_EVENTS = ${JUGGLER_N_EVENTS}"
echo "JUGGLER_DETECTOR = ${JUGGLER_DETECTOR}"
echo "JUGGLER_FILE_NAME_TAG = ${JUGGLER_FILE_NAME_TAG}"
### Build the detector constructors.
git clone https://eicweb.phy.anl.gov/EIC/detectors/${JUGGLER_DETECTOR}.git
git clone https://eicweb.phy.anl.gov/EIC/detectors/accelerator.git
pushd ${JUGGLER_DETECTOR}
ln -s ../accelerator/eic
popd
mkdir ${JUGGLER_DETECTOR}/build
pushd ${JUGGLER_DETECTOR}/build
cmake ../. -DCMAKE_INSTALL_PREFIX=/usr/local && make -j30 install
popd
pushd ${JUGGLER_DETECTOR}
curl -o test_proton_dvcs_eic.hepmc "https://eicweb.phy.anl.gov/api/v4/projects/345/jobs/artifacts/master/raw/data/test_proton_dvcs_eic.hepmc?job=compile"
if [[ "$?" -ne "0" ]] ; then
echo "Failed to download hepmc file"
exit 1
fi
## run geant4 simulations
npsim --runType batch \
--part.minimalKineticEnergy 1000*GeV \
-v WARNING \
--numberOfEvents ${JUGGLER_N_EVENTS} \
--compactFile ${JUGGLER_DETECTOR}.xml \
--inputFiles test_proton_dvcs_eic.hepmc \
--outputFile ${JUGGLER_SIM_FILE}
if [[ "$?" -ne "0" ]] ; then
echo "ERROR running script"
exit 1
fi
# Need to figure out how to pass file name to juggler from the commandline
xenv -x ${JUGGLER_INSTALL_PREFIX}/Juggler.xenv \
gaudirun.py ../options/tracker_reconstruction.py
if [[ "$?" -ne "0" ]] ; then
echo "ERROR running juggler"
exit 1
fi
ls -l
popd
pwd
mkdir -p results/dvcs
echo "STAND-IN FOR ANALYSIS SCRIPT"
#root -b -q "dis/scripts/rec_dis_electrons.cxx(\"${JUGGLER_DETECTOR}/${JUGGLER_REC_FILE}\")"
#if [[ "$?" -ne "0" ]] ; then
# echo "ERROR running root script"
# exit 1
#fi
if [[ "${JUGGLER_N_EVENTS}" -lt "500" ]] ; then
cp ${JUGGLER_DETECTOR}/${JUGGLER_REC_FILE} results/dvcs/.
fi
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment