Grid 0.7.0
TensorIndexRecursion< 0 > Class Reference

#include <Tensor_index.h>

Static Public Member Functions

template<class vtype>
static accelerator_inline int indexRank (const iScalar< vtype > tmp)
template<class vtype, int N>
static accelerator_inline int indexRank (const iVector< vtype, N > tmp)
template<class vtype, int N>
static accelerator_inline int indexRank (const iMatrix< vtype, N > tmp)
template<class vtype>
static accelerator_inline int isScalar (const iScalar< vtype > tmp)
template<class vtype, int N>
static accelerator_inline int isScalar (const iVector< vtype, N > tmp)
template<class vtype, int N>
static accelerator_inline int isScalar (const iMatrix< vtype, N > tmp)
template<class vtype>
static accelerator_inline int isVector (const iScalar< vtype > tmp)
template<class vtype, int N>
static accelerator_inline int isVector (const iVector< vtype, N > tmp)
template<class vtype, int N>
static accelerator_inline int isVector (const iMatrix< vtype, N > tmp)
template<class vtype>
static accelerator_inline int isMatrix (const iScalar< vtype > tmp)
template<class vtype, int N>
static accelerator_inline int isMatrix (const iVector< vtype, N > tmp)
template<class vtype, int N>
static accelerator_inline int isMatrix (const iMatrix< vtype, N > tmp)
template<class vtype>
static accelerator_inline auto traceIndex (const iScalar< vtype > arg) -> iScalar< RemoveCRV(arg._internal)>
template<class vtype, int N>
static accelerator_inline auto traceIndex (const iVector< vtype, N > arg) -> iScalar< RemoveCRV(arg._internal[0])>
template<class vtype, int N>
static accelerator_inline auto traceIndex (const iMatrix< vtype, N > arg) -> iScalar< RemoveCRV(arg._internal[0][0])>
template<class vtype>
static accelerator_inline auto transposeIndex (const iScalar< vtype > arg) -> iScalar< vtype >
template<class vtype, int N>
static accelerator_inline auto transposeIndex (const iMatrix< vtype, N > arg) -> iMatrix< vtype, N >
template<class vtype, int N>
static accelerator_inline auto peekIndex (const iVector< vtype, N > arg, int ii) -> iScalar< vtype >
template<class vtype, int N>
static accelerator_inline auto peekIndex (const iMatrix< vtype, N > arg, int ii, int jj) -> iScalar< vtype >
template<class vtype, int N>
static accelerator_inline void pokeIndex (iVector< vtype, N > &ret, const iScalar< vtype > &arg, int i)
template<class vtype, int N>
static accelerator_inline void pokeIndex (iMatrix< vtype, N > &ret, const iScalar< vtype > &arg, int i, int j)

Detailed Description

Definition at line 240 of file Tensor_index.h.

Member Function Documentation

◆ indexRank() [1/3]

template<class vtype>
accelerator_inline int TensorIndexRecursion< 0 >::indexRank ( const iScalar< vtype > tmp)
inlinestatic

Definition at line 245 of file Tensor_index.h.

References accelerator_inline.

◆ indexRank() [2/3]

template<class vtype, int N>
accelerator_inline int TensorIndexRecursion< 0 >::indexRank ( const iVector< vtype, N > tmp)
inlinestatic

Definition at line 246 of file Tensor_index.h.

References accelerator_inline.

◆ indexRank() [3/3]

template<class vtype, int N>
accelerator_inline int TensorIndexRecursion< 0 >::indexRank ( const iMatrix< vtype, N > tmp)
inlinestatic

Definition at line 247 of file Tensor_index.h.

References accelerator_inline.

◆ isScalar() [1/3]

template<class vtype>
accelerator_inline int TensorIndexRecursion< 0 >::isScalar ( const iScalar< vtype > tmp)
inlinestatic

Definition at line 249 of file Tensor_index.h.

References accelerator_inline.

◆ isScalar() [2/3]

template<class vtype, int N>
accelerator_inline int TensorIndexRecursion< 0 >::isScalar ( const iVector< vtype, N > tmp)
inlinestatic

Definition at line 250 of file Tensor_index.h.

References accelerator_inline.

◆ isScalar() [3/3]

template<class vtype, int N>
accelerator_inline int TensorIndexRecursion< 0 >::isScalar ( const iMatrix< vtype, N > tmp)
inlinestatic

Definition at line 251 of file Tensor_index.h.

References accelerator_inline.

◆ isVector() [1/3]

template<class vtype>
accelerator_inline int TensorIndexRecursion< 0 >::isVector ( const iScalar< vtype > tmp)
inlinestatic

Definition at line 253 of file Tensor_index.h.

References accelerator_inline.

◆ isVector() [2/3]

template<class vtype, int N>
accelerator_inline int TensorIndexRecursion< 0 >::isVector ( const iVector< vtype, N > tmp)
inlinestatic

Definition at line 254 of file Tensor_index.h.

References accelerator_inline.

◆ isVector() [3/3]

template<class vtype, int N>
accelerator_inline int TensorIndexRecursion< 0 >::isVector ( const iMatrix< vtype, N > tmp)
inlinestatic

Definition at line 255 of file Tensor_index.h.

References accelerator_inline.

◆ isMatrix() [1/3]

template<class vtype>
accelerator_inline int TensorIndexRecursion< 0 >::isMatrix ( const iScalar< vtype > tmp)
inlinestatic

Definition at line 257 of file Tensor_index.h.

References accelerator_inline.

◆ isMatrix() [2/3]

template<class vtype, int N>
accelerator_inline int TensorIndexRecursion< 0 >::isMatrix ( const iVector< vtype, N > tmp)
inlinestatic

Definition at line 258 of file Tensor_index.h.

References accelerator_inline.

◆ isMatrix() [3/3]

template<class vtype, int N>
accelerator_inline int TensorIndexRecursion< 0 >::isMatrix ( const iMatrix< vtype, N > tmp)
inlinestatic

Definition at line 259 of file Tensor_index.h.

References accelerator_inline.

◆ traceIndex() [1/3]

template<class vtype>
accelerator_inline auto TensorIndexRecursion< 0 >::traceIndex ( const iScalar< vtype > arg) -> iScalar< RemoveCRV(arg._internal)>
inlinestatic

Definition at line 265 of file Tensor_index.h.

References iScalar< vtype >::_internal, and RemoveCRV.

◆ traceIndex() [2/3]

template<class vtype, int N>
accelerator_inline auto TensorIndexRecursion< 0 >::traceIndex ( const iVector< vtype, N > arg) -> iScalar< RemoveCRV(arg._internal[0])>
inlinestatic

Definition at line 272 of file Tensor_index.h.

References iScalar< vtype >::_internal, RemoveCRV, and zeroit().

◆ traceIndex() [3/3]

template<class vtype, int N>
accelerator_inline auto TensorIndexRecursion< 0 >::traceIndex ( const iMatrix< vtype, N > arg) -> iScalar< RemoveCRV(arg._internal[0][0])>
inlinestatic

Definition at line 282 of file Tensor_index.h.

References iScalar< vtype >::_internal, RemoveCRV, and zeroit().

◆ transposeIndex() [1/2]

template<class vtype>
accelerator_inline auto TensorIndexRecursion< 0 >::transposeIndex ( const iScalar< vtype > arg) -> iScalar< vtype >
inlinestatic

Definition at line 295 of file Tensor_index.h.

References iScalar< vtype >::_internal.

◆ transposeIndex() [2/2]

template<class vtype, int N>
accelerator_inline auto TensorIndexRecursion< 0 >::transposeIndex ( const iMatrix< vtype, N > arg) -> iMatrix< vtype, N >
inlinestatic

Definition at line 302 of file Tensor_index.h.

References iMatrix< vtype, N >::_internal.

◆ peekIndex() [1/2]

template<class vtype, int N>
accelerator_inline auto TensorIndexRecursion< 0 >::peekIndex ( const iVector< vtype, N > arg,
int ii ) -> iScalar< vtype >
inlinestatic

Definition at line 316 of file Tensor_index.h.

References iScalar< vtype >::_internal.

◆ peekIndex() [2/2]

template<class vtype, int N>
accelerator_inline auto TensorIndexRecursion< 0 >::peekIndex ( const iMatrix< vtype, N > arg,
int ii,
int jj ) -> iScalar< vtype >
inlinestatic

Definition at line 323 of file Tensor_index.h.

References iScalar< vtype >::_internal.

◆ pokeIndex() [1/2]

template<class vtype, int N>
accelerator_inline void TensorIndexRecursion< 0 >::pokeIndex ( iVector< vtype, N > & ret,
const iScalar< vtype > & arg,
int i )
inlinestatic

Definition at line 331 of file Tensor_index.h.

References iScalar< vtype >::_internal, and iVector< vtype, N >::_internal.

◆ pokeIndex() [2/2]

template<class vtype, int N>
accelerator_inline void TensorIndexRecursion< 0 >::pokeIndex ( iMatrix< vtype, N > & ret,
const iScalar< vtype > & arg,
int i,
int j )
inlinestatic

Definition at line 337 of file Tensor_index.h.

References iMatrix< vtype, N >::_internal, and iScalar< vtype >::_internal.


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