CMS 3D CMS Logo

Functions

phase2TkCustomsBE Namespace Reference

Functions

def customise
def customise_condOverRides
def customise_Digi
def customise_DigiToRaw
def customise_RawToDigi
def customise_Reco
def l1EventContent

Function Documentation

def phase2TkCustomsBE::customise (   process)

Definition at line 3 of file phase2TkCustomsBE.py.

00004                       :
00005     if hasattr(process,'DigiToRaw'):
00006         process=customise_DigiToRaw(process)
00007     if hasattr(process,'RawToDigi'):
00008         process=customise_RawToDigi(process)
00009     if hasattr(process,'reconstruction'):
00010         process=customise_Reco(process)
00011     if hasattr(process,'digitisation_step'):
00012         process=customise_Digi(process)
00013     if hasattr(process,'dqmoffline_step'):
00014         process=customise_DQM(process)
00015     if hasattr(process,'dqmHarvesting'):
00016         process=customise_harvesting(process)
00017     if hasattr(process,'validation_step'):
00018         process=customise_Validation(process)
00019     process=customise_condOverRides(process)
00020     
00021     return process

def phase2TkCustomsBE::customise_condOverRides (   process)

Definition at line 196 of file phase2TkCustomsBE.py.

00197                                     :
00198     process.load('SLHCUpgradeSimulations.Geometry.fakeConditions_BarrelEndcap_cff')
00199     process.trackerNumberingSLHCGeometry.layerNumberPXB = cms.uint32(20)
00200     process.trackerTopologyConstants.pxb_layerStartBit = cms.uint32(20)
00201     process.trackerTopologyConstants.pxb_ladderStartBit = cms.uint32(12)
00202     process.trackerTopologyConstants.pxb_moduleStartBit = cms.uint32(2)
00203     process.trackerTopologyConstants.pxb_layerMask = cms.uint32(15)
00204     process.trackerTopologyConstants.pxb_ladderMask = cms.uint32(255)
00205     process.trackerTopologyConstants.pxb_moduleMask = cms.uint32(1023)
00206     process.trackerTopologyConstants.pxf_diskStartBit = cms.uint32(18)
00207     process.trackerTopologyConstants.pxf_bladeStartBit = cms.uint32(12)
00208     process.trackerTopologyConstants.pxf_panelStartBit = cms.uint32(10)
00209     process.trackerTopologyConstants.pxf_moduleMask = cms.uint32(255)
00210     return process
00211 

def phase2TkCustomsBE::customise_Digi (   process)

Definition at line 22 of file phase2TkCustomsBE.py.

00023                            :
00024     process.mix.digitizers.pixel.MissCalibrate = False
00025     process.mix.digitizers.pixel.LorentzAngle_DB = False
00026     process.mix.digitizers.pixel.killModules = False
00027     process.mix.digitizers.pixel.useDB = False
00028     process.mix.digitizers.pixel.DeadModules_DB = False
00029     process.mix.digitizers.pixel.NumPixelBarrel = cms.int32(10)
00030     process.mix.digitizers.pixel.NumPixelEndcap = cms.int32(10)
00031     process.mix.digitizers.pixel.ThresholdInElectrons_FPix = cms.double(2000.0)
00032     process.mix.digitizers.pixel.ThresholdInElectrons_BPix = cms.double(2000.0)
00033     process.mix.digitizers.pixel.ThresholdInElectrons_BPix_L1 = cms.double(2000.0)
00034     process.mix.digitizers.pixel.thePixelColEfficiency_BPix4 = cms.double(0.999)
00035     process.mix.digitizers.pixel.thePixelEfficiency_BPix4 = cms.double(0.999)
00036     process.mix.digitizers.pixel.thePixelChipEfficiency_BPix4 = cms.double(0.999)
00037     process.mix.digitizers.pixel.thePixelColEfficiency_FPix3 = cms.double(0.999)
00038     process.mix.digitizers.pixel.thePixelEfficiency_FPix3 = cms.double(0.999)
00039     process.mix.digitizers.pixel.thePixelChipEfficiency_FPix3 = cms.double(0.999)
00040     process.mix.digitizers.pixel.AddPixelInefficiencyFromPython = cms.bool(False)
00041     process.mix.digitizers.strip.ROUList = cms.vstring("g4SimHitsTrackerHitsPixelBarrelLowTof",
00042                          'g4SimHitsTrackerHitsPixelEndcapLowTof')
00043     process.digitisation_step.remove(process.simSiStripDigiSimLink)
00044     process.mergedtruth.simHitCollections.tracker = []
00045     return process
00046 

def phase2TkCustomsBE::customise_DigiToRaw (   process)

Definition at line 47 of file phase2TkCustomsBE.py.

00048                                 :
00049     process.digi2raw_step.remove(process.siPixelRawData)
00050     process.digi2raw_step.remove(process.rpcpacker)
00051     return process

def phase2TkCustomsBE::customise_RawToDigi (   process)

Definition at line 52 of file phase2TkCustomsBE.py.

00053                                 :
00054     process.raw2digi_step.remove(process.siPixelDigis)
00055     return process

def phase2TkCustomsBE::customise_Reco (   process)

Definition at line 56 of file phase2TkCustomsBE.py.

00057                            :
00058     #this may be a trimmed out process with only local reco
00059     #if so, don't use the customize stuff
00060     ## need changes to mixedtriplets step to use for imcreasing high eta efficiency
00061     process.reconstruction.remove(process.pixelLessStepSeedClusterMask)
00062     process.reconstruction.remove(process.castorreco)
00063     process.reconstruction.remove(process.CastorTowerReco)
00064     process.reconstruction.remove(process.ak7BasicJets)
00065     process.reconstruction.remove(process.ak7CastorJetID)
00066     #process.iterTracking.remove(process.PixelLessStep)
00067     #process.iterTracking.remove(process.TobTecStep)
00068     process.MixedTripletStep.remove(process.mixedTripletStepSeedsB)
00069     process.mixedTripletStepSeeds = cms.EDProducer("SeedCombiner",
00070         seedCollections = cms.VInputTag(cms.InputTag("mixedTripletStepSeedsA"))
00071     )
00072     process.load("RecoTracker.IterativeTracking.HighPtTripletStep_cff")
00073     from RecoTracker.IterativeTracking.HighPtTripletStep_cff import HighPtTripletStep
00074     process.iterTracking = cms.Sequence(process.InitialStep*
00075                             process.HighPtTripletStep*
00076                             process.LowPtTripletStep*
00077                             process.PixelPairStep*
00078                             process.DetachedTripletStep*
00079                             process.MixedTripletStep*
00080                             #process.PixelLessStep*
00081                             #process.TobTecStep*
00082                             process.earlyGeneralTracks*
00083                             process.muonSeededStep*
00084                             process.preDuplicateMergingGeneralTracks*
00085                             process.generalTracksSequence*
00086                             process.ConvStep*
00087                             process.conversionStepTracks
00088                             )
00089 
00090 
00091 
00092 
00093     process.convClusters.oldClusterRemovalInfo=cms.InputTag("mixedTripletStepClusters")
00094     process.convClusters.trajectories=cms.InputTag("mixedTripletStepTracks")
00095     process.convClusters.overrideTrkQuals= cms.InputTag("mixedTripletStep")
00096     process.mixedTripletStepSeedLayersA.layerList = cms.vstring('BPix1+BPix2+BPix3', 
00097         'BPix1+BPix2+FPix1_pos', 
00098         'BPix1+BPix2+FPix1_neg', 
00099         'BPix1+FPix1_pos+FPix2_pos', 
00100         'BPix1+FPix1_neg+FPix2_neg', 
00101         'BPix2+FPix1_pos+FPix2_pos', 
00102         'BPix2+FPix1_neg+FPix2_neg')
00103 
00104     process.earlyGeneralTracks.setsToMerge = cms.VPSet( cms.PSet( tLists=cms.vint32(0,1,2,3,4), pQual=cms.bool(True) ))
00105     process.earlyGeneralTracks.hasSelector=cms.vint32(1,1,1,1,1)
00106     process.earlyGeneralTracks.selectedTrackQuals = cms.VInputTag(
00107          cms.InputTag("initialStepSelector","initialStep"),
00108          cms.InputTag("highPtTripletStepSelector","highPtTripletStep"),
00109          cms.InputTag("lowPtTripletStepSelector","lowPtTripletStep"),
00110          cms.InputTag("pixelPairStepSelector","pixelPairStep"),
00111          cms.InputTag("mixedTripletStep")
00112     )
00113     process.earlyGeneralTracks.TrackProducers = cms.VInputTag(
00114          cms.InputTag("initialStepTracks"),
00115          cms.InputTag("highPtTripletStepTracks"),
00116          cms.InputTag("lowPtTripletStepTracks"),
00117          cms.InputTag("pixelPairStepTracks"),
00118          cms.InputTag("mixedTripletStepTracks")
00119     )
00120 
00121     process.tripletElectronSeedLayers.BPix.skipClusters=cms.InputTag('mixedTripletStepSeedClusterMask')
00122     process.tripletElectronSeedLayers.FPix.skipClusters=cms.InputTag('mixedTripletStepSeedClusterMask')
00123     process.tripletElectronClusterMask.oldClusterRemovalInfo=cms.InputTag('mixedTripletStepSeedClusterMask')
00124 
00125     process.initialStepSeedClusterMask.oldClusterRemovalInfo=cms.InputTag("mixedTripletStepClusters") 
00126     process.newCombinedSeeds.seedCollections = cms.VInputTag(cms.InputTag('initialStepSeeds'),
00127                                                              cms.InputTag("highPtTripletStepSeeds"),
00128                                                              cms.InputTag('pixelPairStepSeeds'),
00129                                                              cms.InputTag('mixedTripletStepSeeds'),
00130                                                              cms.InputTag('tripletElectronSeeds'),
00131                                                              cms.InputTag('pixelPairElectronSeeds'), 
00132                                                              cms.InputTag('stripPairElectronSeeds')  )
00133     process.stripPairElectronSeedLayers.layerList = cms.vstring('BPix4+BPix5') # Optimize later
00134     process.stripPairElectronSeedLayers.BPix = cms.PSet(
00135         HitProducer = cms.string('siPixelRecHits'),
00136         hitErrorRZ = cms.double(0.006),
00137         useErrorsFromParam = cms.bool(True),
00138         TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4PixelPairs'),
00139         skipClusters = cms.InputTag("pixelPairStepClusters"),
00140         hitErrorRPhi = cms.double(0.0027)
00141     )
00142     process.regionalCosmicTrackerSeeds.OrderedHitsFactoryPSet.LayerPSet.layerList  = cms.vstring('BPix10+BPix9')  # Optimize later
00143     process.regionalCosmicTrackerSeeds.OrderedHitsFactoryPSet.LayerPSet.BPix = cms.PSet(
00144         HitProducer = cms.string('siPixelRecHits'),
00145         hitErrorRZ = cms.double(0.006),
00146         useErrorsFromParam = cms.bool(True),
00147         TTRHBuilder = cms.string('TTRHBuilderWithoutAngle4PixelPairs'),
00148         skipClusters = cms.InputTag("pixelPairStepClusters"),
00149         hitErrorRPhi = cms.double(0.0027)
00150     )
00151     process.pixelTracks.SeedMergerPSet = cms.PSet(
00152         layerListName = cms.string('PixelSeedMergerQuadruplets'),
00153         addRemainingTriplets = cms.bool(False),
00154         mergeTriplets = cms.bool(True),
00155         ttrhBuilderLabel = cms.string('PixelTTRHBuilderWithoutAngle')
00156         )
00157     process.initialStepSeedClusterMask.oldClusterRemovalInfo=cms.InputTag("mixedTripletStepClusters")
00158     
00159     # Need this line to stop error about missing siPixelDigis.
00160     process.MeasurementTracker.inactivePixelDetectorLabels = cms.VInputTag()
00161     process.load("SLHCUpgradeSimulations.Geometry.recoFromSimDigis_cff")
00162     # Use with latest pixel geometry. Only used for seeds, so we can use the Phase1Tk file.
00163     # We will need to turn it off for any steps that use the outer pixels as seeds.
00164     process.ClusterShapeHitFilterESProducer.PixelShapeFile = cms.string('RecoPixelVertexing/PixelLowPtUtilities/data/pixelShape_Phase1Tk.par')
00165     # Now make sure we us CPE Generic
00166     process.mergedDuplicateTracks.TTRHBuilder  = 'WithTrackAngle'
00167     process.ctfWithMaterialTracks.TTRHBuilder = 'WithTrackAngle'
00168     process.PixelCPEGenericESProducer.UseErrorsFromTemplates = cms.bool(False)
00169     process.PixelCPEGenericESProducer.TruncatePixelCharge = cms.bool(False)
00170     process.PixelCPEGenericESProducer.LoadTemplatesFromDB = cms.bool(False)
00171     process.PixelCPEGenericESProducer.Upgrade = cms.bool(True)
00172     process.PixelCPEGenericESProducer.IrradiationBiasCorrection = False
00173     process.PixelCPEGenericESProducer.DoCosmics = False
00174     process.siPixelRecHits.CPE = cms.string('PixelCPEGeneric')
00175     #the quadruplet merger configuration     
00176     process.load("RecoPixelVertexing.PixelTriplets.quadrupletseedmerging_cff")
00177     process.pixelseedmergerlayers.BPix.TTRHBuilder = cms.string("PixelTTRHBuilderWithoutAngle" )
00178     process.pixelseedmergerlayers.BPix.HitProducer = cms.string("siPixelRecHits" )
00179     process.pixelseedmergerlayers.FPix.TTRHBuilder = cms.string("PixelTTRHBuilderWithoutAngle" )
00180     process.pixelseedmergerlayers.FPix.HitProducer = cms.string("siPixelRecHits" )
00181 
00182     process.highPtTripletStepTracks.TTRHBuilder=cms.string('WithTrackAngle')
00183     process.detachedTripletStepTracks.TTRHBuilder=cms.string('WithTrackAngle')
00184     process.initialStepTracks.TTRHBuilder=cms.string('WithTrackAngle')
00185     process.pixelPairStepTracks.TTRHBuilder=cms.string('WithTrackAngle')
00186     process.lowPtTripletStepTracks.TTRHBuilder=cms.string('WithTrackAngle')
00187     process.convStepTracks.TTRHBuilder=cms.string('WithTrackAngle')
00188     process.mixedTripletStepTracks.TTRHBuilder=cms.string('WithTrackAngle')
00189     process.muonSeededSeedsInOut.TrackerRecHitBuilder = cms.string('WithTrackAngle')
00190     process.muonSeededTracksInOut.TTRHBuilder = cms.string('WithTrackAngle')
00191     process.muons1stStep.TrackerKinkFinderParameters.TrackerRecHitBuilder=cms.string('WithTrackAngle')
00192     process.regionalCosmicTracks.TTRHBuilder=cms.string('WithTrackAngle')
00193     process.cosmicsVetoTracksRaw.TTRHBuilder=cms.string('WithTrackAngle')
00194 
00195     return process

def phase2TkCustomsBE::l1EventContent (   process)

Definition at line 212 of file phase2TkCustomsBE.py.

00213                            :
00214     #extend the event content
00215 
00216     alist=['RAWSIM','FEVTDEBUG','FEVTDEBUGHLT','GENRAW','RAWSIMHLT','FEVT']
00217     for a in alist:
00218         b=a+'output'
00219         if hasattr(process,b):
00220             getattr(process,b).outputCommands.append('keep PSimHits_g4SimHits_*_*')
00221             getattr(process,b).outputCommands.append('keep SimTracks_g4SimHits_*_*')
00222             getattr(process,b).outputCommands.append('keep SimVertexs_g4SimHits_*_*')
00223             getattr(process,b).outputCommands.append('keep *_simSiPixelDigis_*_*')
00224             getattr(process,b).outputCommands.append('keep *_genParticles_*_*')
00225             getattr(process,b).outputCommands.append('keep *_L1TkBeams_*_*')
00226             getattr(process,b).outputCommands.append('keep *_L1TkClustersFromPixelDigis_*_*')
00227             getattr(process,b).outputCommands.append('keep *_L1TkClustersFromSimHits_*_*')
00228             getattr(process,b).outputCommands.append('keep *_L1TkStubsFromPixelDigis_*_*')
00229             getattr(process,b).outputCommands.append('keep *_L1TkStubsFromSimHits_*_*')
00230             getattr(process,b).outputCommands.append('keep *_siPixelRecHits_*_*')
00231             #drop some bigger collections we don't think we need
00232             getattr(process,b).outputCommands.append('drop PSimHits_g4SimHits_EcalHitsEB_*')
00233             getattr(process,b).outputCommands.append('drop PSimHits_g4SimHits_EcalHitsEE_*')
00234             getattr(process,b).outputCommands.append('drop *_L1TkStubsFromSimHits_StubsFail_*')
00235     return process
00236