1 import FWCore.ParameterSet.Config
as cms
14 (1,0) :
'OneProngNoPiZero',
15 (1,1) :
'OneProngOnePiZero',
16 (1,2) :
'OneProngTwoPiZero',
17 (3,0) :
'ThreeProngNoPiZero',
18 (3,1) :
'ThreeProngOnePiZero',
22 oldDecayModes = producer.decayModes
23 newDecayModes = cms.VPSet()
24 for dm
in oldDecayModes:
25 cut = cut_set[dmCodeTrans[(dm.nCharged.value(), dm.nPiZeros.value())]]
28 newDecayMode = copy.deepcopy(dm)
29 newDecayMode.cut = cms.double(cut)
30 newDecayModes.append(newDecayMode)
31 producer.decayModes = newDecayModes
33 TauDecayModeCutMutliplexerPrototype = cms.EDProducer(
34 "RecoTauDecayModeCutMultiplexer",
35 PFTauProducer = cms.InputTag(
"shrinkingConePFTauProducer"),
36 toMultiplex = cms.InputTag(
'shrinkingConePFTauDiscriminationByTaNC'),
37 Prediscriminants = shrinkingConeLeadTrackFinding,
39 decayModes = cms.VPSet(
41 nCharged = cms.uint32(1),
42 nPiZeros = cms.uint32(0),
45 nCharged = cms.uint32(1),
46 nPiZeros = cms.uint32(1),
49 nCharged = cms.uint32(1),
50 nPiZeros = cms.uint32(2),
53 nCharged = cms.uint32(3),
54 nPiZeros = cms.uint32(0),
57 nCharged = cms.uint32(3),
58 nPiZeros = cms.uint32(1),
63 shrinkingConePFTauDiscriminationByTaNCfrOnePercent = copy.deepcopy(TauDecayModeCutMutliplexerPrototype)
64 UpdateCuts(shrinkingConePFTauDiscriminationByTaNCfrOnePercent, CutSet_TaNC_OnePercent)
66 shrinkingConePFTauDiscriminationByTaNCfrOnePercent = copy.deepcopy(TauDecayModeCutMutliplexerPrototype)
67 UpdateCuts(shrinkingConePFTauDiscriminationByTaNCfrOnePercent, CutSet_TaNC_OnePercent)
69 shrinkingConePFTauDiscriminationByTaNCfrHalfPercent = copy.deepcopy(TauDecayModeCutMutliplexerPrototype)
70 UpdateCuts(shrinkingConePFTauDiscriminationByTaNCfrHalfPercent, CutSet_TaNC_HalfPercent)
72 shrinkingConePFTauDiscriminationByTaNCfrQuarterPercent = copy.deepcopy(TauDecayModeCutMutliplexerPrototype)
73 UpdateCuts(shrinkingConePFTauDiscriminationByTaNCfrQuarterPercent, CutSet_TaNC_QuarterPercent)
75 shrinkingConePFTauDiscriminationByTaNCfrTenthPercent = copy.deepcopy(TauDecayModeCutMutliplexerPrototype)
76 UpdateCuts(shrinkingConePFTauDiscriminationByTaNCfrTenthPercent, CutSet_TaNC_TenthPercent)
78 RunTanc = cms.Sequence(
79 shrinkingConePFTauDiscriminationByTaNCfrOnePercent+
80 shrinkingConePFTauDiscriminationByTaNCfrHalfPercent+
81 shrinkingConePFTauDiscriminationByTaNCfrQuarterPercent+
82 shrinkingConePFTauDiscriminationByTaNCfrTenthPercent
def UpdateCuts(producer, cut_set)