v0.14.0
test_T3as_02.cpp
Go to the documentation of this file.
1 #include "../../../src/FTensor.hpp"
2 #include "../test_for_zero.hpp"
3 #include <iostream>
4 using namespace FTensor;
5 using namespace std;
6 
7 void test_T3as_02(const Dg<double, 3, 3> &t3dg_2,
9 {
13 
14  Number<0> N0;
15  Number<1> N1;
16  Number<2> N2;
17 
18  t3as_1(j, i, k) = (t3dg_2(i, j, k) && t3dg_2(k, j, i));
19  test_for_zero(t3as_1(0, 0, 0) - (t3dg_2(0, 0, 0) - t3dg_2(0, 0, 0)),
20  "T3dg(i,j,k) && T3dg(k,j,i)(0,0,0)");
21  test_for_zero(t3as_1(0, 0, 1) - (t3dg_2(0, 0, 1) - t3dg_2(1, 0, 0)),
22  "T3dg(i,j,k) && T3dg(k,j,i)(0,0,1)");
23  test_for_zero(t3as_1(0, 0, 2) - (t3dg_2(0, 0, 2) - t3dg_2(2, 0, 0)),
24  "T3dg(i,j,k) && T3dg(k,j,i)(0,0,2)");
25  test_for_zero(t3as_1(1, 0, 0) - (t3dg_2(0, 1, 0) - t3dg_2(0, 1, 0)),
26  "T3dg(i,j,k) && T3dg(k,j,i)(0,1,0)");
27  test_for_zero(t3as_1(1, 0, 1) - (t3dg_2(0, 1, 1) - t3dg_2(1, 1, 0)),
28  "T3dg(i,j,k) && T3dg(k,j,i)(0,1,1)");
29  test_for_zero(t3as_1(1, 0, 2) - (t3dg_2(0, 1, 2) - t3dg_2(2, 1, 0)),
30  "T3dg(i,j,k) && T3dg(k,j,i)(0,1,2)");
31  test_for_zero(t3as_1(2, 0, 0) - (t3dg_2(0, 2, 0) - t3dg_2(0, 2, 0)),
32  "T3dg(i,j,k) && T3dg(k,j,i)(0,2,0)");
33  test_for_zero(t3as_1(2, 0, 1) - (t3dg_2(0, 2, 1) - t3dg_2(1, 2, 0)),
34  "T3dg(i,j,k) && T3dg(k,j,i)(0,2,1)");
35  test_for_zero(t3as_1(2, 0, 2) - (t3dg_2(0, 2, 2) - t3dg_2(2, 2, 0)),
36  "T3dg(i,j,k) && T3dg(k,j,i)(0,2,2)");
37  test_for_zero(t3as_1(0, 1, 0) - (t3dg_2(1, 0, 0) - t3dg_2(0, 0, 1)),
38  "T3dg(i,j,k) && T3dg(k,j,i)(1,0,0)");
39  test_for_zero(t3as_1(0, 1, 1) - (t3dg_2(1, 0, 1) - t3dg_2(1, 0, 1)),
40  "T3dg(i,j,k) && T3dg(k,j,i)(1,0,1)");
41  test_for_zero(t3as_1(0, 1, 2) - (t3dg_2(1, 0, 2) - t3dg_2(2, 0, 1)),
42  "T3dg(i,j,k) && T3dg(k,j,i)(1,0,2)");
43  test_for_zero(t3as_1(1, 1, 0) - (t3dg_2(1, 1, 0) - t3dg_2(0, 1, 1)),
44  "T3dg(i,j,k) && T3dg(k,j,i)(1,1,0)");
45  test_for_zero(t3as_1(1, 1, 1) - (t3dg_2(1, 1, 1) - t3dg_2(1, 1, 1)),
46  "T3dg(i,j,k) && T3dg(k,j,i)(1,1,1)");
47  test_for_zero(t3as_1(1, 1, 2) - (t3dg_2(1, 1, 2) - t3dg_2(2, 1, 1)),
48  "T3dg(i,j,k) && T3dg(k,j,i)(1,1,2)");
49  test_for_zero(t3as_1(2, 1, 0) - (t3dg_2(1, 2, 0) - t3dg_2(0, 2, 1)),
50  "T3dg(i,j,k) && T3dg(k,j,i)(1,2,0)");
51  test_for_zero(t3as_1(2, 1, 1) - (t3dg_2(1, 2, 1) - t3dg_2(1, 2, 1)),
52  "T3dg(i,j,k) && T3dg(k,j,i)(1,2,1)");
53  test_for_zero(t3as_1(2, 1, 2) - (t3dg_2(1, 2, 2) - t3dg_2(2, 2, 1)),
54  "T3dg(i,j,k) && T3dg(k,j,i)(1,2,2)");
55  test_for_zero(t3as_1(0, 2, 0) - (t3dg_2(2, 0, 0) - t3dg_2(0, 0, 2)),
56  "T3dg(i,j,k) && T3dg(k,j,i)(2,0,0)");
57  test_for_zero(t3as_1(0, 2, 1) - (t3dg_2(2, 0, 1) - t3dg_2(1, 0, 2)),
58  "T3dg(i,j,k) && T3dg(k,j,i)(2,0,1)");
59  test_for_zero(t3as_1(0, 2, 2) - (t3dg_2(2, 0, 2) - t3dg_2(2, 0, 2)),
60  "T3dg(i,j,k) && T3dg(k,j,i)(2,0,2)");
61  test_for_zero(t3as_1(1, 2, 0) - (t3dg_2(2, 1, 0) - t3dg_2(0, 1, 2)),
62  "T3dg(i,j,k) && T3dg(k,j,i)(2,1,0)");
63  test_for_zero(t3as_1(1, 2, 1) - (t3dg_2(2, 1, 1) - t3dg_2(1, 1, 2)),
64  "T3dg(i,j,k) && T3dg(k,j,i)(2,1,1)");
65  test_for_zero(t3as_1(1, 2, 2) - (t3dg_2(2, 1, 2) - t3dg_2(2, 1, 2)),
66  "T3dg(i,j,k) && T3dg(k,j,i)(2,1,2)");
67  test_for_zero(t3as_1(2, 2, 0) - (t3dg_2(2, 2, 0) - t3dg_2(0, 2, 2)),
68  "T3dg(i,j,k) && T3dg(k,j,i)(2,2,0)");
69  test_for_zero(t3as_1(2, 2, 1) - (t3dg_2(2, 2, 1) - t3dg_2(1, 2, 2)),
70  "T3dg(i,j,k) && T3dg(k,j,i)(2,2,1)");
71  test_for_zero(t3as_1(2, 2, 2) - (t3dg_2(2, 2, 2) - t3dg_2(2, 2, 2)),
72  "T3dg(i,j,k) && T3dg(k,j,i)(2,2,2)");
73 }
FTensor
JSON compatible output.
Definition: Christof_constructor.hpp:6
FTensor::Number< 0 >
FTensor::Tensor3_antisymmetric
Definition: Tensor3_antisymmetric_value.hpp:8
test_for_zero
void test_for_zero(const T &t, const std::string &s)
Definition: test_for_zero.hpp:7
test_T3as_02
void test_T3as_02(const Dg< double, 3, 3 > &t3dg_2, Tensor3_antisymmetric< double, 3, 3 > &t3as_1)
Definition: test_T3as_02.cpp:7
i
FTensor::Index< 'i', SPACE_DIM > i
Definition: hcurl_divergence_operator_2d.cpp:27
FTensor::Index< 'i', 3 >
FTensor::Dg
Definition: Dg_value.hpp:9
std
Definition: enable_if.hpp:5
j
FTensor::Index< 'j', 3 > j
Definition: matrix_function.cpp:19
k
FTensor::Index< 'k', 3 > k
Definition: matrix_function.cpp:20