185 SUBROUTINE dtpqrt( M, N, L, NB, A, LDA, B, LDB, T, LDT, WORK,
193 INTEGER INFO, LDA, LDB, LDT, N, M, L, NB
196 DOUBLE PRECISION A( LDA, * ), B( LDB, * ), T( LDT, * ), WORK( * )
203 INTEGER I, IB, LB, MB, IINFO
215 ELSE IF( n.LT.0 )
THEN
217 ELSE IF( l.LT.0 .OR. (l.GT.min(m,n) .AND. min(m,n).GE.0))
THEN
219 ELSE IF( nb.LT.1 .OR. (nb.GT.n .AND. n.GT.0))
THEN
221 ELSE IF( lda.LT.max( 1, n ) )
THEN
223 ELSE IF( ldb.LT.max( 1, m ) )
THEN
225 ELSE IF( ldt.LT.nb )
THEN
229 CALL xerbla(
'DTPQRT', -info )
235 IF( m.EQ.0 .OR. n.EQ.0 )
RETURN
241 ib = min( n-i+1, nb )
242 mb = min( m-l+i+ib-1, m )
249 CALL dtpqrt2( mb, ib, lb, a(i,i), lda, b( 1, i ), ldb,
250 $ t(1, i ), ldt, iinfo )
255 CALL dtprfb(
'L',
'T',
'F',
'C', mb, n-i-ib+1, ib, lb,
256 $ b( 1, i ), ldb, t( 1, i ), ldt,
257 $ a( i, i+ib ), lda, b( 1, i+ib ), ldb,
subroutine dtpqrt2(m, n, l, a, lda, b, ldb, t, ldt, info)
DTPQRT2 computes a QR factorization of a real or complex "triangular-pentagonal" matrix,...
subroutine dtpqrt(m, n, l, nb, a, lda, b, ldb, t, ldt, work, info)
DTPQRT
subroutine dtprfb(side, trans, direct, storev, m, n, k, l, v, ldv, t, ldt, a, lda, b, ldb, work, ldwork)
DTPRFB applies a real "triangular-pentagonal" block reflector to a real matrix, which is composed of ...