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

Functions

void magmablas_clarfg_q (magma_int_t n, magmaFloatComplex_ptr dalpha, magmaFloatComplex_ptr dx, magma_int_t incx, magmaFloatComplex_ptr dtau, magma_queue_t queue)
 CLARFG generates a complex elementary reflector (Householder matrix) H of order n, such that. More...
 
void magmablas_clarfg (magma_int_t n, magmaFloatComplex_ptr dalpha, magmaFloatComplex_ptr dx, magma_int_t incx, magmaFloatComplex_ptr dtau)
 

Detailed Description

Function Documentation

void magmablas_clarfg ( magma_int_t  n,
magmaFloatComplex_ptr  dalpha,
magmaFloatComplex_ptr  dx,
magma_int_t  incx,
magmaFloatComplex_ptr  dtau 
)
void magmablas_clarfg_q ( magma_int_t  n,
magmaFloatComplex_ptr  dalpha,
magmaFloatComplex_ptr  dx,
magma_int_t  incx,
magmaFloatComplex_ptr  dtau,
magma_queue_t  queue 
)

CLARFG generates a complex elementary reflector (Householder matrix) H of order n, such that.

H * ( alpha ) = ( beta ), H**H * H = I. ( x ) ( 0 )

where alpha and beta are scalars, with beta real and beta = ±norm([alpha, x]), and x is an (n-1)-element complex vector. H is represented in the form

 H = I - tau * ( 1 ) * ( 1 v**H ),
               ( v )

where tau is a complex scalar and v is a complex (n-1)-element vector. Note that H is not Hermitian.

If the elements of x are all zero and dalpha is real, then tau = 0 and H is taken to be the unit matrix.

Otherwise 1 <= real(tau) <= 2 and abs(tau-1) <= 1.

Parameters
[in]nINTEGER The order of the elementary reflector.
[in,out]dalphaCOMPLEX* on the GPU. On entry, pointer to the value alpha, i.e., the first entry of the vector. On exit, it is overwritten with the value beta.
[in,out]dxCOMPLEX array, dimension (1+(N-2)*abs(INCX)), on the GPU On entry, the (n-1)-element vector x. On exit, it is overwritten with the vector v.
[in]incxINTEGER The increment between elements of X. INCX > 0.
[out]dtauCOMPLEX* on the GPU. Pointer to the value tau.
[in]queuemagma_queue_t Queue to execute in.