CLARFG(3)      LAPACK routine of NEC Numeric Library Collection      CLARFG(3)



NAME
       CLARFG

SYNOPSIS
       SUBROUTINE CLARFG (N, ALPHA, X, INCX, TAU)



PURPOSE
            CLARFG generates a complex elementary reflector H of order n, such
            that

                  H**H * ( alpha ) = ( beta ),   H**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**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 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)
                     N is INTEGER
                     The order of the elementary reflector.

           ALPHA     (input/output)
                     ALPHA is COMPLEX
                     On entry, the value alpha.
                     On exit, it is overwritten with the value beta.

           X         (input/output)
                     X is COMPLEX array, dimension
                                    (1+(N-2)*abs(INCX))
                     On entry, the vector x.
                     On exit, it is overwritten with the vector v.

           INCX      (input)
                     INCX is INTEGER
                     The increment between elements of X. INCX > 0.

           TAU       (output)
                     TAU is COMPLEX
                     The value tau.



LAPACK routine                  31 October 2017                      CLARFG(3)