70 DOUBLE PRECISION ONE, ZERO
71 parameter( nmax = 4, one = 1.0d0, zero = 0.0d0 )
74 INTEGER I, IFST, ILST, INFO, J, M, NT
75 DOUBLE PRECISION SCALE
80 DOUBLE PRECISION A( NMAX, NMAX ), B( NMAX, NMAX ),
81 $ C( NMAX, NMAX ), S( NMAX ), SEP( NMAX ),
82 $ WI( NMAX ), WORK( NMAX ), WR( NMAX )
93 COMMON / infoc / infot, nout, ok, lerr
94 COMMON / srnamc / srnamt
119 CALL dtrsyl(
'X',
'N', 1, 0, 0, a, 1, b, 1, c, 1, scale, info )
120 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
122 CALL dtrsyl(
'N',
'X', 1, 0, 0, a, 1, b, 1, c, 1, scale, info )
123 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
125 CALL dtrsyl(
'N',
'N', 0, 0, 0, a, 1, b, 1, c, 1, scale, info )
126 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
128 CALL dtrsyl(
'N',
'N', 1, -1, 0, a, 1, b, 1, c, 1, scale, info )
129 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
131 CALL dtrsyl(
'N',
'N', 1, 0, -1, a, 1, b, 1, c, 1, scale, info )
132 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
134 CALL dtrsyl(
'N',
'N', 1, 2, 0, a, 1, b, 1, c, 2, scale, info )
135 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
137 CALL dtrsyl(
'N',
'N', 1, 0, 2, a, 1, b, 1, c, 1, scale, info )
138 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
140 CALL dtrsyl(
'N',
'N', 1, 2, 0, a, 2, b, 1, c, 1, scale, info )
141 CALL chkxer(
'DTRSYL', infot, nout, lerr, ok )
148 CALL dtrsyl3(
'X',
'N', 1, 0, 0, a, 1, b, 1, c, 1, scale,
149 $ iwork, nmax, work, nmax, info )
150 CALL chkxer(
'DTRSYL3', infot, nout, lerr, ok )
152 CALL dtrsyl3(
'N',
'X', 1, 0, 0, a, 1, b, 1, c, 1, scale,
153 $ iwork, nmax, work, nmax, info )
154 CALL chkxer(
'DTRSYL3', infot, nout, lerr, ok )
156 CALL dtrsyl3(
'N',
'N', 0, 0, 0, a, 1, b, 1, c, 1, scale,
157 $ iwork, nmax, work, nmax, info )
158 CALL chkxer(
'DTRSYL3', infot, nout, lerr, ok )
160 CALL dtrsyl3(
'N',
'N', 1, -1, 0, a, 1, b, 1, c, 1, scale,
161 $ iwork, nmax, work, nmax, info )
162 CALL chkxer(
'DTRSYL3', infot, nout, lerr, ok )
164 CALL dtrsyl3(
'N',
'N', 1, 0, -1, a, 1, b, 1, c, 1, scale,
165 $ iwork, nmax, work, nmax, info )
166 CALL chkxer(
'DTRSYL3', infot, nout, lerr, ok )
168 CALL dtrsyl3(
'N',
'N', 1, 2, 0, a, 1, b, 1, c, 2, scale,
169 $ iwork, nmax, work, nmax, info )
170 CALL chkxer(
'DTRSYL3', infot, nout, lerr, ok )
172 CALL dtrsyl3(
'N',
'N', 1, 0, 2, a, 1, b, 1, c, 1, scale,
173 $ iwork, nmax, work, nmax, info )
174 CALL chkxer(
'DTRSYL3', infot, nout, lerr, ok )
176 CALL dtrsyl3(
'N',
'N', 1, 2, 0, a, 2, b, 1, c, 1, scale,
177 $ iwork, nmax, work, nmax, info )
178 CALL chkxer(
'DTRSYL3', infot, nout, lerr, ok )
187 CALL dtrexc(
'X', 1, a, 1, b, 1, ifst, ilst, work, info )
188 CALL chkxer(
'DTREXC', infot, nout, lerr, ok )
190 CALL dtrexc(
'N', -1, a, 1, b, 1, ifst, ilst, work, info )
191 CALL chkxer(
'DTREXC', infot, nout, lerr, ok )
194 CALL dtrexc(
'N', 2, a, 1, b, 1, ifst, ilst, work, info )
195 CALL chkxer(
'DTREXC', infot, nout, lerr, ok )
197 CALL dtrexc(
'V', 2, a, 2, b, 1, ifst, ilst, work, info )
198 CALL chkxer(
'DTREXC', infot, nout, lerr, ok )
202 CALL dtrexc(
'V', 1, a, 1, b, 1, ifst, ilst, work, info )
203 CALL chkxer(
'DTREXC', infot, nout, lerr, ok )
206 CALL dtrexc(
'V', 1, a, 1, b, 1, ifst, ilst, work, info )
207 CALL chkxer(
'DTREXC', infot, nout, lerr, ok )
211 CALL dtrexc(
'V', 1, a, 1, b, 1, ifst, ilst, work, info )
212 CALL chkxer(
'DTREXC', infot, nout, lerr, ok )
215 CALL dtrexc(
'V', 1, a, 1, b, 1, ifst, ilst, work, info )
216 CALL chkxer(
'DTREXC', infot, nout, lerr, ok )
223 CALL dtrsna(
'X',
'A', sel, 0, a, 1, b, 1, c, 1, s, sep, 1, m,
224 $ work, 1, iwork, info )
225 CALL chkxer(
'DTRSNA', infot, nout, lerr, ok )
227 CALL dtrsna(
'B',
'X', sel, 0, a, 1, b, 1, c, 1, s, sep, 1, m,
228 $ work, 1, iwork, info )
229 CALL chkxer(
'DTRSNA', infot, nout, lerr, ok )
231 CALL dtrsna(
'B',
'A', sel, -1, a, 1, b, 1, c, 1, s, sep, 1, m,
232 $ work, 1, iwork, info )
233 CALL chkxer(
'DTRSNA', infot, nout, lerr, ok )
235 CALL dtrsna(
'V',
'A', sel, 2, a, 1, b, 1, c, 1, s, sep, 2, m,
236 $ work, 2, iwork, info )
237 CALL chkxer(
'DTRSNA', infot, nout, lerr, ok )
239 CALL dtrsna(
'B',
'A', sel, 2, a, 2, b, 1, c, 2, s, sep, 2, m,
240 $ work, 2, iwork, info )
241 CALL chkxer(
'DTRSNA', infot, nout, lerr, ok )
243 CALL dtrsna(
'B',
'A', sel, 2, a, 2, b, 2, c, 1, s, sep, 2, m,
244 $ work, 2, iwork, info )
245 CALL chkxer(
'DTRSNA', infot, nout, lerr, ok )
247 CALL dtrsna(
'B',
'A', sel, 1, a, 1, b, 1, c, 1, s, sep, 0, m,
248 $ work, 1, iwork, info )
249 CALL chkxer(
'DTRSNA', infot, nout, lerr, ok )
251 CALL dtrsna(
'B',
'S', sel, 2, a, 2, b, 2, c, 2, s, sep, 1, m,
252 $ work, 2, iwork, info )
253 CALL chkxer(
'DTRSNA', infot, nout, lerr, ok )
255 CALL dtrsna(
'B',
'A', sel, 2, a, 2, b, 2, c, 2, s, sep, 2, m,
256 $ work, 1, iwork, info )
257 CALL chkxer(
'DTRSNA', infot, nout, lerr, ok )
265 CALL dtrsen(
'X',
'N', sel, 0, a, 1, b, 1, wr, wi, m, s( 1 ),
266 $ sep( 1 ), work, 1, iwork, 1, info )
267 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
269 CALL dtrsen(
'N',
'X', sel, 0, a, 1, b, 1, wr, wi, m, s( 1 ),
270 $ sep( 1 ), work, 1, iwork, 1, info )
271 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
273 CALL dtrsen(
'N',
'N', sel, -1, a, 1, b, 1, wr, wi, m, s( 1 ),
274 $ sep( 1 ), work, 1, iwork, 1, info )
275 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
277 CALL dtrsen(
'N',
'N', sel, 2, a, 1, b, 1, wr, wi, m, s( 1 ),
278 $ sep( 1 ), work, 2, iwork, 1, info )
279 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
281 CALL dtrsen(
'N',
'V', sel, 2, a, 2, b, 1, wr, wi, m, s( 1 ),
282 $ sep( 1 ), work, 1, iwork, 1, info )
283 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
285 CALL dtrsen(
'N',
'V', sel, 2, a, 2, b, 2, wr, wi, m, s( 1 ),
286 $ sep( 1 ), work, 0, iwork, 1, info )
287 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
289 CALL dtrsen(
'E',
'V', sel, 3, a, 3, b, 3, wr, wi, m, s( 1 ),
290 $ sep( 1 ), work, 1, iwork, 1, info )
291 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
293 CALL dtrsen(
'V',
'V', sel, 3, a, 3, b, 3, wr, wi, m, s( 1 ),
294 $ sep( 1 ), work, 3, iwork, 2, info )
295 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
297 CALL dtrsen(
'E',
'V', sel, 2, a, 2, b, 2, wr, wi, m, s( 1 ),
298 $ sep( 1 ), work, 1, iwork, 0, info )
299 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
301 CALL dtrsen(
'V',
'V', sel, 3, a, 3, b, 3, wr, wi, m, s( 1 ),
302 $ sep( 1 ), work, 4, iwork, 1, info )
303 CALL chkxer(
'DTRSEN', infot, nout, lerr, ok )
309 WRITE( nout, fmt = 9999 )path, nt
311 WRITE( nout, fmt = 9998 )path
315 9999
FORMAT( 1x, a3,
' routines passed the tests of the error exits (',
316 $ i3,
' tests done)' )
317 9998
FORMAT(
' *** ', a3,
' routines failed the tests of the error ex',