v0.13.2
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
FTensor::Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k > Class Template Reference

#include <src/ftensor/src/FTensor/Tensor3/Tensor3_Expr.hpp>

Collaboration diagram for FTensor::Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k >:
[legend]

Public Member Functions

 Tensor3_Expr (A &a)
 
Toperator() (const int N0, const int N1, const int N2)
 
T operator() (const int N0, const int N1, const int N2) const
 
template<class B , class U , int Dim1_0, int Dim1_1, int Dim1_2, char i_1, char j_1, char k_1>
auto & operator= (const Tensor3_Expr< B, U, Dim1_0, Dim1_1, Dim1_2, i_1, j_1, k_1 > &rhs)
 
auto & operator= (const Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k > &result)
 

Private Attributes

Aiter
 

Detailed Description

template<class A, class T, int Dim0, int Dim1, int Dim2, char i, char j, char k, int N>
class FTensor::Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k >

Definition at line 219 of file Tensor3_Expr.hpp.

Constructor & Destructor Documentation

◆ Tensor3_Expr()

template<class A , class T , int Dim0, int Dim1, int Dim2, char i, char j, char k, int N>
FTensor::Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k >::Tensor3_Expr ( A a)
inline

Member Function Documentation

◆ operator()() [1/2]

template<class A , class T , int Dim0, int Dim1, int Dim2, char i, char j, char k, int N>
T & FTensor::Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k >::operator() ( const int  N0,
const int  N1,
const int  N2 
)
inline

Definition at line 225 of file Tensor3_Expr.hpp.

225 {
226 return iter(N0, N1, N2, N);
227 }
static Number< 2 > N2
static Number< 1 > N1
static Number< 0 > N0
const int N
Definition: speed_test.cpp:3

◆ operator()() [2/2]

template<class A , class T , int Dim0, int Dim1, int Dim2, char i, char j, char k, int N>
T FTensor::Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k >::operator() ( const int  N0,
const int  N1,
const int  N2 
) const
inline

Definition at line 228 of file Tensor3_Expr.hpp.

228 {
229 return iter(N0, N1, N2, N);
230 }

◆ operator=() [1/2]

template<class A , class T , int Dim0, int Dim1, int Dim2, char i, char j, char k, int N>
template<class B , class U , int Dim1_0, int Dim1_1, int Dim1_2, char i_1, char j_1, char k_1>
auto & FTensor::Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k >::operator= ( const Tensor3_Expr< B, U, Dim1_0, Dim1_1, Dim1_2, i_1, j_1, k_1 > &  rhs)
inline

Definition at line 238 of file Tensor3_Expr.hpp.

239 {
240 for (int ii = 0; ii < Dim0; ++ii)
241 for (int jj = 0; jj < Dim1; ++jj)
242 for (int kk = 0; kk < Dim2; ++kk) {
243 iter(ii, jj, N, kk) = permute(*this, rhs, ii, jj, kk);
244 }
245 return *this;
246 }
U permute(const Tensor2_Expr< A, T, Dim0_0, Dim0_1, i0, j0 > &, const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i1, j1 > &rhs, const int N0, const int N1)
Definition: permute.hpp:11

◆ operator=() [2/2]

template<class A , class T , int Dim0, int Dim1, int Dim2, char i, char j, char k, int N>
auto & FTensor::Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k >::operator= ( const Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k > &  result)
inline

Definition at line 248 of file Tensor3_Expr.hpp.

249 {
250 return operator=<Tensor4_number_rhs_2<A, T, N>, T>(result);
251 }
const double T

Member Data Documentation

◆ iter

template<class A , class T , int Dim0, int Dim1, int Dim2, char i, char j, char k, int N>
A& FTensor::Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k >::iter
private

Definition at line 221 of file Tensor3_Expr.hpp.


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