|
| v0.14.0
|
Go to the documentation of this file.
15 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
16 int Current_Dim0,
int Current_Dim1>
22 return a(Current_Dim0 - 1, Current_Dim1 - 1)
23 * b(Current_Dim0 - 1, Current_Dim1 - 1)
28 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
35 return a(0, Current_Dim1 - 1) * b(0, Current_Dim1 - 1)
39 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j>
45 return a(0, 0) * b(0, 0);
48 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j>
58 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
59 int Current_Dim0,
int Current_Dim1>
66 return a(Current_Dim0 - 1, Current_Dim1 - 1)
67 * b(Current_Dim1 - 1, Current_Dim0 - 1)
72 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
79 return a(0, Current_Dim1 - 1) * b(Current_Dim1 - 1, 0)
84 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j>
90 return a(0, 0) * b(0, 0);
93 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j>
108 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
114 template <
int Current_Dim>
118 return iterA(N1, Current_Dim - 1) *
iterB(Current_Dim - 1, N2)
139 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
141 Tensor2_symmetric_times_Tensor2_symmetric_10<A, B, T, U, Dim, i, j, k>,
154 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
160 template <
int Current_Dim>
164 return iterA(N1, Current_Dim - 1) *
iterB(N2, Current_Dim - 1)
185 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
187 Tensor2_symmetric_times_Tensor2_symmetric_11<A, B, T, U, Dim, i, j, k>,
200 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
206 template <
int Current_Dim>
210 return iterA(Current_Dim - 1, N1) *
iterB(Current_Dim - 1, N2)
231 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
233 Tensor2_symmetric_times_Tensor2_symmetric_00<A, B, T, U, Dim, i, j, k>,
246 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
252 template <
int Current_Dim>
256 return iterA(Current_Dim - 1, N1) *
iterB(N2, Current_Dim - 1)
277 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
279 Tensor2_symmetric_times_Tensor2_symmetric_01<A, B, T, U, Dim, i, j, k>,
292 template <
class A,
class B,
class T,
class U,
int Dim0,
int Dim1,
char i,
293 char j,
char k,
char l>
306 operator()(
const int N1,
const int N2,
const int N3,
const int N4)
const
312 template <
class A,
class B,
class T,
class U,
int Dim0,
int Dim1,
char i,
313 char j,
char k,
char l>
314 Ddg_Expr<Tensor2_symmetric_times_Tensor2_symmetric<
A, B, T,
U, Dim0, Dim1,
i,
324 l>(TensorExpr(
a, b));
Tensor2_symmetric_Expr< B, U, Dim, k, j > iterB
promote< T, U >::V eval(const int N1, const int N2, const Number< Current_Dim > &) const
promote< T, U >::V operator*(const Ddg_Expr< A, T, Dim, Dim, i, j, k, l > &a, const Ddg_Expr< B, U, Dim, Dim, i, k, j, l > &b)
promote< T, U >::V eval(const int N1, const int N2, const Number< 1 > &) const
Tensor2_symmetric_times_Tensor2_symmetric_01(const Tensor2_symmetric_Expr< A, T, Dim, j, i > &a, const Tensor2_symmetric_Expr< B, U, Dim, k, j > &b)
promote< T, U >::V eval(const int N1, const int N2, const Number< 1 > &) const
promote< T, U >::V eval(const int N1, const int N2, const Number< Current_Dim > &) const
Tensor2_symmetric_Expr< A, T, Dim, j, i > iterA
Tensor2_symmetric_times_Tensor2_symmetric_00(const Tensor2_symmetric_Expr< A, T, Dim, j, i > &a, const Tensor2_symmetric_Expr< B, U, Dim, j, k > &b)
Tensor2_symmetric_times_Tensor2_symmetric_10(const Tensor2_symmetric_Expr< A, T, Dim, i, j > &a, const Tensor2_symmetric_Expr< B, U, Dim, j, k > &b)
promote< T, U >::V operator()(const int N1, const int N2) const
Tensor2_symmetric_Expr< B, U, Dim, j, k > iterB
promote< T, U >::V operator()(const int N1, const int N2) const
Tensor2_symmetric_Expr< A, T, Dim, j, i > iterA
Tensor2_symmetric_times_Tensor2_symmetric(const Tensor2_symmetric_Expr< A, T, Dim0, i, j > &a, const Tensor2_symmetric_Expr< B, U, Dim1, k, l > &b)
promote< T, U >::V eval(const int N1, const int N2, const Number< Current_Dim > &) const
Tensor2_symmetric_times_Tensor2_symmetric_11(const Tensor2_symmetric_Expr< A, T, Dim, i, j > &a, const Tensor2_symmetric_Expr< B, U, Dim, k, j > &b)
FTensor::Index< 'i', SPACE_DIM > i
promote< T, U >::V T2s_times_switched_T2s(const Tensor2_symmetric_Expr< A, T, Dim, i, j > &a, const Tensor2_symmetric_Expr< B, U, Dim, j, i > &b, const Number< Current_Dim0 > &, const Number< Current_Dim1 > &)
Tensor2_symmetric_Expr< B, U, Dim1, k, l > iterB
Tensor2_symmetric_Expr< A, T, Dim0, i, j > iterA
promote< T, U >::V eval(const int N1, const int N2, const Number< 1 > &) const
FTensor::Index< 'j', 3 > j
promote< T, U >::V operator()(const int N1, const int N2) const
promote< T, U >::V operator()(const int N1, const int N2) const
promote< T, U >::V eval(const int N1, const int N2, const Number< Current_Dim > &) const
FTensor::Index< 'k', 3 > k
Tensor2_symmetric_Expr< A, T, Dim, i, j > iterA
promote< T, U >::V eval(const int N1, const int N2, const Number< 1 > &) const
promote< T, U >::V operator()(const int N1, const int N2, const int N3, const int N4) const
Tensor2_symmetric_Expr< B, U, Dim, k, j > iterB
Tensor2_symmetric_Expr< A, T, Dim, i, j > iterA
FTensor::Index< 'l', 3 > l
Tensor2_symmetric_Expr< B, U, Dim, j, k > iterB
promote< T, U >::V T2s_times_T2s(const Tensor2_symmetric_Expr< A, T, Dim, i, j > &a, const Tensor2_symmetric_Expr< B, U, Dim, i, j > &b, const Number< Current_Dim0 > &, const Number< Current_Dim1 > &)