46 {0, 6, 12, 13, 20, -999},
47 {-999, -999, -999, -999, -999, -999},
48 {1, 7, 12, 14, 20, -999},
49 {3, 9, 13, 14, 21, -999},
50 {0, 3, 7, 12, 20, -999},
51 {-999, -999, -999, -999, -999, -999},
52 {2, 8, 12, 15, 20, -999},
53 {4, 10, 13, 15, 21, -999},
54 {0, 4, 8, 12, 20, -999},
55 {5, 11, 14, 15, 22, -999},
56 {1, 5, 8, 16, 20, -999},
57 {3, 5, 10, 13, -999, -999},
58 {0, 3, 5, 20, -999, -999}
63 static const int dPhiNLBMap_5bit_256Max[32] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
64 16, 17, 19, 20, 21, 23, 25, 28, 31, 34, 39, 46, 55, 68, 91, 136};
66 static const int dPhiNLBMap_6bit_256Max[64] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
67 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
68 32, 33, 34, 36, 37, 38, 39, 40, 42, 43, 45, 47, 49, 51, 53, 56,
69 58, 61, 65, 68, 73, 78, 83, 89, 97, 106, 116, 129, 145, 166, 193, 232};
72 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
73 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
74 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
75 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 77, 78, 79, 80, 81, 82, 83, 84, 86, 87, 88, 90,
76 91, 93, 94, 96, 97, 99, 101, 103, 105, 107, 109, 111, 113, 115, 118, 120, 123, 125, 128, 131, 134, 138,
77 141, 145, 149, 153, 157, 161, 166, 171, 176, 182, 188, 194, 201, 209, 217, 225, 235, 245};
82 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
83 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
84 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
85 66, 67, 68, 69, 71, 72, 73, 74, 75, 76, 77, 79, 80, 81, 83, 84, 86, 87, 89, 91, 92, 94,
86 96, 98, 100, 102, 105, 107, 110, 112, 115, 118, 121, 124, 127, 131, 135, 138, 143, 147, 152, 157, 162, 168,
87 174, 181, 188, 196, 204, 214, 224, 235, 247, 261, 276, 294, 313, 336, 361, 391, 427, 470};
90 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
91 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
92 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
93 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
94 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
95 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
96 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 152, 153, 154,
97 155, 156, 157, 158, 159, 160, 161, 162, 164, 165, 166, 167, 168, 170, 171, 172, 174, 175, 176, 178, 179, 180,
98 182, 183, 185, 186, 188, 190, 191, 193, 194, 196, 198, 200, 201, 203, 205, 207, 209, 211, 213, 215, 217, 219,
99 221, 223, 225, 228, 230, 232, 235, 237, 240, 242, 245, 248, 250, 253, 256, 259, 262, 265, 268, 272, 275, 278,
100 282, 285, 289, 293, 297, 300, 305, 309, 313, 317, 322, 327, 331, 336, 341, 347, 352, 358, 363, 369, 375, 382,
101 388, 395, 402, 410, 417, 425, 433, 442, 450, 460, 469, 479, 490, 500};
115 for (
int edge = 0; edge < (1 <<
bits) - 1; edge++) {
124 for (
int edge = 0; edge < (1 <<
bits) - 1; edge++) {
133 for (
int edge = 0; edge < (1 <<
bits) - 1; edge++) {
142 else if (
max == 512) {
145 for (
int edge = 0; edge < (1 <<
bits) - 1; edge++) {
154 for (
int edge = 0; edge < (1 <<
bits) - 1; edge++) {
165 return (sign_ * dPhi_);
169 int dPhiBin_ = (1 <<
bits) - 1;
177 for (
int edge = 0; edge < (1 <<
bits) - 1; edge++) {
185 for (
int edge = 0; edge < (1 <<
bits) - 1; edge++) {
193 for (
int edge = 0; edge < (1 <<
bits) - 1; edge++) {
202 else if (
max == 512) {
204 for (
int edge = 0; edge < (1 <<
bits) - 1; edge++) {
212 for (
int edge = 0; edge < (1 <<
bits) - 1; edge++) {
225 int dPhi_ = (1 <<
bits) - 1;
239 else if (
max == 512) {
303 return (sign_ * clct_);
311 else if (dTheta <= -2)
313 else if (dTheta <= -1)
315 else if (dTheta <= 0)
317 else if (dTheta <= 1)
319 else if (dTheta <= 2)
321 else if (dTheta <= 3)
355 int etaInt = ((
eta - 0.9) * 32) / (1.6) - 0.5;
358 etaInt = (etaInt > 31) ? 31 : etaInt;
363 thetaInt = (thetaInt > 127) ? 127 : thetaInt;
364 thetaInt = (thetaInt < 0) ? 0 : thetaInt;
365 float theta = thetaInt;
367 (3.14159265359 / 180);
374 etaInt = (etaInt > 31) ? 31 : etaInt;
375 etaInt = (etaInt < 0) ? 0 : etaInt;
380 float eta = ((0.5 + etaInt) * 1.6) / 32 + 0.9;
392 static const int FRLUT[2][5] = {{0b0000000100100, 0b0000001011010, 0b0101010101010, 0b0010101010100, 0b0010101010100},
393 {0b0000000100100, 0b0000001011010, 0b0111010100100, 0b0000101011010, 0b0000101011010}};
static const int dPhiNLBMap_7bit_512Max[128]
static const int ModeVariables_Scheme3[13][6]
float getEtaFromBin(int etaBin, int bits=5) const
int getEtaInt(float eta, int bits=5) const
float getEtaFromEtaInt(int etaInt, int bits=5) const
static const int dPhiNLBMap_5bit_256Max[32]
float getEtaFromThetaInt(int thetaInt, int bits=5) const
static const int dPhiNLBMap_7bit_256Max[128]
int getFRLUT(int sector, int station, int chamber) const
int getCLCT(int clct) const
Tan< T >::type tan(const T &t)
Abs< T >::type abs(const T &t)
static const int dPhiNLBMap_6bit_256Max[64]
int getNLBdPhi(int dPhi, int bits, int max=512) const
int getdPhiFromBin(int dPhiBin, int bits, int max=512) const
static const int FRLUT[2][5]
const int(* getModeVariables() const)[6]
int getdTheta(int dTheta) const
int getdEta(int dEta) const
int getNLBdPhiBin(int dPhi, int bits, int max=512) const
static unsigned int const shift
static const int dPhiNLBMap_8bit_512Max[256]
Geom::Theta< T > theta() const