#!/bin/bash ################################################################ ## script for running sim&rec for LMD with BOX generarot ## [with pixels sensors set-up!] ## 13/11/2012 1st version ## 06/09/2013 updated version ## A.Karavdina ################################################################ echo Enter momentum from "1.5, 4.06, 8.9, 11.91, 15 [GeV/c]": read mom echo "Beam mometum is: $mom!" cd ${VMCWORKDIR}/macro/lmd/ pbeam=$mom ### pick up half solenoid maps for 1.5 GeV/c [tmp, should be removed one day!] ### solsw=3 #GeV, switch between half and full solenoid: below half of solenoid if [[ $(echo "if (${pbeam} > ${solsw}) 1 else 0" | bc) -eq 1 ]]; then echo "FULL solenoid field maps" ln -sf ${VMCWORKDIR}/input/solenoid_fc/* ${VMCWORKDIR}/input/. else echo "HALF solenoid field maps" ln -sf ${VMCWORKDIR}/input/solenoid_hc/* ${VMCWORKDIR}/input/. fi ###################################################### momStr=`echo $pbeam | sed -e '{ s/\./_/g; }'` path=${VMCWORKDIR}/macro/lmd/testPixel/mom_${momStr}/ mkdir -p ${path} #number of trks per event numTrks=1 #merge hits on sensors from different sides. true=yes mergedHits=true #number of events numEv=1000 # #simulation with Box generator root -l -b -q runLumiPixel0SimBox.C\(${numEv},0,"\"${path}\"",0,-2212,${pbeam},${numTrks},3562\) # #simulation with DPM #modeDPM=1 #el+inel # root -l -b -q runLumiPixel0SimDPMDirect.C\(${numEv},0,${pbeam},"\"${path}\"",0,3562,$modeDPM,0.12\) #digi root -l -b -q runLumiPixel1Digi.C\(${numEv},0,"\"${path}\""\) #hit reconstruction root -l -b -q runLumiPixel2Reco.C\(${numEv},0,"\"${path}\"",0,false\) # ##merge hits root -l -b -q runLumiPixel2bHitMerge.C\(${numEv},0,"\"${path}\""\) #switch on "missing plane" search algorithm misspl=true #use cuts during trk seacrh with "CA". Should be 'false' if sensors missaligned! trkcut=true ### change "CA" --> "Follow" if you want to use Trk-Following as trk-search algorithm ### NB: CA can use merged or single(not merged) hits, Trk-Following can't root -l -b -q runLumiPixel3Finder.C\(${numEv},0,"\"${path}\"",0,"\"CA\"",${misspl},${mergedHits},${trkcut},${pbeam}\) #track fit: ### Possible options: "Minuit", "KalmanGeane", "KalmanRK" root -l -b -q runLumiPixel4Fitter.C\(${numEv},0,"\"${path}\"",0,"\"Minuit\"",${mergedHits}\) #track filter (on number of hits and chi2) root -l -b -q runLumiPixel4aFilter.C\(${numEv},0,"\"${path}\"",0,${mergedHits}\) #save filtered results as standart Track array mv ${path}/Lumi_Track_0.root ${path}/Lumi_TrackNotFiltered_0.root cp ${path}/Lumi_TrackFiltered_0.root ${path}/Lumi_Track_0.root #back-propgation GEANE ### Possible options: "Geane", "RK" root -l -b -q runLumiPixel5BackProp.C\(${numEv},0,"\"${path}\"",0,"\"Geane\"",${mergedHits},${pbeam}\) # # Quality assurance task(s) root -l -b -q runLumiPixel7QA.C\(${numEv},0,"\"${path}\"",0,${pbeam}\) root -l -b -q runLumiPixel7TrksQA.C\(${numEv},0,"\"${path}\"",0,${pbeam},false\)