File indexing completed on 2024-10-31 08:40:02
0001 import FWCore.ParameterSet.Config as cms
0002
0003 _common_BTLparameters = cms.PSet(
0004 bxTime = cms.double(25),
0005 LightYield = cms.double(40000.),
0006 LightCollectionEff = cms.double(0.25),
0007 PhotonDetectionEff = cms.double(0.20),
0008 )
0009
0010 _barrel_MTDDigitizer = cms.PSet(
0011 digitizerName = cms.string("BTLDigitizer"),
0012 inputSimHits = cms.InputTag("g4SimHits:FastTimerHitsBarrel"),
0013 digiCollectionTag = cms.string("FTLBarrel"),
0014 maxSimHitsAccTime = cms.uint32(100),
0015 premixStage1 = cms.bool(False),
0016 premixStage1MinCharge = cms.double(1e-4),
0017 premixStage1MaxCharge = cms.double(1e6),
0018 DeviceSimulation = cms.PSet(
0019 _common_BTLparameters,
0020 LightCollectionSlope = cms.double(0.075),
0021 LCEpositionSlope = cms.double(0.071),
0022 ),
0023 ElectronicsSimulation = cms.PSet(
0024 _common_BTLparameters,
0025 TestBeamMIPTimeRes = cms.double(4.293),
0026
0027 ScintillatorRiseTime = cms.double(1.1),
0028 ScintillatorDecayTime = cms.double(40.),
0029 ChannelTimeOffset = cms.double(0.),
0030 smearChannelTimeOffset = cms.double(0.),
0031 EnergyThreshold = cms.double(4.),
0032 TimeThreshold1 = cms.double(20.),
0033 TimeThreshold2 = cms.double(50.),
0034 ReferencePulseNpe = cms.double(100.),
0035 DarkCountRate = cms.double(10.),
0036 SinglePhotonTimeResolution = cms.double(0.060),
0037 SigmaElectronicNoise = cms.double(1.),
0038 SigmaClock = cms.double(0.015),
0039 CorrelationCoefficient = cms.double(1.),
0040 SmearTimeForOOTtails = cms.bool(True),
0041 Npe_to_pC = cms.double(0.016),
0042 Npe_to_V = cms.double(0.0064),
0043 SigmaRelTOFHIRenergy = cms.vdouble(0.139,-4.35e-05,3.315e-09,-1.20e-13,1.67e-18),
0044
0045
0046 adcNbits = cms.uint32(10),
0047
0048 tdcNbits = cms.uint32(10),
0049
0050 adcSaturation_MIP = cms.double(600.),
0051
0052 adcThreshold_MIP = cms.double(0.064),
0053
0054 toaLSB_ns = cms.double(0.020),
0055 )
0056
0057
0058 )
0059
0060 _endcap_MTDDigitizer = cms.PSet(
0061 digitizerName = cms.string("ETLDigitizer"),
0062 inputSimHits = cms.InputTag("g4SimHits:FastTimerHitsEndcap"),
0063 digiCollectionTag = cms.string("FTLEndcap"),
0064 maxSimHitsAccTime = cms.uint32(100),
0065 premixStage1 = cms.bool(False),
0066 premixStage1MinCharge = cms.double(1e-4),
0067 premixStage1MaxCharge = cms.double(1e6),
0068 DeviceSimulation = cms.PSet(
0069 bxTime = cms.double(25),
0070 IntegratedLuminosity = cms.double(1000.0),
0071 FluenceVsRadius = cms.string("1.937*TMath::Power(x,-1.706)"),
0072 LGADGainVsFluence = cms.string("TMath::Min(15.,30.-x)"),
0073 LGADGainDegradation = cms.string("TMath::Max(1.0, TMath::Min(x, x + 0.05/0.01 * (x - 1) + y * (1 - x)/0.01))"),
0074 applyDegradation = cms.bool(False),
0075 tofDelay = cms.double(1),
0076 meVPerMIP = cms.double(0.085),
0077 MPVMuon = cms.string("1.21561e-05 + 8.89462e-07 / (x * x)"),
0078 MPVPion = cms.string("1.24531e-05 + 7.16578e-07 / (x * x)"),
0079 MPVKaon = cms.string("1.20998e-05 + 2.47192e-06 / (x * x * x)"),
0080 MPVElectron = cms.string("1.30030e-05 + 1.55166e-07 / (x * x)"),
0081 MPVProton = cms.string("1.13666e-05 + 1.20093e-05 / (x * x)")
0082 ),
0083 ElectronicsSimulation = cms.PSet(
0084 bxTime = cms.double(25),
0085 IntegratedLuminosity = cms.double(1000.),
0086
0087 adcNbits = cms.uint32(8),
0088
0089 tdcNbits = cms.uint32(11),
0090
0091 adcSaturation_MIP = cms.double(100),
0092
0093 adcThreshold_MIP = cms.double(0.025),
0094 iThreshold_MIP = cms.double(0.9525),
0095
0096 toaLSB_ns = cms.double(0.013),
0097 referenceChargeColl = cms.double(1.0),
0098 noiseLevel = cms.double(0.1750),
0099 sigmaDistorsion = cms.double(0.0),
0100 sigmaTDC = cms.double(0.010),
0101 formulaLandauNoise = cms.string("TMath::Max(0.020, 0.020 * (0.35 * (x - 1.0) + 1.0))")
0102 )
0103 )
0104
0105 from Configuration.Eras.Modifier_phase2_etlV4_cff import phase2_etlV4
0106 phase2_etlV4.toModify(_endcap_MTDDigitizer.DeviceSimulation, meVPerMIP = 0.015 )
0107
0108 from Configuration.ProcessModifiers.premix_stage1_cff import premix_stage1
0109 for _m in [_barrel_MTDDigitizer, _endcap_MTDDigitizer]:
0110 premix_stage1.toModify(_m, premixStage1 = True)
0111
0112
0113 mtdDigitizer = cms.PSet(
0114 accumulatorType = cms.string("MTDDigiProducer"),
0115 makeDigiSimLinks = cms.bool(False),
0116 verbosity = cms.untracked.uint32(0),
0117
0118 barrelDigitizer = _barrel_MTDDigitizer,
0119 endcapDigitizer = _endcap_MTDDigitizer
0120 )