168 SUBROUTINE zlahrd( N, K, NB, A, LDA, TAU, T, LDT, Y, LDY )
176 INTEGER K, LDA, LDT, LDY, N, NB
179 COMPLEX*16 A( lda, * ), T( ldt, nb ), TAU( nb ),
187 parameter ( zero = ( 0.0d+0, 0.0d+0 ),
188 $ one = ( 1.0d+0, 0.0d+0 ) )
215 CALL zlacgv( i-1, a( k+i-1, 1 ), lda )
216 CALL zgemv(
'No transpose', n, i-1, -one, y, ldy,
217 $ a( k+i-1, 1 ), lda, one, a( 1, i ), 1 )
218 CALL zlacgv( i-1, a( k+i-1, 1 ), lda )
230 CALL zcopy( i-1, a( k+1, i ), 1, t( 1, nb ), 1 )
231 CALL ztrmv(
'Lower',
'Conjugate transpose',
'Unit', i-1,
232 $ a( k+1, 1 ), lda, t( 1, nb ), 1 )
236 CALL zgemv(
'Conjugate transpose', n-k-i+1, i-1, one,
237 $ a( k+i, 1 ), lda, a( k+i, i ), 1, one,
242 CALL ztrmv(
'Upper',
'Conjugate transpose',
'Non-unit', i-1,
243 $ t, ldt, t( 1, nb ), 1 )
247 CALL zgemv(
'No transpose', n-k-i+1, i-1, -one, a( k+i, 1 ),
248 $ lda, t( 1, nb ), 1, one, a( k+i, i ), 1 )
252 CALL ztrmv(
'Lower',
'No transpose',
'Unit', i-1,
253 $ a( k+1, 1 ), lda, t( 1, nb ), 1 )
254 CALL zaxpy( i-1, -one, t( 1, nb ), 1, a( k+1, i ), 1 )
263 CALL zlarfg( n-k-i+1, ei, a( min( k+i+1, n ), i ), 1,
269 CALL zgemv(
'No transpose', n, n-k-i+1, one, a( 1, i+1 ), lda,
270 $ a( k+i, i ), 1, zero, y( 1, i ), 1 )
271 CALL zgemv(
'Conjugate transpose', n-k-i+1, i-1, one,
272 $ a( k+i, 1 ), lda, a( k+i, i ), 1, zero, t( 1, i ),
274 CALL zgemv(
'No transpose', n, i-1, -one, y, ldy, t( 1, i ), 1,
275 $ one, y( 1, i ), 1 )
276 CALL zscal( n, tau( i ), y( 1, i ), 1 )
280 CALL zscal( i-1, -tau( i ), t( 1, i ), 1 )
281 CALL ztrmv(
'Upper',
'No transpose',
'Non-unit', i-1, t, ldt,
subroutine zcopy(N, ZX, INCX, ZY, INCY)
ZCOPY
subroutine zgemv(TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
ZGEMV
subroutine zlarfg(N, ALPHA, X, INCX, TAU)
ZLARFG generates an elementary reflector (Householder matrix).
subroutine ztrmv(UPLO, TRANS, DIAG, N, A, LDA, X, INCX)
ZTRMV
subroutine zlahrd(N, K, NB, A, LDA, TAU, T, LDT, Y, LDY)
ZLAHRD reduces the first nb columns of a general rectangular matrix A so that elements below the k-th...
subroutine zaxpy(N, ZA, ZX, INCX, ZY, INCY)
ZAXPY
subroutine zscal(N, ZA, ZX, INCX)
ZSCAL
subroutine zlacgv(N, X, INCX)
ZLACGV conjugates a complex vector.