122 SUBROUTINE zgeqr2( M, N, A, LDA, TAU, WORK, INFO )
130 INTEGER INFO, LDA, M, N
133 COMPLEX*16 A( lda, * ), TAU( * ), WORK( * )
140 parameter ( one = ( 1.0d+0, 0.0d+0 ) )
150 INTRINSIC dconjg, max, min
159 ELSE IF( n.LT.0 )
THEN
161 ELSE IF( lda.LT.max( 1, m ) )
THEN
165 CALL xerbla(
'ZGEQR2', -info )
175 CALL zlarfg( m-i+1, a( i, i ), a( min( i+1, m ), i ), 1,
183 CALL zlarf(
'Left', m-i+1, n-i, a( i, i ), 1,
184 $ dconjg( tau( i ) ), a( i, i+1 ), lda, work )
subroutine zlarfg(N, ALPHA, X, INCX, TAU)
ZLARFG generates an elementary reflector (Householder matrix).
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine zgeqr2(M, N, A, LDA, TAU, WORK, INFO)
ZGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm...
subroutine zlarf(SIDE, M, N, V, INCV, TAU, C, LDC, WORK)
ZLARF applies an elementary reflector to a general rectangular matrix.