Skip to content

Commit 08ed70d

Browse files
committed
Addition of single iteration Patatrack and LST HLT configurations and workflows
1 parent 48600da commit 08ed70d

34 files changed

+364
-5
lines changed
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
# This modifier sets the LST (Phase-2 line segment tracking) used for track seeding
4+
# Needs to be used on top of the trackingLST modifier
5+
seedingLST = cms.Modifier()
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
# This modifier merges the initialStep and highPtTripletStep iterations
4+
# to a single iteration using Patatrack pixel tracks with >3 hits as seeds
5+
singleIterPatatrack = cms.Modifier()
6+

Configuration/PyReleaseValidation/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,9 @@ The offsets currently in use are:
7070
* 0.75: HLT phase-2 timing menu
7171
* 0.751: HLT phase-2 timing menu Alpaka variant
7272
* 0.752: HLT phase-2 timing menu ticl_v5 variant
73+
* 0.753: HLT phase-2 timing menu Alpaka, single tracking iteration variant
74+
* 0.754: HLT phase-2 timing menu Alpaka, single tracking iteration, LST building variant
75+
* 0.755: HLT phase-2 timing menu Alpaka, LST building variant
7376
* 0.78: Complete L1 workflow
7477
* 0.8: BPH Parking (Run-2)
7578
* 0.81: Running also HeavyFlavor DQM
@@ -91,7 +94,6 @@ The offsets currently in use are:
9194
* 0.633: ECAL phase2 Trigger Primitive
9295
* 0.634: ECAL phase2 Trigger Primitive + component-method based digis
9396
* 0.635: ECAL phase2 Trigger Primitive + component-method based finely-sampled waveforms
94-
* 0.75: Phase-2 HLT Timing menu
9597
* 0.91: Track DNN modifier
9698
* 0.97: Premixing stage1
9799
* 0.98: Premixing stage2

Configuration/PyReleaseValidation/python/upgradeWorkflowComponents.py

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2128,6 +2128,30 @@ def condition(self, fragment, stepList, key, hasHarvest):
21282128
'--procModifiers': 'ticl_v5'
21292129
}
21302130

2131+
upgradeWFs['HLTTiming75e33AlpakaSingleIter'] = deepcopy(upgradeWFs['HLTTiming75e33'])
2132+
upgradeWFs['HLTTiming75e33AlpakaSingleIter'].suffix = '_HLT75e33TimingAlpakaSingleIter'
2133+
upgradeWFs['HLTTiming75e33AlpakaSingleIter'].offset = 0.753
2134+
upgradeWFs['HLTTiming75e33AlpakaSingleIter'].step2 = {
2135+
'-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing',
2136+
'--procModifiers': 'alpaka,singleIterPatatrack'
2137+
}
2138+
2139+
upgradeWFs['HLTTiming75e33AlpakaSingleIterLST'] = deepcopy(upgradeWFs['HLTTiming75e33'])
2140+
upgradeWFs['HLTTiming75e33AlpakaSingleIterLST'].suffix = '_HLT75e33TimingAlpakaSingleIterLST'
2141+
upgradeWFs['HLTTiming75e33AlpakaSingleIterLST'].offset = 0.754
2142+
upgradeWFs['HLTTiming75e33AlpakaSingleIterLST'].step2 = {
2143+
'-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing',
2144+
'--procModifiers': 'alpaka,singleIterPatatrack,trackingLST'
2145+
}
2146+
2147+
upgradeWFs['HLTTiming75e33AlpakaLST'] = deepcopy(upgradeWFs['HLTTiming75e33'])
2148+
upgradeWFs['HLTTiming75e33AlpakaLST'].suffix = '_HLT75e33TimingAlpakaLST'
2149+
upgradeWFs['HLTTiming75e33AlpakaLST'].offset = 0.755
2150+
upgradeWFs['HLTTiming75e33AlpakaLST'].step2 = {
2151+
'-s':'DIGI:pdigi_valid,L1TrackTrigger,L1,L1P2GT,DIGI2RAW,HLT:75e33_timing',
2152+
'--procModifiers': 'alpaka,trackingLST'
2153+
}
2154+
21312155

21322156
class UpgradeWorkflow_HLTwDIGI75e33(UpgradeWorkflow):
21332157
def setup_(self, step, stepName, stepDict, k, properties):
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
def _addProcessModulesDevLST(process):
4+
process.hltESPModulesDevLST = cms.ESProducer('LSTModulesDevESProducer@alpaka',
5+
appendToDataLabel = cms.string(''),
6+
alpaka = cms.untracked.PSet(
7+
backend = cms.untracked.string('')
8+
)
9+
)
10+
11+
from Configuration.ProcessModifiers.trackingLST_cff import trackingLST
12+
modifyConfigurationForTrackingLSTModulesDevLST_ = trackingLST.makeProcessModifier(_addProcessModulesDevLST)
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
def _addProcessTTRHBuilderWithoutRefit(process):
4+
process.hltESPTTRHBuilderWithoutRefit = cms.ESProducer("TkTransientTrackingRecHitBuilderESProducer",
5+
ComponentName = cms.string('WithoutRefit'),
6+
ComputeCoarseLocalPositionFromDisk = cms.bool(False),
7+
Matcher = cms.string('Fake'),
8+
Phase2StripCPE = cms.string(''),
9+
PixelCPE = cms.string('Fake'),
10+
StripCPE = cms.string('Fake')
11+
)
12+
13+
from Configuration.ProcessModifiers.trackingLST_cff import trackingLST
14+
modifyConfigurationForTrackingLSTTTRHBuilderWithoutRefit_ = trackingLST.makeProcessModifier(_addProcessTTRHBuilderWithoutRefit)

HLTrigger/Configuration/python/HLT_75e33/modules/hltGeneralTracks_cfi.py

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,58 @@
2424
trackAlgoPriorityOrder = cms.string('trackAlgoPriorityOrder'),
2525
writeOnlyTrkQuals = cms.bool(False)
2626
)
27+
28+
_hltGeneralTracksSingleIterPatatrack = hltGeneralTracks.clone(
29+
TrackProducers = ["hltInitialStepTrackSelectionHighPurity"],
30+
hasSelector = [0],
31+
indivShareFrac = [1.0],
32+
selectedTrackQuals = ["hltInitialStepTrackSelectionHighPurity"],
33+
setsToMerge = [cms.PSet(
34+
pQual = cms.bool(True),
35+
tLists = cms.vint32(0)
36+
)]
37+
)
38+
39+
from Configuration.ProcessModifiers.singleIterPatatrack_cff import singleIterPatatrack
40+
singleIterPatatrack.toReplaceWith(hltGeneralTracks, _hltGeneralTracksSingleIterPatatrack)
41+
42+
_hltGeneralTracksLST = hltGeneralTracks.clone(
43+
TrackProducers = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTrackSelectionHighPuritypLSTCLST", "hltInitialStepTracksT5TCLST", "hltHighPtTripletStepTrackSelectionHighPurity"],
44+
hasSelector = [0,0,0,0],
45+
indivShareFrac = [0.1,0.1,0.1,0.1],
46+
selectedTrackQuals = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTrackSelectionHighPuritypLSTCLST", "hltInitialStepTracksT5TCLST", "hltHighPtTripletStepTrackSelectionHighPurity"],
47+
setsToMerge = [cms.PSet(
48+
pQual = cms.bool(True),
49+
tLists = cms.vint32(0,1,2,3)
50+
)]
51+
)
52+
53+
from Configuration.ProcessModifiers.trackingLST_cff import trackingLST
54+
trackingLST.toReplaceWith(hltGeneralTracks, _hltGeneralTracksLST)
55+
56+
_hltGeneralTracksLSTSingleIterPatatrack = hltGeneralTracks.clone(
57+
TrackProducers = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTrackSelectionHighPuritypLSTCLST", "hltInitialStepTracksT5TCLST"],
58+
hasSelector = [0,0,0],
59+
indivShareFrac = [0.1,0.1,0.1],
60+
selectedTrackQuals = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTrackSelectionHighPuritypLSTCLST", "hltInitialStepTracksT5TCLST"],
61+
setsToMerge = [cms.PSet(
62+
pQual = cms.bool(True),
63+
tLists = cms.vint32(0,1,2)
64+
)]
65+
)
66+
67+
(singleIterPatatrack & trackingLST).toReplaceWith(hltGeneralTracks, _hltGeneralTracksLSTSingleIterPatatrack)
68+
69+
_hltGeneralTracksLSTSeeding = hltGeneralTracks.clone(
70+
TrackProducers = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTracksT5TCLST", "hltHighPtTripletStepTrackSelectionHighPuritypLSTCLST"],
71+
hasSelector = [0,0,0],
72+
indivShareFrac = [0.1,0.1,0.1],
73+
selectedTrackQuals = ["hltInitialStepTrackSelectionHighPuritypTTCLST", "hltInitialStepTracksT5TCLST", "hltHighPtTripletStepTrackSelectionHighPuritypLSTCLST"],
74+
setsToMerge = [cms.PSet(
75+
pQual = cms.bool(True),
76+
tLists = cms.vint32(0,1,2)
77+
)]
78+
)
79+
80+
from Configuration.ProcessModifiers.seedingLST_cff import seedingLST
81+
(seedingLST & trackingLST).toReplaceWith(hltGeneralTracks, _hltGeneralTracksLSTSeeding)

HLTrigger/Configuration/python/HLT_75e33/modules/hltHighPtTripletStepClusters_cfi.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,11 @@
1212
trackClassifier = cms.InputTag("","QualityMasks"),
1313
trajectories = cms.InputTag("hltInitialStepTrackSelectionHighPurity")
1414
)
15+
16+
_hltHighPtTripletStepClustersLST = hltHighPtTripletStepClusters.clone(
17+
trajectories = "hltInitialStepSeedTracksLST"
18+
)
19+
20+
from Configuration.ProcessModifiers.trackingLST_cff import trackingLST
21+
trackingLST.toReplaceWith(hltHighPtTripletStepClusters, _hltHighPtTripletStepClustersLST)
22+
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
hltHighPtTripletStepSeedTracksLST = cms.EDProducer(
4+
"TrackFromSeedProducer",
5+
src = cms.InputTag("hltHighPtTripletStepSeeds"),
6+
beamSpot = cms.InputTag("offlineBeamSpot"),
7+
TTRHBuilder = cms.string("WithoutRefit")
8+
)
9+
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
from ..modules.hltHighPtTripletStepTrackCandidates_cfi import hltHighPtTripletStepTrackCandidates as _hltHighPtTripletStepTrackCandidates
4+
hltHighPtTripletStepTrackCandidatespLSTCLST = _hltHighPtTripletStepTrackCandidates.clone( src = "hltInitialStepTrackCandidates:pLSTSsLST" )
5+

0 commit comments

Comments
 (0)