Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:28:09

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 from RecoTracker.FinalTrackSelectors.DuplicateTrackMerger_cfi import *
0004 from RecoTracker.FinalTrackSelectors.DuplicateListMerger_cfi import *
0005 from RecoTracker.FinalTrackSelectors.trackAlgoPriorityOrder_cfi import trackAlgoPriorityOrder
0006 from RecoLocalTracker.SiPixelRecHits.SiPixelTemplateStoreESProducer_cfi import SiPixelTemplateStoreESProducer
0007 
0008 from TrackingTools.KalmanUpdators.Chi2MeasurementEstimator_cfi import Chi2MeasurementEstimator as _Chi2MeasurementEstimator
0009 duplicateTrackCandidatesChi2Est = _Chi2MeasurementEstimator.clone(
0010     ComponentName = "duplicateTrackCandidatesChi2Est",
0011     MaxChi2 = 100,
0012 )
0013 
0014 duplicateTrackCandidates = DuplicateTrackMerger.clone(
0015     source = "preDuplicateMergingGeneralTracks",
0016     useInnermostState  = True,
0017     ttrhBuilderName   = "WithAngleAndTemplate",
0018     chi2EstimatorName = "duplicateTrackCandidatesChi2Est"
0019 )
0020 
0021 import RecoTracker.TrackProducer.TrackProducer_cfi
0022 mergedDuplicateTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
0023     src = "duplicateTrackCandidates:candidates",
0024     Fitter='RKFittingSmoother' # no outlier rejection!
0025 )
0026 
0027 from RecoTracker.FinalTrackSelectors.TrackCutClassifier_cff import *
0028 duplicateTrackClassifier = TrackCutClassifier.clone(
0029     src='mergedDuplicateTracks',
0030     mva = dict(
0031     minPixelHits = [0,0,0],
0032     maxChi2 = [9999.,9999.,9999.],
0033     maxChi2n = [10.,1.0,0.4],  # [9999.,9999.,9999.]
0034     minLayers = [0,0,0],
0035     min3DLayers = [0,0,0],
0036     maxLostLayers = [99,99,99])
0037 )
0038 
0039 generalTracks = DuplicateListMerger.clone(
0040     originalSource      = "preDuplicateMergingGeneralTracks",
0041     originalMVAVals     = "preDuplicateMergingGeneralTracks:MVAValues",
0042     mergedSource        = "mergedDuplicateTracks",
0043     mergedMVAVals       = "duplicateTrackClassifier:MVAValues",
0044     candidateSource     = "duplicateTrackCandidates:candidates",
0045     candidateComponents = "duplicateTrackCandidates:candidateMap"
0046 )
0047 
0048 generalTracksTask = cms.Task(
0049     duplicateTrackCandidates,
0050     mergedDuplicateTracks,
0051     duplicateTrackClassifier,
0052     generalTracks
0053     )
0054 generalTracksSequence = cms.Sequence(generalTracksTask)
0055 
0056 from Configuration.Eras.Modifier_fastSim_cff import fastSim
0057 fastSim.toReplaceWith(generalTracksTask, 
0058                       cms.Task(duplicateTrackCandidates,
0059                                mergedDuplicateTracks,
0060                                duplicateTrackClassifier)
0061 )
0062 
0063 def _fastSimGeneralTracks(process):
0064     from FastSimulation.Configuration.DigiAliases_cff import loadGeneralTracksAlias
0065     loadGeneralTracksAlias(process)
0066 modifyMergeTrackCollections_fastSimGeneralTracks = fastSim.makeProcessModifier( _fastSimGeneralTracks )
0067 
0068 import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
0069 conversionStepTracks = RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
0070     TrackProducers     = ['convStepTracks'],
0071     hasSelector        = [1],
0072     selectedTrackQuals = ['convStepSelector:convStep'],
0073     setsToMerge = cms.VPSet( cms.PSet( tLists=cms.vint32(1), pQual=cms.bool(True) )
0074                              ),
0075     copyExtras = True,
0076     makeReKeyedSeeds = cms.untracked.bool(False),
0077 )
0078 
0079 from Configuration.Eras.Modifier_phase2_timing_layer_cff import phase2_timing_layer
0080 phase2_timing_layer.toModify(mergedDuplicateTracks, TrajectoryInEvent = True)
0081 phase2_timing_layer.toModify(generalTracks, copyTrajectories = True)