77 DOUBLE PRECISION RCOND, SCALE
81 DOUBLE PRECISION A( NMAX, NMAX ), B( NMAX ), R1( NMAX ),
82 $ R2( NMAX ), W( NMAX ), X( NMAX )
99 COMMON / infoc / infot, nout, ok, lerr
100 COMMON / srnamc / srnamt
105 WRITE( nout, fmt = * )
113 IF(
lsamen( 2, c2,
'TR' ) )
THEN
121 CALL dtrtri(
'/',
'N', 0, a, 1, info )
122 CALL chkxer(
'DTRTRI', infot, nout, lerr, ok )
124 CALL dtrtri(
'U',
'/', 0, a, 1, info )
125 CALL chkxer(
'DTRTRI', infot, nout, lerr, ok )
127 CALL dtrtri(
'U',
'N', -1, a, 1, info )
128 CALL chkxer(
'DTRTRI', infot, nout, lerr, ok )
130 CALL dtrtri(
'U',
'N', 2, a, 1, info )
131 CALL chkxer(
'DTRTRI', infot, nout, lerr, ok )
137 CALL dtrti2(
'/',
'N', 0, a, 1, info )
138 CALL chkxer(
'DTRTI2', infot, nout, lerr, ok )
140 CALL dtrti2(
'U',
'/', 0, a, 1, info )
141 CALL chkxer(
'DTRTI2', infot, nout, lerr, ok )
143 CALL dtrti2(
'U',
'N', -1, a, 1, info )
144 CALL chkxer(
'DTRTI2', infot, nout, lerr, ok )
146 CALL dtrti2(
'U',
'N', 2, a, 1, info )
147 CALL chkxer(
'DTRTI2', infot, nout, lerr, ok )
153 CALL dtrtrs(
'/',
'N',
'N', 0, 0, a, 1, x, 1, info )
154 CALL chkxer(
'DTRTRS', infot, nout, lerr, ok )
156 CALL dtrtrs(
'U',
'/',
'N', 0, 0, a, 1, x, 1, info )
157 CALL chkxer(
'DTRTRS', infot, nout, lerr, ok )
159 CALL dtrtrs(
'U',
'N',
'/', 0, 0, a, 1, x, 1, info )
160 CALL chkxer(
'DTRTRS', infot, nout, lerr, ok )
162 CALL dtrtrs(
'U',
'N',
'N', -1, 0, a, 1, x, 1, info )
163 CALL chkxer(
'DTRTRS', infot, nout, lerr, ok )
165 CALL dtrtrs(
'U',
'N',
'N', 0, -1, a, 1, x, 1, info )
166 CALL chkxer(
'DTRTRS', infot, nout, lerr, ok )
168 CALL dtrtrs(
'U',
'N',
'N', 2, 1, a, 1, x, 2, info )
169 CALL chkxer(
'DTRTRS', infot, nout, lerr, ok )
171 CALL dtrtrs(
'U',
'N',
'N', 2, 1, a, 2, x, 1, info )
172 CALL chkxer(
'DTRTRS', infot, nout, lerr, ok )
178 CALL dtrrfs(
'/',
'N',
'N', 0, 0, a, 1, b, 1, x, 1, r1, r2, w,
180 CALL chkxer(
'DTRRFS', infot, nout, lerr, ok )
182 CALL dtrrfs(
'U',
'/',
'N', 0, 0, a, 1, b, 1, x, 1, r1, r2, w,
184 CALL chkxer(
'DTRRFS', infot, nout, lerr, ok )
186 CALL dtrrfs(
'U',
'N',
'/', 0, 0, a, 1, b, 1, x, 1, r1, r2, w,
188 CALL chkxer(
'DTRRFS', infot, nout, lerr, ok )
190 CALL dtrrfs(
'U',
'N',
'N', -1, 0, a, 1, b, 1, x, 1, r1, r2, w,
192 CALL chkxer(
'DTRRFS', infot, nout, lerr, ok )
194 CALL dtrrfs(
'U',
'N',
'N', 0, -1, a, 1, b, 1, x, 1, r1, r2, w,
196 CALL chkxer(
'DTRRFS', infot, nout, lerr, ok )
198 CALL dtrrfs(
'U',
'N',
'N', 2, 1, a, 1, b, 2, x, 2, r1, r2, w,
200 CALL chkxer(
'DTRRFS', infot, nout, lerr, ok )
202 CALL dtrrfs(
'U',
'N',
'N', 2, 1, a, 2, b, 1, x, 2, r1, r2, w,
204 CALL chkxer(
'DTRRFS', infot, nout, lerr, ok )
206 CALL dtrrfs(
'U',
'N',
'N', 2, 1, a, 2, b, 2, x, 1, r1, r2, w,
208 CALL chkxer(
'DTRRFS', infot, nout, lerr, ok )
214 CALL dtrcon(
'/',
'U',
'N', 0, a, 1, rcond, w, iw, info )
215 CALL chkxer(
'DTRCON', infot, nout, lerr, ok )
217 CALL dtrcon(
'1',
'/',
'N', 0, a, 1, rcond, w, iw, info )
218 CALL chkxer(
'DTRCON', infot, nout, lerr, ok )
220 CALL dtrcon(
'1',
'U',
'/', 0, a, 1, rcond, w, iw, info )
221 CALL chkxer(
'DTRCON', infot, nout, lerr, ok )
223 CALL dtrcon(
'1',
'U',
'N', -1, a, 1, rcond, w, iw, info )
224 CALL chkxer(
'DTRCON', infot, nout, lerr, ok )
226 CALL dtrcon(
'1',
'U',
'N', 2, a, 1, rcond, w, iw, info )
227 CALL chkxer(
'DTRCON', infot, nout, lerr, ok )
233 CALL dlatrs(
'/',
'N',
'N',
'N', 0, a, 1, x, scale, w, info )
234 CALL chkxer(
'DLATRS', infot, nout, lerr, ok )
236 CALL dlatrs(
'U',
'/',
'N',
'N', 0, a, 1, x, scale, w, info )
237 CALL chkxer(
'DLATRS', infot, nout, lerr, ok )
239 CALL dlatrs(
'U',
'N',
'/',
'N', 0, a, 1, x, scale, w, info )
240 CALL chkxer(
'DLATRS', infot, nout, lerr, ok )
242 CALL dlatrs(
'U',
'N',
'N',
'/', 0, a, 1, x, scale, w, info )
243 CALL chkxer(
'DLATRS', infot, nout, lerr, ok )
245 CALL dlatrs(
'U',
'N',
'N',
'N', -1, a, 1, x, scale, w, info )
246 CALL chkxer(
'DLATRS', infot, nout, lerr, ok )
248 CALL dlatrs(
'U',
'N',
'N',
'N', 2, a, 1, x, scale, w, info )
249 CALL chkxer(
'DLATRS', infot, nout, lerr, ok )
251 ELSE IF(
lsamen( 2, c2,
'TP' ) )
THEN
259 CALL dtptri(
'/',
'N', 0, a, info )
260 CALL chkxer(
'DTPTRI', infot, nout, lerr, ok )
262 CALL dtptri(
'U',
'/', 0, a, info )
263 CALL chkxer(
'DTPTRI', infot, nout, lerr, ok )
265 CALL dtptri(
'U',
'N', -1, a, info )
266 CALL chkxer(
'DTPTRI', infot, nout, lerr, ok )
272 CALL dtptrs(
'/',
'N',
'N', 0, 0, a, x, 1, info )
273 CALL chkxer(
'DTPTRS', infot, nout, lerr, ok )
275 CALL dtptrs(
'U',
'/',
'N', 0, 0, a, x, 1, info )
276 CALL chkxer(
'DTPTRS', infot, nout, lerr, ok )
278 CALL dtptrs(
'U',
'N',
'/', 0, 0, a, x, 1, info )
279 CALL chkxer(
'DTPTRS', infot, nout, lerr, ok )
281 CALL dtptrs(
'U',
'N',
'N', -1, 0, a, x, 1, info )
282 CALL chkxer(
'DTPTRS', infot, nout, lerr, ok )
284 CALL dtptrs(
'U',
'N',
'N', 0, -1, a, x, 1, info )
285 CALL chkxer(
'DTPTRS', infot, nout, lerr, ok )
287 CALL dtptrs(
'U',
'N',
'N', 2, 1, a, x, 1, info )
288 CALL chkxer(
'DTPTRS', infot, nout, lerr, ok )
294 CALL dtprfs(
'/',
'N',
'N', 0, 0, a, b, 1, x, 1, r1, r2, w, iw,
296 CALL chkxer(
'DTPRFS', infot, nout, lerr, ok )
298 CALL dtprfs(
'U',
'/',
'N', 0, 0, a, b, 1, x, 1, r1, r2, w, iw,
300 CALL chkxer(
'DTPRFS', infot, nout, lerr, ok )
302 CALL dtprfs(
'U',
'N',
'/', 0, 0, a, b, 1, x, 1, r1, r2, w, iw,
304 CALL chkxer(
'DTPRFS', infot, nout, lerr, ok )
306 CALL dtprfs(
'U',
'N',
'N', -1, 0, a, b, 1, x, 1, r1, r2, w,
308 CALL chkxer(
'DTPRFS', infot, nout, lerr, ok )
310 CALL dtprfs(
'U',
'N',
'N', 0, -1, a, b, 1, x, 1, r1, r2, w,
312 CALL chkxer(
'DTPRFS', infot, nout, lerr, ok )
314 CALL dtprfs(
'U',
'N',
'N', 2, 1, a, b, 1, x, 2, r1, r2, w, iw,
316 CALL chkxer(
'DTPRFS', infot, nout, lerr, ok )
318 CALL dtprfs(
'U',
'N',
'N', 2, 1, a, b, 2, x, 1, r1, r2, w, iw,
320 CALL chkxer(
'DTPRFS', infot, nout, lerr, ok )
326 CALL dtpcon(
'/',
'U',
'N', 0, a, rcond, w, iw, info )
327 CALL chkxer(
'DTPCON', infot, nout, lerr, ok )
329 CALL dtpcon(
'1',
'/',
'N', 0, a, rcond, w, iw, info )
330 CALL chkxer(
'DTPCON', infot, nout, lerr, ok )
332 CALL dtpcon(
'1',
'U',
'/', 0, a, rcond, w, iw, info )
333 CALL chkxer(
'DTPCON', infot, nout, lerr, ok )
335 CALL dtpcon(
'1',
'U',
'N', -1, a, rcond, w, iw, info )
336 CALL chkxer(
'DTPCON', infot, nout, lerr, ok )
342 CALL dlatps(
'/',
'N',
'N',
'N', 0, a, x, scale, w, info )
343 CALL chkxer(
'DLATPS', infot, nout, lerr, ok )
345 CALL dlatps(
'U',
'/',
'N',
'N', 0, a, x, scale, w, info )
346 CALL chkxer(
'DLATPS', infot, nout, lerr, ok )
348 CALL dlatps(
'U',
'N',
'/',
'N', 0, a, x, scale, w, info )
349 CALL chkxer(
'DLATPS', infot, nout, lerr, ok )
351 CALL dlatps(
'U',
'N',
'N',
'/', 0, a, x, scale, w, info )
352 CALL chkxer(
'DLATPS', infot, nout, lerr, ok )
354 CALL dlatps(
'U',
'N',
'N',
'N', -1, a, x, scale, w, info )
355 CALL chkxer(
'DLATPS', infot, nout, lerr, ok )
357 ELSE IF(
lsamen( 2, c2,
'TB' ) )
THEN
365 CALL dtbtrs(
'/',
'N',
'N', 0, 0, 0, a, 1, x, 1, info )
366 CALL chkxer(
'DTBTRS', infot, nout, lerr, ok )
368 CALL dtbtrs(
'U',
'/',
'N', 0, 0, 0, a, 1, x, 1, info )
369 CALL chkxer(
'DTBTRS', infot, nout, lerr, ok )
371 CALL dtbtrs(
'U',
'N',
'/', 0, 0, 0, a, 1, x, 1, info )
372 CALL chkxer(
'DTBTRS', infot, nout, lerr, ok )
374 CALL dtbtrs(
'U',
'N',
'N', -1, 0, 0, a, 1, x, 1, info )
375 CALL chkxer(
'DTBTRS', infot, nout, lerr, ok )
377 CALL dtbtrs(
'U',
'N',
'N', 0, -1, 0, a, 1, x, 1, info )
378 CALL chkxer(
'DTBTRS', infot, nout, lerr, ok )
380 CALL dtbtrs(
'U',
'N',
'N', 0, 0, -1, a, 1, x, 1, info )
381 CALL chkxer(
'DTBTRS', infot, nout, lerr, ok )
383 CALL dtbtrs(
'U',
'N',
'N', 2, 1, 1, a, 1, x, 2, info )
384 CALL chkxer(
'DTBTRS', infot, nout, lerr, ok )
386 CALL dtbtrs(
'U',
'N',
'N', 2, 0, 1, a, 1, x, 1, info )
387 CALL chkxer(
'DTBTRS', infot, nout, lerr, ok )
393 CALL dtbrfs(
'/',
'N',
'N', 0, 0, 0, a, 1, b, 1, x, 1, r1, r2,
395 CALL chkxer(
'DTBRFS', infot, nout, lerr, ok )
397 CALL dtbrfs(
'U',
'/',
'N', 0, 0, 0, a, 1, b, 1, x, 1, r1, r2,
399 CALL chkxer(
'DTBRFS', infot, nout, lerr, ok )
401 CALL dtbrfs(
'U',
'N',
'/', 0, 0, 0, a, 1, b, 1, x, 1, r1, r2,
403 CALL chkxer(
'DTBRFS', infot, nout, lerr, ok )
405 CALL dtbrfs(
'U',
'N',
'N', -1, 0, 0, a, 1, b, 1, x, 1, r1, r2,
407 CALL chkxer(
'DTBRFS', infot, nout, lerr, ok )
409 CALL dtbrfs(
'U',
'N',
'N', 0, -1, 0, a, 1, b, 1, x, 1, r1, r2,
411 CALL chkxer(
'DTBRFS', infot, nout, lerr, ok )
413 CALL dtbrfs(
'U',
'N',
'N', 0, 0, -1, a, 1, b, 1, x, 1, r1, r2,
415 CALL chkxer(
'DTBRFS', infot, nout, lerr, ok )
417 CALL dtbrfs(
'U',
'N',
'N', 2, 1, 1, a, 1, b, 2, x, 2, r1, r2,
419 CALL chkxer(
'DTBRFS', infot, nout, lerr, ok )
421 CALL dtbrfs(
'U',
'N',
'N', 2, 1, 1, a, 2, b, 1, x, 2, r1, r2,
423 CALL chkxer(
'DTBRFS', infot, nout, lerr, ok )
425 CALL dtbrfs(
'U',
'N',
'N', 2, 1, 1, a, 2, b, 2, x, 1, r1, r2,
427 CALL chkxer(
'DTBRFS', infot, nout, lerr, ok )
433 CALL dtbcon(
'/',
'U',
'N', 0, 0, a, 1, rcond, w, iw, info )
434 CALL chkxer(
'DTBCON', infot, nout, lerr, ok )
436 CALL dtbcon(
'1',
'/',
'N', 0, 0, a, 1, rcond, w, iw, info )
437 CALL chkxer(
'DTBCON', infot, nout, lerr, ok )
439 CALL dtbcon(
'1',
'U',
'/', 0, 0, a, 1, rcond, w, iw, info )
440 CALL chkxer(
'DTBCON', infot, nout, lerr, ok )
442 CALL dtbcon(
'1',
'U',
'N', -1, 0, a, 1, rcond, w, iw, info )
443 CALL chkxer(
'DTBCON', infot, nout, lerr, ok )
445 CALL dtbcon(
'1',
'U',
'N', 0, -1, a, 1, rcond, w, iw, info )
446 CALL chkxer(
'DTBCON', infot, nout, lerr, ok )
448 CALL dtbcon(
'1',
'U',
'N', 2, 1, a, 1, rcond, w, iw, info )
449 CALL chkxer(
'DTBCON', infot, nout, lerr, ok )
455 CALL dlatbs(
'/',
'N',
'N',
'N', 0, 0, a, 1, x, scale, w,
457 CALL chkxer(
'DLATBS', infot, nout, lerr, ok )
459 CALL dlatbs(
'U',
'/',
'N',
'N', 0, 0, a, 1, x, scale, w,
461 CALL chkxer(
'DLATBS', infot, nout, lerr, ok )
463 CALL dlatbs(
'U',
'N',
'/',
'N', 0, 0, a, 1, x, scale, w,
465 CALL chkxer(
'DLATBS', infot, nout, lerr, ok )
467 CALL dlatbs(
'U',
'N',
'N',
'/', 0, 0, a, 1, x, scale, w,
469 CALL chkxer(
'DLATBS', infot, nout, lerr, ok )
471 CALL dlatbs(
'U',
'N',
'N',
'N', -1, 0, a, 1, x, scale, w,
473 CALL chkxer(
'DLATBS', infot, nout, lerr, ok )
475 CALL dlatbs(
'U',
'N',
'N',
'N', 1, -1, a, 1, x, scale, w,
477 CALL chkxer(
'DLATBS', infot, nout, lerr, ok )
479 CALL dlatbs(
'U',
'N',
'N',
'N', 2, 1, a, 1, x, scale, w,
481 CALL chkxer(
'DLATBS', infot, nout, lerr, ok )
486 CALL alaesm( path, ok, nout )