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

drop type specs in RecoTracker/{MkFit,MeasurementDet,IterativeTracking} #30671

Merged
merged 2 commits into from
Jul 16, 2020
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.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
119 changes: 59 additions & 60 deletions RecoTracker/IterativeTracking/python/DetachedQuadStep_cff.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
###############################################

# REMOVE HITS ASSIGNED TO GOOD TRACKS FROM PREVIOUS ITERATIONS
detachedQuadStepClusters = _cfg.clusterRemoverForIter("DetachedQuadStep")
detachedQuadStepClusters = _cfg.clusterRemoverForIter('DetachedQuadStep')
for _eraName, _postfix, _era in _cfg.nonDefaultEras():
_era.toReplaceWith(detachedQuadStepClusters, _cfg.clusterRemoverForIter("DetachedQuadStep", _eraName, _postfix))
_era.toReplaceWith(detachedQuadStepClusters, _cfg.clusterRemoverForIter('DetachedQuadStep', _eraName, _postfix))

# SEEDING LAYERS
import RecoTracker.TkSeedingLayers.PixelLayerQuadruplets_cfi
Expand All @@ -24,25 +24,25 @@
# TrackingRegion
from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpotFixedZ_cfi import globalTrackingRegionFromBeamSpotFixedZ as _globalTrackingRegionFromBeamSpotFixedZ
detachedQuadStepTrackingRegions = _globalTrackingRegionFromBeamSpotFixedZ.clone(RegionPSet = dict(
ptMin = 0.3,
ptMin = 0.3,
originHalfLength = 15.0,
originRadius = 1.5
originRadius = 1.5
))
from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpot_cfi import globalTrackingRegionFromBeamSpot as _globalTrackingRegionFromBeamSpot
from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
trackingPhase2PU140.toReplaceWith(detachedQuadStepTrackingRegions, _globalTrackingRegionFromBeamSpot.clone(RegionPSet = dict(
ptMin = 0.45,
ptMin = 0.45,
originRadius = 0.9,
nSigmaZ = 5.0
nSigmaZ = 5.0
)))

from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017
from Configuration.Eras.Modifier_pp_on_AA_2018_cff import pp_on_AA_2018
from RecoTracker.TkTrackingRegions.globalTrackingRegionWithVertices_cff import globalTrackingRegionWithVertices as _globalTrackingRegionWithVertices
(pp_on_XeXe_2017 | pp_on_AA_2018).toReplaceWith(detachedQuadStepTrackingRegions,
_globalTrackingRegionWithVertices.clone(RegionPSet=dict(
fixedError = 3.75,
ptMin = 0.9,
fixedError = 3.75,
ptMin = 0.9,
originRadius = 1.5
)
)
Expand All @@ -54,55 +54,55 @@
# seeding
from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer
detachedQuadStepHitDoublets = _hitPairEDProducer.clone(
seedingLayers = "detachedQuadStepSeedLayers",
trackingRegions = "detachedQuadStepTrackingRegions",
layerPairs = [0,1,2], # layer pairs (0,1), (1,2), (2,3),
maxElement = 50000000,
seedingLayers = 'detachedQuadStepSeedLayers',
trackingRegions = 'detachedQuadStepTrackingRegions',
layerPairs = [0,1,2], # layer pairs (0,1), (1,2), (2,3),
maxElement = 50000000,
produceIntermediateHitDoublets = True,
)
from RecoPixelVertexing.PixelTriplets.caHitQuadrupletEDProducer_cfi import caHitQuadrupletEDProducer as _caHitQuadrupletEDProducer
from RecoPixelVertexing.PixelTriplets.pixelTripletLargeTipEDProducer_cfi import pixelTripletLargeTipEDProducer as _pixelTripletLargeTipEDProducer
from RecoPixelVertexing.PixelLowPtUtilities.ClusterShapeHitFilterESProducer_cfi import *
detachedQuadStepHitQuadruplets = _caHitQuadrupletEDProducer.clone(
doublets = "detachedQuadStepHitDoublets",
doublets = 'detachedQuadStepHitDoublets',
extraHitRPhitolerance = _pixelTripletLargeTipEDProducer.extraHitRPhitolerance,
maxChi2 = dict(
pt1 = 0.8, pt2 = 2,
value1 = 500, value2 = 100,
),
useBendingCorrection = True,
fitFastCircle = True,
fitFastCircle = True,
fitFastCircleChi2Cut = True,
CAThetaCut = 0.0011,
CAPhiCut = 0,
CAThetaCut = 0.0011,
CAPhiCut = 0,
)
highBetaStar_2018.toModify(detachedQuadStepHitQuadruplets,CAThetaCut = 0.0022,CAPhiCut = 0.1)

from RecoTracker.TkSeedGenerator.seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer_cff import seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer as _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer
detachedQuadStepSeeds = _seedCreatorFromRegionConsecutiveHitsTripletOnlyEDProducer.clone(
seedingHitSets = "detachedQuadStepHitQuadruplets",
seedingHitSets = 'detachedQuadStepHitQuadruplets',
SeedComparitorPSet = dict(# FIXME: is this defined in any cfi that could be imported instead of copy-paste?
ComponentName = 'PixelClusterShapeSeedComparitor',
ComponentName = 'PixelClusterShapeSeedComparitor',
FilterAtHelixStage = cms.bool(False),
FilterPixelHits = cms.bool(True),
FilterStripHits = cms.bool(False),
FilterPixelHits = cms.bool(True),
FilterStripHits = cms.bool(False),
ClusterShapeHitFilterName = cms.string('ClusterShapeHitFilter'),
ClusterShapeCacheSrc = cms.InputTag('siPixelClusterShapeCache')
ClusterShapeCacheSrc = cms.InputTag('siPixelClusterShapeCache')
),
)

#For FastSim phase1 tracking
import FastSimulation.Tracking.TrajectorySeedProducer_cfi
from FastSimulation.Tracking.SeedingMigration import _hitSetProducerToFactoryPSet
_fastSim_detachedQuadStepSeeds = FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone(
trackingRegions = "detachedQuadStepTrackingRegions",
hitMasks = cms.InputTag("detachedQuadStepMasks"),
trackingRegions = 'detachedQuadStepTrackingRegions',
hitMasks = cms.InputTag('detachedQuadStepMasks'),
seedFinderSelector = dict( CAHitQuadrupletGeneratorFactory = _hitSetProducerToFactoryPSet(detachedQuadStepHitQuadruplets).clone(
SeedComparitorPSet = dict(ComponentName = "none")),
layerList = detachedQuadStepSeedLayers.layerList.value(),
SeedComparitorPSet = dict(ComponentName = 'none')),
layerList = detachedQuadStepSeedLayers.layerList.value(),
#new parameters required for phase1 seeding
BPix = dict(TTRHBuilder = 'WithoutRefit', HitProducer = 'TrackingRecHitProducer',),
FPix = dict(TTRHBuilder = 'WithoutRefit', HitProducer = 'TrackingRecHitProducer',),
BPix = dict(TTRHBuilder = 'WithoutRefit', HitProducer = 'TrackingRecHitProducer',),
FPix = dict(TTRHBuilder = 'WithoutRefit', HitProducer = 'TrackingRecHitProducer',),
layerPairs = detachedQuadStepHitDoublets.layerPairs.value()
))
fastSim.toReplaceWith(detachedQuadStepSeeds,_fastSim_detachedQuadStepSeeds)
Expand All @@ -111,10 +111,10 @@
import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff as _TrajectoryFilter_cff
_detachedQuadStepTrajectoryFilterBase = _TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone(
minimumNumberOfHits = 3,
minPt = 0.075,
minPt = 0.075,
)
detachedQuadStepTrajectoryFilterBase = _detachedQuadStepTrajectoryFilterBase.clone(
maxCCCLostHits = 0,
maxCCCLostHits = 0,
minGoodStripCharge = dict(refToPSet_ = 'SiStripClusterChargeCutLoose')
)
trackingPhase2PU140.toReplaceWith(detachedQuadStepTrajectoryFilterBase,
Expand All @@ -135,17 +135,16 @@

import RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi
detachedQuadStepChi2Est = RecoTracker.MeasurementDet.Chi2ChargeMeasurementEstimator_cfi.Chi2ChargeMeasurementEstimator.clone(
ComponentName = 'detachedQuadStepChi2Est',
nSigma = 3.0,
MaxChi2 = 9.0,
ComponentName = 'detachedQuadStepChi2Est',
nSigma = 3.0,
MaxChi2 = 9.0,
clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTight'),
)
trackingPhase2PU140.toModify(detachedQuadStepChi2Est,
MaxChi2 = 12.0,
clusterChargeCut = dict(refToPSet_ = "SiStripClusterChargeCutNone")
MaxChi2 = 12.0,
clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutNone')
)


# TRACK BUILDING
import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi
detachedQuadStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone(
Expand All @@ -155,19 +154,19 @@
alwaysUseInvalidHits = True,
estimator = 'detachedQuadStepChi2Est',
maxDPhiForLooperReconstruction = cms.double(2.0),
maxPtForLooperReconstruction = cms.double(0.7)
maxPtForLooperReconstruction = cms.double(0.7)
)
trackingPhase2PU140.toModify(detachedQuadStepTrajectoryBuilder,
maxCand = 2,
maxCand = 2,
alwaysUseInvalidHits = False,
)

# MAKING OF TRACK CANDIDATES
from TrackingTools.TrajectoryCleaning.TrajectoryCleanerBySharedHits_cfi import trajectoryCleanerBySharedHits
detachedQuadStepTrajectoryCleanerBySharedHits = trajectoryCleanerBySharedHits.clone(
ComponentName = cms.string('detachedQuadStepTrajectoryCleanerBySharedHits'),
fractionShared = cms.double(0.13),
allowSharedFirstHit = cms.bool(True)
ComponentName = 'detachedQuadStepTrajectoryCleanerBySharedHits',
fractionShared = 0.13,
allowSharedFirstHit = True
)

import RecoTracker.CkfPattern.CkfTrackCandidates_cfi
Expand All @@ -183,50 +182,50 @@
useHitsSplitting = True
)
trackingPhase2PU140.toModify(detachedQuadStepTrackCandidates,
clustersToSkip = None,
phase2clustersToSkip = cms.InputTag("detachedQuadStepClusters")
clustersToSkip = None,
phase2clustersToSkip = cms.InputTag('detachedQuadStepClusters')
)

#For FastSim phase1 tracking
import FastSimulation.Tracking.TrackCandidateProducer_cfi
_fastSim_detachedQuadStepTrackCandidates = FastSimulation.Tracking.TrackCandidateProducer_cfi.trackCandidateProducer.clone(
src = cms.InputTag("detachedQuadStepSeeds"),
src = 'detachedQuadStepSeeds',
MinNumberOfCrossedLayers = 4,
hitMasks = cms.InputTag("detachedQuadStepMasks")
)
hitMasks = cms.InputTag('detachedQuadStepMasks')
)
fastSim.toReplaceWith(detachedQuadStepTrackCandidates,_fastSim_detachedQuadStepTrackCandidates)

# TRACK FITTING
import RecoTracker.TrackProducer.TrackProducer_cfi
detachedQuadStepTracks = RecoTracker.TrackProducer.TrackProducer_cfi.TrackProducer.clone(
AlgorithmName = 'detachedQuadStep',
src = 'detachedQuadStepTrackCandidates',
Fitter = 'FlexibleKFFittingSmoother',
src = 'detachedQuadStepTrackCandidates',
Fitter = 'FlexibleKFFittingSmoother',
)
fastSim.toModify(detachedQuadStepTracks,TTRHBuilder = 'WithoutRefit')

# TRACK SELECTION AND QUALITY FLAG SETTING.
from RecoTracker.FinalTrackSelectors.TrackMVAClassifierDetached_cfi import *
detachedQuadStep = TrackMVAClassifierDetached.clone(
mva = dict(GBRForestLabel = 'MVASelectorDetachedQuadStep_Phase1'),
src = 'detachedQuadStepTracks',
mva = dict(GBRForestLabel = 'MVASelectorDetachedQuadStep_Phase1'),
src = 'detachedQuadStepTracks',
qualityCuts = [-0.5,0.0,0.5]
)

from RecoTracker.FinalTrackSelectors.TrackLwtnnClassifier_cfi import *
from RecoTracker.FinalTrackSelectors.trackSelectionLwtnn_cfi import *
trackdnn.toReplaceWith(detachedQuadStep, TrackLwtnnClassifier.clone(
src = 'detachedQuadStepTracks',
src = 'detachedQuadStepTracks',
qualityCuts = [-0.6, 0.05, 0.7]
))

highBetaStar_2018.toModify(detachedQuadStep,qualityCuts = [-0.7,0.0,0.5])
pp_on_AA_2018.toModify(detachedQuadStep,
mva = dict(GBRForestLabel = 'HIMVASelectorDetachedQuadStep_Phase1'),
mva = dict(GBRForestLabel = 'HIMVASelectorDetachedQuadStep_Phase1'),
qualityCuts = [-0.2, 0.2, 0.5],
)

fastSim.toModify(detachedQuadStep,vertices = "firstStepPrimaryVerticesBeforeMixing")
fastSim.toModify(detachedQuadStep,vertices = 'firstStepPrimaryVerticesBeforeMixing')

# For Phase2PU140
import RecoTracker.FinalTrackSelectors.multiTrackSelector_cfi
Expand Down Expand Up @@ -316,15 +315,15 @@
from RecoTracker.FinalTrackSelectors.trackAlgoPriorityOrder_cfi import trackAlgoPriorityOrder
import RecoTracker.FinalTrackSelectors.trackListMerger_cfi
trackingPhase2PU140.toReplaceWith(detachedQuadStep, RecoTracker.FinalTrackSelectors.trackListMerger_cfi.trackListMerger.clone(
TrackProducers = cms.VInputTag(cms.InputTag('detachedQuadStepTracks'),
cms.InputTag('detachedQuadStepTracks')),
hasSelector=cms.vint32(1,1),
shareFrac = cms.double(0.09),
indivShareFrac=cms.vdouble(0.09,0.09),
selectedTrackQuals = cms.VInputTag(cms.InputTag("detachedQuadStepSelector","detachedQuadStepVtx"),
cms.InputTag("detachedQuadStepSelector","detachedQuadStepTrk")),
TrackProducers =['detachedQuadStepTracks',
'detachedQuadStepTracks'],
hasSelector =[1,1],
ShareFrac = 0.09,
indivShareFrac =[0.09,0.09],
selectedTrackQuals =['detachedQuadStepSelector:detachedQuadStepVtx',
'detachedQuadStepSelector:detachedQuadStepTrk'],
setsToMerge = cms.VPSet(cms.PSet( tLists=cms.vint32(0,1), pQual=cms.bool(True) )),
writeOnlyTrkQuals=cms.bool(True)
writeOnlyTrkQuals =True
)
)

Expand Down
Loading