FPix=dict( useErrorsFromParam=cms.bool(True), hitErrorRPhi=cms.double(0.0030), hitErrorRZ=cms.double(0.0020), TTRHBuilder='TTRHBuilderWithoutAngle4PixelPairs', )) # TrackingRegion from RecoTracker.TkTrackingRegions.globalTrackingRegionWithVertices_cff import globalTrackingRegionWithVertices as _globalTrackingRegionWithVertices pixelPairStepTrackingRegions = _globalTrackingRegionWithVertices.clone( RegionPSet=dict(ptMin=0.6, originRadius=0.015, fixedError=0.03, useMultipleScattering=True)) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(pixelPairStepTrackingRegions, RegionPSet=dict(useMultipleScattering=False)) _region_Phase1 = dict( useMultipleScattering=False, maxNVertices=5, ) trackingPhase1.toModify(pixelPairStepTrackingRegions, RegionPSet=_region_Phase1) trackingPhase2PU140.toModify(pixelPairStepTrackingRegions, RegionPSet=_region_Phase1) from Configuration.Eras.Modifier_highBetaStar_2018_cff import highBetaStar_2018 highBetaStar_2018.toModify(pixelPairStepTrackingRegions, RegionPSet=dict(ptMin=0.05, originRadius=0.2, fixedError=4.)) fastSim.toModify( pixelPairStepTrackingRegions,
from RecoTracker.TkTrackingRegions.globalTrackingRegionWithVertices_cfi import * from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(globalTrackingRegionWithVertices, RegionPSet = dict(VertexCollection = "pixelVertices")) 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 for e in [pp_on_XeXe_2017, pp_on_AA_2018]: e.toModify(globalTrackingRegionWithVertices, RegionPSet = dict( VertexCollection = "firstStepPrimaryVertices", beamSpot = "offlineBeamSpot", maxNVertices = -1, nSigmaZ = 4., precise = True, sigmaZVertex = 4., useFakeVertices = False, useFixedError = True, useFoundVertices = True, useMultipleScattering = False ) )
from RecoPixelVertexing.PixelTriplets.quadrupletseedmerging_cff import * from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU # TrackingRegion pixelTracksTrackingRegions = _globalTrackingRegionFromBeamSpot.clone() # Hit ntuplets pixelTracksHitDoublets = _hitPairEDProducer.clone( clusterCheck="", seedingLayers="PixelLayerTriplets", trackingRegions="pixelTracksTrackingRegions", maxElement=0, produceIntermediateHitDoublets=True, ) trackingLowPU.toModify(pixelTracksHitDoublets, seedingLayers="PixelLayerTripletsPreSplitting") pixelTracksHitTriplets = _pixelTripletHLTEDProducer.clone( doublets="pixelTracksHitDoublets", produceSeedingHitSets=True, SeedComparitorPSet=RecoPixelVertexing.PixelLowPtUtilities. LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone( )) trackingLowPU.toModify( pixelTracksHitTriplets, SeedComparitorPSet=dict( clusterShapeCacheSrc="siPixelClusterShapeCachePreSplitting")) pixelTracksSequence = cms.Sequence(pixelTracksTrackingRegions + pixelTracksHitDoublets + pixelTracksHitTriplets +
skipClusters = cms.InputTag('pixelLessStepClusters'), useRingSlector = cms.bool(True), TTRHBuilder = cms.string('WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTight')), minRing = cms.int32(3), maxRing = cms.int32(3) ) ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(pixelLessStepSeedLayers, layerList = [ 'TIB1+TIB2', 'TID1_pos+TID2_pos','TID2_pos+TID3_pos', 'TEC1_pos+TEC2_pos','TEC2_pos+TEC3_pos','TEC3_pos+TEC4_pos','TEC3_pos+TEC5_pos','TEC4_pos+TEC5_pos', 'TID1_neg+TID2_neg','TID2_neg+TID3_neg', 'TEC1_neg+TEC2_neg','TEC2_neg+TEC3_neg','TEC3_neg+TEC4_neg','TEC3_neg+TEC5_neg','TEC4_neg+TEC5_neg' ], TIB = dict(clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')), TID = dict(clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')), TEC = dict(clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')), MTIB = None, MTID = None, MTEC = None, ) # TrackingRegion from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpotFixedZ_cfi import globalTrackingRegionFromBeamSpotFixedZ as _globalTrackingRegionFromBeamSpotFixedZ pixelLessStepTrackingRegions = _globalTrackingRegionFromBeamSpotFixedZ.clone(RegionPSet = dict( ptMin = 0.4, originHalfLength = 12.0, originRadius = 1.0 ))
import FWCore.ParameterSet.Config as cms from RecoJets.JetProducers.ak4CaloJets_cfi import ak4CaloJets as _ak4CaloJets from RecoLocalCalo.CaloTowersCreator.calotowermaker_cfi import calotowermaker caloTowerForTrk = calotowermaker.clone(hbheInput=cms.InputTag('hbheprereco')) ak4CaloJetsForTrk = _ak4CaloJets.clone( srcPVs=cms.InputTag('firstStepPrimaryVerticesUnsorted'), src=cms.InputTag('caloTowerForTrk')) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(ak4CaloJetsForTrk, srcPVs="pixelVertices") from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify(ak4CaloJetsForTrk, srcPVs="pixelVertices") caloJetsForTrk = cms.Sequence(caloTowerForTrk * ak4CaloJetsForTrk) from Configuration.Eras.Modifier_phase2_hcal_cff import phase2_hcal phase2_hcal.toModify(caloTowerForTrk, hbheInput=cms.InputTag("hbhereco"))
FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer. clone(trackingRegions="tobTecStepTrackingRegionsPair", hitMasks=cms.InputTag("tobTecStepMasks"), seedFinderSelector=dict( layerList=tobTecStepSeedLayersPair.layerList.value()))) # Combined seeds import RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi tobTecStepSeeds = RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi.globalCombinedSeeds.clone( ) tobTecStepSeeds.seedCollections = cms.VInputTag( cms.InputTag('tobTecStepSeedsTripl'), cms.InputTag('tobTecStepSeedsPair')) # LowPU from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(tobTecStepHitDoubletsPair, seedingLayers='tobTecStepSeedLayers') trackingLowPU.toReplaceWith( tobTecStepSeeds, _seedCreatorFromRegionConsecutiveHitsEDProducer.clone( seedingHitSets="tobTecStepHitDoubletsPair", )) # QUALITY CUTS DURING TRACK BUILDING (for inwardss and outwards track building steps) import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff _tobTecStepTrajectoryFilterBase = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone( maxLostHits=0, minimumNumberOfHits=5, minPt=0.1, minHitsMinPt=3) tobTecStepTrajectoryFilter = _tobTecStepTrajectoryFilterBase.clone( seedPairPenalty=1, ) trackingLowPU.toReplaceWith( tobTecStepTrajectoryFilter, _tobTecStepTrajectoryFilterBase.clone(minimumNumberOfHits=6, )) for e in [pp_on_XeXe_2017, pp_on_AA_2018]:
import FWCore.ParameterSet.Config as cms RegionPSetWithVerticesBlock = cms.PSet(RegionPSet=cms.PSet( precise=cms.bool(True), useMultipleScattering=cms.bool(False), beamSpot=cms.InputTag("offlineBeamSpot"), useFixedError=cms.bool(True), originRadius=cms.double(0.2), sigmaZVertex=cms.double(3.0), fixedError=cms.double(0.2), VertexCollection=cms.InputTag("firstStepPrimaryVertices"), ptMin=cms.double(0.9), useFoundVertices=cms.bool(True), useFakeVertices=cms.bool(False), maxNVertices=cms.int32(-1), nSigmaZ=cms.double(4.0))) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(RegionPSetWithVerticesBlock, RegionPSet=dict(VertexCollection="pixelVertices"))
FastSimulation.Tracking.TrajectorySeedProducer_cfi.trajectorySeedProducer.clone( trackingRegions = "tobTecStepTrackingRegionsPair", hitMasks = cms.InputTag("tobTecStepMasks"), seedFinderSelector = dict(layerList = tobTecStepSeedLayersPair.layerList.value()) ) ) # Combined seeds import RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi tobTecStepSeeds = RecoTracker.TkSeedGenerator.GlobalCombinedSeeds_cfi.globalCombinedSeeds.clone() tobTecStepSeeds.seedCollections = cms.VInputTag(cms.InputTag('tobTecStepSeedsTripl'),cms.InputTag('tobTecStepSeedsPair')) # LowPU from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(tobTecStepHitDoubletsPair, seedingLayers = 'tobTecStepSeedLayers') trackingLowPU.toReplaceWith(tobTecStepSeeds, _seedCreatorFromRegionConsecutiveHitsEDProducer.clone( seedingHitSets = "tobTecStepHitDoubletsPair", )) # QUALITY CUTS DURING TRACK BUILDING (for inwardss and outwards track building steps) import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff _tobTecStepTrajectoryFilterBase = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone( maxLostHits = 0, minimumNumberOfHits = 5, minPt = 0.1, minHitsMinPt = 3 ) tobTecStepTrajectoryFilter = _tobTecStepTrajectoryFilterBase.clone( seedPairPenalty = 1,
OrderedHitsFactoryPSet=cms.PSet( ComponentName=cms.string('StandardHitTripletGenerator'), SeedingLayers=cms.InputTag('PixelLayerTriplets'), GeneratorPSet=cms.PSet(PixelTripletHLTGeneratorWithFilter)), CleanerPSet=cms.PSet( ComponentName=cms.string('PixelTrackCleanerBySharedHits'), useQuadrupletAlgo=cms.bool(False), )) _OrderedHitsFactoryPSet_LowPU_Phase1PU70 = dict( SeedingLayers="PixelLayerTripletsPreSplitting", GeneratorPSet=dict(SeedComparitorPSet=dict( clusterShapeCacheSrc="siPixelClusterShapeCachePreSplitting"))) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify( PixelTrackReconstructionBlock, OrderedHitsFactoryPSet=_OrderedHitsFactoryPSet_LowPU_Phase1PU70) from Configuration.Eras.Modifier_trackingPhase1PU70_cff import trackingPhase1PU70 trackingPhase1PU70.toModify( PixelTrackReconstructionBlock, SeedMergerPSet=cms.PSet( layerList=cms.PSet( refToPSet_=cms.string('PixelSeedMergerQuadruplets')), addRemainingTriplets=cms.bool(False), mergeTriplets=cms.bool(True), ttrhBuilderLabel=cms.string('PixelTTRHBuilderWithoutAngle')), FilterPSet=dict(chi2=50.0, tipMax=0.05), RegionFactoryPSet=dict(RegionPSet=dict(originRadius=0.02)), OrderedHitsFactoryPSet=_OrderedHitsFactoryPSet_LowPU_Phase1PU70, ) from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140
skipClusters=cms.InputTag('pixelLessStepClusters'), useRingSlector=cms.bool(True), TTRHBuilder=cms.string('WithTrackAngle'), clusterChargeCut=cms.PSet( refToPSet_=cms.string('SiStripClusterChargeCutTight')), minRing=cms.int32(3), maxRing=cms.int32(3))) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify( pixelLessStepSeedLayers, layerList=[ 'TIB1+TIB2', 'TID1_pos+TID2_pos', 'TID2_pos+TID3_pos', 'TEC1_pos+TEC2_pos', 'TEC2_pos+TEC3_pos', 'TEC3_pos+TEC4_pos', 'TEC3_pos+TEC5_pos', 'TEC4_pos+TEC5_pos', 'TID1_neg+TID2_neg', 'TID2_neg+TID3_neg', 'TEC1_neg+TEC2_neg', 'TEC2_neg+TEC3_neg', 'TEC3_neg+TEC4_neg', 'TEC3_neg+TEC5_neg', 'TEC4_neg+TEC5_neg' ], TIB=dict(clusterChargeCut=dict(refToPSet_='SiStripClusterChargeCutTiny')), TID=dict(clusterChargeCut=dict(refToPSet_='SiStripClusterChargeCutTiny')), TEC=dict(clusterChargeCut=dict(refToPSet_='SiStripClusterChargeCutTiny')), MTIB=None, MTID=None, MTEC=None, ) # SEEDS import RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff pixelLessStepSeeds = RecoTracker.TkSeedGenerator.GlobalSeedsFromTriplets_cff.globalSeedsFromTriplets.clone( ) #OrderedHitsFactory pixelLessStepSeeds.OrderedHitsFactoryPSet.SeedingLayers = 'pixelLessStepSeedLayers' pixelLessStepSeeds.OrderedHitsFactoryPSet.ComponentName = 'StandardMultiHitGenerator'
minNumberLayers = cms.uint32(3), minNumber3DLayers = cms.uint32(3), maxNumberLostLayers = cms.uint32(2), qualityBit = cms.string('tight'), ## set to '' or comment out if you dont want to set the bit keepAllTracks= cms.bool(True) ) highpurityMTS= tightMTS.clone( name= cms.string('TrkHighPurity'), preFilterName='TrkTight', res_par=cms.vdouble(0.003,0.001), qualityBit = cms.string('highPurity') ## set to '' or comment out if you dont want to set the bit ) #typical configuration is six selectors... something like this to #make cloning easier. multiTrackSelector = cms.EDProducer("MultiTrackSelector", src = cms.InputTag("generalTracks"), beamspot = cms.InputTag("offlineBeamSpot"), useVertices = cms.bool(True), useVtxError = cms.bool(False), vertices = cms.InputTag("firstStepPrimaryVertices"), trackSelectors = cms.VPSet( looseMTS, tightMTS, highpurityMTS) ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(multiTrackSelector, vertices = "pixelVertices" )
from RecoTracker.FinalTrackSelectors.TrackCutClassifier_cfi import * from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(TrackCutClassifier, vertices="pixelVertices")
"detachedTripletStep", "mixedTripletStep", "pixelLessStep", "tobTecStep" ] from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(earlyGeneralTracks, trackProducers = [ 'initialStepTracks', 'lowPtTripletStepTracks', 'pixelPairStepTracks', 'detachedTripletStepTracks', 'mixedTripletStepTracks', 'pixelLessStepTracks', 'tobTecStepTracks' ], inputClassifiers = [ "initialStepSelector", "lowPtTripletStepSelector", "pixelPairStepSelector", "detachedTripletStep", "mixedTripletStep", "pixelLessStepSelector", "tobTecStep" ] ) from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1 _forPhase1 = dict( trackProducers = [ 'initialStepTracks', 'highPtTripletStepTracks', 'jetCoreRegionalStepTracks',
), ) from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2 premix_stage2.toModify(vertexAnalysis, trackingParticleCollection = "mixData:MergedTrackTruth", trackingVertexCollection = "mixData:MergedTrackTruth", ) vertexAnalysisTrackingOnly = vertexAnalysis.clone( vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [ "firstStepPrimaryVerticesPreSplitting", "firstStepPrimaryVertices" ] ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(vertexAnalysisTrackingOnly, vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value()) from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify(vertexAnalysisTrackingOnly, vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [ "firstStepPrimaryVertices" ] ) pixelVertexAnalysisTrackingOnly = vertexAnalysis.clone( do_generic_sim_plots = False, trackAssociatorMap = "trackingParticlePixelTrackAsssociation", vertexAssociator = "PixelVertexAssociatorByPositionAndTracks", vertexRecoCollections = [ "pixelVertices", "selectedPixelVertices" ]
pixelPairStepSeeds.RegionFactoryPSet.RegionPSet.fixedError = 0.03 pixelPairStepSeeds.RegionFactoryPSet.RegionPSet.useMultipleScattering = True pixelPairStepSeeds.OrderedHitsFactoryPSet.SeedingLayers = cms.InputTag('pixelPairStepSeedLayers') pixelPairStepSeeds.SeedComparitorPSet = cms.PSet( ComponentName = cms.string('PixelClusterShapeSeedComparitor'), FilterAtHelixStage = cms.bool(True), FilterPixelHits = cms.bool(True), FilterStripHits = cms.bool(False), ClusterShapeHitFilterName = cms.string('ClusterShapeHitFilter'), ClusterShapeCacheSrc = cms.InputTag('siPixelClusterShapeCache'), ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(pixelPairStepSeeds, RegionFactoryPSet = dict(RegionPSet = dict( VertexCollection = 'pixelVertices', useMultipleScattering = False )) ) trackingPhase1PU70.toModify(pixelPairStepSeeds, RegionFactoryPSet = dict( RegionPSet = dict( ptMin = 1.2, useMultipleScattering = False, VertexCollection = "pixelVertices", ) ), ) trackingPhase2PU140.toModify(pixelPairStepSeeds, RegionFactoryPSet = dict( RegionPSet = dict( ptMin = 1.3,
TEC = cms.PSet( matchedRecHits = cms.InputTag("siStripMatchedRecHits","matchedRecHit"), useRingSlector = cms.bool(True), TTRHBuilder = cms.string('WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTight')), minRing = cms.int32(1), maxRing = cms.int32(1), skipClusters = cms.InputTag('mixedTripletStepClusters') ) ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(mixedTripletStepSeedLayersA, layerList = [ 'BPix1+BPix2+BPix3', 'BPix1+BPix2+FPix1_pos', 'BPix1+BPix2+FPix1_neg', 'BPix1+FPix1_pos+FPix2_pos', 'BPix1+FPix1_neg+FPix2_neg', 'BPix2+FPix1_pos+FPix2_pos', 'BPix2+FPix1_neg+FPix2_neg', 'FPix1_pos+FPix2_pos+TEC1_pos', 'FPix1_neg+FPix2_neg+TEC1_neg', 'FPix2_pos+TEC2_pos+TEC3_pos', 'FPix2_neg+TEC2_neg+TEC3_neg' ], TEC = dict(clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')), ) from Configuration.Eras.Modifier_highBetaStar_2018_cff import highBetaStar_2018 highBetaStar_2018.toModify(mixedTripletStepSeedLayersA, layerList = [ 'BPix1+BPix2+BPix3', 'BPix1+FPix1_pos+FPix2_pos','BPix1+FPix1_neg+FPix2_neg', 'BPix2+FPix1_pos+FPix2_pos','BPix2+FPix1_neg+FPix2_neg', 'BPix1+BPix2+FPix1_pos', 'BPix1+BPix2+FPix1_neg', 'BPix1+BPix2+FPix2_pos', 'BPix1+BPix2+FPix2_neg' ] )
originHalfLength = cms.double(12.0) ), ComponentName = cms.string('GlobalRegionProducerFromBeamSpot') ), SeedCreatorPSet = cms.PSet( ComponentName = cms.string('SeedForPhotonConversion1Leg'), SeedMomentumForBOFF = cms.double(5.0), propagator = cms.string('PropagatorWithMaterial'), TTRHBuilder = cms.string('WithTrackAngle') ) ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(photonConvTrajSeedFromSingleLeg, OrderedHitsFactoryPSet = dict(maxElement = 10000), ClusterCheckPSet = dict( MaxNumberOfCosmicClusters = 150000, MaxNumberOfPixelClusters = 20000, cut = "strip < 150000 && pixel < 20000 && (strip < 20000 + 7* pixel)" ) ) from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify(photonConvTrajSeedFromSingleLeg, ClusterCheckPSet = dict( MaxNumberOfCosmicClusters = 1000000, MaxNumberOfPixelClusters = 100000, cut = None ), OrderedHitsFactoryPSet = dict(maxElement = 100000), RegionFactoryPSet = dict(RegionPSet = dict(ptMin = 0.3)), )
from RecoPixelVertexing.PixelTriplets.pixelTripletLargeTipEDProducerDefault_cfi import pixelTripletLargeTipEDProducerDefault as _pixelTripletLargeTipEDProducerDefault pixelTripletLargeTipEDProducer = _pixelTripletLargeTipEDProducerDefault.clone() from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU from Configuration.Eras.Modifier_trackingPhase1PU70_cff import trackingPhase1PU70 from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingLowPU.toModify(pixelTripletLargeTipEDProducer, maxElement=100000) trackingPhase1PU70.toModify(pixelTripletLargeTipEDProducer, maxElement=0) trackingPhase2PU140.toModify(pixelTripletLargeTipEDProducer, maxElement=0) from Configuration.Eras.Modifier_peripheralPbPb_cff import peripheralPbPb peripheralPbPb.toModify(pixelTripletLargeTipEDProducer, maxElement=1000000)
trackingPhase1PU70.toModify(initialStepSeeds, RegionFactoryPSet = dict(RegionPSet = dict(ptMin = 0.7)), SeedMergerPSet = _SeedMergerPSet ) from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify(initialStepSeeds, ClusterCheckPSet = dict(doClusterCheck = cms.bool(False)), OrderedHitsFactoryPSet = dict(GeneratorPSet = dict(maxElement = 0)), RegionFactoryPSet = dict(RegionPSet = dict(ptMin = 0.8)), SeedCreatorPSet = dict(magneticField = '', propagator = 'PropagatorWithMaterial'), SeedMergerPSet = _SeedMergerPSet ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(initialStepSeeds, OrderedHitsFactoryPSet = dict(GeneratorPSet = dict(maxElement = 100000))) # building import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff _initialStepTrajectoryFilterBase = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone( minimumNumberOfHits = 3, minPt = 0.2, ) initialStepTrajectoryFilterBase = _initialStepTrajectoryFilterBase.clone( maxCCCLostHits = 0, minGoodStripCharge = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutLoose')) ) from Configuration.Eras.Modifier_tracker_apv_vfp30_2016_cff import tracker_apv_vfp30_2016 _tracker_apv_vfp30_2016.toModify(initialStepTrajectoryFilterBase, maxCCCLostHits = 2) initialStepTrajectoryFilterInOut = initialStepTrajectoryFilterBase.clone( minimumNumberOfHits = 4,
clusterChargeCut = dict(refToPSet_ = "SiStripClusterChargeCutTiny") ) # TRACK BUILDING import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi detachedTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone( MeasurementTrackerName = '', trajectoryFilter = cms.PSet(refToPSet_ = cms.string('detachedTripletStepTrajectoryFilter')), maxCand = 3, alwaysUseInvalidHits = True, estimator = cms.string('detachedTripletStepChi2Est'), maxDPhiForLooperReconstruction = cms.double(2.0), maxPtForLooperReconstruction = cms.double(0.7) ) trackingLowPU.toModify(detachedTripletStepTrajectoryBuilder, maxCand = 2, alwaysUseInvalidHits = False, ) # MAKING OF TRACK CANDIDATES import RecoTracker.CkfPattern.CkfTrackCandidates_cfi detachedTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone( src = cms.InputTag('detachedTripletStepSeeds'), clustersToSkip = cms.InputTag('detachedTripletStepClusters'), ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput numHitsForSeedCleaner = cms.int32(50), onlyPixelHitsForSeedCleaner = cms.bool(True), TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('detachedTripletStepTrajectoryBuilder')), doSeedingRegionRebuilding = True, useHitsSplitting = True )
# TrackingRegion pixelTracksTrackingRegions = _globalTrackingRegionFromBeamSpot.clone() trackingPhase1PU70.toModify(pixelTracksTrackingRegions, RegionPSet = dict(originRadius = 0.02)) trackingPhase2PU140.toModify(pixelTracksTrackingRegions, RegionPSet = dict(originRadius = 0.02)) # Hit ntuplets pixelTracksHitDoublets = _hitPairEDProducer.clone( clusterCheck = "", seedingLayers = "PixelLayerTriplets", trackingRegions = "pixelTracksTrackingRegions", maxElement = 0, produceIntermediateHitDoublets = True, ) _seedingLayers = dict(seedingLayers = "PixelLayerTripletsPreSplitting") trackingLowPU.toModify(pixelTracksHitDoublets, **_seedingLayers) trackingPhase1PU70.toModify(pixelTracksHitDoublets, **_seedingLayers) trackingPhase2PU140.toModify(pixelTracksHitDoublets, **_seedingLayers) pixelTracksHitTriplets = _pixelTripletHLTEDProducer.clone( doublets = "pixelTracksHitDoublets", produceSeedingHitSets = True, SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone() ) _SeedComparitorPSet = dict(SeedComparitorPSet = dict(clusterShapeCacheSrc = "siPixelClusterShapeCachePreSplitting")) trackingLowPU.toModify(pixelTracksHitTriplets, **_SeedComparitorPSet) trackingPhase1PU70.toModify(pixelTracksHitTriplets, **_SeedComparitorPSet) trackingPhase2PU140.toModify(pixelTracksHitTriplets, maxElement=0, **_SeedComparitorPSet) pixelTracksHitQuadruplets = _pixelQuadrupletMergerEDProducer.clone( triplets = "pixelTracksHitTriplets",
clusterChargeCut=dict(refToPSet_="SiStripClusterChargeCutTiny")) trackingPhase2PU140.toModify( initialStepChi2Est, clusterChargeCut=dict(refToPSet_='SiStripClusterChargeCutNone'), ) import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi initialStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone( trajectoryFilter=cms.PSet( refToPSet_=cms.string('initialStepTrajectoryFilter')), alwaysUseInvalidHits=True, maxCand=3, estimator=cms.string('initialStepChi2Est'), maxDPhiForLooperReconstruction=cms.double(2.0), maxPtForLooperReconstruction=cms.double(0.7)) trackingLowPU.toModify(initialStepTrajectoryBuilder, maxCand=5) trackingPhase1.toModify( initialStepTrajectoryBuilder, minNrOfHitsForRebuild=1, keepOriginalIfRebuildFails=True, ) trackingPhase2PU140.toModify( initialStepTrajectoryBuilder, minNrOfHitsForRebuild=1, keepOriginalIfRebuildFails=True, ) import RecoTracker.CkfPattern.CkfTrackCandidates_cfi initialStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone( src=cms.InputTag('initialStepSeeds'), ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput
hitErrorRZ = cms.double(0.0036), hitErrorRPhi = cms.double(0.0051), TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4PixelPairs'), HitProducer = cms.string('siPixelRecHits'), useErrorsFromParam = cms.bool(True), skipClusters = cms.InputTag('convClusters'), ) ) ) photonConvTrajSeedFromSingleLeg.TrackRefitter = cms.InputTag('generalTracks') photonConvTrajSeedFromSingleLeg.primaryVerticesTag = cms.InputTag('firstStepPrimaryVertices') #photonConvTrajSeedFromQuadruplets.TrackRefitter = cms.InputTag('generalTracks') #photonConvTrajSeedFromQuadruplets.primaryVerticesTag = cms.InputTag('pixelVertices') from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(photonConvTrajSeedFromSingleLeg, primaryVerticesTag = "pixelVertices") from Configuration.Eras.Modifier_pp_on_XeXe_2017_cff import pp_on_XeXe_2017 pp_on_XeXe_2017.toModify(photonConvTrajSeedFromSingleLeg, RegionFactoryPSet = dict(RegionPSet = dict(ptMin = 999999.0, originRadius = 0, originHalfLength = 0 )) ) # TRACKER DATA CONTROL # QUALITY CUTS DURING TRACK BUILDING import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff convCkfTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone( maxLostHits = 1,
clusterChargeCut = dict(refToPSet_ = "SiStripClusterChargeCutTiny") ) # TRACK BUILDING import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi detachedTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone( MeasurementTrackerName = '', trajectoryFilter = cms.PSet(refToPSet_ = cms.string('detachedTripletStepTrajectoryFilter')), maxCand = 3, alwaysUseInvalidHits = True, estimator = cms.string('detachedTripletStepChi2Est'), maxDPhiForLooperReconstruction = cms.double(2.0), maxPtForLooperReconstruction = cms.double(0.7) ) trackingLowPU.toModify(detachedTripletStepTrajectoryBuilder, maxCand = 2, alwaysUseInvalidHits = False, ) # MAKING OF TRACK CANDIDATES import RecoTracker.CkfPattern.CkfTrackCandidates_cfi detachedTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone( src = cms.InputTag('detachedTripletStepSeeds'), clustersToSkip = cms.InputTag('detachedTripletStepClusters'), ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput numHitsForSeedCleaner = cms.int32(50), onlyPixelHitsForSeedCleaner = cms.bool(True), TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('detachedTripletStepTrajectoryBuilder')), doSeedingRegionRebuilding = True, useHitsSplitting = True )
minNumberLayers=cms.uint32(3), minNumber3DLayers=cms.uint32(3), maxNumberLostLayers=cms.uint32(2), qualityBit=cms.string( 'tight'), ## set to '' or comment out if you dont want to set the bit keepAllTracks=cms.bool(True)) highpurityMTS = tightMTS.clone( name=cms.string('TrkHighPurity'), preFilterName='TrkTight', res_par=cms.vdouble(0.003, 0.001), qualityBit=cms.string( 'highPurity' ) ## set to '' or comment out if you dont want to set the bit ) #typical configuration is six selectors... something like this to #make cloning easier. multiTrackSelector = cms.EDProducer( "MultiTrackSelector", src=cms.InputTag("generalTracks"), beamspot=cms.InputTag("offlineBeamSpot"), useVertices=cms.bool(True), useVtxError=cms.bool(False), vertices=cms.InputTag("firstStepPrimaryVertices"), trackSelectors=cms.VPSet(looseMTS, tightMTS, highpurityMTS)) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(multiTrackSelector, vertices="pixelVertices") from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify(multiTrackSelector, vertices="pixelVertices")
hitErrorRPhi = cms.double(0.0030), hitErrorRZ = cms.double(0.0020), TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4PixelPairs'), ) ) # TrackingRegion from RecoTracker.TkTrackingRegions.globalTrackingRegionWithVertices_cff import globalTrackingRegionWithVertices as _globalTrackingRegionWithVertices pixelPairStepTrackingRegions = _globalTrackingRegionWithVertices.clone(RegionPSet = dict( ptMin = 0.6, originRadius = 0.015, fixedError = 0.03, useMultipleScattering = True, )) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(pixelPairStepTrackingRegions, RegionPSet=dict(useMultipleScattering=False)) _region_Phase1 = dict( useMultipleScattering = False, maxNVertices = 5, ) trackingPhase1.toModify(pixelPairStepTrackingRegions, RegionPSet=_region_Phase1) trackingPhase1QuadProp.toModify(pixelPairStepTrackingRegions, RegionPSet=_region_Phase1) trackingPhase2PU140.toModify(pixelPairStepTrackingRegions, RegionPSet=dict(ptMin = 0.6, useMultipleScattering=False)) # SEEDS from RecoTracker.TkHitPairs.hitPairEDProducer_cfi import hitPairEDProducer as _hitPairEDProducer pixelPairStepHitDoublets = _hitPairEDProducer.clone( seedingLayers = "pixelPairStepSeedLayers", trackingRegions = "pixelPairStepTrackingRegions", produceSeedingHitSets = True, )
clusterChargeCut = dict(refToPSet_ = "SiStripClusterChargeCutTiny") ) # TRACK BUILDING import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi lowPtTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone( MeasurementTrackerName = '', trajectoryFilter = cms.PSet(refToPSet_ = cms.string('lowPtTripletStepTrajectoryFilter')), maxCand = 4, estimator = cms.string('lowPtTripletStepChi2Est'), maxDPhiForLooperReconstruction = cms.double(2.0), # 0.63 GeV is the maximum pT for a charged particle to loop within the 1.1m radius # of the outermost Tracker barrel layer (with B=3.8T) maxPtForLooperReconstruction = cms.double(0.7) ) trackingLowPU.toModify(lowPtTripletStepTrajectoryBuilder, maxCand = 3) trackingPhase2PU140.toModify(lowPtTripletStepTrajectoryBuilder, inOutTrajectoryFilter = dict(refToPSet_ = "lowPtTripletStepTrajectoryFilterInOut"), useSameTrajFilter = False, maxCand = 3, ) # MAKING OF TRACK CANDIDATES import RecoTracker.CkfPattern.CkfTrackCandidates_cfi lowPtTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone( src = cms.InputTag('lowPtTripletStepSeeds'), ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput numHitsForSeedCleaner = cms.int32(50), onlyPixelHitsForSeedCleaner = cms.bool(True), TrajectoryBuilderPSet = cms.PSet(refToPSet_ = cms.string('lowPtTripletStepTrajectoryBuilder')),
Debug = cms.untracked.bool(False), Apply3DFit = cms.untracked.bool(True), VertexCollection = cms.untracked.InputTag('offlinePrimaryVertices'), #WriteAscii = cms.untracked.bool(True), #AsciiFileName = cms.untracked.string('PVFit.txt'), maxNrStoredVertices = cms.untracked.uint32(10000), minNrVerticesForFit = cms.untracked.uint32(50), minVertexNdf = cms.untracked.double(10.), maxVertexNormChi2 = cms.untracked.double(10.), minVertexNTracks = cms.untracked.uint32(0), minVertexMeanWeight = cms.untracked.double(0.5), maxVertexR = cms.untracked.double(2), maxVertexZ = cms.untracked.double(10), errorScale = cms.untracked.double(0.9), nSigmaCut = cms.untracked.double(5.), FitPerBunchCrossing = cms.untracked.bool(False), useOnlyFirstPV = cms.untracked.bool(False), minSumPt = cms.untracked.double(0.) ), ) # This customization is needed in the trackingLowPU era to be able to # compute the beamspot also in the cases in which the pixel detector # is not included in data-taking, like it was the case for "Quiet # Beam" collisions on 2016 with run 269207. from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(AlcaBeamMonitor, BeamFitter = dict(MaximumImpactParameter = 5.0, MinimumInputTracks = 50))
import FWCore.ParameterSet.Config as cms from RecoJets.JetProducers.ak4CaloJets_cfi import ak4CaloJets from RecoLocalCalo.CaloTowersCreator.calotowermaker_cfi import calotowermaker caloTowerForTrk = calotowermaker.clone(hbheInput=cms.InputTag('hbheprereco')) ak4CaloJetsForTrk = ak4CaloJets.clone(srcPVs = cms.InputTag('firstStepPrimaryVertices'), src= cms.InputTag('caloTowerForTrk')) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(ak4CaloJetsForTrk, srcPVs = "pixelVertices" ) from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify(ak4CaloJetsForTrk, srcPVs = "pixelVertices" ) caloJetsForTrk = cms.Sequence(caloTowerForTrk*ak4CaloJetsForTrk) from Configuration.Eras.Modifier_phase2_hcal_cff import phase2_hcal phase2_hcal.toModify( caloTowerForTrk, hbheInput = cms.InputTag("hbhereco") )
MinimumInputTracks=cms.untracked.int32(150), deltaSignificanceCut=cms.untracked.double(10)), PVFitter=cms.PSet( Debug=cms.untracked.bool(False), Apply3DFit=cms.untracked.bool(True), VertexCollection=cms.untracked.InputTag('offlinePrimaryVertices'), #WriteAscii = cms.untracked.bool(True), #AsciiFileName = cms.untracked.string('PVFit.txt'), maxNrStoredVertices=cms.untracked.uint32(10000), minNrVerticesForFit=cms.untracked.uint32(50), minVertexNdf=cms.untracked.double(10.), maxVertexNormChi2=cms.untracked.double(10.), minVertexNTracks=cms.untracked.uint32(0), minVertexMeanWeight=cms.untracked.double(0.5), maxVertexR=cms.untracked.double(2), maxVertexZ=cms.untracked.double(10), errorScale=cms.untracked.double(0.9), nSigmaCut=cms.untracked.double(5.), FitPerBunchCrossing=cms.untracked.bool(False)), ) # This customization is needed in the trackingLowPU era to be able to # compute the beamspot also in the cases in which the pixel detector # is not included in data-taking, like it was the case for "Quiet # Beam" collisions on 2016 with run 269207. from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(AlcaBeamMonitor, BeamFitter=dict(MaximumImpactParameter=5.0, MinimumInputTracks=50))
from RecoPixelVertexing.PixelTriplets.quadrupletseedmerging_cff import * from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU # TrackingRegion pixelTracksTrackingRegions = _globalTrackingRegionFromBeamSpot.clone() # Hit ntuplets pixelTracksHitDoublets = _hitPairEDProducer.clone( clusterCheck = "", seedingLayers = "PixelLayerTriplets", trackingRegions = "pixelTracksTrackingRegions", maxElement = 0, produceIntermediateHitDoublets = True, ) trackingLowPU.toModify(pixelTracksHitDoublets, seedingLayers = "PixelLayerTripletsPreSplitting") pixelTracksHitTriplets = _pixelTripletHLTEDProducer.clone( doublets = "pixelTracksHitDoublets", produceSeedingHitSets = True, SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone() ) trackingLowPU.toModify(pixelTracksHitTriplets, SeedComparitorPSet = dict(clusterShapeCacheSrc = "siPixelClusterShapeCachePreSplitting")) pixelTracksSequence = cms.Sequence( pixelTracksTrackingRegions + pixelTracksHitDoublets + pixelTracksHitTriplets + pixelFitterByHelixProjections + pixelTrackFilterByKinematics + pixelTracks
from RecoTracker.TkTrackingRegions.globalTrackingRegionWithVertices_cfi import * from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(globalTrackingRegionWithVertices, RegionPSet=dict(VertexCollection="pixelVertices"))
# TrackingRegion pixelTracksTrackingRegions = _globalTrackingRegionFromBeamSpot.clone() trackingPhase1PU70.toModify(pixelTracksTrackingRegions, RegionPSet = dict(originRadius = 0.02)) trackingPhase2PU140.toModify(pixelTracksTrackingRegions, RegionPSet = dict(originRadius = 0.02)) # Hit ntuplets pixelTracksHitDoublets = _hitPairEDProducer.clone( clusterCheck = "", seedingLayers = "PixelLayerTriplets", trackingRegions = "pixelTracksTrackingRegions", maxElement = 0, produceIntermediateHitDoublets = True, ) _seedingLayers = dict(seedingLayers = "PixelLayerTripletsPreSplitting") trackingLowPU.toModify(pixelTracksHitDoublets, **_seedingLayers) trackingPhase1PU70.toModify(pixelTracksHitDoublets, **_seedingLayers) trackingPhase2PU140.toModify(pixelTracksHitDoublets, **_seedingLayers) pixelTracksHitTriplets = _pixelTripletHLTEDProducer.clone( doublets = "pixelTracksHitDoublets", produceSeedingHitSets = True, SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone() ) _SeedComparitorPSet = dict(SeedComparitorPSet = dict(clusterShapeCacheSrc = "siPixelClusterShapeCachePreSplitting")) trackingLowPU.toModify(pixelTracksHitTriplets, **_SeedComparitorPSet) trackingPhase1PU70.toModify(pixelTracksHitTriplets, **_SeedComparitorPSet) trackingPhase2PU140.toModify(pixelTracksHitTriplets, maxElement=0, **_SeedComparitorPSet) pixelTracksHitQuadruplets = _pixelQuadrupletMergerEDProducer.clone( triplets = "pixelTracksHitTriplets",
import FWCore.ParameterSet.Config as cms RegionPSetWithVerticesBlock = cms.PSet( RegionPSet = cms.PSet( precise = cms.bool(True), useMultipleScattering = cms.bool(False), beamSpot = cms.InputTag("offlineBeamSpot"), useFixedError = cms.bool(True), originRadius = cms.double(0.2), sigmaZVertex = cms.double(3.0), fixedError = cms.double(0.2), VertexCollection = cms.InputTag("firstStepPrimaryVertices"), ptMin = cms.double(0.9), useFoundVertices = cms.bool(True), useFakeVertices = cms.bool(False), maxNVertices = cms.int32(-1), nSigmaZ = cms.double(4.0) ) ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(RegionPSetWithVerticesBlock, RegionPSet = dict(VertexCollection = "pixelVertices") )
maxDistanceToBeam = cms.double(1.0) ) ] ) ) # This customization is needed in the trackingLowPU era to be able to # produce vertices also in the cases in which the pixel detector is # not included in data-taking, like it was the case for "Quiet Beam" # collisions on 2016 with run 269207. from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(offlinePrimaryVertices, TkFilterParameters = dict(minPixelLayersWithHits = 0)) # higher eta cut for the phase 2 tracker from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker phase2_tracker.toModify(offlinePrimaryVertices, TkFilterParameters = dict(maxEta = 4.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 for e in [pp_on_XeXe_2017, pp_on_AA_2018]: e.toModify(offlinePrimaryVertices, TkFilterParameters = dict(maxD0Significance = 3.0), TkClusParameters = cms.PSet( algorithm = cms.string("gap"), TkGapClusParameters = cms.PSet(
TEC=cms.PSet(matchedRecHits=cms.InputTag("siStripMatchedRecHits", "matchedRecHit"), useRingSlector=cms.bool(True), TTRHBuilder=cms.string('WithTrackAngle'), clusterChargeCut=cms.PSet( refToPSet_=cms.string('SiStripClusterChargeCutTight')), minRing=cms.int32(1), maxRing=cms.int32(1), skipClusters=cms.InputTag('mixedTripletStepClusters'))) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify( mixedTripletStepSeedLayersA, layerList=[ 'BPix1+BPix2+BPix3', 'BPix1+BPix2+FPix1_pos', 'BPix1+BPix2+FPix1_neg', 'BPix1+FPix1_pos+FPix2_pos', 'BPix1+FPix1_neg+FPix2_neg', 'BPix2+FPix1_pos+FPix2_pos', 'BPix2+FPix1_neg+FPix2_neg', 'FPix1_pos+FPix2_pos+TEC1_pos', 'FPix1_neg+FPix2_neg+TEC1_neg', 'FPix2_pos+TEC2_pos+TEC3_pos', 'FPix2_neg+TEC2_neg+TEC3_neg' ], TEC=dict(clusterChargeCut=dict(refToPSet_='SiStripClusterChargeCutTiny')), ) # TrackingRegion from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpotFixedZ_cfi import globalTrackingRegionFromBeamSpotFixedZ as _globalTrackingRegionFromBeamSpotFixedZ _mixedTripletStepTrackingRegionsCommon = _globalTrackingRegionFromBeamSpotFixedZ.clone( RegionPSet=dict(ptMin=0.4, originHalfLength=15.0, originRadius=1.5)) trackingLowPU.toModify(_mixedTripletStepTrackingRegionsCommon, RegionPSet=dict(originHalfLength=10.0)) mixedTripletStepTrackingRegionsA = _mixedTripletStepTrackingRegionsCommon.clone( )
from RecoTracker.FinalTrackSelectors.TrackCutClassifier_cfi import * from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(TrackCutClassifier, vertices = "pixelVertices" ) from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify(TrackCutClassifier, vertices = "pixelVertices" )
beamSpot=cms.InputTag("offlineBeamSpot"), originRadius=cms.double(3.0), ptMin=cms.double(0.2), originHalfLength=cms.double(12.0)), ComponentName=cms.string('GlobalRegionProducerFromBeamSpot')), SeedCreatorPSet=cms.PSet( ComponentName=cms.string('SeedForPhotonConversion1Leg'), SeedMomentumForBOFF=cms.double(5.0), propagator=cms.string('PropagatorWithMaterial'), TTRHBuilder=cms.string('WithTrackAngle'))) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify( photonConvTrajSeedFromSingleLeg, OrderedHitsFactoryPSet=dict(maxElement=10000), ClusterCheckPSet=dict( MaxNumberOfCosmicClusters=150000, MaxNumberOfPixelClusters=20000, cut="strip < 150000 && pixel < 20000 && (strip < 20000 + 7* pixel)")) from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify( photonConvTrajSeedFromSingleLeg, ClusterCheckPSet=dict(MaxNumberOfCosmicClusters=1000000, MaxNumberOfPixelClusters=100000, cut=None), OrderedHitsFactoryPSet=dict(maxElement=100000), RegionFactoryPSet=dict(RegionPSet=dict(ptMin=0.3)), )
seedingLayers="pixelTracksSeedLayers", trackingRegions="pixelTracksTrackingRegions") pixelTracksHitQuadruplets = _initialStepCAHitQuadruplets.clone( doublets="pixelTracksHitDoublets", SeedComparitorPSet=dict( clusterShapeCacheSrc='siPixelClusterShapeCachePreSplitting')) # for trackingLowPU pixelTracksHitTriplets = _pixelTripletHLTEDProducer.clone( doublets="pixelTracksHitDoublets", produceSeedingHitSets=True, SeedComparitorPSet=RecoPixelVertexing.PixelLowPtUtilities. LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone( clusterShapeCacheSrc="siPixelClusterShapeCachePreSplitting")) pixelTracks = _pixelTracks.clone(SeedingHitSets="pixelTracksHitQuadruplets") trackingLowPU.toModify(pixelTracks, SeedingHitSets="pixelTracksHitTriplets") pixelTracksTask = cms.Task(pixelTracksTrackingRegions, pixelFitterByHelixProjections, pixelTrackFilterByKinematics, pixelTracksSeedLayers, pixelTracksHitDoublets, pixelTracksHitQuadruplets, pixelTracks) _pixelTracksTask_lowPU = pixelTracksTask.copy() _pixelTracksTask_lowPU.replace(pixelTracksHitQuadruplets, pixelTracksHitTriplets) trackingLowPU.toReplaceWith(pixelTracksTask, _pixelTracksTask_lowPU) pixelTracksSequence = cms.Sequence(pixelTracksTask)
), ) from Configuration.ProcessModifiers.premix_stage2_cff import premix_stage2 premix_stage2.toModify(vertexAnalysis, trackingParticleCollection = "mixData:MergedTrackTruth", trackingVertexCollection = "mixData:MergedTrackTruth", ) vertexAnalysisTrackingOnly = vertexAnalysis.clone( vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [ "firstStepPrimaryVerticesPreSplitting", "firstStepPrimaryVertices" ] ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(vertexAnalysisTrackingOnly, vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value()) from Configuration.Eras.Modifier_trackingPhase2PU140_cff import trackingPhase2PU140 trackingPhase2PU140.toModify(vertexAnalysisTrackingOnly, vertexRecoCollections = vertexAnalysis.vertexRecoCollections.value() + [ "firstStepPrimaryVertices" ] ) pixelVertexAnalysisTrackingOnly = vertexAnalysis.clone( do_generic_sim_plots = False, trackAssociatorMap = "trackingParticlePixelTrackAsssociation", vertexAssociator = "PixelVertexAssociatorByPositionAndTracks", vertexRecoCollections = [ "pixelVertices", "selectedPixelVertices" ]
maxDistanceToBeam = cms.double(1.0) ) ] ) ) # This customization is needed in the trackingLowPU era to be able to # produce vertices also in the cases in which the pixel detector is # not included in data-taking, like it was the case for "Quiet Beam" # collisions on 2016 with run 269207. from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(offlinePrimaryVertices, TkFilterParameters = dict(minPixelLayersWithHits = 0)) # higher eta cut for the phase 2 tracker from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker phase2_tracker.toModify(offlinePrimaryVertices, TkFilterParameters = dict(maxEta = 4.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 for e in [pp_on_XeXe_2017, pp_on_AA_2018]: e.toModify(offlinePrimaryVertices, TkFilterParameters = dict(maxD0Significance = 3.0), TkClusParameters = cms.PSet( algorithm = cms.string("gap"), TkGapClusParameters = cms.PSet(
skipClusters = cms.InputTag('pixelLessStepClusters'), useRingSlector = cms.bool(True), TTRHBuilder = cms.string('WithTrackAngle'), clusterChargeCut = cms.PSet(refToPSet_ = cms.string('SiStripClusterChargeCutTight')), minRing = cms.int32(3), maxRing = cms.int32(3) ) ) from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(pixelLessStepSeedLayers, layerList = [ 'TIB1+TIB2', 'TID1_pos+TID2_pos','TID2_pos+TID3_pos', 'TEC1_pos+TEC2_pos','TEC2_pos+TEC3_pos','TEC3_pos+TEC4_pos','TEC3_pos+TEC5_pos','TEC4_pos+TEC5_pos', 'TID1_neg+TID2_neg','TID2_neg+TID3_neg', 'TEC1_neg+TEC2_neg','TEC2_neg+TEC3_neg','TEC3_neg+TEC4_neg','TEC3_neg+TEC5_neg','TEC4_neg+TEC5_neg' ], TIB = dict(clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')), TID = dict(clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')), TEC = dict(clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutTiny')), MTIB = None, MTID = None, MTEC = None, ) # TrackingRegion from RecoTracker.TkTrackingRegions.globalTrackingRegionFromBeamSpotFixedZ_cfi import globalTrackingRegionFromBeamSpotFixedZ as _globalTrackingRegionFromBeamSpotFixedZ pixelLessStepTrackingRegions = _globalTrackingRegionFromBeamSpotFixedZ.clone(RegionPSet = dict( ptMin = 0.4, originHalfLength = 12.0, originRadius = 1.0 ))
"detachedTripletStep", "mixedTripletStep", "pixelLessStep", "tobTecStep" ] from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(earlyGeneralTracks, trackProducers = [ 'initialStepTracks', 'lowPtTripletStepTracks', 'pixelPairStepTracks', 'detachedTripletStepTracks', 'mixedTripletStepTracks', 'pixelLessStepTracks', 'tobTecStepTracks' ], inputClassifiers = [ "initialStepSelector", "lowPtTripletStepSelector", "pixelPairStepSelector", "detachedTripletStep", "mixedTripletStep", "pixelLessStepSelector", "tobTecStep" ] ) from Configuration.Eras.Modifier_trackingPhase1_cff import trackingPhase1 from Configuration.Eras.Modifier_trackingPhase1QuadProp_cff import trackingPhase1QuadProp _forPhase1 = dict( trackProducers = [ 'initialStepTracks', 'highPtTripletStepTracks',
FPix=cms.PSet( hitErrorRZ=cms.double(0.0036), hitErrorRPhi=cms.double(0.0051), TTRHBuilder=cms.string('TTRHBuilderWithoutAngle4PixelPairs'), HitProducer=cms.string('siPixelRecHits'), useErrorsFromParam=cms.bool(True), skipClusters=cms.InputTag('convClusters'), ))) photonConvTrajSeedFromSingleLeg.TrackRefitter = cms.InputTag('generalTracks') photonConvTrajSeedFromSingleLeg.primaryVerticesTag = cms.InputTag( 'firstStepPrimaryVertices') #photonConvTrajSeedFromQuadruplets.TrackRefitter = cms.InputTag('generalTracks') #photonConvTrajSeedFromQuadruplets.primaryVerticesTag = cms.InputTag('pixelVertices') from Configuration.Eras.Modifier_trackingLowPU_cff import trackingLowPU trackingLowPU.toModify(photonConvTrajSeedFromSingleLeg, primaryVerticesTag="pixelVertices") 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 for e in [pp_on_XeXe_2017, pp_on_AA_2018]: e.toModify(photonConvTrajSeedFromSingleLeg, RegionFactoryPSet=dict(RegionPSet=dict( ptMin=999999.0, originRadius=0, originHalfLength=0))) # TRACKER DATA CONTROL # QUALITY CUTS DURING TRACK BUILDING import TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff convCkfTrajectoryFilter = TrackingTools.TrajectoryFiltering.TrajectoryFilter_cff.CkfBaseTrajectoryFilter_block.clone( maxLostHits=1, minimumNumberOfHits=3, minPt=0.1)
) trackingPhase2PU140.toModify(initialStepChi2Est, clusterChargeCut = dict(refToPSet_ = 'SiStripClusterChargeCutNone'), ) import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi initialStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone( trajectoryFilter = cms.PSet(refToPSet_ = cms.string('initialStepTrajectoryFilter')), alwaysUseInvalidHits = True, maxCand = 3, estimator = cms.string('initialStepChi2Est'), maxDPhiForLooperReconstruction = cms.double(2.0), maxPtForLooperReconstruction = cms.double(0.7) ) trackingLowPU.toModify(initialStepTrajectoryBuilder, maxCand = 5) trackingPhase1.toModify(initialStepTrajectoryBuilder, minNrOfHitsForRebuild = 1, keepOriginalIfRebuildFails = True, ) trackingPhase2PU140.toModify(initialStepTrajectoryBuilder, minNrOfHitsForRebuild = 1, keepOriginalIfRebuildFails = True, ) import RecoTracker.CkfPattern.CkfTrackCandidates_cfi initialStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone( src = cms.InputTag('initialStepSeeds'), ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput numHitsForSeedCleaner = cms.int32(50), onlyPixelHitsForSeedCleaner = cms.bool(True),
clusterChargeCut=dict(refToPSet_="SiStripClusterChargeCutTiny")) # TRACK BUILDING import RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi lowPtTripletStepTrajectoryBuilder = RecoTracker.CkfPattern.GroupedCkfTrajectoryBuilder_cfi.GroupedCkfTrajectoryBuilder.clone( MeasurementTrackerName='', trajectoryFilter=cms.PSet( refToPSet_=cms.string('lowPtTripletStepTrajectoryFilter')), maxCand=4, estimator=cms.string('lowPtTripletStepChi2Est'), maxDPhiForLooperReconstruction=cms.double(2.0), # 0.63 GeV is the maximum pT for a charged particle to loop within the 1.1m radius # of the outermost Tracker barrel layer (with B=3.8T) maxPtForLooperReconstruction=cms.double(0.7)) trackingLowPU.toModify(lowPtTripletStepTrajectoryBuilder, maxCand=3) trackingPhase2PU140.toModify( lowPtTripletStepTrajectoryBuilder, inOutTrajectoryFilter=dict( refToPSet_="lowPtTripletStepTrajectoryFilterInOut"), useSameTrajFilter=False, maxCand=3, ) # MAKING OF TRACK CANDIDATES import RecoTracker.CkfPattern.CkfTrackCandidates_cfi lowPtTripletStepTrackCandidates = RecoTracker.CkfPattern.CkfTrackCandidates_cfi.ckfTrackCandidates.clone( src=cms.InputTag('lowPtTripletStepSeeds'), ### these two parameters are relevant only for the CachingSeedCleanerBySharedInput numHitsForSeedCleaner=cms.int32(50),
doublets = "pixelTracksHitDoublets", SeedComparitorPSet = dict(clusterShapeCacheSrc = 'siPixelClusterShapeCachePreSplitting') ) # for trackingLowPU pixelTracksHitTriplets = _pixelTripletHLTEDProducer.clone( doublets = "pixelTracksHitDoublets", produceSeedingHitSets = True, SeedComparitorPSet = RecoPixelVertexing.PixelLowPtUtilities.LowPtClusterShapeSeedComparitor_cfi.LowPtClusterShapeSeedComparitor.clone( clusterShapeCacheSrc = "siPixelClusterShapeCachePreSplitting" ) ) pixelTracks = _pixelTracks.clone( SeedingHitSets = "pixelTracksHitQuadruplets" ) trackingLowPU.toModify(pixelTracks, SeedingHitSets = "pixelTracksHitTriplets") pixelTracksSequence = cms.Sequence( pixelTracksTrackingRegions + pixelFitterByHelixProjections + pixelTrackFilterByKinematics + pixelTracksSeedLayers + pixelTracksHitDoublets + pixelTracksHitQuadruplets + pixelTracks ) _pixelTracksSequence_lowPU = pixelTracksSequence.copy() _pixelTracksSequence_lowPU.replace(pixelTracksHitQuadruplets, pixelTracksHitTriplets) trackingLowPU.toReplaceWith(pixelTracksSequence, _pixelTracksSequence_lowPU)