122 SUBROUTINE dgeqr2( M, N, A, LDA, TAU, WORK, INFO )
130 INTEGER INFO, LDA, M, N
133 DOUBLE PRECISION A( lda, * ), TAU( * ), WORK( * )
140 parameter( one = 1.0d+0 )
159 ELSE IF( n.LT.0 )
THEN
161 ELSE IF( lda.LT.max( 1, m ) )
THEN
165 CALL xerbla(
'DGEQR2', -info )
175 CALL dlarfg( m-i+1, a( i, i ), a( min( i+1, m ), i ), 1,
183 CALL dlarf(
'Left', m-i+1, n-i, a( i, i ), 1, tau( i ),
184 $ a( i, i+1 ), lda, work )
subroutine dlarfg(N, ALPHA, X, INCX, TAU)
DLARFG generates an elementary reflector (Householder matrix).
subroutine xerbla(SRNAME, INFO)
XERBLA
subroutine dlarf(SIDE, M, N, V, INCV, TAU, C, LDC, WORK)
DLARF applies an elementary reflector to a general rectangular matrix.
subroutine dgeqr2(M, N, A, LDA, TAU, WORK, INFO)
DGEQR2 computes the QR factorization of a general rectangular matrix using an unblocked algorithm...