127      SUBROUTINE zgeqr2( M, N, A, LDA, TAU, WORK, INFO )
 
  134      INTEGER            INFO, LDA, M, N
 
  137      COMPLEX*16         A( LDA, * ), TAU( * ), WORK( * )
 
  144      parameter( one = ( 1.0d+0, 0.0d+0 ) )
 
  153      INTRINSIC          dconjg, max, min
 
  162      ELSE IF( n.LT.0 ) 
THEN 
  164      ELSE IF( lda.LT.max( 1, m ) ) 
THEN 
  168         CALL xerbla( 
'ZGEQR2', -info )
 
  178         CALL zlarfg( m-i+1, a( i, i ), a( min( i+1, m ), i ), 1,
 
  184            CALL zlarf1f( 
'Left', m-i+1, n-i, a( i, i ), 1,
 
  185     $                    conjg( tau( i ) ), a( i, i+1 ), lda, work )
 
 
subroutine zgeqr2(m, n, a, lda, tau, work, info)
ZGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm.
subroutine zlarf1f(side, m, n, v, incv, tau, c, ldc, work)
ZLARF1F applies an elementary reflector to a general rectangular
subroutine zlarfg(n, alpha, x, incx, tau)
ZLARFG generates an elementary reflector (Householder matrix).