# This script runs Lumi macros for the full Sim #-- fix params of simulation -------------------------------------------------- #numer of events used for resolution study SIMEVENTS=1000000 nJobs=2000 step=`expr $SIMEVENTS / $nJobs` #Declare array with number of tracks per event #TRKS=(10 5) #TRKS=(2 3 4 5 10 15) TRKS=(15) # get number of elements in the array TRKSN=${#TRKS[@]} #Declare array with beam energyes #ENERGY=(1.5 4.06 8.9 11.91) #GeV ENERGY=(15) #GeV #ENERGY=(4.06) #GeV #ENERGY=(15) #GeV ENERGYN=${#ENERGY[@]} #--------------------------------------------------------------------------------------- # reads number of Events, name of run and verbose Level path="test" # let's go for (( jt=0;jt<$TRKSN;jt++)); do for (( jp=0;jp<$ENERGYN;jp++)); do momStr=`echo ${ENERGY[${jp}]} | sed -e '{ s/\./_/g; }'` pbeam=${ENERGY[${jp}]} numTrks=${TRKS[${jt}]} path="/home/karavdin/datastorage/TrackPerformancePixel/"${SIMEVENTS}"/mom_"${momStr}"/"${numTrks}"trks" if [ ! -d $path ]; then mkdir -p $path fi last=`expr $SIMEVENTS - 1` cd /home/karavdin/pandaRoot12/macro/lmd source config.sh cat > ${path}/QA_jobs.log <sum_${SIMEVENTS}events_CA_${numTrks}trks_mergedHits_true_addMS_true_MinuitFit_${pbeam}.txt <sum_${SIMEVENTS}events_Follow_${numTrks}trks_mergedHits_true_addMS_true_MinuitFit_${pbeam}.txt<sum_${SIMEVENTS}events_CA_${numTrks}trks_mergedHits_true_addMS_false_KalmanFillter_${pbeam}.txt<sum_${SIMEVENTS}events_Follow_${numTrks}trks_mergedHits_true_addMS_false_KalmanFillter_${pbeam}.txt<sum_${SIMEVENTS}events_CA_${numTrks}trks_mergedHits_false_addMS_true_MinuitFit_${pbeam}.txt<sum_${SIMEVENTS}events_CA_${numTrks}trks_mergedHits_false_addMS_false_KalmanFillter_${pbeam}.txt<> ${path}/QA_jobs.log else FILESIZE=$(stat -c%s ${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_CA_${numTrks}trks_mergedHits_true_addMS_true_MinuitFit_${pbeam}_GEANT4_${start}.root ) if [[ ${FILESIZE} -lt ${STANDARTCAMINUIT} ]]; then echo "job_pixel_${numTrks}trks_${SIMEVENTS}events_${start}.sh: ouput for CA and Minuit is too small" >> ${path}/QA_jobs.log else # echo "${start}: ${FILESIZE} = OK for CA and Minuit" >> ${path}/QA_jobs.log echo -n "${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_CA_${numTrks}trks_mergedHits_true_addMS_true_MinuitFit_${pbeam}_GEANT4_${start}.root " >> sum_${SIMEVENTS}events_CA_${numTrks}trks_mergedHits_true_addMS_true_MinuitFit_${pbeam}.txt fi fi if [ ! -r ${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_Follow_${numTrks}trks_mergedHits_true_addMS_true_MinuitFit_${pbeam}_GEANT4_${start}.root ];then echo "job_pixel_${numTrks}trks_${SIMEVENTS}events_${start}.sh: doesn't have output for Follow and Minuit " >> ${path}/QA_jobs.log else FILESIZE=$(stat -c%s ${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_Follow_${numTrks}trks_mergedHits_true_addMS_true_MinuitFit_${pbeam}_GEANT4_${start}.root ) if [[ ${FILESIZE} -lt ${STANDARTFMINUIT} ]]; then echo "job_pixel_${numTrks}trks_${SIMEVENTS}events_${start}.sh: ouput for Follow and Minuit is too small" >> ${path}/QA_jobs.log else # echo "${start}: ${FILESIZE} = OK for Follow and Minuit" >> ${path}/QA_jobs.log echo -n "${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_Follow_${numTrks}trks_mergedHits_true_addMS_true_MinuitFit_${pbeam}_GEANT4_${start}.root " >> sum_${SIMEVENTS}events_Follow_${numTrks}trks_mergedHits_true_addMS_true_MinuitFit_${pbeam}.txt fi fi if [ ! -r ${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_CA_${numTrks}trks_mergedHits_true_addMS_false_KalmanFillter_${pbeam}_GEANT4_${start}.root ];then echo "job_pixel_${numTrks}trks_${SIMEVENTS}events_${start}.sh: doesn't have output for CA and Kalman" >> ${path}/QA_jobs.log else FILESIZE=$(stat -c%s ${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_CA_${numTrks}trks_mergedHits_true_addMS_false_KalmanFillter_${pbeam}_GEANT4_${start}.root ) if [[ ${FILESIZE} -lt ${STANDARTCAKAL} ]]; then echo "job_pixel_${numTrks}trks_${SIMEVENTS}events_${start}.sh: ouput for CA and Kalman is too small" >> ${path}/QA_jobs.log else # echo "${start}: ${FILESIZE} = OK for CA and Kalman" >> ${path}/QA_jobs.log echo -n "${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_CA_${numTrks}trks_mergedHits_true_addMS_false_KalmanFillter_${pbeam}_GEANT4_${start}.root " >> sum_${SIMEVENTS}events_CA_${numTrks}trks_mergedHits_true_addMS_false_KalmanFillter_${pbeam}.txt fi fi if [ ! -r ${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_Follow_${numTrks}trks_mergedHits_true_addMS_false_KalmanFillter_${pbeam}_GEANT4_${start}.root ];then echo "job_pixel_${numTrks}trks_${SIMEVENTS}events_${start}.sh: doesn't have output for Follow and Kalman " >> ${path}/QA_jobs.log else FILESIZE=$(stat -c%s ${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_Follow_${numTrks}trks_mergedHits_true_addMS_false_KalmanFillter_${pbeam}_GEANT4_${start}.root) if [[ ${FILESIZE} -lt ${STANDARTFKAL} ]]; then echo "job_pixel_${numTrks}trks_${SIMEVENTS}events_${start}.sh: ouput for Follow and Kalman is too small" >> ${path}/QA_jobs.log else # echo "${start}: ${FILESIZE} = OK for Follow and Kalman" >> ${path}/QA_jobs.log echo -n "${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_Follow_${numTrks}trks_mergedHits_true_addMS_false_KalmanFillter_${pbeam}_GEANT4_${start}.root ">>sum_${SIMEVENTS}events_Follow_${numTrks}trks_mergedHits_true_addMS_false_KalmanFillter_${pbeam}.txt fi fi # # echo -n "${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_CA_${numTrks}trks_mergedHits_false_addMS_true_MinuitFit_${pbeam}_GEANT4_${start}.root " >>sum_${SIMEVENTS}events_CA_${numTrks}trks_mergedHits_false_addMS_true_MinuitFit_${pbeam}.txt # # echo -n "${path}/../Lumi_out_MC_and_REC_trks_matches_with_IDs0_CA_${numTrks}trks_mergedHits_false_addMS_false_KalmanFillter_${pbeam}_GEANT4_${start}.root " >> sum_${SIMEVENTS}events_CA_${numTrks}trks_mergedHits_false_addMS_false_KalmanFillter_${pbeam}.txt done cat >/home/karavdin/myScripts/jobs/jobSumTrkRecPerfomancePixel_${numTrks}trks_${momStr}mom.sh <