6 masterName='OverlapRemovalTool',
7 inputLabel='selected', outputLabel='overlaps',
8 bJetLabel='', maxElePtForBJetAwareOR = 100. * 1000,
10 outputPassValue=False,
11 linkOverlapObjects=False,
13 doElectrons=True, doMuons=True, doJets=True,
14 doTaus=True, doPhotons=True, doFatJets=False,
18 Provides the pre-configured overlap removal recommendations.
19 All overlap tools will be (private) added to the master tool
20 which is then returned by this function.
23 masterName - set the name of the master tool.
24 inputLabel - set the InputLabel property for all tools.
25 outputLabel - set the OutputLabel property for all tools.
26 bJetLabel - set user bjet decoration name. Leave blank to
27 disable btag-aware overlap removal.
28 maxElePtForBJetAwareOR - set the maximum electron pT for which b-tag
29 aware overlap removal is done. Set to negative
30 value to use for all electrons.
31 boostedLeptons - enable sliding dR cones for boosted lepton
33 outputPassValue - set the OutputPassValue property for all tools
34 which determines whether passing objects are
35 marked with true or false.
36 linkOverlapObjects - enable ElementLinks to overlap objects.
37 doEleEleOR - enable electron-electron overlap removal.
38 doXXXX - these flags enable/disable object types to
39 configure tools for: doElectrons, doMuons,
40 doJets, doTaus, doPhotons, doFatJets.
41 kwargs - additional properties to be applied to all tools.
42 For example: OutputLevel.
47 'InputLabel' : inputLabel,
48 'OutputLabel' : outputLabel,
49 'OutputPassValue' : outputPassValue
52 common_args.update(kwargs)
55 orTool = CompFactory.ORUtils.OverlapRemovalTool(masterName, **common_args)
58 common_args[
'LinkOverlapObjects'] = linkOverlapObjects
61 if doElectrons
and doEleEleOR:
62 orTool.EleEleORT = CompFactory.ORUtils.EleEleOverlapTool(
'EleEleORT', **common_args)
65 if doElectrons
and doMuons:
66 orTool.EleMuORT = CompFactory.ORUtils.EleMuSharedTrkOverlapTool(
'EleMuORT', **common_args)
68 if doElectrons
and doJets:
69 orTool.EleJetORT = CompFactory.ORUtils.EleJetOverlapTool(
'EleJetORT',
71 MaxElePtForBJetAwareOR=maxElePtForBJetAwareOR,
72 UseSlidingDR=boostedLeptons,
75 if doMuons
and doJets:
76 orTool.MuJetORT = CompFactory.ORUtils.MuJetOverlapTool(
'MuJetORT',
78 UseSlidingDR=boostedLeptons,
82 if doTaus
and doElectrons:
83 orTool.TauEleORT = CompFactory.ORUtils.DeltaROverlapTool(
'TauEleORT', DR=0.2, **common_args)
85 if doTaus
and doMuons:
86 orTool.TauMuORT = CompFactory.ORUtils.DeltaROverlapTool(
'TauMuORT', DR=0.2, **common_args)
89 orTool.TauJetORT = CompFactory.ORUtils.DeltaROverlapTool(
'TauJetORT', DR=0.2, **common_args)
92 if doPhotons
and doElectrons:
93 orTool.PhoEleORT = CompFactory.ORUtils.DeltaROverlapTool(
'PhoEleORT', **common_args)
95 if doPhotons
and doMuons:
96 orTool.PhoMuORT = CompFactory.ORUtils.DeltaROverlapTool(
'PhoMuORT', **common_args)
98 if doPhotons
and doJets:
99 orTool.PhoJetORT = CompFactory.ORUtils.DeltaROverlapTool(
'PhoJetORT', **common_args)
102 if doElectrons
and doFatJets:
103 orTool.EleFatJetORT = CompFactory.ORUtils.DeltaROverlapTool(
'EleFatJetORT', DR=1.0, **common_args)
105 if doJets
and doFatJets:
106 orTool.JetFatJetORT = CompFactory.ORUtils.DeltaROverlapTool(
'JetFatJetORT', DR=1.0, **common_args)
109 acc.setPrivateTools(orTool)