00001 import FWCore.ParameterSet.Config as cms
00002
00003
00004
00005
00006
00007 tobTecStepClusters = cms.EDProducer("TrackClusterRemover",
00008 clusterLessSolution = cms.bool(True),
00009 oldClusterRemovalInfo = cms.InputTag("pixelLessStepClusters"),
00010 trajectories = cms.InputTag("pixelLessStepTracks"),
00011 overrideTrkQuals = cms.InputTag('pixelLessStepSelector','pixelLessStep'),
00012 TrackQuality = cms.string('highPurity'),
00013 minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0),
00014 pixelClusters = cms.InputTag("siPixelClusters"),
00015 stripClusters = cms.InputTag("siStripClusters"),
00016 Common = cms.PSet(
00017 maxChi2 = cms.double(9.0)
00018 )
00019 )
00020
00021
00022 tobTecStepSeedLayers = cms.ESProducer("SeedingLayersESProducer",
00023 ComponentName = cms.string('tobTecStepSeedLayers'),
00024
00025 layerList = cms.vstring('TOB1+TOB2',
00026 'TOB1+TEC1_pos', 'TOB1+TEC1_neg',
00027 'TEC1_pos+TEC2_pos', 'TEC2_pos+TEC3_pos',
00028 'TEC3_pos+TEC4_pos', 'TEC4_pos+TEC5_pos',
00029 'TEC5_pos+TEC6_pos', 'TEC6_pos+TEC7_pos',
00030 'TEC1_neg+TEC2_neg', 'TEC2_neg+TEC3_neg',
00031 'TEC3_neg+TEC4_neg', 'TEC4_neg+TEC5_neg',
00032 'TEC5_neg+TEC6_neg', 'TEC6_neg+TEC7_neg'),
00033
00034 TOB = cms.PSet(
00035 matchedRecHits = cms.InputTag("siStripMatchedRecHits","matchedRecHit"),
00036 skipClusters = cms.InputTag('tobTecStepClusters'),
00037 TTRHBuilder = cms.string('WithTrackAngle')
00038 ),
00039
00040 TEC = cms.PSet(
00041 matchedRecHits = cms.InputTag("siStripMatchedRecHits","matchedRecHit"),
00042 skipClusters = cms.InputTag('tobTecStepClusters'),
00043
00044 useRingSlector = cms.bool(True),
00045 TTRHBuilder = cms.string('WithTrackAngle'),
00046 minRing = cms.int32(5),
00047 maxRing = cms.int32(5)
00048 )
00049 )
00050
00051 import RecoTracker.TkSeedGenerator.GlobalMixedSeeds_cff
00052 tobTecStepSeeds = RecoTracker.TkSeedGenerator.GlobalMixedSeeds_cff.globalMixedSeeds.clone()
00053 tobTecStepSeeds.OrderedHitsFactoryPSet.SeedingLayers = 'tobTecStepSeedLayers'
00054 tobTecStepSeeds.RegionFactoryPSet.RegionPSet.ptMin = 0.6
00055 tobTecStepSeeds.RegionFactoryPSet.RegionPSet.originHalfLength = 30.0
00056 tobTecStepSeeds.RegionFactoryPSet.RegionPSet.originRadius = 6.0
00057
00058
00059
00060 import TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi
00061
00062 tobTecStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
00063 ComponentName = 'tobTecStepTrajectoryFilter',
00064 filterPset = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.filterPset.clone(
00065 maxLostHits = 0,
00066 minimumNumberOfHits = 6,
00067 minPt = 0.1,
00068 minHitsMinPt = 3
00069 )
00070 )
00071
00072 tobTecStepInOutTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
00073 ComponentName = 'tobTecStepInOutTrajectoryFilter',
00074 filterPset = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.filterPset.clone(
00075 maxLostHits = 0,
00076 minimumNumberOfHits = 4,
00077 minPt = 0.1,
00078 minHitsMinPt = 3
00079 )
00080 )
00081
00082 import TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi
00083 tobTecStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone(
00084 ComponentName = cms.string('tobTecStepChi2Est'),
00085 nSigma = cms.double(3.0),
00086 MaxChi2 = cms.double(16.0)
00087 )
00088
00089
00090 import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi
00091 tobTecStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi.GroupedCkfTrajectoryBuilder.clone(
00092 ComponentName = 'tobTecStepTrajectoryBuilder',
00093 MeasurementTrackerName = '',
00094 clustersToSkip = cms.InputTag('tobTecStepClusters'),
00095 trajectoryFilterName = 'tobTecStepTrajectoryFilter',
00096 inOutTrajectoryFilterName = 'tobTecStepInOutTrajectoryFilter',
00097 useSameTrajFilter = False,
00098 minNrOfHitsForRebuild = 4,
00099 alwaysUseInvalidHits = False,
00100 maxCand = 2,
00101 estimator = cms.string('tobTecStepChi2Est'),
00102
00103 maxDPhiForLooperReconstruction = cms.double(2.0),
00104 maxPtForLooperReconstruction = cms.double(0.7)
00105 )
00106
00107
00108 import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
00109 tobTecStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
00110 src = cms.InputTag('tobTecStepSeeds'),
00111
00112 numHitsForSeedCleaner = cms.int32(50),
00113 onlyPixelHitsForSeedCleaner = cms.bool(True),
00114
00115 TrajectoryBuilder = 'tobTecStepTrajectoryBuilder',
00116 doSeedingRegionRebuilding = True,
00117 useHitsSplitting = True,
00118 cleanTrajectoryAfterInOut = True
00119 )
00120
00121
00122 import TrackingTools.TrackFitters.RungeKuttaFitters_cff
00123 tobTecStepFitterSmoother = TrackingTools.TrackFitters.RungeKuttaFitters_cff.KFFittingSmootherWithOutliersRejectionAndRK.clone(
00124 ComponentName = 'tobTecStepFitterSmoother',
00125 EstimateCut = 30,
00126 MinNumberOfHits = 8,
00127 Fitter = cms.string('tobTecStepRKFitter'),
00128 Smoother = cms.string('tobTecStepRKSmoother')
00129 )
00130
00131 tobTecStepFitterSmootherForLoopers = tobTecStepFitterSmoother.clone(
00132 ComponentName = 'tobTecStepFitterSmootherForLoopers',
00133 Fitter = cms.string('tobTecStepRKFitterForLoopers'),
00134 Smoother = cms.string('tobTecStepRKSmootherForLoopers')
00135 )
00136
00137
00138 tobTecStepRKTrajectoryFitter = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKTrajectoryFitter.clone(
00139 ComponentName = cms.string('tobTecStepRKFitter'),
00140 minHits = 8
00141 )
00142 tobTecStepRKTrajectoryFitterForLoopers = tobTecStepRKTrajectoryFitter.clone(
00143 ComponentName = cms.string('tobTecStepRKFitterForLoopers'),
00144 Propagator = cms.string('PropagatorWithMaterialForLoopers'),
00145 )
00146
00147 tobTecStepRKTrajectorySmoother = TrackingTools.TrackFitters.RungeKuttaFitters_cff.RKTrajectorySmoother.clone(
00148 ComponentName = cms.string('tobTecStepRKSmoother'),
00149 errorRescaling = 10.0,
00150 minHits = 8
00151 )
00152 tobTecStepRKTrajectorySmootherForLoopers = tobTecStepRKTrajectorySmoother.clone(
00153 ComponentName = cms.string('tobTecStepRKSmootherForLoopers'),
00154 Propagator = cms.string('PropagatorWithMaterialForLoopers'),
00155 )
00156
00157 import TrackingTools.TrackFitters.FlexibleKFFittingSmoother_cfi
00158 tobTecFlexibleKFFittingSmoother = TrackingTools.TrackFitters.FlexibleKFFittingSmoother_cfi.FlexibleKFFittingSmoother.clone(
00159 ComponentName = cms.string('tobTecFlexibleKFFittingSmoother'),
00160 standardFitter = cms.string('tobTecStepFitterSmoother'),
00161 looperFitter = cms.string('tobTecStepFitterSmootherForLoopers'),
00162 )
00163
00164
00165
00166
00167
00168 import RecoTracker.TrackProducer.TrackProducer_cfi
00169 tobTecStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
00170 src = 'tobTecStepTrackCandidates',
00171 AlgorithmName = cms.string('iter6'),
00172
00173 Fitter = 'tobTecFlexibleKFFittingSmoother',
00174 )
00175
00176 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
00177 tobTecStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
00178 src='tobTecStepTracks',
00179 trackSelectors= cms.VPSet(
00180 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
00181 name = 'tobTecStepLoose',
00182 chi2n_par = 0.4,
00183 res_par = ( 0.003, 0.001 ),
00184 minNumberLayers = 5,
00185 maxNumberLostLayers = 1,
00186 minNumber3DLayers = 2,
00187 d0_par1 = ( 2.0, 4.0 ),
00188 dz_par1 = ( 1.8, 4.0 ),
00189 d0_par2 = ( 2.0, 4.0 ),
00190 dz_par2 = ( 1.8, 4.0 )
00191 ),
00192 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
00193 name = 'tobTecStepTight',
00194 preFilterName = 'tobTecStepLoose',
00195 chi2n_par = 0.3,
00196 res_par = ( 0.003, 0.001 ),
00197 minNumberLayers = 5,
00198 maxNumberLostLayers = 0,
00199 minNumber3DLayers = 2,
00200 d0_par1 = ( 1.5, 4.0 ),
00201 dz_par1 = ( 1.4, 4.0 ),
00202 d0_par2 = ( 1.5, 4.0 ),
00203 dz_par2 = ( 1.4, 4.0 )
00204 ),
00205 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
00206 name = 'tobTecStep',
00207 preFilterName = 'tobTecStepTight',
00208 chi2n_par = 0.2,
00209 res_par = ( 0.003, 0.001 ),
00210 minNumberLayers = 5,
00211 maxNumberLostLayers = 0,
00212 minNumber3DLayers = 2,
00213 d0_par1 = ( 1.4, 4.0 ),
00214 dz_par1 = ( 1.3, 4.0 ),
00215 d0_par2 = ( 1.4, 4.0 ),
00216 dz_par2 = ( 1.3, 4.0 )
00217 ),
00218 )
00219 )
00220
00221
00222 TobTecStep = cms.Sequence(tobTecStepClusters*
00223 tobTecStepSeeds*
00224 tobTecStepTrackCandidates*
00225 tobTecStepTracks*
00226 tobTecStepSelector)
00227