File indexing completed on 2025-03-23 16:00:25
0001 import FWCore.ParameterSet.Config as cms
0002 from HeterogeneousCore.AlpakaCore.functions import *
0003 from Configuration.Eras.Modifier_run3_common_cff import run3_common
0004 from Configuration.Eras.Modifier_run3_SiPixel_2025_cff import run3_SiPixel_2025
0005 from Configuration.ProcessModifiers.alpaka_cff import alpaka
0006
0007
0008 from Configuration.ProcessModifiers.pp_on_AA_cff import pp_on_AA
0009
0010 from Configuration.Eras.Modifier_phase2_tracker_cff import phase2_tracker
0011
0012
0013 from RecoLocalTracker.SiPixelClusterizer.SiPixelClusterizerPreSplitting_cfi import siPixelClustersPreSplitting
0014
0015 siPixelClustersPreSplittingTask = cms.Task(
0016 siPixelClustersPreSplitting
0017 )
0018
0019
0020
0021
0022
0023
0024
0025
0026 def _addProcessCalibTrackerAlpakaES(process):
0027 process.load("CalibTracker.SiPixelESProducers.siPixelCablingSoAESProducer_cfi")
0028 process.load("CalibTracker.SiPixelESProducers.siPixelGainCalibrationForHLTSoAESProducer_cfi")
0029
0030 modifyConfigurationCalibTrackerAlpakaES_ = alpaka.makeProcessModifier(_addProcessCalibTrackerAlpakaES)
0031
0032
0033 from RecoLocalTracker.SiPixelClusterizer.siPixelRawToClusterPhase1_cfi import siPixelRawToClusterPhase1 as _siPixelRawToClusterAlpaka
0034 from RecoLocalTracker.SiPixelClusterizer.siPixelRawToClusterHIonPhase1_cfi import siPixelRawToClusterHIonPhase1 as _siPixelRawToClusterAlpakaHIonPhase1
0035
0036 siPixelClustersPreSplittingAlpaka = _siPixelRawToClusterAlpaka.clone()
0037
0038 (alpaka & pp_on_AA & ~phase2_tracker).toReplaceWith(siPixelClustersPreSplittingAlpaka,_siPixelRawToClusterAlpakaHIonPhase1.clone())
0039
0040 (alpaka & run3_common).toModify(siPixelClustersPreSplittingAlpaka,
0041
0042 clusterThreshold_layer1 = 4000,
0043 VCaltoElectronGain = 1,
0044 VCaltoElectronGain_L1 = 1,
0045 VCaltoElectronOffset = 0,
0046 VCaltoElectronOffset_L1 = 0)
0047
0048 (alpaka & run3_SiPixel_2025).toModify(siPixelClustersPreSplittingAlpaka,
0049
0050 clusterThreshold_layer1 = 2000)
0051
0052 from RecoLocalTracker.SiPixelClusterizer.siPixelPhase2DigiToCluster_cfi import siPixelPhase2DigiToCluster as _siPixelPhase2DigiToCluster
0053
0054
0055
0056 from SimTracker.SiPhase2Digitizer.phase2TrackerDigitizer_cfi import PixelDigitizerAlgorithmCommon
0057
0058 (alpaka & phase2_tracker).toReplaceWith(siPixelClustersPreSplittingAlpaka, _siPixelPhase2DigiToCluster.clone(
0059 Phase2ReadoutMode = PixelDigitizerAlgorithmCommon.Phase2ReadoutMode.value(),
0060 Phase2DigiBaseline = int(PixelDigitizerAlgorithmCommon.ThresholdInElectrons_Barrel.value()),
0061 Phase2KinkADC = 8,
0062 ElectronPerADCGain = PixelDigitizerAlgorithmCommon.ElectronPerAdc.value()
0063 ))
0064
0065
0066 siPixelClustersPreSplittingAlpakaSerial = makeSerialClone(siPixelClustersPreSplittingAlpaka)
0067
0068 from RecoLocalTracker.SiPixelClusterizer.siPixelDigisClustersFromSoAAlpakaPhase1_cfi import siPixelDigisClustersFromSoAAlpakaPhase1 as _siPixelDigisClustersFromSoAAlpakaPhase1
0069 from RecoLocalTracker.SiPixelClusterizer.siPixelDigisClustersFromSoAAlpakaPhase2_cfi import siPixelDigisClustersFromSoAAlpakaPhase2 as _siPixelDigisClustersFromSoAAlpakaPhase2
0070 from RecoLocalTracker.SiPixelClusterizer.siPixelDigisClustersFromSoAAlpakaHIonPhase1_cfi import siPixelDigisClustersFromSoAAlpakaHIonPhase1 as _siPixelDigisClustersFromSoAAlpakaHIonPhase1
0071
0072 alpaka.toReplaceWith(siPixelClustersPreSplitting,_siPixelDigisClustersFromSoAAlpakaPhase1.clone(
0073 src = "siPixelClustersPreSplittingAlpaka"
0074 ))
0075
0076 (alpaka & pp_on_AA & ~phase2_tracker).toReplaceWith(siPixelClustersPreSplitting,_siPixelDigisClustersFromSoAAlpakaHIonPhase1.clone(
0077 src = "siPixelClustersPreSplittingAlpaka"
0078 ))
0079
0080 (alpaka & phase2_tracker).toReplaceWith(siPixelClustersPreSplitting,_siPixelDigisClustersFromSoAAlpakaPhase2.clone(
0081 clusterThreshold_layer1 = 4000,
0082 clusterThreshold_otherLayers = 4000,
0083 src = "siPixelClustersPreSplittingAlpaka",
0084 storeDigis = False,
0085 produceDigis = False
0086 ))
0087
0088
0089
0090 from EventFilter.SiPixelRawToDigi.siPixelDigiErrorsFromSoAAlpaka_cfi import siPixelDigiErrorsFromSoAAlpaka as _siPixelDigiErrorsFromSoAAlpaka
0091 siPixelDigiErrorsAlpaka = _siPixelDigiErrorsFromSoAAlpaka.clone(
0092 digiErrorSoASrc = cms.InputTag('siPixelClustersPreSplittingAlpaka'),
0093 fmtErrorsSoASrc = cms.InputTag('siPixelClustersPreSplittingAlpaka'),
0094 UsePhase1 = cms.bool(True)
0095 )
0096
0097 siPixelDigiErrorsAlpakaSerial = siPixelDigiErrorsAlpaka.clone(
0098 digiErrorSoASrc = cms.InputTag('siPixelClustersPreSplittingAlpakaSerial'),
0099 fmtErrorsSoASrc = cms.InputTag('siPixelClustersPreSplittingAlpakaSerial')
0100 )
0101
0102
0103 alpaka.toReplaceWith(siPixelClustersPreSplittingTask, cms.Task(
0104
0105 siPixelClustersPreSplittingAlpaka,
0106
0107 siPixelClustersPreSplittingAlpakaSerial,
0108
0109 siPixelDigiErrorsAlpaka,
0110 siPixelDigiErrorsAlpakaSerial,
0111
0112 siPixelClustersPreSplitting
0113 ))
0114
0115
0116 (alpaka & phase2_tracker).toReplaceWith(siPixelClustersPreSplittingTask, cms.Task(
0117
0118 siPixelClustersPreSplittingAlpaka,
0119
0120 siPixelClustersPreSplittingAlpakaSerial,
0121
0122 siPixelDigiErrorsAlpaka,
0123 siPixelDigiErrorsAlpakaSerial,
0124
0125 siPixelClustersPreSplitting
0126 ))