CMS 3D CMS Logo

CSCUpgradeMotherboardLUT.cc
Go to the documentation of this file.
2 
4  : lut_wg_eta_odd(0)
5  , lut_wg_eta_even(0)
6  , lut_pt_vs_dphi_gemcsc(0)
7 
8  , gem_roll_eta_limits_odd_l1(0)
9  , gem_roll_eta_limits_odd_l2(0)
10  , gem_roll_eta_limits_even_l1(0)
11  , gem_roll_eta_limits_even_l2(0)
12 
13  , csc_wg_to_gem_roll_odd_l1(0)
14  , csc_wg_to_gem_roll_odd_l2(0)
15  , csc_wg_to_gem_roll_even_l1(0)
16  , csc_wg_to_gem_roll_even_l2(0)
17 {
18 }
19 
20 std::vector<std::pair<int,int> >
22 {
24  else { return layer==1 ? csc_wg_to_gem_roll_odd_l1 : csc_wg_to_gem_roll_odd_l2; }
25 }
26 
27 std::vector<int>
29 {
31  else { return layer==1 ? gem_roll_to_csc_wg_odd_l1 : gem_roll_to_csc_wg_odd_l2; }
32 }
33 
34 std::vector<int>
36 {
37  if (p==CSCPart::ME1A) { return par==Parity::Even ? gem_pad_to_csc_hs_me1a_even : gem_pad_to_csc_hs_me1a_odd; }
38  else { return par==Parity::Even ? gem_pad_to_csc_hs_me1b_even : gem_pad_to_csc_hs_me1b_odd; }
39 }
40 
41 std::vector<int>
43 {
44  return par==Parity::Even ? gem_pad_to_csc_hs_even : gem_pad_to_csc_hs_odd;
45 }
46 
47 std::vector<std::pair<int,int> >
49 {
50  return par==Parity::Even ? csc_hs_to_gem_pad_even : csc_hs_to_gem_pad_odd;
51 }
52 
53 std::vector<std::pair<int,int> >
55 {
56  if (p==CSCPart::ME1A) { return par==Parity::Even ? csc_hs_to_gem_pad_me1a_even : csc_hs_to_gem_pad_me1a_odd; }
57  else { return par==Parity::Even ? csc_hs_to_gem_pad_me1b_even : csc_hs_to_gem_pad_me1b_odd; }
58 }
59 
60 std::vector<std::vector<double> >
62 {
63  if (p==CSCPart::ME1A) { return lut_wg_vs_hs_me1a; }
64  else if (p==CSCPart::ME1B) { return lut_wg_vs_hs_me1b; }
65  else { return lut_wg_vs_hs_me1ag; }
66 }
67 
69 {
70 }
71 
72 
75 {
76  lut_wg_eta_odd = {};
77  lut_wg_eta_even = {};
78 
79  /*
80  98% acceptance cuts of the GEM-CSC bending angle in ME1b
81  for various pT thresholds and for even/odd chambers
82  */
84  {3, 0.03971647, 0.01710244},
85  {5, 0.02123785, 0.00928431},
86  {7, 0.01475524, 0.00650928},
87  {10, 0.01023299, 0.00458796},
88  {15, 0.00689220, 0.00331313},
89  {20, 0.00535176, 0.00276152},
90  {30, 0.00389050, 0.00224959},
91  {40, 0.00329539, 0.00204670}};
92 
94  {0, 95},{0, 95},{0, 95},{0, 95},{0, 95},
95  {0, 95},{0, 95},{0, 95},{0, 95},{0, 95},
96  {0, 95},{0, 95},{0, 77},{0, 61},{0, 39},
97  {0, 22},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
98  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
99  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
100  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
101  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
102  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
103  {-1,-1},{-1,-1},{-1,-1} };
104 
106  {0, 31},{0, 31},{0, 31},{0, 31},{0, 31},
107  {0, 31},{0, 31},{0, 31},{0, 31},{0, 31},
108  {0, 31},{0, 31},{0, 31},{0, 31},{0, 31},
109  {0, 22},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
110  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
111  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
112  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
113  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
114  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
115  {-1,-1},{-1,-1},{-1,-1} };
116 
118  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
119  {-1,-1},{-1,-1},{-1,-1},{-1,-1},{-1,-1},
120  {100, 127},{73, 127},{47, 127},{22, 127},{0, 127},
121  {0, 127},{0, 127},{0, 127},{0, 127},{0, 127},
122  {0, 127},{0, 127},{0, 127},{0, 127},{0, 127},
123  {0, 127},{0, 127},{0, 127},{0, 127},{0, 127},
124  {0, 127},{0, 127},{0, 127},{0, 127},{0, 127},
125  {0, 127},{0, 127},{0, 127},{0, 127},{0, 127},
126  {0, 127},{0, 127},{0, 127},{0, 127},{0, 105},
127  {0, 93},{0, 78},{0, 63} };
128 
133 
138 
143 
148 
149  // LUTs for positive endcap differ from negative endcap!
154 }
155 
157 {
158 }
159 
160 
162 {
163  lut_wg_eta_odd = {};
164  lut_wg_eta_even = {};
165 
166  /*
167  98% acceptance cuts of the GEM-CSC bending angle in ME21
168  for various pT thresholds and for even/odd chambers
169  */
171  {3, 0.01832829, 0.01003643 },
172  {5, 0.01095490, 0.00631625 },
173  {7, 0.00786026, 0.00501017 },
174  {10, 0.00596349, 0.00414560 },
175  {15, 0.00462411, 0.00365550 },
176  {20, 0.00435298, 0.00361550 },
177  {30, 0.00465160, 0.00335700 },
178  {40, 0.00372145, 0.00366262 }
179  };
180 
185 
190 
193 
196 }
197 
198 
200 {
201 }
202 
203 
205  : lut_wg_eta_odd(0)
206  , lut_wg_eta_even(0)
207 
208  , rpc_roll_eta_limits_odd(0)
209  , rpc_roll_eta_limits_even(0)
210 
211  , rpc_strip_to_csc_hs_odd(0)
212  , rpc_strip_to_csc_hs_even(0)
213 
214  , csc_hs_to_rpc_strip_odd(0)
215  , csc_hs_to_rpc_strip_even(0)
216 
217  , csc_wg_to_rpc_roll_odd(0)
218  , csc_wg_to_rpc_roll_even(0)
219 {
220 }
221 
223 {
224 }
225 
228 {
229 }
230 
233 {
234 }
235 
236 std::vector<std::vector<double> >
238 {
240 }
241 
242 std::vector<std::pair<double,double> >
244 {
246 }
247 
248 std::vector<int>
250 {
252 }
253 
254 std::vector<std::pair<int,int> >
256 {
258 }
259 
260 std::vector<int>
262 {
264 }
virtual std::vector< int > get_gem_pad_to_csc_hs(Parity par, enum CSCPart) const
std::vector< std::pair< double, double > > get_rpc_roll_eta_limits(Parity par) const
std::vector< std::pair< int, int > > csc_wg_to_gem_roll_even_l1
std::vector< int > gem_pad_to_csc_hs_me1b_even
std::vector< int > gem_roll_to_csc_wg_odd_l1
std::vector< int > get_gem_roll_to_csc_wg(Parity par, int layer=1) const
std::vector< int > gem_pad_to_csc_hs_even
std::vector< int > csc_wg_to_rpc_roll_odd
std::vector< std::pair< int, int > > csc_hs_to_gem_pad_odd
std::vector< std::pair< double, double > > rpc_roll_eta_limits_even
std::vector< std::pair< double, double > > gem_roll_eta_limits_odd_l1
std::vector< std::vector< double > > lut_wg_eta_odd
std::vector< int > gem_pad_to_csc_hs_me1b_odd
std::vector< std::pair< int, int > > csc_hs_to_gem_pad_me1b_even
std::vector< int > gem_pad_to_csc_hs_me1a_odd
std::vector< std::vector< double > > lut_wg_vs_hs_me1a
std::vector< int > gem_pad_to_csc_hs_me1a_even
std::vector< int > gem_roll_to_csc_wg_even_l1
std::vector< std::vector< double > > get_lut_wg_eta(Parity par) const
std::vector< int > get_csc_wg_to_rpc_roll(Parity par) const
std::vector< std::pair< int, int > > csc_wg_to_gem_roll_odd_l2
std::vector< int > rpc_strip_to_csc_hs_odd
std::vector< int > csc_wg_to_rpc_roll_even
std::vector< int > gem_roll_to_csc_wg_even_l2
virtual std::vector< std::vector< double > > get_lut_wg_vs_hs(enum CSCPart) const
std::vector< std::vector< double > > lut_wg_eta_even
std::vector< std::pair< int, int > > csc_hs_to_gem_pad_even
std::vector< std::pair< int, int > > csc_wg_to_gem_roll_odd_l1
std::vector< std::pair< double, double > > gem_roll_eta_limits_odd_l2
std::vector< std::vector< double > > lut_wg_eta_odd
std::vector< std::vector< double > > lut_wg_vs_hs_me1ag
std::vector< std::pair< double, double > > gem_roll_eta_limits_even_l1
std::vector< std::pair< int, int > > csc_hs_to_rpc_strip_odd
std::vector< std::vector< double > > lut_wg_vs_hs_me1b
std::vector< int > gem_pad_to_csc_hs_odd
std::vector< std::pair< double, double > > gem_roll_eta_limits_even_l2
std::vector< int > gem_roll_to_csc_wg_odd_l2
std::vector< std::pair< int, int > > csc_wg_to_gem_roll_even_l2
std::vector< std::vector< double > > lut_wg_eta_even
std::vector< std::pair< int, int > > csc_hs_to_rpc_strip_even
std::vector< std::pair< int, int > > csc_hs_to_gem_pad_me1a_odd
std::vector< int > get_rpc_strip_to_csc_hs(Parity par) const
std::vector< std::vector< double > > lut_pt_vs_dphi_gemcsc
virtual std::vector< std::pair< int, int > > get_csc_hs_to_gem_pad(Parity par, enum CSCPart) const
std::vector< std::pair< int, int > > csc_hs_to_gem_pad_me1a_even
std::vector< std::pair< int, int > > csc_hs_to_gem_pad_me1b_odd
virtual std::vector< int > get_gem_pad_to_csc_hs(Parity par, enum CSCPart) const
std::vector< std::pair< int, int > > get_csc_hs_to_rpc_strip(Parity par) const
virtual std::vector< std::pair< int, int > > get_csc_hs_to_gem_pad(Parity par, enum CSCPart) const
std::vector< std::pair< int, int > > get_csc_wg_to_gem_roll(Parity par, int layer=1) const
std::vector< std::pair< double, double > > rpc_roll_eta_limits_odd
std::vector< int > rpc_strip_to_csc_hs_even