1 import FWCore.ParameterSet.Config
as cms
3 particleFlowBlock = cms.EDProducer(
6 verbose = cms.untracked.bool(
False),
8 debug = cms.untracked.bool(
False),
16 elementImporters = cms.VPSet(
17 cms.PSet( importerName = cms.string(
"GSFTrackImporter"),
18 source = cms.InputTag(
"pfTrackElec"),
19 gsfsAreSecondary = cms.bool(
False),
20 superClustersArePF = cms.bool(
True) ),
21 cms.PSet( importerName = cms.string(
"ConvBremTrackImporter"),
22 source = cms.InputTag(
"pfTrackElec") ),
23 cms.PSet( importerName = cms.string(
"SuperClusterImporter"),
24 source_eb = cms.InputTag(
"particleFlowSuperClusterECAL:particleFlowSuperClusterECALBarrel"),
25 source_ee = cms.InputTag(
"particleFlowSuperClusterECAL:particleFlowSuperClusterECALEndcapWithPreshower"),
26 source_towers = cms.InputTag(
"towerMaker"),
27 maximumHoverE = cms.double(0.5),
28 minSuperClusterPt = cms.double(10.0),
29 minPTforBypass = cms.double(100.0),
30 superClustersArePF = cms.bool(
True) ),
31 cms.PSet( importerName = cms.string(
"ConversionTrackImporter"),
32 source = cms.InputTag(
"pfConversions") ),
37 cms.PSet( importerName = cms.string(
"NuclearInteractionTrackImporter"),
38 source = cms.InputTag(
"pfDisplacedTrackerVertex") ),
41 cms.PSet( importerName = cms.string(
"GeneralTracksImporter"),
42 source = cms.InputTag(
"pfTrack"),
43 muonSrc = cms.InputTag(
"muons1stStep"),
44 cleanBadConvertedBrems = cms.bool(
True),
45 useIterativeTracking = cms.bool(
True),
46 maxDPtOPt = cms.double(1.),
47 DPtOverPtCuts_byTrackAlgo = cms.vdouble(10.0,10.0,10.0,
49 NHitCuts_byTrackAlgo = cms.vuint32(3,3,3,3,3,3)
58 cms.PSet( importerName = cms.string(
"ECALClusterImporter"),
59 source = cms.InputTag(
"particleFlowClusterECAL"),
60 BCtoPFCMap = cms.InputTag(
'particleFlowSuperClusterECAL:PFClusterAssociationEBEE') ),
61 cms.PSet( importerName = cms.string(
"GenericClusterImporter"),
62 source = cms.InputTag(
"particleFlowClusterHCAL") ),
63 cms.PSet( importerName = cms.string(
"GenericClusterImporter"),
64 source = cms.InputTag(
"particleFlowClusterHO") ),
65 cms.PSet( importerName = cms.string(
"GenericClusterImporter"),
66 source = cms.InputTag(
"particleFlowClusterHF") ),
67 cms.PSet( importerName = cms.string(
"GenericClusterImporter"),
68 source = cms.InputTag(
"particleFlowClusterPS") ),
79 linkDefinitions = cms.VPSet(
80 cms.PSet( linkerName = cms.string(
"PreshowerAndECALLinker"),
81 linkType = cms.string(
"PS1:ECAL"),
82 useKDTree = cms.bool(
True) ),
83 cms.PSet( linkerName = cms.string(
"PreshowerAndECALLinker"),
84 linkType = cms.string(
"PS2:ECAL"),
85 useKDTree = cms.bool(
True) ),
86 cms.PSet( linkerName = cms.string(
"TrackAndECALLinker"),
87 linkType = cms.string(
"TRACK:ECAL"),
88 useKDTree = cms.bool(
True) ),
89 cms.PSet( linkerName = cms.string(
"TrackAndHCALLinker"),
90 linkType = cms.string(
"TRACK:HCAL"),
91 useKDTree = cms.bool(
True) ),
92 cms.PSet( linkerName = cms.string(
"TrackAndHOLinker"),
93 linkType = cms.string(
"TRACK:HO"),
94 useKDTree = cms.bool(
False) ),
95 cms.PSet( linkerName = cms.string(
"ECALAndHCALLinker"),
96 linkType = cms.string(
"ECAL:HCAL"),
97 useKDTree = cms.bool(
False) ),
98 cms.PSet( linkerName = cms.string(
"HCALAndHOLinker"),
99 linkType = cms.string(
"HCAL:HO"),
100 useKDTree = cms.bool(
False) ),
101 cms.PSet( linkerName = cms.string(
"HFEMAndHFHADLinker"),
102 linkType = cms.string(
"HFEM:HFHAD"),
103 useKDTree = cms.bool(
False) ),
104 cms.PSet( linkerName = cms.string(
"TrackAndTrackLinker"),
105 linkType = cms.string(
"TRACK:TRACK"),
106 useKDTree = cms.bool(
False) ),
107 cms.PSet( linkerName = cms.string(
"ECALAndECALLinker"),
108 linkType = cms.string(
"ECAL:ECAL"),
109 useKDTree = cms.bool(
False) ),
110 cms.PSet( linkerName = cms.string(
"GSFAndECALLinker"),
111 linkType = cms.string(
"GSF:ECAL"),
112 useKDTree = cms.bool(
False) ),
113 cms.PSet( linkerName = cms.string(
"TrackAndGSFLinker"),
114 linkType = cms.string(
"TRACK:GSF"),
115 useKDTree = cms.bool(
False),
116 useConvertedBrems = cms.bool(
True) ),
117 cms.PSet( linkerName = cms.string(
"GSFAndBREMLinker"),
118 linkType = cms.string(
"GSF:BREM"),
119 useKDTree = cms.bool(
False) ),
120 cms.PSet( linkerName = cms.string(
"GSFAndGSFLinker"),
121 linkType = cms.string(
"GSF:GSF"),
122 useKDTree = cms.bool(
False) ),
123 cms.PSet( linkerName = cms.string(
"ECALAndBREMLinker"),
124 linkType = cms.string(
"ECAL:BREM"),
125 useKDTree = cms.bool(
False) ),
126 cms.PSet( linkerName = cms.string(
"GSFAndHCALLinker"),
127 linkType = cms.string(
"GSF:HCAL"),
128 useKDTree = cms.bool(
False) ),
129 cms.PSet( linkerName = cms.string(
"HCALAndBREMLinker"),
130 linkType = cms.string(
"HCAL:BREM"),
131 useKDTree = cms.bool(
False) ),
132 cms.PSet( linkerName = cms.string(
"SCAndECALLinker"),
133 linkType = cms.string(
"SC:ECAL"),
134 useKDTree = cms.bool(
False),
135 SuperClusterMatchByRef = cms.bool(
True) )
141 for i, pset
in enumerate(particleFlowBlock.elementImporters):
142 if pset.importerName.value() == name:
146 from Configuration.Eras.Modifier_phase2_hgcal_cff
import phase2_hgcal
148 _insertGeneralTracksImporter = {}
150 _insertGeneralTracksImporter[idx] =
dict(
151 importerName = cms.string(
'GeneralTracksImporterWithVeto'),
152 veto = cms.InputTag(
'hgcalTrackCollection:TracksInHGCal')
154 phase2_hgcal.toModify(
156 elementImporters = _insertGeneralTracksImporter
177 from Configuration.Eras.Modifier_phase2_timing_cff
import phase2_timing
178 _addTiming = particleFlowBlock.elementImporters.copy()
179 _addTiming.append( cms.PSet( importerName = cms.string(
"TrackTimingImporter"),
180 timeValueMap = cms.InputTag(
"trackTimeValueMapProducer:generalTracksConfigurableFlatResolutionModel"),
181 timeErrorMap = cms.InputTag(
"trackTimeValueMapProducer:generalTracksConfigurableFlatResolutionModelResolution"),
182 timeValueMapGsf = cms.InputTag(
"gsfTrackTimeValueMapProducer:electronGsfTracksConfigurableFlatResolutionModel"),
183 timeErrorMapGsf = cms.InputTag(
"gsfTrackTimeValueMapProducer:electronGsfTracksConfigurableFlatResolutionModelResolution")
187 phase2_timing.toModify(
189 elementImporters = _addTiming
def _findIndicesByModule(name)