CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
CSCPatternBank.cc
Go to the documentation of this file.
2 
4  0, 0, 0, 1, 1, 2, 3, 3, 4, 4, 4, 5, 5, 5};
5 
7  //Keywire offset for ME1 and ME2
8  {-2, -1, 0, -1, 0, 0, 0, 1, 0, 1, 2, 0, 1, 2},
9 
10  //Keywire offset for ME3 and ME4
11  {2, 1, 0, 1, 0, 0, 0, -1, 0, -1, -2, 0, -1, -2}};
12 
14  // Accelerator pattern
15  // For beam-halo muons or displaced muons from long-lived particles
16  {0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0},
17 
18  // Collision pattern A
19  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
20 
21  // Collision pattern B
22  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}};
23 
25  // Accelerator pattern
26  {0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0},
27 
28  // Collision pattern A
29  {0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0},
30 
31  // Collision pattern B
32  {0, 1, 1, 1, 1, 1, 1, 0, 1, 1, 0, 1, 1, 0}};
33 
35  -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5};
36 
38  // pid=0: no pattern found
39  {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
40  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
41  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
42  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
43  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
44  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -1, 0}},
45  // pid=1: layer-OR trigger
46  {
47  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
48  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
49  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
50  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
51  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1},
52  {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, -1, 11},
53  },
54  // pid=2: right-bending (large)
55  {
56  {0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1},
57  {0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0},
58  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
59  {0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
60  {0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
61  {1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11},
62  },
63  // pid=3: left-bending (large)
64  {
65  {1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0},
66  {0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0},
67  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
68  {0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0},
69  {0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0},
70  {0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 11},
71  },
72  // pid=4: right-bending (medium)
73  {
74  {0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0},
75  {0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0},
76  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
77  {0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0},
78  {0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
79  {0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 9},
80  },
81  // pid=5: left-bending (medium)
82  {
83  {0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
84  {0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0},
85  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
86  {0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0},
87  {0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0},
88  {0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 9},
89  },
90  // pid=6: right-bending (medium)
91  {
92  {0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0},
93  {0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0},
94  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
95  {0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0},
96  {0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0},
97  {0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 7},
98  },
99  // pid=7: left-bending (medium)
100  {
101  {0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0},
102  {0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0},
103  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
104  {0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0},
105  {0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0},
106  {0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 7},
107  },
108  // pid=8: right-bending (small)
109  {
110  {0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0},
111  {0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0},
112  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
113  {0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0},
114  {0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
115  {0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 5},
116  },
117  // pid=9: left-bending (small)
118  {
119  {0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
120  {0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0},
121  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
122  {0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0},
123  {0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0},
124  {0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 5},
125  },
126  // pid=A: straight-through
127  {{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
128  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
129  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
130  {0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
131  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
132  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 3}}
133  // pid's=B-F are not yet defined
134 };
135 
137  // pid 0
138  {
139  {0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1},
140  {0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0},
141  {0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0},
142  {0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
143  {0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
144  {1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11},
145  },
146  // pid 1
147  {
148  {1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0},
149  {0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0},
150  {0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
151  {0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0},
152  {0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0},
153  {0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 11},
154  },
155  // pid 2
156  {
157  {0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0},
158  {0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0},
159  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
160  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
161  {0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
162  {0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 7},
163  },
164  // pid 3
165  {
166  {0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0},
167  {0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
168  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
169  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
170  {0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0},
171  {0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1, 7},
172  },
173  // pid 4
174  {{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
175  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
176  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
177  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
178  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
179  {0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 3}}};
CSCPatternBank::CLCTPatterns
std::vector< std::vector< std::vector< int > > > CLCTPatterns
Definition: CSCPatternBank.h:13
CSCPatternBank::alct_pattern_envelope
static const int alct_pattern_envelope[CSCConstants::MAX_WIRES_IN_PATTERN]
Definition: CSCPatternBank.h:21
CSCPatternBank::alct_pattern_mask_open
static const ALCTPatterns alct_pattern_mask_open
Definition: CSCPatternBank.h:29
CSCPatternBank::alct_keywire_offset
static const int alct_keywire_offset[2][CSCConstants::MAX_WIRES_IN_PATTERN]
Definition: CSCPatternBank.h:25
CSCPatternBank::clct_pattern_legacy_
static const CLCTPatterns clct_pattern_legacy_
Definition: CSCPatternBank.h:42
CSCConstants::NUM_ALCT_PATTERNS
Definition: CSCConstants.h:50
CSCPatternBank::alct_pattern_mask_r1
static const ALCTPatterns alct_pattern_mask_r1
Definition: CSCPatternBank.h:32
CSCConstants::MAX_WIRES_IN_PATTERN
Definition: CSCConstants.h:54
CSCPatternBank::clct_pattern_run3_
static const CLCTPatterns clct_pattern_run3_
Definition: CSCPatternBank.h:45
CSCPatternBank.h
CSCConstants::CLCT_PATTERN_WIDTH
Definition: CSCConstants.h:52
CSCPatternBank::clct_pattern_offset_
static const int clct_pattern_offset_[CSCConstants::CLCT_PATTERN_WIDTH]
Definition: CSCPatternBank.h:48