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 )
subroutine zgeqrt2(M, N, A, LDA, T, LDT, INFO)
ZGEQRT2 computes a QR factorization of a general real or complex matrix using the compact WY represen...
subroutine zgemv(TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
ZGEMV
subroutine zgerc(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
ZGERC
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine ztrmv(UPLO, TRANS, DIAG, N, A, LDA, X, INCX)
ZTRMV
subroutine zlarfg(N, ALPHA, X, INCX, TAU)
ZLARFG generates an elementary reflector (Householder matrix).