79 DOUBLE PRECISION A( nmax, nmax ), T( nmax, nmax ), W( nmax ),
80 $ b( nmax, nmax ), c( nmax, nmax )
92 COMMON / infoc / infot, nout, ok, lerr
93 COMMON / srnamc / srnamt
101 WRITE( nout, fmt = * )
107 a( i, j ) = 1.d0 / dble( i+j )
108 c( i, j ) = 1.d0 / dble( i+j )
109 t( i, j ) = 1.d0 / dble( i+j )
121 CALL
dtpqrt( -1, 1, 0, 1, a, 1, b, 1, t, 1, w, info )
122 CALL
chkxer(
'DTPQRT', infot, nout, lerr, ok )
124 CALL
dtpqrt( 1, -1, 0, 1, a, 1, b, 1, t, 1, w, info )
125 CALL
chkxer(
'DTPQRT', infot, nout, lerr, ok )
127 CALL
dtpqrt( 0, 1, -1, 1, a, 1, b, 1, t, 1, w, info )
128 CALL
chkxer(
'DTPQRT', infot, nout, lerr, ok )
130 CALL
dtpqrt( 0, 1, 1, 1, a, 1, b, 1, t, 1, w, info )
131 CALL
chkxer(
'DTPQRT', infot, nout, lerr, ok )
133 CALL
dtpqrt( 0, 1, 0, 0, a, 1, b, 1, t, 1, w, info )
134 CALL
chkxer(
'DTPQRT', infot, nout, lerr, ok )
136 CALL
dtpqrt( 0, 1, 0, 2, a, 1, b, 1, t, 1, w, info )
137 CALL
chkxer(
'DTPQRT', infot, nout, lerr, ok )
139 CALL
dtpqrt( 1, 2, 0, 2, a, 1, b, 1, t, 1, w, info )
140 CALL
chkxer(
'DTPQRT', infot, nout, lerr, ok )
142 CALL
dtpqrt( 2, 1, 0, 1, a, 1, b, 1, t, 1, w, info )
143 CALL
chkxer(
'DTPQRT', infot, nout, lerr, ok )
145 CALL
dtpqrt( 2, 2, 1, 2, a, 2, b, 2, t, 1, w, info )
146 CALL
chkxer(
'DTPQRT', infot, nout, lerr, ok )
152 CALL
dtpqrt2( -1, 0, 0, a, 1, b, 1, t, 1, info )
153 CALL
chkxer(
'DTPQRT2', infot, nout, lerr, ok )
155 CALL
dtpqrt2( 0, -1, 0, a, 1, b, 1, t, 1, info )
156 CALL
chkxer(
'DTPQRT2', infot, nout, lerr, ok )
158 CALL
dtpqrt2( 0, 0, -1, a, 1, b, 1, t, 1, info )
159 CALL
chkxer(
'DTPQRT2', infot, nout, lerr, ok )
161 CALL
dtpqrt2( 2, 2, 0, a, 1, b, 2, t, 2, info )
162 CALL
chkxer(
'DTPQRT2', infot, nout, lerr, ok )
164 CALL
dtpqrt2( 2, 2, 0, a, 2, b, 1, t, 2, info )
165 CALL
chkxer(
'DTPQRT2', infot, nout, lerr, ok )
167 CALL
dtpqrt2( 2, 2, 0, a, 2, b, 2, t, 1, info )
168 CALL
chkxer(
'DTPQRT2', infot, nout, lerr, ok )
174 CALL
dtpmqrt(
'/',
'N', 0, 0, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
176 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
178 CALL
dtpmqrt(
'L',
'/', 0, 0, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
180 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
182 CALL
dtpmqrt(
'L',
'N', -1, 0, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
184 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
186 CALL
dtpmqrt(
'L',
'N', 0, -1, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
188 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
190 CALL
dtpmqrt(
'L',
'N', 0, 0, -1, 0, 1, a, 1, t, 1, b, 1, c, 1,
193 CALL
dtpmqrt(
'L',
'N', 0, 0, 0, -1, 1, a, 1, t, 1, b, 1, c, 1,
195 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
197 CALL
dtpmqrt(
'L',
'N', 0, 0, 0, 0, 0, a, 1, t, 1, b, 1, c, 1,
199 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
201 CALL
dtpmqrt(
'R',
'N', 1, 2, 1, 1, 1, a, 1, t, 1, b, 1, c, 1,
203 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
205 CALL
dtpmqrt(
'L',
'N', 2, 1, 1, 1, 1, a, 1, t, 1, b, 1, c, 1,
207 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
209 CALL
dtpmqrt(
'R',
'N', 1, 1, 1, 1, 1, a, 1, t, 0, b, 1, c, 1,
211 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
213 CALL
dtpmqrt(
'L',
'N', 1, 1, 1, 1, 1, a, 1, t, 1, b, 0, c, 1,
215 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
217 CALL
dtpmqrt(
'L',
'N', 1, 1, 1, 1, 1, a, 1, t, 1, b, 1, c, 0,
219 CALL
chkxer(
'DTPMQRT', infot, nout, lerr, ok )
223 CALL
alaesm( path, ok, nout )
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
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, which is composed of a triangular block and a pentagonal block, using the compact WY representation for Q.
subroutine derrqrtp(PATH, NUNIT)
DERRQRTP
subroutine dtpqrt(M, N, L, NB, A, LDA, B, LDB, T, LDT, WORK, INFO)
DTPQRT
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine dtpmqrt(SIDE, TRANS, M, N, K, L, NB, V, LDV, T, LDT, A, LDA, B, LDB, WORK, INFO)
DTPMQRT