MAGMA  2.3.0 Matrix Algebra for GPU and Multicore Architectures

In C++, including magma_operators.h defines the usual unary and binary operators for complex numbers: +, +=, -, -=, *, *=, /, /=, ==, !=. More...

## Macros

#define MAGMA_Z_MAKE(r, i)

#define MAGMA_Z_REAL(a)

#define MAGMA_Z_IMAG(a)

#define MAGMA_Z_SUB(a, b)

#define MAGMA_Z_MUL(a, b)

#define MAGMA_Z_DIV(a, b)

#define MAGMA_Z_ABS(a)

#define MAGMA_Z_ABS1(a)

#define MAGMA_Z_CONJ(a)

## Functions

__host__ static __device__ double real (const magmaDoubleComplex &x)

__host__ static __device__ double imag (const magmaDoubleComplex &x)

__host__ static __device__

__host__ static __device__ double fabs (const magmaDoubleComplex &x)

__host__ static __device__ double abs1 (const magmaDoubleComplex &x)

## Detailed Description

In C++, including magma_operators.h defines the usual unary and binary operators for complex numbers: +, +=, -, -=, *, *=, /, /=, ==, !=.

Additionally, real(), imag(), conj(), fabs(), and abs1() are defined to apply to both complex and real numbers.

In C, there are equivalent macros: MAGMA_Z_{MAKE, REAL, IMAG, ADD, SUB, MUL, DIV, ABS, ABS1, CONJ} for double-complex, MAGMA_C_{...} for float-complex, MAGMA_D_{...} for double, MAGMA_S_{...} for float.

Just the double-complex versions are documented here.

## Macro Definition Documentation

 #define MAGMA_Z_MAKE ( r, i )
Returns
complex number r + i*sqrt(-1).
 #define MAGMA_Z_REAL ( a )
Returns
real component of a.
 #define MAGMA_Z_IMAG ( a )
Returns
imaginary component of a.
 #define MAGMA_Z_ADD ( a, b )
Returns
(a + b).
 #define MAGMA_Z_SUB ( a, b )
Returns
(a - b).
 #define MAGMA_Z_MUL ( a, b )
Returns
(a * b).
 #define MAGMA_Z_DIV ( a, b )
Returns
(a / b).
 #define MAGMA_Z_ABS ( a )
Returns
absolute value, |a| = sqrt( real(a)^2 + imag(a)^2 ).
 #define MAGMA_Z_ABS1 ( a )
Returns
1-norm absolute value, | real(a) | + | imag(a) |.
 #define MAGMA_Z_CONJ ( a )
Returns
conjugate of a.

## Function Documentation

 __host__ static __device__ double real ( const magmaDoubleComplex & x )
inlinestatic
Returns
real component of complex number x; x for real number.
 __host__ static __device__ double imag ( const magmaDoubleComplex & x )
inlinestatic
Returns
imaginary component of complex number x; 0 for real number.