#ifndef ROOT_Math_MatrixRepresentationsStatic
#define ROOT_Math_MatrixRepresentationsStatic 1
#ifndef ROOT_Math_StaticCheck
#include "Math/StaticCheck.h"
#endif
namespace ROOT {
namespace Math {
template <class T, unsigned int D1, unsigned int D2=D1>
class MatRepStd {
public:
typedef T value_type;
inline const T& operator()(unsigned int i, unsigned int j) const {
return fArray[i*D2+j];
}
inline T& operator()(unsigned int i, unsigned int j) {
return fArray[i*D2+j];
}
inline T& operator[](unsigned int i) { return fArray[i]; }
inline const T& operator[](unsigned int i) const { return fArray[i]; }
inline T apply(unsigned int i) const { return fArray[i]; }
inline T* Array() { return fArray; }
inline const T* Array() const { return fArray; }
template <class R>
inline MatRepStd<T, D1, D2>& operator+=(const R& rhs) {
for(unsigned int i=0; i<kSize; ++i) fArray[i] += rhs[i];
return *this;
}
template <class R>
inline MatRepStd<T, D1, D2>& operator-=(const R& rhs) {
for(unsigned int i=0; i<kSize; ++i) fArray[i] -= rhs[i];
return *this;
}
template <class R>
inline MatRepStd<T, D1, D2>& operator=(const R& rhs) {
for(unsigned int i=0; i<kSize; ++i) fArray[i] = rhs[i];
return *this;
}
template <class R>
inline bool operator==(const R& rhs) const {
bool rc = true;
for(unsigned int i=0; i<D1*D1; ++i) {
rc = rc && (fArray[i] == rhs[i]);
}
return rc;
}
enum {
kRows = D1,
kCols = D2,
kSize = D1*D2
};
private:
T fArray[kSize];
};
template<unsigned int D>
struct RowOffsets {
inline RowOffsets() {
int v[D];
v[0]=0;
for (unsigned int i=1; i<D; ++i)
v[i]=v[i-1]+i;
for (unsigned int i=0; i<D; ++i) {
for (unsigned int j=0; j<=i; ++j)
fOff[i*D+j] = v[i]+j;
for (unsigned int j=i+1; j<D; ++j)
fOff[i*D+j] = v[j]+i ;
}
}
inline int operator()(unsigned int i, unsigned int j) const { return fOff[i*D+j]; }
inline int apply(unsigned int i) const { return fOff[i]; }
int fOff[D*D];
};
static const int fOff1x1[] = {0};
static const int fOff2x2[] = {0, 1, 1, 2};
static const int fOff3x3[] = {0, 1, 3, 1, 2, 4, 3, 4, 5};
static const int fOff4x4[] = {0, 1, 3, 6, 1, 2, 4, 7, 3, 4, 5, 8, 6, 7, 8, 9};
static const int fOff5x5[] = {0, 1, 3, 6, 10, 1, 2, 4, 7, 11, 3, 4, 5, 8, 12, 6, 7, 8, 9, 13, 10, 11, 12, 13, 14};
static const int fOff6x6[] = {0, 1, 3, 6, 10, 15, 1, 2, 4, 7, 11, 16, 3, 4, 5, 8, 12, 17, 6, 7, 8, 9, 13, 18, 10, 11, 12, 13, 14, 19, 15, 16, 17, 18, 19, 20};
static const int fOff7x7[] = {0, 1, 3, 6, 10, 15, 21, 1, 2, 4, 7, 11, 16, 22, 3, 4, 5, 8, 12, 17, 23, 6, 7, 8, 9, 13, 18, 24, 10, 11, 12, 13, 14, 19, 25, 15, 16, 17, 18, 19, 20, 26, 21, 22, 23, 24, 25, 26, 27};
static const int fOff8x8[] = {0, 1, 3, 6, 10, 15, 21, 28, 1, 2, 4, 7, 11, 16, 22, 29, 3, 4, 5, 8, 12, 17, 23, 30, 6, 7, 8, 9, 13, 18, 24, 31, 10, 11, 12, 13, 14, 19, 25, 32, 15, 16, 17, 18, 19, 20, 26, 33, 21, 22, 23, 24, 25, 26, 27, 34, 28, 29, 30, 31, 32, 33, 34, 35};
static const int fOff9x9[] = {0, 1, 3, 6, 10, 15, 21, 28, 36, 1, 2, 4, 7, 11, 16, 22, 29, 37, 3, 4, 5, 8, 12, 17, 23, 30, 38, 6, 7, 8, 9, 13, 18, 24, 31, 39, 10, 11, 12, 13, 14, 19, 25, 32, 40, 15, 16, 17, 18, 19, 20, 26, 33, 41, 21, 22, 23, 24, 25, 26, 27, 34, 42, 28, 29, 30, 31, 32, 33, 34, 35, 43, 36, 37, 38, 39, 40, 41, 42, 43, 44};
static const int fOff10x10[] = {0, 1, 3, 6, 10, 15, 21, 28, 36, 45, 1, 2, 4, 7, 11, 16, 22, 29, 37, 46, 3, 4, 5, 8, 12, 17, 23, 30, 38, 47, 6, 7, 8, 9, 13, 18, 24, 31, 39, 48, 10, 11, 12, 13, 14, 19, 25, 32, 40, 49, 15, 16, 17, 18, 19, 20, 26, 33, 41, 50, 21, 22, 23, 24, 25, 26, 27, 34, 42, 51, 28, 29, 30, 31, 32, 33, 34, 35, 43, 52, 36, 37, 38, 39, 40, 41, 42, 43, 44, 53, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54};
template<>
struct RowOffsets<1> {
RowOffsets() {}
int operator()(unsigned int , unsigned int ) const { return 0; }
int apply(unsigned int ) const { return 0; }
};
template<>
struct RowOffsets<2> {
RowOffsets() {}
int operator()(unsigned int i, unsigned int j) const { return i+j; }
int apply(unsigned int i) const { return fOff2x2[i]; }
};
template<>
struct RowOffsets<3> {
RowOffsets() {}
int operator()(unsigned int i, unsigned int j) const { return fOff3x3[i*3+j]; }
int apply(unsigned int i) const { return fOff3x3[i]; }
};
template<>
struct RowOffsets<4> {
RowOffsets() {}
int operator()(unsigned int i, unsigned int j) const { return fOff4x4[i*4+j]; }
int apply(unsigned int i) const { return fOff4x4[i]; }
};
template<>
struct RowOffsets<5> {
inline RowOffsets() {}
inline int operator()(unsigned int i, unsigned int j) const { return fOff5x5[i*5+j]; }
inline int apply(unsigned int i) const { return fOff5x5[i]; }
};
template<>
struct RowOffsets<6> {
RowOffsets() {}
int operator()(unsigned int i, unsigned int j) const { return fOff6x6[i*6+j]; }
int apply(unsigned int i) const { return fOff6x6[i]; }
};
template<>
struct RowOffsets<7> {
RowOffsets() {}
int operator()(unsigned int i, unsigned int j) const { return fOff7x7[i*7+j]; }
int apply(unsigned int i) const { return fOff7x7[i]; }
};
template<>
struct RowOffsets<8> {
RowOffsets() {}
int operator()(unsigned int i, unsigned int j) const { return fOff8x8[i*8+j]; }
int apply(unsigned int i) const { return fOff8x8[i]; }
};
template<>
struct RowOffsets<9> {
RowOffsets() {}
int operator()(unsigned int i, unsigned int j) const { return fOff9x9[i*9+j]; }
int apply(unsigned int i) const { return fOff9x9[i]; }
};
template<>
struct RowOffsets<10> {
RowOffsets() {}
int operator()(unsigned int i, unsigned int j) const { return fOff10x10[i*10+j]; }
int apply(unsigned int i) const { return fOff10x10[i]; }
};
template <class T, unsigned int D>
class MatRepSym {
public:
MatRepSym() :fOff(0) { CreateOffsets(); }
typedef T value_type;
inline const T& operator()(unsigned int i, unsigned int j) const {
return fArray[Offsets()(i,j)];
}
inline T& operator()(unsigned int i, unsigned int j) {
return fArray[Offsets()(i,j)];
}
inline T& operator[](unsigned int i) {
return fArray[Offsets().apply(i) ];
}
inline const T& operator[](unsigned int i) const {
return fArray[Offsets().apply(i) ];
}
inline T apply(unsigned int i) const {
return fArray[Offsets().apply(i) ];
}
inline T* Array() { return fArray; }
inline const T* Array() const { return fArray; }
template <class R>
inline MatRepSym<T, D>& operator=(const R& rhs) {
STATIC_CHECK(0==1,
Cannot_assign_general_to_symmetric_matrix_representation);
return *this;
}
inline MatRepSym<T, D>& operator=(const MatRepSym& rhs) {
for(unsigned int i=0; i<kSize; ++i) fArray[i] = rhs.Array()[i];
return *this;
}
template <class R>
inline MatRepSym<T, D>& operator+=(const R& rhs) {
STATIC_CHECK(0==1,
Cannot_add_general_to_symmetric_matrix_representation);
return *this;
}
inline MatRepSym<T, D>& operator+=(const MatRepSym& rhs) {
for(unsigned int i=0; i<kSize; ++i) fArray[i] += rhs.Array()[i];
return *this;
}
template <class R>
inline MatRepSym<T, D>& operator-=(const R& rhs) {
STATIC_CHECK(0==1,
Cannot_substract_general_to_symmetric_matrix_representation);
return *this;
}
inline MatRepSym<T, D>& operator-=(const MatRepSym& rhs) {
for(unsigned int i=0; i<kSize; ++i) fArray[i] -= rhs.Array()[i];
return *this;
}
template <class R>
inline bool operator==(const R& rhs) const {
bool rc = true;
for(unsigned int i=0; i<D*D; ++i) {
rc = rc && (operator[](i) == rhs[i]);
}
return rc;
}
enum {
kRows = D,
kCols = D,
kSize = D*(D+1)/2
};
void CreateOffsets() {
const static RowOffsets<D> off;
fOff = &off;
}
inline const RowOffsets<D> & Offsets() const {
return *fOff;
}
private:
T fArray[kSize];
const RowOffsets<D> * fOff;
};
}
}
#endif // MATH_MATRIXREPRESENTATIONSSTATIC_H
MatrixRepresentationsStatic.h:1 MatrixRepresentationsStatic.h:2 MatrixRepresentationsStatic.h:3 MatrixRepresentationsStatic.h:4 MatrixRepresentationsStatic.h:5 MatrixRepresentationsStatic.h:6 MatrixRepresentationsStatic.h:7 MatrixRepresentationsStatic.h:8 MatrixRepresentationsStatic.h:9 MatrixRepresentationsStatic.h:10 MatrixRepresentationsStatic.h:11 MatrixRepresentationsStatic.h:12 MatrixRepresentationsStatic.h:13 MatrixRepresentationsStatic.h:14 MatrixRepresentationsStatic.h:15 MatrixRepresentationsStatic.h:16 MatrixRepresentationsStatic.h:17 MatrixRepresentationsStatic.h:18 MatrixRepresentationsStatic.h:19 MatrixRepresentationsStatic.h:20 MatrixRepresentationsStatic.h:21 MatrixRepresentationsStatic.h:22 MatrixRepresentationsStatic.h:23 MatrixRepresentationsStatic.h:24 MatrixRepresentationsStatic.h:25 MatrixRepresentationsStatic.h:26 MatrixRepresentationsStatic.h:27 MatrixRepresentationsStatic.h:28 MatrixRepresentationsStatic.h:29 MatrixRepresentationsStatic.h:30 MatrixRepresentationsStatic.h:31 MatrixRepresentationsStatic.h:32 MatrixRepresentationsStatic.h:33 MatrixRepresentationsStatic.h:34 MatrixRepresentationsStatic.h:35 MatrixRepresentationsStatic.h:36 MatrixRepresentationsStatic.h:37 MatrixRepresentationsStatic.h:38 MatrixRepresentationsStatic.h:39 MatrixRepresentationsStatic.h:40 MatrixRepresentationsStatic.h:41 MatrixRepresentationsStatic.h:42 MatrixRepresentationsStatic.h:43 MatrixRepresentationsStatic.h:44 MatrixRepresentationsStatic.h:45 MatrixRepresentationsStatic.h:46 MatrixRepresentationsStatic.h:47 MatrixRepresentationsStatic.h:48 MatrixRepresentationsStatic.h:49 MatrixRepresentationsStatic.h:50 MatrixRepresentationsStatic.h:51 MatrixRepresentationsStatic.h:52 MatrixRepresentationsStatic.h:53 MatrixRepresentationsStatic.h:54 MatrixRepresentationsStatic.h:55 MatrixRepresentationsStatic.h:56 MatrixRepresentationsStatic.h:57 MatrixRepresentationsStatic.h:58 MatrixRepresentationsStatic.h:59 MatrixRepresentationsStatic.h:60 MatrixRepresentationsStatic.h:61 MatrixRepresentationsStatic.h:62 MatrixRepresentationsStatic.h:63 MatrixRepresentationsStatic.h:64 MatrixRepresentationsStatic.h:65 MatrixRepresentationsStatic.h:66 MatrixRepresentationsStatic.h:67 MatrixRepresentationsStatic.h:68 MatrixRepresentationsStatic.h:69 MatrixRepresentationsStatic.h:70 MatrixRepresentationsStatic.h:71 MatrixRepresentationsStatic.h:72 MatrixRepresentationsStatic.h:73 MatrixRepresentationsStatic.h:74 MatrixRepresentationsStatic.h:75 MatrixRepresentationsStatic.h:76 MatrixRepresentationsStatic.h:77 MatrixRepresentationsStatic.h:78 MatrixRepresentationsStatic.h:79 MatrixRepresentationsStatic.h:80 MatrixRepresentationsStatic.h:81 MatrixRepresentationsStatic.h:82 MatrixRepresentationsStatic.h:83 MatrixRepresentationsStatic.h:84 MatrixRepresentationsStatic.h:85 MatrixRepresentationsStatic.h:86 MatrixRepresentationsStatic.h:87 MatrixRepresentationsStatic.h:88 MatrixRepresentationsStatic.h:89 MatrixRepresentationsStatic.h:90 MatrixRepresentationsStatic.h:91 MatrixRepresentationsStatic.h:92 MatrixRepresentationsStatic.h:93 MatrixRepresentationsStatic.h:94 MatrixRepresentationsStatic.h:95 MatrixRepresentationsStatic.h:96 MatrixRepresentationsStatic.h:97 MatrixRepresentationsStatic.h:98 MatrixRepresentationsStatic.h:99 MatrixRepresentationsStatic.h:100 MatrixRepresentationsStatic.h:101 MatrixRepresentationsStatic.h:102 MatrixRepresentationsStatic.h:103 MatrixRepresentationsStatic.h:104 MatrixRepresentationsStatic.h:105 MatrixRepresentationsStatic.h:106 MatrixRepresentationsStatic.h:107 MatrixRepresentationsStatic.h:108 MatrixRepresentationsStatic.h:109 MatrixRepresentationsStatic.h:110 MatrixRepresentationsStatic.h:111 MatrixRepresentationsStatic.h:112 MatrixRepresentationsStatic.h:113 MatrixRepresentationsStatic.h:114 MatrixRepresentationsStatic.h:115 MatrixRepresentationsStatic.h:116 MatrixRepresentationsStatic.h:117 MatrixRepresentationsStatic.h:118 MatrixRepresentationsStatic.h:119 MatrixRepresentationsStatic.h:120 MatrixRepresentationsStatic.h:121 MatrixRepresentationsStatic.h:122 MatrixRepresentationsStatic.h:123 MatrixRepresentationsStatic.h:124 MatrixRepresentationsStatic.h:125 MatrixRepresentationsStatic.h:126 MatrixRepresentationsStatic.h:127 MatrixRepresentationsStatic.h:128 MatrixRepresentationsStatic.h:129 MatrixRepresentationsStatic.h:130 MatrixRepresentationsStatic.h:131 MatrixRepresentationsStatic.h:132 MatrixRepresentationsStatic.h:133 MatrixRepresentationsStatic.h:134 MatrixRepresentationsStatic.h:135 MatrixRepresentationsStatic.h:136 MatrixRepresentationsStatic.h:137 MatrixRepresentationsStatic.h:138 MatrixRepresentationsStatic.h:139 MatrixRepresentationsStatic.h:140 MatrixRepresentationsStatic.h:141 MatrixRepresentationsStatic.h:142 MatrixRepresentationsStatic.h:143 MatrixRepresentationsStatic.h:144 MatrixRepresentationsStatic.h:145 MatrixRepresentationsStatic.h:146 MatrixRepresentationsStatic.h:147 MatrixRepresentationsStatic.h:148 MatrixRepresentationsStatic.h:149 MatrixRepresentationsStatic.h:150 MatrixRepresentationsStatic.h:151 MatrixRepresentationsStatic.h:152 MatrixRepresentationsStatic.h:153 MatrixRepresentationsStatic.h:154 MatrixRepresentationsStatic.h:155 MatrixRepresentationsStatic.h:156 MatrixRepresentationsStatic.h:157 MatrixRepresentationsStatic.h:158 MatrixRepresentationsStatic.h:159 MatrixRepresentationsStatic.h:160 MatrixRepresentationsStatic.h:161 MatrixRepresentationsStatic.h:162 MatrixRepresentationsStatic.h:163 MatrixRepresentationsStatic.h:164 MatrixRepresentationsStatic.h:165 MatrixRepresentationsStatic.h:166 MatrixRepresentationsStatic.h:167 MatrixRepresentationsStatic.h:168 MatrixRepresentationsStatic.h:169 MatrixRepresentationsStatic.h:170 MatrixRepresentationsStatic.h:171 MatrixRepresentationsStatic.h:172 MatrixRepresentationsStatic.h:173 MatrixRepresentationsStatic.h:174 MatrixRepresentationsStatic.h:175 MatrixRepresentationsStatic.h:176 MatrixRepresentationsStatic.h:177 MatrixRepresentationsStatic.h:178 MatrixRepresentationsStatic.h:179 MatrixRepresentationsStatic.h:180 MatrixRepresentationsStatic.h:181 MatrixRepresentationsStatic.h:182 MatrixRepresentationsStatic.h:183 MatrixRepresentationsStatic.h:184 MatrixRepresentationsStatic.h:185 MatrixRepresentationsStatic.h:186 MatrixRepresentationsStatic.h:187 MatrixRepresentationsStatic.h:188 MatrixRepresentationsStatic.h:189 MatrixRepresentationsStatic.h:190 MatrixRepresentationsStatic.h:191 MatrixRepresentationsStatic.h:192 MatrixRepresentationsStatic.h:193 MatrixRepresentationsStatic.h:194 MatrixRepresentationsStatic.h:195 MatrixRepresentationsStatic.h:196 MatrixRepresentationsStatic.h:197 MatrixRepresentationsStatic.h:198 MatrixRepresentationsStatic.h:199 MatrixRepresentationsStatic.h:200 MatrixRepresentationsStatic.h:201 MatrixRepresentationsStatic.h:202 MatrixRepresentationsStatic.h:203 MatrixRepresentationsStatic.h:204 MatrixRepresentationsStatic.h:205 MatrixRepresentationsStatic.h:206 MatrixRepresentationsStatic.h:207 MatrixRepresentationsStatic.h:208 MatrixRepresentationsStatic.h:209 MatrixRepresentationsStatic.h:210 MatrixRepresentationsStatic.h:211 MatrixRepresentationsStatic.h:212 MatrixRepresentationsStatic.h:213 MatrixRepresentationsStatic.h:214 MatrixRepresentationsStatic.h:215 MatrixRepresentationsStatic.h:216 MatrixRepresentationsStatic.h:217 MatrixRepresentationsStatic.h:218 MatrixRepresentationsStatic.h:219 MatrixRepresentationsStatic.h:220 MatrixRepresentationsStatic.h:221 MatrixRepresentationsStatic.h:222 MatrixRepresentationsStatic.h:223 MatrixRepresentationsStatic.h:224 MatrixRepresentationsStatic.h:225 MatrixRepresentationsStatic.h:226 MatrixRepresentationsStatic.h:227 MatrixRepresentationsStatic.h:228 MatrixRepresentationsStatic.h:229 MatrixRepresentationsStatic.h:230 MatrixRepresentationsStatic.h:231 MatrixRepresentationsStatic.h:232 MatrixRepresentationsStatic.h:233 MatrixRepresentationsStatic.h:234 MatrixRepresentationsStatic.h:235 MatrixRepresentationsStatic.h:236 MatrixRepresentationsStatic.h:237 MatrixRepresentationsStatic.h:238 MatrixRepresentationsStatic.h:239 MatrixRepresentationsStatic.h:240 MatrixRepresentationsStatic.h:241 MatrixRepresentationsStatic.h:242 MatrixRepresentationsStatic.h:243 MatrixRepresentationsStatic.h:244 MatrixRepresentationsStatic.h:245 MatrixRepresentationsStatic.h:246 MatrixRepresentationsStatic.h:247 MatrixRepresentationsStatic.h:248 MatrixRepresentationsStatic.h:249 MatrixRepresentationsStatic.h:250 MatrixRepresentationsStatic.h:251 MatrixRepresentationsStatic.h:252 MatrixRepresentationsStatic.h:253 MatrixRepresentationsStatic.h:254 MatrixRepresentationsStatic.h:255 MatrixRepresentationsStatic.h:256 MatrixRepresentationsStatic.h:257 MatrixRepresentationsStatic.h:258 MatrixRepresentationsStatic.h:259 MatrixRepresentationsStatic.h:260 MatrixRepresentationsStatic.h:261 MatrixRepresentationsStatic.h:262 MatrixRepresentationsStatic.h:263 MatrixRepresentationsStatic.h:264 MatrixRepresentationsStatic.h:265 MatrixRepresentationsStatic.h:266 MatrixRepresentationsStatic.h:267 MatrixRepresentationsStatic.h:268 MatrixRepresentationsStatic.h:269 MatrixRepresentationsStatic.h:270 MatrixRepresentationsStatic.h:271 MatrixRepresentationsStatic.h:272 MatrixRepresentationsStatic.h:273 MatrixRepresentationsStatic.h:274 MatrixRepresentationsStatic.h:275 MatrixRepresentationsStatic.h:276 MatrixRepresentationsStatic.h:277 MatrixRepresentationsStatic.h:278 MatrixRepresentationsStatic.h:279 MatrixRepresentationsStatic.h:280 MatrixRepresentationsStatic.h:281 MatrixRepresentationsStatic.h:282 MatrixRepresentationsStatic.h:283 MatrixRepresentationsStatic.h:284 MatrixRepresentationsStatic.h:285 MatrixRepresentationsStatic.h:286 MatrixRepresentationsStatic.h:287 MatrixRepresentationsStatic.h:288 MatrixRepresentationsStatic.h:289 MatrixRepresentationsStatic.h:290 MatrixRepresentationsStatic.h:291 MatrixRepresentationsStatic.h:292 MatrixRepresentationsStatic.h:293 MatrixRepresentationsStatic.h:294 MatrixRepresentationsStatic.h:295 MatrixRepresentationsStatic.h:296 MatrixRepresentationsStatic.h:297 MatrixRepresentationsStatic.h:298 MatrixRepresentationsStatic.h:299 MatrixRepresentationsStatic.h:300 MatrixRepresentationsStatic.h:301 MatrixRepresentationsStatic.h:302 MatrixRepresentationsStatic.h:303 MatrixRepresentationsStatic.h:304 MatrixRepresentationsStatic.h:305 MatrixRepresentationsStatic.h:306 MatrixRepresentationsStatic.h:307 MatrixRepresentationsStatic.h:308 MatrixRepresentationsStatic.h:309 MatrixRepresentationsStatic.h:310 MatrixRepresentationsStatic.h:311 MatrixRepresentationsStatic.h:312 MatrixRepresentationsStatic.h:313 MatrixRepresentationsStatic.h:314 MatrixRepresentationsStatic.h:315 MatrixRepresentationsStatic.h:316 MatrixRepresentationsStatic.h:317 MatrixRepresentationsStatic.h:318 MatrixRepresentationsStatic.h:319 MatrixRepresentationsStatic.h:320 MatrixRepresentationsStatic.h:321 MatrixRepresentationsStatic.h:322 MatrixRepresentationsStatic.h:323 MatrixRepresentationsStatic.h:324 MatrixRepresentationsStatic.h:325 MatrixRepresentationsStatic.h:326 MatrixRepresentationsStatic.h:327 MatrixRepresentationsStatic.h:328 MatrixRepresentationsStatic.h:329 MatrixRepresentationsStatic.h:330 MatrixRepresentationsStatic.h:331 MatrixRepresentationsStatic.h:332 MatrixRepresentationsStatic.h:333 MatrixRepresentationsStatic.h:334 MatrixRepresentationsStatic.h:335 MatrixRepresentationsStatic.h:336 MatrixRepresentationsStatic.h:337 MatrixRepresentationsStatic.h:338 MatrixRepresentationsStatic.h:339 MatrixRepresentationsStatic.h:340 MatrixRepresentationsStatic.h:341 MatrixRepresentationsStatic.h:342 MatrixRepresentationsStatic.h:343 MatrixRepresentationsStatic.h:344 MatrixRepresentationsStatic.h:345 MatrixRepresentationsStatic.h:346 MatrixRepresentationsStatic.h:347 MatrixRepresentationsStatic.h:348 MatrixRepresentationsStatic.h:349 MatrixRepresentationsStatic.h:350 MatrixRepresentationsStatic.h:351 MatrixRepresentationsStatic.h:352 MatrixRepresentationsStatic.h:353 MatrixRepresentationsStatic.h:354 MatrixRepresentationsStatic.h:355 MatrixRepresentationsStatic.h:356 MatrixRepresentationsStatic.h:357 MatrixRepresentationsStatic.h:358 MatrixRepresentationsStatic.h:359 MatrixRepresentationsStatic.h:360 MatrixRepresentationsStatic.h:361 MatrixRepresentationsStatic.h:362 MatrixRepresentationsStatic.h:363 MatrixRepresentationsStatic.h:364 MatrixRepresentationsStatic.h:365 MatrixRepresentationsStatic.h:366 MatrixRepresentationsStatic.h:367 MatrixRepresentationsStatic.h:368 MatrixRepresentationsStatic.h:369 MatrixRepresentationsStatic.h:370 MatrixRepresentationsStatic.h:371 MatrixRepresentationsStatic.h:372 MatrixRepresentationsStatic.h:373