124      SUBROUTINE cgeqrt2( M, N, A, LDA, T, LDT, INFO )
 
  131      INTEGER   INFO, LDA, LDT, M, N
 
  134      COMPLEX   A( LDA, * ), T( LDT, * )
 
  141      parameter( one = (1.0,0.0), zero = (0.0,0.0) )
 
  157      ELSE IF( m.LT.n ) 
THEN 
  159      ELSE IF( lda.LT.max( 1, m ) ) 
THEN 
  161      ELSE IF( ldt.LT.max( 1, n ) ) 
THEN 
  165         CALL xerbla( 
'CGEQRT2', -info )
 
  175         CALL clarfg( m-i+1, a( i, i ), a( min( i+1, m ), i ), 1,
 
  186            CALL cgemv( 
'C',m-i+1, n-i, one, a( i, i+1 ), lda,
 
  187     $                  a( i, i ), 1, zero, t( 1, n ), 1 )
 
  191            alpha = -conjg(t( i, 1 ))
 
  192            CALL cgerc( m-i+1, n-i, alpha, a( i, i ), 1,
 
  193     $           t( 1, n ), 1, a( i, i+1 ), lda )
 
  205         CALL cgemv( 
'C', m-i+1, i-1, alpha, a( i, 1 ), lda,
 
  206     $               a( i, i ), 1, zero, t( 1, i ), 1 )
 
  211         CALL ctrmv( 
'U', 
'N', 
'N', i-1, t, ldt, t( 1, i ), 1 )
 
  215            t( i, i ) = t( i, 1 )
 
 
subroutine cgemv(trans, m, n, alpha, a, lda, x, incx, beta, y, incy)
CGEMV
subroutine cgeqrt2(m, n, a, lda, t, ldt, info)
CGEQRT2 computes a QR factorization of a general real or complex matrix using the compact WY represen...
subroutine cgerc(m, n, alpha, x, incx, y, incy, a, lda)
CGERC
subroutine clarfg(n, alpha, x, incx, tau)
CLARFG generates an elementary reflector (Householder matrix).
subroutine ctrmv(uplo, trans, diag, n, a, lda, x, incx)
CTRMV