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 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