141 SUBROUTINE zlatrz( M, N, L, A, LDA, TAU, WORK )
152 COMPLEX*16 A( lda, * ), TAU( * ), WORK( * )
159 parameter ( zero = ( 0.0d+0, 0.0d+0 ) )
177 ELSE IF( m.EQ.n )
THEN
189 CALL zlacgv( l, a( i, n-l+1 ), lda )
190 alpha = dconjg( a( i, i ) )
191 CALL zlarfg( l+1, alpha, a( i, n-l+1 ), lda, tau( i ) )
192 tau( i ) = dconjg( tau( i ) )
196 CALL zlarz(
'Right', i-1, n-i+1, l, a( i, n-l+1 ), lda,
197 $ dconjg( tau( i ) ), a( 1, i ), lda, work )
198 a( i, i ) = dconjg( alpha )
subroutine zlarfg(N, ALPHA, X, INCX, TAU)
ZLARFG generates an elementary reflector (Householder matrix).
subroutine zlatrz(M, N, L, A, LDA, TAU, WORK)
ZLATRZ factors an upper trapezoidal matrix by means of unitary transformations.
subroutine zlarz(SIDE, M, N, L, V, INCV, TAU, C, LDC, WORK)
ZLARZ applies an elementary reflector (as returned by stzrzf) to a general matrix.
subroutine zlacgv(N, X, INCX)
ZLACGV conjugates a complex vector.