CMS 3D CMS Logo

tmbParams.py
Go to the documentation of this file.
1 import FWCore.ParameterSet.Config as cms
2 
3 tmbPhase1 = cms.PSet(
4  # block the ME1/a LCTs
5  mpcBlockMe1a = cms.uint32(0),
6  # allow ALCT-only LCTs
7  alctTrigEnable = cms.uint32(0),
8  # allow CLCT-only LCTs
9  clctTrigEnable = cms.uint32(0),
10  # allow ALCT-CLCT correlated LCTs (default)
11  matchTrigEnable = cms.uint32(1),
12  # matching window for the trigger
13  matchTrigWindowSize = cms.uint32(7),
14  # array with the preferred delta BX values for the candidate CLCTs
15  # perfectly in-time CLCTs are preferred, followed by
16  # first-early, first-late, second-early, second late, etc.
17  preferredBxMatch = cms.vint32(0, -1, 1, -2, 2, -3, 3),
18  # readout window for the DAQ
19  # LCTs found in the window [5, 6, 7, 8, 9, 10, 11] are good
20  tmbL1aWindowSize = cms.uint32(7),
21  # Debug
22  verbosity = cms.int32(0),
23  # Configure early_tbins instead of hardcoding it
24  tmbEarlyTbins = cms.int32(4),
25  # Flag for whether to readout only the earliest max two LCTs in a
26  # L1A readout window, as there is only room just for two in the TMB header.
27  # If false, all LCTs would be readout in L1A window.
28  # originally, this planned to change this for Phase-2, but no longer
29  # as of June 2021
30  tmbReadoutEarliest2 = cms.bool(True),
31  # For ALCT-centric matching in ME11, break after finding
32  # the first BX with matching CLCT. Should always be set to True
33  # when using the preferred BX windows
34  matchEarliestClctOnly = cms.bool(True),
35  # For ALCT-centric matching, whether to drop CLCTs that were matched
36  # to ALCTs in this BX, and not use them in the following BX
37  tmbDropUsedClcts = cms.bool(True),
38  # True: allow construction of unphysical LCTs
39  # in ME11 for which WG and HS do not intersect.
40  # False: do not build such unphysical LCTs
41  # It is recommended to keep this False, so that
42  # the EMTF receives all information, physical or not
43  ignoreAlctCrossClct = cms.bool(True),
44  # bits for high-multiplicity triggers
45  useHighMultiplicityBits = cms.bool(False),
46 )
47 
48 # to be used by ME11 chambers with upgraded TMB and ALCT
49 tmbPhase2 = tmbPhase1.clone(
50  # reduce ALCT-CLCT matching window size from 7 to 5
51  matchTrigWindowSize = 5,
52  # LCTs found in the window [6, 7, 8, 9, 10] are good
53  tmbL1aWindowSize = 5,
54  tmbDropUsedClcts = False,
55 )
56 
57 tmbPhase2GEM = tmbPhase2.clone(
58  # matching to GEM clusters in time
59  maxDeltaBXALCTGEM = cms.uint32(1),
60  maxDeltaBXCLCTGEM = cms.uint32(2),
61  # True: use the half-strip coordinate to match
62  # GEM with CSC TPs
63  # False: use the eighth-strip coordinate + CCLUT slope
64  # to match GEM with CSC TPs
65  matchWithHS = cms.bool(True),
66  # efficiency recovery switches
67  dropLowQualityALCTsNoGEMs = cms.bool(False),
68  dropLowQualityCLCTsNoGEMs = cms.bool(True),
69  buildLCTfromALCTCLCTand2GEM = cms.bool(True),
70  buildLCTfromALCTCLCTand1GEM = cms.bool(True),
71  buildLCTfromALCTandGEM = cms.bool(True),
72  buildLCTfromCLCTandGEM = cms.bool(True),
73  # assign GEM-CSC bending angle. Works only for
74  # Run-3 GEM-CSC TPs.
75  assignGEMCSCBending = cms.bool(False),
76  # whether to drop GEMs that were matched to ALCTs or CLCTs
77  # in this BX, and not use them in the following BX
78  tmbDropUsedGems = cms.bool(False),
79  # For ALCT-centric matching to GEMs, break after finding
80  # the first BX with matching GEM coincidence clusters
81  matchEarliestGemsOnly = cms.bool(True),
82  # When running the GEM-CSC matching, whether to mitigate
83  # the slope of CLCTs with high, meaning inconsistent,
84  # values of cosi (consistency of slope indicator)
85  # to optimize GEM-CSC slope correction
86  mitigateSlopeByCosi = cms.bool(True),
87 )
88 
89 # to be used by ME11 chambers with GEM-CSC ILT
90 tmbPhase2GE11 = tmbPhase2GEM.clone(
91  # matching to GEM clusters with half-strips
92  maxDeltaHsEven = cms.uint32(7),
93  maxDeltaHsOdd = cms.uint32(16),
94  maxDeltaHsEvenME1a = cms.uint32(5),
95  maxDeltaHsOddME1a = cms.uint32(12),
96  # efficiency recovery switches
97  dropLowQualityCLCTsNoGEMs_ME1a = cms.bool(True),
98  buildLCTfromALCTandGEM_ME1a = cms.bool(True),
99  buildLCTfromCLCTandGEM_ME1a = cms.bool(True),
100 )
101 
102 # to be used by ME21 chambers with GEM-CSC ILT
103 tmbPhase2GE21 = tmbPhase2GEM.clone(
104  # matching to GEM clusters with half-strips
105  maxDeltaHsEven = cms.uint32(3),
106  maxDeltaHsOdd = cms.uint32(5),
107  dropLowQualityALCTsNoGEMs = True,
108 )
109 
110 tmbPSets = cms.PSet(
111  tmbPhase1 = tmbPhase1.clone(),
112  tmbPhase2 = tmbPhase2.clone(),
113  tmbPhase2GE11 = tmbPhase2GE11.clone(),
114  tmbPhase2GE21 = tmbPhase2GE21.clone()
115 )