168 SUBROUTINE slahrd( N, K, NB, A, LDA, TAU, T, LDT, Y, LDY )
176 INTEGER K, LDA, LDT, LDY, N, NB
179 REAL A( lda, * ), T( ldt, nb ), TAU( nb ),
187 parameter ( zero = 0.0e+0, one = 1.0e+0 )
213 CALL sgemv(
'No transpose', n, i-1, -one, y, ldy,
214 $ a( k+i-1, 1 ), lda, one, a( 1, i ), 1 )
226 CALL scopy( i-1, a( k+1, i ), 1, t( 1, nb ), 1 )
227 CALL strmv(
'Lower',
'Transpose',
'Unit', i-1, a( k+1, 1 ),
228 $ lda, t( 1, nb ), 1 )
232 CALL sgemv(
'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 strmv(
'Upper',
'Transpose',
'Non-unit', i-1, t, ldt,
242 CALL sgemv(
'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 strmv(
'Lower',
'No transpose',
'Unit', i-1,
248 $ a( k+1, 1 ), lda, t( 1, nb ), 1 )
249 CALL saxpy( i-1, -one, t( 1, nb ), 1, a( k+1, i ), 1 )
257 CALL slarfg( n-k-i+1, a( k+i, i ), a( min( k+i+1, n ), i ), 1,
264 CALL sgemv(
'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 sgemv(
'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 sgemv(
'No transpose', n, i-1, -one, y, ldy, t( 1, i ), 1,
269 $ one, y( 1, i ), 1 )
270 CALL sscal( n, tau( i ), y( 1, i ), 1 )
274 CALL sscal( i-1, -tau( i ), t( 1, i ), 1 )
275 CALL strmv(
'Upper',
'No transpose',
'Non-unit', i-1, t, ldt,
subroutine sgemv(TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
SGEMV
subroutine strmv(UPLO, TRANS, DIAG, N, A, LDA, X, INCX)
STRMV
subroutine saxpy(N, SA, SX, INCX, SY, INCY)
SAXPY
subroutine slarfg(N, ALPHA, X, INCX, TAU)
SLARFG generates an elementary reflector (Householder matrix).
subroutine sscal(N, SA, SX, INCX)
SSCAL
subroutine slahrd(N, K, NB, A, LDA, TAU, T, LDT, Y, LDY)
SLAHRD reduces the first nb columns of a general rectangular matrix A so that elements below the k-th...
subroutine scopy(N, SX, INCX, SY, INCY)
SCOPY