v0.14.0
Loading...
Searching...
No Matches
test_T2_37.cpp
Go to the documentation of this file.
3#include <iostream>
4using namespace FTensor;
5using namespace std;
6
8{
9 Index<'i', 3> i;
10 Index<'j', 3> j;
11 Index<'k', 3> k;
12
13 Number<0> N0;
14 Number<1> N1;
15 Number<2> N2;
16
17 /* Tensor2 tests */
20
21 t2(i, j) = t2_2(j, i);
22
23 t2s(i, j) = t2(i, k) ^ t2_2(k, j);
24 test_for_zero(t2s(0, 0)
25 - (t2(0, 0) * t2_2(0, 0) + t2(0, 1) * t2_2(1, 0)
26 + t2(0, 2) * t2_2(2, 0)),
27 "T2(i,k)^T2(k,j)(0,0)");
28 test_for_zero(t2s(1, 0)
29 - (t2(1, 0) * t2_2(0, 0) + t2(1, 1) * t2_2(1, 0)
30 + t2(1, 2) * t2_2(2, 0)),
31 "T2(i,k)^T2(k,j)(1,0)");
32 test_for_zero(t2s(2, 0)
33 - (t2(2, 0) * t2_2(0, 0) + t2(2, 1) * t2_2(1, 0)
34 + t2(2, 2) * t2_2(2, 0)),
35 "T2(i,k)^T2(k,j)(2,0)");
36 test_for_zero(t2s(0, 1)
37 - (t2(0, 0) * t2_2(0, 1) + t2(0, 1) * t2_2(1, 1)
38 + t2(0, 2) * t2_2(2, 1)),
39 "T2(i,k)^T2(k,j)(0,1)");
40 test_for_zero(t2s(1, 1)
41 - (t2(1, 0) * t2_2(0, 1) + t2(1, 1) * t2_2(1, 1)
42 + t2(1, 2) * t2_2(2, 1)),
43 "T2(i,k)^T2(k,j)(1,1)");
44 test_for_zero(t2s(2, 1)
45 - (t2(2, 0) * t2_2(0, 1) + t2(2, 1) * t2_2(1, 1)
46 + t2(2, 2) * t2_2(2, 1)),
47 "T2(i,k)^T2(k,j)(2,1)");
48 test_for_zero(t2s(0, 2)
49 - (t2(0, 0) * t2_2(0, 2) + t2(0, 1) * t2_2(1, 2)
50 + t2(0, 2) * t2_2(2, 2)),
51 "T2(i,k)^T2(k,j)(0,2)");
52 test_for_zero(t2s(1, 2)
53 - (t2(1, 0) * t2_2(0, 2) + t2(1, 1) * t2_2(1, 2)
54 + t2(1, 2) * t2_2(2, 2)),
55 "T2(i,k)^T2(k,j)(1,2)");
56 test_for_zero(t2s(2, 2)
57 - (t2(2, 0) * t2_2(0, 2) + t2(2, 1) * t2_2(1, 2)
58 + t2(2, 2) * t2_2(2, 2)),
59 "T2(i,k)^T2(k,j)(2,2)");
60}
Tensors class implemented by Walter Landry.
FTensor::Index< 'i', SPACE_DIM > i
FTensor::Index< 'j', 3 > j
FTensor::Index< 'k', 3 > k
Tensors class implemented by Walter Landry.
Definition FTensor.hpp:51
void test_T2_37(const Tensor2< double, 3, 3 > &t2_2)
Definition test_T2_37.cpp:7
void test_for_zero(const T &t, const std::string &s)