File indexing completed on 2023-05-05 02:47:53
0001 import FWCore.ParameterSet.Config as cms
0002
0003 eventsPerFile_ = 12
0004 gttLatency_ = 156+120
0005 gttNumberOfPVs_ = 10
0006
0007
0008
0009 barrelWriterOutputOnly_ = cms.PSet(
0010 partition = cms.string("Barrel"),
0011 outputLinksPuppi = cms.vuint32(*range(6)),
0012 outputLinkEgamma = cms.int32(6),
0013 nEgammaObjectsOut = cms.uint32(16),
0014 nOutputFramesPerBX = cms.uint32(9),
0015 fileFormat = cms.string("EMP"),
0016 maxLinesPerOutputFile = cms.uint32(1024),
0017 eventsPerFile = cms.uint32(eventsPerFile_),
0018 )
0019
0020 barrelWriterOutputOnlyEtaConfigs = [
0021 barrelWriterOutputOnly_.clone(
0022 outputRegions = cms.vuint32(*[18*ie+i for i in range(18)]),
0023 outputFileName = cms.string("l1BarrelEta%d-outputs-ideal" % (ie+1)),
0024 outputBoard = cms.int32(-1),
0025 outputLinkEgamma = cms.int32(-1),
0026 ) for ie in range(3)
0027 ]
0028
0029 barrelWriterOutputOnlyPhiConfigs = [
0030 barrelWriterOutputOnly_.clone(
0031 outputRegions = cms.vuint32(*[3*ip+9*ie+i for ie in range(6) for i in range(3) ]),
0032 outputBoard = cms.int32(ip),
0033 outputFileName = cms.string("l1BarrelPhi%d-outputs-ideal" % (ip+1))
0034 ) for ip in range(3)
0035 ]
0036
0037 barrel9WriterOutputOnlyPhiConfigs = [
0038 barrelWriterOutputOnly_.clone(
0039 outputRegions = cms.vuint32(*[3*ip+9*ie+i for ie in range(3) for i in range(3) ]),
0040 outputBoard = cms.int32(ip),
0041 outputFileName = cms.string("l1Barrel9Phi%d-outputs-ideal" % (ip+1))
0042 ) for ip in range(3)
0043 ]
0044
0045 barrelWriterConfigs = barrelWriterOutputOnlyPhiConfigs
0046 barrel9WriterConfigs = []
0047
0048
0049
0050
0051 hgcalWriterConfig_ = cms.PSet(
0052 partition = cms.string("HGCal"),
0053 outputRegions = cms.vuint32(*[i+9 for i in range(9)]),
0054 outputBoard = cms.int32(1),
0055 nEgammaObjectsOut = cms.uint32(16),
0056 nInputFramesPerBX = cms.uint32(9),
0057 nOutputFramesPerBX = cms.uint32(9),
0058 fileFormat = cms.string("EMP"),
0059 maxLinesPerInputFile = cms.uint32(1024),
0060 maxLinesPerOutputFile = cms.uint32(1024),
0061 eventsPerFile = cms.uint32(eventsPerFile_),
0062 tfTimeSlices = cms.VPSet(*[cms.PSet(tfSectors = cms.VPSet()) for i in range(3)]),
0063 hgcTimeSlices = cms.VPSet(*[cms.PSet(hgcSectors = cms.VPSet()) for i in range(3)]),
0064 gmtTimeSlices = cms.VPSet(cms.PSet(),cms.PSet(),cms.PSet()),
0065 gmtNumberOfMuons = cms.uint32(12),
0066 gttLink = cms.int32(-1),
0067 gttLatency = cms.uint32(gttLatency_),
0068 gttNumberOfPVs = cms.uint32(gttNumberOfPVs_)
0069 )
0070
0071 hgcalPosIdealWriterConfig = hgcalWriterConfig_.clone()
0072 for t in range(3):
0073 hgcalPosIdealWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(-1)) for i in range(9) ]
0074 hgcalPosIdealWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(3*i+t)) for i in range(9) ]
0075 hgcalPosIdealWriterConfig.hgcTimeSlices[t].hgcSectors += [ cms.PSet(hgcLinks = cms.vint32(-1,-1,-1,-1)) for i in range(3) ]
0076 hgcalPosIdealWriterConfig.hgcTimeSlices[t].hgcSectors += [ cms.PSet(hgcLinks = cms.vint32(*[27+12*i+4*t+j for j in range(4)])) for i in range(3) ]
0077 hgcalPosIdealWriterConfig.gmtTimeSlices[t].gmtLink = cms.int32(27+36+t)
0078 hgcalPosIdealWriterConfig.gttLink = 27+36+3
0079 hgcalPosIdealWriterConfig.outputLinksPuppi = cms.vuint32(0,1,2)
0080 hgcalPosIdealWriterConfig.outputLinkEgamma = cms.int32(5)
0081 hgcalPosIdealWriterConfig.inputFileName = cms.string("l1HGCalPos-inputs-ideal")
0082 hgcalPosIdealWriterConfig.outputFileName = cms.string("l1HGCalPos-outputs-ideal")
0083 hgcalNegIdealWriterConfig = hgcalPosIdealWriterConfig.clone(
0084 inputFileName = "",
0085 outputFileName = "l1HGCalNeg-outputs-ideal",
0086 outputRegions = [i for i in range(9)],
0087 outputBoard = 0,
0088 )
0089
0090 hgcalPosVU9PB904egWriterConfig = hgcalWriterConfig_.clone()
0091 for t in range(3):
0092 hgcalPosVU9PB904egWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(-1)) for i in range(9) ]
0093 hgcalPosVU9PB904egWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(3*i+t+4*2)) for i in range(4) ]
0094 hgcalPosVU9PB904egWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(3*i+t+4*25)) for i in range(5) ]
0095 hgcalPosVU9PB904egWriterConfig.hgcTimeSlices[t].hgcSectors += [ cms.PSet(hgcLinks = cms.vint32(-1,-1,-1,-1)) for i in range(3) ]
0096 hgcalPosVU9PB904egWriterConfig.hgcTimeSlices[t].hgcSectors += [ cms.PSet(hgcLinks = cms.vint32(*[4*11+12*i+4*t+j for j in range(4)])) for i in range(3) ]
0097 hgcalPosVU9PB904egWriterConfig.gmtTimeSlices[t].gmtLink = cms.int32(4+t)
0098 hgcalPosVU9PB904egWriterConfig.gttLink = 4+3
0099 hgcalPosVU9PB904egWriterConfig.outputLinksPuppi = cms.vuint32(56,57,58)
0100 hgcalPosVU9PB904egWriterConfig.outputLinkEgamma = cms.int32(59)
0101 hgcalPosVU9PB904egWriterConfig.inputFileName = cms.string("l1HGCalPos-inputs-vu9p_B904eg")
0102 hgcalPosVU9PB904egWriterConfig.outputFileName = cms.string("l1HGCalPos-outputs-vu9p_B904eg")
0103
0104 hgcalPosVU13PWriterConfig = hgcalWriterConfig_.clone()
0105 for t in range(3):
0106 hgcalPosVU13PWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(-1)) for i in range(9) ]
0107 hgcalPosVU13PWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(3*i+t+4*0)) for i in range(5) ]
0108 hgcalPosVU13PWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(3*i+t+4*28)) for i in range(4) ]
0109 hgcalPosVU13PWriterConfig.hgcTimeSlices[t].hgcSectors += [ cms.PSet(hgcLinks = cms.vint32(-1,-1,-1,-1)) for i in range(3) ]
0110 for isec,q0 in (0,12),(1,17),(2,20):
0111 hgcalPosVU13PWriterConfig.hgcTimeSlices[t].hgcSectors += [ cms.PSet(hgcLinks = cms.vint32(*[4*q0+4*t+j for j in range(4)])) ]
0112 hgcalPosVU13PWriterConfig.gmtTimeSlices[t].gmtLink = cms.int32(4*27+t)
0113 hgcalPosVU13PWriterConfig.gttLink = 4*27+3
0114 hgcalPosVU13PWriterConfig.outputLinksPuppi = cms.vuint32(0,1,2)
0115 hgcalPosVU13PWriterConfig.outputLinkEgamma = cms.int32(3)
0116 hgcalPosVU13PWriterConfig.inputFileName = cms.string("l1HGCalPos-inputs-vu13p")
0117 hgcalPosVU13PWriterConfig.outputFileName = cms.string("l1HGCalPos-outputs-vu13p")
0118 hgcalNegVU13PWriterConfig = hgcalWriterConfig_.clone()
0119 for t in range(3):
0120 hgcalNegVU13PWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(3*i+t+4*0)) for i in range(5) ]
0121 hgcalNegVU13PWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(3*i+t+4*28)) for i in range(4) ]
0122 hgcalNegVU13PWriterConfig.tfTimeSlices[t].tfSectors += [ cms.PSet(tfLink = cms.int32(-1)) for i in range(9) ]
0123 for isec,q0 in (0,12),(1,17),(2,20):
0124 hgcalNegVU13PWriterConfig.hgcTimeSlices[t].hgcSectors += [ cms.PSet(hgcLinks = cms.vint32(*[4*q0+4*t+j for j in range(4)])) ]
0125 hgcalNegVU13PWriterConfig.hgcTimeSlices[t].hgcSectors += [ cms.PSet(hgcLinks = cms.vint32(-1,-1,-1,-1)) for i in range(3) ]
0126 hgcalNegVU13PWriterConfig.gmtTimeSlices[t].gmtLink = cms.int32(4*27+t)
0127 hgcalNegVU13PWriterConfig.gttLink = 4*27+3
0128 hgcalNegVU13PWriterConfig.outputLinksPuppi = cms.vuint32(0,1,2)
0129 hgcalNegVU13PWriterConfig.outputLinkEgamma = cms.int32(3)
0130 hgcalNegVU13PWriterConfig.inputFileName = cms.string("l1HGCalNeg-inputs-vu13p")
0131 hgcalNegVU13PWriterConfig.outputFileName = cms.string("l1HGCalNeg-outputs-vu13p")
0132
0133
0134
0135 hgcalWriterConfigs = [
0136 hgcalPosIdealWriterConfig,
0137 hgcalNegIdealWriterConfig,
0138 hgcalPosVU9PB904egWriterConfig,
0139 hgcalPosVU13PWriterConfig,
0140 hgcalNegVU13PWriterConfig
0141 ]
0142
0143
0144
0145 hgcalNoTKWriterOutputOnlyConfig = cms.PSet(
0146 partition = cms.string("HGCalNoTk"),
0147 outputRegions = cms.vuint32(*range(18)),
0148 nOutputFramesPerBX = cms.uint32(9),
0149 fileFormat = cms.string("EMP"),
0150 maxLinesPerOutputFile = cms.uint32(1024),
0151 eventsPerFile = cms.uint32(eventsPerFile_),
0152 outputLinksPuppi = cms.vuint32(0,1,2,4),
0153 outputFileName = cms.string("l1HGCalNoTk-outputs-ideal")
0154 )
0155
0156 hgcalNoTKWriterConfigs = [
0157 hgcalNoTKWriterOutputOnlyConfig
0158 ]
0159
0160
0161
0162
0163
0164 hfWriterOutputOnly_ = cms.PSet(
0165 partition = cms.string("HF"),
0166 outputLinksPuppi = cms.vuint32(*range(3)),
0167 nOutputFramesPerBX = cms.uint32(9),
0168 fileFormat = cms.string("EMP"),
0169 maxLinesPerOutputFile = cms.uint32(1024),
0170 eventsPerFile = cms.uint32(eventsPerFile_),
0171 )
0172 hfWriterConfigs = [
0173 hfWriterOutputOnly_.clone(
0174 outputRegions = cms.vuint32(*[9*ie+i for i in range(9)]),
0175 outputFileName = cms.string("l1HF%s-outputs-ideal" % ("Pos" if ie else "Neg")),
0176 ) for ie in range(2)
0177 ]
0178
0179