168 SUBROUTINE dlahrd( N, K, NB, A, LDA, TAU, T, LDT, Y, LDY )
176 INTEGER K, LDA, LDT, LDY, N, NB
179 DOUBLE PRECISION A( LDA, * ), T( LDT, NB ), TAU( NB ),
186 DOUBLE PRECISION ZERO, ONE
187 parameter( zero = 0.0d+0, one = 1.0d+0 )
213 CALL dgemv(
'No transpose', n, i-1, -one, y, ldy,
214 $ a( k+i-1, 1 ), lda, one, a( 1, i ), 1 )
226 CALL dcopy( i-1, a( k+1, i ), 1, t( 1, nb ), 1 )
227 CALL dtrmv(
'Lower',
'Transpose',
'Unit', i-1, a( k+1, 1 ),
228 $ lda, t( 1, nb ), 1 )
232 CALL dgemv(
'Transpose', n-k-i+1, i-1, one, a( k+i, 1 ),
233 $ lda, a( k+i, i ), 1, one, t( 1, nb ), 1 )
237 CALL dtrmv(
'Upper',
'Transpose',
'Non-unit', i-1, t, ldt,
242 CALL dgemv(
'No transpose', n-k-i+1, i-1, -one, a( k+i, 1 ),
243 $ lda, t( 1, nb ), 1, one, a( k+i, i ), 1 )
247 CALL dtrmv(
'Lower',
'No transpose',
'Unit', i-1,
248 $ a( k+1, 1 ), lda, t( 1, nb ), 1 )
249 CALL daxpy( i-1, -one, t( 1, nb ), 1, a( k+1, i ), 1 )
257 CALL dlarfg( n-k-i+1, a( k+i, i ), a( min( k+i+1, n ), i ), 1,
264 CALL dgemv(
'No transpose', n, n-k-i+1, one, a( 1, i+1 ), lda,
265 $ a( k+i, i ), 1, zero, y( 1, i ), 1 )
266 CALL dgemv(
'Transpose', n-k-i+1, i-1, one, a( k+i, 1 ), lda,
267 $ a( k+i, i ), 1, zero, t( 1, i ), 1 )
268 CALL dgemv(
'No transpose', n, i-1, -one, y, ldy, t( 1, i ), 1,
269 $ one, y( 1, i ), 1 )
270 CALL dscal( n, tau( i ), y( 1, i ), 1 )
274 CALL dscal( i-1, -tau( i ), t( 1, i ), 1 )
275 CALL dtrmv(
'Upper',
'No transpose',
'Non-unit', i-1, t, ldt,