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