diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 17b92796498871b5468676237659bc589f5451f1..3145f1cfc2a085f201f15a57bdb673684c07ac89 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2,7 +2,7 @@ image: eicweb.phy.anl.gov:4567/eic/juggler/juggler:latest default: artifacts: - expire_in: 10 mins + expire_in: 60 mins paths: - config/ - results/ @@ -45,7 +45,6 @@ generate_config: script: - mkdir -p config && ./bin/gen_ci_config -p test_ -i dummy > config/dummy_config.yml - mkdir -p config && ./bin/gen_ci_config -p clustering_ -i clustering > config/clustering_config.yml - - mkdir -p config && ./bin/gen_ci_config -p ecal_ -i ecal > config/ecal_config.yml dummy-pipeline: stage: run @@ -65,14 +64,17 @@ clustering-pipeline: job: generate_config strategy: depend -ecal-pipeline: - stage: run - needs: ["generate_config"] - trigger: - include: - - artifact: config/ecal_config.yml - job: generate_config - strategy: depend +include: + - local: 'ecal/ecal_config.yml' + + #ecal-pipeline: + # stage: run + # needs: ["get_data"] + # trigger: + # include: + # - artifact: config/ecal_config.yml + # job: generate_config + # strategy: depend #crystal_electron_simulation: # stage: run diff --git a/ecal/ecal_config.yml b/ecal/ecal_config.yml new file mode 100644 index 0000000000000000000000000000000000000000..f359b64910c805140211bc0f7293d6dc77366ad2 --- /dev/null +++ b/ecal/ecal_config.yml @@ -0,0 +1,14 @@ +ecal_1_emcal_electrons: + image: eicweb.phy.anl.gov:4567/eic/juggler/juggler:latest + tags: + - silicon + timeout: 12 hours 30 minutes + artifacts: + expire_in: 20 weeks + paths: + - results/ + - sim_output/ + stage: run + script: + - bash ecal/emcal_electrons.sh + diff --git a/ecal/emcal_electrons.sh b/ecal/emcal_electrons.sh index 73b0e56ffb55f60b2a976cf23a765fd1b1a4a658..4404dab5486669dfe7fafe7b9898900898692a12 100644 --- a/ecal/emcal_electrons.sh +++ b/ecal/emcal_electrons.sh @@ -1,14 +1,25 @@ #!/bin/bash + +if [[ ! -n "${JUGGLER_DETECTOR}" ]] ; then + export JUGGLER_DETECTOR="topside" +fi + +if [[ ! -n "${JUGGLER_N_EVENTS}" ]] ; then + export JUGGLER_N_EVENTS=1000 +fi + export JUGGLER_FILE_NAME_TAG="emcal_uniform_electrons" -export JUGGLER_N_EVENTS=1000 -export JUGGLER_DETECTOR="topside" export JUGGLER_GEN_FILE="${JUGGLER_FILE_NAME_TAG}.hepmc" + 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}" + git clone https://eicweb.phy.anl.gov/EIC/datasets.git datasets -root -b -q "datasets/emcal_electrons.cxx(1e4, \"${JUGGLER_FILE_NAME_TAG}.hepmc\")" +root -b -q "datasets/emcal_electrons.cxx(${JUGGLER_N_EVENTS}, \"${JUGGLER_FILE_NAME_TAG}.hepmc\")" git clone https://eicweb.phy.anl.gov/EIC/detectors/${JUGGLER_DETECTOR}.git mkdir ${JUGGLER_DETECTOR}/build @@ -20,6 +31,7 @@ pushd ${JUGGLER_DETECTOR} ls -l # run geant4 simulations npsim --runType batch \ + -v WARNING \ --numberOfEvents ${JUGGLER_N_EVENTS} \ --compactFile ${JUGGLER_DETECTOR}.xml \ --inputFiles ../${JUGGLER_FILE_NAME_TAG}.hepmc \ @@ -27,10 +39,16 @@ npsim --runType batch \ # Need to figure out how to pass file name to juggler from the commandline xenv -x /usr/local/Juggler.xenv gaudirun.py ../ecal/options/example_crystal.py +ls -l popd +ls -l pwd mkdir -p results -root -b -q "./scripts/makeplot.C(\"${JUGGLER_DETECTOR}/${JUGGLER_SIM_FILE}\")" +root -b -q "./scripts/makeplot.C(\"${JUGGLER_DETECTOR}/${JUGGLER_REC_FILE}\")" + +mkdir -p sim_output +cp "${JUGGLER_DETECTOR}/${JUGGLER_REC_FILE}" sim_output/. +cp "${JUGGLER_DETECTOR}/${JUGGLER_SIM_FILE}" sim_output/.