Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:03:38

0001 import FWCore.ParameterSet.Config as cms
0002 
0003 def customiseCommon(process):
0004     
0005     #####################################################################################################
0006     ####
0007     ####  Top level replaces for handling strange scenarios of early collisions
0008     ####
0009 
0010     ## TRACKING:
0011     process.newSeedFromTriplets.OrderedHitsFactoryPSet.GeneratorPSet.maxElement = cms.uint32(100000)
0012     process.newSeedFromPairs.OrderedHitsFactoryPSet.maxElement = cms.uint32(100000)
0013     process.secTriplets.OrderedHitsFactoryPSet.GeneratorPSet.maxElement = cms.uint32(100000)
0014     process.thTripletsA.OrderedHitsFactoryPSet.GeneratorPSet.maxElement = cms.uint32(100000)
0015     process.thTripletsB.OrderedHitsFactoryPSet.GeneratorPSet.maxElement = cms.uint32(100000)
0016     process.fourthPLSeeds.OrderedHitsFactoryPSet.maxElement = cms.uint32(100000)
0017     process.fifthSeeds.OrderedHitsFactoryPSet.maxElement = cms.uint32(100000)
0018     
0019     ###### FIXES TRIPLETS FOR LARGE BS DISPLACEMENT ######
0020 
0021     ### prevent bias in pixel vertex
0022     process.pixelVertices.useBeamConstraint = False
0023     
0024     ###
0025     ###  end of top level replacements
0026     ###
0027     ###############################################################################################
0028 
0029     return (process)
0030 
0031 
0032 ##############################################################################
0033 def customisePPData(process):
0034     process= customiseCommon(process)
0035 
0036     ## particle flow HF cleaning
0037     process.particleFlowRecHitHCAL.LongShortFibre_Cut = 30.
0038     process.particleFlowRecHitHCAL.ApplyPulseDPG = True
0039 
0040     ## HF cleaning for data only
0041     process.hcalRecAlgos.SeverityLevels[3].RecHitFlags.remove("HFDigiTime")
0042     process.hcalRecAlgos.SeverityLevels[4].RecHitFlags.append("HFDigiTime")
0043 
0044     ##beam-halo-id for data only
0045     process.CSCHaloData.ExpectedBX = cms.int32(3)
0046 
0047     ## hcal hit flagging
0048     process.hfreco.PETstat.flagsToSkip  = 2
0049     process.hfreco.S8S1stat.flagsToSkip = 18
0050     process.hfreco.S9S1stat.flagsToSkip = 26
0051     
0052     return process
0053 
0054 
0055 ##############################################################################
0056 def customisePPMC(process):
0057     process=customiseCommon(process)
0058     
0059     return process
0060 
0061 ##############################################################################
0062 def customiseCosmicData(process):
0063 
0064     return process
0065 
0066 ##############################################################################
0067 def customiseCosmicMC(process):
0068     
0069     return process
0070         
0071 ##############################################################################
0072 def customiseVALSKIM(process):
0073     process= customisePPData(process)
0074     process.reconstruction.remove(process.lumiProducer)
0075     return process
0076                 
0077 ##############################################################################
0078 def customiseExpress(process):
0079     process= customisePPData(process)
0080 
0081     import RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi
0082     process.offlineBeamSpot = RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi.onlineBeamSpotProducer.clone()
0083     
0084     return process
0085 
0086 ##############################################################################
0087 def customisePrompt(process):
0088     process= customisePPData(process)
0089 
0090     import RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi
0091     process.offlineBeamSpot = RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi.onlineBeamSpotProducer.clone()
0092     
0093     return process
0094 
0095 ##############################################################################
0096 ##############################################################################
0097 
0098 def customiseCommonHI(process):
0099     
0100     ###############################################################################################
0101     ####
0102     ####  Top level replaces for handling strange scenarios of early HI collisions
0103     ####
0104 
0105     ## Offline Silicon Tracker Zero Suppression
0106     process.siStripZeroSuppression.Algorithms.PedestalSubtractionFedMode = cms.bool(False)
0107     process.siStripZeroSuppression.Algorithms.CommonModeNoiseSubtractionMode = cms.string("IteratedMedian")
0108     process.siStripZeroSuppression.doAPVRestore = cms.bool(True)
0109     process.siStripZeroSuppression.storeCM = cms.bool(True)
0110 
0111     ## Fixes to protect against large BS displacements
0112     process.hiPixel3ProtoTracks.RegionFactoryPSet.RegionPSet.originRadius = 0.2
0113     process.hiPixel3ProtoTracks.RegionFactoryPSet.RegionPSet.fixedError = 0.5
0114     process.hiSelectedProtoTracks.maxD0Significance = 100
0115     process.hiPixelAdaptiveVertex.TkFilterParameters.maxD0Significance = 100
0116     process.hiPixelAdaptiveVertex.useBeamConstraint = False
0117     process.hiPixelAdaptiveVertex.PVSelParameters.maxDistanceToBeam = 1.0
0118 
0119     ###
0120     ###  end of top level replacements
0121     ###
0122     ###############################################################################################
0123 
0124     return process
0125 
0126 ##############################################################################
0127 def customiseExpressHI(process):
0128     process= customiseCommonHI(process)
0129 
0130     import RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi
0131     process.offlineBeamSpot = RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi.onlineBeamSpotProducer.clone()
0132 
0133     # keep some debugging content for zero suppression
0134     process.siStripZeroSuppression.produceRawDigis = cms.bool(True)
0135     process.siStripZeroSuppression.produceCalculatedBaseline = cms.bool(True)
0136     
0137     return process
0138 
0139 ##############################################################################
0140 def customisePromptHI(process):
0141     process= customiseCommonHI(process)
0142 
0143     import RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi
0144     process.offlineBeamSpot = RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi.onlineBeamSpotProducer.clone()
0145     
0146     return process
0147 
0148 ##############################################################################
0149 def customiseAlcaOnlyPromptHI(process):
0150     process= customiseCommonHI(process)
0151 
0152     import RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi
0153     process.offlineBeamSpot = RecoVertex.BeamSpotProducer.BeamSpotOnline_cfi.onlineBeamSpotProducer.clone()
0154 
0155     import HLTrigger.HLTfilters.hltHighLevel_cfi
0156     process.hltCentralityVeto = HLTrigger.HLTfilters.hltHighLevel_cfi.hltHighLevel.clone(
0157         HLTPaths = cms.vstring('HLT_HICentralityVeto'),
0158         throw = cms.bool(False)
0159     )
0160 
0161     for path in process.paths:
0162         getattr(process,path)._seq = process.hltCentralityVeto * getattr(process,path)._seq
0163     
0164     return process
0165 
0166 ##############################################################################