CMS 3D CMS Logo

concentrator.py
Go to the documentation of this file.
1 
2 import FWCore.ParameterSet.Config as cms
4 from L1Trigger.L1THGCal.hgcalConcentratorProducer_cfi import threshold_conc_proc, best_conc_proc, supertc_conc_proc, coarsetc_onebitfraction_proc, mixedbcstc_conc_proc
5 
6 
7 def create_supertriggercell(process, inputs,
8  stcSize=supertc_conc_proc.stcSize,
9  type_energy_division=supertc_conc_proc.type_energy_division,
10  fixedDataSizePerHGCROC=supertc_conc_proc.fixedDataSizePerHGCROC,
11  coarsenTriggerCells=supertc_conc_proc.coarsenTriggerCells,
12  ctcSize=supertc_conc_proc.ctcSize,
13  ):
14  producer = process.hgcalConcentratorProducer.clone(
15  InputTriggerCells = cms.InputTag('{}:HGCalVFEProcessorSums'.format(inputs)),
16  InputTriggerSums = cms.InputTag('{}:HGCalVFEProcessorSums'.format(inputs))
17  )
18  producer.ProcessorParameters = supertc_conc_proc.clone(
19  stcSize = stcSize,
20  type_energy_division = type_energy_division,
21  fixedDataSizePerHGCROC = fixedDataSizePerHGCROC,
22  coarsenTriggerCells = coarsenTriggerCells,
23  ctcSize = ctcSize,
24  )
25  return producer
26 
27 
28 def create_threshold(process, inputs,
29  threshold_silicon=threshold_conc_proc.threshold_silicon, # in mipT
30  threshold_scintillator=threshold_conc_proc.threshold_scintillator # in mipT
31  ):
32  producer = process.hgcalConcentratorProducer.clone(
33  InputTriggerCells = cms.InputTag('{}:HGCalVFEProcessorSums'.format(inputs)),
34  InputTriggerSums = cms.InputTag('{}:HGCalVFEProcessorSums'.format(inputs))
35  )
36  producer.ProcessorParameters = threshold_conc_proc.clone(
37  threshold_silicon = threshold_silicon, # MipT
38  threshold_scintillator = threshold_scintillator # MipT
39  )
40  return producer
41 
42 
43 def create_bestchoice(process, inputs,
44  triggercells=best_conc_proc.NData,
45  coarsenTriggerCells=best_conc_proc.coarsenTriggerCells,
46  ctcSize=best_conc_proc.ctcSize,
47  ):
48  producer = process.hgcalConcentratorProducer.clone(
49  InputTriggerCells = cms.InputTag('{}:HGCalVFEProcessorSums'.format(inputs)),
50  InputTriggerSums = cms.InputTag('{}:HGCalVFEProcessorSums'.format(inputs))
51  )
52  producer.ProcessorParameters = best_conc_proc.clone(
53  NData = triggercells,
54  coarsenTriggerCells = coarsenTriggerCells,
55  ctcSize=ctcSize,
56  )
57  return producer
58 
59 
60 def create_onebitfraction(process, inputs,
61  stcSize=coarsetc_onebitfraction_proc.stcSize,
62  fixedDataSizePerHGCROC=coarsetc_onebitfraction_proc.fixedDataSizePerHGCROC
63  ):
64  producer = process.hgcalConcentratorProducer.clone(
65  InputTriggerCells = cms.InputTag('{}:HGCalVFEProcessorSums'.format(inputs)),
66  InputTriggerSums = cms.InputTag('{}:HGCalVFEProcessorSums'.format(inputs))
67  )
68  producer.ProcessorParameters = coarsetc_onebitfraction_proc.clone(
69  stcSize = stcSize,
70  fixedDataSizePerHGCROC = fixedDataSizePerHGCROC
71  )
72  return producer
73 
74 
75 def create_mixedfeoptions(process, inputs,
76  stcSize=supertc_conc_proc.stcSize,
77  type_energy_division=supertc_conc_proc.type_energy_division,
78  fixedDataSizePerHGCROC=supertc_conc_proc.fixedDataSizePerHGCROC,
79  triggercells=best_conc_proc.NData
80  ):
81  producer = process.hgcalConcentratorProducer.clone(
82  InputTriggerCells = cms.InputTag('{}:HGCalVFEProcessorSums'.format(inputs)),
83  InputTriggerSums = cms.InputTag('{}:HGCalVFEProcessorSums'.format(inputs))
84  )
85  producer.ProcessorParameters = mixedbcstc_conc_proc.clone(
86  stcSize = stcSize,
87  type_energy_division = type_energy_division,
88  fixedDataSizePerHGCROC = fixedDataSizePerHGCROC,
89  NData = triggercells
90  )
91  return producer
92 
def create_threshold(process, inputs, threshold_silicon=threshold_conc_proc.threshold_silicon, threshold_scintillator=threshold_conc_proc.threshold_scintillator#in mipT)
Definition: concentrator.py:31
def create_supertriggercell(process, inputs, stcSize=supertc_conc_proc.stcSize, type_energy_division=supertc_conc_proc.type_energy_division, fixedDataSizePerHGCROC=supertc_conc_proc.fixedDataSizePerHGCROC, coarsenTriggerCells=supertc_conc_proc.coarsenTriggerCells, ctcSize=supertc_conc_proc.ctcSize)
Definition: concentrator.py:13
def create_onebitfraction(process, inputs, stcSize=coarsetc_onebitfraction_proc.stcSize, fixedDataSizePerHGCROC=coarsetc_onebitfraction_proc.fixedDataSizePerHGCROC)
Definition: concentrator.py:63
def create_bestchoice(process, inputs, triggercells=best_conc_proc.NData, coarsenTriggerCells=best_conc_proc.coarsenTriggerCells, ctcSize=best_conc_proc.ctcSize)
Definition: concentrator.py:47
def create_mixedfeoptions(process, inputs, stcSize=supertc_conc_proc.stcSize, type_energy_division=supertc_conc_proc.type_energy_division, fixedDataSizePerHGCROC=supertc_conc_proc.fixedDataSizePerHGCROC, triggercells=best_conc_proc.NData)
Definition: concentrator.py:80