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 xerbla(srname, info)
subroutine sgemv(trans, m, n, alpha, a, lda, x, incx, beta, y, incy)
SGEMV
subroutine sger(m, n, alpha, x, incx, y, incy, a, lda)
SGER
subroutine slarnv(idist, iseed, n, x)
SLARNV returns a vector of random numbers from a uniform or normal distribution.
subroutine sscal(n, sa, sx, incx)
SSCAL
subroutine slarge(n, a, lda, iseed, work, info)
SLARGE