From d81a1ea7f096c63e401dbf6ec2362c7716f4be2f Mon Sep 17 00:00:00 2001
From: Ke Li <ke.li@cern.ch>
Date: Mon, 4 May 2020 17:19:56 +0200
Subject: [PATCH] use the new reference for single muon/electron and add single
 pion and ttbar w/ and w/o pileup

---
 .../test/test_ele10GeV_reco.sh                |  2 +-
 .../test/test_ele5GeV_reco.sh                 |  2 +-
 .../test/test_mu100GeV_reco.sh                |  2 +-
 .../test/test_mu10GeV_reco.sh                 |  2 +-
 .../test/test_mu1GeV_reco.sh                  |  2 +-
 .../test/test_mu20GeV_reco.sh                 |  2 +-
 ...100GeV_reco.sh => test_piplus1GeV_reco.sh} |  6 +-
 ...le1GeV_reco.sh => test_piplus5GeV_reco.sh} |  6 +-
 .../test/test_ttbarPU0_reco.sh                | 67 +++++++++++++++++++
 .../test/test_ttbarPU40_reco.sh               | 67 +++++++++++++++++++
 10 files changed, 146 insertions(+), 12 deletions(-)
 rename InnerDetector/InDetValidation/InDetPhysValMonitoring/test/{test_ele100GeV_reco.sh => test_piplus1GeV_reco.sh} (94%)
 rename InnerDetector/InDetValidation/InDetPhysValMonitoring/test/{test_ele1GeV_reco.sh => test_piplus5GeV_reco.sh} (94%)
 create mode 100755 InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarPU0_reco.sh
 create mode 100755 InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarPU40_reco.sh

diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele10GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele10GeV_reco.sh
index 2fbd1ebb713..5794fcf25c9 100755
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele10GeV_reco.sh
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele10GeV_reco.sh
@@ -34,7 +34,7 @@ case $ArtProcess in
       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"
+      dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_ele10GeV_reco_r22.root"
       echo "compare with R21"
       $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \
 	   -p -x dcube \
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele5GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele5GeV_reco.sh
index e473e61d8bc..bb4f1ff2986 100755
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele5GeV_reco.sh
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele5GeV_reco.sh
@@ -34,7 +34,7 @@ case $ArtProcess in
       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"
+      dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_ele5GeV_reco_r22.root"
       echo "compare with R21"
       $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \
 	   -p -x dcube \
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu100GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu100GeV_reco.sh
index 7d77449f012..3224cfe3717 100755
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu100GeV_reco.sh
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu100GeV_reco.sh
@@ -34,7 +34,7 @@ case $ArtProcess in
       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"
+      dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_mu100GeV_reco_r22.root"
       echo "compare with R21"
       $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \
 	   -p -x dcube \
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu10GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu10GeV_reco.sh
index cc0c4a1b854..c41c6d5a319 100755
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu10GeV_reco.sh
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu10GeV_reco.sh
@@ -34,7 +34,7 @@ case $ArtProcess in
       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"
+      dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_mu10GeV_reco_r22.root"
       echo "compare with R21"
       $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \
 	   -p -x dcube \
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu1GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu1GeV_reco.sh
index 3d5f5d10cf1..d537e6b135d 100755
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu1GeV_reco.sh
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu1GeV_reco.sh
@@ -34,7 +34,7 @@ case $ArtProcess in
       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"
+      dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_mu1GeV_reco_r22.root"
       echo "compare with R21"
       $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \
 	   -p -x dcube \
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu20GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu20GeV_reco.sh
index 3d19ffd3749..f100b863122 100755
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu20GeV_reco.sh
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_mu20GeV_reco.sh
@@ -34,7 +34,7 @@ case $ArtProcess in
       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"
+      dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_mu20GeV_reco_r22.root"
       echo "compare with R21"
       $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \
 	   -p -x dcube \
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele100GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_piplus1GeV_reco.sh
similarity index 94%
rename from InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele100GeV_reco.sh
rename to InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_piplus1GeV_reco.sh
index bb8cd957d23..b6b81d3f366 100755
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele100GeV_reco.sh
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_piplus1GeV_reco.sh
@@ -1,7 +1,7 @@
 #!/bin/bash
-# art-description: art job for InDetPhysValMonitoring, Single ele 100GeV
+# art-description: art job for InDetPhysValMonitoring, Single ele 10GeV
 # art-type: grid
-# art-input: user.keli.mc16_13TeV.422031.ParticleGun_single_ele_Pt100.recon.RDO.e7967_e5984_s3126_r11774_tid20255043_00
+# art-input: user.keli:user.keli.mc16_13TeV.422047.ParticleGun_single_piplus_Pt1.recon.RDO.e7967_e5984_s3126_r11774_tid20255143_00
 # art-input-nfiles: 10
 # art-cores: 4
 # art-include: master/Athena
@@ -34,7 +34,7 @@ case $ArtProcess in
       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"
+      dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_piplus1GeV_reco_r22.root"
       echo "compare with R21"
       $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \
 	   -p -x dcube \
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele1GeV_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_piplus5GeV_reco.sh
similarity index 94%
rename from InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele1GeV_reco.sh
rename to InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_piplus5GeV_reco.sh
index b22612700da..df420fdb94c 100755
--- a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ele1GeV_reco.sh
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_piplus5GeV_reco.sh
@@ -1,7 +1,7 @@
 #!/bin/bash
-# art-description: art job for InDetPhysValMonitoring, Single ele 1GeV
+# art-description: art job for InDetPhysValMonitoring, Single ele 10GeV
 # art-type: grid
-# art-input: user.keli.mc16_13TeV.422027.ParticleGun_single_ele_Pt1.recon.RDO.e7967_e5984_s3126_r11774_tid20254975_00
+# art-input: user.keli:user.keli.mc16_13TeV.422048.ParticleGun_single_piplus_Pt5.recon.RDO.e7967_e5984_s3126_r11774_tid20255160_00
 # art-input-nfiles: 10
 # art-cores: 4
 # art-include: master/Athena
@@ -34,7 +34,7 @@ case $ArtProcess in
       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"
+      dcubeRef="/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/InDetPhysValMonitoring/ReferenceHistograms/physval_piplus5GeV_reco_r22.root"
       echo "compare with R21"
       $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \
 	   -p -x dcube \
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarPU0_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarPU0_reco.sh
new file mode 100755
index 00000000000..ab0c042a208
--- /dev/null
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarPU0_reco.sh
@@ -0,0 +1,67 @@
+#!/bin/bash
+# art-description: Standard test for Run2 with ttbar input, PU=0
+# art-type: grid
+# art-include: master/Athena
+# art-output: *.root
+# art-output: *.xml
+# art-output: dcube*
+
+# Fix ordering of output in logfile
+exec 2>&1
+run() { (set -x; exec "$@") }
+
+
+artdata=/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art
+inputRDO=${artdata}/InDetPhysValMonitoring/inputs/OUT.RDO_ttbar_PU0.pool.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_ttbarPU0_reco_r22.root"
+
+# Reco step based on test InDetPhysValMonitoring ART setup from Josh Moss.
+run Reco_tf.py \
+  --inputRDOFile   "$inputRDO" \
+  --outputAODFile   physval.AOD.root \
+  --outputNTUP_PHYSVALFile physval.ntuple.root \
+  --steering        doRAWtoALL \
+  --checkEventCount False \
+  --ignoreErrors    True \
+  --maxEvents       1000 \
+  --valid           True \
+  --validationFlags doInDet \
+  --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"
+
+if [ rec_tf_exit_code  -eq 0 ]  ;then
+  run art.py download --user=artprod --dst="$lastref_dir" "$ArtPackage" "$ArtJobName"
+  run ls -la "$lastref_dir"
+
+  echo "compare with R21"
+  $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \
+    -p -x dcube \
+    -c ${dcubeXml} \
+    -r ${dcubeRef} \
+    physval.ntuple.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.ntuple.root \
+    physval.ntuple.root
+  echo "art-result: $? plots"
+fi
+
diff --git a/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarPU40_reco.sh b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarPU40_reco.sh
new file mode 100755
index 00000000000..e37b34fe0ac
--- /dev/null
+++ b/InnerDetector/InDetValidation/InDetPhysValMonitoring/test/test_ttbarPU40_reco.sh
@@ -0,0 +1,67 @@
+#!/bin/bash
+# art-description: Standard test for Run2 with ttbar input, PU=40
+# art-type: grid
+# art-include: master/Athena
+# art-output: *.root
+# art-output: *.xml
+# art-output: dcube*
+
+# Fix ordering of output in logfile
+exec 2>&1
+run() { (set -x; exec "$@") }
+
+
+artdata=/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art
+inputRDO=${artdata}/InDetPhysValMonitoring/inputs/OUT.RDO_ttbar_PU40.pool.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_ttbarPU40_reco_r22.root"
+
+# Reco step based on test InDetPhysValMonitoring ART setup from Josh Moss.
+run Reco_tf.py \
+  --inputRDOFile   "$inputRDO" \
+  --outputAODFile   physval.AOD.root \
+  --outputNTUP_PHYSVALFile physval.ntuple.root \
+  --steering        doRAWtoALL \
+  --checkEventCount False \
+  --ignoreErrors    True \
+  --maxEvents       1000 \
+  --valid           True \
+  --validationFlags doInDet \
+  --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"
+
+if [ rec_tf_exit_code  -eq 0 ]  ;then
+  run art.py download --user=artprod --dst="$lastref_dir" "$ArtPackage" "$ArtJobName"
+  run ls -la "$lastref_dir"
+
+  echo "compare with R21"
+  $ATLAS_LOCAL_ROOT/dcube/current/DCubeClient/python/dcube.py \
+    -p -x dcube \
+    -c ${dcubeXml} \
+    -r ${dcubeRef} \
+    physval.ntuple.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.ntuple.root \
+    physval.ntuple.root
+  echo "art-result: $? plots"
+fi
+
-- 
GitLab