Skip to content

Commit

Permalink
Switch trackingPhase1 to CA seeding
Browse files Browse the repository at this point in the history
Tuning by Felice Pantaleo.
  • Loading branch information
makortel committed Dec 8, 2016
1 parent bf671a7 commit a1bb850
Show file tree
Hide file tree
Showing 9 changed files with 138 additions and 32 deletions.
17 changes: 17 additions & 0 deletions RecoTracker/IterativeTracking/python/DetachedQuadStep_cff.py
Expand Up @@ -83,6 +83,22 @@
fitFastCircle = True,
fitFastCircleChi2Cut = True,
)
from RecoPixelVertexing.PixelTriplets.caHitQuadrupletEDProducer_cfi import caHitQuadrupletEDProducer as _caHitQuadrupletEDProducer
trackingPhase1.toModify(detachedQuadStepHitDoublets, layerPairs = [0,1,2]) # layer pairs (0,1), (1,2), (2,3)
trackingPhase1.toReplaceWith(detachedQuadStepHitQuadruplets, _caHitQuadrupletEDProducer.clone(
doublets = "detachedQuadStepHitDoublets",
extraHitRPhitolerance = detachedQuadStepHitTriplets.extraHitRPhitolerance,
maxChi2 = dict(
pt1 = 0.8, pt2 = 2,
value1 = 500, value2 = 100,
),
useBendingCorrection = True,
fitFastCircle = True,
fitFastCircleChi2Cut = True,
CAThetaCut = 0.0011,
CAPhiCut = 0,
))

from RecoPixelVertexing.PixelTriplets.pixelQuadrupletMergerEDProducer_cfi import pixelQuadrupletMergerEDProducer as _pixelQuadrupletMergerEDProducer
from RecoPixelVertexing.PixelTriplets.quadrupletseedmerging_cff import *
_detachedQuadStepHitQuadrupletsMerging = _pixelQuadrupletMergerEDProducer.clone(
Expand Down Expand Up @@ -445,6 +461,7 @@
detachedQuadStepTracks*
detachedQuadStepClassifier1*detachedQuadStepClassifier2*
detachedQuadStep)
trackingPhase1.toReplaceWith(DetachedQuadStep, DetachedQuadStep.copyAndExclude([detachedQuadStepHitTriplets]))
_DetachedQuadStep_Phase1PU70 = DetachedQuadStep.copyAndExclude([detachedQuadStepClassifier1])
_DetachedQuadStep_Phase1PU70.replace(detachedQuadStepClassifier2, detachedQuadStepSelector)
trackingPhase1PU70.toReplaceWith(DetachedQuadStep, _DetachedQuadStep_Phase1PU70)
Expand Down
16 changes: 16 additions & 0 deletions RecoTracker/IterativeTracking/python/DetachedTripletStep_cff.py
Expand Up @@ -43,6 +43,7 @@
originHalfLength = 15.0,
originRadius = 1.5
))
trackingPhase1.toModify(detachedTripletStepTrackingRegions, RegionPSet = dict(ptMin = 0.25))

# seeding
from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
Expand Down Expand Up @@ -71,6 +72,21 @@
),
)

from RecoPixelVertexing.PixelTriplets.caHitTripletEDProducer_cfi import caHitTripletEDProducer as _caHitTripletEDProducer
trackingPhase1.toModify(detachedTripletStepHitDoublets, layerPairs = [0,1]) # layer pairs (0,1), (1,2)
trackingPhase1.toReplaceWith(detachedTripletStepHitTriplets, _caHitTripletEDProducer.clone(
doublets = "detachedTripletStepHitDoublets",
extraHitRPhitolerance = detachedTripletStepHitTriplets.extraHitRPhitolerance,
maxChi2 = dict(
pt1 = 0.8, pt2 = 2,
value1 = 300 , value2 = 10,
),
useBendingCorrection = True,
CAThetaCut = 0.001,
CAPhiCut = 0,
CAHardPtCut = 0.2,
))

# QUALITY CUTS DURING TRACK BUILDING
import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff
_detachedTripletStepTrajectoryFilterBase = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
Expand Down
15 changes: 4 additions & 11 deletions RecoTracker/IterativeTracking/python/ElectronSeeds_cff.py
Expand Up @@ -250,24 +250,17 @@
cms.InputTag('stripPairElectronSeeds')
)
)
trackingPhase1.toModify(newCombinedSeeds, seedCollections = [
_seedCollections_Phase1 = [
'initialStepSeeds',
'highPtTripletStepSeeds',
'mixedTripletStepSeeds',
'pixelLessStepSeeds',
'tripletElectronSeeds',
'pixelPairElectronSeeds',
'stripPairElectronSeeds'
])
trackingPhase1QuadProp.toModify(newCombinedSeeds, seedCollections = [
'initialStepSeeds',
'highPtTripletStepSeeds',
'mixedTripletStepSeeds',
'pixelLessStepSeeds',
'tripletElectronSeeds',
'pixelPairElectronSeeds',
'stripPairElectronSeeds'
])
]
trackingPhase1.toModify(newCombinedSeeds, seedCollections = _seedCollections_Phase1)
trackingPhase1QuadProp.toModify(newCombinedSeeds, seedCollections = _seedCollections_Phase1)
trackingPhase1PU70.toModify(newCombinedSeeds, seedCollections = [
'initialStepSeeds',
'highPtTripletStepSeeds',
Expand Down
18 changes: 18 additions & 0 deletions RecoTracker/IterativeTracking/python/HighPtTripletStep_cff.py
Expand Up @@ -58,6 +58,8 @@
originRadius = 0.02,
nSigmaZ = 4.0
))
from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
trackingPhase1.toModify(highPtTripletStepTrackingRegions, RegionPSet = dict(ptMin = 0.55))
from Configuration.Eras.Modifier_trackingPhase1PU70_cff import trackingPhase1PU70
trackingPhase1PU70.toModify(highPtTripletStepTrackingRegions, RegionPSet = dict(ptMin = 0.7))
trackingPhase2PU140.toModify(highPtTripletStepTrackingRegions, RegionPSet = dict(ptMin = 0.9, originRadius = 0.03))
Expand All @@ -83,6 +85,22 @@
seedingHitSets = "highPtTripletStepHitTriplets",
)

from RecoPixelVertexing.PixelTriplets.caHitTripletEDProducer_cfi import caHitTripletEDProducer as _caHitTripletEDProducer
trackingPhase1.toModify(highPtTripletStepHitDoublets, layerPairs = [0,1]) # layer pairs (0,1), (1,2)
trackingPhase1.toReplaceWith(highPtTripletStepHitTriplets, _caHitTripletEDProducer.clone(
doublets = "highPtTripletStepHitDoublets",
extraHitRPhitolerance = highPtTripletStepHitTriplets.extraHitRPhitolerance,
SeedComparitorPSet = highPtTripletStepHitTriplets.SeedComparitorPSet,
maxChi2 = dict(
pt1 = 0.8, pt2 = 8,
value1 = 100, value2 = 6,
),
useBendingCorrection = True,
CAThetaCut = 0.004,
CAPhiCut = 0.07,
CAHardPtCut = 0.3,
))

# QUALITY CUTS DURING TRACK BUILDING
import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff as _TrajectoryFilter_cff
_highPtTripletStepTrajectoryFilterBase = _TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
Expand Down
Expand Up @@ -34,6 +34,7 @@
originRadius = 0.02,
nSigmaZ = 4.0
))
trackingPhase1.toModify(initialStepTrackingRegionsPreSplitting, RegionPSet = dict(ptMin = 0.5))

# seeding
from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
Expand All @@ -55,6 +56,7 @@
),
)
from RecoPixelVertexing.PixelTriplets.pixelQuadrupletEDProducer_cfi import pixelQuadrupletEDProducer as _pixelQuadrupletEDProducer
trackingPhase1.toModify(initialStepHitDoubletsPreSplitting, layerPairs = [0,1,2]) # layer pairs (0,1), (1,2), (2,3)
initialStepHitQuadrupletsPreSplitting = _pixelQuadrupletEDProducer.clone(
triplets = "initialStepHitTripletsPreSplitting",
extraHitRZtolerance = initialStepHitTripletsPreSplitting.extraHitRZtolerance,
Expand All @@ -78,10 +80,23 @@
initialStepSeedsPreSplitting = _seedCreatorFromRegionConsecutiveHitsEDProducer.clone(
seedingHitSets = "initialStepHitTripletsPreSplitting",
)
trackingPhase1.toModify(initialStepHitTripletsPreSplitting,
produceSeedingHitSets = False,
produceIntermediateHitTriplets = True,
)

from RecoPixelVertexing.PixelTriplets.caHitQuadrupletEDProducer_cfi import caHitQuadrupletEDProducer as _caHitQuadrupletEDProducer
trackingPhase1.toReplaceWith(initialStepHitQuadrupletsPreSplitting, _caHitQuadrupletEDProducer.clone(
doublets = "initialStepHitDoubletsPreSplitting",
extraHitRPhitolerance = initialStepHitTripletsPreSplitting.extraHitRPhitolerance,
SeedComparitorPSet = initialStepHitTripletsPreSplitting.SeedComparitorPSet,
maxChi2 = dict(
pt1 = 0.7, pt2 = 2,
value1 = 200, value2 = 50,
),
useBendingCorrection = True,
fitFastCircle = True,
fitFastCircleChi2Cut = True,
CAThetaCut = 0.0012,
CAPhiCut = 0.2,
))

trackingPhase1QuadProp.toModify(initialStepHitTripletsPreSplitting,
produceSeedingHitSets = False,
produceIntermediateHitTriplets = True,
Expand Down Expand Up @@ -209,7 +224,7 @@

_InitialStepPreSplitting_trackingPhase1 = InitialStepPreSplitting.copy()
_InitialStepPreSplitting_trackingPhase1.replace(initialStepHitTripletsPreSplitting, initialStepHitTripletsPreSplitting*initialStepHitQuadrupletsPreSplitting)
trackingPhase1.toReplaceWith(InitialStepPreSplitting, _InitialStepPreSplitting_trackingPhase1)
trackingPhase1.toReplaceWith(InitialStepPreSplitting, _InitialStepPreSplitting_trackingPhase1.copyAndExclude([initialStepHitTripletsPreSplitting]))
trackingPhase1QuadProp.toReplaceWith(InitialStepPreSplitting, _InitialStepPreSplitting_trackingPhase1)

# Although InitialStepPreSplitting is not really part of LowPU/Run1/Phase1PU70
Expand Down
33 changes: 22 additions & 11 deletions RecoTracker/IterativeTracking/python/InitialStep_cff.py
Expand Up @@ -13,13 +13,7 @@
initialStepSeedLayers = RecoTracker.TkSeedingLayers.PixelLayerTriplets_cfi.PixelLayerTriplets.clone()
from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
trackingPhase1.toModify(initialStepSeedLayers,
layerList = [
'BPix1+BPix2+BPix3',
'BPix1+BPix2+FPix1_pos',
'BPix1+BPix2+FPix1_neg',
'BPix1+FPix1_pos+FPix2_pos',
'BPix1+FPix1_neg+FPix2_neg'
]
layerList = RecoPixelVertexing.PixelTriplets.quadrupletseedmerging_cff.PixelSeedMergerQuadruplets.layerList.value()
)
from Configuration.Eras.Modifier_trackingPhase1QuadProp_cff import trackingPhase1QuadProp
trackingPhase1QuadProp.toModify(initialStepSeedLayers,
Expand All @@ -44,6 +38,7 @@
))
from Configuration.Eras.Modifier_trackingPhase1PU70_cff import trackingPhase1PU70
from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
trackingPhase1.toModify(initialStepTrackingRegions, RegionPSet = dict(ptMin = 0.5))
trackingPhase1PU70.toModify(initialStepTrackingRegions, RegionPSet = dict(ptMin = 0.7))
trackingPhase2PU140.toModify(initialStepTrackingRegions, RegionPSet = dict(ptMin = 0.8))

Expand Down Expand Up @@ -93,10 +88,27 @@
fitFastCircleChi2Cut = True,
SeedComparitorPSet = initialStepHitTriplets.SeedComparitorPSet
)
from RecoPixelVertexing.PixelTriplets.caHitQuadrupletEDProducer_cfi import caHitQuadrupletEDProducer as _caHitQuadrupletEDProducer
trackingPhase1.toModify(initialStepHitDoublets, layerPairs = [0,1,2]) # layer pairs (0,1), (1,2), (2,3)
trackingPhase1.toReplaceWith(initialStepHitQuadruplets, _caHitQuadrupletEDProducer.clone(
doublets = "initialStepHitDoublets",
extraHitRPhitolerance = initialStepHitTriplets.extraHitRPhitolerance,
SeedComparitorPSet = initialStepHitTriplets.SeedComparitorPSet,
maxChi2 = dict(
pt1 = 0.7, pt2 = 2,
value1 = 200, value2 = 50,
),
useBendingCorrection = True,
fitFastCircle = True,
fitFastCircleChi2Cut = True,
CAThetaCut = 0.0012,
CAPhiCut = 0.2,
))
trackingPhase2PU140.toModify(initialStepHitTriplets,
produceSeedingHitSets = False,
produceIntermediateHitTriplets = True,
)
trackingPhase1.toModify(initialStepSeeds, seedingHitSets = "initialStepHitQuadruplets")
trackingPhase2PU140.toModify(initialStepSeeds, seedingHitSets = "initialStepHitQuadruplets")

# temporary...
Expand Down Expand Up @@ -183,10 +195,6 @@
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingLowPU.toModify(initialStepTrajectoryBuilder, maxCand = 5)
trackingPhase1.toModify(initialStepTrajectoryBuilder,
inOutTrajectoryFilter = dict(refToPSet_ = "initialStepTrajectoryFilterInOut"),
useSameTrajFilter = False
)
trackingPhase1QuadProp.toModify(initialStepTrajectoryBuilder,
inOutTrajectoryFilter = dict(refToPSet_ = "initialStepTrajectoryFilterInOut"),
useSameTrajFilter = False
Expand Down Expand Up @@ -378,6 +386,9 @@
_InitialStep_LowPU = InitialStep.copyAndExclude([firstStepPrimaryVertices, initialStepClassifier1, initialStepClassifier2, initialStepClassifier3])
_InitialStep_LowPU.replace(initialStep, initialStepSelector)
trackingLowPU.toReplaceWith(InitialStep, _InitialStep_LowPU)
_InitialStep_Phase1 = InitialStep.copy()
_InitialStep_Phase1.replace(initialStepHitTriplets, initialStepHitQuadruplets)
trackingPhase1.toReplaceWith(InitialStep, _InitialStep_Phase1)
_InitialStep_Phase1PU70 = _InitialStep_LowPU.copy()
_InitialStep_Phase1PU70.replace(initialStepHitTriplets, initialStepHitTriplets+initialStepHitQuadruplets)
trackingPhase1PU70.toReplaceWith(InitialStep, _InitialStep_Phase1PU70)
Expand Down
19 changes: 19 additions & 0 deletions RecoTracker/IterativeTracking/python/LowPtQuadStep_cff.py
Expand Up @@ -34,6 +34,7 @@
originRadius = 0.02,
nSigmaZ = 4.0
))
trackingPhase1.toModify(lowPtQuadStepTrackingRegions, RegionPSet = dict(ptMin = 0.15))
trackingPhase2PU140.toModify(lowPtQuadStepTrackingRegions, RegionPSet = dict(ptMin = 0.35))


Expand Down Expand Up @@ -73,6 +74,23 @@
fitFastCircleChi2Cut = True,
SeedComparitorPSet = lowPtQuadStepHitTriplets.SeedComparitorPSet,
)
from RecoPixelVertexing.PixelTriplets.caHitQuadrupletEDProducer_cfi import caHitQuadrupletEDProducer as _caHitQuadrupletEDProducer
trackingPhase1.toModify(lowPtQuadStepHitDoublets, layerPairs = [0,1,2]) # layer pairs (0,1), (1,2), (2,3)
trackingPhase1.toReplaceWith(lowPtQuadStepHitQuadruplets, _caHitQuadrupletEDProducer.clone(
doublets = "lowPtQuadStepHitDoublets",
extraHitRPhitolerance = lowPtQuadStepHitTriplets.extraHitRPhitolerance,
SeedComparitorPSet = lowPtQuadStepHitTriplets.SeedComparitorPSet,
maxChi2 = dict(
pt1 = 0.7, pt2 = 2,
value1 = 1000, value2 = 150,
),
useBendingCorrection = True,
fitFastCircle = True,
fitFastCircleChi2Cut = True,
CAThetaCut = 0.0017,
CAPhiCut = 0.3,
))

from RecoPixelVertexing.PixelTriplets.pixelQuadrupletMergerEDProducer_cfi import pixelQuadrupletMergerEDProducer as _pixelQuadrupletMergerEDProducer
from RecoPixelVertexing.PixelTriplets.quadrupletseedmerging_cff import *
_lowPtQuadStepHitQuadrupletsMerging = _pixelQuadrupletMergerEDProducer.clone(
Expand Down Expand Up @@ -300,6 +318,7 @@
lowPtQuadStepTrackCandidates*
lowPtQuadStepTracks*
lowPtQuadStep)
trackingPhase1.toReplaceWith(LowPtQuadStep, LowPtQuadStep.copyAndExclude([lowPtQuadStepHitTriplets]))
_LowPtQuadStep_Phase1PU70 = LowPtQuadStep.copy()
_LowPtQuadStep_Phase1PU70.replace(lowPtQuadStep, lowPtQuadStepSelector)
trackingPhase1PU70.toReplaceWith(LowPtQuadStep, _LowPtQuadStep_Phase1PU70)
Expand Down
17 changes: 16 additions & 1 deletion RecoTracker/IterativeTracking/python/LowPtTripletStep_cff.py
Expand Up @@ -55,7 +55,7 @@
originRadius = 0.02,
nSigmaZ = 4.0
))
trackingPhase1.toModify(lowPtTripletStepTrackingRegions, RegionPSet = dict(ptMin = 0.35)) # FIXME: Phase1PU70 value, let's see if we can lower it to Run2 value (0.2)
trackingPhase1.toModify(lowPtTripletStepTrackingRegions, RegionPSet = dict(ptMin = 0.2))
trackingPhase1QuadProp.toModify(lowPtTripletStepTrackingRegions, RegionPSet = dict(ptMin = 0.35)) # FIXME: Phase1PU70 value, let's see if we can lower it to Run2 value (0.2)
trackingPhase1PU70.toModify(lowPtTripletStepTrackingRegions, RegionPSet = dict(ptMin = 0.35, originRadius = 0.015))
trackingPhase2PU140.toModify(lowPtTripletStepTrackingRegions, RegionPSet = dict(ptMin = 0.45))
Expand All @@ -81,6 +81,21 @@
seedingHitSets = "lowPtTripletStepHitTriplets",
)

from RecoPixelVertexing.PixelTriplets.caHitTripletEDProducer_cfi import caHitTripletEDProducer as _caHitTripletEDProducer
trackingPhase1.toModify(lowPtTripletStepHitDoublets, layerPairs = [0,1]) # layer pairs (0,1), (1,2)
trackingPhase1.toReplaceWith(lowPtTripletStepHitTriplets, _caHitTripletEDProducer.clone(
doublets = "lowPtTripletStepHitDoublets",
extraHitRPhitolerance = lowPtTripletStepHitTriplets.extraHitRPhitolerance,
SeedComparitorPSet = lowPtTripletStepHitTriplets.SeedComparitorPSet,
maxChi2 = dict(
pt1 = 0.8, pt2 = 2,
value1 = 70 , value2 = 8,
),
useBendingCorrection = True,
CAThetaCut = 0.002,
CAPhiCut = 0.05,
))


# QUALITY CUTS DURING TRACK BUILDING
import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff as _TrajectoryFilter_cff
Expand Down
10 changes: 6 additions & 4 deletions Validation/RecoTrack/python/trackingNtuple_cff.py
Expand Up @@ -54,15 +54,17 @@ def _filterForNtuple(lst):
return ret
_seedProducers = _filterForNtuple(_TrackValidation_cff._seedProducers)
_seedProducers_trackingPhase1 = _filterForNtuple(_TrackValidation_cff._seedProducers_trackingPhase1)
_seedProducers_trackingPhase1QuadProp = _filterForNtuple(_TrackValidation_cff._seedProducers_trackingPhase1QuadProp)

(_seedSelectors, trackingNtupleSeedSelectors) = _TrackValidation_cff._addSeedToTrackProducers(_seedProducers, globals())
(_seedSelectors_trackingPhase1, _trackingNtupleSeedSelectors_trackingPhase1) = _TrackValidation_cff._addSeedToTrackProducers(_seedProducers_trackingPhase1, globals())
from Configuration.Eras.Modifier_phase1Pixel_cff import phase1Pixel
phase1Pixel.toReplaceWith(trackingNtupleSeedSelectors, _trackingNtupleSeedSelectors_trackingPhase1)

trackingNtuple.seedTracks = _seedSelectors
(_seedSelectors_trackingPhase1QuadProp, _trackingNtupleSeedSelectors_trackingPhase1QuadProp) = _TrackValidation_cff._addSeedToTrackProducers(_seedProducers_trackingPhase1QuadProp, globals())
from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1
from Configuration.Eras.Modifier_trackingPhase1QuadProp_cff import trackingPhase1QuadProp
trackingPhase1.toReplaceWith(trackingNtupleSeedSelectors, _trackingNtupleSeedSelectors_trackingPhase1)
trackingPhase1QuadProp.toReplaceWith(trackingNtupleSeedSelectors, _trackingNtupleSeedSelectors_trackingPhase1QuadProp)

trackingNtuple.seedTracks = _seedSelectors
trackingPhase1.toModify(trackingNtuple, seedTracks = _seedSelectors_trackingPhase1)
trackingPhase1QuadProp.toModify(trackingNtuple, seedTracks = _seedSelectors_trackingPhase1)

Expand Down

0 comments on commit a1bb850

Please sign in to comment.