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

ATLAS: ClemensLange/SingleTopDPDMaker/Bugfixes (last edited 2009-11-23 16:49:05 by ClemensLange)