def customise_Reco(process, pileup): #use with latest pixel geometry process.ClusterShapeHitFilterESProducer.PixelShapeFile = cms.string( 'RecoPixelVertexing/PixelLowPtUtilities/data/pixelShape_Phase1Tk.par') # Need this line to stop error about missing siPixelDigis. process.MeasurementTracker.inactivePixelDetectorLabels = cms.VInputTag() # new layer list (3/4 pixel seeding) in InitialStep and pixelTracks process.pixellayertriplets.layerList = cms.vstring( 'BPix1+BPix2+BPix3', 'BPix2+BPix3+BPix4', 'BPix1+BPix3+BPix4', 'BPix1+BPix2+BPix4', 'BPix2+BPix3+FPix1_pos', 'BPix2+BPix3+FPix1_neg', 'BPix1+BPix2+FPix1_pos', 'BPix1+BPix2+FPix1_neg', 'BPix2+FPix1_pos+FPix2_pos', 'BPix2+FPix1_neg+FPix2_neg', 'BPix1+FPix1_pos+FPix2_pos', 'BPix1+FPix1_neg+FPix2_neg', 'FPix1_pos+FPix2_pos+FPix3_pos', 'FPix1_neg+FPix2_neg+FPix3_neg') # New tracking. This is really ugly because it redefines globalreco and reconstruction. # It can be removed if change one line in Configuration/StandardSequences/python/Reconstruction_cff.py # from RecoTracker_cff.py to RecoTrackerPhase1PU140_cff.py # remove all the tracking first itIndex = process.globalreco.index(process.trackingGlobalReco) grIndex = process.reconstruction.index(process.globalreco) process.reconstruction.remove(process.globalreco) process.globalreco.remove(process.iterTracking) process.globalreco.remove(process.electronSeedsSeq) process.reconstruction_fromRECO.remove(process.trackingGlobalReco) del process.iterTracking del process.ckftracks del process.ckftracks_woBH del process.ckftracks_wodEdX del process.ckftracks_plus_pixelless del process.trackingGlobalReco del process.electronSeedsSeq del process.InitialStep del process.LowPtTripletStep del process.PixelPairStep del process.DetachedTripletStep del process.MixedTripletStep del process.PixelLessStep del process.TobTecStep del process.earlyGeneralTracks del process.ConvStep del process.earlyMuons del process.muonSeededStepCore del process.muonSeededStepExtra del process.muonSeededStep del process.muonSeededStepDebug # add the correct tracking back in process.load("RecoTracker.Configuration.RecoTrackerPhase2BE_cff") process.globalreco.insert(itIndex, process.trackingGlobalReco) process.reconstruction.insert(grIndex, process.globalreco) #Note process.reconstruction_fromRECO is broken # End of new tracking configuration which can be removed if new Reconstruction is used. process.reconstruction.remove(process.castorreco) process.reconstruction.remove(process.CastorTowerReco) process.reconstruction.remove(process.ak7BasicJets) process.reconstruction.remove(process.ak7CastorJetID) #the quadruplet merger configuration process.load("RecoPixelVertexing.PixelTriplets.quadrupletseedmerging_cff") process.pixelseedmergerlayers.BPix.TTRHBuilder = cms.string( "PixelTTRHBuilderWithoutAngle") process.pixelseedmergerlayers.BPix.HitProducer = cms.string( "siPixelRecHits") process.pixelseedmergerlayers.FPix.TTRHBuilder = cms.string( "PixelTTRHBuilderWithoutAngle") process.pixelseedmergerlayers.FPix.HitProducer = cms.string( "siPixelRecHits") # Need these until pixel templates are used process.load("SLHCUpgradeSimulations.Geometry.recoFromSimDigis_cff") # PixelCPEGeneric # process.PixelCPEGenericESProducer.Upgrade = cms.bool(True) process.PixelCPEGenericESProducer.UseErrorsFromTemplates = cms.bool(False) process.PixelCPEGenericESProducer.LoadTemplatesFromDB = cms.bool(False) process.PixelCPEGenericESProducer.TruncatePixelCharge = cms.bool(False) process.PixelCPEGenericESProducer.IrradiationBiasCorrection = False process.PixelCPEGenericESProducer.DoCosmics = False # CPE for other steps process.siPixelRecHits.CPE = cms.string('PixelCPEGeneric') # Turn of template use in tracking (iterative steps handled inside their configs) process.mergedDuplicateTracks.TTRHBuilder = 'WithTrackAngle' process.ctfWithMaterialTracks.TTRHBuilder = 'WithTrackAngle' process.muonSeededSeedsInOut.TrackerRecHitBuilder = cms.string( 'WithTrackAngle') process.muonSeededTracksInOut.TTRHBuilder = cms.string('WithTrackAngle') process.muons1stStep.TrackerKinkFinderParameters.TrackerRecHitBuilder = cms.string( 'WithTrackAngle') process.regionalCosmicTracks.TTRHBuilder = cms.string('WithTrackAngle') process.cosmicsVetoTracksRaw.TTRHBuilder = cms.string('WithTrackAngle') # End of pixel template needed section process.regionalCosmicTrackerSeeds.OrderedHitsFactoryPSet.LayerPSet.layerList = cms.vstring( 'BPix10+BPix9') # Optimize later process.regionalCosmicTrackerSeeds.OrderedHitsFactoryPSet.LayerPSet.BPix = cms.PSet( HitProducer=cms.string('siPixelRecHits'), hitErrorRZ=cms.double(0.006), useErrorsFromParam=cms.bool(True), TTRHBuilder=cms.string('TTRHBuilderWithoutAngle4PixelPairs'), skipClusters=cms.InputTag("pixelPairStepClusters"), hitErrorRPhi=cms.double(0.0027)) # Make pixelTracks use quadruplets process.pixelTracks.SeedMergerPSet = cms.PSet( layerListName=cms.string('PixelSeedMergerQuadruplets'), addRemainingTriplets=cms.bool(False), mergeTriplets=cms.bool(True), ttrhBuilderLabel=cms.string('PixelTTRHBuilderWithoutAngle')) process.pixelTracks.FilterPSet.chi2 = cms.double(50.0) process.pixelTracks.FilterPSet.tipMax = cms.double(0.05) process.pixelTracks.RegionFactoryPSet.RegionPSet.originRadius = cms.double( 0.02) # Particle flow needs to know that the eta range has increased, for # when linking tracks to HF clusters process = customise_PFlow.customise_extendedTrackerBarrel(process) return process
def customise_Reco(process,pileup): #use with latest pixel geometry process.ClusterShapeHitFilterESProducer.PixelShapeFile = cms.string('RecoPixelVertexing/PixelLowPtUtilities/data/pixelShape_Phase1Tk.par') # Need this line to stop error about missing siPixelDigis. process.MeasurementTracker.inactivePixelDetectorLabels = cms.VInputTag() # new layer list (3/4 pixel seeding) in InitialStep and pixelTracks process.pixellayertriplets.layerList = cms.vstring( 'BPix1+BPix2+BPix3', 'BPix2+BPix3+BPix4', 'BPix1+BPix3+BPix4', 'BPix1+BPix2+BPix4', 'BPix2+BPix3+FPix1_pos', 'BPix2+BPix3+FPix1_neg', 'BPix1+BPix2+FPix1_pos', 'BPix1+BPix2+FPix1_neg', 'BPix2+FPix1_pos+FPix2_pos', 'BPix2+FPix1_neg+FPix2_neg', 'BPix1+FPix1_pos+FPix2_pos', 'BPix1+FPix1_neg+FPix2_neg', 'FPix1_pos+FPix2_pos+FPix3_pos', 'FPix1_neg+FPix2_neg+FPix3_neg' ) # New tracking. This is really ugly because it redefines globalreco and reconstruction. # It can be removed if change one line in Configuration/StandardSequences/python/Reconstruction_cff.py # from RecoTracker_cff.py to RecoTrackerPhase1PU140_cff.py # remove all the tracking first itIndex=process.globalreco.index(process.trackingGlobalReco) grIndex=process.reconstruction.index(process.globalreco) process.reconstruction.remove(process.globalreco) process.globalreco.remove(process.iterTracking) process.globalreco.remove(process.electronSeedsSeq) process.reconstruction_fromRECO.remove(process.trackingGlobalReco) del process.iterTracking del process.ckftracks del process.ckftracks_woBH del process.ckftracks_wodEdX del process.ckftracks_plus_pixelless del process.trackingGlobalReco del process.electronSeedsSeq del process.InitialStep del process.LowPtTripletStep del process.PixelPairStep del process.DetachedTripletStep del process.MixedTripletStep del process.PixelLessStep del process.TobTecStep del process.earlyGeneralTracks del process.ConvStep del process.earlyMuons del process.muonSeededStepCore del process.muonSeededStepExtra del process.muonSeededStep del process.muonSeededStepDebug # add the correct tracking back in process.load("RecoTracker.Configuration.RecoTrackerPhase2BE_cff") process.globalreco.insert(itIndex,process.trackingGlobalReco) process.reconstruction.insert(grIndex,process.globalreco) #Note process.reconstruction_fromRECO is broken # End of new tracking configuration which can be removed if new Reconstruction is used. process.reconstruction.remove(process.castorreco) process.reconstruction.remove(process.CastorTowerReco) process.reconstruction.remove(process.ak7BasicJets) process.reconstruction.remove(process.ak7CastorJetID) #the quadruplet merger configuration process.load("RecoPixelVertexing.PixelTriplets.quadrupletseedmerging_cff") process.pixelseedmergerlayers.BPix.TTRHBuilder = cms.string("PixelTTRHBuilderWithoutAngle" ) process.pixelseedmergerlayers.BPix.HitProducer = cms.string("siPixelRecHits" ) process.pixelseedmergerlayers.FPix.TTRHBuilder = cms.string("PixelTTRHBuilderWithoutAngle" ) process.pixelseedmergerlayers.FPix.HitProducer = cms.string("siPixelRecHits" ) # Need these until pixel templates are used process.load("SLHCUpgradeSimulations.Geometry.recoFromSimDigis_cff") # PixelCPEGeneric # process.PixelCPEGenericESProducer.Upgrade = cms.bool(True) process.PixelCPEGenericESProducer.UseErrorsFromTemplates = cms.bool(False) process.PixelCPEGenericESProducer.LoadTemplatesFromDB = cms.bool(False) process.PixelCPEGenericESProducer.TruncatePixelCharge = cms.bool(False) process.PixelCPEGenericESProducer.IrradiationBiasCorrection = False process.PixelCPEGenericESProducer.DoCosmics = False # CPE for other steps process.siPixelRecHits.CPE = cms.string('PixelCPEGeneric') # Turn of template use in tracking (iterative steps handled inside their configs) process.mergedDuplicateTracks.TTRHBuilder = 'WithTrackAngle' process.ctfWithMaterialTracks.TTRHBuilder = 'WithTrackAngle' process.muonSeededSeedsInOut.TrackerRecHitBuilder=cms.string('WithTrackAngle') process.muonSeededTracksInOut.TTRHBuilder=cms.string('WithTrackAngle') process.muons1stStep.TrackerKinkFinderParameters.TrackerRecHitBuilder=cms.string('WithTrackAngle') process.regionalCosmicTracks.TTRHBuilder=cms.string('WithTrackAngle') process.cosmicsVetoTracksRaw.TTRHBuilder=cms.string('WithTrackAngle') # End of pixel template needed section process.regionalCosmicTrackerSeeds.OrderedHitsFactoryPSet.LayerPSet.layerList = cms.vstring('BPix10+BPix9') # Optimize later process.regionalCosmicTrackerSeeds.OrderedHitsFactoryPSet.LayerPSet.BPix = cms.PSet( HitProducer = cms.string('siPixelRecHits'), hitErrorRZ = cms.double(0.006), useErrorsFromParam = cms.bool(True), TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4PixelPairs'), skipClusters = cms.InputTag("pixelPairStepClusters"), hitErrorRPhi = cms.double(0.0027) ) # Make pixelTracks use quadruplets process.pixelTracks.SeedMergerPSet = cms.PSet( layerListName = cms.string('PixelSeedMergerQuadruplets'), addRemainingTriplets = cms.bool(False), mergeTriplets = cms.bool(True), ttrhBuilderLabel = cms.string('PixelTTRHBuilderWithoutAngle') ) process.pixelTracks.FilterPSet.chi2 = cms.double(50.0) process.pixelTracks.FilterPSet.tipMax = cms.double(0.05) process.pixelTracks.RegionFactoryPSet.RegionPSet.originRadius = cms.double(0.02) # Particle flow needs to know that the eta range has increased, for # when linking tracks to HF clusters process=customise_PFlow.customise_extendedTrackerBarrel( process ) return process