128 SUBROUTINE zgeqrt2( M, N, A, LDA, T, LDT, INFO )
136 INTEGER INFO, LDA, LDT, M, N
139 COMPLEX*16 A( LDA, * ), T( LDT, * )
146 parameter( one = (1.0d+00,0.0d+00), zero = (0.0d+00,0.0d+00) )
150 COMPLEX*16 AII, ALPHA
162 ELSE IF( n.LT.0 )
THEN
164 ELSE IF( lda.LT.max( 1, m ) )
THEN
166 ELSE IF( ldt.LT.max( 1, n ) )
THEN
170 CALL xerbla(
'ZGEQRT2', -info )
180 CALL zlarfg( m-i+1, a( i, i ), a( min( i+1, m ), i ), 1,
191 CALL zgemv(
'C',m-i+1, n-i, one, a( i, i+1 ), lda,
192 $ a( i, i ), 1, zero, t( 1, n ), 1 )
196 alpha = -conjg(t( i, 1 ))
197 CALL zgerc( m-i+1, n-i, alpha, a( i, i ), 1,
198 $ t( 1, n ), 1, a( i, i+1 ), lda )
210 CALL zgemv(
'C', m-i+1, i-1, alpha, a( i, 1 ), lda,
211 $ a( i, i ), 1, zero, t( 1, i ), 1 )
216 CALL ztrmv(
'U',
'N',
'N', i-1, t, ldt, t( 1, i ), 1 )
220 t( i, i ) = t( i, 1 )