File indexing completed on 2023-10-25 09:59:38
0001 from __future__ import absolute_import
0002 from RecoTracker.IterativeTracking.DetachedQuadStep_cff import *
0003 from .HIPixelTripletSeeds_cff import *
0004 from .HIPixel3PrimTracks_cfi import *
0005
0006 hiDetachedQuadStepClusters = cms.EDProducer("HITrackClusterRemover",
0007 clusterLessSolution = cms.bool(True),
0008 trajectories = cms.InputTag("hiHighPtTripletStepTracks"),
0009 overrideTrkQuals = cms.InputTag("hiHighPtTripletStepSelector","hiHighPtTripletStep"),
0010 TrackQuality = cms.string('highPurity'),
0011 minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0),
0012 pixelClusters = cms.InputTag("siPixelClusters"),
0013 stripClusters = cms.InputTag("siStripClusters"),
0014 Common = cms.PSet(
0015 maxChi2 = cms.double(9.0),
0016 ),
0017 Strip = cms.PSet(
0018
0019 maxSize = cms.uint32(2),
0020 maxChi2 = cms.double(9.0)
0021 )
0022 )
0023
0024
0025
0026 hiDetachedQuadStepSeedLayers = hiPixelLayerQuadruplets.clone(
0027 BPix = dict(skipClusters = cms.InputTag('hiDetachedQuadStepClusters')),
0028 FPix = dict(skipClusters = cms.InputTag('hiDetachedQuadStepClusters'))
0029 )
0030
0031 from RecoTracker.TkTrackingRegions.globalTrackingRegionWithVertices_cfi import globalTrackingRegionWithVertices as _globalTrackingRegionWithVertices
0032 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
0033 from RecoTracker.PixelSeeding.pixelTripletHLTEDProducer_cfi import pixelTripletHLTEDProducer as _pixelTripletHLTEDProducer
0034 from RecoTracker.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import *
0035 from RecoTracker.PixelLowPtUtilities.trackCleaner_cfi import *
0036 from RecoTracker.PixelTrackFitting.pixelFitterByHelixProjections_cfi import *
0037 from RecoHI.HiTracking.HIPixelTrackFilter_cff import *
0038 from RecoHI.HiTracking.HITrackingRegionProducer_cfi import *
0039
0040 hiDetachedQuadStepTrackingRegions = _globalTrackingRegionWithVertices.clone(RegionPSet = dict(
0041 precise = True,
0042 useMultipleScattering = False,
0043 useFakeVertices = False,
0044 beamSpot = "offlineBeamSpot",
0045 useFixedError = True,
0046 nSigmaZ = 4.0,
0047 sigmaZVertex = 4.0,
0048 fixedError = 0.5,
0049 VertexCollection = "hiSelectedPixelVertex",
0050 ptMin = 0.9,
0051 useFoundVertices = True,
0052
0053 originRadius = 1.5
0054 )
0055 )
0056 hiDetachedQuadStepTracksHitDoubletsCA = _hitPairEDProducer.clone(
0057 clusterCheck = "",
0058 seedingLayers = "hiDetachedQuadStepSeedLayers",
0059 trackingRegions = "hiDetachedQuadStepTrackingRegions",
0060 maxElement = 50000000,
0061 produceIntermediateHitDoublets = True,
0062 layerPairs = [0,1,2]
0063 )
0064
0065 from RecoTracker.PixelSeeding.caHitQuadrupletEDProducer_cfi import caHitQuadrupletEDProducer as _caHitQuadrupletEDProducer
0066 hiDetachedQuadStepTracksHitQuadrupletsCA = _caHitQuadrupletEDProducer.clone(
0067 doublets = "hiDetachedQuadStepTracksHitDoubletsCA",
0068 extraHitRPhitolerance = 0.0,
0069 maxChi2 = dict(
0070 pt1 = 0.8, pt2 = 2,
0071 value1 = 500, value2 = 100,
0072 ),
0073 useBendingCorrection = True,
0074 fitFastCircle = True,
0075 fitFastCircleChi2Cut = True,
0076 CAThetaCut = 0.0011,
0077 CAPhiCut = 0,
0078 )
0079
0080 hiDetachedQuadStepPixelTracksFilter = hiFilter.clone(
0081 nSigmaTipMaxTolerance = 0,
0082 lipMax = 1.0,
0083 tipMax = 1.0,
0084 ptMin = 0.95,
0085 )
0086
0087 import RecoTracker.PixelTrackFitting.pixelTracks_cfi as _mod
0088
0089 hiDetachedQuadStepPixelTracks = _mod.pixelTracks.clone(
0090 passLabel = 'Pixel detached tracks with vertex constraint',
0091
0092 SeedingHitSets = "hiDetachedQuadStepTracksHitQuadrupletsCA",
0093
0094 Fitter = "pixelFitterByHelixProjections",
0095
0096 Filter = "hiDetachedQuadStepPixelTracksFilter",
0097
0098 Cleaner = "trackCleaner"
0099 )
0100
0101
0102 import RecoTracker.PixelLowPtUtilities.TrackSeeds_cfi
0103 hiDetachedQuadStepSeeds = RecoTracker.PixelLowPtUtilities.TrackSeeds_cfi.pixelTrackSeeds.clone(
0104 InputCollection = 'hiDetachedQuadStepPixelTracks'
0105 )
0106
0107
0108 import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff
0109 hiDetachedQuadStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
0110
0111 minimumNumberOfHits = 3,
0112 minPt = 0.075,
0113
0114 )
0115
0116 import TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi
0117 hiDetachedQuadStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi.Chi2MeasurementEstimator.clone(
0118 ComponentName = 'hiDetachedQuadStepChi2Est',
0119 nSigma = 3.0,
0120 MaxChi2 = 9.0
0121 )
0122
0123
0124 import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi
0125 hiDetachedQuadStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
0126 trajectoryFilter = dict(refToPSet_ = 'hiDetachedQuadStepTrajectoryFilter'),
0127 maxCand = 4,
0128 estimator = 'hiDetachedQuadStepChi2Est',
0129 maxDPhiForLooperReconstruction = 2.0,
0130
0131
0132 maxPtForLooperReconstruction = 0.7,
0133 alwaysUseInvalidHits = False
0134 )
0135
0136
0137
0138
0139
0140 import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
0141 hiDetachedQuadStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
0142 src = 'hiDetachedQuadStepSeeds',
0143
0144 numHitsForSeedCleaner = 50,
0145 onlyPixelHitsForSeedCleaner = True,
0146 TrajectoryBuilderPSet = dict(refToPSet_ = 'hiDetachedQuadStepTrajectoryBuilder'),
0147 clustersToSkip = 'hiDetachedQuadStepClusters',
0148 doSeedingRegionRebuilding = True,
0149 useHitsSplitting = True
0150 )
0151
0152
0153
0154 import RecoTracker.TrackProducer.TrackProducer_cfi
0155 hiDetachedQuadStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
0156 src = 'hiDetachedQuadStepTrackCandidates',
0157 AlgorithmName = 'detachedQuadStep',
0158 Fitter='FlexibleKFFittingSmoother'
0159 )
0160
0161
0162 import RecoHI.HiTracking.hiMultiTrackSelector_cfi
0163 hiDetachedQuadStepSelector = RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiMultiTrackSelector.clone(
0164 src = 'hiDetachedQuadStepTracks',
0165 useAnyMVA = True,
0166 GBRForestLabel = 'HIMVASelectorIter10',
0167 GBRForestVars = ['chi2perdofperlayer', 'nhits', 'nlayers', 'eta'],
0168 trackSelectors= cms.VPSet(
0169 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
0170 name = 'hiDetachedQuadStepLoose',
0171 applyAdaptedPVCuts = False,
0172 useMVA = False,
0173 ),
0174 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
0175 name = 'hiDetachedQuadStepTight',
0176 preFilterName = 'hiDetachedQuadStepLoose',
0177 applyAdaptedPVCuts = True,
0178 useMVA = True,
0179 minMVA = -0.2
0180 ),
0181 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
0182 name = 'hiDetachedQuadStep',
0183 preFilterName = 'hiDetachedQuadStepTight',
0184 applyAdaptedPVCuts = True,
0185 useMVA = True,
0186 minMVA = -0.09
0187 ),
0188 )
0189 )
0190 from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
0191 trackingPhase1.toModify(hiDetachedQuadStepSelector,
0192 useAnyMVA = False,
0193 trackSelectors= cms.VPSet(
0194 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
0195 name = 'hiDetachedQuadStepLoose',
0196 applyAdaptedPVCuts = False,
0197 useMVA = False,
0198 ),
0199 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
0200 name = 'hiDetachedQuadStepTight',
0201 preFilterName = 'hiDetachedQuadStepLoose',
0202 applyAdaptedPVCuts = False,
0203 useMVA = False,
0204 minMVA = -0.2
0205 ),
0206 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
0207 name = 'hiDetachedQuadStep',
0208 preFilterName = 'hiDetachedQuadStepTight',
0209 applyAdaptedPVCuts = False,
0210 useMVA = False,
0211 minMVA = -0.09
0212 ),
0213 )
0214 )
0215
0216 import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
0217 hiDetachedQuadStepQual = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
0218 TrackProducers = ['hiDetachedQuadStepTracks'],
0219 hasSelector = [1],
0220 selectedTrackQuals = ["hiDetachedQuadStepSelector:hiDetachedQuadStep"],
0221 copyExtras = True,
0222 makeReKeyedSeeds = cms.untracked.bool(False),
0223 )
0224
0225
0226 hiDetachedQuadStepTask = cms.Task(hiDetachedQuadStepClusters,
0227 hiDetachedQuadStepSeedLayers,
0228 hiDetachedQuadStepTrackingRegions,
0229 hiDetachedQuadStepTracksHitDoubletsCA,
0230 hiDetachedQuadStepTracksHitQuadrupletsCA,
0231 pixelFitterByHelixProjections,
0232 hiDetachedQuadStepPixelTracksFilter,
0233 hiDetachedQuadStepPixelTracks,
0234 hiDetachedQuadStepSeeds,
0235 hiDetachedQuadStepTrackCandidates,
0236 hiDetachedQuadStepTracks,
0237 hiDetachedQuadStepSelector,
0238 hiDetachedQuadStepQual)
0239 hiDetachedQuadStep = cms.Sequence(hiDetachedQuadStepTask)
0240