170 SUBROUTINE dlahrd( N, K, NB, A, LDA, TAU, T, LDT, Y, LDY )
178 INTEGER K, LDA, LDT, LDY, N, NB
181 DOUBLE PRECISION A( lda, * ), T( ldt, nb ), TAU( nb ),
188 DOUBLE PRECISION ZERO, ONE
189 parameter( zero = 0.0d+0, one = 1.0d+0 )
215 CALL dgemv(
'No transpose', n, i-1, -one, y, ldy,
216 $ a( k+i-1, 1 ), lda, one, a( 1, i ), 1 )
228 CALL dcopy( i-1, a( k+1, i ), 1, t( 1, nb ), 1 )
229 CALL dtrmv(
'Lower',
'Transpose',
'Unit', i-1, a( k+1, 1 ),
230 $ lda, t( 1, nb ), 1 )
234 CALL dgemv(
'Transpose', n-k-i+1, i-1, one, a( k+i, 1 ),
235 $ lda, a( k+i, i ), 1, one, t( 1, nb ), 1 )
239 CALL dtrmv(
'Upper',
'Transpose',
'Non-unit', i-1, t, ldt,
244 CALL dgemv(
'No transpose', n-k-i+1, i-1, -one, a( k+i, 1 ),
245 $ lda, t( 1, nb ), 1, one, a( k+i, i ), 1 )
249 CALL dtrmv(
'Lower',
'No transpose',
'Unit', i-1,
250 $ a( k+1, 1 ), lda, t( 1, nb ), 1 )
251 CALL daxpy( i-1, -one, t( 1, nb ), 1, a( k+1, i ), 1 )
259 CALL dlarfg( n-k-i+1, a( k+i, i ), a( min( k+i+1, n ), i ), 1,
266 CALL dgemv(
'No transpose', n, n-k-i+1, one, a( 1, i+1 ), lda,
267 $ a( k+i, i ), 1, zero, y( 1, i ), 1 )
268 CALL dgemv(
'Transpose', n-k-i+1, i-1, one, a( k+i, 1 ), lda,
269 $ a( k+i, i ), 1, zero, t( 1, i ), 1 )
270 CALL dgemv(
'No transpose', n, i-1, -one, y, ldy, t( 1, i ), 1,
271 $ one, y( 1, i ), 1 )
272 CALL dscal( n, tau( i ), y( 1, i ), 1 )
276 CALL dscal( i-1, -tau( i ), t( 1, i ), 1 )
277 CALL dtrmv(
'Upper',
'No transpose',
'Non-unit', i-1, t, ldt,
subroutine dlarfg(N, ALPHA, X, INCX, TAU)
DLARFG generates an elementary reflector (Householder matrix).
subroutine dcopy(N, DX, INCX, DY, INCY)
DCOPY
subroutine dlahrd(N, K, NB, A, LDA, TAU, T, LDT, Y, LDY)
DLAHRD reduces the first nb columns of a general rectangular matrix A so that elements below the k-th...
subroutine dscal(N, DA, DX, INCX)
DSCAL
subroutine daxpy(N, DA, DX, INCX, DY, INCY)
DAXPY
subroutine dgemv(TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
DGEMV
subroutine dtrmv(UPLO, TRANS, DIAG, N, A, LDA, X, INCX)
DTRMV