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 )
subroutine dlarfg(N, ALPHA, X, INCX, TAU)
DLARFG generates an elementary reflector (Householder matrix).
subroutine dgemm(TRANSA, TRANSB, M, N, K, ALPHA, A, LDA, B, LDB, BETA, C, LDC)
DGEMM
subroutine dcopy(N, DX, INCX, DY, INCY)
DCOPY
subroutine dscal(N, DA, DX, INCX)
DSCAL
subroutine dlahr2(N, K, NB, A, LDA, TAU, T, LDT, Y, LDY)
DLAHR2 reduces the specified number of first columns of a general rectangular matrix A so that elemen...
subroutine daxpy(N, DA, DX, INCX, DY, INCY)
DAXPY
subroutine dlacpy(UPLO, M, N, A, LDA, B, LDB)
DLACPY copies all or part of one two-dimensional array to another.
subroutine dgemv(TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
DGEMV
subroutine dtrmm(SIDE, UPLO, TRANSA, DIAG, M, N, ALPHA, A, LDA, B, LDB)
DTRMM
subroutine dtrmv(UPLO, TRANS, DIAG, N, A, LDA, X, INCX)
DTRMV