File indexing completed on 2022-01-11 23:32:41
0001 from __future__ import absolute_import
0002 from RecoTracker.IterativeTracking.HighPtTripletStep_cff import *
0003 from .HIPixelTripletSeeds_cff import *
0004 from .HIPixel3PrimTracks_cfi import *
0005
0006 hiHighPtTripletStepClusters = cms.EDProducer("HITrackClusterRemover",
0007 clusterLessSolution = cms.bool(True),
0008 trajectories = cms.InputTag("hiLowPtQuadStepTracks"),
0009 overrideTrkQuals = cms.InputTag("hiLowPtQuadStepSelector","hiLowPtQuadStep"),
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 hiHighPtTripletStepSeedLayers = highPtTripletStepSeedLayers.clone(
0027 BPix = dict(skipClusters = 'hiHighPtTripletStepClusters'),
0028 FPix = dict(skipClusters = 'hiHighPtTripletStepClusters')
0029 )
0030
0031
0032 from RecoTracker.TkTrackingRegions.globalTrackingRegionWithVertices_cfi import globalTrackingRegionWithVertices as _globalTrackingRegionWithVertices
0033 from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
0034 from RecoPixelVertexing.PixelTriplets.pixelTripletHLTEDProducer_cfi import pixelTripletHLTEDProducer as _pixelTripletHLTEDProducer
0035 from RecoPixelVertexing.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import *
0036 from RecoPixelVertexing.PixelLowPtUtilities.trackCleaner_cfi import *
0037 from RecoPixelVertexing.PixelTrackFitting.pixelFitterByHelixProjections_cfi import *
0038 from RecoHI.HiTracking.HIPixelTrackFilter_cff import *
0039 from RecoHI.HiTracking.HITrackingRegionProducer_cfi import *
0040
0041 hiHighPtTripletStepTrackingRegions = _globalTrackingRegionWithVertices.clone(RegionPSet=dict(
0042 precise = True,
0043 useMultipleScattering = False,
0044 useFakeVertices = False,
0045 beamSpot = "offlineBeamSpot",
0046 useFixedError = True,
0047 nSigmaZ = 4.0,
0048 sigmaZVertex = 4.0,
0049 fixedError = 0.5,
0050 VertexCollection = "hiSelectedPixelVertex",
0051 ptMin = 0.8,
0052 useFoundVertices = True,
0053 originRadius = 0.02
0054 ))
0055 hiHighPtTripletStepTracksHitDoubletsCA = _hitPairEDProducer.clone(
0056 clusterCheck = "",
0057 seedingLayers = "hiHighPtTripletStepSeedLayers",
0058 trackingRegions = "hiHighPtTripletStepTrackingRegions",
0059 maxElement = 50000000,
0060 produceIntermediateHitDoublets = True,
0061 layerPairs = [0,1]
0062 )
0063
0064 from RecoPixelVertexing.PixelTriplets.caHitTripletEDProducer_cfi import caHitTripletEDProducer as _caHitTripletEDProducer
0065 hiHighPtTripletStepTracksHitTripletsCA = _caHitTripletEDProducer.clone(
0066 doublets = "hiHighPtTripletStepTracksHitDoubletsCA",
0067 extraHitRPhitolerance = 0.0,
0068 SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone(),
0069 maxChi2 = dict(
0070 pt1 = 0.8, pt2 = 8,
0071 value1 = 100, value2 = 6,
0072 ),
0073 useBendingCorrection = True,
0074 CAThetaCut = 0.004,
0075 CAPhiCut = 0.07,
0076 CAHardPtCut = 0.3,
0077 )
0078
0079 hiHighPtTripletStepPixelTracksFilter = hiFilter.clone(
0080 nSigmaTipMaxTolerance = 0,
0081 lipMax = 1.0,
0082 tipMax = 1.0,
0083 ptMin = 1.0,
0084 )
0085
0086 import RecoPixelVertexing.PixelTrackFitting.pixelTracks_cfi as _mod
0087
0088 hiHighPtTripletStepPixelTracks = _mod.pixelTracks.clone(
0089 passLabel = 'Pixel detached tracks with vertex constraint',
0090
0091 SeedingHitSets = "hiHighPtTripletStepTracksHitTripletsCA",
0092
0093 Fitter = "pixelFitterByHelixProjections",
0094
0095 Filter = "hiHighPtTripletStepPixelTracksFilter",
0096
0097 Cleaner = "trackCleaner"
0098 )
0099
0100 import RecoPixelVertexing.PixelLowPtUtilities.TrackSeeds_cfi
0101 hiHighPtTripletStepSeeds = RecoPixelVertexing.PixelLowPtUtilities.TrackSeeds_cfi.pixelTrackSeeds.clone(
0102 InputCollection = 'hiHighPtTripletStepPixelTracks'
0103 )
0104
0105
0106 import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff
0107 hiHighPtTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
0108
0109 minimumNumberOfHits = 3,
0110 minPt = 0.2,
0111
0112 )
0113
0114 import TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi
0115 hiHighPtTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi.Chi2MeasurementEstimator.clone(
0116 ComponentName = 'hiHighPtTripletStepChi2Est',
0117 nSigma = 3.0,
0118 MaxChi2 = 9.0
0119 )
0120
0121
0122
0123 import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi
0124 hiHighPtTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
0125 trajectoryFilter = dict(refToPSet_ = 'hiHighPtTripletStepTrajectoryFilter'),
0126 maxCand = 3,
0127 estimator = 'hiHighPtTripletStepChi2Est',
0128 maxDPhiForLooperReconstruction = 2.0,
0129
0130
0131 maxPtForLooperReconstruction = 0.7,
0132 alwaysUseInvalidHits = False
0133 )
0134
0135
0136
0137
0138
0139 import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
0140 hiHighPtTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
0141 src = 'hiHighPtTripletStepSeeds',
0142
0143 numHitsForSeedCleaner = 50,
0144 onlyPixelHitsForSeedCleaner = True,
0145 TrajectoryBuilderPSet = dict(refToPSet_ = 'hiHighPtTripletStepTrajectoryBuilder'),
0146 clustersToSkip = 'hiHighPtTripletStepClusters',
0147 doSeedingRegionRebuilding = True,
0148 useHitsSplitting = True
0149 )
0150
0151
0152
0153 import RecoTracker.TrackProducer.TrackProducer_cfi
0154 hiHighPtTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
0155 src = 'hiHighPtTripletStepTrackCandidates',
0156 AlgorithmName = 'highPtTripletStep',
0157 Fitter = 'FlexibleKFFittingSmoother'
0158 )
0159
0160
0161 import RecoHI.HiTracking.hiMultiTrackSelector_cfi
0162 hiHighPtTripletStepSelector = RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiMultiTrackSelector.clone(
0163 src = 'hiHighPtTripletStepTracks',
0164 useAnyMVA = True,
0165 GBRForestLabel = 'HIMVASelectorIter9',
0166 GBRForestVars = ['chi2perdofperlayer', 'nhits', 'nlayers', 'eta'],
0167 trackSelectors = cms.VPSet(
0168 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
0169 name = 'hiHighPtTripletStepLoose',
0170 applyAdaptedPVCuts = False,
0171 useMVA = False,
0172 ),
0173 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
0174 name = 'hiHighPtTripletStepTight',
0175 preFilterName = 'hiHighPtTripletStepLoose',
0176 applyAdaptedPVCuts = False,
0177 useMVA = True,
0178 minMVA = -0.2
0179 ),
0180 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
0181 name = 'hiHighPtTripletStep',
0182 preFilterName = 'hiHighPtTripletStepTight',
0183 applyAdaptedPVCuts = False,
0184 useMVA = True,
0185 minMVA = -0.09
0186 ),
0187 )
0188 )
0189 from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
0190 trackingPhase1.toModify(hiHighPtTripletStepSelector, useAnyMVA = False)
0191 trackingPhase1.toModify(hiHighPtTripletStepSelector, trackSelectors= cms.VPSet(
0192 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
0193 name = 'hiHighPtTripletStepLoose',
0194 applyAdaptedPVCuts = False,
0195 useMVA = False,
0196 ),
0197 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
0198 name = 'hiHighPtTripletStepTight',
0199 preFilterName = 'hiHighPtTripletStepLoose',
0200 applyAdaptedPVCuts = False,
0201 useMVA = False,
0202 minMVA = -0.2
0203 ),
0204 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
0205 name = 'hiHighPtTripletStep',
0206 preFilterName = 'hiHighPtTripletStepTight',
0207 applyAdaptedPVCuts = False,
0208 useMVA = False,
0209 minMVA = -0.09
0210 ),
0211 )
0212 )
0213
0214 import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
0215 hiHighPtTripletStepQual = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
0216 TrackProducers = ['hiHighPtTripletStepTracks'],
0217 hasSelector = [1],
0218 selectedTrackQuals = ["hiHighPtTripletStepSelector:hiHighPtTripletStep"],
0219 copyExtras = True,
0220 makeReKeyedSeeds = cms.untracked.bool(False),
0221 )
0222
0223
0224 hiHighPtTripletStepTask = cms.Task(hiHighPtTripletStepClusters,
0225 hiHighPtTripletStepSeedLayers,
0226 hiHighPtTripletStepTrackingRegions,
0227 hiHighPtTripletStepTracksHitDoubletsCA,
0228 hiHighPtTripletStepTracksHitTripletsCA,
0229 pixelFitterByHelixProjections,
0230 hiHighPtTripletStepPixelTracksFilter,
0231 hiHighPtTripletStepPixelTracks,
0232 hiHighPtTripletStepSeeds,
0233 hiHighPtTripletStepTrackCandidates,
0234 hiHighPtTripletStepTracks,
0235 hiHighPtTripletStepSelector,
0236 hiHighPtTripletStepQual)
0237 hiHighPtTripletStep = cms.Sequence(hiHighPtTripletStepTask)
0238