148 SUBROUTINE zlarz( SIDE, M, N, L, V, INCV, TAU, C, LDC, WORK )
157 INTEGER incv, l, ldc, m, n
161 COMPLEX*16 c( ldc, * ), v( * ), work( * )
168 parameter( one = ( 1.0d+0, 0.0d+0 ),
169 $ zero = ( 0.0d+0, 0.0d+0 ) )
180 IF(
lsame( side,
'L' ) )
THEN
184 IF( tau.NE.zero )
THEN
188 CALL
zcopy( n, c, ldc, work, 1 )
193 CALL
zgemv(
'Conjugate transpose', l, n, one, c( m-l+1, 1 ),
194 $ ldc, v, incv, one, work, 1 )
199 CALL
zaxpy( n, -tau, work, 1, c, ldc )
204 CALL
zgeru( l, n, -tau, v, incv, work, 1, c( m-l+1, 1 ),
212 IF( tau.NE.zero )
THEN
216 CALL
zcopy( m, c, 1, work, 1 )
220 CALL
zgemv(
'No transpose', m, l, one, c( 1, n-l+1 ), ldc,
221 $ v, incv, one, work, 1 )
225 CALL
zaxpy( m, -tau, work, 1, c, 1 )
230 CALL
zgerc( m, l, -tau, work, 1, v, incv, c( 1, n-l+1 ),
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 zlacgv(N, X, INCX)
ZLACGV conjugates a complex vector.
subroutine zcopy(N, ZX, INCX, ZY, INCY)
ZCOPY
logical function lsame(CA, CB)
LSAME
subroutine zaxpy(N, ZA, ZX, INCX, ZY, INCY)
ZAXPY
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 zgeru(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
ZGERU