00001 import FWCore.ParameterSet.Config as cms
00002
00003
00004 lowPtBarrelTripletStepClusters = cms.EDProducer("TrackClusterRemover",
00005 clusterLessSolution= cms.bool(True),
00006 trajectories = cms.InputTag("lowPtForwardTripletStepTracks"),
00007 oldClusterRemovalInfo = cms.InputTag("lowPtForwardTripletStepClusters"),
00008 overrideTrkQuals = cms.InputTag('lowPtForwardTripletStepSelector','lowPtForwardTripletStep'),
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 )
00016
00017
00018 import RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi
00019 lowPtBarrelTripletStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.pixellayertriplets.clone(
00020 ComponentName = 'lowPtBarrelTripletStepSeedLayers'
00021 )
00022 lowPtBarrelTripletStepSeedLayers.BPix.skipClusters = cms.InputTag('lowPtBarrelTripletStepClusters')
00023 lowPtBarrelTripletStepSeedLayers.FPix.skipClusters = cms.InputTag('lowPtBarrelTripletStepClusters')
00024 lowPtBarrelTripletStepSeedLayers.layerList = cms.vstring('BPix1+BPix2+BPix3')
00025
00026
00027
00028 import RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff
00029 from RecoTracker.TkTrackingRegions.GlobalTrackingRegionFromBeamSpot_cfi import RegionPsetFomBeamSpotBlock
00030 lowPtBarrelTripletStepSeeds = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone(
00031 RegionFactoryPSet = RegionPsetFomBeamSpotBlock.clone(
00032 ComponentName = cms.string('GlobalRegionProducerFromBeamSpot'),
00033 RegionPSet = RegionPsetFomBeamSpotBlock.RegionPSet.clone(
00034 ptMin = 0.2,
00035 originRadius = 0.03,
00036 nSigmaZ = 4.0
00037 )
00038 )
00039 )
00040 lowPtBarrelTripletStepSeeds.OrderedHitsFactoryPSet.SeedingLayers = 'lowPtBarrelTripletStepSeedLayers'
00041
00042 from RecoPixelVertexing.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import *
00043 lowPtBarrelTripletStepSeeds.OrderedHitsFactoryPSet.GeneratorPSet.SeedComparitorPSet.ComponentName = 'LowPtClusterShapeSeedComparitor'
00044
00045
00046
00047 import TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi
00048 lowPtBarrelTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
00049 ComponentName = 'lowPtBarrelTripletStepTrajectoryFilter',
00050 filterPset = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.filterPset.clone(
00051
00052 minimumNumberOfHits = 3,
00053 minPt = 0.1
00054 )
00055 )
00056
00057 import TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi
00058 lowPtBarrelTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone(
00059 ComponentName = cms.string('lowPtBarrelTripletStepChi2Est'),
00060 nSigma = cms.double(3.0),
00061 MaxChi2 = cms.double(9.0)
00062 )
00063
00064
00065 import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi
00066 lowPtBarrelTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi.GroupedCkfTrajectoryBuilder.clone(
00067 ComponentName = 'lowPtBarrelTripletStepTrajectoryBuilder',
00068 MeasurementTrackerName = '',
00069 trajectoryFilterName = 'lowPtBarrelTripletStepTrajectoryFilter',
00070 clustersToSkip = cms.InputTag('lowPtBarrelTripletStepClusters'),
00071 maxCand = 3,
00072
00073
00074
00075 estimator = cms.string('lowPtBarrelTripletStepChi2Est'),
00076
00077
00078 maxPtForLooperReconstruction = cms.double(0.63)
00079
00080
00081 )
00082
00083
00084 import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
00085 lowPtBarrelTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
00086 src = cms.InputTag('lowPtBarrelTripletStepSeeds'),
00087
00088
00089 numHitsForSeedCleaner = cms.int32(50),
00090 onlyPixelHitsForSeedCleaner = cms.bool(True),
00091
00092 TrajectoryBuilder = 'lowPtBarrelTripletStepTrajectoryBuilder',
00093 doSeedingRegionRebuilding = True,
00094 useHitsSplitting = True,
00095 TransientInitialStateEstimatorParameters = cms.PSet(
00096 propagatorAlongTISE = cms.string('PropagatorWithMaterialForLoopers'),
00097 propagatorOppositeTISE = cms.string('PropagatorWithMaterialForLoopersOpposite'),
00098 numberMeasurementsForFit = cms.int32(4)
00099 )
00100 )
00101
00102
00103
00104
00105
00106 import TrackingTools.TrackFitters.KFTrajectoryFitterESProducer_cfi
00107 lowPtBarrelTripletStepKFTrajectoryFitter = TrackingTools.TrackFitters.KFTrajectoryFitterESProducer_cfi.KFTrajectoryFitter.clone(
00108 ComponentName = cms.string('lowPtBarrelTripletStepKFTrajectoryFitter'),
00109 Propagator = cms.string('PropagatorWithMaterialForLoopers')
00110 )
00111
00112 import TrackingTools.TrackFitters.KFTrajectorySmootherESProducer_cfi
00113 lowPtBarrelTripletStepKFTrajectorySmoother = TrackingTools.TrackFitters.KFTrajectorySmootherESProducer_cfi.KFTrajectorySmoother.clone(
00114 ComponentName = cms.string('lowPtBarrelTripletStepKFTrajectorySmoother'),
00115 Propagator = cms.string('PropagatorWithMaterialForLoopers'),
00116 errorRescaling = cms.double(10.0)
00117 )
00118
00119 import TrackingTools.TrackFitters.KFFittingSmootherESProducer_cfi
00120 lowPtBarrelTripletStepKFFittingSmoother = TrackingTools.TrackFitters.KFFittingSmootherESProducer_cfi.KFFittingSmoother.clone(
00121 ComponentName = cms.string('lowPtBarrelTripletStepKFFittingSmoother'),
00122 Fitter = cms.string('lowPtBarrelTripletStepKFTrajectoryFitter'),
00123 Smoother = cms.string('lowPtBarrelTripletStepKFTrajectorySmoother'),
00124 EstimateCut = cms.double(20.0),
00125 LogPixelProbabilityCut = cms.double(-14.0),
00126 MinNumberOfHits = cms.int32(3)
00127 )
00128
00129
00130
00131 import RecoTracker.TrackProducer.TrackProducer_cfi
00132 lowPtBarrelTripletStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
00133 src = 'lowPtBarrelTripletStepTrackCandidates',
00134 AlgorithmName = cms.string('iter1'),
00135 Fitter = cms.string('lowPtBarrelTripletStepKFFittingSmoother'),
00136
00137
00138 )
00139
00140
00141
00142 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
00143 lowPtBarrelTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
00144 src='lowPtBarrelTripletStepTracks',
00145 trackSelectors= cms.VPSet(
00146 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
00147 name = 'lowPtBarrelTripletStepLoose',
00148 ),
00149 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
00150 name = 'lowPtBarrelTripletStepTight',
00151 preFilterName = 'lowPtBarrelTripletStepLoose',
00152 ),
00153 RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
00154 name = 'lowPtBarrelTripletStep',
00155 preFilterName = 'lowPtBarrelTripletStepTight',
00156 ),
00157 )
00158 )
00159
00160
00161 LowPtBarrelTripletStep = cms.Sequence(lowPtBarrelTripletStepClusters*
00162 lowPtBarrelTripletStepSeeds*
00163 lowPtBarrelTripletStepTrackCandidates*
00164 lowPtBarrelTripletStepTracks*
00165 lowPtBarrelTripletStepSelector)