115 SUBROUTINE sorgr2( M, N, K, A, LDA, TAU, WORK, INFO )
123 INTEGER INFO, K, LDA, M, N
126 REAL A( lda, * ), TAU( * ), WORK( * )
133 parameter ( one = 1.0e+0, zero = 0.0e+0 )
151 ELSE IF( n.LT.m )
THEN
153 ELSE IF( k.LT.0 .OR. k.GT.m )
THEN
155 ELSE IF( lda.LT.max( 1, m ) )
THEN
159 CALL xerbla(
'SORGR2', -info )
176 IF( j.GT.n-m .AND. j.LE.n-k )
177 $ a( m-n+j, j ) = one
186 a( ii, n-m+ii ) = one
187 CALL slarf(
'Right', ii-1, n-m+ii, a( ii, 1 ), lda, tau( i ),
189 CALL sscal( n-m+ii-1, -tau( i ), a( ii, 1 ), lda )
190 a( ii, n-m+ii ) = one - tau( i )
194 DO 30 l = n - m + ii + 1, n
subroutine sorgr2(M, N, K, A, LDA, TAU, WORK, INFO)
SORGR2 generates all or part of the orthogonal matrix Q from an RQ factorization determined by sgerqf...
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine sscal(N, SA, SX, INCX)
SSCAL
subroutine slarf(SIDE, M, N, V, INCV, TAU, C, LDC, WORK)
SLARF applies an elementary reflector to a general rectangular matrix.