v0.13.2
Loading...
Searching...
No Matches
Public Member Functions | List of all members
FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k > Struct Template Reference

#include <src/ftensor/src/FTensor/Permutation3.hpp>

Public Member Functions

 Permutation3 ()=default
 
template<class B , class U >
eval (const Tensor3_Expr< B, U, Dim0, Dim1, Dim2, i, j, k > &rhs, const int N0, const int N1, const int N2)
 
template<class B , class U >
eval (const Tensor3_Expr< B, U, Dim0, Dim2, Dim1, i, k, j > &rhs, const int N0, const int N1, const int N2)
 
template<class B , class U >
eval (const Tensor3_Expr< B, U, Dim1, Dim0, Dim2, j, i, k > &rhs, const int N0, const int N1, const int N2)
 
template<class B , class U >
eval (const Tensor3_Expr< B, U, Dim1, Dim2, Dim0, j, k, i > &rhs, const int N0, const int N1, const int N2)
 
template<class B , class U >
eval (const Tensor3_Expr< B, U, Dim2, Dim0, Dim1, k, i, j > &rhs, const int N0, const int N1, const int N2)
 
template<class B , class U >
eval (const Tensor3_Expr< B, U, Dim2, Dim1, Dim0, k, j, i > &rhs, const int N0, const int N1, const int N2)
 
template<class B , class U , int Dim1_0, int Dim1_1, int Dim1_2, char i1, char j1, char k1>
eval (const Tensor3_Expr< B, U, Dim1_0, Dim1_1, Dim1_2, i1, j1, k1 > &rhs, const int N0, const int N1, const int N2)
 
template<class B , class U >
eval (const Dg_Expr< B, U, Dim0, Dim2, i, j, k > &rhs, const int N0, const int N1, const int N2)
 
template<class B , class U >
eval (const Dg_Expr< B, U, Dim0, Dim2, j, i, k > &rhs, const int N0, const int N1, const int N2)
 
template<class B , class U , int Dim1_01, int Dim1_1, int Dim1_2, char i1, char j1, char k1>
eval (const Dg_Expr< B, U, Dim1_01, Dim1_2, i1, j1, k1 > &rhs, const int N0, const int N1, const int N2)
 

Detailed Description

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
struct FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >

Definition at line 8 of file Permutation3.hpp.

Constructor & Destructor Documentation

◆ Permutation3()

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::Permutation3 ( )
default

Member Function Documentation

◆ eval() [1/10]

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
template<class B , class U >
U FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::eval ( const Dg_Expr< B, U, Dim0, Dim2, i, j, k > &  rhs,
const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 65 of file Permutation3.hpp.

66 {
67 static_assert(Dim0 == Dim1, "Incompatible indices");
68 return rhs(N0, N1, N2);
69 }
static Number< 2 > N2
static Number< 1 > N1
static Number< 0 > N0

◆ eval() [2/10]

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
template<class B , class U >
U FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::eval ( const Dg_Expr< B, U, Dim0, Dim2, j, i, k > &  rhs,
const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 72 of file Permutation3.hpp.

73 {
74 static_assert(Dim0 == Dim1, "Incompatible indices");
75 return rhs(N0, N1, N2);
76 }

◆ eval() [3/10]

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
template<class B , class U , int Dim1_01, int Dim1_1, int Dim1_2, char i1, char j1, char k1>
U FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::eval ( const Dg_Expr< B, U, Dim1_01, Dim1_2, i1, j1, k1 > &  rhs,
const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 81 of file Permutation3.hpp.

82 {
83 static_assert(error_when_instantiated<B>(), "Incompatible indices");
84 return rhs(0, 0, 0);
85 }

◆ eval() [4/10]

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
template<class B , class U >
U FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::eval ( const Tensor3_Expr< B, U, Dim0, Dim1, Dim2, i, j, k > &  rhs,
const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 13 of file Permutation3.hpp.

15 {
16 return rhs(N0, N1, N2);
17 }

◆ eval() [5/10]

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
template<class B , class U >
U FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::eval ( const Tensor3_Expr< B, U, Dim0, Dim2, Dim1, i, k, j > &  rhs,
const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 20 of file Permutation3.hpp.

22 {
23 return rhs(N0, N2, N1);
24 }

◆ eval() [6/10]

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
template<class B , class U >
U FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::eval ( const Tensor3_Expr< B, U, Dim1, Dim0, Dim2, j, i, k > &  rhs,
const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 27 of file Permutation3.hpp.

29 {
30 return rhs(N1, N0, N2);
31 }

◆ eval() [7/10]

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
template<class B , class U >
U FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::eval ( const Tensor3_Expr< B, U, Dim1, Dim2, Dim0, j, k, i > &  rhs,
const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 34 of file Permutation3.hpp.

36 {
37 return rhs(N1, N2, N0);
38 }

◆ eval() [8/10]

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
template<class B , class U , int Dim1_0, int Dim1_1, int Dim1_2, char i1, char j1, char k1>
U FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::eval ( const Tensor3_Expr< B, U, Dim1_0, Dim1_1, Dim1_2, i1, j1, k1 > &  rhs,
const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 57 of file Permutation3.hpp.

59 {
60 static_assert(error_when_instantiated<B>(), "Incompatible indices");
61 return rhs(0, 0, 0);
62 }

◆ eval() [9/10]

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
template<class B , class U >
U FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::eval ( const Tensor3_Expr< B, U, Dim2, Dim0, Dim1, k, i, j > &  rhs,
const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 41 of file Permutation3.hpp.

43 {
44 return rhs(N2, N0, N1);
45 }

◆ eval() [10/10]

template<int Dim0, int Dim1, int Dim2, char i, char j, char k>
template<class B , class U >
U FTensor::Permutation3< Dim0, Dim1, Dim2, i, j, k >::eval ( const Tensor3_Expr< B, U, Dim2, Dim1, Dim0, k, j, i > &  rhs,
const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 48 of file Permutation3.hpp.

50 {
51 return rhs(N2, N1, N0);
52 }

The documentation for this struct was generated from the following file: