Bugfixes for AODs using the SingleTopDPDMaker
mc08 r635_t53 samples
The bugs are described here: https://twiki.cern.ch/twiki/bin/view/AtlasProtected/PhysVal10TeVProd#Known_bugs_in_the_14_2_25_8_repr
Missing ET
The problem is described in detail here: http://atlas.web.cern.ch/Atlas/GROUPS/PHYSICS/JETS/EMISREC/muon_allbug_14.txt
The fix is described here, but shown below for the application in the SingleTopDPDMaker: https://twiki.cern.ch/twiki/bin/view/AtlasProtected/MetCorrectionForHiggsWG#How_to_Apply_the_Fix_for_15_3_0
Fix: In $TestArea/PhysicsAnalysis/TopPhys/SingleTopDPDMaker/share do:
get_files -jo MissingET/MissingET_jobOptions_muon.py
Adjust and add the following lines to exeSingleTopDPDMaker.py after the sequence initialisation, approx. after line 43:
# ATLAS/PAT "cooking" (verbose) initializations if ExecuteCellSelection or ExecuteTowerSelection or ExecuteJetReTagging or ExecuteNewJetTagging or FixMissingET: include("RecExCommon/RecExCommon_flags.py") include("RecExCond/AllDet_detDescr.py") if FixMissingET: include("MissingET_jobOptions_muon.py")
In the Tree Dumps Section of runSingleTopDPDMaker.py add the option
FixMissingET = True
At the end of the Input Container Names section, add these lines:
if FullReco and FixMissingET: MissingEtName += ["MET_MuonBoy_corrected", "MET_RefFinal_corrected"]
If you just have one MET variable, rename MET_RefFinal to MET_RefFinal_corrected in the if FullReco-clause.
Proof that it works is shown here (plotting Muon_pt (if Muon_isStandAloneMuon) vs. MET): MET_MuonBoy_before.png MET_MuonBoy_after.png MET_RefFinal_before.png MET_RefFinal_after.png
JetProb tagger
To have a slightly higher JetProb tagging efficiency, one has to rerun the b-tagging with a release > 14.5.1. To do this in the SingleTopDPDMaker, proceed as follows.
It is assumend that your standard jets are Cone4H1TowerJets.
In runSingleTopDPDMaker.py in the Input Container names section change
JetContainerName = "Cone4H1TowerJets"
to
JetContainerName = "Cone4H1TowerJetsAOD"
Close to the end in the section named Existing Jet tagging and selection parameters add or uncomment these lines:
ReTaggedJetNumber += 1 ReTaggedJetName += ["Cone4H1Tower"] ReTaggedJetPtMin += [15.0*GeV] ReTaggedJetEtaMax += [5.0]
Then you can keep DumpReTaggedJets = False, because the re-tagged jet collection is taken instead of the "wrongly" tagged one. Make sure you have the following setting (further to the top):
ExecuteJetReTagging = True ExecuteReTaggedJetSelection = True
In exeSingleTopDPDMaker.py, make sure the jet tagging section looks as shown below:
# New and existing Jet tagging if ExecuteJetReTagging or ExecuteNewJetTagging: from BTagging.BTaggingFlags import BTaggingFlags BTaggingFlags.Runmodus = "analysis" BTaggingFlags.PoolInputType = "AOD" BTaggingFlags.JetFitterTag = False BTaggingFlags.Jets = [] BTaggingFlags.JetsWithInfoPlus = [] if ExecuteJetReTagging: BTaggingFlags.Jets += ReTaggedJetName BTaggingFlags.JetsWithInfoPlus += ReTaggedJetName if ExecuteNewJetTagging: BTaggingFlags.Jets += NewJetName BTaggingFlags.JetsWithInfoPlus += NewJetName BTaggingFlags.CalibrationChannelAliases = [] for i in filter(lambda x : "LCTopo" in x, BTaggingFlags.Jets): if "4" in i: BTaggingFlags.CalibrationChannelAliases += [ "%s->Cone4H1Tower" % i ] else: BTaggingFlags.CalibrationChannelAliases += [ "%s->Cone7H1Tower" % i ] BTaggingFlags.OutputLevel = ERROR include("BTagging/BTagging_jobOptions.py")
CategorySingleTopDPDMaker