v0.14.0
Public Member Functions | Private Attributes | List of all members
FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > Class Template Reference

#include <src/ftensor/src/FTensor/Tensor1/Tensor1_Expr.hpp>

Collaboration diagram for FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >:
[legend]

Public Member Functions

 Tensor1_Expr (Tensor1< A, Tensor_Dim > &a)
 
T & operator() (const int N)
 
operator() (const int N) const
 
template<class B , class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator= (const Tensor1_Expr< B, U, Dim, i > &result)
 
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator= (const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > &result)
 
template<class B , class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator+= (const Tensor1_Expr< B, U, Dim, i > &result)
 
template<class B , class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator-= (const Tensor1_Expr< B, U, Dim, i > &result)
 
template<class B >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator= (const B &d)
 
template<class B >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator+= (const B &d)
 
template<class B >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator-= (const B &d)
 
template<class B >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator*= (const B &d)
 
template<class B >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator/= (const B &d)
 
template<class B , class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator<<= (const Tensor1_Expr< B, U, Dim, i > &result)
 
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator<<= (const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > &result)
 
template<class B >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator<<= (const B &d)
 
template<class B , class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator>>= (const Tensor1_Expr< B, U, Dim, i > &result)
 
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator>>= (const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > &result)
 
template<class B >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator>>= (const B &d)
 
template<class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator= (const U &u)
 
template<class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator+= (const U &u)
 
template<class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator-= (const U &u)
 
template<class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator*= (const U &u)
 
template<class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & operator/= (const U &u)
 

Private Attributes

Tensor1< A, Tensor_Dim > & iter
 

Detailed Description

template<class A, class T, int Tensor_Dim, int Dim, char i>
class FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >

Definition at line 37 of file Tensor1_Expr.hpp.

Constructor & Destructor Documentation

◆ Tensor1_Expr()

template<class A , class T , int Tensor_Dim, int Dim, char i>
FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::Tensor1_Expr ( Tensor1< A, Tensor_Dim > &  a)
inline

Definition at line 42 of file Tensor1_Expr.hpp.

42 : iter(a) {}

Member Function Documentation

◆ operator()() [1/2]

template<class A , class T , int Tensor_Dim, int Dim, char i>
T& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator() ( const int  N)
inline

Definition at line 44 of file Tensor1_Expr.hpp.

44 { return iter(N); }

◆ operator()() [2/2]

template<class A , class T , int Tensor_Dim, int Dim, char i>
T FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator() ( const int  N) const
inline

Definition at line 45 of file Tensor1_Expr.hpp.

45 { return iter(N); }

◆ operator*=() [1/2]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator*= ( const B &  d)

◆ operator*=() [2/2]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class U >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator*= ( const U &  u)

Definition at line 256 of file Tensor1_Expr_equals.hpp.

257  {
258  T1_times_equals_generic(iter, u, Number<Dim>());
259  return *this;
260  }

◆ operator+=() [1/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator+= ( const B &  d)

◆ operator+=() [2/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B , class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator+= ( const Tensor1_Expr< B, U, Dim, i > &  result)

Definition at line 126 of file Tensor1_Expr_equals.hpp.

127  {
128  T1_plus_equals_T1(iter, result, Number<Dim>());
129  return *this;
130  }

◆ operator+=() [3/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class U >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator+= ( const U &  u)

Definition at line 206 of file Tensor1_Expr_equals.hpp.

207  {
208  T1_plus_equals_generic(iter, u, Number<Dim>());
209  return *this;
210  }

◆ operator-=() [1/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator-= ( const B &  d)

◆ operator-=() [2/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B , class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator-= ( const Tensor1_Expr< B, U, Dim, i > &  result)

Definition at line 153 of file Tensor1_Expr_equals.hpp.

154  {
155  T1_minus_equals_T1(iter, result, Number<Dim>());
156  return *this;
157  }

◆ operator-=() [3/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class U >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator-= ( const U &  u)

Definition at line 231 of file Tensor1_Expr_equals.hpp.

232  {
233  T1_minus_equals_generic(iter, u, Number<Dim>());
234  return *this;
235  }

◆ operator/=() [1/2]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator/= ( const B &  d)

◆ operator/=() [2/2]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class U >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator/= ( const U &  u)

Definition at line 281 of file Tensor1_Expr_equals.hpp.

282  {
283  T1_divide_equals_generic(iter, u, Number<Dim>());
284  return *this;
285  }

◆ operator<<=() [1/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator<<= ( const B &  d)
inline

◆ operator<<=() [2/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B , class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator<<= ( const Tensor1_Expr< B, U, Dim, i > &  result)
inline

Assignments operators for ADOL-C

Definition at line 70 of file Tensor1_Expr_equals.hpp.

71  {
72  T1_equals_addolc_left_T1(iter, result, Number<Dim>());
73  return *this;
74  }

◆ operator<<=() [3/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator<<= ( const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > &  result)

◆ operator=() [1/4]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator= ( const B &  d)

◆ operator=() [2/4]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B , class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator= ( const Tensor1_Expr< B, U, Dim, i > &  result)

Definition at line 31 of file Tensor1_Expr_equals.hpp.

32  {
33  T1_equals_T1(iter, result, Number<Dim>());
34  return *this;
35  }

◆ operator=() [3/4]

template<class A , class T , int Tensor_Dim, int Dim, char i>
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator= ( const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > &  result)

Definition at line 42 of file Tensor1_Expr_equals.hpp.

43  {
44  return operator=<Tensor1<A, Tensor_Dim>, T>(result);
45  }

◆ operator=() [4/4]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class U >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator= ( const U &  u)

Definition at line 182 of file Tensor1_Expr_equals.hpp.

183  {
184  T1_equals_generic(iter, u, Number<Dim>());
185  return *this;
186  }

◆ operator>>=() [1/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B >
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator>>= ( const B &  d)
inline

◆ operator>>=() [2/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
template<class B , class U >
const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > & FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator>>= ( const Tensor1_Expr< B, U, Dim, i > &  result)
inline

Definition at line 99 of file Tensor1_Expr_equals.hpp.

100  {
101  T1_equals_addolc_right_T1(iter, result, Number<Dim>());
102  return *this;
103  }

◆ operator>>=() [3/3]

template<class A , class T , int Tensor_Dim, int Dim, char i>
const Tensor1_Expr<Tensor1<A, Tensor_Dim>, T, Dim, i>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::operator>>= ( const Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i > &  result)

Member Data Documentation

◆ iter

template<class A , class T , int Tensor_Dim, int Dim, char i>
Tensor1<A, Tensor_Dim>& FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::iter
private

Definition at line 39 of file Tensor1_Expr.hpp.


The documentation for this class was generated from the following files:
FTensor::T1_equals_generic
void T1_equals_generic(A &iter, const U &u, const Number< Current_Dim > &)
Definition: Tensor1_Expr_equals.hpp:167
FTensor::Tensor1_Expr< Tensor1< A, Tensor_Dim >, T, Dim, i >::iter
Tensor1< A, Tensor_Dim > & iter
Definition: Tensor1_Expr.hpp:39
FTensor::T1_equals_addolc_right_T1
void T1_equals_addolc_right_T1(A &iter, Tensor1_Expr< B, U, Dim, i > result, const Number< Current_Dim > &)
Definition: Tensor1_Expr_equals.hpp:80
FTensor::T1_equals_T1
void T1_equals_T1(A &iter, const Tensor1_Expr< B, U, Dim, i > result, const Number< Current_Dim > &)
Definition: Tensor1_Expr_equals.hpp:13
FTensor::T1_minus_equals_T1
void T1_minus_equals_T1(A &iter, const Tensor1_Expr< B, U, Dim, i > result, const Number< Current_Dim > &)
Definition: Tensor1_Expr_equals.hpp:135
FTensor::T1_minus_equals_generic
void T1_minus_equals_generic(A &iter, const U &u, const Number< Current_Dim > &)
Definition: Tensor1_Expr_equals.hpp:216
FTensor::T1_plus_equals_T1
void T1_plus_equals_T1(A &iter, const Tensor1_Expr< B, U, Dim, i > result, const Number< Current_Dim > &)
Definition: Tensor1_Expr_equals.hpp:108
a
constexpr double a
Definition: approx_sphere.cpp:30
FTensor::T1_times_equals_generic
void T1_times_equals_generic(A &iter, const U &u, const Number< Current_Dim > &)
Definition: Tensor1_Expr_equals.hpp:241
FTensor::T1_plus_equals_generic
void T1_plus_equals_generic(A &iter, const U &u, const Number< Current_Dim > &)
Definition: Tensor1_Expr_equals.hpp:191
N
const int N
Definition: speed_test.cpp:3
FTensor::T1_equals_addolc_left_T1
void T1_equals_addolc_left_T1(A &iter, const Tensor1_Expr< B, U, Dim, i > result, const Number< Current_Dim > &)
Definition: Tensor1_Expr_equals.hpp:51
Tensor1
Definition: single.cpp:40
FTensor::T1_divide_equals_generic
void T1_divide_equals_generic(A &iter, const U &u, const Number< Current_Dim > &)
Definition: Tensor1_Expr_equals.hpp:266