CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/RecoTracker/IterativeTracking/python/PixelLessStep_cff.py

Go to the documentation of this file.
00001 import FWCore.ParameterSet.Config as cms
00002 
00003 ##########################################################################
00004 # Large impact parameter tracking using TIB/TID/TEC stereo layer seeding #
00005 ##########################################################################
00006 
00007 
00008 pixelLessStepClusters = cms.EDProducer("TrackClusterRemover",
00009     clusterLessSolution = cms.bool(True),
00010     oldClusterRemovalInfo = cms.InputTag("mixedTripletStepClusters"),
00011     trajectories = cms.InputTag("mixedTripletStepTracks"),
00012     overrideTrkQuals = cms.InputTag('mixedTripletStep'),
00013     TrackQuality = cms.string('highPurity'),
00014     minNumberOfLayersWithMeasBeforeFiltering = cms.int32(0),
00015     pixelClusters = cms.InputTag("siPixelClusters"),
00016     stripClusters = cms.InputTag("siStripClusters"),
00017     Common = cms.PSet(
00018         maxChi2 = cms.double(9.0)
00019     )
00020 )
00021 
00022 # SEEDING LAYERS
00023 pixelLessStepSeedLayers = cms.ESProducer("SeedingLayersESProducer",
00024     ComponentName = cms.string('pixelLessStepSeedLayers'),
00025     layerList = cms.vstring('TIB1+TIB2',
00026         'TID1_pos+TID2_pos','TID2_pos+TID3_pos',
00027         'TEC1_pos+TEC2_pos','TEC2_pos+TEC3_pos','TEC3_pos+TEC4_pos','TEC3_pos+TEC5_pos','TEC4_pos+TEC5_pos',
00028         'TID1_neg+TID2_neg','TID2_neg+TID3_neg',
00029         'TEC1_neg+TEC2_neg','TEC2_neg+TEC3_neg','TEC3_neg+TEC4_neg','TEC3_neg+TEC5_neg','TEC4_neg+TEC5_neg'),
00030     TIB = cms.PSet(
00031         TTRHBuilder = cms.string('WithTrackAngle'),
00032         matchedRecHits = cms.InputTag("siStripMatchedRecHits","matchedRecHit"),
00033         skipClusters = cms.InputTag('pixelLessStepClusters')
00034     ),
00035     TID = cms.PSet(
00036         matchedRecHits = cms.InputTag("siStripMatchedRecHits","matchedRecHit"),
00037         skipClusters = cms.InputTag('pixelLessStepClusters'),
00038         useRingSlector = cms.bool(True),
00039         TTRHBuilder = cms.string('WithTrackAngle'),
00040         minRing = cms.int32(1),
00041         maxRing = cms.int32(2)
00042     ),
00043     TEC = cms.PSet(
00044         matchedRecHits = cms.InputTag("siStripMatchedRecHits","matchedRecHit"),
00045         skipClusters = cms.InputTag('pixelLessStepClusters'),
00046         useRingSlector = cms.bool(True),
00047         TTRHBuilder = cms.string('WithTrackAngle'),
00048         minRing = cms.int32(1),
00049         maxRing = cms.int32(2)
00050     )
00051 )
00052 
00053 # SEEDS
00054 import RecoTracker.TkSeedGenerator.GlobalMixedSeeds_cff
00055 pixelLessStepSeeds = RecoTracker.TkSeedGenerator.GlobalMixedSeeds_cff.globalMixedSeeds.clone()
00056 pixelLessStepSeeds.OrderedHitsFactoryPSet.SeedingLayers = 'pixelLessStepSeedLayers'
00057 pixelLessStepSeeds.RegionFactoryPSet.RegionPSet.ptMin = 0.7
00058 pixelLessStepSeeds.RegionFactoryPSet.RegionPSet.originHalfLength = 10.0
00059 pixelLessStepSeeds.RegionFactoryPSet.RegionPSet.originRadius = 2.0
00060 
00061 pixelLessStepSeeds.SeedComparitorPSet = cms.PSet(
00062         ComponentName = cms.string('PixelClusterShapeSeedComparitor'),
00063         FilterAtHelixStage = cms.bool(True),
00064         FilterPixelHits = cms.bool(False),
00065         FilterStripHits = cms.bool(True),
00066         ClusterShapeHitFilterName = cms.string('ClusterShapeHitFilter')
00067     )
00068 
00069 # QUALITY CUTS DURING TRACK BUILDING
00070 import TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi
00071 pixelLessStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.clone(
00072     ComponentName = 'pixelLessStepTrajectoryFilter',
00073     filterPset = TrackingTools.TrajectoryFiltering.TrajectoryFilterESProducer_cfi.trajectoryFilterESProducer.filterPset.clone(
00074     maxLostHits = 0,
00075     minimumNumberOfHits = 4,
00076     minPt = 0.1
00077     )
00078     )
00079 
00080 import TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi
00081 pixelLessStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimatorESProducer_cfi.Chi2MeasurementEstimator.clone(
00082     ComponentName = cms.string('pixelLessStepChi2Est'),
00083     nSigma = cms.double(3.0),
00084     MaxChi2 = cms.double(16.0)
00085 )
00086 
00087 # TRACK BUILDING
00088 import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi
00089 pixelLessStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilderESProducer_cfi.GroupedCkfTrajectoryBuilder.clone(
00090     ComponentName = 'pixelLessStepTrajectoryBuilder',
00091     MeasurementTrackerName = '',
00092     clustersToSkip = cms.InputTag('pixelLessStepClusters'),
00093     trajectoryFilterName = 'pixelLessStepTrajectoryFilter',
00094     minNrOfHitsForRebuild = 4,
00095     maxCand = 2,
00096     alwaysUseInvalidHits = False,
00097     estimator = cms.string('pixelLessStepChi2Est'),
00098     maxDPhiForLooperReconstruction = cms.double(2.0),
00099     maxPtForLooperReconstruction = cms.double(0.7) 
00100     )
00101 
00102 # MAKING OF TRACK CANDIDATES
00103 import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
00104 pixelLessStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
00105     src = cms.InputTag('pixelLessStepSeeds'),
00106     ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput
00107     numHitsForSeedCleaner = cms.int32(50),
00108     #onlyPixelHitsForSeedCleaner = cms.bool(True),
00109 
00110     TrajectoryBuilder = 'pixelLessStepTrajectoryBuilder'
00111 )
00112 
00113 # TRACK FITTING
00114 import RecoTracker.TrackProducer.TrackProducer_cfi
00115 pixelLessStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
00116     src = 'pixelLessStepTrackCandidates',
00117     AlgorithmName = cms.string('iter5'),
00118     Fitter = cms.string('FlexibleKFFittingSmoother')
00119     )
00120 
00121 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
00122 pixelLessStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
00123     src='pixelLessStepTracks',
00124     trackSelectors= cms.VPSet(
00125         RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
00126             name = 'pixelLessStepLoose',
00127             chi2n_par = 0.5,
00128             res_par = ( 0.003, 0.001 ),
00129             minNumberLayers = 4,
00130             maxNumberLostLayers = 1,
00131             minNumber3DLayers = 3,
00132             d0_par1 = ( 1.3, 4.0 ),
00133             dz_par1 = ( 1.3, 4.0 ),
00134             d0_par2 = ( 1.3, 4.0 ),
00135             dz_par2 = ( 1.3, 4.0 )
00136             ),
00137         RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
00138             name = 'pixelLessStepTight',
00139             preFilterName = 'pixelLessStepLoose',
00140             chi2n_par = 0.35,
00141             res_par = ( 0.003, 0.001 ),
00142             minNumberLayers = 4,
00143             maxNumberLostLayers = 0,
00144             minNumber3DLayers = 3,
00145             d0_par1 = ( 1.1, 4.0 ),
00146             dz_par1 = ( 1.1, 4.0 ),
00147             d0_par2 = ( 1.1, 4.0 ),
00148             dz_par2 = ( 1.1, 4.0 )
00149             ),
00150         RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
00151             name = 'pixelLessStep',
00152             preFilterName = 'pixelLessStepTight',
00153             chi2n_par = 0.2,
00154             res_par = ( 0.003, 0.001 ),
00155             minNumberLayers = 4,
00156             maxNumberLostLayers = 0,
00157             minNumber3DLayers = 3,
00158             d0_par1 = ( 0.9, 4.0 ),
00159             dz_par1 = ( 0.9, 4.0 ),
00160             d0_par2 = ( 0.9, 4.0 ),
00161             dz_par2 = ( 0.9, 4.0 )
00162             ),
00163         ) #end of vpset
00164     ) #end of clone
00165 
00166 
00167 PixelLessStep = cms.Sequence(pixelLessStepClusters*
00168                              pixelLessStepSeeds*
00169                              pixelLessStepTrackCandidates*
00170                              pixelLessStepTracks*
00171                              pixelLessStepSelector)