7 {
8
11
14
16 FTensor::Tensor2<int, 3, 3> t_one3{1, 0, 0, 0, 1, 0, 0, 0, 1};
17
19 t_one2_symmetric(
i,
j) = t_one2(
i,
j) || t_one2(
j,
i);
21 t_one3_symmetric(
k,
l) = t_one3(
k,
l) || t_one3(
l,
k);
22
24 for (auto ii : {0, 1})
25 for (auto jj : {0, 1})
27
29 for (auto ii : {0, 1, 2})
30 for (auto jj : {0, 1, 2})
32
35 for (auto ii : {0, 1})
36 for (auto jj : {0, 1})
38 "kronecker_delta_symmetric 2 by 2");
39
42 for (auto ii : {0, 1, 2})
43 for (auto jj : {0, 1, 2})
45 "kronecker_delta_symmetric 3 by 3");
46}
FTensor::Index< 'i', SPACE_DIM > i
FTensor::Index< 'l', 3 > l
FTensor::Index< 'j', 3 > j
FTensor::Index< 'k', 3 > k
Tensor2_symmetric_Expr< Kronecker_Delta_symmetric< T >, T, Dim, i, j > kronecker_delta_symmetric(const Index< i, Dim > &, const Index< j, Dim > &)
Tensor2_Expr< Kronecker_Delta< T >, T, Dim0, Dim1, i, j > kronecker_delta(const Index< i, Dim0 > &, const Index< j, Dim1 > &)
Rank 2.
void test_for_zero(const T &t, const std::string &s)