11  template <
class A, 
class B, 
class T, 
class U, 
int Dim01, 
int Dim2, 
char i,
 
   18    template <
int Current_Dim>
 
   22      return iterA(N1, N2, Current_Dim - 1) * 
iterB(Current_Dim - 1)
 
 
 
   42  template <
class A, 
class B, 
class T, 
class U, 
int Dim01, 
int Dim2, 
char i,
 
   44  Tensor2_symmetric_Expr<Dg_times_Tensor1_2<A, B, T, U, Dim01, Dim2, i, j, k>,
 
   51                                  i, 
j>(TensorExpr(
a, b));
 
 
   56  template <
class A, 
class B, 
class T, 
class U, 
int Dim01, 
int Dim2, 
char i,
 
   58  Tensor2_symmetric_Expr<Dg_times_Tensor1_2<A, B, T, U, Dim01, Dim2, i, j, k>,
 
   65                                  i, 
j>(TensorExpr(
a, b));
 
 
   70  template <
class A, 
class B, 
class T, 
class U, 
int Dim01, 
int Dim2, 
char i,
 
   77    template <
int Current_Dim>
 
   81      return iterA(N1, Current_Dim - 1, N2) * 
iterB(Current_Dim - 1)
 
 
 
  101  template <
class A, 
class B, 
class T, 
class U, 
int Dim01, 
int Dim2, 
char i,
 
  103  Tensor2_Expr<Dg_times_Tensor1_1<A, B, T, U, Dim01, Dim2, i, j, k>,
 
  110                        j>(TensorExpr(
a, b));
 
 
  115  template <
class A, 
class B, 
class T, 
class U, 
int Dim01, 
int Dim2, 
char i,
 
  117  Tensor2_Expr<Dg_times_Tensor1_1<A, B, T, U, Dim01, Dim2, i, j, k>,
 
  124                        j>(TensorExpr(
a, b));
 
 
  129  template <
class A, 
class B, 
class T, 
class U, 
int Dim01, 
int Dim2, 
char i,
 
  136    template <
int Current_Dim>
 
  140      return iterA(N1, Current_Dim - 1, N2) * 
iterB(Current_Dim - 1)
 
 
 
  160  template <
class A, 
class B, 
class T, 
class U, 
int Dim01, 
int Dim2, 
char i,
 
  162  Tensor2_Expr<Dg_times_Tensor1_0<A, B, T, U, Dim01, Dim2, i, j, k>,
 
  169                        j>(TensorExpr(
a, b));
 
 
  174  template <
class A, 
class B, 
class T, 
class U, 
int Dim01, 
int Dim2, 
char i,
 
  176  Tensor2_Expr<Dg_times_Tensor1_0<A, B, T, U, Dim01, Dim2, i, j, k>,
 
  183                        j>(TensorExpr(
a, b));
 
 
promote< T, U >::V eval(const int N1, const int N2, const Number< Current_Dim > &) const
Dg_times_Tensor1_0(const Dg_Expr< A, T, Dim01, Dim2, k, i, j > &a, const Tensor1_Expr< B, U, Dim01, k > &b)
Dg_Expr< A, T, Dim01, Dim2, k, i, j > iterA
promote< T, U >::V operator()(const int N1, const int N2) const
Tensor1_Expr< B, U, Dim01, k > iterB
promote< T, U >::V eval(const int N1, const int N2, const Number< 1 > &) const
Dg_times_Tensor1_1(const Dg_Expr< A, T, Dim01, Dim2, i, k, j > &a, const Tensor1_Expr< B, U, Dim01, k > &b)
promote< T, U >::V eval(const int N1, const int N2, const Number< 1 > &) const
Tensor1_Expr< B, U, Dim01, k > iterB
promote< T, U >::V eval(const int N1, const int N2, const Number< Current_Dim > &) const
promote< T, U >::V operator()(const int N1, const int N2) const
Dg_Expr< A, T, Dim01, Dim2, i, k, j > iterA
Dg_times_Tensor1_2(const Dg_Expr< A, T, Dim01, Dim2, i, j, k > &a, const Tensor1_Expr< B, U, Dim2, k > &b)
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
Dg_Expr< A, T, Dim01, Dim2, i, j, k > iterA
promote< T, U >::V eval(const int N1, const int N2, const Number< 1 > &) const
Tensor1_Expr< B, U, Dim2, k > iterB
FTensor::Index< 'i', SPACE_DIM > i
FTensor::Index< 'j', 3 > j
FTensor::Index< 'k', 3 > k
Tensors class implemented by Walter Landry.
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)