v0.14.0
Loading...
Searching...
No Matches
test_T2s_45.cpp
Go to the documentation of this file.
3#include <iostream>
4using namespace FTensor;
5using namespace std;
6
9{
10 Index<'i', 3> i;
11
12 Number<0> N0;
13 Number<1> N1;
14 Number<2> N2;
15
16 /* Tensor2_symmetric tests */
17
18 /* Test of Number<> as an index. */
19
20 t2s_1(N0, i) = t1_2(i);
21 t2s_1(N0, i) += t1_2(i);
22 test_for_zero(t2s_1(0, 0) - 2 * t1_2(0), "T2s+=(N,i)(0,0)");
23 test_for_zero(t2s_1(0, 1) - 2 * t1_2(1), "T2s+=(N,i)(0,1)");
24 test_for_zero(t2s_1(0, 2) - 2 * t1_2(2), "T2s+=(N,i)(0,2)");
25 t2s_1(N0, i) -= t1_2(i);
26 test_for_zero(t2s_1(0, 0) - t1_2(0), "T2s-=(N,i)(0,0)");
27 test_for_zero(t2s_1(0, 1) - t1_2(1), "T2s-=(N,i)(0,1)");
28 test_for_zero(t2s_1(0, 2) - t1_2(2), "T2s-=(N,i)(0,2)");
29
30 t2s_1(N1, i) = t1_2(i);
31 t2s_1(N1, i) += t1_2(i);
32 test_for_zero(t2s_1(1, 0) - 2 * t1_2(0), "T2s+=(N,i)(1,0)");
33 test_for_zero(t2s_1(1, 1) - 2 * t1_2(1), "T2s+=(N,i)(1,1)");
34 test_for_zero(t2s_1(1, 2) - 2 * t1_2(2), "T2s+=(N,i)(1,2)");
35 t2s_1(N1, i) -= t1_2(i);
36 test_for_zero(t2s_1(1, 0) - t1_2(0), "T2s-=(N,i)(1,0)");
37 test_for_zero(t2s_1(1, 1) - t1_2(1), "T2s-=(N,i)(1,1)");
38 test_for_zero(t2s_1(1, 2) - t1_2(2), "T2s-=(N,i)(1,2)");
39
40 t2s_1(N2, i) = t1_2(i);
41 t2s_1(N2, i) += t1_2(i);
42 test_for_zero(t2s_1(2, 0) - 2 * t1_2(0), "T2s+=(N,i)(2,0)");
43 test_for_zero(t2s_1(2, 1) - 2 * t1_2(1), "T2s+=(N,i)(2,1)");
44 test_for_zero(t2s_1(2, 2) - 2 * t1_2(2), "T2s+=(N,i)(2,2)");
45 t2s_1(N2, i) -= t1_2(i);
46 test_for_zero(t2s_1(2, 0) - t1_2(0), "T2s-=(N,i)(2,0)");
47 test_for_zero(t2s_1(2, 1) - t1_2(1), "T2s-=(N,i)(2,1)");
48 test_for_zero(t2s_1(2, 2) - t1_2(2), "T2s-=(N,i)(2,2)");
49}
Tensors class implemented by Walter Landry.
FTensor::Index< 'i', SPACE_DIM > i
Tensors class implemented by Walter Landry.
Definition FTensor.hpp:51
void test_T2s_45(const Tensor1< double, 3 > &t1_2, Tensor2_symmetric< double, 3 > &t2s_1)
void test_for_zero(const T &t, const std::string &s)