File indexing completed on 2024-12-01 23:40:40
0001 import FWCore.ParameterSet.Config as cms
0002
0003 """
0004 implement here different variations for testing purposes
0005 """
0006 def customHGCdigitizer(process, version='simple0', debug=False):
0007
0008
0009 if version.find('femodel')>=0:
0010 print('Adapting for FE model')
0011 process.mix.digitizers.hgceeDigitizer.digiCfg.feCfg.fwVersion = cms.uint32(1)
0012 process.mix.digitizers.hgceeDigitizer.digiCfg.feCfg.shaperN = cms.double(8.02)
0013 process.mix.digitizers.hgceeDigitizer.digiCfg.feCfg.shaperTau = cms.double(3.26)
0014 process.mix.digitizers.hgchefrontDigitizer.digiCfg.feCfg.fwVersion = cms.uint32(1)
0015 process.mix.digitizers.hgchefrontDigitizer.digiCfg.feCfg.shaperN = cms.double(8.02)
0016 process.mix.digitizers.hgchefrontDigitizer.digiCfg.feCfg.shaperTau = cms.double(3.26)
0017 process.mix.digitizers.hgchebackDigitizer.digiCfg.feCfg.fwVersion = cms.uint32(0)
0018 process.mix.digitizers.hgchebackDigitizer.digiCfg.feCfg.shaperN = cms.double(1)
0019 process.mix.digitizers.hgchebackDigitizer.digiCfg.feCfg.shaperTau = cms.double(10)
0020 process.mix.digitizers.hfnoseDigitizer.digiCfg.feCfg.fwVersion = cms.uint32(1)
0021 process.mix.digitizers.hfnoseDigitizer.digiCfg.feCfg.shaperN = cms.double(8.02)
0022 process.mix.digitizers.hfnoseDigitizer.digiCfg.feCfg.shaperTau = cms.double(3.26)
0023 if version=='femodel-v0':
0024 process.mix.digitizers.hgceeDigitizer.digiCfg.feCfg.tdcTransferDelay = cms.double(0)
0025 process.mix.digitizers.hgchefrontDigitizer.digiCfg.feCfg.tdcTransferDelay = cms.double(0)
0026 process.mix.digitizers.hfnoseDigitizer.digiCfg.feCfg.tdcTransferDelay = cms.double(0)
0027 if version=='femodel-v1':
0028 process.mix.digitizers.hgceeDigitizer.digiCfg.feCfg.tdcTransferDelay = cms.double(12.5)
0029 process.mix.digitizers.hgchefrontDigitizer.digiCfg.feCfg.tdcTransferDelay = cms.double(12.5)
0030 process.mix.digitizers.hfnoseDigitizer.digiCfg.feCfg.tdcTransferDelay = cms.double(12.5)
0031 if version=='femodel-v2':
0032 process.mix.digitizers.hgceeDigitizer.digiCfg.feCfg.tdcTransferDelay = cms.double(25)
0033 process.mix.digitizers.hgchefrontDigitizer.digiCfg.feCfg.tdcTransferDelay = cms.double(25)
0034 process.mix.digitizers.hfnoseDigitizer.digiCfg.feCfg.tdcTransferDelay = cms.double(25)
0035
0036
0037 elif version.find('simple')>=0 :
0038 tau=float(version.replace('simple',''))
0039 print('Adapting simple pulse shape with tau=%f'%tau)
0040 process.mix.digitizers.hgceeDigitizer.digiCfg.feCfg.fwVersion = cms.uint32(0)
0041 process.mix.digitizers.hgceeDigitizer.digiCfg.feCfg.shaperTau = cms.double(tau)
0042 process.mix.digitizers.hgchefrontDigitizer.digiCfg.feCfg.fwVersion = cms.uint32(0)
0043 process.mix.digitizers.hgchefrontDigitizer.digiCfg.feCfg.shaperTau = cms.double(tau)
0044 process.mix.digitizers.hgchebackDigitizer.digiCfg.feCfg.fwVersion = cms.uint32(0)
0045 process.mix.digitizers.hgchebackDigitizer.digiCfg.feCfg.shaperN = cms.double(1)
0046 process.mix.digitizers.hgchebackDigitizer.digiCfg.feCfg.shaperTau = cms.double(tau)
0047 process.mix.digitizers.hfnoseDigitizer.digiCfg.feCfg.fwVersion = cms.uint32(0)
0048 process.mix.digitizers.hfnoseDigitizer.digiCfg.feCfg.shaperTau = cms.double(tau)
0049
0050
0051 if debug:
0052 process.mix.digitizers.hgceeDigitizer.digiCfg.doTimeSamples = cms.bool(True)
0053 process.mix.digitizers.hgchefrontDigitizer.digiCfg.doTimeSamples = cms.bool(True)
0054 process.mix.digitizers.hgchebackDigitizer.digiCfg.doTimeSamples = cms.bool(True)
0055 process.mix.digitizers.hfnoseDigitizer.digiCfg.doTimeSamples = cms.bool(True)