v0.14.0
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)
 
T & operator() (const int N0, const int N1, const int N2)
 
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

Definition at line 224 of file Tensor3_Expr.hpp.

224 : iter(a) {}

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  }

◆ 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  }

◆ 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  }

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:
FTensor::Tensor3_Expr< Tensor4_number_rhs_2< A, T, N >, T, Dim0, Dim1, Dim2, i, j, k >::iter
A & iter
Definition: Tensor3_Expr.hpp:221
FTensor::permute
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
a
constexpr double a
Definition: approx_sphere.cpp:30
N
const int N
Definition: speed_test.cpp:3