00001 import FWCore.ParameterSet.Config as cms
00002
00003
00004 hiMixedTripletClusters = cms.EDProducer("TrackClusterRemover",
00005 clusterLessSolution= cms.bool(True),
00006 oldClusterRemovalInfo = cms.InputTag("hiSecondPixelTripletClusters"),
00007 trajectories = cms.InputTag("hiSecondPixelTripletGlobalPrimTracks"),
00008 overrideTrkQuals = cms.InputTag('hiSecondPixelTripletStepSelector','hiSecondPixelTripletStep'),
00009 TrackQuality = cms.string('highPurity'),
00010 pixelClusters = cms.InputTag("siPixelClusters"),
00011 stripClusters = cms.InputTag("siStripClusters"),
00012 Common = cms.PSet(
00013 maxChi2 = cms.double(9.0),
00014 ),
00015 Strip = cms.PSet(
00016 maxChi2 = cms.double(9.0),
00017
00018 maxSize = cms.uint32(2)
00019 )
00020 )
00021
00022
00023
00024
00025
00026
00027 hiMixedTripletSeedLayersA = cms.ESProducer("SeedingLayersESProducer",
00028 ComponentName = cms.string('hiMixedTripletSeedLayersA'),
00029 layerList = cms.vstring('FPix1_pos+FPix2_pos+TEC1_pos', 'FPix1_neg+FPix2_neg+TEC1_neg'),
00030
00031 BPix = cms.PSet(
00032 useErrorsFromParam = cms.bool(True),
00033 hitErrorRZ = cms.double(0.006),
00034 hitErrorRPhi = cms.double(0.0027),
00035 TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4MixedTriplets'),
00036 HitProducer = cms.string('siPixelRecHits'),
00037 skipClusters = cms.InputTag('hiMixedTripletClusters')
00038 ),
00039 FPix = cms.PSet(
00040 useErrorsFromParam = cms.bool(True),
00041 hitErrorRPhi = cms.double(0.0051),
00042 hitErrorRZ = cms.double(0.0036),
00043 TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4MixedTriplets'),
00044 HitProducer = cms.string('siPixelRecHits'),
00045 skipClusters = cms.InputTag('hiMixedTripletClusters')
00046 ),
00047 TEC = cms.PSet(
00048 matchedRecHits = cms.InputTag("siStripMatchedRecHits","matchedRecHit"),
00049 useRingSlector = cms.bool(True),
00050 TTRHBuilder = cms.string('WithTrackAngle'),
00051 minRing = cms.int32(1),
00052 maxRing = cms.int32(1),
00053 skipClusters = cms.InputTag('hiMixedTripletClusters')
00054 )
00055 )
00056
00057
00058 from RecoPixelVertexing.PixelTriplets.PixelTripletLargeTipGenerator_cfi import *
00059 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
00060 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
00061 import RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff
00062 hiMixedTripletSeedsA = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
00063 hiMixedTripletSeedsA.OrderedHitsFactoryPSet.SeedingLayers = 'hiMixedTripletSeedLayersA'
00064 hiMixedTripletSeedsA.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
00065 hiMixedTripletSeedsA.SeedCreatorPSet.ComponentName = 'SeedFromConsecutiveHitsTripletOnlyCreator'
00066 hiMixedTripletSeedsA.RegionFactoryPSet.RegionPSet.ptMin = 4.0
00067 hiMixedTripletSeedsA.RegionFactoryPSet.RegionPSet.originRadius = 0.005
00068
00069 hiMixedTripletSeedsA.RegionFactoryPSet.RegionPSet.originHalfLength = 10.0
00070
00071 hiMixedTripletSeedsA.OrderedHitsFactoryPSet.GeneratorPSet.maxElement = 5000000
00072 hiMixedTripletSeedsA.ClusterCheckPSet.MaxNumberOfPixelClusters = 5000000
00073 hiMixedTripletSeedsA.ClusterCheckPSet.MaxNumberOfCosmicClusters = 50000000
00074
00075
00076
00077 hiMixedTripletSeedLayersB = cms.ESProducer("SeedingLayersESProducer",
00078 ComponentName = cms.string('hiMixedTripletSeedLayersB'),
00079 layerList = cms.vstring(
00080
00081
00082
00083
00084 'BPix2+BPix3+TIB1',
00085 'BPix2+BPix3+TIB2'),
00086 BPix = cms.PSet(
00087 useErrorsFromParam = cms.bool(True),
00088 hitErrorRPhi = cms.double(0.0027),
00089 hitErrorRZ = cms.double(0.006),
00090 TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4MixedTriplets'),
00091 HitProducer = cms.string('siPixelRecHits'),
00092 skipClusters = cms.InputTag('hiMixedTripletClusters')
00093 ),
00094 TIB = cms.PSet(
00095 matchedRecHits = cms.InputTag("siStripMatchedRecHits","matchedRecHit"),
00096 TTRHBuilder = cms.string('WithTrackAngle'),
00097 skipClusters = cms.InputTag('hiMixedTripletClusters')
00098 )
00099 )
00100
00101
00102 from RecoPixelVertexing.PixelTriplets.PixelTripletLargeTipGenerator_cfi import *
00103 PixelTripletLargeTipGenerator.extraHitRZtolerance = 0.0
00104 PixelTripletLargeTipGenerator.extraHitRPhitolerance = 0.0
00105 import RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff
00106 hiMixedTripletSeedsB = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone()
00107 hiMixedTripletSeedsB.OrderedHitsFactoryPSet.SeedingLayers = 'hiMixedTripletSeedLayersB'
00108 hiMixedTripletSeedsB.OrderedHitsFactoryPSet.GeneratorPSet = cms.PSet(PixelTripletLargeTipGenerator)
00109 hiMixedTripletSeedsB.SeedCreatorPSet.ComponentName = 'SeedFromConsecutiveHitsTripletOnlyCreator'
00110 hiMixedTripletSeedsB.RegionFactoryPSet.RegionPSet.ptMin = 4.0
00111 hiMixedTripletSeedsB.RegionFactoryPSet.RegionPSet.originRadius = 0.005
00112
00113 hiMixedTripletSeedsB.RegionFactoryPSet.RegionPSet.originHalfLength = 10.0
00114
00115 hiMixedTripletSeedsB.OrderedHitsFactoryPSet.GeneratorPSet.maxElement = 5000000
00116 hiMixedTripletSeedsB.ClusterCheckPSet.MaxNumberOfPixelClusters = 5000000
00117 hiMixedTripletSeedsB.ClusterCheckPSet.MaxNumberOfCosmicClusters = 50000000
00118
00119 import RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi
00120 hiMixedTripletSeeds = RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi.globalCombinedSeeds.clone()
00121 hiMixedTripletSeeds.seedCollections = cms.VInputTag(
00122 cms.InputTag('hiMixedTripletSeedsA'),
00123 cms.InputTag('hiMixedTripletSeedsB'),
00124 )
00125
00126
00127 import TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi
00128 hiMixedTripletTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
00129 ComponentName = 'hiMixedTripletTrajectoryFilter',
00130 filterPset = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.filterPset.clone(
00131 maxLostHits = 0,
00132 minimumNumberOfHits = 6,
00133 minPt = 1.0
00134 )
00135 )
00136
00137
00138 import TrackingTools.MaterialEffects.MaterialPropagator_cfi
00139 hiMixedTripletPropagator = TrackingTools.MaterialEffects.MaterialPropagator_cfi.MaterialPropagator.clone(
00140 ComponentName = 'hiMixedTripletPropagator',
00141 ptMin = 1.0
00142 )
00143 import TrackingTools.MaterialEffects.OppositeMaterialPropagator_cfi
00144 hiMixedTripletPropagatorOpposite = TrackingTools.MaterialEffects.OppositeMaterialPropagator_cfi.OppositeMaterialPropagator.clone(
00145 ComponentName = 'hiMixedTripletPropagatorOpposite',
00146 ptMin = 1.0
00147 )
00148
00149 import TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi
00150 hiMixedTripletChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone(
00151 ComponentName = cms.string('hiMixedTripletChi2Est'),
00152 nSigma = cms.double(3.0),
00153 MaxChi2 = cms.double(16.0)
00154 )
00155
00156
00157 import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi
00158 hiMixedTripletTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi.GroupedCkfTrajectoryBuilder.clone(
00159 ComponentName = 'hiMixedTripletTrajectoryBuilder',
00160 MeasurementTrackerName = '',
00161 trajectoryFilterName = 'hiMixedTripletTrajectoryFilter',
00162 propagatorAlong = cms.string('hiMixedTripletPropagator'),
00163 propagatorOpposite = cms.string('hiMixedTripletPropagatorOpposite'),
00164 clustersToSkip = cms.InputTag('hiMixedTripletClusters'),
00165 maxCand = 2,
00166 estimator = cms.string('hiMixedTripletChi2Est')
00167 )
00168
00169
00170 import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
00171 hiMixedTripletTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
00172 src = cms.InputTag('hiMixedTripletSeeds'),
00173 TrajectoryBuilder = 'hiMixedTripletTrajectoryBuilder',
00174 doSeedingRegionRebuilding = True,
00175 useHitsSplitting = True
00176 )
00177
00178 import RecoTracker.TrackProducer.TrackProducer_cfi
00179 hiMixedTripletGlobalPrimTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
00180 AlgorithmName = cms.string('iter4'),
00181 src = 'hiMixedTripletTrackCandidates'
00182 )
00183
00184
00185 import RecoHI.HiTracking.hiMultiTrackSelector_cfi
00186 hiMixedTripletStepSelector = RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiMultiTrackSelector.clone(
00187 src='hiMixedTripletGlobalPrimTracks',
00188 trackSelectors= cms.VPSet(
00189 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiLooseMTS.clone(
00190 name = 'hiMixedTripletStepLoose',
00191 ),
00192 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiTightMTS.clone(
00193 name = 'hiMixedTripletStepTight',
00194 preFilterName = 'hiMixedTripletStepLoose',
00195 ),
00196 RecoHI.HiTracking.hiMultiTrackSelector_cfi.hiHighpurityMTS.clone(
00197 name = 'hiMixedTripletStep',
00198 preFilterName = 'hiMixedTripletStepTight',
00199 min_nhits = 14
00200 ),
00201 )
00202 )
00203
00204
00205
00206
00207
00208 hiMixedTripletStep = cms.Sequence(
00209 hiMixedTripletClusters*
00210 hiMixedTripletSeedsA*
00211 hiMixedTripletSeedsB*
00212 hiMixedTripletSeeds*
00213 hiMixedTripletTrackCandidates*
00214 hiMixedTripletGlobalPrimTracks*
00215 hiMixedTripletStepSelector)
00216