Grid 0.7.0
Tensor_arith_scalar.h File Reference

Go to the source code of this file.

Functions

 NAMESPACE_BEGIN (Grid)
template<class l>
accelerator_inline iScalar< l > operator* (const iScalar< l > &lhs, const typename iScalar< l >::scalar_type rhs)
template<class l>
accelerator_inline iScalar< l > operator* (const typename iScalar< l >::scalar_type lhs, const iScalar< l > &rhs)
template<class l, int N>
accelerator_inline iVector< l, N > operator* (const iVector< l, N > &lhs, const typename iScalar< l >::scalar_type rhs)
template<class l, int N>
accelerator_inline iVector< l, N > operator* (const typename iScalar< l >::scalar_type lhs, const iVector< l, N > &rhs)
template<class l, int N>
accelerator_inline iMatrix< l, N > operator* (const iMatrix< l, N > &lhs, const typename iScalar< l >::scalar_type &rhs)
template<class l, int N>
accelerator_inline iMatrix< l, N > operator* (const typename iScalar< l >::scalar_type &lhs, const iMatrix< l, N > &rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator* (const iScalar< l > &lhs, double rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator* (double lhs, const iScalar< l > &rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iVector< l, N > operator* (const iVector< l, N > &lhs, double rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iVector< l, N > operator* (double lhs, const iVector< l, N > &rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator* (const iMatrix< l, N > &lhs, double rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator* (double lhs, const iMatrix< l, N > &rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iScalar< l > operator* (const iScalar< l > &lhs, ComplexD rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iScalar< l > operator* (ComplexD lhs, const iScalar< l > &rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iVector< l, N > operator* (const iVector< l, N > &lhs, ComplexD rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iVector< l, N > operator* (ComplexD lhs, const iVector< l, N > &rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iMatrix< l, N > operator* (const iMatrix< l, N > &lhs, ComplexD rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iMatrix< l, N > operator* (ComplexD lhs, const iMatrix< l, N > &rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iScalar< l > operator* (const iScalar< l > &lhs, Integer rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iScalar< l > operator* (Integer lhs, const iScalar< l > &rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iVector< l, N > operator* (const iVector< l, N > &lhs, Integer rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iVector< l, N > operator* (Integer lhs, const iVector< l, N > &rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iMatrix< l, N > operator* (const iMatrix< l, N > &lhs, Integer rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iMatrix< l, N > operator* (Integer lhs, const iMatrix< l, N > &rhs)
template<class l>
accelerator_inline iScalar< l > operator+ (const iScalar< l > &lhs, const typename iScalar< l >::scalar_type rhs)
template<class l>
accelerator_inline iScalar< l > operator+ (const typename iScalar< l >::scalar_type lhs, const iScalar< l > &rhs)
template<class l, int N>
accelerator_inline iMatrix< l, N > operator+ (const iMatrix< l, N > &lhs, const typename iScalar< l >::scalar_type rhs)
template<class l, int N>
accelerator_inline iMatrix< l, N > operator+ (const typename iScalar< l >::scalar_type lhs, const iMatrix< l, N > &rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator+ (const iScalar< l > &lhs, double rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator+ (double lhs, const iScalar< l > &rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator+ (const iMatrix< l, N > &lhs, double rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator+ (double lhs, const iMatrix< l, N > &rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator+ (const iScalar< l > &lhs, Integer rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator+ (Integer lhs, const iScalar< l > &rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator+ (const iMatrix< l, N > &lhs, Integer rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator+ (Integer lhs, const iMatrix< l, N > &rhs)
template<class l>
accelerator_inline iScalar< l > operator- (const iScalar< l > &lhs, const typename iScalar< l >::scalar_type rhs)
template<class l>
accelerator_inline iScalar< l > operator- (const typename iScalar< l >::scalar_type lhs, const iScalar< l > &rhs)
template<class l, int N>
accelerator_inline iMatrix< l, N > operator- (const iMatrix< l, N > &lhs, const typename iScalar< l >::scalar_type rhs)
template<class l, int N>
accelerator_inline iMatrix< l, N > operator- (const typename iScalar< l >::scalar_type lhs, const iMatrix< l, N > &rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator- (const iScalar< l > &lhs, double rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator- (double lhs, const iScalar< l > &rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator- (const iMatrix< l, N > &lhs, double rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator- (double lhs, const iMatrix< l, N > &rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iScalar< l > operator- (const iScalar< l > &lhs, Integer rhs)
template<class l, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iScalar< l > operator- (Integer lhs, const iScalar< l > &rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iMatrix< l, N > operator- (const iMatrix< l, N > &lhs, Integer rhs)
template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iMatrix< l, N > operator- (Integer lhs, const iMatrix< l, N > &rhs)
 NAMESPACE_END (Grid)

Function Documentation

◆ NAMESPACE_BEGIN()

NAMESPACE_BEGIN ( Grid )

◆ operator*() [1/24]

template<class l>
accelerator_inline iScalar< l > operator* ( const iScalar< l > & lhs,
const typename iScalar< l >::scalar_type rhs )

Definition at line 39 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [2/24]

template<class l>
accelerator_inline iScalar< l > operator* ( const typename iScalar< l >::scalar_type lhs,
const iScalar< l > & rhs )

Definition at line 44 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [3/24]

template<class l, int N>
accelerator_inline iVector< l, N > operator* ( const iVector< l, N > & lhs,
const typename iScalar< l >::scalar_type rhs )

Definition at line 46 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [4/24]

template<class l, int N>
accelerator_inline iVector< l, N > operator* ( const typename iScalar< l >::scalar_type lhs,
const iVector< l, N > & rhs )

Definition at line 51 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [5/24]

template<class l, int N>
accelerator_inline iMatrix< l, N > operator* ( const iMatrix< l, N > & lhs,
const typename iScalar< l >::scalar_type & rhs )

Definition at line 53 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [6/24]

template<class l, int N>
accelerator_inline iMatrix< l, N > operator* ( const typename iScalar< l >::scalar_type & lhs,
const iMatrix< l, N > & rhs )

Definition at line 58 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [7/24]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator* ( const iScalar< l > & lhs,
double rhs )

Definition at line 65 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [8/24]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator* ( double lhs,
const iScalar< l > & rhs )

Definition at line 73 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [9/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iVector< l, N > operator* ( const iVector< l, N > & lhs,
double rhs )

Definition at line 80 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [10/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iVector< l, N > operator* ( double lhs,
const iVector< l, N > & rhs )

Definition at line 88 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [11/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator* ( const iMatrix< l, N > & lhs,
double rhs )

Definition at line 95 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [12/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator* ( double lhs,
const iMatrix< l, N > & rhs )

Definition at line 103 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [13/24]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iScalar< l > operator* ( const iScalar< l > & lhs,
ComplexD rhs )

Definition at line 113 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [14/24]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iScalar< l > operator* ( ComplexD lhs,
const iScalar< l > & rhs )

Definition at line 122 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [15/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iVector< l, N > operator* ( const iVector< l, N > & lhs,
ComplexD rhs )

Definition at line 129 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [16/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iVector< l, N > operator* ( ComplexD lhs,
const iVector< l, N > & rhs )

Definition at line 137 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [17/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iMatrix< l, N > operator* ( const iMatrix< l, N > & lhs,
ComplexD rhs )

Definition at line 144 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [18/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, ComplexD > = 0>
accelerator_inline iMatrix< l, N > operator* ( ComplexD lhs,
const iMatrix< l, N > & rhs )

Definition at line 152 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [19/24]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iScalar< l > operator* ( const iScalar< l > & lhs,
Integer rhs )

Definition at line 162 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [20/24]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iScalar< l > operator* ( Integer lhs,
const iScalar< l > & rhs )

Definition at line 170 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [21/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iVector< l, N > operator* ( const iVector< l, N > & lhs,
Integer rhs )

Definition at line 177 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [22/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iVector< l, N > operator* ( Integer lhs,
const iVector< l, N > & rhs )

Definition at line 185 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [23/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iMatrix< l, N > operator* ( const iMatrix< l, N > & lhs,
Integer rhs )

Definition at line 192 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator*() [24/24]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iMatrix< l, N > operator* ( Integer lhs,
const iMatrix< l, N > & rhs )

Definition at line 200 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [1/12]

template<class l>
accelerator_inline iScalar< l > operator+ ( const iScalar< l > & lhs,
const typename iScalar< l >::scalar_type rhs )

Definition at line 212 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [2/12]

template<class l>
accelerator_inline iScalar< l > operator+ ( const typename iScalar< l >::scalar_type lhs,
const iScalar< l > & rhs )

Definition at line 218 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [3/12]

template<class l, int N>
accelerator_inline iMatrix< l, N > operator+ ( const iMatrix< l, N > & lhs,
const typename iScalar< l >::scalar_type rhs )

Definition at line 221 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [4/12]

template<class l, int N>
accelerator_inline iMatrix< l, N > operator+ ( const typename iScalar< l >::scalar_type lhs,
const iMatrix< l, N > & rhs )

Definition at line 227 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [5/12]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator+ ( const iScalar< l > & lhs,
double rhs )

Definition at line 233 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [6/12]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator+ ( double lhs,
const iScalar< l > & rhs )

Definition at line 240 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [7/12]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator+ ( const iMatrix< l, N > & lhs,
double rhs )

Definition at line 243 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [8/12]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator+ ( double lhs,
const iMatrix< l, N > & rhs )

Definition at line 250 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [9/12]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator+ ( const iScalar< l > & lhs,
Integer rhs )

Definition at line 255 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [10/12]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator+ ( Integer lhs,
const iScalar< l > & rhs )

Definition at line 263 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [11/12]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator+ ( const iMatrix< l, N > & lhs,
Integer rhs )

Definition at line 266 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator+() [12/12]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator+ ( Integer lhs,
const iMatrix< l, N > & rhs )

Definition at line 273 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [1/12]

template<class l>
accelerator_inline iScalar< l > operator- ( const iScalar< l > & lhs,
const typename iScalar< l >::scalar_type rhs )

Definition at line 280 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [2/12]

template<class l>
accelerator_inline iScalar< l > operator- ( const typename iScalar< l >::scalar_type lhs,
const iScalar< l > & rhs )

Definition at line 286 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [3/12]

template<class l, int N>
accelerator_inline iMatrix< l, N > operator- ( const iMatrix< l, N > & lhs,
const typename iScalar< l >::scalar_type rhs )

Definition at line 293 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [4/12]

template<class l, int N>
accelerator_inline iMatrix< l, N > operator- ( const typename iScalar< l >::scalar_type lhs,
const iMatrix< l, N > & rhs )

Definition at line 299 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [5/12]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator- ( const iScalar< l > & lhs,
double rhs )

Definition at line 309 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [6/12]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iScalar< l > operator- ( double lhs,
const iScalar< l > & rhs )

Definition at line 316 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [7/12]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator- ( const iMatrix< l, N > & lhs,
double rhs )

Definition at line 324 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [8/12]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, double > = 0>
accelerator_inline iMatrix< l, N > operator- ( double lhs,
const iMatrix< l, N > & rhs )

Definition at line 331 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [9/12]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iScalar< l > operator- ( const iScalar< l > & lhs,
Integer rhs )

Definition at line 342 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [10/12]

template<class l, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iScalar< l > operator- ( Integer lhs,
const iScalar< l > & rhs )

Definition at line 349 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [11/12]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iMatrix< l, N > operator- ( const iMatrix< l, N > & lhs,
Integer rhs )

Definition at line 356 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ operator-() [12/12]

template<class l, int N, IfNotSame< typename iScalar< l >::scalar_type, Integer > = 0>
accelerator_inline iMatrix< l, N > operator- ( Integer lhs,
const iMatrix< l, N > & rhs )

Definition at line 363 of file Tensor_arith_scalar.h.

References accelerator_inline.

◆ NAMESPACE_END()

NAMESPACE_END ( Grid )