diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele100GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele100GeV_reco.sh new file mode 100755 index 0000000000000000000000000000000000000000..bb8cd957d237bb2c738bc24919ee7b08b5718c67 --- /dev/null +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele100GeV_reco.sh @@ -0,0 +1,101 @@ +#!/bin/bash +# art-description: art job for InDetPhysValMonitoring, Single ele 100GeV +# art-type: grid +# art-input: user.keli.mc16_13TeV.422031.ParticleGun_single_ele_Pt100.recon.RDO.e7967_e5984_s3126_r11774_tid20255043_00 +# art-input-nfiles: 10 +# art-cores: 4 +# art-include: master/Athena +# art-output: *.root +# art-output: *.xml +# art-output: art_core_* +# art-output: dcube + +set -x + +echo "ArtProcess: $ArtProcess" +lastref_dir=last_results +script="`basename \"$0\"`" +success_run=0 + +case $ArtProcess in + "start") + echo "Starting" + echo "List of files = " ${ArtInFile} + ;; + "end") + echo "Ending" + if [ ${success_run} -eq 0 ] ;then + echo "download latest result" + art.py download --user=artprod --dst="$lastref_dir" "$ArtPackage" "$ArtJobName" + ls -la "$lastref_dir" + echo "Merging physval.root" + hadd physval.root art_core_*/physval.ntuple.root + echo "postprocess" + postProcessIDPVMHistos physval.root + + dcubeXml="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/dcube/config/IDPVMPlots_R22.xml" + dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_ele100GeV.root" + echo "compare with R21" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube \ + -c ${dcubeXml} \ + -r ${dcubeRef} \ + physval.root + echo "art-result: $? plots" + + echo "compare with last build" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube_last \ + -c ${dcubeXml} \ + -r last_results/physval.root \ + physval.root + echo "art-result: $? plots" + else + echo "reco failed" + fi + ;; + *) + echo "Test $ArtProcess" + mkdir "art_core_${ArtProcess}" + cd "art_core_${ArtProcess}" + IFS=',' read -r -a file <<< "${ArtInFile}" + file=${file[${ArtProcess}]} + x="../$file" + echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC} and ATHENA_PROC_NUMBER=${ATHENA_PROC_NUMBER}" + unset ATHENA_NUM_PROC + unset ATHENA_PROC_NUMBER + + Reco_tf.py \ + --inputRDOFile $x \ + --outputNTUP_PHYSVALFile physval.ntuple.root \ + --outputAODFile physval.AOD.root \ + --steering doRAWtoALL \ + --checkEventCount False \ + --ignoreErrors True \ + --maxEvents -1 \ + --skipEvents 0 \ + --valid True \ + --validationFlags doInDet \ + --autoConfiguration everything \ + --preExec 'from InDetRecExample.InDetJobProperties import InDetFlags; \ + InDetFlags.doSlimming.set_Value_and_Lock(False); rec.doTrigger.set_Value_and_Lock(False); \ + from InDetPhysValMonitoring.InDetPhysValJobProperties import InDetPhysValFlags; \ + InDetPhysValFlags.doValidateTightPrimaryTracks.set_Value_and_Lock(True); \ + InDetPhysValFlags.doValidateTracksInJets.set_Value_and_Lock(False); \ + InDetPhysValFlags.doValidateGSFTracks.set_Value_and_Lock(False); \ + rec.doDumpProperties=True; rec.doCalo=False; rec.doEgamma=False; \ + rec.doForwardDet=False; rec.doInDet=True; rec.doJetMissingETTag=False; \ + rec.doLArg=False; rec.doLucid=False; rec.doMuon=False; rec.doMuonCombined=False; \ + rec.doSemiDetailedPerfMon=True; rec.doTau=False; rec.doTile=False;\ + from ParticleBuilderOptions.AODFlags import AODFlags;\ + AODFlags.ThinGeantTruth.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyCaloClusters.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False);\ + AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False) ' + echo "art-result: $? reco_${ArtInFile}" + if [ $? -ne 0 ] ;then + success_run=$? + fi + ls -lR + ;; +esac diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele10GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele10GeV_reco.sh new file mode 100755 index 0000000000000000000000000000000000000000..2fbd1ebb713838c25d32288e5af60ab5f544753c --- /dev/null +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele10GeV_reco.sh @@ -0,0 +1,101 @@ +#!/bin/bash +# art-description: art job for InDetPhysValMonitoring, Single ele 10GeV +# art-type: grid +# art-input: user.keli.mc16_13TeV.422029.ParticleGun_single_ele_Pt10.recon.RDO.e7967_e5984_s3126_r11774_tid20255009_00 +# art-input-nfiles: 10 +# art-cores: 4 +# art-include: master/Athena +# art-output: *.root +# art-output: *.xml +# art-output: art_core_* +# art-output: dcube + +set -x + +echo "ArtProcess: $ArtProcess" +lastref_dir=last_results +script="`basename \"$0\"`" +success_run=0 + +case $ArtProcess in + "start") + echo "Starting" + echo "List of files = " ${ArtInFile} + ;; + "end") + echo "Ending" + if [ ${success_run} -eq 0 ] ;then + echo "download latest result" + art.py download --user=artprod --dst="$lastref_dir" "$ArtPackage" "$ArtJobName" + ls -la "$lastref_dir" + echo "Merging physval.root" + hadd physval.root art_core_*/physval.ntuple.root + echo "postprocess" + postProcessIDPVMHistos physval.root + + dcubeXml="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/dcube/config/IDPVMPlots_R22.xml" + dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_ele10GeV.root" + echo "compare with R21" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube \ + -c ${dcubeXml} \ + -r ${dcubeRef} \ + physval.root + echo "art-result: $? plots" + + echo "compare with last build" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube_last \ + -c ${dcubeXml} \ + -r last_results/physval.root \ + physval.root + echo "art-result: $? plots" + else + echo "reco failed" + fi + ;; + *) + echo "Test $ArtProcess" + mkdir "art_core_${ArtProcess}" + cd "art_core_${ArtProcess}" + IFS=',' read -r -a file <<< "${ArtInFile}" + file=${file[${ArtProcess}]} + x="../$file" + echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC} and ATHENA_PROC_NUMBER=${ATHENA_PROC_NUMBER}" + unset ATHENA_NUM_PROC + unset ATHENA_PROC_NUMBER + + Reco_tf.py \ + --inputRDOFile $x \ + --outputNTUP_PHYSVALFile physval.ntuple.root \ + --outputAODFile physval.AOD.root \ + --steering doRAWtoALL \ + --checkEventCount False \ + --ignoreErrors True \ + --maxEvents -1 \ + --skipEvents 0 \ + --valid True \ + --validationFlags doInDet \ + --autoConfiguration everything \ + --preExec 'from InDetRecExample.InDetJobProperties import InDetFlags; \ + InDetFlags.doSlimming.set_Value_and_Lock(False); rec.doTrigger.set_Value_and_Lock(False); \ + from InDetPhysValMonitoring.InDetPhysValJobProperties import InDetPhysValFlags; \ + InDetPhysValFlags.doValidateTightPrimaryTracks.set_Value_and_Lock(True); \ + InDetPhysValFlags.doValidateTracksInJets.set_Value_and_Lock(False); \ + InDetPhysValFlags.doValidateGSFTracks.set_Value_and_Lock(False); \ + rec.doDumpProperties=True; rec.doCalo=False; rec.doEgamma=False; \ + rec.doForwardDet=False; rec.doInDet=True; rec.doJetMissingETTag=False; \ + rec.doLArg=False; rec.doLucid=False; rec.doMuon=False; rec.doMuonCombined=False; \ + rec.doSemiDetailedPerfMon=True; rec.doTau=False; rec.doTile=False;\ + from ParticleBuilderOptions.AODFlags import AODFlags;\ + AODFlags.ThinGeantTruth.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyCaloClusters.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False);\ + AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False) ' + echo "art-result: $? reco_${ArtInFile}" + if [ $? -ne 0 ] ;then + success_run=$? + fi + ls -lR + ;; +esac diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele1GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele1GeV_reco.sh new file mode 100755 index 0000000000000000000000000000000000000000..b22612700da9a1bdeb23670d8f360eff201600a2 --- /dev/null +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele1GeV_reco.sh @@ -0,0 +1,101 @@ +#!/bin/bash +# art-description: art job for InDetPhysValMonitoring, Single ele 1GeV +# art-type: grid +# art-input: user.keli.mc16_13TeV.422027.ParticleGun_single_ele_Pt1.recon.RDO.e7967_e5984_s3126_r11774_tid20254975_00 +# art-input-nfiles: 10 +# art-cores: 4 +# art-include: master/Athena +# art-output: *.root +# art-output: *.xml +# art-output: art_core_* +# art-output: dcube + +set -x + +echo "ArtProcess: $ArtProcess" +lastref_dir=last_results +script="`basename \"$0\"`" +success_run=0 + +case $ArtProcess in + "start") + echo "Starting" + echo "List of files = " ${ArtInFile} + ;; + "end") + echo "Ending" + if [ ${success_run} -eq 0 ] ;then + echo "download latest result" + art.py download --user=artprod --dst="$lastref_dir" "$ArtPackage" "$ArtJobName" + ls -la "$lastref_dir" + echo "Merging physval.root" + hadd physval.root art_core_*/physval.ntuple.root + echo "postprocess" + postProcessIDPVMHistos physval.root + + dcubeXml="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/dcube/config/IDPVMPlots_R22.xml" + dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_ele1GeV.root" + echo "compare with R21" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube \ + -c ${dcubeXml} \ + -r ${dcubeRef} \ + physval.root + echo "art-result: $? plots" + + echo "compare with last build" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube_last \ + -c ${dcubeXml} \ + -r last_results/physval.root \ + physval.root + echo "art-result: $? plots" + else + echo "reco failed" + fi + ;; + *) + echo "Test $ArtProcess" + mkdir "art_core_${ArtProcess}" + cd "art_core_${ArtProcess}" + IFS=',' read -r -a file <<< "${ArtInFile}" + file=${file[${ArtProcess}]} + x="../$file" + echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC} and ATHENA_PROC_NUMBER=${ATHENA_PROC_NUMBER}" + unset ATHENA_NUM_PROC + unset ATHENA_PROC_NUMBER + + Reco_tf.py \ + --inputRDOFile $x \ + --outputNTUP_PHYSVALFile physval.ntuple.root \ + --outputAODFile physval.AOD.root \ + --steering doRAWtoALL \ + --checkEventCount False \ + --ignoreErrors True \ + --maxEvents -1 \ + --skipEvents 0 \ + --valid True \ + --validationFlags doInDet \ + --autoConfiguration everything \ + --preExec 'from InDetRecExample.InDetJobProperties import InDetFlags; \ + InDetFlags.doSlimming.set_Value_and_Lock(False); rec.doTrigger.set_Value_and_Lock(False); \ + from InDetPhysValMonitoring.InDetPhysValJobProperties import InDetPhysValFlags; \ + InDetPhysValFlags.doValidateTightPrimaryTracks.set_Value_and_Lock(True); \ + InDetPhysValFlags.doValidateTracksInJets.set_Value_and_Lock(False); \ + InDetPhysValFlags.doValidateGSFTracks.set_Value_and_Lock(False); \ + rec.doDumpProperties=True; rec.doCalo=False; rec.doEgamma=False; \ + rec.doForwardDet=False; rec.doInDet=True; rec.doJetMissingETTag=False; \ + rec.doLArg=False; rec.doLucid=False; rec.doMuon=False; rec.doMuonCombined=False; \ + rec.doSemiDetailedPerfMon=True; rec.doTau=False; rec.doTile=False;\ + from ParticleBuilderOptions.AODFlags import AODFlags;\ + AODFlags.ThinGeantTruth.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyCaloClusters.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False);\ + AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False) ' + echo "art-result: $? reco_${ArtInFile}" + if [ $? -ne 0 ] ;then + success_run=$? + fi + ls -lR + ;; +esac diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele5GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele5GeV_reco.sh new file mode 100755 index 0000000000000000000000000000000000000000..e473e61d8bcd9e6683d2b15d6a993fdd1914aee9 --- /dev/null +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele5GeV_reco.sh @@ -0,0 +1,101 @@ +#!/bin/bash +# art-description: art job for InDetPhysValMonitoring, Single ele 5GeV +# art-type: grid +# art-input: user.keli.mc16_13TeV.422028.ParticleGun_single_ele_Pt5.recon.RDO.e7967_e5984_s3126_r11774_tid20254991_00 +# art-input-nfiles: 10 +# art-cores: 4 +# art-include: master/Athena +# art-output: *.root +# art-output: *.xml +# art-output: art_core_* +# art-output: dcube + +set -x + +echo "ArtProcess: $ArtProcess" +lastref_dir=last_results +script="`basename \"$0\"`" +success_run=0 + +case $ArtProcess in + "start") + echo "Starting" + echo "List of files = " ${ArtInFile} + ;; + "end") + echo "Ending" + if [ ${success_run} -eq 0 ] ;then + echo "download latest result" + art.py download --user=artprod --dst="$lastref_dir" "$ArtPackage" "$ArtJobName" + ls -la "$lastref_dir" + echo "Merging physval.root" + hadd physval.root art_core_*/physval.ntuple.root + echo "postprocess" + postProcessIDPVMHistos physval.root + + dcubeXml="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/dcube/config/IDPVMPlots_R22.xml" + dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_ele5GeV.root" + echo "compare with R21" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube \ + -c ${dcubeXml} \ + -r ${dcubeRef} \ + physval.root + echo "art-result: $? plots" + + echo "compare with last build" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube_last \ + -c ${dcubeXml} \ + -r last_results/physval.root \ + physval.root + echo "art-result: $? plots" + else + echo "reco failed" + fi + ;; + *) + echo "Test $ArtProcess" + mkdir "art_core_${ArtProcess}" + cd "art_core_${ArtProcess}" + IFS=',' read -r -a file <<< "${ArtInFile}" + file=${file[${ArtProcess}]} + x="../$file" + echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC} and ATHENA_PROC_NUMBER=${ATHENA_PROC_NUMBER}" + unset ATHENA_NUM_PROC + unset ATHENA_PROC_NUMBER + + Reco_tf.py \ + --inputRDOFile $x \ + --outputNTUP_PHYSVALFile physval.ntuple.root \ + --outputAODFile physval.AOD.root \ + --steering doRAWtoALL \ + --checkEventCount False \ + --ignoreErrors True \ + --maxEvents -1 \ + --skipEvents 0 \ + --valid True \ + --validationFlags doInDet \ + --autoConfiguration everything \ + --preExec 'from InDetRecExample.InDetJobProperties import InDetFlags; \ + InDetFlags.doSlimming.set_Value_and_Lock(False); rec.doTrigger.set_Value_and_Lock(False); \ + from InDetPhysValMonitoring.InDetPhysValJobProperties import InDetPhysValFlags; \ + InDetPhysValFlags.doValidateTightPrimaryTracks.set_Value_and_Lock(True); \ + InDetPhysValFlags.doValidateTracksInJets.set_Value_and_Lock(False); \ + InDetPhysValFlags.doValidateGSFTracks.set_Value_and_Lock(False); \ + rec.doDumpProperties=True; rec.doCalo=False; rec.doEgamma=False; \ + rec.doForwardDet=False; rec.doInDet=True; rec.doJetMissingETTag=False; \ + rec.doLArg=False; rec.doLucid=False; rec.doMuon=False; rec.doMuonCombined=False; \ + rec.doSemiDetailedPerfMon=True; rec.doTau=False; rec.doTile=False;\ + from ParticleBuilderOptions.AODFlags import AODFlags;\ + AODFlags.ThinGeantTruth.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyCaloClusters.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False);\ + AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False) ' + echo "art-result: $? reco_${ArtInFile}" + if [ $? -ne 0 ] ;then + success_run=$? + fi + ls -lR + ;; +esac diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu100GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu100GeV_reco.sh new file mode 100755 index 0000000000000000000000000000000000000000..7d77449f0124421f904d6c9b98ef603f5a440da7 --- /dev/null +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu100GeV_reco.sh @@ -0,0 +1,101 @@ +#!/bin/bash +# art-description: art job for InDetPhysValMonitoring, Single muon 100GeV +# art-type: grid +# art-input: user.keli.mc16_13TeV.422036.ParticleGun_single_mu_Pt100.recon.RDO.e7967_e5984_s3126_r11774_tid20254958_00 +# art-input-nfiles: 10 +# art-cores: 4 +# art-include: master/Athena +# art-output: *.root +# art-output: *.xml +# art-output: art_core_* +# art-output: dcube + +set -x + +echo "ArtProcess: $ArtProcess" +lastref_dir=last_results +script="`basename \"$0\"`" +success_run=0 + +case $ArtProcess in + "start") + echo "Starting" + echo "List of files = " ${ArtInFile} + ;; + "end") + echo "Ending" + if [ ${success_run} -eq 0 ] ;then + echo "download latest result" + art.py download --user=artprod --dst="$lastref_dir" "$ArtPackage" "$ArtJobName" + ls -la "$lastref_dir" + echo "Merging physval.root" + hadd physval.root art_core_*/physval.ntuple.root + echo "postprocess" + postProcessIDPVMHistos physval.root + + dcubeXml="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/dcube/config/IDPVMPlots_R22.xml" + dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_mu100GeV.root" + echo "compare with R21" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube \ + -c ${dcubeXml} \ + -r ${dcubeRef} \ + physval.root + echo "art-result: $? plots" + + echo "compare with last build" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube_last \ + -c ${dcubeXml} \ + -r last_results/physval.root \ + physval.root + echo "art-result: $? plots" + else + echo "reco failed" + fi + ;; + *) + echo "Test $ArtProcess" + mkdir "art_core_${ArtProcess}" + cd "art_core_${ArtProcess}" + IFS=',' read -r -a file <<< "${ArtInFile}" + file=${file[${ArtProcess}]} + x="../$file" + echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC} and ATHENA_PROC_NUMBER=${ATHENA_PROC_NUMBER}" + unset ATHENA_NUM_PROC + unset ATHENA_PROC_NUMBER + + Reco_tf.py \ + --inputRDOFile $x \ + --outputNTUP_PHYSVALFile physval.ntuple.root \ + --outputAODFile physval.AOD.root \ + --steering doRAWtoALL \ + --checkEventCount False \ + --ignoreErrors True \ + --maxEvents -1 \ + --skipEvents 0 \ + --valid True \ + --validationFlags doInDet \ + --autoConfiguration everything \ + --preExec 'from InDetRecExample.InDetJobProperties import InDetFlags; \ + InDetFlags.doSlimming.set_Value_and_Lock(False); rec.doTrigger.set_Value_and_Lock(False); \ + from InDetPhysValMonitoring.InDetPhysValJobProperties import InDetPhysValFlags; \ + InDetPhysValFlags.doValidateTightPrimaryTracks.set_Value_and_Lock(True); \ + InDetPhysValFlags.doValidateTracksInJets.set_Value_and_Lock(False); \ + InDetPhysValFlags.doValidateGSFTracks.set_Value_and_Lock(False); \ + rec.doDumpProperties=True; rec.doCalo=False; rec.doEgamma=False; \ + rec.doForwardDet=False; rec.doInDet=True; rec.doJetMissingETTag=False; \ + rec.doLArg=False; rec.doLucid=False; rec.doMuon=False; rec.doMuonCombined=False; \ + rec.doSemiDetailedPerfMon=True; rec.doTau=False; rec.doTile=False;\ + from ParticleBuilderOptions.AODFlags import AODFlags;\ + AODFlags.ThinGeantTruth.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyCaloClusters.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False);\ + AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False) ' + echo "art-result: $? reco_${ArtInFile}" + if [ $? -ne 0 ] ;then + success_run=$? + fi + ls -lR + ;; +esac diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu10GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu10GeV_reco.sh new file mode 100755 index 0000000000000000000000000000000000000000..cc0c4a1b8548401fc4b3dd2108a08f8bd0d0836f --- /dev/null +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu10GeV_reco.sh @@ -0,0 +1,101 @@ +#!/bin/bash +# art-description: art job for InDetPhysValMonitoring, Single muon 10GeV +# art-type: grid +# art-input: user.keli.mc16_13TeV.422034.ParticleGun_single_mu_Pt10.recon.RDO.e7967_e5984_s3126_r11774_tid20254941_00 +# art-input-nfiles: 10 +# art-cores: 4 +# art-include: master/Athena +# art-output: *.root +# art-output: *.xml +# art-output: art_core_* +# art-output: dcube + +set -x + +echo "ArtProcess: $ArtProcess" +lastref_dir=last_results +script="`basename \"$0\"`" +success_run=0 + +case $ArtProcess in + "start") + echo "Starting" + echo "List of files = " ${ArtInFile} + ;; + "end") + echo "Ending" + if [ ${success_run} -eq 0 ] ;then + echo "download latest result" + art.py download --user=artprod --dst="$lastref_dir" "$ArtPackage" "$ArtJobName" + ls -la "$lastref_dir" + echo "Merging physval.root" + hadd physval.root art_core_*/physval.ntuple.root + echo "postprocess" + postProcessIDPVMHistos physval.root + + dcubeXml="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/dcube/config/IDPVMPlots_R22.xml" + dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_mu10GeV.root" + echo "compare with R21" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube \ + -c ${dcubeXml} \ + -r ${dcubeRef} \ + physval.root + echo "art-result: $? plots" + + echo "compare with last build" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube_last \ + -c ${dcubeXml} \ + -r last_results/physval.root \ + physval.root + echo "art-result: $? plots" + else + echo "reco failed" + fi + ;; + *) + echo "Test $ArtProcess" + mkdir "art_core_${ArtProcess}" + cd "art_core_${ArtProcess}" + IFS=',' read -r -a file <<< "${ArtInFile}" + file=${file[${ArtProcess}]} + x="../$file" + echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC} and ATHENA_PROC_NUMBER=${ATHENA_PROC_NUMBER}" + unset ATHENA_NUM_PROC + unset ATHENA_PROC_NUMBER + + Reco_tf.py \ + --inputRDOFile $x \ + --outputNTUP_PHYSVALFile physval.ntuple.root \ + --outputAODFile physval.AOD.root \ + --steering doRAWtoALL \ + --checkEventCount False \ + --ignoreErrors True \ + --maxEvents -1 \ + --skipEvents 0 \ + --valid True \ + --validationFlags doInDet \ + --autoConfiguration everything \ + --preExec 'from InDetRecExample.InDetJobProperties import InDetFlags; \ + InDetFlags.doSlimming.set_Value_and_Lock(False); rec.doTrigger.set_Value_and_Lock(False); \ + from InDetPhysValMonitoring.InDetPhysValJobProperties import InDetPhysValFlags; \ + InDetPhysValFlags.doValidateTightPrimaryTracks.set_Value_and_Lock(True); \ + InDetPhysValFlags.doValidateTracksInJets.set_Value_and_Lock(False); \ + InDetPhysValFlags.doValidateGSFTracks.set_Value_and_Lock(False); \ + rec.doDumpProperties=True; rec.doCalo=False; rec.doEgamma=False; \ + rec.doForwardDet=False; rec.doInDet=True; rec.doJetMissingETTag=False; \ + rec.doLArg=False; rec.doLucid=False; rec.doMuon=False; rec.doMuonCombined=False; \ + rec.doSemiDetailedPerfMon=True; rec.doTau=False; rec.doTile=False;\ + from ParticleBuilderOptions.AODFlags import AODFlags;\ + AODFlags.ThinGeantTruth.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyCaloClusters.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False);\ + AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False) ' + echo "art-result: $? reco_${ArtInFile}" + if [ $? -ne 0 ] ;then + success_run=$? + fi + ls -lR + ;; +esac diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu1GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu1GeV_reco.sh new file mode 100755 index 0000000000000000000000000000000000000000..3d5f5d10cf1c66f886f8c1b9cdcd27479cc29c25 --- /dev/null +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu1GeV_reco.sh @@ -0,0 +1,101 @@ +#!/bin/bash +# art-description: art job for InDetPhysValMonitoring, Single muon 1GeV +# art-type: grid +# art-input: user.keli.mc16_13TeV.422032.ParticleGun_single_mu_Pt1.recon.RDO.e7967_e5984_s3126_r11774_tid20254908_00 +# art-input-nfiles: 10 +# art-cores: 4 +# art-include: master/Athena +# art-output: *.root +# art-output: *.xml +# art-output: art_core_* +# art-output: dcube + +set -x + +echo "ArtProcess: $ArtProcess" +lastref_dir=last_results +script="`basename \"$0\"`" +success_run=0 + +case $ArtProcess in + "start") + echo "Starting" + echo "List of files = " ${ArtInFile} + ;; + "end") + echo "Ending" + if [ ${success_run} -eq 0 ] ;then + echo "download latest result" + art.py download --user=artprod --dst="$lastref_dir" "$ArtPackage" "$ArtJobName" + ls -la "$lastref_dir" + echo "Merging physval.root" + hadd physval.root art_core_*/physval.ntuple.root + echo "postprocess" + postProcessIDPVMHistos physval.root + + dcubeXml="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/dcube/config/IDPVMPlots_R22.xml" + dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_mu1GeV.root" + echo "compare with R21" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube \ + -c ${dcubeXml} \ + -r ${dcubeRef} \ + physval.root + echo "art-result: $? plots" + + echo "compare with last build" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube_last \ + -c ${dcubeXml} \ + -r last_results/physval.root \ + physval.root + echo "art-result: $? plots" + else + echo "reco failed" + fi + ;; + *) + echo "Test $ArtProcess" + mkdir "art_core_${ArtProcess}" + cd "art_core_${ArtProcess}" + IFS=',' read -r -a file <<< "${ArtInFile}" + file=${file[${ArtProcess}]} + x="../$file" + echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC} and ATHENA_PROC_NUMBER=${ATHENA_PROC_NUMBER}" + unset ATHENA_NUM_PROC + unset ATHENA_PROC_NUMBER + + Reco_tf.py \ + --inputRDOFile $x \ + --outputNTUP_PHYSVALFile physval.ntuple.root \ + --outputAODFile physval.AOD.root \ + --steering doRAWtoALL \ + --checkEventCount False \ + --ignoreErrors True \ + --maxEvents -1 \ + --skipEvents 0 \ + --valid True \ + --validationFlags doInDet \ + --autoConfiguration everything \ + --preExec 'from InDetRecExample.InDetJobProperties import InDetFlags; \ + InDetFlags.doSlimming.set_Value_and_Lock(False); rec.doTrigger.set_Value_and_Lock(False); \ + from InDetPhysValMonitoring.InDetPhysValJobProperties import InDetPhysValFlags; \ + InDetPhysValFlags.doValidateTightPrimaryTracks.set_Value_and_Lock(True); \ + InDetPhysValFlags.doValidateTracksInJets.set_Value_and_Lock(False); \ + InDetPhysValFlags.doValidateGSFTracks.set_Value_and_Lock(False); \ + rec.doDumpProperties=True; rec.doCalo=False; rec.doEgamma=False; \ + rec.doForwardDet=False; rec.doInDet=True; rec.doJetMissingETTag=False; \ + rec.doLArg=False; rec.doLucid=False; rec.doMuon=False; rec.doMuonCombined=False; \ + rec.doSemiDetailedPerfMon=True; rec.doTau=False; rec.doTile=False;\ + from ParticleBuilderOptions.AODFlags import AODFlags;\ + AODFlags.ThinGeantTruth.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyCaloClusters.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False);\ + AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False) ' + echo "art-result: $? reco_${ArtInFile}" + if [ $? -ne 0 ] ;then + success_run=$? + fi + ls -lR + ;; +esac diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu20GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu20GeV_reco.sh new file mode 100755 index 0000000000000000000000000000000000000000..3d19ffd3749edd16c89189398ff464ea3b5d1498 --- /dev/null +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu20GeV_reco.sh @@ -0,0 +1,101 @@ +#!/bin/bash +# art-description: art job for InDetPhysValMonitoring, Single muon 20GeV +# art-type: grid +# art-input: user.keli.mc16_13TeV.422035.ParticleGun_single_mu_Pt20.recon.RDO.e7967_e5984_s3126_r11774_tid20255026_00 +# art-input-nfiles: 10 +# art-cores: 4 +# art-include: master/Athena +# art-output: *.root +# art-output: *.xml +# art-output: art_core_* +# art-output: dcube + +set -x + +echo "ArtProcess: $ArtProcess" +lastref_dir=last_results +script="`basename \"$0\"`" +success_run=0 + +case $ArtProcess in + "start") + echo "Starting" + echo "List of files = " ${ArtInFile} + ;; + "end") + echo "Ending" + if [ ${success_run} -eq 0 ] ;then + echo "download latest result" + art.py download --user=artprod --dst="$lastref_dir" "$ArtPackage" "$ArtJobName" + ls -la "$lastref_dir" + echo "Merging physval.root" + hadd physval.root art_core_*/physval.ntuple.root + echo "postprocess" + postProcessIDPVMHistos physval.root + + dcubeXml="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/dcube/config/IDPVMPlots_R22.xml" + dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_mu20GeV.root" + echo "compare with R21" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube \ + -c ${dcubeXml} \ + -r ${dcubeRef} \ + physval.root + echo "art-result: $? plots" + + echo "compare with last build" + $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \ + -p -x dcube_last \ + -c ${dcubeXml} \ + -r last_results/physval.root \ + physval.root + echo "art-result: $? plots" + else + echo "reco failed" + fi + ;; + *) + echo "Test $ArtProcess" + mkdir "art_core_${ArtProcess}" + cd "art_core_${ArtProcess}" + IFS=',' read -r -a file <<< "${ArtInFile}" + file=${file[${ArtProcess}]} + x="../$file" + echo "Unsetting ATHENA_NUM_PROC=${ATHENA_NUM_PROC} and ATHENA_PROC_NUMBER=${ATHENA_PROC_NUMBER}" + unset ATHENA_NUM_PROC + unset ATHENA_PROC_NUMBER + + Reco_tf.py \ + --inputRDOFile $x \ + --outputNTUP_PHYSVALFile physval.ntuple.root \ + --outputAODFile physval.AOD.root \ + --steering doRAWtoALL \ + --checkEventCount False \ + --ignoreErrors True \ + --maxEvents -1 \ + --skipEvents 0 \ + --valid True \ + --validationFlags doInDet \ + --autoConfiguration everything \ + --preExec 'from InDetRecExample.InDetJobProperties import InDetFlags; \ + InDetFlags.doSlimming.set_Value_and_Lock(False); rec.doTrigger.set_Value_and_Lock(False); \ + from InDetPhysValMonitoring.InDetPhysValJobProperties import InDetPhysValFlags; \ + InDetPhysValFlags.doValidateTightPrimaryTracks.set_Value_and_Lock(True); \ + InDetPhysValFlags.doValidateTracksInJets.set_Value_and_Lock(False); \ + InDetPhysValFlags.doValidateGSFTracks.set_Value_and_Lock(False); \ + rec.doDumpProperties=True; rec.doCalo=False; rec.doEgamma=False; \ + rec.doForwardDet=False; rec.doInDet=True; rec.doJetMissingETTag=False; \ + rec.doLArg=False; rec.doLucid=False; rec.doMuon=False; rec.doMuonCombined=False; \ + rec.doSemiDetailedPerfMon=True; rec.doTau=False; rec.doTile=False;\ + from ParticleBuilderOptions.AODFlags import AODFlags;\ + AODFlags.ThinGeantTruth.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyCaloClusters.set_Value_and_Lock(False); \ + AODFlags.ThinNegativeEnergyNeutralPFOs.set_Value_and_Lock(False);\ + AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False) ' + echo "art-result: $? reco_${ArtInFile}" + if [ $? -ne 0 ] ;then + success_run=$? + fi + ls -lR + ;; +esac diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarsimreco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarsimreco.sh index dac9586ec6e7f52de119ad12c1772f7b73f173ee..58a9c2c747bf4c2a419202e120f8c7343dfb3a8c 100755 --- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarsimreco.sh +++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarsimreco.sh @@ -42,11 +42,6 @@ art_dcube=/cvmfs/atlas.cern.ch/repo/sw/art/dcube/bin/art-dcube lastref_dir=last_results -if [ \( $dosim -ne 0 -a -n "$dcube_sim_lastref" \) -o \( $dorec -ne 0 -a -n "$dcube_rec_lastref" \) ]; then - run art.py download --user=artprod --dst="$lastref_dir" InDetPhysValMonitoring "$script" - run ls -la "$lastref_dir" -fi - dcube() { # Run DCube and print art-result (if $2 is not empty) step="$1" statname="$2" dcubemon="$3" dcubecfg="$4" dcuberef="$5" dcubedir="$6" @@ -143,6 +138,13 @@ if [ $dorec -ne 0 ]; then AODFlags.ThinInDetForwardTrackParticles.set_Value_and_Lock(False) ' echo "art-result: $? reco" + if [ rec_tf_exit_code eq 0 ] ;then + if [ \( $dosim -ne 0 -a -n "$dcube_sim_lastref" \) -o \( $dorec -ne 0 -a -n "$dcube_rec_lastref" \) ]; then + run art.py download --user=artprod --dst="$lastref_dir" InDetPhysValMonitoring "$script" + run ls -la "$lastref_dir" + fi + fi + # DCube InDetPhysValMonitoring performance plots dcube InDetPhysValMonitoring plot "$dcubemon_rec" "$dcubecfg_rec" "$lastref_dir/$dcubemon_rec" "$dcube_rec_lastref" dcube InDetPhysValMonitoring "" "$dcubemon_rec" "$dcubecfg_rec" "$dcuberef_rec" "$dcube_rec_fixref"