140 SUBROUTINE zgeqrt( M, N, NB, A, LDA, T, LDT, WORK, INFO )
147 INTEGER INFO, LDA, LDT, M, N, NB
150 COMPLEX*16 A( LDA, * ), T( , * ), WORK( * )
157 INTEGER I, IB, IINFO, K
158 LOGICAL USE_RECURSIVE_QR
159 parameter( use_recursive_qr=.true. )
171 ELSE IF( n.LT.0 )
THEN
173 ELSE IF( nb.LT.1 .OR. ( nb.GT.
min(m,n) .AND.
min(m,n).GT.0 ) )
THEN
175 ELSE IF( lda.LT.
max( 1, m ) )
THEN
177 ELSE IF( ldt.LT.nb )
THEN
193 IB = MIN( K-I+1, NB )
197 IF( USE_RECURSIVE_QR ) THEN
198 CALL ZGEQRT3( M-I+1, IB, A(I,I), LDA, T(1,I), LDT, IINFO )
200 CALL ZGEQRT2( M-I+1, IB, A(I,I), LDA, T(1,I), LDT, IINFO )
206 CALL ZLARFB( 'l
', 'c
', 'f
', 'c
', M-I+1, N-I-IB+1, IB,
207 $ A( I, I ), LDA, T( 1, I ), LDT,
208 $ A( I, I+IB ), LDA, WORK , N-I-IB+1 )
subroutine xerbla(srname, info)
XERBLA
recursive subroutine zgeqrt3(m, n, a, lda, t, ldt, info)
ZGEQRT3 recursively computes a QR factorization of a general real or complex matrix using the compact...
subroutine zgeqrt(m, n, nb, a, lda, t, ldt, work, info)
ZGEQRT
subroutine zgeqrt2(m, n, a, lda, t, ldt, info)
ZGEQRT2 computes a QR factorization of a general real or complex matrix using the compact WY represen...
subroutine zlarfb(side, trans, direct, storev, m, n, k, v, ldv, t, ldt, c, ldc, work, ldwork)
ZLARFB applies a block reflector or its conjugate-transpose to a general rectangular matrix.