File indexing completed on 2024-04-06 12:29:16
0001 import FWCore.ParameterSet.Config as cms
0002
0003 offlinePrimaryVertices = cms.EDProducer(
0004 "PrimaryVertexProducer",
0005
0006 verbose = cms.untracked.bool(False),
0007 TrackLabel = cms.InputTag("generalTracks"),
0008 beamSpotLabel = cms.InputTag("offlineBeamSpot"),
0009
0010 TkFilterParameters = cms.PSet(
0011 algorithm=cms.string('filter'),
0012 maxNormalizedChi2 = cms.double(10.0),
0013 minPixelLayersWithHits=cms.int32(2),
0014 minSiliconLayersWithHits = cms.int32(5),
0015 maxD0Significance = cms.double(4.0),
0016 maxD0Error = cms.double(1.0),
0017 maxDzError = cms.double(1.0),
0018 minPt = cms.double(0.0),
0019 maxEta = cms.double(2.4),
0020 trackQuality = cms.string("any")
0021 ),
0022
0023 TkClusParameters = cms.PSet(
0024 algorithm = cms.string("DA_vect"),
0025 TkDAClusParameters = cms.PSet(
0026 coolingFactor = cms.double(0.6),
0027 zrange = cms.double(4.),
0028 delta_highT = cms.double(1.e-2),
0029 delta_lowT = cms.double(1.e-3),
0030 convergence_mode = cms.int32(0),
0031 Tmin = cms.double(2.0),
0032 Tpurge = cms.double(2.0),
0033 Tstop = cms.double(0.5),
0034 vertexSize = cms.double(0.006),
0035 d0CutOff = cms.double(3.),
0036 dzCutOff = cms.double(3.),
0037 zmerge = cms.double(1e-2),
0038 uniquetrkweight = cms.double(0.8),
0039 uniquetrkminp = cms.double(0.0),
0040 runInBlocks = cms.bool(False),
0041 block_size = cms.uint32(10000),
0042 overlap_frac = cms.double(0.0)
0043 )
0044 ),
0045
0046 vertexCollections = cms.VPSet(
0047 [cms.PSet(label=cms.string(""),
0048 algorithm=cms.string("AdaptiveVertexFitter"),
0049 chi2cutoff = cms.double(2.5),
0050 minNdof=cms.double(0.0),
0051 useBeamConstraint = cms.bool(False),
0052 maxDistanceToBeam = cms.double(1.0)
0053 ),
0054 cms.PSet(label=cms.string("WithBS"),
0055 algorithm = cms.string('AdaptiveVertexFitter'),
0056 chi2cutoff = cms.double(2.5),
0057 minNdof=cms.double(2.0),
0058 useBeamConstraint = cms.bool(True),
0059 maxDistanceToBeam = cms.double(1.0),
0060 )
0061 ]
0062 ),
0063
0064 isRecoveryIteration = cms.bool(False),
0065 recoveryVtxCollection = cms.InputTag("")
0066
0067
0068 )
0069
0070 from Configuration.ProcessModifiers.vertexInBlocks_cff import vertexInBlocks
0071 vertexInBlocks.toModify(offlinePrimaryVertices,
0072 TkClusParameters = dict(
0073 TkDAClusParameters = dict(
0074 runInBlocks = True,
0075 block_size = 128,
0076 overlap_frac = 0.5
0077 )
0078 )
0079 )
0080
0081 from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
0082 (phase2_tracker & vertexInBlocks).toModify(offlinePrimaryVertices,
0083 TkClusParameters = dict(
0084 TkDAClusParameters = dict(
0085 block_size = 512,
0086 overlap_frac = 0.5)
0087 )
0088 )
0089
0090 from Configuration.Eras.Modifier_highBetaStar_2018_cff import highBetaStar_2018
0091 highBetaStar_2018.toModify(offlinePrimaryVertices,
0092 TkClusParameters = dict(
0093 TkDAClusParameters = dict(
0094 Tmin = 4.0,
0095 Tpurge = 1.0,
0096 Tstop = 1.0,
0097 vertexSize = 0.01,
0098 d0CutOff = 4.,
0099 dzCutOff = 5.,
0100 zmerge = 2.e-2,
0101 uniquetrkweight = 0.9
0102 )
0103 )
0104 )
0105
0106 DA_vectParameters = cms.PSet(offlinePrimaryVertices.TkClusParameters.clone())
0107
0108 from Configuration.ProcessModifiers.weightedVertexing_cff import weightedVertexing
0109 weightedVertexing.toModify(offlinePrimaryVertices,
0110 vertexCollections = cms.VPSet(
0111 [cms.PSet(label=cms.string(""),
0112 algorithm=cms.string("WeightedMeanFitter"),
0113 chi2cutoff = cms.double(2.5),
0114 minNdof=cms.double(0.0),
0115 useBeamConstraint = cms.bool(False),
0116 maxDistanceToBeam = cms.double(1.0)
0117 ),
0118 cms.PSet(label=cms.string("WithBS"),
0119 algorithm = cms.string('WeightedMeanFitter'),
0120 minNdof=cms.double(0.0),
0121 chi2cutoff = cms.double(2.5),
0122 useBeamConstraint = cms.bool(True),
0123 maxDistanceToBeam = cms.double(1.0)
0124 )
0125 ]
0126 ))
0127
0128
0129
0130
0131
0132 from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU
0133 trackingLowPU.toModify(offlinePrimaryVertices,
0134 TkFilterParameters = dict(minPixelLayersWithHits = 0))
0135
0136
0137
0138 from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
0139 phase2_tracker.toModify(offlinePrimaryVertices,
0140 TkFilterParameters = dict(maxEta = 4.0))
0141
0142 from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017
0143 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
0144 (pp_on_XeXe_2017 | pp_on_AA).toModify(offlinePrimaryVertices,
0145 TkFilterParameters = dict(
0146 algorithm="filterWithThreshold",
0147 maxD0Significance = 2.0,
0148 maxD0Error = 10.0,
0149 maxDzError = 10.0,
0150 minPixelLayersWithHits=3,
0151 minPt = 0.7,
0152 trackQuality = "highPurity",
0153 numTracksThreshold = cms.int32(10),
0154 maxNumTracksThreshold = cms.int32(1000),
0155 minPtTight = cms.double(1.0)
0156 ),
0157 TkClusParameters = cms.PSet(
0158 algorithm = cms.string("gap"),
0159 TkGapClusParameters = cms.PSet(
0160 zSeparation = cms.double(1.0)
0161 )
0162 )
0163 )
0164
0165 from Configuration.Eras.Modifier_highBetaStar_2018_cff import highBetaStar_2018
0166 highBetaStar_2018.toModify(offlinePrimaryVertices,
0167 TkFilterParameters = dict(
0168 maxNormalizedChi2 = 80.0,
0169 minPixelLayersWithHits = 1,
0170 minSiliconLayersWithHits = 3,
0171 maxD0Significance = 7.0,
0172 maxD0Error = 10.0,
0173 maxDzError = 10.0,
0174 maxEta = 2.5
0175 ),
0176 vertexCollections = {
0177 0: dict(chi2cutoff = 4.0, minNdof = -1.1),
0178 1: dict(chi2cutoff = 4.0, minNdof = -2.0),
0179 }
0180 )
0181