|
TBCI Numerical high perf. C++ Library
2.8.0
|
Note (KG, 981214): We don't handle rank == 0. More...
#include <tensor.h>


Public Types | |
| typedef T | value_type |
| typedef T | element_type |
| typedef T aligned_value_type | TALIGN (MIN_ALIGN2) |
Public Member Functions | |
| CTensor () | |
| CTensor (const unsigned dim_rank) | |
| CTensor (const Index &ix) | |
| CTensor (const T &value, const Index &ix) | |
| CTensor (const CTensor &ct) | |
| CTensor (vararg va,...) | |
| CTensor (const T, vararg va,...) | |
| ~CTensor () | |
| unsigned long | calc_offs (const Index &ix) const |
| Index | calc_indx (const unsigned long i) const |
| T & | operator() (const Index &ix) |
| tbci_traits< T >::const_refval_type | operator() (const Index &ix) const |
| T & | operator() (vararg va,...) |
| tbci_traits< T >::const_refval_type | operator() (vararg va,...) const |
| T & | operator() (const unsigned long i) |
| tbci_traits< T >::const_refval_type | operator() (const unsigned long i) const |
| const T & | getcref (vararg va,...) const |
| T & | get_lin_idx (const unsigned long i) |
| tbci_traits< T >::const_refval_type | get_lin_idx (const unsigned long i) const |
| unsigned | lin_read (vararg va,...) |
| CTensor< T > & | transpose (const unsigned i, const unsigned j) |
| CTensor< T > & | fill (const T &value) |
| CTensor< T > & | operator= (const CTensor< T > &ct) |
| CTensor< T > & | operator= (const T &value) |
| CTensor< T > & | resize (const Index &ix) |
| CTensor< T > & | resize (const T &val, const Index &ix) |
| CTensor< T > & | resize (const CTensor< T > &ct) |
| T | max (unsigned long &pos) const |
| T | min (unsigned long &pos) const |
| T | max () const |
| T | min () const |
| T | trace () const |
| bool | operator== (const CTensor< T > &ct) |
| bool | operator!= (const CTensor< T > &ct) |
| unsigned long | lin_size (void) const |
| Index | index_size (void) const |
| unsigned | rank_size (void) const |
Protected Member Functions | |
| unsigned long | calcsize (void) |
| unsigned | calclayout () |
Protected Attributes | |
| Vector< T > | data |
| unsigned | rank |
| unsigned long | noel |
| Index | shape |
| Index | layout |
Friends | |
| STD__ ostream & | operator<< FGD (STD__ ostream &, const CTensor< T > &) |
| STD__ istream & | operator>> FGD (STD__ istream &, CTensor< T > &) |
Note (KG, 981214): We don't handle rank == 0.
container class without arithmetics
| typedef T aligned_value_type CTensor< T >::TALIGN(MIN_ALIGN2) |
Definition at line 84 of file tensor.h.
References CTensor< T >::rank.
Definition at line 271 of file tensor.h.
References CTensor< T >::calclayout(), CTensor< T >::calcsize(), CTensor< T >::data, i, CTensor< T >::noel, CTensor< T >::rank, and CTensor< T >::shape.
Definition at line 257 of file tensor.h.
References CTensor< T >::calclayout(), CTensor< T >::calcsize(), CTensor< T >::data, i, CTensor< T >::noel, and CTensor< T >::shape.
Definition at line 304 of file tensor.h.
References BCHK, i, index, large, REGISTER, and TVector< T >::size().
Referenced by Tensor< T >::cntrmul(), Tensor< T >::contract(), ctrmul(), metrmul(), and CTensor< T >::operator()().
Definition at line 67 of file tensor.h.
References fac, i, CTensor< T >::layout, CTensor< T >::rank, REGISTER, and CTensor< T >::shape.
Referenced by CTensor< T >::CTensor(), and CTensor< T >::resize().
Definition at line 60 of file tensor.h.
References i, CTensor< T >::noel, CTensor< T >::rank, REGISTER, and CTensor< T >::shape.
Referenced by CTensor< T >::CTensor(), and CTensor< T >::resize().
Definition at line 140 of file tensor.h.
References CTensor< T >::data.
Referenced by F_TMatrix< T >::operator=(), and CTensor< T >::operator=().
Definition at line 207 of file tensor.h.
References CTensor< T >::shape.
Definition at line 205 of file tensor.h.
References CTensor< T >::noel.
Definition at line 177 of file tensor.h.
References CTensor< T >::data.
Definition at line 180 of file tensor.h.
References CTensor< T >::data.
Definition at line 178 of file tensor.h.
References CTensor< T >::data.
Definition at line 181 of file tensor.h.
References CTensor< T >::data.
Definition at line 201 of file tensor.h.
References CTensor< T >::operator==().
Definition at line 101 of file tensor.h.
References CTensor< T >::calc_offs(), and CTensor< T >::data.
|
inline |
Definition at line 104 of file tensor.h.
References CTensor< T >::calc_offs(), and CTensor< T >::data.
Definition at line 110 of file tensor.h.
References BCHKNR, CTensor< T >::data, and CTensor< T >::noel.
|
inline |
Definition at line 114 of file tensor.h.
References BCHKNR, c, CTensor< T >::data, and CTensor< T >::noel.
Definition at line 144 of file tensor.h.
References CTensor< T >::data, CTensor< T >::layout, CTensor< T >::noel, CTensor< T >::rank, BVector< T >::resize(), and CTensor< T >::shape.
Definition at line 151 of file tensor.h.
References CTensor< T >::fill().
Definition at line 186 of file tensor.h.
References CTensor< T >::data, CTensor< T >::layout, Index::next_idx(), CTensor< T >::rank, and CTensor< T >::shape.
Referenced by CTensor< T >::operator!=().
Definition at line 209 of file tensor.h.
References CTensor< T >::rank.
Definition at line 155 of file tensor.h.
References CTensor< T >::calclayout(), CTensor< T >::calcsize(), CTensor< T >::data, CTensor< T >::layout, CTensor< T >::noel, CTensor< T >::rank, BVector< T >::resize(), CTensor< T >::shape, and TVector< T >::size().
Referenced by Tensor< T >::Tensor().
Definition at line 162 of file tensor.h.
References CTensor< T >::calclayout(), CTensor< T >::calcsize(), CTensor< T >::data, CTensor< T >::layout, CTensor< T >::noel, CTensor< T >::rank, BVector< T >::resize(), CTensor< T >::shape, and TVector< T >::size().
Definition at line 169 of file tensor.h.
References CTensor< T >::data, CTensor< T >::layout, CTensor< T >::noel, CTensor< T >::rank, BVector< T >::resize(), and CTensor< T >::shape.
|
inline |
Definition at line 131 of file tensor.h.
References BCHK, CTensor< T >::layout, CTensor< T >::rank, CTensor< T >::shape, and TBCI::SWAP().
|
friend |
Definition at line 55 of file tensor.h.
Referenced by Tensor< T >::cntrmul(), Tensor< T >::contract(), CTensor< T >::CTensor(), ctrmul(), CTensor< T >::fill(), CTensor< T >::max(), metrmul(), CTensor< T >::min(), Tensor< T >::mult(), CTensor< T >::operator()(), Tensor< T >::operator*(), Tensor< T >::operator*=(), Tensor< T >::operator+(), Tensor< T >::operator+=(), Tensor< T >::operator-(), Tensor< T >::operator-=(), Tensor< T >::operator/(), Tensor< T >::operator/=(), CTensor< T >::operator=(), CTensor< T >::operator==(), and CTensor< T >::resize().
Definition at line 59 of file tensor.h.
Referenced by CTensor< T >::calclayout(), Tensor< T >::operator+(), Tensor< T >::operator+=(), Tensor< T >::operator-(), Tensor< T >::operator-=(), CTensor< T >::operator=(), CTensor< T >::operator==(), CTensor< T >::resize(), and CTensor< T >::transpose().
Definition at line 57 of file tensor.h.
Referenced by CTensor< T >::calcsize(), CTensor< T >::CTensor(), CTensor< T >::lin_size(), CTensor< T >::operator()(), Tensor< T >::operator*(), Tensor< T >::operator+(), Tensor< T >::operator+=(), Tensor< T >::operator-(), Tensor< T >::operator-=(), Tensor< T >::operator/(), CTensor< T >::operator=(), operator>>(), and CTensor< T >::resize().
Definition at line 56 of file tensor.h.
Referenced by CTensor< T >::calclayout(), CTensor< T >::calcsize(), Tensor< T >::cntrmul(), CTensor< T >::CTensor(), ctrmul(), dctmul(), Tensor< T >::drctmul(), metrmul(), CTensor< T >::operator=(), CTensor< T >::operator==(), operator>>(), CTensor< T >::rank_size(), CTensor< T >::resize(), and CTensor< T >::transpose().
Definition at line 58 of file tensor.h.
Referenced by CTensor< T >::calclayout(), CTensor< T >::calcsize(), Tensor< T >::cntrmul(), CTensor< T >::CTensor(), ctrmul(), dctmul(), Tensor< T >::drctmul(), CTensor< T >::index_size(), metrmul(), Tensor< T >::operator*(), Tensor< T >::operator+(), Tensor< T >::operator+=(), Tensor< T >::operator-(), Tensor< T >::operator-=(), Tensor< T >::operator/(), CTensor< T >::operator=(), CTensor< T >::operator==(), CTensor< T >::resize(), and CTensor< T >::transpose().
1.8.5