Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Disable looper track reconstruction for >= Run2_2016 #35721

Merged
merged 2 commits into from Oct 21, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
3 changes: 2 additions & 1 deletion Configuration/Eras/python/Era_Run2_2016_cff.py
Expand Up @@ -13,7 +13,8 @@
from Configuration.Eras.Modifier_run2_jme_2016_cff import run2_jme_2016
from Configuration.Eras.Modifier_strips_vfp30_2016_cff import strips_vfp30_2016
from Configuration.Eras.Modifier_run2_ECAL_2016_cff import run2_ECAL_2016
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

Run2_2016 = cms.ModifierChain(run2_common, run2_25ns_specific,
stage2L1Trigger, ctpps, ctpps_2016, run2_HLTconditions_2016, run2_ECAL_2016, run2_muon_2016, run2_egamma_2016, run2_L1prefiring, pixel_2016, run2_jme_2016, strips_vfp30_2016)
stage2L1Trigger, ctpps, ctpps_2016, run2_HLTconditions_2016, run2_ECAL_2016, run2_muon_2016, run2_egamma_2016, run2_L1prefiring, pixel_2016, run2_jme_2016, strips_vfp30_2016, trackingNoLoopers)

3 changes: 2 additions & 1 deletion Configuration/Eras/python/Era_Run2_2016_pA_cff.py
Expand Up @@ -2,6 +2,7 @@

from Configuration.Eras.Era_Run2_2016_cff import Run2_2016
from Configuration.Eras.Modifier_pA_2016_cff import pA_2016
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

Run2_2016_pA = cms.ModifierChain(Run2_2016, pA_2016)
Run2_2016_pA = cms.ModifierChain(Run2_2016.copyAndExclude([trackingNoLoopers]), pA_2016)

3 changes: 2 additions & 1 deletion Configuration/Eras/python/Era_Run2_2017_ppRef_cff.py
Expand Up @@ -3,5 +3,6 @@
from Configuration.Eras.Era_Run2_2017_cff import Run2_2017
from Configuration.Eras.Modifier_ppRef_2017_cff import ppRef_2017
from Configuration.Eras.ModifierChain_trackingMkFitProd_cff import trackingMkFitProd
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

Run2_2017_ppRef = cms.ModifierChain(Run2_2017.copyAndExclude([trackingMkFitProd]), ppRef_2017)
Run2_2017_ppRef = cms.ModifierChain(Run2_2017.copyAndExclude([trackingMkFitProd, trackingNoLoopers]), ppRef_2017)
3 changes: 2 additions & 1 deletion Configuration/Eras/python/Era_Run2_2017_pp_on_XeXe_cff.py
Expand Up @@ -3,5 +3,6 @@
from Configuration.Eras.Era_Run2_2017_cff import Run2_2017
from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017
from Configuration.Eras.ModifierChain_trackingMkFitProd_cff import trackingMkFitProd
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

Run2_2017_pp_on_XeXe = cms.ModifierChain(Run2_2017.copyAndExclude([trackingMkFitProd]), pp_on_XeXe_2017)
Run2_2017_pp_on_XeXe = cms.ModifierChain(Run2_2017.copyAndExclude([trackingMkFitProd,trackingNoLoopers]), pp_on_XeXe_2017)
3 changes: 2 additions & 1 deletion Configuration/Eras/python/Era_Run2_2018_pp_on_AA_cff.py
Expand Up @@ -4,5 +4,6 @@
from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
from Configuration.Eras.Modifier_pp_on_AA_2018_cff import pp_on_AA_2018
from Configuration.Eras.ModifierChain_trackingMkFitProd_cff import trackingMkFitProd
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

Run2_2018_pp_on_AA = cms.ModifierChain(Run2_2018.copyAndExclude([trackingMkFitProd]), pp_on_AA, pp_on_AA_2018)
Run2_2018_pp_on_AA = cms.ModifierChain(Run2_2018.copyAndExclude([trackingMkFitProd, trackingNoLoopers]), pp_on_AA, pp_on_AA_2018)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@abaty @mandrenguyen
do you think looping track reconstruction is needed in the HI events?
I'd guess that they are even more costly in central events for CPU than for pp.

3 changes: 2 additions & 1 deletion Configuration/Eras/python/Era_Run3_pp_on_PbPb_cff.py
Expand Up @@ -3,5 +3,6 @@
from Configuration.Eras.Era_Run3_noMkFit_cff import Run3_noMkFit
from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
from Configuration.Eras.Modifier_pp_on_PbPb_run3_cff import pp_on_PbPb_run3
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

Run3_pp_on_PbPb = cms.ModifierChain(Run3_noMkFit, pp_on_AA, pp_on_PbPb_run3)
Run3_pp_on_PbPb = cms.ModifierChain(Run3_noMkFit.copyAndExclude([trackingNoLoopers]), pp_on_AA, pp_on_PbPb_run3)
@@ -0,0 +1,4 @@
import FWCore.ParameterSet.Config as cms

# This modifier removes the looper tracks reconstruction
trackingNoLoopers = cms.Modifier()
5 changes: 5 additions & 0 deletions RecoTracker/IterativeTracking/python/DetachedQuadStep_cff.py
Expand Up @@ -6,6 +6,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

###############################################
# Low pT and detached tracks from pixel quadruplets
###############################################
Expand Down Expand Up @@ -156,6 +159,8 @@
maxDPhiForLooperReconstruction = cms.double(2.0),
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingNoLoopers.toModify(detachedQuadStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
trackingPhase2PU140.toModify(detachedQuadStepTrajectoryBuilder,
maxCand = 2,
alwaysUseInvalidHits = False,
Expand Down
Expand Up @@ -10,6 +10,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

###############################################
# Low pT and detached tracks from pixel triplets
###############################################
Expand Down Expand Up @@ -187,6 +190,8 @@
maxDPhiForLooperReconstruction = cms.double(2.0),
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingNoLoopers.toModify(detachedTripletStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
trackingLowPU.toModify(detachedTripletStepTrajectoryBuilder,
maxCand = 2,
alwaysUseInvalidHits = False,
Expand Down
5 changes: 5 additions & 0 deletions RecoTracker/IterativeTracking/python/HighPtTripletStep_cff.py
Expand Up @@ -6,6 +6,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

### high-pT triplets ###

# NEW CLUSTERS (remove previously used clusters)
Expand Down Expand Up @@ -196,6 +199,8 @@
# of the outermost Tracker barrel layer (with B=3.8T)
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingNoLoopers.toModify(highPtTripletStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
trackingPhase2PU140.toModify(highPtTripletStepTrajectoryBuilder,
inOutTrajectoryFilter = dict(refToPSet_ = 'highPtTripletStepTrajectoryFilterInOut'),
useSameTrajFilter = False,
Expand Down
5 changes: 5 additions & 0 deletions RecoTracker/IterativeTracking/python/InitialStep_cff.py
Expand Up @@ -6,6 +6,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

### STEP 0 ###

# hit building
Expand Down Expand Up @@ -202,6 +205,8 @@
maxDPhiForLooperReconstruction = cms.double(2.0),
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingNoLoopers.toModify(initialStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
trackingLowPU.toModify(initialStepTrajectoryBuilder, maxCand = 5)
trackingPhase1.toModify(initialStepTrajectoryBuilder,
minNrOfHitsForRebuild = 1,
Expand Down
12 changes: 10 additions & 2 deletions RecoTracker/IterativeTracking/python/JetCoreRegionalStep_cff.py
Expand Up @@ -4,6 +4,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

# This step runs over all clusters

# run only if there are high pT jets
Expand Down Expand Up @@ -152,7 +155,9 @@
estimator = 'jetCoreRegionalStepChi2Est',
maxDPhiForLooperReconstruction = cms.double(2.0),
maxPtForLooperReconstruction = cms.double(0.7)
)
)
trackingNoLoopers.toModify(jetCoreRegionalStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
jetCoreRegionalStepBarrelTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
MeasurementTrackerName = '',
trajectoryFilter = cms.PSet(refToPSet_ = cms.string('jetCoreRegionalStepBarrelTrajectoryFilter')),
Expand All @@ -163,11 +168,14 @@
lockHits = False,
requireSeedHitsInRebuild = False
)
trackingNoLoopers.toModify(jetCoreRegionalStepBarrelTrajectoryBuilder,
maxPtForLooperReconstruction = cms.double(0.0))
jetCoreRegionalStepEndcapTrajectoryBuilder = jetCoreRegionalStepTrajectoryBuilder.clone(
trajectoryFilter = cms.PSet(refToPSet_ = cms.string('jetCoreRegionalStepEndcapTrajectoryFilter')),
#clustersToSkip = cms.InputTag('jetCoreRegionalStepClusters'),
)

trackingNoLoopers.toModify(jetCoreRegionalStepEndcapTrajectoryBuilder,
maxPtForLooperReconstruction = cms.double(0.0))
#customized cleaner for DeepCore
from TrackingTools.TrajectoryCleaning.TrajectoryCleanerBySharedHits_cfi import trajectoryCleanerBySharedHits
jetCoreRegionalStepDeepCoreTrajectoryCleaner = trajectoryCleanerBySharedHits.clone(
Expand Down
@@ -1,5 +1,8 @@
import FWCore.ParameterSet.Config as cms

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

# NEW CLUSTERS (remove previously used clusters)
from RecoLocalTracker.SubCollectionProducers.trackClusterRemover_cfi import *
lowPtBarrelTripletStepClusters = trackClusterRemover.clone(
Expand Down Expand Up @@ -69,7 +72,8 @@
# set the variable to a negative value to turn-off the looper reconstruction
#maxPtForLooperReconstruction = cms.double(-1.)
)

trackingNoLoopers.toModify(lowPtBarrelTripletStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
# MAKING OF TRACK CANDIDATES
import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
lowPtBarrelTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone(
Expand Down
5 changes: 5 additions & 0 deletions RecoTracker/IterativeTracking/python/LowPtQuadStep_cff.py
Expand Up @@ -6,6 +6,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

# NEW CLUSTERS (remove previously used clusters)
lowPtQuadStepClusters = _cfg.clusterRemoverForIter('LowPtQuadStep')
for _eraName, _postfix, _era in _cfg.nonDefaultEras():
Expand Down Expand Up @@ -144,6 +147,8 @@
# of the outermost Tracker barrel layer (with B=3.8T)
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingNoLoopers.toModify(lowPtQuadStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
trackingPhase2PU140.toModify(lowPtQuadStepTrajectoryBuilder,
minNrOfHitsForRebuild = 1,
keepOriginalIfRebuildFails = True,
Expand Down
5 changes: 5 additions & 0 deletions RecoTracker/IterativeTracking/python/LowPtTripletStep_cff.py
Expand Up @@ -7,6 +7,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

# NEW CLUSTERS (remove previously used clusters)
lowPtTripletStepClusters = _cfg.clusterRemoverForIter('LowPtTripletStep')
for _eraName, _postfix, _era in _cfg.nonDefaultEras():
Expand Down Expand Up @@ -216,6 +219,8 @@
# of the outermost Tracker barrel layer (with B=3.8T)
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingNoLoopers.toModify(lowPtTripletStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
trackingLowPU.toModify(lowPtTripletStepTrajectoryBuilder, maxCand = 3)
trackingPhase2PU140.toModify(lowPtTripletStepTrajectoryBuilder,
inOutTrajectoryFilter = dict(refToPSet_ = 'lowPtTripletStepTrajectoryFilterInOut'),
Expand Down
6 changes: 5 additions & 1 deletion RecoTracker/IterativeTracking/python/MixedTripletStep_cff.py
Expand Up @@ -7,6 +7,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

###############################################################
# Large impact parameter Tracking using mixed-triplet seeding #
###############################################################
Expand Down Expand Up @@ -276,7 +279,8 @@
maxDPhiForLooperReconstruction = cms.double(2.0),
maxPtForLooperReconstruction = cms.double(0.7)
)

trackingNoLoopers.toModify(mixedTripletStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
# MAKING OF TRACK CANDIDATES
import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
# Give handle for CKF for HI
Expand Down
5 changes: 5 additions & 0 deletions RecoTracker/IterativeTracking/python/PixelLessStep_cff.py
Expand Up @@ -7,6 +7,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

##########################################################################
# Large impact parameter tracking using TIB/TID/TEC stereo layer seeding #
##########################################################################
Expand Down Expand Up @@ -281,6 +284,8 @@
maxDPhiForLooperReconstruction = cms.double(2.0),
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingNoLoopers.toModify(pixelLessStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)

# MAKING OF TRACK CANDIDATES
import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
Expand Down
5 changes: 5 additions & 0 deletions RecoTracker/IterativeTracking/python/PixelPairStep_cff.py
Expand Up @@ -7,6 +7,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

# NEW CLUSTERS (remove previously used clusters)
pixelPairStepClusters = _cfg.clusterRemoverForIter('PixelPairStep')
for _eraName, _postfix, _era in _cfg.nonDefaultEras():
Expand Down Expand Up @@ -279,6 +282,8 @@
maxDPhiForLooperReconstruction = cms.double(2.0),
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingNoLoopers.toModify(pixelPairStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
trackingLowPU.toModify(pixelPairStepTrajectoryBuilder, maxCand = 2)
_seedExtension = dict(
inOutTrajectoryFilter = dict(refToPSet_ = 'pixelPairStepTrajectoryFilterInOut'),
Expand Down
5 changes: 5 additions & 0 deletions RecoTracker/IterativeTracking/python/TobTecStep_cff.py
Expand Up @@ -6,6 +6,9 @@
from Configuration.ProcessModifiers.trackdnn_cff import trackdnn
from RecoTracker.IterativeTracking.dnnQualityCuts import qualityCutDictionary

# for no-loopers
from Configuration.ProcessModifiers.trackingNoLoopers_cff import trackingNoLoopers

#######################################################################
# Very large impact parameter tracking using TOB + TEC ring 5 seeding #
#######################################################################
Expand Down Expand Up @@ -251,6 +254,8 @@
maxDPhiForLooperReconstruction = cms.double(2.0),
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingNoLoopers.toModify(tobTecStepTrajectoryBuilder,
maxPtForLooperReconstruction = 0.0)
# Important note for LowPU: in RunI_TobTecStep the
# inOutTrajectoryFilter parameter is spelled as
# inOutTrajectoryFilterName, and I suspect it has no effect there. I
Expand Down