00001 import FWCore.ParameterSet.Config as cms
00002
00003
00004
00005
00006
00007
00008
00009 trkfilter2 = cms.EDProducer("QualityFilter",
00010 TrackQuality = cms.string('highPurity'),
00011
00012 recTracks = cms.InputTag("tobtecStep")
00013
00014
00015 )
00016
00017 largeD0step2Clusters = cms.EDProducer("TrackClusterRemover",
00018 trajectories = cms.InputTag("trkfilter2"),
00019
00020
00021 oldClusterRemovalInfo = cms.InputTag("fifthClusters"),
00022 pixelClusters = cms.InputTag("fifthClusters"),
00023 stripClusters = cms.InputTag("fifthClusters"),
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035 Common = cms.PSet(
00036 maxChi2 = cms.double(30.0)
00037
00038
00039 )
00040 )
00041
00042
00043
00044
00045 import TrackingTools.MaterialEffects.MaterialPropagator_cfi
00046 MaterialPropagatorPtMin06 = TrackingTools.MaterialEffects.MaterialPropagator_cfi.MaterialPropagator.clone(
00047 ComponentName = 'PropagatorWithMaterialPtMin06',
00048 ptMin = 0.6
00049 )
00050
00051 import TrackingTools.MaterialEffects.OppositeMaterialPropagator_cfi
00052 OppositeMaterialPropagatorPtMin06 = TrackingTools.MaterialEffects.OppositeMaterialPropagator_cfi.OppositeMaterialPropagator.clone(
00053 ComponentName = 'PropagatorWithMaterialOppositePtMin06',
00054 ptMin = 0.6
00055 )
00056
00057
00058 import RecoLocalTracker.SiPixelRecHits.SiPixelRecHits_cfi
00059 import RecoLocalTracker.SiStripRecHitConverter.SiStripRecHitConverter_cfi
00060 largeD0step2PixelRecHits = RecoLocalTracker.SiPixelRecHits.SiPixelRecHits_cfi.SiPixelRecHits.clone(
00061 src = 'largeD0step2Clusters',
00062 )
00063 largeD0step2StripRecHits = RecoLocalTracker.SiStripRecHitConverter.SiStripRecHitConverter_cfi.siStripMatchedRecHits.clone(
00064 ClusterProducer = 'largeD0step2Clusters',
00065 )
00066
00067
00068 import RecoTracker.TkSeedingLayers.PixelLayerPairs_cfi
00069 largeD0step2layerpairs = RecoTracker.TkSeedingLayers.PixelLayerPairs_cfi.pixellayerpairs.clone(
00070 ComponentName = 'largeD0step2LayerPairs'
00071 )
00072 largeD0step2layerpairs.BPix.HitProducer = 'largeD0step2PixelRecHits'
00073 largeD0step2layerpairs.FPix.HitProducer = 'largeD0step2PixelRecHits'
00074
00075
00076 import RecoTracker.TkSeedGenerator.GlobalPixelSeeds_cff
00077 largeD0step2Seeds = RecoTracker.TkSeedGenerator.GlobalPixelSeeds_cff.globalPixelSeeds.clone()
00078 largeD0step2Seeds.OrderedHitsFactoryPSet.SeedingLayers = 'largeD0step2LayerPairs'
00079 largeD0step2Seeds.RegionFactoryPSet.RegionPSet.ptMin = 0.6
00080 largeD0step2Seeds.RegionFactoryPSet.RegionPSet.originRadius = 2.5
00081 largeD0step2Seeds.RegionFactoryPSet.RegionPSet.originHalfLength = 15
00082 import RecoTracker.TkSeedGenerator.SeedFromConsecutiveHitsStraightLineCreator_cfi
00083 largeD0step2Seeds.SeedCreatorPSet = RecoTracker.TkSeedGenerator.SeedFromConsecutiveHitsStraightLineCreator_cfi.SeedFromConsecutiveHitsStraightLineCreator.clone(
00084 propagator = cms.string('PropagatorWithMaterialPtMin06')
00085 )
00086
00087
00088
00089 import RecoTracker.MeasurementDet.MeasurementTrackerESProducer_cfi
00090 largeD0step2MeasurementTracker = RecoTracker.MeasurementDet.MeasurementTrackerESProducer_cfi.MeasurementTracker.clone(
00091 ComponentName = 'largeD0step2MeasurementTracker',
00092 pixelClusterProducer = 'largeD0step2Clusters',
00093 stripClusterProducer = 'largeD0step2Clusters'
00094 )
00095
00096
00097 import TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi
00098
00099 largeD0step2CkfTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
00100 ComponentName = 'largeD0step2CkfTrajectoryFilter'
00101 )
00102
00103
00104 largeD0step2CkfTrajectoryFilter.filterPset.minimumNumberOfHits = 6
00105 largeD0step2CkfTrajectoryFilter.filterPset.minPt = 0.6
00106 largeD0step2CkfTrajectoryFilter.filterPset.minHitsMinPt = 3
00107
00108
00109 import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi
00110 largeD0step2CkfTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi.GroupedCkfTrajectoryBuilder.clone(
00111 ComponentName = 'largeD0step2CkfTrajectoryBuilder',
00112 MeasurementTrackerName = 'largeD0step2MeasurementTracker',
00113 trajectoryFilterName = 'largeD0step2CkfTrajectoryFilter',
00114 useSameTrajFilter = True,
00115 minNrOfHitsForRebuild = 6,
00116 maxCand = 5,
00117
00118
00119 propagatorAlong = cms.string('PropagatorWithMaterialPtMin06'),
00120 propagatorOpposite = cms.string('PropagatorWithMaterialOppositePtMin06')
00121 )
00122
00123
00124 import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
00125 largeD0step2TrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
00126 src = 'largeD0step2Seeds',
00127 TrajectoryBuilder = 'largeD0step2CkfTrajectoryBuilder',
00128 doSeedingRegionRebuilding = True,
00129 useHitsSplitting = True,
00130 cleanTrajectoryAfterInOut = True
00131 )
00132
00133
00134
00135
00136
00137 import TrackingTools.TrackFitters.RungeKuttaFitters_cff
00138 largeD0step2FittingSmootherWithOutlierRejection = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKFittingSmoother.clone(
00139 ComponentName = 'largeD0step2FittingSmootherWithOutlierRejection',
00140 EstimateCut = 20,
00141 MinNumberOfHits = 6,
00142 Fitter = cms.string('largeD0step2RKFitter'),
00143 Smoother = cms.string('largeD0step2RKSmoother'),
00144 )
00145
00146 largeD0step2RKTrajectoryFitter = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKTrajectoryFitter.clone(
00147 ComponentName = cms.string('largeD0step2RKFitter'),
00148 minHits = 6,
00149 )
00150 largeD0step2RKTrajectorySmoother = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKTrajectorySmoother.clone(
00151 ComponentName = cms.string('largeD0step2RKSmoother'),
00152 minHits = 6,
00153 )
00154
00155 import RecoTracker.TrackProducer.TrackProducer_cfi
00156 largeD0step2WithMaterialTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
00157 src = 'largeD0step2TrackCandidates',
00158 clusterRemovalInfo = 'largeD0step2Clusters',
00159 AlgorithmName = cms.string('iter2LargeD0'),
00160 Fitter = 'largeD0step2FittingSmootherWithOutlierRejection',
00161 )
00162
00163
00164 import RecoTracker.FinalTrackSelectors.selectLoose_cfi
00165 import RecoTracker.FinalTrackSelectors.selectTight_cfi
00166 import RecoTracker.FinalTrackSelectors.selectHighPurity_cfi
00167
00168 largeD0step2Loose = RecoTracker.FinalTrackSelectors.selectLoose_cfi.selectLoose.clone(
00169 src = 'largeD0step2WithMaterialTracks',
00170 keepAllTracks = False,
00171 copyExtras = False,
00172 copyTrajectories = True,
00173 applyAdaptedPVCuts = False,
00174 chi2n_par = 99.,
00175 minNumberLayers = 5,
00176 minNumber3DLayers = 0,
00177 )
00178 largeD0step2Tight = RecoTracker.FinalTrackSelectors.selectTight_cfi.selectTight.clone(
00179 src = 'largeD0step2Loose',
00180 keepAllTracks = True,
00181 copyExtras = False,
00182 copyTrajectories = True,
00183 applyAdaptedPVCuts = False,
00184 chi2n_par = 99.,
00185 minNumberLayers = 10,
00186 minNumber3DLayers = 3,
00187 )
00188
00189 largeD0step2Trk = RecoTracker.FinalTrackSelectors.selectHighPurity_cfi.selectHighPurity.clone(
00190 src = 'largeD0step2Tight',
00191 keepAllTracks = True,
00192 copyExtras = False,
00193 copyTrajectories = True,
00194 applyAdaptedPVCuts = False,
00195 chi2n_par = 99.,
00196 minNumberLayers = 10,
00197 minNumber3DLayers = 3,
00198 )
00199
00200 largeD0step2 = cms.Sequence(trkfilter2*
00201 largeD0step2Clusters*
00202 largeD0step2PixelRecHits*largeD0step2StripRecHits*
00203 largeD0step2Seeds*
00204 largeD0step2TrackCandidates*
00205 largeD0step2WithMaterialTracks*
00206 largeD0step2Loose*
00207 largeD0step2Tight*
00208 largeD0step2Trk)
00209
00210
00211
00212
00213
00214
00215