124 SUBROUTINE dgerq2( M, N, A, LDA, TAU, WORK, INFO )
132 INTEGER info, lda, m, n
135 DOUBLE PRECISION a( lda, * ), tau( * ), work( * )
142 parameter( one = 1.0d+0 )
161 ELSE IF( n.LT.0 )
THEN
163 ELSE IF( lda.LT.max( 1, m ) )
THEN
167 CALL
xerbla(
'DGERQ2', -info )
178 CALL
dlarfg( n-k+i, a( m-k+i, n-k+i ), a( m-k+i, 1 ), lda,
183 aii = a( m-k+i, n-k+i )
184 a( m-k+i, n-k+i ) = one
185 CALL
dlarf(
'Right', m-k+i-1, n-k+i, a( m-k+i, 1 ), lda,
186 $ tau( i ), a, lda, work )
187 a( m-k+i, n-k+i ) = aii