MAGMA  1.6.1
Matrix Algebra for GPU and Multicore Architectures
 All Classes Files Functions Friends Groups Pages
double-complex precision

Functions

double magma_cblas_dzasum (magma_int_t n, const magmaDoubleComplex *x, magma_int_t incx)
 Returns the sum of absolute values of vector x; i.e., one norm. More...
 
double magma_cblas_dznrm2 (magma_int_t n, const magmaDoubleComplex *x, magma_int_t incx)
 Returns 2-norm of vector x. More...
 
magmaDoubleComplex magma_cblas_zdotc (magma_int_t n, const magmaDoubleComplex *x, magma_int_t incx, const magmaDoubleComplex *y, magma_int_t incy)
 Returns dot product of vectors x and y; \( x^H y \). More...
 
magmaDoubleComplex magma_cblas_zdotu (magma_int_t n, const magmaDoubleComplex *x, magma_int_t incx, const magmaDoubleComplex *y, magma_int_t incy)
 Returns dot product (unconjugated) of vectors x and y; \( x^T y \). More...
 
magma_int_t magma_izamax (magma_int_t n, magmaDoubleComplex_const_ptr dx, magma_int_t incx)
 Returns index of element of vector x having max. More...
 
magma_int_t magma_izamin (magma_int_t n, magmaDoubleComplex_const_ptr dx, magma_int_t incx)
 Returns index of element of vector x having min. More...
 
double magma_dzasum (magma_int_t n, magmaDoubleComplex_const_ptr dx, magma_int_t incx)
 Returns the sum of absolute values of vector x; i.e., one norm. More...
 
void magma_zaxpy (magma_int_t n, magmaDoubleComplex alpha, magmaDoubleComplex_const_ptr dx, magma_int_t incx, magmaDoubleComplex_ptr dy, magma_int_t incy)
 Constant times a vector plus a vector; \( y = \alpha x + y \). More...
 
void magma_zcopy (magma_int_t n, magmaDoubleComplex_const_ptr dx, magma_int_t incx, magmaDoubleComplex_ptr dy, magma_int_t incy)
 Copy vector x to vector y; \( y = x \). More...
 
magmaDoubleComplex magma_zdotc (magma_int_t n, magmaDoubleComplex_const_ptr dx, magma_int_t incx, magmaDoubleComplex_const_ptr dy, magma_int_t incy)
 Returns dot product of vectors x and y; \( x^H y \). More...
 
magmaDoubleComplex magma_zdotu (magma_int_t n, magmaDoubleComplex_const_ptr dx, magma_int_t incx, magmaDoubleComplex_const_ptr dy, magma_int_t incy)
 Returns dot product (unconjugated) of vectors x and y; \( x^T y \). More...
 
double magma_dznrm2 (magma_int_t n, magmaDoubleComplex_const_ptr dx, magma_int_t incx)
 Returns 2-norm of vector x. More...
 
void magma_zrot (magma_int_t n, magmaDoubleComplex_ptr dx, magma_int_t incx, magmaDoubleComplex_ptr dy, magma_int_t incy, double c, magmaDoubleComplex s)
 Apply Givens plane rotation, where cos (c) is real and sin (s) is complex. More...
 
void magma_zdrot (magma_int_t n, magmaDoubleComplex_ptr dx, magma_int_t incx, magmaDoubleComplex_ptr dy, magma_int_t incy, double c, double s)
 Apply Givens plane rotation, where cos (c) and sin (s) are real. More...
 
void magma_zscal (magma_int_t n, magmaDoubleComplex alpha, magmaDoubleComplex_ptr dx, magma_int_t incx)
 Scales a vector by a constant; \( x = \alpha x \). More...
 
void magma_zdscal (magma_int_t n, double alpha, magmaDoubleComplex_ptr dx, magma_int_t incx)
 Scales a vector by a real constant; \( x = \alpha x \). More...
 
void magma_zswap (magma_int_t n, magmaDoubleComplex_ptr dx, magma_int_t incx, magmaDoubleComplex_ptr dy, magma_int_t incy)
 Swap vector x and y; \( x <-> y \). More...
 
void magmablas_zswap_q (magma_int_t n, magmaDoubleComplex_ptr dx, magma_int_t incx, magmaDoubleComplex_ptr dy, magma_int_t incy, magma_queue_t queue)
 

Purpose:

Swap vector x and y; \( x <-> y \). More...
 
void magmablas_zswap (magma_int_t n, magmaDoubleComplex_ptr dx, magma_int_t incx, magmaDoubleComplex_ptr dy, magma_int_t incy)
 

Detailed Description

Function Documentation

double magma_cblas_dzasum ( magma_int_t  n,
const magmaDoubleComplex *  x,
magma_int_t  incx 
)

Returns the sum of absolute values of vector x; i.e., one norm.

Parameters
[in]nNumber of elements in vector x. n >= 0.
[in]xCOMPLEX_16 array on CPU host. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of x. incx > 0.
double magma_cblas_dznrm2 ( magma_int_t  n,
const magmaDoubleComplex *  x,
magma_int_t  incx 
)

Returns 2-norm of vector x.

Avoids unnecesary over/underflow.

Parameters
[in]nNumber of elements in vector x. n >= 0.
[in]xCOMPLEX_16 array on CPU host. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of x. incx > 0.
magmaDoubleComplex magma_cblas_zdotc ( magma_int_t  n,
const magmaDoubleComplex *  x,
magma_int_t  incx,
const magmaDoubleComplex *  y,
magma_int_t  incy 
)

Returns dot product of vectors x and y; \( x^H y \).

Parameters
[in]nNumber of elements in vector x and y. n >= 0.
[in]xCOMPLEX_16 array on CPU host. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of x. incx > 0.
[in]yCOMPLEX_16 array on CPU host. The n element vector y of dimension (1 + (n-1)*incy).
[in]incyStride between consecutive elements of dy. incy > 0.
magmaDoubleComplex magma_cblas_zdotu ( magma_int_t  n,
const magmaDoubleComplex *  x,
magma_int_t  incx,
const magmaDoubleComplex *  y,
magma_int_t  incy 
)

Returns dot product (unconjugated) of vectors x and y; \( x^T y \).

Parameters
[in]nNumber of elements in vector x and y. n >= 0.
[in]xCOMPLEX_16 array on CPU host. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of x. incx > 0.
[in]yCOMPLEX_16 array on CPU host. The n element vector y of dimension (1 + (n-1)*incy).
[in]incyStride between consecutive elements of dy. incy > 0.
double magma_dzasum ( magma_int_t  n,
magmaDoubleComplex_const_ptr  dx,
magma_int_t  incx 
)

Returns the sum of absolute values of vector x; i.e., one norm.

Parameters
[in]nNumber of elements in vector x. n >= 0.
[in]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx > 0.
double magma_dznrm2 ( magma_int_t  n,
magmaDoubleComplex_const_ptr  dx,
magma_int_t  incx 
)

Returns 2-norm of vector x.

Avoids unnecesary over/underflow.

Parameters
[in]nNumber of elements in vector x and y. n >= 0.
[in]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx > 0.
magma_int_t magma_izamax ( magma_int_t  n,
magmaDoubleComplex_const_ptr  dx,
magma_int_t  incx 
)

Returns index of element of vector x having max.

absolute value; i.e., max (infinity) norm.

Parameters
[in]nNumber of elements in vector x. n >= 0.
[in]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx > 0.
magma_int_t magma_izamin ( magma_int_t  n,
magmaDoubleComplex_const_ptr  dx,
magma_int_t  incx 
)

Returns index of element of vector x having min.

absolute value.

Parameters
[in]nNumber of elements in vector x. n >= 0.
[in]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx > 0.
void magma_zaxpy ( magma_int_t  n,
magmaDoubleComplex  alpha,
magmaDoubleComplex_const_ptr  dx,
magma_int_t  incx,
magmaDoubleComplex_ptr  dy,
magma_int_t  incy 
)

Constant times a vector plus a vector; \( y = \alpha x + y \).

Parameters
[in]nNumber of elements in vectors x and y. n >= 0.
[in]alphaScalar \( \alpha \)
[in]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx != 0.
[in,out]dyCOMPLEX_16 array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
[in]incyStride between consecutive elements of dy. incy != 0.
void magma_zcopy ( magma_int_t  n,
magmaDoubleComplex_const_ptr  dx,
magma_int_t  incx,
magmaDoubleComplex_ptr  dy,
magma_int_t  incy 
)

Copy vector x to vector y; \( y = x \).

Parameters
[in]nNumber of elements in vectors x and y. n >= 0.
[in]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx != 0.
[out]dyCOMPLEX_16 array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
[in]incyStride between consecutive elements of dy. incy != 0.
magmaDoubleComplex magma_zdotc ( magma_int_t  n,
magmaDoubleComplex_const_ptr  dx,
magma_int_t  incx,
magmaDoubleComplex_const_ptr  dy,
magma_int_t  incy 
)

Returns dot product of vectors x and y; \( x^H y \).

Parameters
[in]nNumber of elements in vector x and y. n >= 0.
[in]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx != 0.
[in]dyCOMPLEX_16 array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
[in]incyStride between consecutive elements of dy. incy != 0.
magmaDoubleComplex magma_zdotu ( magma_int_t  n,
magmaDoubleComplex_const_ptr  dx,
magma_int_t  incx,
magmaDoubleComplex_const_ptr  dy,
magma_int_t  incy 
)

Returns dot product (unconjugated) of vectors x and y; \( x^T y \).

Parameters
[in]nNumber of elements in vector x and y. n >= 0.
[in]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx != 0.
[in]dyCOMPLEX_16 array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
[in]incyStride between consecutive elements of dy. incy != 0.
void magma_zdrot ( magma_int_t  n,
magmaDoubleComplex_ptr  dx,
magma_int_t  incx,
magmaDoubleComplex_ptr  dy,
magma_int_t  incy,
double  c,
double  s 
)

Apply Givens plane rotation, where cos (c) and sin (s) are real.

Parameters
[in]nNumber of elements in vector x and y. n >= 0.
[in,out]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx). On output, overwritten with c*x + s*y.
[in]incxStride between consecutive elements of dx. incx != 0.
[in,out]dyCOMPLEX_16 array on GPU device. The n element vector y of dimension (1 + (n-1)*incy). On output, overwritten with -conj(s)*x + c*y.
[in]incyStride between consecutive elements of dy. incy != 0.
[in]cdouble. cosine.
[in]sdouble. sine. c and s define a rotation [ c s ] where c*c + s*s = 1. [ -s c ]
void magma_zdscal ( magma_int_t  n,
double  alpha,
magmaDoubleComplex_ptr  dx,
magma_int_t  incx 
)

Scales a vector by a real constant; \( x = \alpha x \).

Parameters
[in]nNumber of elements in vector x. n >= 0.
[in]alphaScalar \( \alpha \) (real)
[in,out]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx > 0.
void magma_zrot ( magma_int_t  n,
magmaDoubleComplex_ptr  dx,
magma_int_t  incx,
magmaDoubleComplex_ptr  dy,
magma_int_t  incy,
double  c,
magmaDoubleComplex  s 
)

Apply Givens plane rotation, where cos (c) is real and sin (s) is complex.

Parameters
[in]nNumber of elements in vector x and y. n >= 0.
[in,out]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx). On output, overwritten with c*x + s*y.
[in]incxStride between consecutive elements of dx. incx != 0.
[in,out]dyCOMPLEX_16 array on GPU device. The n element vector y of dimension (1 + (n-1)*incy). On output, overwritten with -conj(s)*x + c*y.
[in]incyStride between consecutive elements of dy. incy != 0.
[in]cdouble. cosine.
[in]sCOMPLEX_16. sine. c and s define a rotation [ c s ] where c*c + s*conj(s) = 1. [ -conj(s) c ]
void magma_zscal ( magma_int_t  n,
magmaDoubleComplex  alpha,
magmaDoubleComplex_ptr  dx,
magma_int_t  incx 
)

Scales a vector by a constant; \( x = \alpha x \).

Parameters
[in]nNumber of elements in vector x. n >= 0.
[in]alphaScalar \( \alpha \)
[in,out]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx > 0.
void magma_zswap ( magma_int_t  n,
magmaDoubleComplex_ptr  dx,
magma_int_t  incx,
magmaDoubleComplex_ptr  dy,
magma_int_t  incy 
)

Swap vector x and y; \( x <-> y \).

Parameters
[in]nNumber of elements in vector x and y. n >= 0.
[in,out]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx != 0.
[in,out]dyCOMPLEX_16 array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
[in]incyStride between consecutive elements of dy. incy != 0.
void magmablas_zswap ( magma_int_t  n,
magmaDoubleComplex_ptr  dx,
magma_int_t  incx,
magmaDoubleComplex_ptr  dy,
magma_int_t  incy 
)
void magmablas_zswap_q ( magma_int_t  n,
magmaDoubleComplex_ptr  dx,
magma_int_t  incx,
magmaDoubleComplex_ptr  dy,
magma_int_t  incy,
magma_queue_t  queue 
)

Purpose:

Swap vector x and y; \( x <-> y \).

Parameters
[in]nNumber of elements in vector x and y. n >= 0.
[in,out]dxCOMPLEX_16 array on GPU device. The n element vector x of dimension (1 + (n-1)*incx).
[in]incxStride between consecutive elements of dx. incx != 0.
[in,out]dyCOMPLEX_16 array on GPU device. The n element vector y of dimension (1 + (n-1)*incy).
[in]incyStride between consecutive elements of dy. incy != 0.