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.d0 /
REAL( i+j )
108 c( i, j ) = 1.d0 /
REAL( i+j )
109 t( i, j ) = 1.d0 /
REAL( i+j )
121 CALL stplqt( -1, 1, 0, 1, a, 1, b, 1, t, 1, w, info )
122 CALL chkxer(
'STPLQT', infot, nout, lerr, ok )
124 CALL stplqt( 1, -1, 0, 1, a, 1, b, 1, t, 1, w, info )
125 CALL chkxer(
'STPLQT', infot, nout, lerr, ok )
127 CALL stplqt( 0, 1, -1, 1, a, 1, b, 1, t, 1, w, info )
128 CALL chkxer(
'STPLQT', infot, nout, lerr, ok )
130 CALL stplqt( 0, 1, 1, 1, a, 1, b, 1, t, 1, w, info )
131 CALL chkxer(
'STPLQT', infot, nout, lerr, ok )
133 CALL stplqt( 0, 1, 0, 0, a, 1, b, 1, t, 1, w, info )
134 CALL chkxer(
'STPLQT', infot, nout, lerr, ok )
136 CALL stplqt( 1, 1, 0, 2, a, 1, b, 1, t, 1, w, info )
137 CALL chkxer(
'STPLQT', infot, nout, lerr, ok )
139 CALL stplqt( 2, 1, 0, 2, a, 1, b, 1, t, 1, w, info )
140 CALL chkxer(
'STPLQT', infot, nout, lerr, ok )
142 CALL stplqt( 2, 1, 0, 1, a, 2, b, 1, t, 1, w, info )
143 CALL chkxer(
'STPLQT', infot, nout, lerr, ok )
145 CALL stplqt( 2, 2, 1, 2, a, 2, b, 2, t, 1, w, info )
146 CALL chkxer(
'STPLQT', infot, nout, lerr, ok )
152 CALL stplqt2( -1, 0, 0, a, 1, b, 1, t, 1, info )
153 CALL chkxer(
'STPLQT2', infot, nout, lerr, ok )
155 CALL stplqt2( 0, -1, 0, a, 1, b, 1, t, 1, info )
156 CALL chkxer(
'STPLQT2', infot, nout, lerr, ok )
158 CALL stplqt2( 0, 0, -1, a, 1, b, 1, t, 1, info )
159 CALL chkxer(
'STPLQT2', infot, nout, lerr, ok )
161 CALL stplqt2( 2, 2, 0, a, 1, b, 2, t, 2, info )
162 CALL chkxer(
'STPLQT2', infot, nout, lerr, ok )
164 CALL stplqt2( 2, 2, 0, a, 2, b, 1, t, 2, info )
165 CALL chkxer(
'STPLQT2', infot, nout, lerr, ok )
167 CALL stplqt2( 2, 2, 0, a, 2, b, 2, t, 1, info )
168 CALL chkxer(
'STPLQT2', infot, nout, lerr, ok )
174 CALL stpmlqt(
'/',
'N', 0, 0, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
176 CALL chkxer(
'STPMLQT', infot, nout, lerr, ok )
178 CALL stpmlqt(
'L',
'/', 0, 0, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
180 CALL chkxer(
'STPMLQT', infot, nout, lerr, ok )
182 CALL stpmlqt(
'L',
'N', -1, 0, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
184 CALL chkxer(
'STPMLQT', infot, nout, lerr, ok )
186 CALL stpmlqt(
'L',
'N', 0, -1, 0, 0, 1, a, 1, t, 1, b, 1, c, 1,
188 CALL chkxer(
'STPMLQT', infot, nout, lerr, ok )
190 CALL stpmlqt(
'L',
'N', 0, 0, -1, 0, 1, a, 1, t, 1, b, 1, c, 1,
193 CALL stpmlqt(
'L',
'N', 0, 0, 0, -1, 1, a, 1, t, 1, b, 1, c, 1,
195 CALL chkxer(
'STPMLQT', infot, nout, lerr, ok )
197 CALL stpmlqt(
'L',
'N', 0, 0, 0, 0, 0, a, 1, t, 1, b, 1, c, 1,
199 CALL chkxer(
'STPMLQT', infot, nout, lerr, ok )
201 CALL stpmlqt(
'R',
'N', 2, 2, 2, 1, 1, a, 1, t, 1, b, 1, c, 1,
203 CALL chkxer(
'STPMLQT', infot, nout, lerr, ok )
205 CALL stpmlqt(
'R',
'N', 1, 1, 1, 1, 1, a, 1, t, 0, b, 1, c, 1,
207 CALL chkxer(
'STPMLQT', infot, nout, lerr, ok )
209 CALL stpmlqt(
'L',
'N', 1, 1, 1, 1, 1, a, 1, t, 1, b, 0, c, 1,
211 CALL chkxer(
'STPMLQT', infot, nout, lerr, ok )
213 CALL stpmlqt(
'L',
'N', 1, 1, 1, 1, 1, a, 1, t, 1, b, 1, c, 0,
215 CALL chkxer(
'STPMLQT', infot, nout, lerr, ok )
219 CALL alaesm( path, ok, nout )
subroutine alaesm(PATH, OK, NOUT)
ALAESM
subroutine stplqt(M, N, L, MB, A, LDA, B, LDB, T, LDT, WORK, INFO)
STPLQT
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
subroutine stpmlqt(SIDE, TRANS, M, N, K, L, MB, V, LDV, T, LDT, A, LDA, B, LDB, WORK, INFO)
DTPMLQT
subroutine stplqt2(M, N, L, A, LDA, B, LDB, T, LDT, INFO)
STPLQT2 computes a LQ 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.