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



NAME
       SORGL2

SYNOPSIS
       SUBROUTINE SORGL2 (M, N, K, A, LDA, TAU, WORK, INFO)



PURPOSE
            SORGL2 generates an m by n real matrix Q with orthonormal rows,
            which is defined as the first m rows of a product of k elementary
            reflectors of order n

                  Q  =  H(k) . . . H(2) H(1)

            as returned by SGELQF.




ARGUMENTS
           M         (input)
                     M is INTEGER
                     The number of rows of the matrix Q. M >= 0.

           N         (input)
                     N is INTEGER
                     The number of columns of the matrix Q. N >= M.

           K         (input)
                     K is INTEGER
                     The number of elementary reflectors whose product defines the
                     matrix Q. M >= K >= 0.

           A         (input/output)
                     A is REAL array, dimension (LDA,N)
                     On entry, the i-th row must contain the vector which defines
                     the elementary reflector H(i), for i = 1,2,...,k, as returned
                     by SGELQF in the first k rows of its array argument A.
                     On exit, the m-by-n matrix Q.

           LDA       (input)
                     LDA is INTEGER
                     The first dimension of the array A. LDA >= max(1,M).

           TAU       (input)
                     TAU is REAL array, dimension (K)
                     TAU(i) must contain the scalar factor of the elementary
                     reflector H(i), as returned by SGELQF.

           WORK      (output)
                     WORK is REAL array, dimension (M)

           INFO      (output)
                     INFO is INTEGER
                     = 0: successful exit
                     < 0: if INFO = -i, the i-th argument has an illegal value



LAPACK routine                  31 October 2017                      SORGL2(3)