BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
fn_TR_contract44.hpp
Go to the documentation of this file.
1/*
2 * BELFEM -- The Berkeley Lab Finite Element Framework
3 * Copyright (c) 2026, The Regents of the University of California,
4 * through Lawrence Berkeley National Laboratory (subject to receipt of any required
5 * approvals from the U.S. Dept. of Energy). All rights reserved.
6 *
7 * Developers: Christian Messe, Gregory Giard
8 *
9 * See the top-level LICENSE file for the complete license and disclaimer.
10 */
11
12#ifndef BELFEM_FN_TR_CONTRACT44_HPP
13#define BELFEM_FN_TR_CONTRACT44_HPP
14
15namespace belfem
16{
17 namespace tensor
18 {
19//----------------------------------------------------------------------------
20
24 template < typename T >
25 void
26 contract44( const T * A, const T * B, T * C )
27 {
28 C[ 0 ] = A[ 0 ] * B[ 0 ]
29 + A[ 9 ] * B[ 1 ]
30 + A[ 18 ] * B[ 2 ]
31 + A[ 27 ] * B[ 3 ]
32 + A[ 36 ] * B[ 4 ]
33 + A[ 45 ] * B[ 5 ]
34 + A[ 54 ] * B[ 6 ]
35 + A[ 63 ] * B[ 7 ]
36 + A[ 72 ] * B[ 8 ];
37
38 C[ 1 ] = A[ 1 ] * B[ 0 ]
39 + A[ 10 ] * B[ 1 ]
40 + A[ 19 ] * B[ 2 ]
41 + A[ 28 ] * B[ 3 ]
42 + A[ 37 ] * B[ 4 ]
43 + A[ 46 ] * B[ 5 ]
44 + A[ 55 ] * B[ 6 ]
45 + A[ 64 ] * B[ 7 ]
46 + A[ 73 ] * B[ 8 ];
47
48 C[ 2 ] = A[ 2 ] * B[ 0 ]
49 + A[ 11 ] * B[ 1 ]
50 + A[ 20 ] * B[ 2 ]
51 + A[ 29 ] * B[ 3 ]
52 + A[ 38 ] * B[ 4 ]
53 + A[ 47 ] * B[ 5 ]
54 + A[ 56 ] * B[ 6 ]
55 + A[ 65 ] * B[ 7 ]
56 + A[ 74 ] * B[ 8 ];
57
58 C[ 3 ] = A[ 3 ] * B[ 0 ]
59 + A[ 12 ] * B[ 1 ]
60 + A[ 21 ] * B[ 2 ]
61 + A[ 30 ] * B[ 3 ]
62 + A[ 39 ] * B[ 4 ]
63 + A[ 48 ] * B[ 5 ]
64 + A[ 57 ] * B[ 6 ]
65 + A[ 66 ] * B[ 7 ]
66 + A[ 75 ] * B[ 8 ];
67
68 C[ 4 ] = A[ 4 ] * B[ 0 ]
69 + A[ 13 ] * B[ 1 ]
70 + A[ 22 ] * B[ 2 ]
71 + A[ 31 ] * B[ 3 ]
72 + A[ 40 ] * B[ 4 ]
73 + A[ 49 ] * B[ 5 ]
74 + A[ 58 ] * B[ 6 ]
75 + A[ 67 ] * B[ 7 ]
76 + A[ 76 ] * B[ 8 ];
77
78 C[ 5 ] = A[ 5 ] * B[ 0 ]
79 + A[ 14 ] * B[ 1 ]
80 + A[ 23 ] * B[ 2 ]
81 + A[ 32 ] * B[ 3 ]
82 + A[ 41 ] * B[ 4 ]
83 + A[ 50 ] * B[ 5 ]
84 + A[ 59 ] * B[ 6 ]
85 + A[ 68 ] * B[ 7 ]
86 + A[ 77 ] * B[ 8 ];
87
88 C[ 6 ] = A[ 6 ] * B[ 0 ]
89 + A[ 15 ] * B[ 1 ]
90 + A[ 24 ] * B[ 2 ]
91 + A[ 33 ] * B[ 3 ]
92 + A[ 42 ] * B[ 4 ]
93 + A[ 51 ] * B[ 5 ]
94 + A[ 60 ] * B[ 6 ]
95 + A[ 69 ] * B[ 7 ]
96 + A[ 78 ] * B[ 8 ];
97
98 C[ 7 ] = A[ 7 ] * B[ 0 ]
99 + A[ 16 ] * B[ 1 ]
100 + A[ 25 ] * B[ 2 ]
101 + A[ 34 ] * B[ 3 ]
102 + A[ 43 ] * B[ 4 ]
103 + A[ 52 ] * B[ 5 ]
104 + A[ 61 ] * B[ 6 ]
105 + A[ 70 ] * B[ 7 ]
106 + A[ 79 ] * B[ 8 ];
107
108 C[ 8 ] = A[ 8 ] * B[ 0 ]
109 + A[ 17 ] * B[ 1 ]
110 + A[ 26 ] * B[ 2 ]
111 + A[ 35 ] * B[ 3 ]
112 + A[ 44 ] * B[ 4 ]
113 + A[ 53 ] * B[ 5 ]
114 + A[ 62 ] * B[ 6 ]
115 + A[ 71 ] * B[ 7 ]
116 + A[ 80 ] * B[ 8 ];
117
118 C[ 9 ] = A[ 0 ] * B[ 9 ]
119 + A[ 9 ] * B[ 10 ]
120 + A[ 18 ] * B[ 11 ]
121 + A[ 27 ] * B[ 12 ]
122 + A[ 36 ] * B[ 13 ]
123 + A[ 45 ] * B[ 14 ]
124 + A[ 54 ] * B[ 15 ]
125 + A[ 63 ] * B[ 16 ]
126 + A[ 72 ] * B[ 17 ];
127
128 C[ 10 ] = A[ 1 ] * B[ 9 ]
129 + A[ 10 ] * B[ 10 ]
130 + A[ 19 ] * B[ 11 ]
131 + A[ 28 ] * B[ 12 ]
132 + A[ 37 ] * B[ 13 ]
133 + A[ 46 ] * B[ 14 ]
134 + A[ 55 ] * B[ 15 ]
135 + A[ 64 ] * B[ 16 ]
136 + A[ 73 ] * B[ 17 ];
137
138 C[ 11 ] = A[ 2 ] * B[ 9 ]
139 + A[ 11 ] * B[ 10 ]
140 + A[ 20 ] * B[ 11 ]
141 + A[ 29 ] * B[ 12 ]
142 + A[ 38 ] * B[ 13 ]
143 + A[ 47 ] * B[ 14 ]
144 + A[ 56 ] * B[ 15 ]
145 + A[ 65 ] * B[ 16 ]
146 + A[ 74 ] * B[ 17 ];
147
148 C[ 12 ] = A[ 3 ] * B[ 9 ]
149 + A[ 12 ] * B[ 10 ]
150 + A[ 21 ] * B[ 11 ]
151 + A[ 30 ] * B[ 12 ]
152 + A[ 39 ] * B[ 13 ]
153 + A[ 48 ] * B[ 14 ]
154 + A[ 57 ] * B[ 15 ]
155 + A[ 66 ] * B[ 16 ]
156 + A[ 75 ] * B[ 17 ];
157
158 C[ 13 ] = A[ 4 ] * B[ 9 ]
159 + A[ 13 ] * B[ 10 ]
160 + A[ 22 ] * B[ 11 ]
161 + A[ 31 ] * B[ 12 ]
162 + A[ 40 ] * B[ 13 ]
163 + A[ 49 ] * B[ 14 ]
164 + A[ 58 ] * B[ 15 ]
165 + A[ 67 ] * B[ 16 ]
166 + A[ 76 ] * B[ 17 ];
167
168 C[ 14 ] = A[ 5 ] * B[ 9 ]
169 + A[ 14 ] * B[ 10 ]
170 + A[ 23 ] * B[ 11 ]
171 + A[ 32 ] * B[ 12 ]
172 + A[ 41 ] * B[ 13 ]
173 + A[ 50 ] * B[ 14 ]
174 + A[ 59 ] * B[ 15 ]
175 + A[ 68 ] * B[ 16 ]
176 + A[ 77 ] * B[ 17 ];
177
178 C[ 15 ] = A[ 6 ] * B[ 9 ]
179 + A[ 15 ] * B[ 10 ]
180 + A[ 24 ] * B[ 11 ]
181 + A[ 33 ] * B[ 12 ]
182 + A[ 42 ] * B[ 13 ]
183 + A[ 51 ] * B[ 14 ]
184 + A[ 60 ] * B[ 15 ]
185 + A[ 69 ] * B[ 16 ]
186 + A[ 78 ] * B[ 17 ];
187
188 C[ 16 ] = A[ 7 ] * B[ 9 ]
189 + A[ 16 ] * B[ 10 ]
190 + A[ 25 ] * B[ 11 ]
191 + A[ 34 ] * B[ 12 ]
192 + A[ 43 ] * B[ 13 ]
193 + A[ 52 ] * B[ 14 ]
194 + A[ 61 ] * B[ 15 ]
195 + A[ 70 ] * B[ 16 ]
196 + A[ 79 ] * B[ 17 ];
197
198 C[ 17 ] = A[ 8 ] * B[ 9 ]
199 + A[ 17 ] * B[ 10 ]
200 + A[ 26 ] * B[ 11 ]
201 + A[ 35 ] * B[ 12 ]
202 + A[ 44 ] * B[ 13 ]
203 + A[ 53 ] * B[ 14 ]
204 + A[ 62 ] * B[ 15 ]
205 + A[ 71 ] * B[ 16 ]
206 + A[ 80 ] * B[ 17 ];
207
208 C[ 18 ] = A[ 0 ] * B[ 18 ]
209 + A[ 9 ] * B[ 19 ]
210 + A[ 18 ] * B[ 20 ]
211 + A[ 27 ] * B[ 21 ]
212 + A[ 36 ] * B[ 22 ]
213 + A[ 45 ] * B[ 23 ]
214 + A[ 54 ] * B[ 24 ]
215 + A[ 63 ] * B[ 25 ]
216 + A[ 72 ] * B[ 26 ];
217
218 C[ 19 ] = A[ 1 ] * B[ 18 ]
219 + A[ 10 ] * B[ 19 ]
220 + A[ 19 ] * B[ 20 ]
221 + A[ 28 ] * B[ 21 ]
222 + A[ 37 ] * B[ 22 ]
223 + A[ 46 ] * B[ 23 ]
224 + A[ 55 ] * B[ 24 ]
225 + A[ 64 ] * B[ 25 ]
226 + A[ 73 ] * B[ 26 ];
227
228 C[ 20 ] = A[ 2 ] * B[ 18 ]
229 + A[ 11 ] * B[ 19 ]
230 + A[ 20 ] * B[ 20 ]
231 + A[ 29 ] * B[ 21 ]
232 + A[ 38 ] * B[ 22 ]
233 + A[ 47 ] * B[ 23 ]
234 + A[ 56 ] * B[ 24 ]
235 + A[ 65 ] * B[ 25 ]
236 + A[ 74 ] * B[ 26 ];
237
238 C[ 21 ] = A[ 3 ] * B[ 18 ]
239 + A[ 12 ] * B[ 19 ]
240 + A[ 21 ] * B[ 20 ]
241 + A[ 30 ] * B[ 21 ]
242 + A[ 39 ] * B[ 22 ]
243 + A[ 48 ] * B[ 23 ]
244 + A[ 57 ] * B[ 24 ]
245 + A[ 66 ] * B[ 25 ]
246 + A[ 75 ] * B[ 26 ];
247
248 C[ 22 ] = A[ 4 ] * B[ 18 ]
249 + A[ 13 ] * B[ 19 ]
250 + A[ 22 ] * B[ 20 ]
251 + A[ 31 ] * B[ 21 ]
252 + A[ 40 ] * B[ 22 ]
253 + A[ 49 ] * B[ 23 ]
254 + A[ 58 ] * B[ 24 ]
255 + A[ 67 ] * B[ 25 ]
256 + A[ 76 ] * B[ 26 ];
257
258 C[ 23 ] = A[ 5 ] * B[ 18 ]
259 + A[ 14 ] * B[ 19 ]
260 + A[ 23 ] * B[ 20 ]
261 + A[ 32 ] * B[ 21 ]
262 + A[ 41 ] * B[ 22 ]
263 + A[ 50 ] * B[ 23 ]
264 + A[ 59 ] * B[ 24 ]
265 + A[ 68 ] * B[ 25 ]
266 + A[ 77 ] * B[ 26 ];
267
268 C[ 24 ] = A[ 6 ] * B[ 18 ]
269 + A[ 15 ] * B[ 19 ]
270 + A[ 24 ] * B[ 20 ]
271 + A[ 33 ] * B[ 21 ]
272 + A[ 42 ] * B[ 22 ]
273 + A[ 51 ] * B[ 23 ]
274 + A[ 60 ] * B[ 24 ]
275 + A[ 69 ] * B[ 25 ]
276 + A[ 78 ] * B[ 26 ];
277
278 C[ 25 ] = A[ 7 ] * B[ 18 ]
279 + A[ 16 ] * B[ 19 ]
280 + A[ 25 ] * B[ 20 ]
281 + A[ 34 ] * B[ 21 ]
282 + A[ 43 ] * B[ 22 ]
283 + A[ 52 ] * B[ 23 ]
284 + A[ 61 ] * B[ 24 ]
285 + A[ 70 ] * B[ 25 ]
286 + A[ 79 ] * B[ 26 ];
287
288 C[ 26 ] = A[ 8 ] * B[ 18 ]
289 + A[ 17 ] * B[ 19 ]
290 + A[ 26 ] * B[ 20 ]
291 + A[ 35 ] * B[ 21 ]
292 + A[ 44 ] * B[ 22 ]
293 + A[ 53 ] * B[ 23 ]
294 + A[ 62 ] * B[ 24 ]
295 + A[ 71 ] * B[ 25 ]
296 + A[ 80 ] * B[ 26 ];
297
298 C[ 27 ] = A[ 0 ] * B[ 27 ]
299 + A[ 9 ] * B[ 28 ]
300 + A[ 18 ] * B[ 29 ]
301 + A[ 27 ] * B[ 30 ]
302 + A[ 36 ] * B[ 31 ]
303 + A[ 45 ] * B[ 32 ]
304 + A[ 54 ] * B[ 33 ]
305 + A[ 63 ] * B[ 34 ]
306 + A[ 72 ] * B[ 35 ];
307
308 C[ 28 ] = A[ 1 ] * B[ 27 ]
309 + A[ 10 ] * B[ 28 ]
310 + A[ 19 ] * B[ 29 ]
311 + A[ 28 ] * B[ 30 ]
312 + A[ 37 ] * B[ 31 ]
313 + A[ 46 ] * B[ 32 ]
314 + A[ 55 ] * B[ 33 ]
315 + A[ 64 ] * B[ 34 ]
316 + A[ 73 ] * B[ 35 ];
317
318 C[ 29 ] = A[ 2 ] * B[ 27 ]
319 + A[ 11 ] * B[ 28 ]
320 + A[ 20 ] * B[ 29 ]
321 + A[ 29 ] * B[ 30 ]
322 + A[ 38 ] * B[ 31 ]
323 + A[ 47 ] * B[ 32 ]
324 + A[ 56 ] * B[ 33 ]
325 + A[ 65 ] * B[ 34 ]
326 + A[ 74 ] * B[ 35 ];
327
328 C[ 30 ] = A[ 3 ] * B[ 27 ]
329 + A[ 12 ] * B[ 28 ]
330 + A[ 21 ] * B[ 29 ]
331 + A[ 30 ] * B[ 30 ]
332 + A[ 39 ] * B[ 31 ]
333 + A[ 48 ] * B[ 32 ]
334 + A[ 57 ] * B[ 33 ]
335 + A[ 66 ] * B[ 34 ]
336 + A[ 75 ] * B[ 35 ];
337
338 C[ 31 ] = A[ 4 ] * B[ 27 ]
339 + A[ 13 ] * B[ 28 ]
340 + A[ 22 ] * B[ 29 ]
341 + A[ 31 ] * B[ 30 ]
342 + A[ 40 ] * B[ 31 ]
343 + A[ 49 ] * B[ 32 ]
344 + A[ 58 ] * B[ 33 ]
345 + A[ 67 ] * B[ 34 ]
346 + A[ 76 ] * B[ 35 ];
347
348 C[ 32 ] = A[ 5 ] * B[ 27 ]
349 + A[ 14 ] * B[ 28 ]
350 + A[ 23 ] * B[ 29 ]
351 + A[ 32 ] * B[ 30 ]
352 + A[ 41 ] * B[ 31 ]
353 + A[ 50 ] * B[ 32 ]
354 + A[ 59 ] * B[ 33 ]
355 + A[ 68 ] * B[ 34 ]
356 + A[ 77 ] * B[ 35 ];
357
358 C[ 33 ] = A[ 6 ] * B[ 27 ]
359 + A[ 15 ] * B[ 28 ]
360 + A[ 24 ] * B[ 29 ]
361 + A[ 33 ] * B[ 30 ]
362 + A[ 42 ] * B[ 31 ]
363 + A[ 51 ] * B[ 32 ]
364 + A[ 60 ] * B[ 33 ]
365 + A[ 69 ] * B[ 34 ]
366 + A[ 78 ] * B[ 35 ];
367
368 C[ 34 ] = A[ 7 ] * B[ 27 ]
369 + A[ 16 ] * B[ 28 ]
370 + A[ 25 ] * B[ 29 ]
371 + A[ 34 ] * B[ 30 ]
372 + A[ 43 ] * B[ 31 ]
373 + A[ 52 ] * B[ 32 ]
374 + A[ 61 ] * B[ 33 ]
375 + A[ 70 ] * B[ 34 ]
376 + A[ 79 ] * B[ 35 ];
377
378 C[ 35 ] = A[ 8 ] * B[ 27 ]
379 + A[ 17 ] * B[ 28 ]
380 + A[ 26 ] * B[ 29 ]
381 + A[ 35 ] * B[ 30 ]
382 + A[ 44 ] * B[ 31 ]
383 + A[ 53 ] * B[ 32 ]
384 + A[ 62 ] * B[ 33 ]
385 + A[ 71 ] * B[ 34 ]
386 + A[ 80 ] * B[ 35 ];
387
388 C[ 36 ] = A[ 0 ] * B[ 36 ]
389 + A[ 9 ] * B[ 37 ]
390 + A[ 18 ] * B[ 38 ]
391 + A[ 27 ] * B[ 39 ]
392 + A[ 36 ] * B[ 40 ]
393 + A[ 45 ] * B[ 41 ]
394 + A[ 54 ] * B[ 42 ]
395 + A[ 63 ] * B[ 43 ]
396 + A[ 72 ] * B[ 44 ];
397
398 C[ 37 ] = A[ 1 ] * B[ 36 ]
399 + A[ 10 ] * B[ 37 ]
400 + A[ 19 ] * B[ 38 ]
401 + A[ 28 ] * B[ 39 ]
402 + A[ 37 ] * B[ 40 ]
403 + A[ 46 ] * B[ 41 ]
404 + A[ 55 ] * B[ 42 ]
405 + A[ 64 ] * B[ 43 ]
406 + A[ 73 ] * B[ 44 ];
407
408 C[ 38 ] = A[ 2 ] * B[ 36 ]
409 + A[ 11 ] * B[ 37 ]
410 + A[ 20 ] * B[ 38 ]
411 + A[ 29 ] * B[ 39 ]
412 + A[ 38 ] * B[ 40 ]
413 + A[ 47 ] * B[ 41 ]
414 + A[ 56 ] * B[ 42 ]
415 + A[ 65 ] * B[ 43 ]
416 + A[ 74 ] * B[ 44 ];
417
418 C[ 39 ] = A[ 3 ] * B[ 36 ]
419 + A[ 12 ] * B[ 37 ]
420 + A[ 21 ] * B[ 38 ]
421 + A[ 30 ] * B[ 39 ]
422 + A[ 39 ] * B[ 40 ]
423 + A[ 48 ] * B[ 41 ]
424 + A[ 57 ] * B[ 42 ]
425 + A[ 66 ] * B[ 43 ]
426 + A[ 75 ] * B[ 44 ];
427
428 C[ 40 ] = A[ 4 ] * B[ 36 ]
429 + A[ 13 ] * B[ 37 ]
430 + A[ 22 ] * B[ 38 ]
431 + A[ 31 ] * B[ 39 ]
432 + A[ 40 ] * B[ 40 ]
433 + A[ 49 ] * B[ 41 ]
434 + A[ 58 ] * B[ 42 ]
435 + A[ 67 ] * B[ 43 ]
436 + A[ 76 ] * B[ 44 ];
437
438 C[ 41 ] = A[ 5 ] * B[ 36 ]
439 + A[ 14 ] * B[ 37 ]
440 + A[ 23 ] * B[ 38 ]
441 + A[ 32 ] * B[ 39 ]
442 + A[ 41 ] * B[ 40 ]
443 + A[ 50 ] * B[ 41 ]
444 + A[ 59 ] * B[ 42 ]
445 + A[ 68 ] * B[ 43 ]
446 + A[ 77 ] * B[ 44 ];
447
448 C[ 42 ] = A[ 6 ] * B[ 36 ]
449 + A[ 15 ] * B[ 37 ]
450 + A[ 24 ] * B[ 38 ]
451 + A[ 33 ] * B[ 39 ]
452 + A[ 42 ] * B[ 40 ]
453 + A[ 51 ] * B[ 41 ]
454 + A[ 60 ] * B[ 42 ]
455 + A[ 69 ] * B[ 43 ]
456 + A[ 78 ] * B[ 44 ];
457
458 C[ 43 ] = A[ 7 ] * B[ 36 ]
459 + A[ 16 ] * B[ 37 ]
460 + A[ 25 ] * B[ 38 ]
461 + A[ 34 ] * B[ 39 ]
462 + A[ 43 ] * B[ 40 ]
463 + A[ 52 ] * B[ 41 ]
464 + A[ 61 ] * B[ 42 ]
465 + A[ 70 ] * B[ 43 ]
466 + A[ 79 ] * B[ 44 ];
467
468 C[ 44 ] = A[ 8 ] * B[ 36 ]
469 + A[ 17 ] * B[ 37 ]
470 + A[ 26 ] * B[ 38 ]
471 + A[ 35 ] * B[ 39 ]
472 + A[ 44 ] * B[ 40 ]
473 + A[ 53 ] * B[ 41 ]
474 + A[ 62 ] * B[ 42 ]
475 + A[ 71 ] * B[ 43 ]
476 + A[ 80 ] * B[ 44 ];
477
478 C[ 45 ] = A[ 0 ] * B[ 45 ]
479 + A[ 9 ] * B[ 46 ]
480 + A[ 18 ] * B[ 47 ]
481 + A[ 27 ] * B[ 48 ]
482 + A[ 36 ] * B[ 49 ]
483 + A[ 45 ] * B[ 50 ]
484 + A[ 54 ] * B[ 51 ]
485 + A[ 63 ] * B[ 52 ]
486 + A[ 72 ] * B[ 53 ];
487
488 C[ 46 ] = A[ 1 ] * B[ 45 ]
489 + A[ 10 ] * B[ 46 ]
490 + A[ 19 ] * B[ 47 ]
491 + A[ 28 ] * B[ 48 ]
492 + A[ 37 ] * B[ 49 ]
493 + A[ 46 ] * B[ 50 ]
494 + A[ 55 ] * B[ 51 ]
495 + A[ 64 ] * B[ 52 ]
496 + A[ 73 ] * B[ 53 ];
497
498 C[ 47 ] = A[ 2 ] * B[ 45 ]
499 + A[ 11 ] * B[ 46 ]
500 + A[ 20 ] * B[ 47 ]
501 + A[ 29 ] * B[ 48 ]
502 + A[ 38 ] * B[ 49 ]
503 + A[ 47 ] * B[ 50 ]
504 + A[ 56 ] * B[ 51 ]
505 + A[ 65 ] * B[ 52 ]
506 + A[ 74 ] * B[ 53 ];
507
508 C[ 48 ] = A[ 3 ] * B[ 45 ]
509 + A[ 12 ] * B[ 46 ]
510 + A[ 21 ] * B[ 47 ]
511 + A[ 30 ] * B[ 48 ]
512 + A[ 39 ] * B[ 49 ]
513 + A[ 48 ] * B[ 50 ]
514 + A[ 57 ] * B[ 51 ]
515 + A[ 66 ] * B[ 52 ]
516 + A[ 75 ] * B[ 53 ];
517
518 C[ 49 ] = A[ 4 ] * B[ 45 ]
519 + A[ 13 ] * B[ 46 ]
520 + A[ 22 ] * B[ 47 ]
521 + A[ 31 ] * B[ 48 ]
522 + A[ 40 ] * B[ 49 ]
523 + A[ 49 ] * B[ 50 ]
524 + A[ 58 ] * B[ 51 ]
525 + A[ 67 ] * B[ 52 ]
526 + A[ 76 ] * B[ 53 ];
527
528 C[ 50 ] = A[ 5 ] * B[ 45 ]
529 + A[ 14 ] * B[ 46 ]
530 + A[ 23 ] * B[ 47 ]
531 + A[ 32 ] * B[ 48 ]
532 + A[ 41 ] * B[ 49 ]
533 + A[ 50 ] * B[ 50 ]
534 + A[ 59 ] * B[ 51 ]
535 + A[ 68 ] * B[ 52 ]
536 + A[ 77 ] * B[ 53 ];
537
538 C[ 51 ] = A[ 6 ] * B[ 45 ]
539 + A[ 15 ] * B[ 46 ]
540 + A[ 24 ] * B[ 47 ]
541 + A[ 33 ] * B[ 48 ]
542 + A[ 42 ] * B[ 49 ]
543 + A[ 51 ] * B[ 50 ]
544 + A[ 60 ] * B[ 51 ]
545 + A[ 69 ] * B[ 52 ]
546 + A[ 78 ] * B[ 53 ];
547
548 C[ 52 ] = A[ 7 ] * B[ 45 ]
549 + A[ 16 ] * B[ 46 ]
550 + A[ 25 ] * B[ 47 ]
551 + A[ 34 ] * B[ 48 ]
552 + A[ 43 ] * B[ 49 ]
553 + A[ 52 ] * B[ 50 ]
554 + A[ 61 ] * B[ 51 ]
555 + A[ 70 ] * B[ 52 ]
556 + A[ 79 ] * B[ 53 ];
557
558 C[ 53 ] = A[ 8 ] * B[ 45 ]
559 + A[ 17 ] * B[ 46 ]
560 + A[ 26 ] * B[ 47 ]
561 + A[ 35 ] * B[ 48 ]
562 + A[ 44 ] * B[ 49 ]
563 + A[ 53 ] * B[ 50 ]
564 + A[ 62 ] * B[ 51 ]
565 + A[ 71 ] * B[ 52 ]
566 + A[ 80 ] * B[ 53 ];
567
568 C[ 54 ] = A[ 0 ] * B[ 54 ]
569 + A[ 9 ] * B[ 55 ]
570 + A[ 18 ] * B[ 56 ]
571 + A[ 27 ] * B[ 57 ]
572 + A[ 36 ] * B[ 58 ]
573 + A[ 45 ] * B[ 59 ]
574 + A[ 54 ] * B[ 60 ]
575 + A[ 63 ] * B[ 61 ]
576 + A[ 72 ] * B[ 62 ];
577
578 C[ 55 ] = A[ 1 ] * B[ 54 ]
579 + A[ 10 ] * B[ 55 ]
580 + A[ 19 ] * B[ 56 ]
581 + A[ 28 ] * B[ 57 ]
582 + A[ 37 ] * B[ 58 ]
583 + A[ 46 ] * B[ 59 ]
584 + A[ 55 ] * B[ 60 ]
585 + A[ 64 ] * B[ 61 ]
586 + A[ 73 ] * B[ 62 ];
587
588 C[ 56 ] = A[ 2 ] * B[ 54 ]
589 + A[ 11 ] * B[ 55 ]
590 + A[ 20 ] * B[ 56 ]
591 + A[ 29 ] * B[ 57 ]
592 + A[ 38 ] * B[ 58 ]
593 + A[ 47 ] * B[ 59 ]
594 + A[ 56 ] * B[ 60 ]
595 + A[ 65 ] * B[ 61 ]
596 + A[ 74 ] * B[ 62 ];
597
598 C[ 57 ] = A[ 3 ] * B[ 54 ]
599 + A[ 12 ] * B[ 55 ]
600 + A[ 21 ] * B[ 56 ]
601 + A[ 30 ] * B[ 57 ]
602 + A[ 39 ] * B[ 58 ]
603 + A[ 48 ] * B[ 59 ]
604 + A[ 57 ] * B[ 60 ]
605 + A[ 66 ] * B[ 61 ]
606 + A[ 75 ] * B[ 62 ];
607
608 C[ 58 ] = A[ 4 ] * B[ 54 ]
609 + A[ 13 ] * B[ 55 ]
610 + A[ 22 ] * B[ 56 ]
611 + A[ 31 ] * B[ 57 ]
612 + A[ 40 ] * B[ 58 ]
613 + A[ 49 ] * B[ 59 ]
614 + A[ 58 ] * B[ 60 ]
615 + A[ 67 ] * B[ 61 ]
616 + A[ 76 ] * B[ 62 ];
617
618 C[ 59 ] = A[ 5 ] * B[ 54 ]
619 + A[ 14 ] * B[ 55 ]
620 + A[ 23 ] * B[ 56 ]
621 + A[ 32 ] * B[ 57 ]
622 + A[ 41 ] * B[ 58 ]
623 + A[ 50 ] * B[ 59 ]
624 + A[ 59 ] * B[ 60 ]
625 + A[ 68 ] * B[ 61 ]
626 + A[ 77 ] * B[ 62 ];
627
628 C[ 60 ] = A[ 6 ] * B[ 54 ]
629 + A[ 15 ] * B[ 55 ]
630 + A[ 24 ] * B[ 56 ]
631 + A[ 33 ] * B[ 57 ]
632 + A[ 42 ] * B[ 58 ]
633 + A[ 51 ] * B[ 59 ]
634 + A[ 60 ] * B[ 60 ]
635 + A[ 69 ] * B[ 61 ]
636 + A[ 78 ] * B[ 62 ];
637
638 C[ 61 ] = A[ 7 ] * B[ 54 ]
639 + A[ 16 ] * B[ 55 ]
640 + A[ 25 ] * B[ 56 ]
641 + A[ 34 ] * B[ 57 ]
642 + A[ 43 ] * B[ 58 ]
643 + A[ 52 ] * B[ 59 ]
644 + A[ 61 ] * B[ 60 ]
645 + A[ 70 ] * B[ 61 ]
646 + A[ 79 ] * B[ 62 ];
647
648 C[ 62 ] = A[ 8 ] * B[ 54 ]
649 + A[ 17 ] * B[ 55 ]
650 + A[ 26 ] * B[ 56 ]
651 + A[ 35 ] * B[ 57 ]
652 + A[ 44 ] * B[ 58 ]
653 + A[ 53 ] * B[ 59 ]
654 + A[ 62 ] * B[ 60 ]
655 + A[ 71 ] * B[ 61 ]
656 + A[ 80 ] * B[ 62 ];
657
658 C[ 63 ] = A[ 0 ] * B[ 63 ]
659 + A[ 9 ] * B[ 64 ]
660 + A[ 18 ] * B[ 65 ]
661 + A[ 27 ] * B[ 66 ]
662 + A[ 36 ] * B[ 67 ]
663 + A[ 45 ] * B[ 68 ]
664 + A[ 54 ] * B[ 69 ]
665 + A[ 63 ] * B[ 70 ]
666 + A[ 72 ] * B[ 71 ];
667
668 C[ 64 ] = A[ 1 ] * B[ 63 ]
669 + A[ 10 ] * B[ 64 ]
670 + A[ 19 ] * B[ 65 ]
671 + A[ 28 ] * B[ 66 ]
672 + A[ 37 ] * B[ 67 ]
673 + A[ 46 ] * B[ 68 ]
674 + A[ 55 ] * B[ 69 ]
675 + A[ 64 ] * B[ 70 ]
676 + A[ 73 ] * B[ 71 ];
677
678 C[ 65 ] = A[ 2 ] * B[ 63 ]
679 + A[ 11 ] * B[ 64 ]
680 + A[ 20 ] * B[ 65 ]
681 + A[ 29 ] * B[ 66 ]
682 + A[ 38 ] * B[ 67 ]
683 + A[ 47 ] * B[ 68 ]
684 + A[ 56 ] * B[ 69 ]
685 + A[ 65 ] * B[ 70 ]
686 + A[ 74 ] * B[ 71 ];
687
688 C[ 66 ] = A[ 3 ] * B[ 63 ]
689 + A[ 12 ] * B[ 64 ]
690 + A[ 21 ] * B[ 65 ]
691 + A[ 30 ] * B[ 66 ]
692 + A[ 39 ] * B[ 67 ]
693 + A[ 48 ] * B[ 68 ]
694 + A[ 57 ] * B[ 69 ]
695 + A[ 66 ] * B[ 70 ]
696 + A[ 75 ] * B[ 71 ];
697
698 C[ 67 ] = A[ 4 ] * B[ 63 ]
699 + A[ 13 ] * B[ 64 ]
700 + A[ 22 ] * B[ 65 ]
701 + A[ 31 ] * B[ 66 ]
702 + A[ 40 ] * B[ 67 ]
703 + A[ 49 ] * B[ 68 ]
704 + A[ 58 ] * B[ 69 ]
705 + A[ 67 ] * B[ 70 ]
706 + A[ 76 ] * B[ 71 ];
707
708 C[ 68 ] = A[ 5 ] * B[ 63 ]
709 + A[ 14 ] * B[ 64 ]
710 + A[ 23 ] * B[ 65 ]
711 + A[ 32 ] * B[ 66 ]
712 + A[ 41 ] * B[ 67 ]
713 + A[ 50 ] * B[ 68 ]
714 + A[ 59 ] * B[ 69 ]
715 + A[ 68 ] * B[ 70 ]
716 + A[ 77 ] * B[ 71 ];
717
718 C[ 69 ] = A[ 6 ] * B[ 63 ]
719 + A[ 15 ] * B[ 64 ]
720 + A[ 24 ] * B[ 65 ]
721 + A[ 33 ] * B[ 66 ]
722 + A[ 42 ] * B[ 67 ]
723 + A[ 51 ] * B[ 68 ]
724 + A[ 60 ] * B[ 69 ]
725 + A[ 69 ] * B[ 70 ]
726 + A[ 78 ] * B[ 71 ];
727
728 C[ 70 ] = A[ 7 ] * B[ 63 ]
729 + A[ 16 ] * B[ 64 ]
730 + A[ 25 ] * B[ 65 ]
731 + A[ 34 ] * B[ 66 ]
732 + A[ 43 ] * B[ 67 ]
733 + A[ 52 ] * B[ 68 ]
734 + A[ 61 ] * B[ 69 ]
735 + A[ 70 ] * B[ 70 ]
736 + A[ 79 ] * B[ 71 ];
737
738 C[ 71 ] = A[ 8 ] * B[ 63 ]
739 + A[ 17 ] * B[ 64 ]
740 + A[ 26 ] * B[ 65 ]
741 + A[ 35 ] * B[ 66 ]
742 + A[ 44 ] * B[ 67 ]
743 + A[ 53 ] * B[ 68 ]
744 + A[ 62 ] * B[ 69 ]
745 + A[ 71 ] * B[ 70 ]
746 + A[ 80 ] * B[ 71 ];
747
748 C[ 72 ] = A[ 0 ] * B[ 72 ]
749 + A[ 9 ] * B[ 73 ]
750 + A[ 18 ] * B[ 74 ]
751 + A[ 27 ] * B[ 75 ]
752 + A[ 36 ] * B[ 76 ]
753 + A[ 45 ] * B[ 77 ]
754 + A[ 54 ] * B[ 78 ]
755 + A[ 63 ] * B[ 79 ]
756 + A[ 72 ] * B[ 80 ];
757
758 C[ 73 ] = A[ 1 ] * B[ 72 ]
759 + A[ 10 ] * B[ 73 ]
760 + A[ 19 ] * B[ 74 ]
761 + A[ 28 ] * B[ 75 ]
762 + A[ 37 ] * B[ 76 ]
763 + A[ 46 ] * B[ 77 ]
764 + A[ 55 ] * B[ 78 ]
765 + A[ 64 ] * B[ 79 ]
766 + A[ 73 ] * B[ 80 ];
767
768 C[ 74 ] = A[ 2 ] * B[ 72 ]
769 + A[ 11 ] * B[ 73 ]
770 + A[ 20 ] * B[ 74 ]
771 + A[ 29 ] * B[ 75 ]
772 + A[ 38 ] * B[ 76 ]
773 + A[ 47 ] * B[ 77 ]
774 + A[ 56 ] * B[ 78 ]
775 + A[ 65 ] * B[ 79 ]
776 + A[ 74 ] * B[ 80 ];
777
778 C[ 75 ] = A[ 3 ] * B[ 72 ]
779 + A[ 12 ] * B[ 73 ]
780 + A[ 21 ] * B[ 74 ]
781 + A[ 30 ] * B[ 75 ]
782 + A[ 39 ] * B[ 76 ]
783 + A[ 48 ] * B[ 77 ]
784 + A[ 57 ] * B[ 78 ]
785 + A[ 66 ] * B[ 79 ]
786 + A[ 75 ] * B[ 80 ];
787
788 C[ 76 ] = A[ 4 ] * B[ 72 ]
789 + A[ 13 ] * B[ 73 ]
790 + A[ 22 ] * B[ 74 ]
791 + A[ 31 ] * B[ 75 ]
792 + A[ 40 ] * B[ 76 ]
793 + A[ 49 ] * B[ 77 ]
794 + A[ 58 ] * B[ 78 ]
795 + A[ 67 ] * B[ 79 ]
796 + A[ 76 ] * B[ 80 ];
797
798 C[ 77 ] = A[ 5 ] * B[ 72 ]
799 + A[ 14 ] * B[ 73 ]
800 + A[ 23 ] * B[ 74 ]
801 + A[ 32 ] * B[ 75 ]
802 + A[ 41 ] * B[ 76 ]
803 + A[ 50 ] * B[ 77 ]
804 + A[ 59 ] * B[ 78 ]
805 + A[ 68 ] * B[ 79 ]
806 + A[ 77 ] * B[ 80 ];
807
808 C[ 78 ] = A[ 6 ] * B[ 72 ]
809 + A[ 15 ] * B[ 73 ]
810 + A[ 24 ] * B[ 74 ]
811 + A[ 33 ] * B[ 75 ]
812 + A[ 42 ] * B[ 76 ]
813 + A[ 51 ] * B[ 77 ]
814 + A[ 60 ] * B[ 78 ]
815 + A[ 69 ] * B[ 79 ]
816 + A[ 78 ] * B[ 80 ];
817
818 C[ 79 ] = A[ 7 ] * B[ 72 ]
819 + A[ 16 ] * B[ 73 ]
820 + A[ 25 ] * B[ 74 ]
821 + A[ 34 ] * B[ 75 ]
822 + A[ 43 ] * B[ 76 ]
823 + A[ 52 ] * B[ 77 ]
824 + A[ 61 ] * B[ 78 ]
825 + A[ 70 ] * B[ 79 ]
826 + A[ 79 ] * B[ 80 ];
827
828 C[ 80 ] = A[ 8 ] * B[ 72 ]
829 + A[ 17 ] * B[ 73 ]
830 + A[ 26 ] * B[ 74 ]
831 + A[ 35 ] * B[ 75 ]
832 + A[ 44 ] * B[ 76 ]
833 + A[ 53 ] * B[ 77 ]
834 + A[ 62 ] * B[ 78 ]
835 + A[ 71 ] * B[ 79 ]
836 + A[ 80 ] * B[ 80 ];
837 }
838
839//----------------------------------------------------------------------------
840 } /* namespace tensor */
841} /* namespace belfem */
842
843#endif //BELFEM_TR_CONTRACT44_HPP
Definition fn_TR_contract42_arma.hpp:21
void contract44(const T *A, const T *B, T *C)
tensor contraction A_ijmn * B_mnkl = C_ijkl
Definition fn_TR_contract44.hpp:26
USER GUIDES:
Definition cl_Capacitor.cpp:16