86 SUBROUTINE slarge( N, A, LDA, ISEED, WORK, INFO )
97 REAL A( LDA, * ), WORK( * )
104 parameter( zero = 0.0e+0, one = 1.0e+0 )
127 ELSE IF( lda.LT.max( 1, n ) )
THEN
131 CALL xerbla(
'SLARGE', -info )
141 CALL slarnv( 3, iseed, n-i+1, work )
142 wn = snrm2( n-i+1, work, 1 )
143 wa = sign( wn, work( 1 ) )
144 IF( wn.EQ.zero )
THEN
148 CALL sscal( n-i, one / wb, work( 2 ), 1 )
155 CALL sgemv(
'Transpose', n-i+1, n, one, a( i, 1 ), lda, work,
156 $ 1, zero, work( n+1 ), 1 )
157 CALL sger( n-i+1, n, -tau, work, 1, work( n+1 ), 1, a( i, 1 ),
162 CALL sgemv(
'No transpose', n, n-i+1, one, a( 1, i ), lda,
163 $ work, 1, zero, work( n+1 ), 1 )
164 CALL sger( n, n-i+1, -tau, work( n+1 ), 1, work, 1, a( 1, i ),
subroutine slarnv(IDIST, ISEED, N, X)
SLARNV returns a vector of random numbers from a uniform or normal distribution.
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine slarge(N, A, LDA, ISEED, WORK, INFO)
SLARGE
subroutine sscal(N, SA, SX, INCX)
SSCAL
subroutine sger(M, N, ALPHA, X, INCX, Y, INCY, A, LDA)
SGER
subroutine sgemv(TRANS, M, N, ALPHA, A, LDA, X, INCX, BETA, Y, INCY)
SGEMV