78 DOUBLE PRECISION RCOND
81 INTEGER IP( nmax ), IW( nmax )
82 DOUBLE PRECISION A( nmax, nmax ), AF( nmax, nmax ), B( nmax ),
83 $ c( nmax ), r( nmax ), r1( nmax ), r2( nmax ),
84 $ w( 2*nmax ), x( nmax )
102 COMMON / infoc / infot, nout, ok, lerr
103 COMMON / srnamc / srnamt
111 WRITE( nout, fmt = * )
118 a( i, j ) = 1.d0 / dble( i+j )
119 af( i, j ) = 1.d0 / dble( i+j )
133 IF( lsamen( 2, c2,
'GE' ) )
THEN
139 CALL
dgesv( -1, 0, a, 1, ip, b, 1, info )
140 CALL
chkxer(
'DGESV ', infot, nout, lerr, ok )
142 CALL
dgesv( 0, -1, a, 1, ip, b, 1, info )
143 CALL
chkxer(
'DGESV ', infot, nout, lerr, ok )
145 CALL
dgesv( 2, 1, a, 1, ip, b, 2, info )
146 CALL
chkxer(
'DGESV ', infot, nout, lerr, ok )
148 CALL
dgesv( 2, 1, a, 2, ip, b, 1, info )
149 CALL
chkxer(
'DGESV ', infot, nout, lerr, ok )
155 CALL
dgesvx(
'/',
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
156 $ x, 1, rcond, r1, r2, w, iw, info )
157 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
159 CALL
dgesvx(
'N',
'/', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
160 $ x, 1, rcond, r1, r2, w, iw, info )
161 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
163 CALL
dgesvx(
'N',
'N', -1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
164 $ x, 1, rcond, r1, r2, w, iw, info )
165 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
167 CALL
dgesvx(
'N',
'N', 0, -1, a, 1, af, 1, ip, eq, r, c, b, 1,
168 $ x, 1, rcond, r1, r2, w, iw, info )
169 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
171 CALL
dgesvx(
'N',
'N', 2, 1, a, 1, af, 2, ip, eq, r, c, b, 2,
172 $ x, 2, rcond, r1, r2, w, iw, info )
173 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
175 CALL
dgesvx(
'N',
'N', 2, 1, a, 2, af, 1, ip, eq, r, c, b, 2,
176 $ x, 2, rcond, r1, r2, w, iw, info )
177 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
180 CALL
dgesvx(
'F',
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
181 $ x, 1, rcond, r1, r2, w, iw, info )
182 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
185 CALL
dgesvx(
'F',
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
186 $ x, 1, rcond, r1, r2, w, iw, info )
187 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
190 CALL
dgesvx(
'F',
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
191 $ x, 1, rcond, r1, r2, w, iw, info )
192 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
194 CALL
dgesvx(
'N',
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b, 1,
195 $ x, 2, rcond, r1, r2, w, iw, info )
196 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
198 CALL
dgesvx(
'N',
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b, 2,
199 $ x, 1, rcond, r1, r2, w, iw, info )
200 CALL
chkxer(
'DGESVX', infot, nout, lerr, ok )
202 ELSE IF( lsamen( 2, c2,
'GB' ) )
THEN
208 CALL
dgbsv( -1, 0, 0, 0, a, 1, ip, b, 1, info )
209 CALL
chkxer(
'DGBSV ', infot, nout, lerr, ok )
211 CALL
dgbsv( 1, -1, 0, 0, a, 1, ip, b, 1, info )
212 CALL
chkxer(
'DGBSV ', infot, nout, lerr, ok )
214 CALL
dgbsv( 1, 0, -1, 0, a, 1, ip, b, 1, info )
215 CALL
chkxer(
'DGBSV ', infot, nout, lerr, ok )
217 CALL
dgbsv( 0, 0, 0, -1, a, 1, ip, b, 1, info )
218 CALL
chkxer(
'DGBSV ', infot, nout, lerr, ok )
220 CALL
dgbsv( 1, 1, 1, 0, a, 3, ip, b, 1, info )
221 CALL
chkxer(
'DGBSV ', infot, nout, lerr, ok )
223 CALL
dgbsv( 2, 0, 0, 0, a, 1, ip, b, 1, info )
224 CALL
chkxer(
'DGBSV ', infot, nout, lerr, ok )
230 CALL
dgbsvx(
'/',
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
231 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
232 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
234 CALL
dgbsvx(
'N',
'/', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
235 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
236 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
238 CALL
dgbsvx(
'N',
'N', -1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
239 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
240 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
242 CALL
dgbsvx(
'N',
'N', 1, -1, 0, 0, a, 1, af, 1, ip, eq, r, c,
243 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
244 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
246 CALL
dgbsvx(
'N',
'N', 1, 0, -1, 0, a, 1, af, 1, ip, eq, r, c,
247 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
248 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
250 CALL
dgbsvx(
'N',
'N', 0, 0, 0, -1, a, 1, af, 1, ip, eq, r, c,
251 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
252 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
254 CALL
dgbsvx(
'N',
'N', 1, 1, 1, 0, a, 2, af, 4, ip, eq, r, c,
255 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
256 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
258 CALL
dgbsvx(
'N',
'N', 1, 1, 1, 0, a, 3, af, 3, ip, eq, r, c,
259 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
260 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
263 CALL
dgbsvx(
'F',
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
264 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
265 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
268 CALL
dgbsvx(
'F',
'N', 1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
269 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
270 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
273 CALL
dgbsvx(
'F',
'N', 1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
274 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
275 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
277 CALL
dgbsvx(
'N',
'N', 2, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
278 $ b, 1, x, 2, rcond, r1, r2, w, iw, info )
279 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
281 CALL
dgbsvx(
'N',
'N', 2, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
282 $ b, 2, x, 1, rcond, r1, r2, w, iw, info )
283 CALL
chkxer(
'DGBSVX', infot, nout, lerr, ok )
285 ELSE IF( lsamen( 2, c2,
'GT' ) )
THEN
291 CALL
dgtsv( -1, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1,
293 CALL
chkxer(
'DGTSV ', infot, nout, lerr, ok )
295 CALL
dgtsv( 0, -1, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1,
297 CALL
chkxer(
'DGTSV ', infot, nout, lerr, ok )
299 CALL
dgtsv( 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1, info )
300 CALL
chkxer(
'DGTSV ', infot, nout, lerr, ok )
306 CALL
dgtsvx(
'/',
'N', 0, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
307 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
308 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
309 CALL
chkxer(
'DGTSVX', infot, nout, lerr, ok )
311 CALL
dgtsvx(
'N',
'/', 0, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
312 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
313 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
314 CALL
chkxer(
'DGTSVX', infot, nout, lerr, ok )
316 CALL
dgtsvx(
'N',
'N', -1, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
317 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
318 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
319 CALL
chkxer(
'DGTSVX', infot, nout, lerr, ok )
321 CALL
dgtsvx(
'N',
'N', 0, -1, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
322 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
323 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
324 CALL
chkxer(
'DGTSVX', infot, nout, lerr, ok )
326 CALL
dgtsvx(
'N',
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
327 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
328 $ ip, b, 1, x, 2, rcond, r1, r2, w, iw, info )
329 CALL
chkxer(
'DGTSVX', infot, nout, lerr, ok )
331 CALL
dgtsvx(
'N',
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
332 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
333 $ ip, b, 2, x, 1, rcond, r1, r2, w, iw, info )
334 CALL
chkxer(
'DGTSVX', infot, nout, lerr, ok )
336 ELSE IF( lsamen( 2, c2,
'PO' ) )
THEN
342 CALL
dposv(
'/', 0, 0, a, 1, b, 1, info )
343 CALL
chkxer(
'DPOSV ', infot, nout, lerr, ok )
345 CALL
dposv(
'U', -1, 0, a, 1, b, 1, info )
346 CALL
chkxer(
'DPOSV ', infot, nout, lerr, ok )
348 CALL
dposv(
'U', 0, -1, a, 1, b, 1, info )
349 CALL
chkxer(
'DPOSV ', infot, nout, lerr, ok )
351 CALL
dposv(
'U', 2, 0, a, 1, b, 2, info )
352 CALL
chkxer(
'DPOSV ', infot, nout, lerr, ok )
354 CALL
dposv(
'U', 2, 0, a, 2, b, 1, info )
355 CALL
chkxer(
'DPOSV ', infot, nout, lerr, ok )
361 CALL
dposvx(
'/',
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
362 $ rcond, r1, r2, w, iw, info )
363 CALL
chkxer(
'DPOSVX', infot, nout, lerr, ok )
365 CALL
dposvx(
'N',
'/', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
366 $ rcond, r1, r2, w, iw, info )
367 CALL
chkxer(
'DPOSVX', infot, nout, lerr, ok )
369 CALL
dposvx(
'N',
'U', -1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
370 $ rcond, r1, r2, w, iw, info )
371 CALL
chkxer(
'DPOSVX', infot, nout, lerr, ok )
373 CALL
dposvx(
'N',
'U', 0, -1, a, 1, af, 1, eq, c, b, 1, x, 1,
374 $ rcond, r1, r2, w, iw, info )
375 CALL
chkxer(
'DPOSVX', infot, nout, lerr, ok )
377 CALL
dposvx(
'N',
'U', 2, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
378 $ rcond, r1, r2, w, iw, info )
379 CALL
chkxer(
'DPOSVX', infot, nout, lerr, ok )
381 CALL
dposvx(
'N',
'U', 2, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
382 $ rcond, r1, r2, w, iw, info )
383 CALL
chkxer(
'DPOSVX', infot, nout, lerr, ok )
386 CALL
dposvx(
'F',
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
387 $ rcond, r1, r2, w, iw, info )
388 CALL
chkxer(
'DPOSVX', infot, nout, lerr, ok )
391 CALL
dposvx(
'F',
'U', 1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
392 $ rcond, r1, r2, w, iw, info )
393 CALL
chkxer(
'DPOSVX', infot, nout, lerr, ok )
395 CALL
dposvx(
'N',
'U', 2, 0, a, 2, af, 2, eq, c, b, 1, x, 2,
396 $ rcond, r1, r2, w, iw, info )
397 CALL
chkxer(
'DPOSVX', infot, nout, lerr, ok )
399 CALL
dposvx(
'N',
'U', 2, 0, a, 2, af, 2, eq, c, b, 2, x, 1,
400 $ rcond, r1, r2, w, iw, info )
401 CALL
chkxer(
'DPOSVX', infot, nout, lerr, ok )
403 ELSE IF( lsamen( 2, c2,
'PP' ) )
THEN
409 CALL
dppsv(
'/', 0, 0, a, b, 1, info )
410 CALL
chkxer(
'DPPSV ', infot, nout, lerr, ok )
412 CALL
dppsv(
'U', -1, 0, a, b, 1, info )
413 CALL
chkxer(
'DPPSV ', infot, nout, lerr, ok )
415 CALL
dppsv(
'U', 0, -1, a, b, 1, info )
416 CALL
chkxer(
'DPPSV ', infot, nout, lerr, ok )
418 CALL
dppsv(
'U', 2, 0, a, b, 1, info )
419 CALL
chkxer(
'DPPSV ', infot, nout, lerr, ok )
425 CALL
dppsvx(
'/',
'U', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
426 $ r1, r2, w, iw, info )
427 CALL
chkxer(
'DPPSVX', infot, nout, lerr, ok )
429 CALL
dppsvx(
'N',
'/', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
430 $ r1, r2, w, iw, info )
431 CALL
chkxer(
'DPPSVX', infot, nout, lerr, ok )
433 CALL
dppsvx(
'N',
'U', -1, 0, a, af, eq, c, b, 1, x, 1, rcond,
434 $ r1, r2, w, iw, info )
435 CALL
chkxer(
'DPPSVX', infot, nout, lerr, ok )
437 CALL
dppsvx(
'N',
'U', 0, -1, a, af, eq, c, b, 1, x, 1, rcond,
438 $ r1, r2, w, iw, info )
439 CALL
chkxer(
'DPPSVX', infot, nout, lerr, ok )
442 CALL
dppsvx(
'F',
'U', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
443 $ r1, r2, w, iw, info )
444 CALL
chkxer(
'DPPSVX', infot, nout, lerr, ok )
447 CALL
dppsvx(
'F',
'U', 1, 0, a, af, eq, c, b, 1, x, 1, rcond,
448 $ r1, r2, w, iw, info )
449 CALL
chkxer(
'DPPSVX', infot, nout, lerr, ok )
451 CALL
dppsvx(
'N',
'U', 2, 0, a, af, eq, c, b, 1, x, 2, rcond,
452 $ r1, r2, w, iw, info )
453 CALL
chkxer(
'DPPSVX', infot, nout, lerr, ok )
455 CALL
dppsvx(
'N',
'U', 2, 0, a, af, eq, c, b, 2, x, 1, rcond,
456 $ r1, r2, w, iw, info )
457 CALL
chkxer(
'DPPSVX', infot, nout, lerr, ok )
459 ELSE IF( lsamen( 2, c2,
'PB' ) )
THEN
465 CALL
dpbsv(
'/', 0, 0, 0, a, 1, b, 1, info )
466 CALL
chkxer(
'DPBSV ', infot, nout, lerr, ok )
468 CALL
dpbsv(
'U', -1, 0, 0, a, 1, b, 1, info )
469 CALL
chkxer(
'DPBSV ', infot, nout, lerr, ok )
471 CALL
dpbsv(
'U', 1, -1, 0, a, 1, b, 1, info )
472 CALL
chkxer(
'DPBSV ', infot, nout, lerr, ok )
474 CALL
dpbsv(
'U', 0, 0, -1, a, 1, b, 1, info )
475 CALL
chkxer(
'DPBSV ', infot, nout, lerr, ok )
477 CALL
dpbsv(
'U', 1, 1, 0, a, 1, b, 2, info )
478 CALL
chkxer(
'DPBSV ', infot, nout, lerr, ok )
480 CALL
dpbsv(
'U', 2, 0, 0, a, 1, b, 1, info )
481 CALL
chkxer(
'DPBSV ', infot, nout, lerr, ok )
487 CALL
dpbsvx(
'/',
'U', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
488 $ rcond, r1, r2, w, iw, info )
489 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
491 CALL
dpbsvx(
'N',
'/', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
492 $ rcond, r1, r2, w, iw, info )
493 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
495 CALL
dpbsvx(
'N',
'U', -1, 0, 0, a, 1, af, 1, eq, c, b, 1, x,
496 $ 1, rcond, r1, r2, w, iw, info )
497 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
499 CALL
dpbsvx(
'N',
'U', 1, -1, 0, a, 1, af, 1, eq, c, b, 1, x,
500 $ 1, rcond, r1, r2, w, iw, info )
501 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
503 CALL
dpbsvx(
'N',
'U', 0, 0, -1, a, 1, af, 1, eq, c, b, 1, x,
504 $ 1, rcond, r1, r2, w, iw, info )
505 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
507 CALL
dpbsvx(
'N',
'U', 1, 1, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
508 $ rcond, r1, r2, w, iw, info )
509 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
511 CALL
dpbsvx(
'N',
'U', 1, 1, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
512 $ rcond, r1, r2, w, iw, info )
513 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
516 CALL
dpbsvx(
'F',
'U', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
517 $ rcond, r1, r2, w, iw, info )
518 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
521 CALL
dpbsvx(
'F',
'U', 1, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
522 $ rcond, r1, r2, w, iw, info )
523 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
525 CALL
dpbsvx(
'N',
'U', 2, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 2,
526 $ rcond, r1, r2, w, iw, info )
527 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
529 CALL
dpbsvx(
'N',
'U', 2, 0, 0, a, 1, af, 1, eq, c, b, 2, x, 1,
530 $ rcond, r1, r2, w, iw, info )
531 CALL
chkxer(
'DPBSVX', infot, nout, lerr, ok )
533 ELSE IF( lsamen( 2, c2,
'PT' ) )
THEN
539 CALL
dptsv( -1, 0, a( 1, 1 ), a( 1, 2 ), b, 1, info )
540 CALL
chkxer(
'DPTSV ', infot, nout, lerr, ok )
542 CALL
dptsv( 0, -1, a( 1, 1 ), a( 1, 2 ), b, 1, info )
543 CALL
chkxer(
'DPTSV ', infot, nout, lerr, ok )
545 CALL
dptsv( 2, 0, a( 1, 1 ), a( 1, 2 ), b, 1, info )
546 CALL
chkxer(
'DPTSV ', infot, nout, lerr, ok )
552 CALL
dptsvx(
'/', 0, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
553 $ af( 1, 2 ), b, 1, x, 1, rcond, r1, r2, w, info )
554 CALL
chkxer(
'DPTSVX', infot, nout, lerr, ok )
556 CALL
dptsvx(
'N', -1, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
557 $ af( 1, 2 ), b, 1, x, 1, rcond, r1, r2, w, info )
558 CALL
chkxer(
'DPTSVX', infot, nout, lerr, ok )
560 CALL
dptsvx(
'N', 0, -1, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
561 $ af( 1, 2 ), b, 1, x, 1, rcond, r1, r2, w, info )
562 CALL
chkxer(
'DPTSVX', infot, nout, lerr, ok )
564 CALL
dptsvx(
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
565 $ af( 1, 2 ), b, 1, x, 2, rcond, r1, r2, w, info )
566 CALL
chkxer(
'DPTSVX', infot, nout, lerr, ok )
568 CALL
dptsvx(
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
569 $ af( 1, 2 ), b, 2, x, 1, rcond, r1, r2, w, info )
570 CALL
chkxer(
'DPTSVX', infot, nout, lerr, ok )
572 ELSE IF( lsamen( 2, c2,
'SY' ) )
THEN
578 CALL
dsysv(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
579 CALL
chkxer(
'DSYSV ', infot, nout, lerr, ok )
581 CALL
dsysv(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
582 CALL
chkxer(
'DSYSV ', infot, nout, lerr, ok )
584 CALL
dsysv(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
585 CALL
chkxer(
'DSYSV ', infot, nout, lerr, ok )
587 CALL
dsysv(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
588 CALL
chkxer(
'DSYSV ', infot, nout, lerr, ok )
594 CALL
dsysvx(
'/',
'U', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
595 $ rcond, r1, r2, w, 1, iw, info )
596 CALL
chkxer(
'DSYSVX', infot, nout, lerr, ok )
598 CALL
dsysvx(
'N',
'/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
599 $ rcond, r1, r2, w, 1, iw, info )
600 CALL
chkxer(
'DSYSVX', infot, nout, lerr, ok )
602 CALL
dsysvx(
'N',
'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1,
603 $ rcond, r1, r2, w, 1, iw, info )
604 CALL
chkxer(
'DSYSVX', infot, nout, lerr, ok )
606 CALL
dsysvx(
'N',
'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1,
607 $ rcond, r1, r2, w, 1, iw, info )
608 CALL
chkxer(
'DSYSVX', infot, nout, lerr, ok )
610 CALL
dsysvx(
'N',
'U', 2, 0, a, 1, af, 2, ip, b, 2, x, 2,
611 $ rcond, r1, r2, w, 4, iw, info )
612 CALL
chkxer(
'DSYSVX', infot, nout, lerr, ok )
614 CALL
dsysvx(
'N',
'U', 2, 0, a, 2, af, 1, ip, b, 2, x, 2,
615 $ rcond, r1, r2, w, 4, iw, info )
616 CALL
chkxer(
'DSYSVX', infot, nout, lerr, ok )
618 CALL
dsysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 1, x, 2,
619 $ rcond, r1, r2, w, 4, iw, info )
620 CALL
chkxer(
'DSYSVX', infot, nout, lerr, ok )
622 CALL
dsysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 1,
623 $ rcond, r1, r2, w, 4, iw, info )
624 CALL
chkxer(
'DSYSVX', infot, nout, lerr, ok )
626 CALL
dsysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 2,
627 $ rcond, r1, r2, w, 3, iw, info )
628 CALL
chkxer(
'DSYSVX', infot, nout, lerr, ok )
630 ELSE IF( lsamen( 2, c2,
'SR' ) )
THEN
634 srnamt =
'DSYSV_ROOK'
636 CALL
dsysv_rook(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
637 CALL
chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
639 CALL
dsysv_rook(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
640 CALL
chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
642 CALL
dsysv_rook(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
643 CALL
chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
645 CALL
dsysv_rook(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
646 CALL
chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
648 ELSE IF( lsamen( 2, c2,
'SP' ) )
THEN
654 CALL
dspsv(
'/', 0, 0, a, ip, b, 1, info )
655 CALL
chkxer(
'DSPSV ', infot, nout, lerr, ok )
657 CALL
dspsv(
'U', -1, 0, a, ip, b, 1, info )
658 CALL
chkxer(
'DSPSV ', infot, nout, lerr, ok )
660 CALL
dspsv(
'U', 0, -1, a, ip, b, 1, info )
661 CALL
chkxer(
'DSPSV ', infot, nout, lerr, ok )
663 CALL
dspsv(
'U', 2, 0, a, ip, b, 1, info )
664 CALL
chkxer(
'DSPSV ', infot, nout, lerr, ok )
670 CALL
dspsvx(
'/',
'U', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
672 CALL
chkxer(
'DSPSVX', infot, nout, lerr, ok )
674 CALL
dspsvx(
'N',
'/', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
676 CALL
chkxer(
'DSPSVX', infot, nout, lerr, ok )
678 CALL
dspsvx(
'N',
'U', -1, 0, a, af, ip, b, 1, x, 1, rcond, r1,
680 CALL
chkxer(
'DSPSVX', infot, nout, lerr, ok )
682 CALL
dspsvx(
'N',
'U', 0, -1, a, af, ip, b, 1, x, 1, rcond, r1,
684 CALL
chkxer(
'DSPSVX', infot, nout, lerr, ok )
686 CALL
dspsvx(
'N',
'U', 2, 0, a, af, ip, b, 1, x, 2, rcond, r1,
688 CALL
chkxer(
'DSPSVX', infot, nout, lerr, ok )
690 CALL
dspsvx(
'N',
'U', 2, 0, a, af, ip, b, 2, x, 1, rcond, r1,
692 CALL
chkxer(
'DSPSVX', infot, nout, lerr, ok )
698 WRITE( nout, fmt = 9999 )path
700 WRITE( nout, fmt = 9998 )path
703 9999
FORMAT( 1x, a3,
' drivers passed the tests of the error exits' )
704 9998
FORMAT(
' *** ', a3,
' drivers failed the tests of the error ',
subroutine dpbsvx(FACT, UPLO, N, KD, NRHS, AB, LDAB, AFB, LDAFB, EQUED, S, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, IWORK, INFO)
DPBSVX computes the solution to system of linear equations A * X = B for OTHER matrices ...
subroutine dsysvx(FACT, UPLO, N, NRHS, A, LDA, AF, LDAF, IPIV, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, LWORK, IWORK, INFO)
DSYSVX computes the solution to system of linear equations A * X = B for SY matrices ...
subroutine dgbsv(N, KL, KU, NRHS, AB, LDAB, IPIV, B, LDB, INFO)
DGBSV computes the solution to system of linear equations A * X = B for GB matrices (simple driver) ...
subroutine dppsvx(FACT, UPLO, N, NRHS, AP, AFP, EQUED, S, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, IWORK, INFO)
DPPSVX computes the solution to system of linear equations A * X = B for OTHER matrices ...
subroutine dgtsvx(FACT, TRANS, N, NRHS, DL, D, DU, DLF, DF, DUF, DU2, IPIV, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, IWORK, INFO)
DGTSVX computes the solution to system of linear equations A * X = B for GT matrices ...
subroutine dposvx(FACT, UPLO, N, NRHS, A, LDA, AF, LDAF, EQUED, S, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, IWORK, INFO)
DPOSVX computes the solution to system of linear equations A * X = B for PO matrices ...
subroutine derrvx(PATH, NUNIT)
DERRVX
subroutine dposv(UPLO, N, NRHS, A, LDA, B, LDB, INFO)
DPOSV computes the solution to system of linear equations A * X = B for PO matrices ...
subroutine chkxer(SRNAMT, INFOT, NOUT, LERR, OK)
subroutine dgesv(N, NRHS, A, LDA, IPIV, B, LDB, INFO)
DGESV computes the solution to system of linear equations A * X = B for GE matrices ...
subroutine dptsvx(FACT, N, NRHS, D, E, DF, EF, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, INFO)
DPTSVX computes the solution to system of linear equations A * X = B for PT matrices ...
subroutine dgtsv(N, NRHS, DL, D, DU, B, LDB, INFO)
DGTSV computes the solution to system of linear equations A * X = B for GT matrices ...
subroutine dsysv(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, LWORK, INFO)
DSYSV computes the solution to system of linear equations A * X = B for SY matrices ...
subroutine dsysv_rook(UPLO, N, NRHS, A, LDA, IPIV, B, LDB, WORK, LWORK, INFO)
DSYSV_ROOK computes the solution to system of linear equations A * X = B for SY matrices ...
subroutine dgbsvx(FACT, TRANS, N, KL, KU, NRHS, AB, LDAB, AFB, LDAFB, IPIV, EQUED, R, C, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, IWORK, INFO)
DGBSVX computes the solution to system of linear equations A * X = B for GB matrices ...
subroutine dspsvx(FACT, UPLO, N, NRHS, AP, AFP, IPIV, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, IWORK, INFO)
DSPSVX computes the solution to system of linear equations A * X = B for OTHER matrices ...
subroutine dpbsv(UPLO, N, KD, NRHS, AB, LDAB, B, LDB, INFO)
DPBSV computes the solution to system of linear equations A * X = B for OTHER matrices ...
subroutine dgesvx(FACT, TRANS, N, NRHS, A, LDA, AF, LDAF, IPIV, EQUED, R, C, B, LDB, X, LDX, RCOND, FERR, BERR, WORK, IWORK, INFO)
DGESVX computes the solution to system of linear equations A * X = B for GE matrices ...
subroutine dspsv(UPLO, N, NRHS, AP, IPIV, B, LDB, INFO)
DSPSV computes the solution to system of linear equations A * X = B for OTHER matrices ...
subroutine dppsv(UPLO, N, NRHS, AP, B, LDB, INFO)
DPPSV computes the solution to system of linear equations A * X = B for OTHER matrices ...
subroutine dptsv(N, NRHS, D, E, B, LDB, INFO)
DPTSV computes the solution to system of linear equations A * X = B for PT matrices ...