Skip to content

Commit 0b35058

Browse files
authored
Merge pull request #46888 from cms-trackeralign/HLT_TkAl_HGComb
Introduce High Granularity Tracker Alignment Prompt Calibration Loop for HLT alignment conditions
2 parents 87f3f24 + 00c34cb commit 0b35058

15 files changed

+782
-0
lines changed
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+
OutALCARECOPromptCalibProdSiPixelAliHLTHGC_noDrop = cms.PSet(
4+
SelectEvents = cms.untracked.PSet(
5+
SelectEvents = cms.vstring('pathALCARECOPromptCalibProdSiPixelAliHLTHGMinBias','pathALCARECOPromptCalibProdSiPixelAliHLTHGDiMu')
6+
),
7+
outputCommands = cms.untracked.vstring('keep *_SiPixelAliMillePedeFileConverterHLTHGDimuon_*_*',
8+
'keep *_SiPixelAliMillePedeFileConverterHLTHG_*_*')
9+
)
10+
11+
OutALCARECOPromptCalibProdSiPixelAliHLTHGC=OutALCARECOPromptCalibProdSiPixelAliHLTHGC_noDrop.clone()
12+
OutALCARECOPromptCalibProdSiPixelAliHLTHGC.outputCommands.insert(0, "drop *")
Lines changed: 139 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,139 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
# ------------------------------------------------------------------------------
4+
# configure a filter to run only on the events selected by TkAlZMuMu AlcaReco
5+
from HLTrigger.HLTfilters.hltHighLevel_cfi import *
6+
ALCARECOTkAlZMuMuFilterForSiPixelAliHLT = hltHighLevel.clone(
7+
HLTPaths = ['pathALCARECOTkAlHLTTracksZMuMu'],
8+
throw = True, ## dont throw on unknown path names,
9+
TriggerResultsTag = "TriggerResults::RECO"
10+
)
11+
12+
from Alignment.CommonAlignmentProducer.ALCARECOPromptCalibProdSiPixelAliHLT_cff import *
13+
from Alignment.CommonAlignmentProducer.LSNumberFilter_cfi import *
14+
15+
16+
17+
# Ingredient: AlignmentTrackSelector
18+
# track selector for HighPurity tracks
19+
#-- AlignmentTrackSelector
20+
SiPixelAliLooseSelectorHLTHGDimuon = SiPixelAliLooseSelectorHLT.clone(
21+
src = 'ALCARECOTkAlHLTTracksZMuMu',
22+
etaMax = 3.0,
23+
etaMin = -3.0,
24+
filter = True,
25+
pMin = 8.0,
26+
)
27+
28+
# track selection for alignment
29+
SiPixelAliTrackSelectorHLTHGDimuon = SiPixelAliTrackSelectorHLT.clone(
30+
src = 'SiPixelAliTrackFitterHLTHGDimuon',
31+
applyMultiplicityFilter = True,
32+
d0Max = 50.0,
33+
d0Min = -50.0,
34+
etaMax = 3.0,
35+
etaMin = -3.0,
36+
filter = True,
37+
maxMultiplicity = 2,
38+
minHitChargeStrip = 20.0,
39+
minHitIsolation = 0.01,
40+
minMultiplicity = 2,
41+
nHighestPt = 2,
42+
nHitMin = 10,
43+
pMin = 3.0,
44+
ptMin = 15.0,
45+
TwoBodyDecaySelector = dict(applyChargeFilter = True,
46+
applyMassrangeFilter = True,
47+
maxXMass = 95.8,
48+
minXMass = 85.8),
49+
minHitsPerSubDet = dict(inPIXEL = 1)
50+
)
51+
52+
# Ingredient: SiPixelAliTrackRefitter0
53+
# refitting
54+
SiPixelAliTrackRefitterHLTHGDimuon0 = SiPixelAliTrackRefitterHLT0.clone(
55+
src = 'SiPixelAliLooseSelectorHLTHGDimuon'
56+
)
57+
SiPixelAliTrackRefitterHLTHGDimuon1 = SiPixelAliTrackRefitterHLTHGDimuon0.clone(
58+
src = 'SiPixelAliTrackSelectorHLTHGDimuon'
59+
)
60+
61+
#-- Alignment producer
62+
SiPixelAliMilleAlignmentProducerHLTHGDimuon = SiPixelAliMilleAlignmentProducerHLT.clone(
63+
ParameterBuilder = dict(
64+
Selector = cms.PSet(
65+
alignParams = cms.vstring(
66+
"TrackerP1PXBLadder,111111",
67+
"TrackerP1PXECPanel,111111",
68+
)
69+
)
70+
),
71+
tjTkAssociationMapTag = 'SiPixelAliTrackRefitterHLTHGDimuon1',
72+
algoConfig = MillePedeAlignmentAlgorithm.clone(
73+
binaryFile = 'milleBinaryHLTHGDimuon_0.dat',
74+
treeFile = 'treeFileHLTHGDimuon.root',
75+
monitorFile = 'millePedeMonitorHLTHGDimuon.root',
76+
minNumHits = 8,
77+
skipGlobalPositionRcdCheck = True,
78+
TrajectoryFactory = cms.PSet(
79+
AllowZeroMaterial = cms.bool(False),
80+
Chi2Cut = cms.double(10000.0),
81+
ConstructTsosWithErrors = cms.bool(False),
82+
EstimatorParameters = cms.PSet(
83+
MaxIterationDifference = cms.untracked.double(0.01),
84+
MaxIterations = cms.untracked.int32(100),
85+
RobustificationConstant = cms.untracked.double(1.0),
86+
UseInvariantMass = cms.untracked.bool(True)
87+
),
88+
IncludeAPEs = cms.bool(False),
89+
MaterialEffects = cms.string('LocalGBL'),
90+
NSigmaCut = cms.double(100.0),
91+
ParticleProperties = cms.PSet(
92+
PrimaryMass = cms.double(91.1061),
93+
PrimaryWidth = cms.double(1.7678),
94+
SecondaryMass = cms.double(0.105658)
95+
),
96+
PropagationDirection = cms.string('alongMomentum'),
97+
TrajectoryFactoryName = cms.string('TwoBodyDecayTrajectoryFactory'),
98+
UseBeamSpot = cms.bool(False),
99+
UseHitWithoutDet = cms.bool(True),
100+
UseInvalidHits = cms.bool(True),
101+
UseProjectedHits = cms.bool(True),
102+
UseRefittedState = cms.bool(True)
103+
)
104+
)
105+
)
106+
107+
# Ingredient: SiPixelAliTrackerTrackHitFilter
108+
SiPixelAliTrackerTrackHitFilterHLTHGDimuon = SiPixelAliTrackerTrackHitFilterHLT.clone(
109+
src = 'SiPixelAliTrackRefitterHLTHGDimuon0',
110+
TrackAngleCut = 0.087,
111+
minimumHits = 10,
112+
usePixelQualityFlag = False
113+
)
114+
115+
# Ingredient: SiPixelAliSiPixelAliTrackFitter
116+
SiPixelAliTrackFitterHLTHGDimuon = SiPixelAliTrackFitterHLT.clone(
117+
src = 'SiPixelAliTrackerTrackHitFilterHLTHGDimuon'
118+
)
119+
120+
SiPixelAliMillePedeFileConverterHLTHGDimuon = cms.EDProducer(
121+
"MillePedeFileConverter",
122+
fileDir = cms.string(SiPixelAliMilleAlignmentProducerHLTHGDimuon.algoConfig.fileDir.value()),
123+
inputBinaryFile = cms.string(SiPixelAliMilleAlignmentProducerHLTHGDimuon.algoConfig.binaryFile.value()),
124+
fileBlobLabel = cms.string('')
125+
)
126+
127+
seqALCARECOPromptCalibProdSiPixelAliHLTHGDiMu = cms.Sequence(
128+
ALCARECOTkAlZMuMuFilterForSiPixelAliHLT*
129+
LSNumberFilter*
130+
onlineBeamSpot*
131+
SiPixelAliLooseSelectorHLTHGDimuon*
132+
SiPixelAliTrackRefitterHLTHGDimuon0*
133+
SiPixelAliTrackerTrackHitFilterHLTHGDimuon*
134+
SiPixelAliTrackFitterHLTHGDimuon*
135+
SiPixelAliTrackSelectorHLTHGDimuon*
136+
SiPixelAliTrackRefitterHLTHGDimuon1*
137+
SiPixelAliMilleAlignmentProducerHLTHGDimuon*
138+
SiPixelAliMillePedeFileConverterHLTHGDimuon
139+
)
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
import FWCore.ParameterSet.Config as cms
2+
3+
# ------------------------------------------------------------------------------
4+
# configure a filter to run only on the events selected by TkAlMinBias AlcaReco
5+
from HLTrigger.HLTfilters.hltHighLevel_cfi import *
6+
ALCARECOTkAlMinBiasFilterForSiPixelAliHLTHG = hltHighLevel.clone(
7+
HLTPaths = ['pathALCARECOTkAlHLTTracks'],
8+
throw = True, ## dont throw on unknown path names,
9+
TriggerResultsTag = "TriggerResults::RECO"
10+
)
11+
12+
from Alignment.CommonAlignmentProducer.ALCARECOPromptCalibProdSiPixelAliHLT_cff import *
13+
from Alignment.CommonAlignmentProducer.LSNumberFilter_cfi import *
14+
15+
# Ingredient: AlignmentTrackSelector
16+
# track selector for HighPurity tracks
17+
#-- AlignmentTrackSelector
18+
SiPixelAliLooseSelectorHLTHG = SiPixelAliLooseSelectorHLT.clone(
19+
src = 'ALCARECOTkAlHLTTracks',
20+
)
21+
22+
# track selection for alignment
23+
SiPixelAliTrackSelectorHLTHG = SiPixelAliTrackSelectorHLT.clone(
24+
src = 'SiPixelAliTrackFitterHLTHG'
25+
)
26+
27+
# Ingredient: SiPixelAliTrackRefitter0
28+
# refitting
29+
SiPixelAliTrackRefitterHLTHG0 = SiPixelAliTrackRefitterHLT0.clone(
30+
src = 'SiPixelAliLooseSelectorHLTHG'
31+
)
32+
SiPixelAliTrackRefitterHLTHG1 = SiPixelAliTrackRefitterHLTHG0.clone(
33+
src = 'SiPixelAliTrackSelectorHLTHG'
34+
)
35+
36+
#-- Alignment producer
37+
SiPixelAliMilleAlignmentProducerHLTHG = SiPixelAliMilleAlignmentProducerHLT.clone(
38+
ParameterBuilder = dict(
39+
Selector = cms.PSet(
40+
alignParams = cms.vstring(
41+
"TrackerP1PXBLadder,111111",
42+
"TrackerP1PXECPanel,111111",
43+
)
44+
)
45+
),
46+
tjTkAssociationMapTag = 'SiPixelAliTrackRefitterHLTHG1',
47+
algoConfig = MillePedeAlignmentAlgorithm.clone(
48+
binaryFile = 'milleBinaryHLTHG_0.dat',
49+
treeFile = 'treeFileHLTHG.root',
50+
monitorFile = 'millePedeMonitorHLTHG.root'
51+
)
52+
)
53+
54+
# Ingredient: SiPixelAliTrackerTrackHitFilter
55+
SiPixelAliTrackerTrackHitFilterHLTHG = SiPixelAliTrackerTrackHitFilterHLT.clone(
56+
src = 'SiPixelAliTrackRefitterHLTHG0',
57+
usePixelQualityFlag = False
58+
)
59+
60+
# Ingredient: SiPixelAliSiPixelAliTrackFitter
61+
SiPixelAliTrackFitterHLTHG = SiPixelAliTrackFitterHLT.clone(
62+
src = 'SiPixelAliTrackerTrackHitFilterHLTHG'
63+
)
64+
65+
SiPixelAliMillePedeFileConverterHLTHG = cms.EDProducer(
66+
"MillePedeFileConverter",
67+
fileDir = cms.string(SiPixelAliMilleAlignmentProducerHLTHG.algoConfig.fileDir.value()),
68+
inputBinaryFile = cms.string(SiPixelAliMilleAlignmentProducerHLTHG.algoConfig.binaryFile.value()),
69+
fileBlobLabel = cms.string('')
70+
)
71+
72+
seqALCARECOPromptCalibProdSiPixelAliHLTHG = cms.Sequence(
73+
ALCARECOTkAlMinBiasFilterForSiPixelAliHLTHG*
74+
LSNumberFilter*
75+
onlineBeamSpot*
76+
SiPixelAliLooseSelectorHLTHG*
77+
SiPixelAliTrackRefitterHLTHG0*
78+
SiPixelAliTrackerTrackHitFilterHLTHG*
79+
SiPixelAliTrackFitterHLTHG*
80+
SiPixelAliTrackSelectorHLTHG*
81+
SiPixelAliTrackRefitterHLTHG1*
82+
SiPixelAliMilleAlignmentProducerHLTHG*
83+
SiPixelAliMillePedeFileConverterHLTHG
84+
)

0 commit comments

Comments
 (0)