CMS 3D CMS Logo

l1ctLayer2EG_cff.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 from L1Trigger.Phase2L1ParticleFlow.l1tDeregionizerProducer_cfi import l1tDeregionizerProducer as l1tLayer2Deregionizer
4 
5 l1tLayer2EG = cms.EDProducer(
6  "L1TCtL2EgProducer",
7  tkElectrons=cms.VPSet(
8  cms.PSet(
9  pfProducer=cms.InputTag("l1tLayer1HGCal", 'L1TkElePerBoard'),
10  channels=cms.vint32(3, 4)
11  ),
12  cms.PSet(
13  pfProducer=cms.InputTag("l1tLayer1Barrel", 'L1TkElePerBoard'),
14  channels=cms.vint32(0, 1, 2)
15  ),
16  ),
17  tkEms=cms.VPSet(
18  cms.PSet(
19  pfProducer=cms.InputTag("l1tLayer1HGCal", 'L1TkEmPerBoard'),
20  channels=cms.vint32(3, 4)
21  ),
22  cms.PSet(
23  pfProducer=cms.InputTag("l1tLayer1HGCalNoTK", 'L1TkEmPerBoard'),
24  channels=cms.vint32(-1)
25  ),
26  cms.PSet(
27  pfProducer=cms.InputTag("l1tLayer1Barrel", 'L1TkEmPerBoard'),
28  channels=cms.vint32(0, 1, 2)
29  ),
30  ),
31  tkEgs=cms.VPSet(
32  cms.PSet(
33  pfProducer=cms.InputTag("l1tLayer1HGCal", 'L1Eg'),
34  channels=cms.vint32(-1)
35  ),
36  cms.PSet(
37  pfProducer=cms.InputTag("l1tLayer1HGCalNoTK", 'L1Eg'),
38  channels=cms.vint32(-1)
39  ),
40  ),
41  l1PFObjects = cms.InputTag("l1tLayer2Deregionizer", "Puppi"),
42  egStaInstanceLabel=cms.string("L1CtEgEE"),
43  tkEmInstanceLabel=cms.string("L1CtTkEm"),
44  tkEleInstanceLabel=cms.string("L1CtTkElectron"),
45  sorter=cms.PSet(
46  nBOARDS=cms.uint32(5),
47  nEGPerBoard=cms.uint32(16),
48  nEGOut=cms.uint32(12),
49  debug=cms.untracked.uint32(0),
50  ),
51  encoder=cms.PSet(
52  nTKELE_OUT=cms.uint32(12),
53  nTKPHO_OUT=cms.uint32(12),
54  ),
55  puppiIsoParametersTkEm = cms.PSet(
56  pfIsoType = cms.string("PUPPI"),
57  pfPtMin = cms.double(1.),
58  dZ = cms.double(0.6),
59  dRMin = cms.double(0.07),
60  dRMax = cms.double(0.3),
61  pfCandReuse = cms.bool(True)
62  ),
63  puppiIsoParametersTkEle = cms.PSet(
64  pfIsoType = cms.string("PUPPI"),
65  pfPtMin = cms.double(1.),
66  dZ = cms.double(0.6),
67  dRMin = cms.double(0.03),
68  dRMax = cms.double(0.2),
69  pfCandReuse = cms.bool(True)
70  ),
71  writeInPattern=cms.bool(False),
72  writeOutPattern=cms.bool(False),
73  inPatternFile=cms.PSet(
74  nFramesPerBX=cms.uint32(9), # 360 MHz clock or 25 Gb/s link
75  format=cms.string("EMPv2"),
76  outputFilename=cms.string("L1TCTL2EG_InPattern"),
77  outputFileExtension=cms.string("txt.gz"),
78  TMUX=cms.uint32(6),
79  maxLinesPerFile=cms.uint32(1024),
80  channels=cms.VPSet(
81  cms.PSet(
82  TMUX=cms.uint32(6),
83  nWords=cms.uint32(48), # = 16*2words ele + 16words photons
84  interface=cms.string("eglayer1"),
85  id=cms.uint32(0),
86  channels=cms.vuint32(0)
87  ),
88  cms.PSet(
89  TMUX=cms.uint32(6),
90  nWords=cms.uint32(48),
91  interface=cms.string("eglayer1"),
92  id=cms.uint32(1),
93  channels=cms.vuint32(1)
94  ),
95  cms.PSet(
96  TMUX=cms.uint32(6),
97  nWords=cms.uint32(48),
98  interface=cms.string("eglayer1"),
99  id=cms.uint32(2),
100  channels=cms.vuint32(2)
101  ),
102  cms.PSet(
103  TMUX=cms.uint32(6),
104  nWords=cms.uint32(48),
105  interface=cms.string("eglayer1"),
106  id=cms.uint32(3),
107  channels=cms.vuint32(3)
108  ),
109  cms.PSet(
110  TMUX=cms.uint32(6),
111  nWords=cms.uint32(48),
112  interface=cms.string("eglayer1"),
113  id=cms.uint32(4),
114  channels=cms.vuint32(4)
115  ),
116 
117  )
118  ),
119  outPatternFile=cms.PSet(
120  nFramesPerBX=cms.uint32(9), # 360 MHz clock or 25 Gb/s link
121  format=cms.string("EMPv2"),
122  outputFilename=cms.string("L1TCTL2EG_OutPattern"),
123  outputFileExtension=cms.string("txt.gz"),
124  TMUX=cms.uint32(6),
125  maxLinesPerFile=cms.uint32(1024),
126  channels=cms.VPSet(
127  cms.PSet(
128  TMUX=cms.uint32(6),
129  nWords=cms.uint32(36), # 36 = 12*3/2words ele + 12*3/2words photons
130  interface=cms.string("eglayer2"),
131  id=cms.uint32(0),
132  channels=cms.vuint32(0)
133  )
134  )
135  ),
136  # NOTE: to write out the GT input from 6TS
137  # outPatternFile=cms.PSet(
138  # nFramesPerBX=cms.uint32(9), # 360 MHz clock or 25 Gb/s link
139  # format=cms.string("EMPv2"),
140  # outputFilename=cms.string("L1TCTL2EG_ToGTPattern"),
141  # outputFileExtension=cms.string("txt.gz"),
142  # TMUX=cms.uint32(1),
143  # maxLinesPerFile=cms.uint32(1024),
144  # channels=cms.VPSet(
145  # cms.PSet(
146  # TMUX=cms.uint32(6),
147  # nWords=cms.uint32(36), # 36 = 12*3/2words ele + 12*3/2words phhotons
148  # interface=cms.string("eglayer2"),
149  # id=cms.uint32(0),
150  # channels=cms.vuint32(0, 1, 2, 3, 4, 5)
151  # )
152  # )
153  # )
154 )
155 
156 l1tLayer2EGElliptic = l1tLayer2EG.clone(
157  tkElectrons=cms.VPSet(
158  cms.PSet(
159  pfProducer=cms.InputTag("l1tLayer1HGCalElliptic", 'L1TkElePerBoard'),
160  channels=cms.vint32(3, 4)
161  ),
162  cms.PSet(
163  pfProducer=cms.InputTag("l1tLayer1Barrel", 'L1TkElePerBoard'),
164  channels=cms.vint32(0, 1, 2)
165  ),
166  ),
167  tkEms=cms.VPSet(
168  cms.PSet(
169  pfProducer=cms.InputTag("l1tLayer1HGCalElliptic", 'L1TkEmPerBoard'),
170  channels=cms.vint32(3, 4)
171  ),
172  cms.PSet(
173  pfProducer=cms.InputTag("l1tLayer1HGCalNoTK", 'L1TkEmPerBoard'),
174  channels=cms.vint32(-1)
175  ),
176  cms.PSet(
177  pfProducer=cms.InputTag("l1tLayer1Barrel", 'L1TkEmPerBoard'),
178  channels=cms.vint32(0, 1, 2)
179  ),
180  ),
181  tkEgs=cms.VPSet(
182  cms.PSet(
183  pfProducer=cms.InputTag("l1tLayer1HGCalElliptic", 'L1Eg'),
184  channels=cms.vint32(-1)
185  ),
186  cms.PSet(
187  pfProducer=cms.InputTag("l1tLayer1HGCalNoTK", 'L1Eg'),
188  channels=cms.vint32(-1)
189  ),
190  ),
191 )
192 
193 
194 L1TLayer2EGTask = cms.Task(
195  l1tLayer2Deregionizer,
196  l1tLayer2EG,
197  l1tLayer2EGElliptic
198 )