Grid 0.7.0
Tensor_arith_sub.h File Reference

Go to the source code of this file.

Functions

 NAMESPACE_BEGIN (Grid)
template<class vtype, class ltype, class rtype>
accelerator_inline void sub (iScalar< vtype > *__restrict__ ret, const iScalar< ltype > *__restrict__ lhs, const iScalar< rtype > *__restrict__ rhs)
template<class vtype, class ltype, class rtype, int N>
accelerator_inline void sub (iVector< vtype, N > *__restrict__ ret, const iVector< ltype, N > *__restrict__ lhs, const iVector< rtype, N > *__restrict__ rhs)
template<class vtype, class ltype, class rtype, int N>
accelerator_inline void sub (iMatrix< vtype, N > *__restrict__ ret, const iMatrix< ltype, N > *__restrict__ lhs, const iMatrix< rtype, N > *__restrict__ rhs)
template<class vtype, class ltype, class rtype, int N>
accelerator_inline void sub (iMatrix< vtype, N > *__restrict__ ret, const iScalar< ltype > *__restrict__ lhs, const iMatrix< rtype, N > *__restrict__ rhs)
template<class vtype, class ltype, class rtype, int N>
accelerator_inline void sub (iMatrix< vtype, N > *__restrict__ ret, const iMatrix< ltype, N > *__restrict__ lhs, const iScalar< rtype > *__restrict__ rhs)
template<class ltype, class rtype>
accelerator_inline auto operator- (const iScalar< ltype > &lhs, const iScalar< rtype > &rhs) -> iScalar< decltype(lhs._internal - rhs._internal)>
template<class ltype, class rtype, int N>
accelerator_inline auto operator- (const iVector< ltype, N > &lhs, const iVector< rtype, N > &rhs) -> iVector< decltype(lhs._internal[0]-rhs._internal[0]), N >
template<class ltype, class rtype, int N>
accelerator_inline auto operator- (const iMatrix< ltype, N > &lhs, const iMatrix< rtype, N > &rhs) -> iMatrix< decltype(lhs._internal[0][0]-rhs._internal[0][0]), N >
template<class ltype, class rtype, int N>
accelerator_inline auto operator- (const iScalar< ltype > &lhs, const iMatrix< rtype, N > &rhs) -> iMatrix< decltype(lhs._internal-rhs._internal[0][0]), N >
template<class ltype, class rtype, int N>
accelerator_inline auto operator- (const iMatrix< ltype, N > &lhs, const iScalar< rtype > &rhs) -> iMatrix< decltype(lhs._internal[0][0]-rhs._internal), N >
 NAMESPACE_END (Grid)

Function Documentation

◆ NAMESPACE_BEGIN()

NAMESPACE_BEGIN ( Grid )

◆ sub() [1/5]

template<class vtype, class ltype, class rtype>
accelerator_inline void sub ( iScalar< vtype > *__restrict__ ret,
const iScalar< ltype > *__restrict__ lhs,
const iScalar< rtype > *__restrict__ rhs )

◆ sub() [2/5]

template<class vtype, class ltype, class rtype, int N>
accelerator_inline void sub ( iVector< vtype, N > *__restrict__ ret,
const iVector< ltype, N > *__restrict__ lhs,
const iVector< rtype, N > *__restrict__ rhs )

Definition at line 51 of file Tensor_arith_sub.h.

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

◆ sub() [3/5]

template<class vtype, class ltype, class rtype, int N>
accelerator_inline void sub ( iMatrix< vtype, N > *__restrict__ ret,
const iMatrix< ltype, N > *__restrict__ lhs,
const iMatrix< rtype, N > *__restrict__ rhs )

Definition at line 60 of file Tensor_arith_sub.h.

References iMatrix< vtype, N >::_internal, accelerator_inline, and sub().

◆ sub() [4/5]

template<class vtype, class ltype, class rtype, int N>
accelerator_inline void sub ( iMatrix< vtype, N > *__restrict__ ret,
const iScalar< ltype > *__restrict__ lhs,
const iMatrix< rtype, N > *__restrict__ rhs )

◆ sub() [5/5]

template<class vtype, class ltype, class rtype, int N>
accelerator_inline void sub ( iMatrix< vtype, N > *__restrict__ ret,
const iMatrix< ltype, N > *__restrict__ lhs,
const iScalar< rtype > *__restrict__ rhs )

◆ operator-() [1/5]

template<class ltype, class rtype>
accelerator_inline auto operator- ( const iScalar< ltype > & lhs,
const iScalar< rtype > & rhs ) -> iScalar< decltype(lhs._internal - rhs._internal)>

Definition at line 100 of file Tensor_arith_sub.h.

References sub().

◆ operator-() [2/5]

template<class ltype, class rtype, int N>
accelerator_inline auto operator- ( const iVector< ltype, N > & lhs,
const iVector< rtype, N > & rhs ) -> iVector< decltype(lhs._internal[0]-rhs._internal[0]), N >

Definition at line 108 of file Tensor_arith_sub.h.

References accelerator_inline, and sub().

◆ operator-() [3/5]

template<class ltype, class rtype, int N>
accelerator_inline auto operator- ( const iMatrix< ltype, N > & lhs,
const iMatrix< rtype, N > & rhs ) -> iMatrix< decltype(lhs._internal[0][0]-rhs._internal[0][0]), N >

Definition at line 116 of file Tensor_arith_sub.h.

References accelerator_inline, and sub().

◆ operator-() [4/5]

template<class ltype, class rtype, int N>
accelerator_inline auto operator- ( const iScalar< ltype > & lhs,
const iMatrix< rtype, N > & rhs ) -> iMatrix< decltype(lhs._internal-rhs._internal[0][0]), N >

Definition at line 124 of file Tensor_arith_sub.h.

References accelerator_inline, and sub().

◆ operator-() [5/5]

template<class ltype, class rtype, int N>
accelerator_inline auto operator- ( const iMatrix< ltype, N > & lhs,
const iScalar< rtype > & rhs ) -> iMatrix< decltype(lhs._internal[0][0]-rhs._internal), N >

Definition at line 132 of file Tensor_arith_sub.h.

References accelerator_inline, and sub().

◆ NAMESPACE_END()

NAMESPACE_END ( Grid )