73 parameter ( nmax = 2 )
79 REAL 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.0 / float( i+j )
108 c( i, j ) = 1.0 / float( i+j )
109 t( i, j ) = 1.0 / float( i+j )
121 CALL stpqrt( -1, 1, 0, 1, a, 1, b, 1, t, 1, w, info )
122 CALL chkxer(
'STPQRT', infot, nout, lerr, ok )
124 CALL stpqrt( 1, -1, 0, 1, a, 1, b, 1, t, 1, w, info )
125 CALL chkxer(
'STPQRT', infot, nout, lerr, ok )
127 CALL stpqrt( 0, 1, -1, 1, a, 1, b, 1, t, 1, w, info )
128 CALL chkxer(
'STPQRT', infot, nout, lerr, ok )
130 CALL stpqrt( 0, 1, 1, 1, a, 1, b, 1, t, 1, w, info )
131 CALL chkxer(
'STPQRT', infot, nout, lerr, ok )
133 CALL stpqrt( 0, 1, 0, 0, a, 1, b, 1, t, 1, w, info )
134 CALL chkxer(
'STPQRT', infot, nout, lerr, ok )
136 CALL stpqrt( 0, 1, 0, 2, a, 1, b, 1, t, 1, w, info )
137 CALL chkxer(
'STPQRT', infot, nout, lerr, ok )
139 CALL stpqrt( 1, 2, 0, 2, a, 1, b, 1, t, 1, w, info )
140 CALL chkxer(
'STPQRT', infot, nout, lerr, ok )
142 CALL stpqrt( 2, 1, 0, 1, a, 1, b, 1, t, 1, w, info )
143 CALL chkxer(
'STPQRT', infot, nout, lerr, ok )
145 CALL stpqrt( 2, 2, 1, 2, a, 2, b, 2, t, 1, w, info )
146 CALL chkxer(
'STPQRT', infot, nout, lerr, ok )
152 CALL stpqrt2( -1, 0, 0, a, 1, b, 1, t, 1, info )
153 CALL chkxer(
'STPQRT2', infot, nout, lerr, ok )
155 CALL stpqrt2( 0, -1, 0, a, 1, b, 1, t, 1, info )
156 CALL chkxer(
'STPQRT2', infot, nout, lerr, ok )
158 CALL stpqrt2( 0, 0, -1, a, 1, b, 1, t, 1, info )
159 CALL chkxer(
'STPQRT2', infot, nout, lerr, ok )
161 CALL stpqrt2( 2, 2, 0, a, 1, b, 2, t, 2, info )
162 CALL chkxer(
'STPQRT2', infot, nout, lerr, ok )
164 CALL stpqrt2( 2, 2, 0, a, 2, b, 1, t, 2, info )
165 CALL chkxer(
'STPQRT2', infot, nout, lerr, ok )
167 CALL stpqrt2( 2, 2, 0, a, 2, b, 2, t, 1, info )
168 CALL chkxer(
'STPQRT2', infot, nout, lerr, ok )
174 CALL stpmqrt(
'/',
'N', 0, 0, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
176 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
178 CALL stpmqrt(
'L',
'/', 0, 0, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
180 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
182 CALL stpmqrt(
'L',
'N', -1, 0, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
184 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
186 CALL stpmqrt(
'L',
'N', 0, -1, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
188 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
190 CALL stpmqrt(
'L',
'N', 0, 0, -1, 0, 1, a, 1, t, 1, b, 1, c, 1,
193 CALL stpmqrt(
'L',
'N', 0, 0, 0, -1, 1, a, 1, t, 1, b, 1, c, 1,
195 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
197 CALL stpmqrt(
'L',
'N', 0, 0, 0, 0, 0, a, 1, t, 1, b, 1, c, 1,
199 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
201 CALL stpmqrt(
'R',
'N', 1, 2, 1, 1, 1, a, 1, t, 1, b, 1, c, 1,
203 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
205 CALL stpmqrt(
'L',
'N', 2, 1, 1, 1, 1, a, 1, t, 1, b, 1, c, 1,
207 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
209 CALL stpmqrt(
'R',
'N', 1, 1, 1, 1, 1, a, 1, t, 0, b, 1, c, 1,
211 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
213 CALL stpmqrt(
'L',
'N', 1, 1, 1, 1, 1, a, 1, t, 1, b, 0, c, 1,
215 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
217 CALL stpmqrt(
'L',
'N', 1, 1, 1, 1, 1, a, 1, t, 1, b, 1, c, 0,
219 CALL chkxer(
'STPMQRT', infot, nout, lerr, ok )
223 CALL alaesm( path, ok, nout )
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine stpmqrt(SIDE, TRANS, M, N, K, L, NB, V, LDV, T, LDT, A, LDA, B, LDB, WORK, INFO)
STPMQRT
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
subroutine serrqrtp(PATH, NUNIT)
SERRQRTP
subroutine stpqrt(M, N, L, NB, A, LDA, B, LDB, T, LDT, WORK, INFO)
STPQRT
subroutine stpqrt2(M, N, L, A, LDA, B, LDB, T, LDT, INFO)
STPQRT2 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.