/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
RecoTracker/FinalTrackSelectors/python/earlyGeneralTracks_cfi.py
163 строки
7 KB
Mario Masciovecchio
Adding pass-through option to MultiTrackSelector (for LST tracking / seeding), and clean configuration
25 мар 2026, 16:43
25 мар 2026, 16:43
b4845fe
Код
Авторство
О чём код?
import FWCore.ParameterSet.Config as cms from RecoTracker.FinalTrackSelectors.TrackCollectionMerger_cfi import * from RecoTracker.FinalTrackSelectors.trackAlgoPriorityOrder_cfi import trackAlgoPriorityOrder import RecoTracker.FinalTrackSelectors.trackListMerger_cfi earlyGeneralTracks = TrackCollectionMerger.clone( trackProducers = ['initialStepTracks', 'jetCoreRegionalStepTracks', 'lowPtTripletStepTracks', 'pixelPairStepTracks', 'detachedTripletStepTracks', 'mixedTripletStepTracks', 'pixelLessStepTracks', 'tobTecStepTracks' ], inputClassifiers =['initialStep', 'jetCoreRegionalStep', 'lowPtTripletStep', 'pixelPairStep', 'detachedTripletStep', 'mixedTripletStep', 'pixelLessStep', 'tobTecStep' ] ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(earlyGeneralTracks, trackProducers = [ 'initialStepTracks', 'lowPtTripletStepTracks', 'pixelPairStepTracks', 'detachedTripletStepTracks', 'mixedTripletStepTracks', 'pixelLessStepTracks', 'tobTecStepTracks' ], inputClassifiers = [ 'initialStepSelector', 'lowPtTripletStepSelector', 'pixelPairStepSelector', 'detachedTripletStep', 'mixedTripletStep', 'pixelLessStepSelector', 'tobTecStep' ] ) from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1 _forPhase1 = dict( trackProducers = [ 'initialStepTracks', 'highPtTripletStepTracks', 'jetCoreRegionalStepTracks', 'lowPtQuadStepTracks', 'lowPtTripletStepTracks', 'detachedQuadStepTracks', 'detachedTripletStepTracks', 'pixelPairStepTracks', 'mixedTripletStepTracks', 'pixelLessStepTracks', 'tobTecStepTracks' ], inputClassifiers = [ 'initialStep', 'highPtTripletStep', 'jetCoreRegionalStep', 'lowPtQuadStep', 'lowPtTripletStep', 'detachedQuadStep', 'detachedTripletStep', 'pixelPairStep', 'mixedTripletStep', 'pixelLessStep', 'tobTecStep' ], ) trackingPhase1.toModify(earlyGeneralTracks, **_forPhase1) from Configuration.ProcessModifiers.displacedTracking_cff import displacedTracking def _extend_displacedGeneral(x): x.trackProducers += ['displacedGeneralStepTracks'] x.inputClassifiers += ['displacedGeneralStep'] (trackingPhase1 & displacedTracking).toModify(earlyGeneralTracks, _extend_displacedGeneral) from Configuration.ProcessModifiers.trackingIters01_cff import trackingIters01 (trackingPhase1 & trackingIters01).toModify(earlyGeneralTracks, trackProducers = ['initialStepTracks', 'highPtTripletStepTracks'], inputClassifiers = cms.vstring('initialStep','highPtTripletStep') ) # For Phase2PU140 from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 from RecoTracker.FinalTrackSelectors.trackListMerger_cfi import trackListMerger as _trackListMerger trackingPhase2PU140.toReplaceWith(earlyGeneralTracks, _trackListMerger.clone( TrackProducers =['initialStepTracks', 'highPtTripletStepTracks', 'lowPtQuadStepTracks', 'lowPtTripletStepTracks', 'detachedQuadStepTracks', 'pixelPairStepTracks', ], hasSelector = [1,1,1,1,1,1], indivShareFrac = [1.0,0.16,0.095,0.09,0.09,0.09], selectedTrackQuals = ['initialStepSelector:initialStep', 'highPtTripletStepSelector:highPtTripletStep', 'lowPtQuadStepSelector:lowPtQuadStep', 'lowPtTripletStepSelector:lowPtTripletStep', 'detachedQuadStep', 'pixelPairStepSelector:pixelPairStep', ], setsToMerge = cms.VPSet( cms.PSet( tLists=cms.vint32(0,1,2,3,4,5), pQual=cms.bool(True) ) ), copyExtras = True, makeReKeyedSeeds = cms.untracked.bool(False) ) ) from Configuration.ProcessModifiers.trackingLST_cff import trackingLST def _remove_initial(x): _idx = x.TrackProducers.index('initialStepTracks') del x.TrackProducers[_idx] del x.hasSelector[_idx] del x.indivShareFrac[_idx] del x.selectedTrackQuals[_idx] del x.setsToMerge[0].tLists[_idx] (trackingPhase2PU140 & trackingLST).toModify(earlyGeneralTracks, _remove_initial) (trackingPhase2PU140 & trackingIters01).toModify(earlyGeneralTracks, TrackProducers = ['initialStepTracks', 'highPtTripletStepTracks'], hasSelector = [1,1], indivShareFrac = [1,0.16], selectedTrackQuals = ['initialStepSelector:initialStep', 'highPtTripletStepSelector:highPtTripletStep' ], setsToMerge = {0: dict(tLists = [0,1])} ) (trackingPhase2PU140 & trackingIters01 & trackingLST).toModify(earlyGeneralTracks, TrackProducers = ['highPtTripletStepTracks'], hasSelector = [1], indivShareFrac = [0.1], selectedTrackQuals = ['highPtTripletStepSelector:highPtTripletStep'], setsToMerge = {0: dict(tLists = [0])} ) from Configuration.ProcessModifiers.jetCoreInPhase2_cff import jetCoreInPhase2 def _extend_jetCore(x): _length = len(x.TrackProducers) x.TrackProducers += ['jetCoreRegionalStepTracks'] x.hasSelector += [1] x.indivShareFrac += [1.0] x.selectedTrackQuals += ['jetCoreRegionalStepSelector:jetCoreRegionalStep'] x.setsToMerge[0].tLists += [_length] (trackingPhase2PU140 & jetCoreInPhase2).toModify(earlyGeneralTracks, _extend_jetCore) from Configuration.ProcessModifiers.vectorHits_cff import vectorHits def _extend_pixelLess(x): _length = len(x.TrackProducers) x.TrackProducers += ['pixelLessStepTracks'] x.hasSelector += [1] x.indivShareFrac += [0.095] x.selectedTrackQuals += ['pixelLessStepSelector:pixelLessStep'] x.setsToMerge[0].tLists += [_length] (trackingPhase2PU140 & vectorHits).toModify(earlyGeneralTracks, _extend_pixelLess)