man clarfg (Fonctions bibliothèques) - generate a complex elementary reflector H of order n, such that H' * ( alpha ) = ( beta ), H' * H = I
NAME
CLARFG - generate a complex elementary reflector H of order n, such that H' * ( alpha ) = ( beta ), H' * H = I
SYNOPSIS
- SUBROUTINE CLARFG(
- N, ALPHA, X, INCX, TAU )
- INTEGER INCX, N
- COMPLEX ALPHA, TAU
- COMPLEX X( * )
PURPOSE
CLARFG generates a complex elementary reflector H of order n, such that H' * ( alpha ) = ( beta ), H' * H = I. ( x ) ( 0 )
where alpha and beta are scalars, with beta real, and x is an (n-1)-element complex vector. H is represented in the form
H = I - tau * ( 1 ) * ( 1 v' ) ,
( 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 alpha is real, then tau = 0
and H is taken to be the unit matrix.
Otherwise 1 <= real(tau) <= 2 and abs(tau-1) <= 1 .
ARGUMENTS
- N (input) INTEGER
- The order of the elementary reflector.
- ALPHA (input/output) COMPLEX
- On entry, the value alpha. On exit, it is overwritten with the value beta.
- X (input/output) COMPLEX array, dimension
- (1+(N-2)*abs(INCX)) On entry, the vector x. On exit, it is overwritten with the vector v.
- INCX (input) INTEGER
- The increment between elements of X. INCX > 0.
- TAU (output) COMPLEX
- The value tau.