182 SUBROUTINE dlahr2( N, K, NB, A, LDA, TAU, T, LDT, Y, LDY )
190 INTEGER k, lda, ldt, ldy, n, nb
193 DOUBLE PRECISION a( lda, * ), t( ldt, nb ), tau( nb ),
200 DOUBLE PRECISION zero, one
201 parameter( zero = 0.0d+0,
229 CALL
dgemv(
'NO TRANSPOSE', n-k, i-1, -one, y(k+1,1), ldy,
230 $ a( k+i-1, 1 ), lda, one, a( k+1, i ), 1 )
242 CALL
dcopy( i-1, a( k+1, i ), 1, t( 1, nb ), 1 )
243 CALL
dtrmv(
'Lower',
'Transpose',
'UNIT',
245 $ lda, t( 1, nb ), 1 )
249 CALL
dgemv(
'Transpose', n-k-i+1, i-1,
251 $ lda, a( k+i, i ), 1, one, t( 1, nb ), 1 )
255 CALL
dtrmv(
'Upper',
'Transpose',
'NON-UNIT',
261 CALL
dgemv(
'NO TRANSPOSE', n-k-i+1, i-1, -one,
263 $ lda, t( 1, nb ), 1, one, a( k+i, i ), 1 )
267 CALL
dtrmv(
'Lower',
'NO TRANSPOSE',
269 $ a( k+1, 1 ), lda, t( 1, nb ), 1 )
270 CALL
daxpy( i-1, -one, t( 1, nb ), 1, a( k+1, i ), 1 )
278 CALL
dlarfg( n-k-i+1, a( k+i, i ), a( min( k+i+1, n ), i ), 1,
285 CALL
dgemv(
'NO TRANSPOSE', n-k, n-k-i+1,
286 $ one, a( k+1, i+1 ),
287 $ lda, a( k+i, i ), 1, zero, y( k+1, i ), 1 )
288 CALL
dgemv(
'Transpose', n-k-i+1, i-1,
289 $ one, a( k+i, 1 ), lda,
290 $ a( k+i, i ), 1, zero, t( 1, i ), 1 )
291 CALL
dgemv(
'NO TRANSPOSE', n-k, i-1, -one,
293 $ t( 1, i ), 1, one, y( k+1, i ), 1 )
294 CALL
dscal( n-k, tau( i ), y( k+1, i ), 1 )
298 CALL
dscal( i-1, -tau( i ), t( 1, i ), 1 )
299 CALL
dtrmv(
'Upper',
'No Transpose',
'NON-UNIT',
309 CALL
dlacpy(
'ALL', k, nb, a( 1, 2 ), lda, y, ldy )
310 CALL
dtrmm(
'RIGHT',
'Lower',
'NO TRANSPOSE',
312 $ one, a( k+1, 1 ), lda, y, ldy )
314 $ CALL
dgemm(
'NO TRANSPOSE',
'NO TRANSPOSE', k,
316 $ a( 1, 2+nb ), lda, a( k+1+nb, 1 ), lda, one, y,
318 CALL
dtrmm(
'RIGHT',
'Upper',
'NO TRANSPOSE',
320 $ one, t, ldt, y, ldy )