CMS 3D CMS Logo

EITopPAG_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
11 
12 
13 # sequential top projection cleaning
18 
19 
20 # b-tagging
21 from RecoBTag.ImpactParameter.pfImpactParameterTagInfos_cfi import pfImpactParameterTagInfos
22 from RecoBTag.SecondaryVertex.pfInclusiveSecondaryVertexFinderTagInfos_cfi import pfInclusiveSecondaryVertexFinderTagInfos
23 from RecoBTag.SecondaryVertex.candidateCombinedSecondaryVertexV2Computer_cfi import candidateCombinedSecondaryVertexV2Computer
24 from RecoBTag.SecondaryVertex.pfCombinedInclusiveSecondaryVertexV2BJetTags_cfi import pfCombinedInclusiveSecondaryVertexV2BJetTags
25 
26 
27 
29 
30 
31 pfPileUpEI = pfPileUp.clone( PFCandidates = cms.InputTag('particleFlowPtrs') )
32 pfNoPileUpEI = pfNoPileUp.clone( bottomCollection = cms.InputTag('particleFlowPtrs'),
33  topCollection = cms.InputTag('pfPileUpEI') )
34 
35 pfPileUpJMEEI = pfPileUpJME.clone( PFCandidates = cms.InputTag('particleFlowPtrs') )
36 pfNoPileUpJMEEI = pfNoPileUpJME.clone( bottomCollection = cms.InputTag('particleFlowPtrs'),
37  topCollection = cms.InputTag('pfPileUpJMEEI') )
38 
39 
40 
41 
42 pfAllMuonsEI = cms.EDFilter(
43  "PFCandidateFwdPtrCollectionStringFilter",
44  src = cms.InputTag("pfNoPileUpEI"),
45  cut = cms.string("abs(pdgId())==13"
46  ),
47  makeClones = cms.bool(True)
48 )
49 
50 pfMuonsFromVertexEI = pfMuonsFromVertex.clone( src = cms.InputTag('pfAllMuonsEI') )
51 
52 pfIsolatedMuonsEI = cms.EDFilter(
53  "PFCandidateFwdPtrCollectionStringFilter",
54  src = cms.InputTag("pfMuonsFromVertexEI"),
55  cut = cms.string('''abs(eta)<2.5 && pt>10. && muonRef.isAvailable() &&
56  (muonRef.pfIsolationR04().sumChargedHadronPt+
57  max(0.,muonRef.pfIsolationR04().sumNeutralHadronEt+
58  muonRef.pfIsolationR04().sumPhotonEt-
59  0.50*muonRef.pfIsolationR04().sumPUPt))/pt < 0.20 &&
60  (muonRef.isPFMuon && (muonRef.isGlobalMuon || muonRef.isTrackerMuon) )'''
61  ),
62  makeClones = cms.bool(True)
63 )
64 
65 
66 
67 pfNoMuon.topCollection = 'pfIsolatedMuonsEI'
68 pfNoMuon.bottomCollection = 'pfNoPileUpEI'
69 
70 
71 pfNoMuonJME.topCollection = 'pfIsolatedMuonsEI'
72 pfNoMuonJME.bottomCollection = 'pfNoPileUpJMEEI'
73 
74 
75 
76 
77 
78 pfAllElectronsEI = cms.EDFilter(
79  "PFCandidateFwdPtrCollectionStringFilter",
80  src = cms.InputTag("pfNoMuon"),
81  cut = cms.string("abs(pdgId())==11"
82  ),
83  makeClones = cms.bool(True)
84 )
85 
86 pfElectronsFromVertexEI = pfElectronsFromVertex.clone( src = cms.InputTag('pfAllElectronsEI') )
87 
88 pfIsolatedElectronsEI = cms.EDFilter(
89  "PFCandidateFwdPtrCollectionStringFilter",
90  src = cms.InputTag("pfElectronsFromVertexEI"),
91  cut = cms.string('''abs(eta)<2.5 && pt>20. &&
92  gsfTrackRef.isAvailable() &&
93  gsfTrackRef.hitPattern().numberOfLostHits('MISSING_INNER_HITS')<2 &&
94  (gsfElectronRef.pfIsolationVariables().sumChargedHadronPt+
95  max(0.,gsfElectronRef.pfIsolationVariables().sumNeutralHadronEt+
96  gsfElectronRef.pfIsolationVariables().sumPhotonEt-
97  0.5*gsfElectronRef.pfIsolationVariables().sumPUPt))/pt < 0.15
98  '''),
99  makeClones = cms.bool(True)
100 )
101 
102 
103 pfNoElectron.topCollection = 'pfIsolatedElectronsEI'
104 pfNoElectron.bottomCollection = 'pfNoMuon'
105 
106 pfNoElectronJME.topCollection = 'pfIsolatedElectronsEI'
107 pfNoElectronJME.bottomCollection = 'pfNoMuonJME'
108 
109 
110 
111 
112 pfJetsEI = pfJets.clone()
113 pfJetsPtrsEI = pfJetsPtrs.clone(src=cms.InputTag("pfJetsEI"))
114 
115 pfJetSequenceEI = cms.Sequence( pfJetsEI+ pfJetsPtrsEI )
116 
117 pfNoJetEI = pfNoJet.clone(
118  topCollection = 'pfJetsPtrsEI',
119  bottomCollection = 'pfNoElectronJME'
120  )
121 
122 
123 pfTausEI = pfTaus.clone()
124 pfTausPtrsEI = pfTausPtrs.clone(src=cms.InputTag("pfTausEI") )
125 pfNoTauEI = pfNoTau.clone(
126  topCollection = cms.InputTag('pfTausPtrsEI'),
127  bottomCollection = cms.InputTag('pfJetsPtrsEI')
128  )
129 
130 pfTauEISequence = cms.Sequence(
131  pfTausPreSequence+
132  pfTausBaseSequence+
133  pfTausEI+
134  pfTausPtrsEI
135  )
136 
137 
138 pfImpactParameterTagInfosEI = pfImpactParameterTagInfos.clone(
139  jets = cms.InputTag( 'pfJetsEI' )
140  )
141 pfInclusiveSecondaryVertexFinderTagInfosEI = pfInclusiveSecondaryVertexFinderTagInfos.clone(
142  trackIPTagInfos = cms.InputTag( 'pfImpactParameterTagInfosEI' )
143  )
144 pfCombinedInclusiveSecondaryVertexV2BJetTagsEI = pfCombinedInclusiveSecondaryVertexV2BJetTags.clone(
145  tagInfos = cms.VInputTag(cms.InputTag("pfImpactParameterTagInfosEI"),
146  cms.InputTag("pfInclusiveSecondaryVertexFinderTagInfosEI"))
147  )
148 
149 
150 
151 
152 pfMetEI = pfMET.clone(srcJets=cms.InputTag("pfJetsEI"))
153 
154 #EITopPAG = cms.Sequence(
155 EIsequence = cms.Sequence(
156  goodOfflinePrimaryVertices +
157  pfPileUpEI +
158  pfPileUpJMEEI +
159  pfNoPileUpEI +
160  pfNoPileUpJMEEI +
161  pfAllMuonsEI +
162  pfMuonsFromVertexEI +
163  pfIsolatedMuonsEI +
164  pfNoMuon +
165  pfNoMuonJME +
166  pfAllElectronsEI +
167  pfElectronsFromVertexEI +
168  pfIsolatedElectronsEI +
169  pfNoElectron +
170  pfNoElectronJME +
171  pfJetSequenceEI +
172  pfNoJetEI +
173  pfTauEISequence +
174  pfNoTauEI +
175  pfMetEI+
176  pfImpactParameterTagInfosEI+
177  pfInclusiveSecondaryVertexFinderTagInfosEI+
178  pfCombinedInclusiveSecondaryVertexV2BJetTagsEI
179  )
180 
pfTaus_cff
pfNoPileUpJME_cff
pfNoTau_cfi
pfJets_cff
candidateCombinedSecondaryVertexV2Computer_cfi
pfMuonsFromVertex_cfi
pfNoElectron_cfi
pfNoPileUp_cff
pfNoMuon_cfi
pfNoJet_cfi
goodOfflinePrimaryVertices_cfi
pfCombinedInclusiveSecondaryVertexV2BJetTags_cfi
pfElectronsFromVertex_cfi
pfImpactParameterTagInfos_cfi
pfMET_cfi
pfInclusiveSecondaryVertexFinderTagInfos_cfi