|
| v0.14.0
|
Go to the documentation of this file.
11 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
12 char j,
char k,
char l>
18 template <
int Current_Dim>
22 return iterA(N1, N2, Current_Dim - 1) *
iterB(Current_Dim - 1, N3)
38 operator()(
const int N1,
const int N2,
const int N3)
const
44 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
45 char j,
char k,
char l>
46 Dg_Expr<Dg_times_Tensor2_symmetric_0<A, B, T, U, Dim01, Dim2, i, j, k, l>,
59 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
60 char j,
char k,
char l>
61 Dg_Expr<Dg_times_Tensor2_symmetric_0<A, B, T, U, Dim01, Dim2, i, j, k, l>,
74 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
75 char j,
char k,
char l>
81 template <
int Current_Dim>
85 return iterA(N1, N2, Current_Dim - 1) *
iterB(N3, Current_Dim - 1)
107 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
108 char j,
char k,
char l>
109 Dg_Expr<Dg_times_Tensor2_symmetric_1<A, B, T, U, Dim01, Dim2, i, j, k, l>,
122 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
123 char j,
char k,
char l>
124 Dg_Expr<Dg_times_Tensor2_symmetric_1<A, B, T, U, Dim01, Dim2, i, j, k, l>,
137 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
138 char j,
char k,
char l>
144 template <
int Current_Dim>
148 return iterA(N1, Current_Dim - 1, N2) *
iterB(Current_Dim - 1, N3)
170 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
171 char j,
char k,
char l>
173 Dg_times_Tensor2_symmetric_1_0<A, B, T, U, Dim01, Dim2, i, j, k, l>,
181 Dim01,
i,
k,
l>(TensorExpr(
a, b));
186 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
187 char j,
char k,
char l>
189 Dg_times_Tensor2_symmetric_1_0<A, B, T, U, Dim01, Dim2, i, j, k, l>,
197 Dim01,
i,
k,
l>(TensorExpr(
a, b));
202 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
203 char j,
char k,
char l>
209 template <
int Current_Dim>
213 return iterA(N1, Current_Dim - 1, N2) *
iterB(N3, Current_Dim - 1)
235 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
236 char j,
char k,
char l>
238 Dg_times_Tensor2_symmetric_1_1<A, B, T, U, Dim01, Dim2, i, j, k, l>,
246 Dim01,
i,
k,
l>(TensorExpr(
a, b));
251 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
252 char j,
char k,
char l>
254 Dg_times_Tensor2_symmetric_1_1<A, B, T, U, Dim01, Dim2, i, j, k, l>,
262 Dim01,
i,
k,
l>(TensorExpr(
a, b));
267 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
273 template <
int Current_Dim0,
int Current_Dim1>
277 return iterA(N1, Current_Dim0 - 1, Current_Dim1 - 1)
278 *
iterB(Current_Dim0 - 1, Current_Dim1 - 1)
281 template <
int Current_Dim1>
285 return iterA(N1, 0, Current_Dim1 - 1) *
iterB(0, Current_Dim1 - 1)
306 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
319 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
332 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
338 template <
int Current_Dim0,
int Current_Dim1>
342 return iterA(N1, Current_Dim0 - 1, Current_Dim1 - 1)
343 *
iterB(Current_Dim1 - 1, Current_Dim0 - 1)
346 template <
int Current_Dim1>
350 return iterA(N1, 0, Current_Dim1 - 1) *
iterB(Current_Dim1 - 1, 0)
371 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
384 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
397 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
403 template <
int Current_Dim0,
int Current_Dim1>
407 return iterA(Current_Dim0 - 1, N1, Current_Dim1 - 1)
408 *
iterB(Current_Dim0 - 1, Current_Dim1 - 1)
411 template <
int Current_Dim1>
415 return iterA(0, N1, Current_Dim1 - 1) *
iterB(0, Current_Dim1 - 1)
436 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
449 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
462 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
468 template <
int Current_Dim0,
int Current_Dim1>
472 return iterA(Current_Dim0 - 1, N1, Current_Dim1 - 1)
473 *
iterB(Current_Dim1 - 1, Current_Dim0 - 1)
476 template <
int Current_Dim1>
480 return iterA(0, N1, Current_Dim1 - 1) *
iterB(Current_Dim1 - 1, 0)
501 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
514 template <
class A,
class B,
class T,
class U,
int Dim,
char i,
char j,
char k>
527 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
534 template <
int Current_Dim0,
int Current_Dim1>
538 return iterA(Current_Dim0 - 1, Current_Dim1 - 1, N1)
539 *
iterB(Current_Dim0 - 1, Current_Dim1 - 1)
542 template <
int Current_Dim1>
546 return iterA(0, Current_Dim1 - 1, N1) *
iterB(0, Current_Dim1 - 1)
567 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
582 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
597 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
604 template <
int Current_Dim0,
int Current_Dim1>
608 return iterA(Current_Dim0 - 1, Current_Dim1 - 1, N1)
609 *
iterB(Current_Dim1 - 1, Current_Dim0 - 1)
612 template <
int Current_Dim1>
616 return iterA(0, Current_Dim1 - 1, N1) *
iterB(Current_Dim1 - 1, 0)
637 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
652 template <
class A,
class B,
class T,
class U,
int Dim01,
int Dim2,
char i,
promote< T, U >::V eval(const int N1, 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_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)
Dg_Expr< A, T, Dim01, Dim2, j, k, i > iterA
promote< T, U >::V operator()(const int N1) const
Dg_times_Tensor2_symmetric_12(const Dg_Expr< A, T, Dim, Dim, i, j, k > &a, const Tensor2_symmetric_Expr< B, U, Dim, j, k > &b)
promote< T, U >::V operator()(const int N1) const
Tensor2_symmetric_Expr< B, U, Dim01, j, l > iterB
Tensor2_symmetric_Expr< B, U, Dim, j, k > iterB
Dg_Expr< A, T, Dim, Dim, j, i, k > iterA
Dg_times_Tensor2_symmetric_21(const Dg_Expr< A, T, Dim, Dim, i, j, k > &a, const Tensor2_symmetric_Expr< B, U, Dim, k, j > &b)
promote< T, U >::V operator()(const int N1) const
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< Current_Dim1 > &) const
promote< T, U >::V eval(const int N1, const Number< Current_Dim0 > &, const Number< Current_Dim1 > &) const
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< 1 > &) const
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< 1 > &) const
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< 1 > &) const
Dg_Expr< A, T, Dim, Dim, k, i, j > iterA
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< 1 > &) const
Dg_times_Tensor2_symmetric_20(const Dg_Expr< A, T, Dim, Dim, k, i, j > &a, const Tensor2_symmetric_Expr< B, U, Dim, j, k > &b)
Dg_Expr< A, T, Dim, Dim, i, j, k > iterA
Dg_times_Tensor2_symmetric_01(const Dg_Expr< A, T, Dim01, Dim2, j, k, i > &a, const Tensor2_symmetric_Expr< B, U, Dim01, j, k > &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_Dim > &) const
promote< T, U >::V operator()(const int N1) const
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< Current_Dim > &) const
promote< T, U >::V operator()(const int N1) const
Tensor2_symmetric_Expr< B, U, Dim, j, k > iterB
Dg_times_Tensor2_symmetric_02(const Dg_Expr< A, T, Dim, Dim, j, i, k > &a, const Tensor2_symmetric_Expr< B, U, Dim, j, k > &b)
Dg_Expr< A, T, Dim01, Dim2, i, j, k > iterA
Dg_Expr< A, T, Dim01, Dim2, i, j, k > iterA
Tensor2_symmetric_Expr< B, U, Dim, k, j > iterB
Dg_times_Tensor2_symmetric_1_0(const Dg_Expr< A, T, Dim01, Dim2, i, j, k > &a, const Tensor2_symmetric_Expr< B, U, Dim01, j, l > &b)
Tensor2_symmetric_Expr< B, U, Dim, j, k > iterB
Tensor2_symmetric_Expr< B, U, Dim2, k, l > iterB
Tensor2_symmetric_Expr< B, U, Dim01, k, j > iterB
Dg_Expr< A, T, Dim01, Dim2, j, k, i > iterA
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< Current_Dim1 > &) const
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< Current_Dim > &) const
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< Current_Dim1 > &) const
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< 1 > &) const
FTensor::Index< 'i', SPACE_DIM > i
Dg_times_Tensor2_symmetric_1(const Dg_Expr< A, T, Dim01, Dim2, i, j, k > &a, const Tensor2_symmetric_Expr< B, U, Dim2, l, k > &b)
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< 1 > &) const
Dg_times_Tensor2_symmetric_0(const Dg_Expr< A, T, Dim01, Dim2, i, j, k > &a, const Tensor2_symmetric_Expr< B, U, Dim2, k, l > &b)
Tensor2_symmetric_Expr< B, U, Dim01, l, j > iterB
Dg_Expr< A, T, Dim01, Dim2, i, j, k > iterA
promote< T, U >::V eval(const int N1, const Number< Current_Dim0 > &, const Number< Current_Dim1 > &) const
promote< T, U >::V operator()(const int N1, const int N2, const int N3) const
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< Current_Dim1 > &) const
promote< T, U >::V operator()(const int N1, const int N2, const int N3) const
promote< T, U >::V operator()(const int N1, const int N2, const int N3) const
Tensor2_symmetric_Expr< B, U, Dim2, l, k > iterB
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< 1 > &) const
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< Current_Dim1 > &) const
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< Current_Dim1 > &) const
FTensor::Index< 'j', 3 > j
promote< T, U >::V eval(const int N1, const int N2, const int N3, const Number< 1 > &) const
Dg_times_Tensor2_symmetric_1_1(const Dg_Expr< A, T, Dim01, Dim2, i, j, k > &a, const Tensor2_symmetric_Expr< B, U, Dim01, l, j > &b)
promote< T, U >::V operator()(const int N1) const
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< 1 > &) const
Dg_times_Tensor2_symmetric_10(const Dg_Expr< A, T, Dim01, Dim2, j, k, i > &a, const Tensor2_symmetric_Expr< B, U, Dim01, k, j > &b)
promote< T, U >::V eval(const int N1, const Number< Current_Dim0 > &, const Number< Current_Dim1 > &) const
promote< T, U >::V eval(const int N1, const Number< Current_Dim0 > &, const Number< Current_Dim1 > &) const
Tensor2_symmetric_Expr< B, U, Dim01, j, k > iterB
Dg_Expr< A, T, Dim01, Dim2, i, j, k > iterA
promote< T, U >::V eval(const int N1, const Number< 1 > &, const Number< 1 > &) const
FTensor::Index< 'k', 3 > k
promote< T, U >::V eval(const int N1, const Number< Current_Dim0 > &, const Number< Current_Dim1 > &) const
FTensor::Index< 'l', 3 > l
Dg_Expr< A, T, Dim, Dim, i, j, k > iterA