File indexing completed on 2023-03-17 11:25:37
0001 import FWCore.ParameterSet.Config as cms
0002
0003 def _commonCustomizeForInefficiency(process):
0004
0005 if hasattr(process,'mix') and hasattr(process.mix,'digitizers') and hasattr(process.mix.digitizers,'pixel'):
0006 if hasattr(process.mix.digitizers.pixel,'PSPDigitizerAlgorithm'):
0007 print("# Activating Bias Rail Inefficiency in macro-pixels")
0008 process.mix.digitizers.pixel.PSPDigitizerAlgorithm.BiasRailInefficiencyFlag = cms.int32(1)
0009
0010 if hasattr(process.mix.digitizers.pixel,'PSSDigitizerAlgorithm'):
0011 print("# Activating bad strip simulation for s-sensors in PS modules from DB")
0012 process.mix.digitizers.pixel.PSSDigitizerAlgorithm.KillModules = cms.bool(True)
0013 process.mix.digitizers.pixel.PSSDigitizerAlgorithm.DeadModules_DB = cms.bool(True)
0014
0015 if hasattr(process.mix.digitizers.pixel,'SSDigitizerAlgorithm'):
0016 print("# Activating bad strip simulation for SS modules from DB")
0017 process.mix.digitizers.pixel.SSDigitizerAlgorithm.KillModules = cms.bool(True)
0018 process.mix.digitizers.pixel.SSDigitizerAlgorithm.DeadModules_DB = cms.bool(True)
0019
0020
0021 if hasattr(process, "mixData") and hasattr(process.mixData, "workers") and hasattr(process.mixData.workers, "pixel"):
0022 if hasattr(process.mixData.workers.pixel,'PSPDigitizerAlgorithm'):
0023 print("# Activating Bias Rail Inefficiency in macro-pixels")
0024 process.mixData.workers.pixel.PSPDigitizerAlgorithm.BiasRailInefficiencyFlag = cms.int32(1)
0025
0026 if hasattr(process.mixData.workers.pixel,'PSSDigitizerAlgorithm'):
0027 print("# Activating bad strip simulation for s-sensors in PS modules from DB")
0028 process.mixData.workers.pixel.PSSDigitizerAlgorithm.KillModules = cms.bool(True)
0029 process.mixData.workers.pixel.PSSDigitizerAlgorithm.DeadModules_DB = cms.bool(True)
0030
0031 if hasattr(process.mixData.workers.pixel,'SSDigitizerAlgorithm'):
0032 print("# Activating bad strip simulation for SS modules from DB")
0033 process.mixData.workers.pixel.SSDigitizerAlgorithm.KillModules = cms.bool(True)
0034 process.mixData.workers.pixel.SSDigitizerAlgorithm.DeadModules_DB = cms.bool(True)
0035
0036 return process
0037
0038
0039
0040
0041 def customizeSiPhase2OTInefficiencyOnePercent(process):
0042
0043 _commonCustomizeForInefficiency(process)
0044
0045 if hasattr(process,'SiPhase2OTFakeBadStripsESSource') :
0046 print("# Adding 1% of randomly generated bad strips")
0047 process.SiPhase2OTFakeBadStripsESSource.badComponentsFraction = 0.01
0048
0049 return process
0050
0051
0052
0053
0054 def customizeSiPhase2OTInefficiencyFivePercent(process):
0055
0056 _commonCustomizeForInefficiency(process)
0057
0058 if hasattr(process,'SiPhase2OTFakeBadStripsESSource') :
0059 print("# Adding 5% of randomly generated bad strips")
0060 process.SiPhase2OTFakeBadStripsESSource.badComponentsFraction = 0.05
0061
0062 return process
0063
0064
0065
0066
0067 def customizeSiPhase2OTInefficiencyTenPercent(process):
0068
0069 _commonCustomizeForInefficiency(process)
0070
0071 if hasattr(process,'SiPhase2OTFakeBadStripsESSource') :
0072 print("# Adding 10% of randomly generated bad strips")
0073 process.SiPhase2OTFakeBadStripsESSource.badComponentsFraction = 0.1
0074
0075 return process