|
| v0.14.0
|
Go to the documentation of this file.
11 template <
class A,
class B,
class T,
class U,
int Dim0,
int Dim1,
int Dim2,
12 int Dim3,
int Dim4,
char i,
char j,
char k,
char l,
char m>
18 template <
int Current_Dim0,
int Current_Dim1>
23 return iterA(N1, N2, Current_Dim0 - 1, Current_Dim1 - 1)
24 *
iterB(Current_Dim0 - 1, Current_Dim1 - 1, N3)
28 template <
int Current_Dim1>
33 return iterA(N1, N2, 0, Current_Dim1 - 1) *
iterB(0, Current_Dim1 - 1, N3)
49 const Tensor4_Expr<A, T, Dim0, Dim1, Dim2, Dim3, i, j, k, l> &
a,
55 template <
class A,
class B,
class T,
class U,
int Dim0,
int Dim1,
int Dim2,
56 int Dim3,
int Dim4,
char i,
char j,
char k,
char l,
char m>
58 const Tensor4_times_Tensor3_23<
A, B, T,
U, Dim0, Dim1, Dim2, Dim3, Dim4,
61 operator*(
const Tensor4_Expr<A, T, Dim0, Dim1, Dim2, Dim3, i, j, k, l> &
a,
67 i,
j,
m>(TensorExpr(
a, b));
72 template <
class A,
class B,
class T,
class U,
int Dim0,
int Dim1,
int Dim2,
73 int Dim3,
int Dim4,
char i,
char j,
char k,
char l,
char m>
75 const Tensor4_times_Tensor3_23<
A, B, T,
U, Dim0, Dim1, Dim2, Dim3, Dim4,
84 i,
j,
m>(TensorExpr(
a, b));
89 template <
class A,
class B,
class T,
class U,
int Dim0,
int Dim1,
int Dim2,
90 int Dim3,
int Dim4,
char i,
char j,
char k,
char l,
char m>
95 template <
int Current_Dim0,
int Current_Dim1>
100 return iterA(N1, Current_Dim0 - 1, Current_Dim1 - 1, N2)
101 *
iterB(N3, Current_Dim1 - 1, Current_Dim0 - 1)
105 template <
int Current_Dim1>
110 return iterA(N1, 0, Current_Dim1 - 1, N2) *
111 iterB(N3, Current_Dim1 - 1, 0) +
122 const int N3)
const {
127 const Tensor4_Expr<A, T, Dim0, Dim1, Dim2, Dim3, i, j, k, l> &
a,
133 template <
class A,
class B,
class T,
class U,
int Dim0,
int Dim1,
int Dim2,
134 int Dim3,
int Dim4,
char i,
char j,
char k,
char l,
char m>
136 const Tensor4_times_Tensor3_12_21<
A, B, T,
U, Dim0, Dim1, Dim2, Dim3, Dim4,
139 operator*(
const Tensor4_Expr<A, T, Dim0, Dim1, Dim2, Dim3, i, j, k, l> &
a,
142 Dim3, Dim4,
i,
j,
k,
l,
m>
145 i,
l,
m>(TensorExpr(
a, b));
150 template <
class A,
class B,
class T,
class U,
int Dim0,
int Dim1,
int Dim2,
151 int Dim3,
int Dim4,
char i,
char j,
char k,
char l,
char m>
153 const Tensor4_times_Tensor3_12_21<
A, B, T,
U, Dim0, Dim1, Dim2, Dim3,
154 Dim4,
i,
j,
k,
l,
m>,
160 Dim3, Dim4,
i,
j,
k,
l,
m>
163 i,
l,
m>(TensorExpr(
a, b));
const Tensor4_Expr< A, T, Dim0, Dim1, Dim2, Dim3, i, j, k, l > iterA
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 int N3, const Number< 1 > &, const Number< 1 > &) const
const Tensor4_Expr< A, T, Dim0, Dim1, Dim2, Dim3, i, j, k, l > iterA
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< 1 > &, const Number< Current_Dim1 > &) const
Tensor4_times_Tensor3_23(const Tensor4_Expr< A, T, Dim0, Dim1, Dim2, Dim3, i, j, k, l > &a, const Tensor3_Expr< B, U, Dim2, Dim3, Dim4, k, l, m > &b)
Tensor4_times_Tensor3_12_21(const Tensor4_Expr< A, T, Dim0, Dim1, Dim2, Dim3, i, j, k, l > &a, const Tensor3_Expr< B, U, Dim4, Dim2, Dim1, m, k, j > &b)
promote< T, U >::V operator()(const int N1, const int N2, const int N3) const
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< Current_Dim0 > &, const Number< Current_Dim1 > &) const
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< Current_Dim0 > &, const Number< Current_Dim1 > &) const
FTensor::Index< 'i', SPACE_DIM > i
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< 1 > &, const Number< Current_Dim1 > &) const
const Tensor3_Expr< B, U, Dim4, Dim2, Dim1, m, k, j > iterB
FTensor::Index< 'j', 3 > j
const Tensor3_Expr< B, U, Dim2, Dim3, Dim4, k, l, m > iterB
FTensor::Index< 'm', 3 > m
FTensor::Index< 'k', 3 > k
promote< T, U >::V operator()(const int N1, const int N2, const int N3) const
FTensor::Index< 'l', 3 > l
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< 1 > &, const Number< 1 > &) const