v0.14.0
Loading...
Searching...
No Matches
test_T2s_44.cpp File Reference
#include "../../../src/FTensor.hpp"
#include "../test_for_zero.hpp"
#include <iostream>

Go to the source code of this file.

Functions

void test_T2s_44 (Tensor2< double, 3, 3 > &t2_1, Tensor2_symmetric< double, 3 > &t2s_1, const Tensor2_symmetric< double, 3 > &t2s_2)
 

Function Documentation

◆ test_T2s_44()

void test_T2s_44 ( Tensor2< double, 3, 3 > & t2_1,
Tensor2_symmetric< double, 3 > & t2s_1,
const Tensor2_symmetric< double, 3 > & t2s_2 )

Definition at line 7 of file test_T2s_44.cpp.

10{
11 Index<'i', 3> i;
12 Index<'j', 3> j;
13 Index<'k', 3> k;
14
15 Number<0> N0;
16 Number<1> N1;
17 Number<2> N2;
18
19 /* Tensor2_symmetric tests */
20
21 t2_1(0, 0) = t2s_2(0, 0);
22 t2_1(0, 1) = t2s_2(0, 1);
23 t2_1(0, 2) = t2s_2(0, 2);
24 t2_1(1, 0) = t2s_2(1, 0);
25 t2_1(1, 1) = t2s_2(1, 1);
26 t2_1(1, 2) = t2s_2(1, 2);
27 t2_1(2, 0) = t2s_2(2, 0);
28 t2_1(2, 1) = t2s_2(2, 1);
29 t2_1(2, 2) = t2s_2(2, 2);
30
31 t2s_1(i, j) = t2s_2(k, i) ^ t2_1(j, k);
32 test_for_zero(t2s_1(0, 0)
33 - (t2s_2(0, 0) * t2_1(0, 0) + t2s_2(1, 0) * t2_1(0, 1)
34 + t2s_2(2, 0) * t2_1(0, 2)),
35 "T2s(k,i)^T2(j,k)(0,0)");
36 test_for_zero(t2s_1(0, 1)
37 - (t2s_2(0, 0) * t2_1(1, 0) + t2s_2(1, 0) * t2_1(1, 1)
38 + t2s_2(2, 0) * t2_1(1, 2)),
39 "T2s(k,i)^T2(j,k)(0,1)");
40 test_for_zero(t2s_1(0, 2)
41 - (t2s_2(0, 0) * t2_1(2, 0) + t2s_2(1, 0) * t2_1(2, 1)
42 + t2s_2(2, 0) * t2_1(2, 2)),
43 "T2s(k,i)^T2(j,k)(0,2)");
44 test_for_zero(t2s_1(1, 0)
45 - (t2s_2(0, 1) * t2_1(0, 0) + t2s_2(1, 1) * t2_1(0, 1)
46 + t2s_2(2, 1) * t2_1(0, 2)),
47 "T2s(k,i)^T2(j,k)(1,0)");
48 test_for_zero(t2s_1(1, 1)
49 - (t2s_2(0, 1) * t2_1(1, 0) + t2s_2(1, 1) * t2_1(1, 1)
50 + t2s_2(2, 1) * t2_1(1, 2)),
51 "T2s(k,i)^T2(j,k)(1,1)");
52 test_for_zero(t2s_1(1, 2)
53 - (t2s_2(0, 1) * t2_1(2, 0) + t2s_2(1, 1) * t2_1(2, 1)
54 + t2s_2(2, 1) * t2_1(2, 2)),
55 "T2s(k,i)^T2(j,k)(1,2)");
56 test_for_zero(t2s_1(2, 0)
57 - (t2s_2(0, 2) * t2_1(0, 0) + t2s_2(1, 2) * t2_1(0, 1)
58 + t2s_2(2, 2) * t2_1(0, 2)),
59 "T2s(k,i)^T2(j,k)(2,0)");
60 test_for_zero(t2s_1(2, 1)
61 - (t2s_2(0, 2) * t2_1(1, 0) + t2s_2(1, 2) * t2_1(1, 1)
62 + t2s_2(2, 2) * t2_1(1, 2)),
63 "T2s(k,i)^T2(j,k)(2,1)");
64 test_for_zero(t2s_1(2, 2)
65 - (t2s_2(0, 2) * t2_1(2, 0) + t2s_2(1, 2) * t2_1(2, 1)
66 + t2s_2(2, 2) * t2_1(2, 2)),
67 "T2s(k,i)^T2(j,k)(2,2)");
68 t2s_1(i, j) = t2_1(j, k) ^ t2s_2(k, i);
69 test_for_zero(t2s_1(0, 0)
70 - (t2s_2(0, 0) * t2_1(0, 0) + t2s_2(1, 0) * t2_1(0, 1)
71 + t2s_2(2, 0) * t2_1(0, 2)),
72 "T2(j,k)^T2s(k,i)(0,0)");
73 test_for_zero(t2s_1(0, 1)
74 - (t2s_2(0, 0) * t2_1(1, 0) + t2s_2(1, 0) * t2_1(1, 1)
75 + t2s_2(2, 0) * t2_1(1, 2)),
76 "T2(j,k)^T2s(k,i)(0,1)");
77 test_for_zero(t2s_1(0, 2)
78 - (t2s_2(0, 0) * t2_1(2, 0) + t2s_2(1, 0) * t2_1(2, 1)
79 + t2s_2(2, 0) * t2_1(2, 2)),
80 "T2(j,k)^T2s(k,i)(0,2)");
81 test_for_zero(t2s_1(1, 0)
82 - (t2s_2(0, 1) * t2_1(0, 0) + t2s_2(1, 1) * t2_1(0, 1)
83 + t2s_2(2, 1) * t2_1(0, 2)),
84 "T2(j,k)^T2s(k,i)(1,0)");
85 test_for_zero(t2s_1(1, 1)
86 - (t2s_2(0, 1) * t2_1(1, 0) + t2s_2(1, 1) * t2_1(1, 1)
87 + t2s_2(2, 1) * t2_1(1, 2)),
88 "T2(j,k)^T2s(k,i)(1,1)");
89 test_for_zero(t2s_1(1, 2)
90 - (t2s_2(0, 1) * t2_1(2, 0) + t2s_2(1, 1) * t2_1(2, 1)
91 + t2s_2(2, 1) * t2_1(2, 2)),
92 "T2(j,k)^T2s(k,i)(1,2)");
93 test_for_zero(t2s_1(2, 0)
94 - (t2s_2(0, 2) * t2_1(0, 0) + t2s_2(1, 2) * t2_1(0, 1)
95 + t2s_2(2, 2) * t2_1(0, 2)),
96 "T2(j,k)^T2s(k,i)(2,0)");
97 test_for_zero(t2s_1(2, 1)
98 - (t2s_2(0, 2) * t2_1(1, 0) + t2s_2(1, 2) * t2_1(1, 1)
99 + t2s_2(2, 2) * t2_1(1, 2)),
100 "T2(j,k)^T2s(k,i)(2,1)");
101 test_for_zero(t2s_1(2, 2)
102 - (t2s_2(0, 2) * t2_1(2, 0) + t2s_2(1, 2) * t2_1(2, 1)
103 + t2s_2(2, 2) * t2_1(2, 2)),
104 "T2(j,k)^T2s(k,i)(2,2)");
105}
FTensor::Index< 'i', SPACE_DIM > i
FTensor::Index< 'j', 3 > j
FTensor::Index< 'k', 3 > k
void test_for_zero(const T &t, const std::string &s)