Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-05-10 03:54:41

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 # NEW CLUSTERS (remove previously used clusters)
0004 from RecoLocalTracker.SubCollectionProducers.trackClusterRemover_cfi import *
0005 lowPtForwardTripletStepClusters = trackClusterRemover.clone(
0006     maxChi2          = 9.0,
0007     trajectories     = 'initialStepTracks',
0008     pixelClusters    = 'siPixelClusters',
0009     stripClusters    = 'siStripClusters',
0010     overrideTrkQuals = 'initialStepSelector:initialStep',
0011     TrackQuality     = 'highPurity',
0012 )
0013 
0014 # SEEDING LAYERS
0015 import RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi
0016 lowPtForwardTripletStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone(
0017     BPix = dict(skipClusters = cms.InputTag('lowPtForwardTripletStepClusters')),
0018     FPix = dict(skipClusters = cms.InputTag('lowPtForwardTripletStepClusters')),
0019     layerList = ['BPix1+BPix2+FPix1_pos', 
0020                  'BPix1+BPix2+FPix1_neg', 
0021                  'BPix1+FPix1_pos+FPix2_pos', 
0022                  'BPix1+FPix1_neg+FPix2_neg']
0023 )
0024 
0025 # SEEDS
0026 import RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff
0027 from RecoTracker.TkTrackingRegions.GlobalTrackingRegionFromBeamSpot_cfi import RegionPsetFomBeamSpotBlock
0028 lowPtForwardTripletStepSeeds = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone(
0029     RegionFactoryPSet = RegionPsetFomBeamSpotBlock.clone(
0030     ComponentName     = 'GlobalRegionProducerFromBeamSpot',
0031     RegionPSet = RegionPsetFomBeamSpotBlock.RegionPSet.clone(
0032     ptMin        = 0.2,
0033     originRadius = 0.03,
0034     nSigmaZ      = 4.0)
0035     ),
0036     OrderedHitsFactoryPSet = dict(
0037     SeedingLayers = 'lowPtForwardTripletStepSeedLayers'
0038     )
0039 )
0040 
0041 from RecoTracker.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import *
0042 import RecoTracker.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi
0043 lowPtForwardTripletStepSeeds.OrderedHitsFactoryPSet.GeneratorPSet.SeedComparitorPSet = RecoTracker.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor
0044 
0045 # QUALITY CUTS DURING TRACK BUILDING
0046 import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff
0047 lowPtForwardTripletStepTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
0048     #maxLostHits = 1, ## use LostHitFraction filter instead
0049     minimumNumberOfHits = 3,
0050     minPt               = 0.1
0051 )
0052 
0053 import TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi
0054 lowPtForwardTripletStepChi2Est = TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi.Chi2MeasurementEstimator.clone(
0055     ComponentName = 'lowPtForwardTripletStepChi2Est',
0056     nSigma        = 3.0,
0057     MaxChi2       = 9.0
0058 )
0059 
0060 # TRACK BUILDING
0061 import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi
0062 lowPtForwardTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
0063     trajectoryFilter       = dict(refToPSet_ = 'lowPtForwardTripletStepTrajectoryFilter'),
0064     clustersToSkip         = 'lowPtForwardTripletStepClusters',
0065     maxCand                = 3,
0066     estimator              = 'lowPtForwardTripletStepChi2Est'
0067 )
0068 
0069 # MAKING OF TRACK CANDIDATES
0070 import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
0071 lowPtForwardTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
0072     src                       = 'lowPtForwardTripletStepSeeds',
0073     TrajectoryBuilderPSet     = dict(refToPSet_ = 'lowPtForwardTripletStepTrajectoryBuilder'),
0074     doSeedingRegionRebuilding = True,
0075     useHitsSplitting          = True,
0076 )
0077 
0078 # TRACK FITTING
0079 import RecoTracker.TrackProducer.TrackProducerIterativeDefault_cfi
0080 lowPtForwardTripletStepTracks = RecoTracker.TrackProducer.TrackProducerIterativeDefault_cfi.TrackProducerIterativeDefault.clone(
0081     src           = 'lowPtForwardTripletStepTrackCandidates',
0082     AlgorithmName = 'lowPtTripletStep'
0083 )
0084 
0085 # Final selection
0086 import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
0087 lowPtForwardTripletStepSelector = RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.multiTrackSelector.clone(
0088     src='lowPtForwardTripletStepTracks',
0089     trackSelectors= cms.VPSet(
0090         RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.looseMTS.clone(
0091             name = 'lowPtForwardTripletStepLoose',
0092             ), #end of pset
0093         RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.tightMTS.clone(
0094             name = 'lowPtForwardTripletStepTight',
0095             preFilterName = 'lowPtForwardTripletStepLoose',
0096             ),
0097         RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi.highpurityMTS.clone(
0098             name = 'lowPtForwardTripletStep',
0099             preFilterName = 'lowPtForwardTripletStepTight',
0100             ),
0101         ) #end of vpset
0102     ) #end of clone
0103 
0104 # Final sequence
0105 LowPtForwardTripletStepTask = cms.Task(lowPtForwardTripletStepClusters,
0106                                        lowPtForwardTripletStepSeedLayers,
0107                                        lowPtForwardTripletStepSeeds,
0108                                        lowPtForwardTripletStepTrackCandidates,
0109                                        lowPtForwardTripletStepTracks,
0110                                        lowPtForwardTripletStepSelector)
0111 LowPtForwardTripletStep = cms.Sequence(LowPtForwardTripletStepTask)