Skip to content
Snippets Groups Projects
Commit 026846f5 authored by Jackson Carl Burzynski's avatar Jackson Carl Burzynski :cowboy: Committed by Adam Edward Barton
Browse files

Update muon CP alg sequence to latest Run 3 recommendations

Update muon CP alg sequence to latest Run 3 recommendations
parent 206b5605
No related merge requests found
......@@ -171,31 +171,32 @@ def makeSequenceOld (dataType, algSeq, forCompare, isPhyslite, noPhysliteBroken,
if noPhysliteBroken :
muonSequenceMedium.__delattr__ ('MuonSelectionAlg_medium')
muonSequenceMedium.configure( inputName = input,
outputName = 'AnaMuonsMedium_%SYS%' )
outputName = 'AnaMuons_%SYS%' )
algSeq += muonSequenceMedium
muonSequenceTight = makeMuonAnalysisSequence( dataType, deepCopyOutput = False, shallowViewOutput = False,
workingPoint = 'Tight.Loose_VarRad', postfix = 'tight',
enableCutflow=True, enableKinematicHistograms=True, ptSelectionOutput = True )
muonSequenceTight.removeStage ("calibration")
# FIX ME: the current version of the `MuonSelectionTool` doesn't work
# on the current version of PHYSLITE, and needs a new PHYSLITE production
# campaign
if noPhysliteBroken :
muonSequenceTight.__delattr__ ('MuonSelectionAlg_tight')
muonSequenceTight.configure( inputName = 'AnaMuonsMedium_%SYS%',
outputName = 'AnaMuons_%SYS%')
algSeq += muonSequenceTight
# TODO: MCP should restore this when the recommendations for Tight WP exist in R23
# muonSequenceTight = makeMuonAnalysisSequence( dataType, deepCopyOutput = False, shallowViewOutput = False,
# workingPoint = 'Tight.Loose_VarRad', postfix = 'tight',
# enableCutflow=True, enableKinematicHistograms=True, ptSelectionOutput = True )
# muonSequenceTight.removeStage ("calibration")
# # FIX ME: the current version of the `MuonSelectionTool` doesn't work
# # on the current version of PHYSLITE, and needs a new PHYSLITE production
# # campaign
# if noPhysliteBroken :
# muonSequenceTight.__delattr__ ('MuonSelectionAlg_tight')
# muonSequenceTight.configure( inputName = 'AnaMuonsMedium_%SYS%',
# outputName = 'AnaMuons_%SYS%')
# algSeq += muonSequenceTight
vars += [ 'OutMuons_NOSYS.eta -> mu_eta',
'OutMuons_NOSYS.phi -> mu_phi',
'OutMuons_%SYS%.pt -> mu_pt_%SYS%',
'OutMuons_NOSYS.charge -> mu_charge',
'OutMuons_%SYS%.baselineSelection_medium -> mu_select_medium_%SYS%',
'OutMuons_%SYS%.baselineSelection_tight -> mu_select_tight_%SYS%', ]
'OutMuons_%SYS%.baselineSelection_medium -> mu_select_medium_%SYS%', ]
#'OutMuons_%SYS%.baselineSelection_tight -> mu_select_tight_%SYS%', ]
if dataType != 'data':
vars += [ 'OutMuons_%SYS%.muon_effSF_medium_%SYS% -> mu_effSF_medium_%SYS%',
'OutMuons_%SYS%.muon_effSF_tight_%SYS% -> mu_effSF_tight_%SYS%', ]
vars += [ 'OutMuons_%SYS%.muon_effSF_medium_%SYS% -> mu_effSF_medium_%SYS%', ]
#'OutMuons_%SYS%.muon_effSF_tight_%SYS% -> mu_effSF_tight_%SYS%', ]
# Include, and then set up the electron analysis sequence:
from EgammaAnalysisAlgorithms.ElectronAnalysisSequence import \
......@@ -608,10 +609,11 @@ def makeSequenceBlocks (dataType, algSeq, forCompare, isPhyslite, noPhysliteBrok
configSeq.setOptionValue ('.quality', 'Medium')
configSeq.setOptionValue ('.isolation', 'Loose_VarRad')
configSeq.setOptionValue ('.isRun3Geo', run3Muons)
configSeq += makeConfig ('Muons.Selection', 'AnaMuons.tight')
configSeq.setOptionValue ('.quality', 'Tight')
configSeq.setOptionValue ('.isolation', 'Loose_VarRad')
configSeq.setOptionValue ('.isRun3Geo', run3Muons)
# TODO: MCP should restore this when the recommendations for Tight WP exist in R23
# configSeq += makeConfig ('Muons.Selection', 'AnaMuons.tight')
# configSeq.setOptionValue ('.quality', 'Tight')
# configSeq.setOptionValue ('.isolation', 'Loose_VarRad')
# configSeq.setOptionValue ('.isRun3Geo', run3Muons)
# Include, and then set up the tau analysis algorithm sequence:
......@@ -679,14 +681,18 @@ def makeSequenceBlocks (dataType, algSeq, forCompare, isPhyslite, noPhysliteBrok
# For an actual analysis that would just be `AnaMuons.medium`, but
# since `tight` is a strict subset of `medium` it doesn't matter
# if we do an "or" of the two.
configSeq.setOptionValue ('.muons', 'AnaMuons.medium||tight')
# TODO: MCP should restore this when the recommendations for Tight WP exist in R23
# configSeq.setOptionValue ('.muons', 'AnaMuons.medium||tight')
configSeq.setOptionValue ('.muons', 'AnaMuons.medium')
# Include, and then set up the overlap analysis algorithm config:
configSeq += makeConfig( 'OverlapRemoval', None )
configSeq.setOptionValue ('.electrons', 'AnaElectrons.loose')
configSeq.setOptionValue ('.photons', 'AnaPhotons.tight')
configSeq.setOptionValue ('.muons', 'AnaMuons.medium||tight')
# TODO: MCP should restore this when the recommendations for Tight WP exist in R23
# configSeq.setOptionValue ('.muons', 'AnaMuons.medium||tight')
configSeq.setOptionValue ('.muons', 'AnaMuons.medium')
configSeq.setOptionValue ('.jets', 'AnaJets')
configSeq.setOptionValue ('.taus', 'AnaTauJets.tight')
configSeq.setOptionValue ('.inputLabel', 'preselectOR')
......
......@@ -154,7 +154,7 @@ class MuonWorkingPointConfig (ConfigBlock) :
alg.outOfValidityDeco = 'bad_eff' + postfix
alg.efficiencyScaleFactorTool.WorkingPoint = self.quality
if self.isRun3Geo:
alg.efficiencyScaleFactorTool.CalibrationRelease = '220817_Preliminary_r22run3'
alg.efficiencyScaleFactorTool.CalibrationRelease = '230309_Preliminary_r22run3'
alg.muons = config.readName (self.containerName)
alg.preselection = config.getPreselection (self.containerName, self.selectionName)
config.addOutputVar (self.containerName, alg.scaleFactorDecoration, 'effSF' + postfix)
......
......@@ -238,7 +238,7 @@ def makeMuonWorkingPointSequence( seq, dataType, workingPoint, postfix = '',
alg.outOfValidityDeco = 'bad_eff' + postfix
alg.efficiencyScaleFactorTool.WorkingPoint = sfWorkingPoint
if isRun3Geo:
alg.efficiencyScaleFactorTool.CalibrationRelease = '220817_Preliminary_r22run3'
alg.efficiencyScaleFactorTool.CalibrationRelease = '230309_Preliminary_r22run3'
if dataType != 'data':
seq.append( alg, inputPropName = 'muons',
stageName = 'efficiency',
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment