v0.15.0
Loading...
Searching...
No Matches
Tensor3_antisymmetric_times_generic.hpp
Go to the documentation of this file.
1/* Multiplies a Tensor3_antisymmetric with a generic, yielding a
2 Tensor3_antisymmetric. */
3
4#pragma once
5
6namespace FTensor
7{
8 /* A(i,j,k)*generic */
9
10 template <class A, class T, class U, int Dim0, int Dim12, char i, char j,
11 char k>
13 {
15 U d;
16
17 public:
18 typename promote<T, U>::V
19 operator()(const int N1, const int N2, const int N3) const
20 {
21 return iterA(N1, N2, N3) * d;
22 }
23
29 };
30
31 template <class A, class T, class U, int Dim0, int Dim12, char i, char j,
32 char k>
33 Tensor3_antisymmetric_Expr<
34 Tensor3_antisymmetric_times_generic<A, T, U, Dim0, Dim12, i, j, k>,
35 typename promote<T, U>::V, Dim0, Dim12, i, j, k>
44
45 /* generic*A(i,j,k) */
46
47 template <class A, class T, class U, int Dim0, int Dim12, char i, char j,
48 char k>
49 Tensor3_antisymmetric_Expr<
50 Tensor3_antisymmetric_times_generic<A, T, U, Dim0, Dim12, i, j, k>,
51 typename promote<T, U>::V, Dim0, Dim12, i, j, k>
60}
constexpr double a
Tensor3_antisymmetric_times_generic(const Tensor3_antisymmetric_Expr< A, T, Dim0, Dim12, i, j, k > &a, const U &d0)
Tensor3_antisymmetric_Expr< A, T, Dim0, Dim12, i, j, k > iterA
promote< T, U >::V operator()(const int N1, const int N2, const int N3) const
FTensor::Index< 'i', SPACE_DIM > i
FTensor::Index< 'j', 3 > j
FTensor::Index< 'k', 3 > k
Tensors class implemented by Walter Landry.
Definition FTensor.hpp:51
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)
constexpr AssemblyType A