v0.11.1
Public Member Functions | Private Attributes | List of all members
FTensor::Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j > Class Template Reference

#include <src/ftensor/src/FTensor/Tensor2/Tensor2_Expr.hpp>

Public Member Functions

 Tensor2_Expr (A &a)
 
Toperator() (const int N1, const int N2)
 
T operator() (const int N1, const int N2) const
 
template<class B , class U , int Dim1_0, int Dim1_1, char i_1, char j_1>
auto & operator= (const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i_1, j_1 > &rhs)
 
auto & operator= (const Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j > &result)
 

Private Attributes

A & iter
 

Detailed Description

template<class A, class T, int Dim0, int Dim1, char i, char j, int N>
class FTensor::Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j >

Definition at line 211 of file Tensor2_Expr.hpp.

Constructor & Destructor Documentation

◆ Tensor2_Expr()

template<class A , class T , int Dim0, int Dim1, char i, char j, int N>
FTensor::Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j >::Tensor2_Expr ( A &  a)

Member Function Documentation

◆ operator()() [1/2]

template<class A , class T , int Dim0, int Dim1, char i, char j, int N>
T& FTensor::Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j >::operator() ( const int  N1,
const int  N2 
)

Definition at line 217 of file Tensor2_Expr.hpp.

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

◆ operator()() [2/2]

template<class A , class T , int Dim0, int Dim1, char i, char j, int N>
T FTensor::Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j >::operator() ( const int  N1,
const int  N2 
) const

Definition at line 218 of file Tensor2_Expr.hpp.

218 { return iter(N, N1, N2); }

◆ operator=() [1/2]

template<class A , class T , int Dim0, int Dim1, char i, char j, int N>
template<class B , class U , int Dim1_0, int Dim1_1, char i_1, char j_1>
auto& FTensor::Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j >::operator= ( const Tensor2_Expr< B, U, Dim1_0, Dim1_1, i_1, j_1 > &  rhs)

Definition at line 225 of file Tensor2_Expr.hpp.

226  {
227  for(int ii = 0; ii < Dim0; ++ii)
228  for(int jj = 0; jj < Dim1; ++jj)
229  {
230  iter(ii, jj) = permute(*this, rhs, ii, jj);
231  }
232  return *this;
233  }
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, char i, char j, int N>
auto& FTensor::Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j >::operator= ( const Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j > &  result)

Definition at line 235 of file Tensor2_Expr.hpp.

237  {
238  return operator=<Dg_number_rhs_0<A, T, N>, T>(result);
239  }
const double T

Member Data Documentation

◆ iter

template<class A , class T , int Dim0, int Dim1, char i, char j, int N>
A& FTensor::Tensor2_Expr< Dg_number_rhs_0< A, T, N >, T, Dim0, Dim1, i, j >::iter
private

Definition at line 213 of file Tensor2_Expr.hpp.


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