CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Reconstruction_hiPF_cff.py
Go to the documentation of this file.
2 
3 # include particle flow local reconstruction
5 particleFlowClusterPS.thresh_Pt_Seed_Endcap = cms.double(99999.)
6 
8 pfTrack.UseQuality = cms.bool(True)
9 pfTrack.TrackQuality = cms.string('highPurity')
10 pfTrack.TkColList = cms.VInputTag("hiSelectedTracks")
11 pfTrack.PrimaryVertexLabel = cms.InputTag("hiSelectedVertex")
12 pfTrack.MuColl = cms.InputTag("muons")
13 
14 # run a trimmed down PF sequence with heavy-ion vertex, no conversions, nucl int, etc.
16 particleFlowBlock.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("SuperClusterImporter"),
22  source_eb = cms.InputTag("particleFlowSuperClusterECAL:particleFlowSuperClusterECALBarrel"),
23  source_ee = cms.InputTag("particleFlowSuperClusterECAL:particleFlowSuperClusterECALEndcapWithPreshower"),
24  source_towers = cms.InputTag("towerMaker"),
25  maximumHoverE = cms.double(0.5),
26  minSuperClusterPt = cms.double(10.0),
27  minPTforBypass = cms.double(100.0),
28  superClustersArePF = cms.bool(True) ),
29  # all secondary track importers
30  cms.PSet( importerName = cms.string("GeneralTracksImporter"),
31  source = cms.InputTag("pfTrack"),
32  muonSrc = cms.InputTag("muons"),
33  useIterativeTracking = cms.bool(False),
34  DPtOverPtCuts_byTrackAlgo = cms.vdouble(-1.0,-1.0,-1.0,
35  1.0,1.0),
36  NHitCuts_byTrackAlgo = cms.vuint32(3,3,3,3,3)
37  ),
38  # to properly set SC based links you need to run ECAL importer
39  # after you've imported all SCs to the block
40  cms.PSet( importerName = cms.string("ECALClusterImporter"),
41  source = cms.InputTag("particleFlowClusterECAL"),
42  BCtoPFCMap = cms.InputTag('particleFlowSuperClusterECAL:PFClusterAssociationEBEE') ),
43  cms.PSet( importerName = cms.string("GenericClusterImporter"),
44  source = cms.InputTag("particleFlowClusterHCAL") ),
45  cms.PSet( importerName = cms.string("GenericClusterImporter"),
46  source = cms.InputTag("particleFlowClusterHO") ),
47  cms.PSet( importerName = cms.string("GenericClusterImporter"),
48  source = cms.InputTag("particleFlowClusterHFEM") ),
49  cms.PSet( importerName = cms.string("GenericClusterImporter"),
50  source = cms.InputTag("particleFlowClusterHFHAD") ),
51  cms.PSet( importerName = cms.string("GenericClusterImporter"),
52  source = cms.InputTag("particleFlowClusterPS") )
53  )
54 
55 particleFlowTmp.postMuonCleaning = cms.bool(False)
56 particleFlowTmp.vertexCollection = cms.InputTag("hiSelectedVertex")
57 particleFlowTmp.usePFElectrons = cms.bool(True)
58 particleFlowTmp.muons = cms.InputTag("muons")
59 particleFlowTmp.usePFConversions = cms.bool(False)
60 
62 pfTrackElec.applyGsfTrackCleaning = cms.bool(True)
63 pfTrackElec.PrimaryVertexLabel = cms.InputTag("hiSelectedVertex")
64 
65 mvaElectrons.vertexTag = cms.InputTag("hiSelectedVertex")
66 
67 # local reco must run before electrons (RecoHI/HiEgammaAlgos), due to PF integration
68 HiParticleFlowLocalReco = cms.Sequence(particleFlowCluster
69  * pfTrack
70  * pfTrackElec
71  )
72 
73 #PF Reco runs after electrons
74 HiParticleFlowReco = cms.Sequence(pfGsfElectronMVASelectionSequence
75  * particleFlowBlock
76  * particleFlowTmp
77  )