v0.14.0
Loading...
Searching...
No Matches
Functions
test_T3dg_23.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_T3dg_23 (Tensor1< double, 3 > &t1_1, const Tensor2< double, 3, 3 > &t2_2, const Dg< double, 3, 3 > &t3dg_2)
 

Function Documentation

◆ test_T3dg_23()

void test_T3dg_23 ( Tensor1< double, 3 > & t1_1,
const Tensor2< double, 3, 3 > & t2_2,
const Dg< double, 3, 3 > & t3dg_2 )

Definition at line 7 of file test_T3dg_23.cpp.

9{
10 Index<'i', 3> i;
11 Index<'j', 3> j;
12 Index<'k', 3> k;
13
17
18 /* Dg tests */
19
20 t1_1(i) = t3dg_2(i, j, k) * t2_2(k, j);
22 t1_1(0)
23 - (t3dg_2(0, 0, 0) * t2_2(0, 0) + t3dg_2(0, 0, 1) * t2_2(1, 0)
24 + t3dg_2(0, 0, 2) * t2_2(2, 0) + t3dg_2(0, 1, 0) * t2_2(0, 1)
25 + t3dg_2(0, 1, 1) * t2_2(1, 1) + t3dg_2(0, 1, 2) * t2_2(2, 1)
26 + t3dg_2(0, 2, 0) * t2_2(0, 2) + t3dg_2(0, 2, 1) * t2_2(1, 2)
27 + t3dg_2(0, 2, 2) * t2_2(2, 2)),
28 "T3dg(i,j,k)*T2(k,j)(0)");
30 t1_1(1)
31 - (t3dg_2(1, 0, 0) * t2_2(0, 0) + t3dg_2(1, 0, 1) * t2_2(1, 0)
32 + t3dg_2(1, 0, 2) * t2_2(2, 0) + t3dg_2(1, 1, 0) * t2_2(0, 1)
33 + t3dg_2(1, 1, 1) * t2_2(1, 1) + t3dg_2(1, 1, 2) * t2_2(2, 1)
34 + t3dg_2(1, 2, 0) * t2_2(0, 2) + t3dg_2(1, 2, 1) * t2_2(1, 2)
35 + t3dg_2(1, 2, 2) * t2_2(2, 2)),
36 "T3dg(i,j,k)*T2(k,j)(1)");
38 t1_1(2)
39 - (t3dg_2(2, 0, 0) * t2_2(0, 0) + t3dg_2(2, 0, 1) * t2_2(1, 0)
40 + t3dg_2(2, 0, 2) * t2_2(2, 0) + t3dg_2(2, 1, 0) * t2_2(0, 1)
41 + t3dg_2(2, 1, 1) * t2_2(1, 1) + t3dg_2(2, 1, 2) * t2_2(2, 1)
42 + t3dg_2(2, 2, 0) * t2_2(0, 2) + t3dg_2(2, 2, 1) * t2_2(1, 2)
43 + t3dg_2(2, 2, 2) * t2_2(2, 2)),
44 "T3dg(i,j,k)*T2(k,j)(2)");
45
46 t1_1(i) = t2_2(k, j) * t3dg_2(i, j, k);
48 t1_1(0)
49 - (t3dg_2(0, 0, 0) * t2_2(0, 0) + t3dg_2(0, 0, 1) * t2_2(1, 0)
50 + t3dg_2(0, 0, 2) * t2_2(2, 0) + t3dg_2(0, 1, 0) * t2_2(0, 1)
51 + t3dg_2(0, 1, 1) * t2_2(1, 1) + t3dg_2(0, 1, 2) * t2_2(2, 1)
52 + t3dg_2(0, 2, 0) * t2_2(0, 2) + t3dg_2(0, 2, 1) * t2_2(1, 2)
53 + t3dg_2(0, 2, 2) * t2_2(2, 2)),
54 "T2(k,j)*T3dg(i,j,k)(0)");
56 t1_1(1)
57 - (t3dg_2(1, 0, 0) * t2_2(0, 0) + t3dg_2(1, 0, 1) * t2_2(1, 0)
58 + t3dg_2(1, 0, 2) * t2_2(2, 0) + t3dg_2(1, 1, 0) * t2_2(0, 1)
59 + t3dg_2(1, 1, 1) * t2_2(1, 1) + t3dg_2(1, 1, 2) * t2_2(2, 1)
60 + t3dg_2(1, 2, 0) * t2_2(0, 2) + t3dg_2(1, 2, 1) * t2_2(1, 2)
61 + t3dg_2(1, 2, 2) * t2_2(2, 2)),
62 "T2(k,j)*T3dg(i,j,k)(1)");
64 t1_1(2)
65 - (t3dg_2(2, 0, 0) * t2_2(0, 0) + t3dg_2(2, 0, 1) * t2_2(1, 0)
66 + t3dg_2(2, 0, 2) * t2_2(2, 0) + t3dg_2(2, 1, 0) * t2_2(0, 1)
67 + t3dg_2(2, 1, 1) * t2_2(1, 1) + t3dg_2(2, 1, 2) * t2_2(2, 1)
68 + t3dg_2(2, 2, 0) * t2_2(0, 2) + t3dg_2(2, 2, 1) * t2_2(1, 2)
69 + t3dg_2(2, 2, 2) * t2_2(2, 2)),
70 "T2(k,j)*T3dg(i,j,k)(2)");
71}
static Number< 2 > N2
static Number< 1 > N1
static Number< 0 > N0
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)