CMS 3D CMS Logo

OfflinePrimaryVertices_cfi.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 from RecoVertex.PrimaryVertexProducer.TkClusParameters_cff import DA_vectParameters
4 
5 offlinePrimaryVertices = cms.EDProducer(
6  "PrimaryVertexProducer",
7 
8  verbose = cms.untracked.bool(False),
9  TrackLabel = cms.InputTag("generalTracks"),
10  beamSpotLabel = cms.InputTag("offlineBeamSpot"),
11 
12  TkFilterParameters = cms.PSet(
13  algorithm=cms.string('filter'),
14  maxNormalizedChi2 = cms.double(10.0),
15  minPixelLayersWithHits=cms.int32(2),
16  minSiliconLayersWithHits = cms.int32(5),
17  maxD0Significance = cms.double(4.0),
18  minPt = cms.double(0.0),
19  maxEta = cms.double(2.4),
20  trackQuality = cms.string("any")
21  ),
22 
23  TkClusParameters = DA_vectParameters,
24 
25  vertexCollections = cms.VPSet(
26  [cms.PSet(label=cms.string(""),
27  algorithm=cms.string("AdaptiveVertexFitter"),
28  chi2cutoff = cms.double(2.5),
29  minNdof=cms.double(0.0),
30  useBeamConstraint = cms.bool(False),
31  maxDistanceToBeam = cms.double(1.0)
32  ),
33  cms.PSet(label=cms.string("WithBS"),
34  algorithm = cms.string('AdaptiveVertexFitter'),
35  chi2cutoff = cms.double(2.5),
36  minNdof=cms.double(2.0),
37  useBeamConstraint = cms.bool(True),
38  maxDistanceToBeam = cms.double(1.0)
39  )
40  ]
41  )
42 
43 
44 
45 )
46 
47 # This customization is needed in the trackingLowPU era to be able to
48 # produce vertices also in the cases in which the pixel detector is
49 # not included in data-taking, like it was the case for "Quiet Beam"
50 # collisions on 2016 with run 269207.
51 
52 from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU
53 trackingLowPU.toModify(offlinePrimaryVertices,
54  TkFilterParameters = dict(minPixelLayersWithHits = 0))
55 
56 
57 # higher eta cut for the phase 2 tracker
58 from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
59 phase2_tracker.toModify(offlinePrimaryVertices,
60  TkFilterParameters = dict(maxEta = 4.0))
61 
62 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017
63 from Configuration.Eras.Modifier_pp_on_AA_2018_cff import pp_on_AA_2018
64 (pp_on_XeXe_2017 | pp_on_AA_2018).toModify(offlinePrimaryVertices,
65  TkFilterParameters = dict(
66  maxD0Significance = 2.0,
67  minPixelLayersWithHits=3,
68  minPt = 0.7,
69  trackQuality = "highPurity"
70  ),
71  TkClusParameters = cms.PSet(
72  algorithm = cms.string("gap"),
73  TkGapClusParameters = cms.PSet(
74  zSeparation = cms.double(1.0)
75  )
76  )
77  )
78 
79 from Configuration.Eras.Modifier_highBetaStar_2018_cff import highBetaStar_2018
80 highBetaStar_2018.toModify(offlinePrimaryVertices,
81  TkFilterParameters = dict(
82  maxNormalizedChi2 = 80.0,
83  minPixelLayersWithHits = 1,
84  minSiliconLayersWithHits = 3,
85  maxD0Significance = 7.0,
86  maxEta = 2.5
87  ),
88  vertexCollections = {
89  0: dict(chi2cutoff = 4.0, minNdof = -1.1),
90  1: dict(chi2cutoff = 4.0, minNdof = -2.0),
91  }
92 )
93