v0.8.13
Public Member Functions | List of all members
FTensor::Tensor3< PackPtr< T *, I >, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 > Class Template Reference

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

Inheritance diagram for FTensor::Tensor3< PackPtr< T *, I >, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >:
[legend]
Collaboration diagram for FTensor::Tensor3< PackPtr< T *, I >, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >:
[legend]

Public Member Functions

 Tensor3 ()
 
 Tensor3 (T *d000, T *d001, T *d010, T *d011, T *d100, T *d101, T *d110, T *d111)
 
 Tensor3 (T *d000, T *d001, T *d002, T *d010, T *d011, T *d012, T *d020, T *d021, T *d022, T *d100, T *d101, T *d102, T *d110, T *d111, T *d112, T *d120, T *d121, T *d122, T *d200, T *d201, T *d202, T *d210, T *d211, T *d212, T *d220, T *d221, T *d222)
 
 Tensor3 (T *d000, T *d001, T *d002, T *d003, T *d010, T *d011, T *d012, T *d013, T *d020, T *d021, T *d022, T *d023, T *d030, T *d031, T *d032, T *d033, T *d100, T *d101, T *d102, T *d103, T *d110, T *d111, T *d112, T *d113, T *d120, T *d121, T *d122, T *d123, T *d130, T *d131, T *d132, T *d133, T *d200, T *d201, T *d202, T *d203, T *d210, T *d211, T *d212, T *d213, T *d220, T *d221, T *d222, T *d223, T *d230, T *d231, T *d232, T *d233, T *d300, T *d301, T *d302, T *d303, T *d310, T *d311, T *d312, T *d313, T *d320, T *d321, T *d322, T *d323, T *d330, T *d331, T *d332, T *d333)
 
template<int Current_Dim0, int Current_Dim1, int Current_Dim2>
void increment (const Number< Current_Dim0 > &, const Number< Current_Dim1 > &, const Number< Current_Dim2 > &) const
 
const Tensor3operator++ () const
 
- Public Member Functions inherited from FTensor::Tensor3< T *, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >
 Tensor3 ()
 
 Tensor3 (T *d000, T *d001, T *d010, T *d011, T *d100, T *d101, T *d110, T *d111, const int i=1)
 
 Tensor3 (T *d000, T *d001, T *d002, T *d010, T *d011, T *d012, T *d020, T *d021, T *d022, T *d100, T *d101, T *d102, T *d110, T *d111, T *d112, T *d120, T *d121, T *d122, T *d200, T *d201, T *d202, T *d210, T *d211, T *d212, T *d220, T *d221, T *d222, const int i=1)
 
 Tensor3 (T *d000, T *d001, T *d002, T *d003, T *d010, T *d011, T *d012, T *d013, T *d020, T *d021, T *d022, T *d023, T *d030, T *d031, T *d032, T *d033, T *d100, T *d101, T *d102, T *d103, T *d110, T *d111, T *d112, T *d113, T *d120, T *d121, T *d122, T *d123, T *d130, T *d131, T *d132, T *d133, T *d200, T *d201, T *d202, T *d203, T *d210, T *d211, T *d212, T *d213, T *d220, T *d221, T *d222, T *d223, T *d230, T *d231, T *d232, T *d233, T *d300, T *d301, T *d302, T *d303, T *d310, T *d311, T *d312, T *d313, T *d320, T *d321, T *d322, T *d323, T *d330, T *d331, T *d332, T *d333, const int i=1)
 
Toperator() (const int N1, const int N2, const int N3)
 
T operator() (const int N1, const int N2, const int N3) const
 
template<char i, char j, char k, int Dim0, int Dim1, int Dim2>
Tensor3_Expr< Tensor3< T *, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >, T, Dim0, Dim1, Dim2, i, j, k > operator() (const Index< i, Dim0 >, const Index< j, Dim1 >, const Index< k, Dim2 >)
 
template<char i, char j, char k, int Dim0, int Dim1, int Dim2>
Tensor3_Expr< const Tensor3< T *, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >, T, Dim0, Dim1, Dim2, i, j, k > operator() (const Index< i, Dim0 >, const Index< j, Dim1 >, const Index< k, Dim2 >) const
 
template<int Current_Dim0, int Current_Dim1, int Current_Dim2>
void increment (const Number< Current_Dim0 > &, const Number< Current_Dim1 > &, const Number< Current_Dim2 > &) const
 
const Tensor3operator++ () const
 

Additional Inherited Members

- Protected Attributes inherited from FTensor::Tensor3< T *, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >
T *restrict data [Tensor_Dim1][Tensor_Dim1][Tensor_Dim2]
 

Detailed Description

template<class T, int Tensor_Dim0, int Tensor_Dim1, int Tensor_Dim2, int I>
class FTensor::Tensor3< PackPtr< T *, I >, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >

Definition at line 195 of file Tensor3_pointer.hpp.

Constructor & Destructor Documentation

◆ Tensor3() [1/4]

template<class T , int Tensor_Dim0, int Tensor_Dim1, int Tensor_Dim2, int I>
FTensor::Tensor3< PackPtr< T *, I >, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >::Tensor3 ( )

Definition at line 199 of file Tensor3_pointer.hpp.

199 {}

◆ Tensor3() [2/4]

template<class T , int Tensor_Dim0, int Tensor_Dim1, int Tensor_Dim2, int I>
FTensor::Tensor3< PackPtr< T *, I >, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >::Tensor3 ( T d000,
T d001,
T d010,
T d011,
T d100,
T d101,
T d110,
T d111 
)

Definition at line 202 of file Tensor3_pointer.hpp.

204  : Tensor3<T *, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2>(
205  d000, d001, d010, d011, d100, d101, d110, d111) {}

◆ Tensor3() [3/4]

template<class T , int Tensor_Dim0, int Tensor_Dim1, int Tensor_Dim2, int I>
FTensor::Tensor3< PackPtr< T *, I >, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >::Tensor3 ( T d000,
T d001,
T d002,
T d010,
T d011,
T d012,
T d020,
T d021,
T d022,
T d100,
T d101,
T d102,
T d110,
T d111,
T d112,
T d120,
T d121,
T d122,
T d200,
T d201,
T d202,
T d210,
T d211,
T d212,
T d220,
T d221,
T d222 
)

Definition at line 208 of file Tensor3_pointer.hpp.

212  : Tensor3<T *, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2>(
213  d000, d001, d002, d010, d011, d012, d020, d021, d022, d100,
214  d101, d102, d110, d111, d112, d120, d121, d122, d200, d201, d202,
215  d210, d211, d212, d220, d221, d222) {}

◆ Tensor3() [4/4]

template<class T , int Tensor_Dim0, int Tensor_Dim1, int Tensor_Dim2, int I>
FTensor::Tensor3< PackPtr< T *, I >, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >::Tensor3 ( T d000,
T d001,
T d002,
T d003,
T d010,
T d011,
T d012,
T d013,
T d020,
T d021,
T d022,
T d023,
T d030,
T d031,
T d032,
T d033,
T d100,
T d101,
T d102,
T d103,
T d110,
T d111,
T d112,
T d113,
T d120,
T d121,
T d122,
T d123,
T d130,
T d131,
T d132,
T d133,
T d200,
T d201,
T d202,
T d203,
T d210,
T d211,
T d212,
T d213,
T d220,
T d221,
T d222,
T d223,
T d230,
T d231,
T d232,
T d233,
T d300,
T d301,
T d302,
T d303,
T d310,
T d311,
T d312,
T d313,
T d320,
T d321,
T d322,
T d323,
T d330,
T d331,
T d332,
T d333 
)

Definition at line 218 of file Tensor3_pointer.hpp.

230  : Tensor3<T *, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2>(
231 
232  d000, d001, d002, d003, d010, d011, d012, d013, d020, d021,
233  d022, d023, d030, d031, d032, d033,
234 
235  d100, d101, d102, d103, d110, d111, d112, d113, d120, d121, d122,
236  d123, d130, d131, d132, d133,
237 
238  d200, d201, d202, d203, d210, d211, d212, d213, d220, d221, d222,
239  d223, d230, d231, d232, d233,
240 
241  d300, d301, d302, d303, d310, d311, d312, d313, d320, d321, d322,
242  d323, d330, d331, d332, d333
243 
244  ) {}

Member Function Documentation

◆ increment()

template<class T , int Tensor_Dim0, int Tensor_Dim1, int Tensor_Dim2, int I>
template<int Current_Dim0, int Current_Dim1, int Current_Dim2>
void FTensor::Tensor3< PackPtr< T *, I >, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >::increment ( const Number< Current_Dim0 > &  ,
const Number< Current_Dim1 > &  ,
const Number< Current_Dim2 > &   
) const

Definition at line 250 of file Tensor3_pointer.hpp.

252  {
253  Tensor3<T *, Tensor_Dim0, Tensor_Dim1,
254  Tensor_Dim2>::data[Current_Dim0 - 1][Current_Dim1 - 1]
255  [Current_Dim2 - 1] += I;
256  }
T *restrict data[Tensor_Dim1][Tensor_Dim1][Tensor_Dim2]

◆ operator++()

template<class T , int Tensor_Dim0, int Tensor_Dim1, int Tensor_Dim2, int I>
const Tensor3& FTensor::Tensor3< PackPtr< T *, I >, Tensor_Dim0, Tensor_Dim1, Tensor_Dim2 >::operator++ ( ) const

Definition at line 258 of file Tensor3_pointer.hpp.

258  {
259  T3_increment(*this, Number<Tensor_Dim0>(), Number<Tensor_Dim1>(),
260  Number<Tensor_Dim2>());
261  return *this;
262  }
void T3_increment(const Tensor3< T, Dim0, Dim1, Dim2 > &iter, const Number< Current_Dim0 > &, const Number< Current_Dim1 > &, const Number< Current_Dim2 > &)

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