20 #ifndef ROOT_Math_CramerInversion_icc 21 #define ROOT_Math_CramerInversion_icc 39 template <
class MatrixRep>
42 typedef typename MatrixRep::value_type
Scalar;
48 const Scalar c00 = rhs[4] * rhs[8] - rhs[5] * rhs[7];
49 const Scalar c01 = rhs[5] * rhs[6] - rhs[3] * rhs[8];
50 const Scalar c02 = rhs[3] * rhs[7] - rhs[4] * rhs[6];
51 const Scalar c10 = rhs[7] * rhs[2] - rhs[8] * rhs[1];
52 const Scalar c11 = rhs[8] * rhs[0] - rhs[6] * rhs[2];
53 const Scalar c12 = rhs[6] * rhs[1] - rhs[7] * rhs[0];
54 const Scalar c20 = rhs[1] * rhs[5] - rhs[2] * rhs[4];
55 const Scalar c21 = rhs[2] * rhs[3] - rhs[0] * rhs[5];
56 const Scalar c22 = rhs[0] * rhs[4] - rhs[1] * rhs[3];
58 const Scalar t0 = std::abs(rhs[0]);
59 const Scalar
t1 = std::abs(rhs[3]);
60 const Scalar t2 = std::abs(rhs[6]);
66 det = c12*c01-c11*c02;
69 det = c11*c22-c12*c21;
71 }
else if (t2 >= t1) {
73 det = c12*c01-c11*c02;
76 det = c02*c21-c01*c22;
79 if ( det == 0 || tmp == 0) {
83 const Scalar s = tmp/det;
130 template <
class MatrixRep>
133 typedef typename MatrixRep::value_type
Scalar;
141 const Scalar det2_12_01 = rhs[
F10]*rhs[
F21] - rhs[
F11]*rhs[
F20];
142 const Scalar det2_12_02 = rhs[
F10]*rhs[
F22] - rhs[
F12]*rhs[
F20];
143 const Scalar det2_12_03 = rhs[
F10]*rhs[
F23] - rhs[
F13]*rhs[
F20];
144 const Scalar det2_12_13 = rhs[
F11]*rhs[
F23] - rhs[
F13]*rhs[
F21];
145 const Scalar det2_12_23 = rhs[
F12]*rhs[
F23] - rhs[
F13]*rhs[
F22];
146 const Scalar det2_12_12 = rhs[
F11]*rhs[
F22] - rhs[
F12]*rhs[
F21];
147 const Scalar det2_13_01 = rhs[
F10]*rhs[
F31] - rhs[
F11]*rhs[
F30];
148 const Scalar det2_13_02 = rhs[
F10]*rhs[
F32] - rhs[
F12]*rhs[
F30];
149 const Scalar det2_13_03 = rhs[
F10]*rhs[
F33] - rhs[
F13]*rhs[
F30];
150 const Scalar det2_13_12 = rhs[
F11]*rhs[
F32] - rhs[
F12]*rhs[
F31];
151 const Scalar det2_13_13 = rhs[
F11]*rhs[
F33] - rhs[
F13]*rhs[
F31];
152 const Scalar det2_13_23 = rhs[
F12]*rhs[
F33] - rhs[
F13]*rhs[
F32];
153 const Scalar det2_23_01 = rhs[
F20]*rhs[
F31] - rhs[
F21]*rhs[
F30];
154 const Scalar det2_23_02 = rhs[
F20]*rhs[
F32] - rhs[
F22]*rhs[
F30];
155 const Scalar det2_23_03 = rhs[
F20]*rhs[
F33] - rhs[
F23]*rhs[
F30];
156 const Scalar det2_23_12 = rhs[
F21]*rhs[
F32] - rhs[
F22]*rhs[
F31];
157 const Scalar det2_23_13 = rhs[
F21]*rhs[
F33] - rhs[
F23]*rhs[
F31];
158 const Scalar det2_23_23 = rhs[
F22]*rhs[
F33] - rhs[
F23]*rhs[
F32];
162 const Scalar det3_012_012 = rhs[
F00]*det2_12_12 - rhs[
F01]*det2_12_02
163 + rhs[
F02]*det2_12_01;
164 const Scalar det3_012_013 = rhs[
F00]*det2_12_13 - rhs[
F01]*det2_12_03
165 + rhs[
F03]*det2_12_01;
166 const Scalar det3_012_023 = rhs[
F00]*det2_12_23 - rhs[
F02]*det2_12_03
167 + rhs[
F03]*det2_12_02;
168 const Scalar det3_012_123 = rhs[
F01]*det2_12_23 - rhs[
F02]*det2_12_13
169 + rhs[
F03]*det2_12_12;
170 const Scalar det3_013_012 = rhs[
F00]*det2_13_12 - rhs[
F01]*det2_13_02
171 + rhs[
F02]*det2_13_01;
172 const Scalar det3_013_013 = rhs[
F00]*det2_13_13 - rhs[
F01]*det2_13_03
173 + rhs[
F03]*det2_13_01;
174 const Scalar det3_013_023 = rhs[
F00]*det2_13_23 - rhs[
F02]*det2_13_03
175 + rhs[
F03]*det2_13_02;
176 const Scalar det3_013_123 = rhs[
F01]*det2_13_23 - rhs[
F02]*det2_13_13
177 + rhs[
F03]*det2_13_12;
178 const Scalar det3_023_012 = rhs[
F00]*det2_23_12 - rhs[
F01]*det2_23_02
179 + rhs[
F02]*det2_23_01;
180 const Scalar det3_023_013 = rhs[
F00]*det2_23_13 - rhs[
F01]*det2_23_03
181 + rhs[
F03]*det2_23_01;
182 const Scalar det3_023_023 = rhs[
F00]*det2_23_23 - rhs[
F02]*det2_23_03
183 + rhs[
F03]*det2_23_02;
184 const Scalar det3_023_123 = rhs[
F01]*det2_23_23 - rhs[
F02]*det2_23_13
185 + rhs[
F03]*det2_23_12;
186 const Scalar det3_123_012 = rhs[
F10]*det2_23_12 - rhs[
F11]*det2_23_02
187 + rhs[
F12]*det2_23_01;
188 const Scalar det3_123_013 = rhs[
F10]*det2_23_13 - rhs[
F11]*det2_23_03
189 + rhs[
F13]*det2_23_01;
190 const Scalar det3_123_023 = rhs[
F10]*det2_23_23 - rhs[
F12]*det2_23_03
191 + rhs[
F13]*det2_23_02;
192 const Scalar det3_123_123 = rhs[
F11]*det2_23_23 - rhs[
F12]*det2_23_13
193 + rhs[
F13]*det2_23_12;
197 const Scalar det = rhs[
F00]*det3_123_123 - rhs[
F01]*det3_123_023
198 + rhs[
F02]*det3_123_013 - rhs[
F03]*det3_123_012;
208 const Scalar oneOverDet = 1.0f / det;
209 const Scalar mn1OverDet = - oneOverDet;
211 rhs[
F00] = det3_123_123 * oneOverDet;
212 rhs[
F01] = det3_023_123 * mn1OverDet;
213 rhs[
F02] = det3_013_123 * oneOverDet;
214 rhs[
F03] = det3_012_123 * mn1OverDet;
216 rhs[
F10] = det3_123_023 * mn1OverDet;
217 rhs[
F11] = det3_023_023 * oneOverDet;
218 rhs[
F12] = det3_013_023 * mn1OverDet;
219 rhs[
F13] = det3_012_023 * oneOverDet;
221 rhs[
F20] = det3_123_013 * oneOverDet;
222 rhs[
F21] = det3_023_013 * mn1OverDet;
223 rhs[
F22] = det3_013_013 * oneOverDet;
224 rhs[
F23] = det3_012_013 * mn1OverDet;
226 rhs[
F30] = det3_123_012 * mn1OverDet;
227 rhs[
F31] = det3_023_012 * oneOverDet;
228 rhs[
F32] = det3_013_012 * mn1OverDet;
229 rhs[
F33] = det3_012_012 * oneOverDet;
272 template <
class MatrixRep>
275 typedef typename MatrixRep::value_type
Scalar;
284 const Scalar det2_23_01 = rhs[
M20]*rhs[
M31] - rhs[
M21]*rhs[
M30];
285 const Scalar det2_23_02 = rhs[
M20]*rhs[
M32] - rhs[
M22]*rhs[
M30];
286 const Scalar det2_23_03 = rhs[
M20]*rhs[
M33] - rhs[
M23]*rhs[
M30];
287 const Scalar det2_23_04 = rhs[
M20]*rhs[
M34] - rhs[
M24]*rhs[
M30];
288 const Scalar det2_23_12 = rhs[
M21]*rhs[
M32] - rhs[
M22]*rhs[
M31];
289 const Scalar det2_23_13 = rhs[
M21]*rhs[
M33] - rhs[
M23]*rhs[
M31];
290 const Scalar det2_23_14 = rhs[
M21]*rhs[
M34] - rhs[
M24]*rhs[
M31];
291 const Scalar det2_23_23 = rhs[
M22]*rhs[
M33] - rhs[
M23]*rhs[
M32];
292 const Scalar det2_23_24 = rhs[
M22]*rhs[
M34] - rhs[
M24]*rhs[
M32];
293 const Scalar det2_23_34 = rhs[
M23]*rhs[
M34] - rhs[
M24]*rhs[
M33];
294 const Scalar det2_24_01 = rhs[
M20]*rhs[
M41] - rhs[
M21]*rhs[
M40];
295 const Scalar det2_24_02 = rhs[
M20]*rhs[
M42] - rhs[
M22]*rhs[
M40];
296 const Scalar det2_24_03 = rhs[
M20]*rhs[
M43] - rhs[
M23]*rhs[
M40];
297 const Scalar det2_24_04 = rhs[
M20]*rhs[
M44] - rhs[
M24]*rhs[
M40];
298 const Scalar det2_24_12 = rhs[
M21]*rhs[
M42] - rhs[
M22]*rhs[
M41];
299 const Scalar det2_24_13 = rhs[
M21]*rhs[
M43] - rhs[
M23]*rhs[
M41];
300 const Scalar det2_24_14 = rhs[
M21]*rhs[
M44] - rhs[
M24]*rhs[
M41];
301 const Scalar det2_24_23 = rhs[
M22]*rhs[
M43] - rhs[
M23]*rhs[
M42];
302 const Scalar det2_24_24 = rhs[
M22]*rhs[
M44] - rhs[
M24]*rhs[
M42];
303 const Scalar det2_24_34 = rhs[
M23]*rhs[
M44] - rhs[
M24]*rhs[
M43];
304 const Scalar det2_34_01 = rhs[
M30]*rhs[
M41] - rhs[
M31]*rhs[
M40];
305 const Scalar det2_34_02 = rhs[
M30]*rhs[
M42] - rhs[
M32]*rhs[
M40];
306 const Scalar det2_34_03 = rhs[
M30]*rhs[
M43] - rhs[
M33]*rhs[
M40];
307 const Scalar det2_34_04 = rhs[
M30]*rhs[
M44] - rhs[
M34]*rhs[
M40];
308 const Scalar det2_34_12 = rhs[
M31]*rhs[
M42] - rhs[
M32]*rhs[
M41];
309 const Scalar det2_34_13 = rhs[
M31]*rhs[
M43] - rhs[
M33]*rhs[
M41];
310 const Scalar det2_34_14 = rhs[
M31]*rhs[
M44] - rhs[
M34]*rhs[
M41];
311 const Scalar det2_34_23 = rhs[
M32]*rhs[
M43] - rhs[
M33]*rhs[
M42];
312 const Scalar det2_34_24 = rhs[
M32]*rhs[
M44] - rhs[
M34]*rhs[
M42];
313 const Scalar det2_34_34 = rhs[
M33]*rhs[
M44] - rhs[
M34]*rhs[
M43];
317 const Scalar det3_123_012 = rhs[
M10]*det2_23_12 - rhs[
M11]*det2_23_02 + rhs[
M12]*det2_23_01;
318 const Scalar det3_123_013 = rhs[
M10]*det2_23_13 - rhs[
M11]*det2_23_03 + rhs[
M13]*det2_23_01;
319 const Scalar det3_123_014 = rhs[
M10]*det2_23_14 - rhs[
M11]*det2_23_04 + rhs[
M14]*det2_23_01;
320 const Scalar det3_123_023 = rhs[
M10]*det2_23_23 - rhs[
M12]*det2_23_03 + rhs[
M13]*det2_23_02;
321 const Scalar det3_123_024 = rhs[
M10]*det2_23_24 - rhs[
M12]*det2_23_04 + rhs[
M14]*det2_23_02;
322 const Scalar det3_123_034 = rhs[
M10]*det2_23_34 - rhs[
M13]*det2_23_04 + rhs[
M14]*det2_23_03;
323 const Scalar det3_123_123 = rhs[
M11]*det2_23_23 - rhs[
M12]*det2_23_13 + rhs[
M13]*det2_23_12;
324 const Scalar det3_123_124 = rhs[
M11]*det2_23_24 - rhs[
M12]*det2_23_14 + rhs[
M14]*det2_23_12;
325 const Scalar det3_123_134 = rhs[
M11]*det2_23_34 - rhs[
M13]*det2_23_14 + rhs[
M14]*det2_23_13;
326 const Scalar det3_123_234 = rhs[
M12]*det2_23_34 - rhs[
M13]*det2_23_24 + rhs[
M14]*det2_23_23;
327 const Scalar det3_124_012 = rhs[
M10]*det2_24_12 - rhs[
M11]*det2_24_02 + rhs[
M12]*det2_24_01;
328 const Scalar det3_124_013 = rhs[
M10]*det2_24_13 - rhs[
M11]*det2_24_03 + rhs[
M13]*det2_24_01;
329 const Scalar det3_124_014 = rhs[
M10]*det2_24_14 - rhs[
M11]*det2_24_04 + rhs[
M14]*det2_24_01;
330 const Scalar det3_124_023 = rhs[
M10]*det2_24_23 - rhs[
M12]*det2_24_03 + rhs[
M13]*det2_24_02;
331 const Scalar det3_124_024 = rhs[
M10]*det2_24_24 - rhs[
M12]*det2_24_04 + rhs[
M14]*det2_24_02;
332 const Scalar det3_124_034 = rhs[
M10]*det2_24_34 - rhs[
M13]*det2_24_04 + rhs[
M14]*det2_24_03;
333 const Scalar det3_124_123 = rhs[
M11]*det2_24_23 - rhs[
M12]*det2_24_13 + rhs[
M13]*det2_24_12;
334 const Scalar det3_124_124 = rhs[
M11]*det2_24_24 - rhs[
M12]*det2_24_14 + rhs[
M14]*det2_24_12;
335 const Scalar det3_124_134 = rhs[
M11]*det2_24_34 - rhs[
M13]*det2_24_14 + rhs[
M14]*det2_24_13;
336 const Scalar det3_124_234 = rhs[
M12]*det2_24_34 - rhs[
M13]*det2_24_24 + rhs[
M14]*det2_24_23;
337 const Scalar det3_134_012 = rhs[
M10]*det2_34_12 - rhs[
M11]*det2_34_02 + rhs[
M12]*det2_34_01;
338 const Scalar det3_134_013 = rhs[
M10]*det2_34_13 - rhs[
M11]*det2_34_03 + rhs[
M13]*det2_34_01;
339 const Scalar det3_134_014 = rhs[
M10]*det2_34_14 - rhs[
M11]*det2_34_04 + rhs[
M14]*det2_34_01;
340 const Scalar det3_134_023 = rhs[
M10]*det2_34_23 - rhs[
M12]*det2_34_03 + rhs[
M13]*det2_34_02;
341 const Scalar det3_134_024 = rhs[
M10]*det2_34_24 - rhs[
M12]*det2_34_04 + rhs[
M14]*det2_34_02;
342 const Scalar det3_134_034 = rhs[
M10]*det2_34_34 - rhs[
M13]*det2_34_04 + rhs[
M14]*det2_34_03;
343 const Scalar det3_134_123 = rhs[
M11]*det2_34_23 - rhs[
M12]*det2_34_13 + rhs[
M13]*det2_34_12;
344 const Scalar det3_134_124 = rhs[
M11]*det2_34_24 - rhs[
M12]*det2_34_14 + rhs[
M14]*det2_34_12;
345 const Scalar det3_134_134 = rhs[
M11]*det2_34_34 - rhs[
M13]*det2_34_14 + rhs[
M14]*det2_34_13;
346 const Scalar det3_134_234 = rhs[
M12]*det2_34_34 - rhs[
M13]*det2_34_24 + rhs[
M14]*det2_34_23;
347 const Scalar det3_234_012 = rhs[
M20]*det2_34_12 - rhs[
M21]*det2_34_02 + rhs[
M22]*det2_34_01;
348 const Scalar det3_234_013 = rhs[
M20]*det2_34_13 - rhs[
M21]*det2_34_03 + rhs[
M23]*det2_34_01;
349 const Scalar det3_234_014 = rhs[
M20]*det2_34_14 - rhs[
M21]*det2_34_04 + rhs[
M24]*det2_34_01;
350 const Scalar det3_234_023 = rhs[
M20]*det2_34_23 - rhs[
M22]*det2_34_03 + rhs[
M23]*det2_34_02;
351 const Scalar det3_234_024 = rhs[
M20]*det2_34_24 - rhs[
M22]*det2_34_04 + rhs[
M24]*det2_34_02;
352 const Scalar det3_234_034 = rhs[
M20]*det2_34_34 - rhs[
M23]*det2_34_04 + rhs[
M24]*det2_34_03;
353 const Scalar det3_234_123 = rhs[
M21]*det2_34_23 - rhs[
M22]*det2_34_13 + rhs[
M23]*det2_34_12;
354 const Scalar det3_234_124 = rhs[
M21]*det2_34_24 - rhs[
M22]*det2_34_14 + rhs[
M24]*det2_34_12;
355 const Scalar det3_234_134 = rhs[
M21]*det2_34_34 - rhs[
M23]*det2_34_14 + rhs[
M24]*det2_34_13;
356 const Scalar det3_234_234 = rhs[
M22]*det2_34_34 - rhs[
M23]*det2_34_24 + rhs[
M24]*det2_34_23;
360 const Scalar det4_0123_0123 = rhs[
M00]*det3_123_123 - rhs[
M01]*det3_123_023
361 + rhs[
M02]*det3_123_013 - rhs[
M03]*det3_123_012;
362 const Scalar det4_0123_0124 = rhs[
M00]*det3_123_124 - rhs[
M01]*det3_123_024
363 + rhs[
M02]*det3_123_014 - rhs[
M04]*det3_123_012;
364 const Scalar det4_0123_0134 = rhs[
M00]*det3_123_134 - rhs[
M01]*det3_123_034
365 + rhs[
M03]*det3_123_014 - rhs[
M04]*det3_123_013;
366 const Scalar det4_0123_0234 = rhs[
M00]*det3_123_234 - rhs[
M02]*det3_123_034
367 + rhs[
M03]*det3_123_024 - rhs[
M04]*det3_123_023;
368 const Scalar det4_0123_1234 = rhs[
M01]*det3_123_234 - rhs[
M02]*det3_123_134
369 + rhs[
M03]*det3_123_124 - rhs[
M04]*det3_123_123;
370 const Scalar det4_0124_0123 = rhs[
M00]*det3_124_123 - rhs[
M01]*det3_124_023
371 + rhs[
M02]*det3_124_013 - rhs[
M03]*det3_124_012;
372 const Scalar det4_0124_0124 = rhs[
M00]*det3_124_124 - rhs[
M01]*det3_124_024
373 + rhs[
M02]*det3_124_014 - rhs[
M04]*det3_124_012;
374 const Scalar det4_0124_0134 = rhs[
M00]*det3_124_134 - rhs[
M01]*det3_124_034
375 + rhs[
M03]*det3_124_014 - rhs[
M04]*det3_124_013;
376 const Scalar det4_0124_0234 = rhs[
M00]*det3_124_234 - rhs[
M02]*det3_124_034
377 + rhs[
M03]*det3_124_024 - rhs[
M04]*det3_124_023;
378 const Scalar det4_0124_1234 = rhs[
M01]*det3_124_234 - rhs[
M02]*det3_124_134
379 + rhs[
M03]*det3_124_124 - rhs[
M04]*det3_124_123;
380 const Scalar det4_0134_0123 = rhs[
M00]*det3_134_123 - rhs[
M01]*det3_134_023
381 + rhs[
M02]*det3_134_013 - rhs[
M03]*det3_134_012;
382 const Scalar det4_0134_0124 = rhs[
M00]*det3_134_124 - rhs[
M01]*det3_134_024
383 + rhs[
M02]*det3_134_014 - rhs[
M04]*det3_134_012;
384 const Scalar det4_0134_0134 = rhs[
M00]*det3_134_134 - rhs[
M01]*det3_134_034
385 + rhs[
M03]*det3_134_014 - rhs[
M04]*det3_134_013;
386 const Scalar det4_0134_0234 = rhs[
M00]*det3_134_234 - rhs[
M02]*det3_134_034
387 + rhs[
M03]*det3_134_024 - rhs[
M04]*det3_134_023;
388 const Scalar det4_0134_1234 = rhs[
M01]*det3_134_234 - rhs[
M02]*det3_134_134
389 + rhs[
M03]*det3_134_124 - rhs[
M04]*det3_134_123;
390 const Scalar det4_0234_0123 = rhs[
M00]*det3_234_123 - rhs[
M01]*det3_234_023
391 + rhs[
M02]*det3_234_013 - rhs[
M03]*det3_234_012;
392 const Scalar det4_0234_0124 = rhs[
M00]*det3_234_124 - rhs[
M01]*det3_234_024
393 + rhs[
M02]*det3_234_014 - rhs[
M04]*det3_234_012;
394 const Scalar det4_0234_0134 = rhs[
M00]*det3_234_134 - rhs[
M01]*det3_234_034
395 + rhs[
M03]*det3_234_014 - rhs[
M04]*det3_234_013;
396 const Scalar det4_0234_0234 = rhs[
M00]*det3_234_234 - rhs[
M02]*det3_234_034
397 + rhs[
M03]*det3_234_024 - rhs[
M04]*det3_234_023;
398 const Scalar det4_0234_1234 = rhs[
M01]*det3_234_234 - rhs[
M02]*det3_234_134
399 + rhs[
M03]*det3_234_124 - rhs[
M04]*det3_234_123;
400 const Scalar det4_1234_0123 = rhs[
M10]*det3_234_123 - rhs[
M11]*det3_234_023
401 + rhs[
M12]*det3_234_013 - rhs[
M13]*det3_234_012;
402 const Scalar det4_1234_0124 = rhs[
M10]*det3_234_124 - rhs[
M11]*det3_234_024
403 + rhs[
M12]*det3_234_014 - rhs[
M14]*det3_234_012;
404 const Scalar det4_1234_0134 = rhs[
M10]*det3_234_134 - rhs[
M11]*det3_234_034
405 + rhs[
M13]*det3_234_014 - rhs[
M14]*det3_234_013;
406 const Scalar det4_1234_0234 = rhs[
M10]*det3_234_234 - rhs[
M12]*det3_234_034
407 + rhs[
M13]*det3_234_024 - rhs[
M14]*det3_234_023;
408 const Scalar det4_1234_1234 = rhs[
M11]*det3_234_234 - rhs[
M12]*det3_234_134
409 + rhs[
M13]*det3_234_124 - rhs[
M14]*det3_234_123;
413 const Scalar det = rhs[
M00]*det4_1234_1234 - rhs[
M01]*det4_1234_0234 + rhs[
M02]*det4_1234_0134
414 - rhs[
M03]*det4_1234_0124 + rhs[
M04]*det4_1234_0123;
425 const Scalar oneOverDet = 1.0f / det;
426 const Scalar mn1OverDet = - oneOverDet;
428 rhs[
M00] = det4_1234_1234 * oneOverDet;
429 rhs[
M01] = det4_0234_1234 * mn1OverDet;
430 rhs[
M02] = det4_0134_1234 * oneOverDet;
431 rhs[
M03] = det4_0124_1234 * mn1OverDet;
432 rhs[
M04] = det4_0123_1234 * oneOverDet;
434 rhs[
M10] = det4_1234_0234 * mn1OverDet;
435 rhs[
M11] = det4_0234_0234 * oneOverDet;
436 rhs[
M12] = det4_0134_0234 * mn1OverDet;
437 rhs[
M13] = det4_0124_0234 * oneOverDet;
438 rhs[
M14] = det4_0123_0234 * mn1OverDet;
440 rhs[
M20] = det4_1234_0134 * oneOverDet;
441 rhs[
M21] = det4_0234_0134 * mn1OverDet;
442 rhs[
M22] = det4_0134_0134 * oneOverDet;
443 rhs[
M23] = det4_0124_0134 * mn1OverDet;
444 rhs[
M24] = det4_0123_0134 * oneOverDet;
446 rhs[
M30] = det4_1234_0124 * mn1OverDet;
447 rhs[
M31] = det4_0234_0124 * oneOverDet;
448 rhs[
M32] = det4_0134_0124 * mn1OverDet;
449 rhs[
M33] = det4_0124_0124 * oneOverDet;
450 rhs[
M34] = det4_0123_0124 * mn1OverDet;
452 rhs[
M40] = det4_1234_0123 * oneOverDet;
453 rhs[
M41] = det4_0234_0123 * mn1OverDet;
454 rhs[
M42] = det4_0134_0123 * oneOverDet;
455 rhs[
M43] = det4_0124_0123 * mn1OverDet;
456 rhs[
M44] = det4_0123_0123 * oneOverDet;
This namespace contains pre-defined functions to be used in conjuction with TExecutor::Map and TExecu...
static bool Dinv(MatrixRep &rhs)
Namespace for new Math classes and functions.