56 SUBROUTINE derrvx( PATH, NUNIT )
78 DOUBLE PRECISION RCOND
81 INTEGER IP( NMAX ), IW( NMAX )
82 DOUBLE PRECISION A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
83 $ C( NMAX ), E( NMAX ), R( NMAX ), R1( NMAX ),
84 $ R2( NMAX ), W( 2*NMAX ), X( NMAX )
103 COMMON / infoc / infot, nout, ok, lerr
104 COMMON / srnamc / srnamt
112 WRITE( nout, fmt = * )
119 a( i, j ) = 1.d0 / dble( i+j )
120 af( i, j ) = 1.d0 / dble( i+j )
135 IF( lsamen( 2, c2,
'GE' ) )
THEN
141 CALL dgesv( -1, 0, a, 1, ip, b, 1, info )
142 CALL chkxer(
'DGESV ', infot, nout, lerr, ok )
144 CALL dgesv( 0, -1, a, 1, ip, b, 1, info )
145 CALL chkxer(
'DGESV ', infot, nout, lerr, ok )
147 CALL dgesv( 2, 1, a, 1, ip, b, 2, info )
148 CALL chkxer(
'DGESV ', infot, nout, lerr, ok )
150 CALL dgesv( 2, 1, a, 2, ip, b, 1, info )
151 CALL chkxer(
'DGESV ', infot, nout, lerr, ok )
157 CALL dgesvx(
'/',
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
158 $ x, 1, rcond, r1, r2, w, iw, info )
159 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
161 CALL dgesvx(
'N',
'/', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
162 $ x, 1, rcond, r1, r2, w, iw, info )
163 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
165 CALL dgesvx(
'N',
'N', -1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
166 $ x, 1, rcond, r1, r2, w, iw, info )
167 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
169 CALL dgesvx(
'N',
'N', 0, -1, a, 1, af, 1, ip, eq, r, c, b, 1,
170 $ x, 1, rcond, r1, r2, w, iw, info )
171 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
173 CALL dgesvx(
'N',
'N', 2, 1, a, 1, af, 2, ip, eq, r, c, b, 2,
174 $ x, 2, rcond, r1, r2, w, iw, info )
175 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
177 CALL dgesvx(
'N',
'N', 2, 1, a, 2, af, 1, ip, eq, r, c, b, 2,
178 $ x, 2, rcond, r1, r2, w, iw, info )
179 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
182 CALL dgesvx(
'F',
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
183 $ x, 1, rcond, r1, r2, w, iw, info )
184 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
187 CALL dgesvx(
'F',
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
188 $ x, 1, rcond, r1, r2, w, iw, info )
189 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
192 CALL dgesvx(
'F',
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
193 $ x, 1, rcond, r1, r2, w, iw, info )
194 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
196 CALL dgesvx(
'N',
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b, 1,
197 $ x, 2, rcond, r1, r2, w, iw, info )
198 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
200 CALL dgesvx(
'N',
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b, 2,
201 $ x, 1, rcond, r1, r2, w, iw, info )
202 CALL chkxer(
'DGESVX', infot, nout, lerr, ok )
204 ELSE IF( lsamen( 2, c2,
'GB' ) )
THEN
210 CALL dgbsv( -1, 0, 0, 0, a, 1, ip, b, 1, info )
211 CALL chkxer(
'DGBSV ', infot, nout, lerr, ok )
213 CALL dgbsv( 1, -1, 0, 0, a, 1, ip, b, 1, info )
214 CALL chkxer(
'DGBSV ', infot, nout, lerr, ok )
216 CALL dgbsv( 1, 0, -1, 0, a, 1, ip, b, 1, info )
217 CALL chkxer(
'DGBSV ', infot, nout, lerr, ok )
219 CALL dgbsv( 0, 0, 0, -1, a, 1, ip, b, 1, info )
220 CALL chkxer(
'DGBSV ', infot, nout, lerr, ok )
222 CALL dgbsv( 1, 1, 1, 0, a, 3, ip, b, 1, info )
223 CALL chkxer(
'DGBSV ', infot, nout, lerr, ok )
225 CALL dgbsv( 2, 0, 0, 0, a, 1, ip, b, 1, info )
226 CALL chkxer(
'DGBSV ', infot, nout, lerr, ok )
232 CALL dgbsvx(
'/',
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
233 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
234 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
236 CALL dgbsvx(
'N',
'/', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
237 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
238 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
240 CALL dgbsvx(
'N',
'N', -1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
241 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
242 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
244 CALL dgbsvx(
'N',
'N', 1, -1, 0, 0, a, 1, af, 1, ip, eq, r, c,
245 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
246 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
248 CALL dgbsvx(
'N',
'N', 1, 0, -1, 0, a, 1, af, 1, ip, eq, r, c,
249 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
250 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
252 CALL dgbsvx(
'N',
'N', 0, 0, 0, -1, a, 1, af, 1, ip, eq, r, c,
253 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
254 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
256 CALL dgbsvx(
'N',
'N', 1, 1, 1, 0, a, 2, af, 4, ip, eq, r, c,
257 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
258 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
260 CALL dgbsvx(
'N',
'N', 1, 1, 1, 0, a, 3, af, 3, ip, eq, r, c,
261 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
262 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
265 CALL dgbsvx(
'F',
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
266 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
267 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
270 CALL dgbsvx(
'F',
'N', 1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
271 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
272 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
275 CALL dgbsvx(
'F',
'N', 1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
276 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
277 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
279 CALL dgbsvx(
'N',
'N', 2, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
280 $ b, 1, x, 2, rcond, r1, r2, w, iw, info )
281 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
283 CALL dgbsvx(
'N',
'N', 2, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
284 $ b, 2, x, 1, rcond, r1, r2, w, iw, info )
285 CALL chkxer(
'DGBSVX', infot, nout, lerr, ok )
287 ELSE IF( lsamen( 2, c2,
'GT' ) )
THEN
293 CALL dgtsv( -1, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1,
295 CALL chkxer(
'DGTSV ', infot, nout, lerr, ok )
297 CALL dgtsv( 0, -1, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1,
299 CALL chkxer(
'DGTSV ', infot, nout, lerr, ok )
301 CALL dgtsv( 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1, info )
302 CALL chkxer(
'DGTSV ', infot, nout, lerr, ok )
308 CALL dgtsvx(
'/',
'N', 0, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
309 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
310 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
311 CALL chkxer(
'DGTSVX', infot, nout, lerr, ok )
313 CALL dgtsvx(
'N',
'/', 0, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
314 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
315 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
316 CALL chkxer(
'DGTSVX', infot, nout, lerr, ok )
318 CALL dgtsvx(
'N',
'N', -1, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
319 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
320 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
321 CALL chkxer(
'DGTSVX', infot, nout, lerr, ok )
323 CALL dgtsvx(
'N',
'N', 0, -1, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
324 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
325 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
326 CALL chkxer(
'DGTSVX', infot, nout, lerr, ok )
328 CALL dgtsvx(
'N',
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
329 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
330 $ ip, b, 1, x, 2, rcond, r1, r2, w, iw, info )
331 CALL chkxer(
'DGTSVX', infot, nout, lerr, ok )
333 CALL dgtsvx(
'N',
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
334 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
335 $ ip, b, 2, x, 1, rcond, r1, r2, w, iw, info )
336 CALL chkxer(
'DGTSVX', infot, nout, lerr, ok )
338 ELSE IF( lsamen( 2, c2,
'PO' ) )
THEN
344 CALL dposv(
'/', 0, 0, a, 1, b, 1, info )
345 CALL chkxer(
'DPOSV ', infot, nout, lerr, ok )
347 CALL dposv(
'U', -1, 0, a, 1, b, 1, info )
348 CALL chkxer(
'DPOSV ', infot, nout, lerr, ok )
350 CALL dposv(
'U', 0, -1, a, 1, b, 1, info )
351 CALL chkxer(
'DPOSV ', infot, nout, lerr, ok )
353 CALL dposv(
'U', 2, 0, a, 1, b, 2, info )
354 CALL chkxer(
'DPOSV ', infot, nout, lerr, ok )
356 CALL dposv(
'U', 2, 0, a, 2, b, 1, info )
357 CALL chkxer(
'DPOSV ', infot, nout, lerr, ok )
363 CALL dposvx(
'/',
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
364 $ rcond, r1, r2, w, iw, info )
365 CALL chkxer(
'DPOSVX', infot, nout, lerr, ok )
367 CALL dposvx(
'N',
'/', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
368 $ rcond, r1, r2, w, iw, info )
369 CALL chkxer(
'DPOSVX', infot, nout, lerr, ok )
371 CALL dposvx(
'N',
'U', -1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
372 $ rcond, r1, r2, w, iw, info )
373 CALL chkxer(
'DPOSVX', infot, nout, lerr, ok )
375 CALL dposvx(
'N',
'U', 0, -1, a, 1, af, 1, eq, c, b, 1, x, 1,
376 $ rcond, r1, r2, w, iw, info )
377 CALL chkxer(
'DPOSVX', infot, nout, lerr, ok )
379 CALL dposvx(
'N',
'U', 2, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
380 $ rcond, r1, r2, w, iw, info )
381 CALL chkxer(
'DPOSVX', infot, nout, lerr, ok )
383 CALL dposvx(
'N',
'U', 2, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
384 $ rcond, r1, r2, w, iw, info )
385 CALL chkxer(
'DPOSVX', infot, nout, lerr, ok )
388 CALL dposvx(
'F',
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
389 $ rcond, r1, r2, w, iw, info )
390 CALL chkxer(
'DPOSVX', infot, nout, lerr, ok )
393 CALL dposvx(
'F',
'U', 1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
394 $ rcond, r1, r2, w, iw, info )
395 CALL chkxer(
'DPOSVX', infot, nout, lerr, ok )
397 CALL dposvx(
'N',
'U', 2, 0, a, 2, af, 2, eq, c, b, 1, x, 2,
398 $ rcond, r1, r2, w, iw, info )
399 CALL chkxer(
'DPOSVX', infot, nout, lerr, ok )
401 CALL dposvx(
'N',
'U', 2, 0, a, 2, af, 2, eq, c, b, 2, x, 1,
402 $ rcond, r1, r2, w, iw, info )
403 CALL chkxer(
'DPOSVX', infot, nout, lerr, ok )
405 ELSE IF( lsamen( 2, c2,
'PP' ) )
THEN
411 CALL dppsv(
'/', 0, 0, a, b, 1, info )
412 CALL chkxer(
'DPPSV ', infot, nout, lerr, ok )
414 CALL dppsv(
'U', -1, 0, a, b, 1, info )
415 CALL chkxer(
'DPPSV ', infot, nout, lerr, ok )
417 CALL dppsv(
'U', 0, -1, a, b, 1, info )
418 CALL chkxer(
'DPPSV ', infot, nout, lerr, ok )
420 CALL dppsv(
'U', 2, 0, a, b, 1, info )
421 CALL chkxer(
'DPPSV ', infot, nout, lerr, ok )
427 CALL dppsvx(
'/',
'U', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
428 $ r1, r2, w, iw, info )
429 CALL chkxer(
'DPPSVX', infot, nout, lerr, ok )
431 CALL dppsvx(
'N',
'/', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
432 $ r1, r2, w, iw, info )
433 CALL chkxer(
'DPPSVX', infot, nout, lerr, ok )
435 CALL dppsvx(
'N',
'U', -1, 0, a, af, eq, c, b, 1, x, 1, rcond,
436 $ r1, r2, w, iw, info )
437 CALL chkxer(
'DPPSVX', infot, nout, lerr, ok )
439 CALL dppsvx(
'N',
'U', 0, -1, a, af, eq, c, b, 1, x, 1, rcond,
440 $ r1, r2, w, iw, info )
441 CALL chkxer(
'DPPSVX', infot, nout, lerr, ok )
444 CALL dppsvx(
'F',
'U', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
445 $ r1, r2, w, iw, info )
446 CALL chkxer(
'DPPSVX', infot, nout, lerr, ok )
449 CALL dppsvx(
'F',
'U', 1, 0, a, af, eq, c, b, 1, x, 1, rcond,
450 $ r1, r2, w, iw, info )
451 CALL chkxer(
'DPPSVX', infot, nout, lerr, ok )
453 CALL dppsvx(
'N',
'U', 2, 0, a, af, eq, c, b, 1, x, 2, rcond,
454 $ r1, r2, w, iw, info )
455 CALL chkxer(
'DPPSVX', infot, nout, lerr, ok )
457 CALL dppsvx(
'N',
'U', 2, 0, a, af, eq, c, b, 2, x, 1, rcond,
458 $ r1, r2, w, iw, info )
459 CALL chkxer(
'DPPSVX', infot, nout, lerr, ok )
461 ELSE IF( lsamen( 2, c2,
'PB' ) )
THEN
467 CALL dpbsv(
'/', 0, 0, 0, a, 1, b, 1, info )
468 CALL chkxer(
'DPBSV ', infot, nout, lerr, ok )
470 CALL dpbsv(
'U', -1, 0, 0, a, 1, b, 1, info )
471 CALL chkxer(
'DPBSV ', infot, nout, lerr, ok )
473 CALL dpbsv(
'U', 1, -1, 0, a, 1, b, 1, info )
474 CALL chkxer(
'DPBSV ', infot, nout, lerr, ok )
476 CALL dpbsv(
'U', 0, 0, -1, a, 1, b, 1, info )
477 CALL chkxer(
'DPBSV ', infot, nout, lerr, ok )
479 CALL dpbsv(
'U', 1, 1, 0, a, 1, b, 2, info )
480 CALL chkxer(
'DPBSV ', infot, nout, lerr, ok )
482 CALL dpbsv(
'U', 2, 0, 0, a, 1, b, 1, info )
483 CALL chkxer(
'DPBSV ', infot, nout, lerr, ok )
489 CALL dpbsvx(
'/',
'U', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
490 $ rcond, r1, r2, w, iw, info )
491 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
493 CALL dpbsvx(
'N',
'/', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
494 $ rcond, r1, r2, w, iw, info )
495 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
497 CALL dpbsvx(
'N',
'U', -1, 0, 0, a, 1, af, 1, eq, c, b, 1, x,
498 $ 1, rcond, r1, r2, w, iw, info )
499 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
501 CALL dpbsvx(
'N',
'U', 1, -1, 0, a, 1, af, 1, eq, c, b, 1, x,
502 $ 1, rcond, r1, r2, w, iw, info )
503 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
505 CALL dpbsvx(
'N',
'U', 0, 0, -1, a, 1, af, 1, eq, c, b, 1, x,
506 $ 1, rcond, r1, r2, w, iw, info )
507 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
509 CALL dpbsvx(
'N',
'U', 1, 1, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
510 $ rcond, r1, r2, w, iw, info )
511 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
513 CALL dpbsvx(
'N',
'U', 1, 1, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
514 $ rcond, r1, r2, w, iw, info )
515 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
518 CALL dpbsvx(
'F',
'U', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
519 $ rcond, r1, r2, w, iw, info )
520 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
523 CALL dpbsvx(
'F',
'U', 1, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
524 $ rcond, r1, r2, w, iw, info )
525 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
527 CALL dpbsvx(
'N',
'U', 2, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 2,
528 $ rcond, r1, r2, w, iw, info )
529 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
531 CALL dpbsvx(
'N',
'U', 2, 0, 0, a, 1, af, 1, eq, c, b, 2, x, 1,
532 $ rcond, r1, r2, w, iw, info )
533 CALL chkxer(
'DPBSVX', infot, nout, lerr, ok )
535 ELSE IF( lsamen( 2, c2,
'PT' ) )
THEN
541 CALL dptsv( -1, 0, a( 1, 1 ), a( 1, 2 ), b, 1, info )
542 CALL chkxer(
'DPTSV ', infot, nout, lerr, ok )
544 CALL dptsv( 0, -1, a( 1, 1 ), a( 1, 2 ), b, 1, info )
545 CALL chkxer(
'DPTSV ', infot, nout, lerr, ok )
547 CALL dptsv( 2, 0, a( 1, 1 ), a( 1, 2 ), b, 1, info )
548 CALL chkxer(
'DPTSV ', infot, nout, lerr, ok )
554 CALL dptsvx(
'/', 0, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
555 $ af( 1, 2 ), b, 1, x, 1, rcond, r1, r2, w, info )
556 CALL chkxer(
'DPTSVX', infot, nout, lerr, ok )
558 CALL dptsvx(
'N', -1, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
559 $ af( 1, 2 ), b, 1, x, 1, rcond, r1, r2, w, info )
560 CALL chkxer(
'DPTSVX', infot, nout, lerr, ok )
562 CALL dptsvx(
'N', 0, -1, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
563 $ af( 1, 2 ), b, 1, x, 1, rcond, r1, r2, w, info )
564 CALL chkxer(
'DPTSVX', infot, nout, lerr, ok )
566 CALL dptsvx(
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
567 $ af( 1, 2 ), b, 1, x, 2, rcond, r1, r2, w, info )
568 CALL chkxer(
'DPTSVX', infot, nout, lerr, ok )
570 CALL dptsvx(
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
571 $ af( 1, 2 ), b, 2, x, 1, rcond, r1, r2, w, info )
572 CALL chkxer(
'DPTSVX', infot, nout, lerr, ok )
574 ELSE IF( lsamen( 2, c2,
'SY' ) )
THEN
580 CALL dsysv(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
581 CALL chkxer(
'DSYSV ', infot, nout, lerr, ok )
583 CALL dsysv(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
584 CALL chkxer(
'DSYSV ', infot, nout, lerr, ok )
586 CALL dsysv(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
587 CALL chkxer(
'DSYSV ', infot, nout, lerr, ok )
589 CALL dsysv(
'U', 2, 0, a, 1, ip, b, 2, w, 1, info )
590 CALL chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
592 CALL dsysv(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
593 CALL chkxer(
'DSYSV ', infot, nout, lerr, ok )
595 CALL dsysv(
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
596 CALL chkxer(
'DSYSV ', infot, nout, lerr, ok )
598 CALL dsysv(
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
599 CALL chkxer(
'DSYSV ', infot, nout, lerr, ok )
605 CALL dsysvx(
'/',
'U', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
606 $ rcond, r1, r2, w, 1, iw, info )
607 CALL chkxer(
'DSYSVX', infot, nout, lerr, ok )
609 CALL dsysvx(
'N',
'/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
610 $ rcond, r1, r2, w, 1, iw, info )
611 CALL chkxer(
'DSYSVX', infot, nout, lerr, ok )
613 CALL dsysvx(
'N',
'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1,
614 $ rcond, r1, r2, w, 1, iw, info )
615 CALL chkxer(
'DSYSVX', infot, nout, lerr, ok )
617 CALL dsysvx(
'N',
'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1,
618 $ rcond, r1, r2, w, 1, iw, info )
619 CALL chkxer(
'DSYSVX', infot, nout, lerr, ok )
621 CALL dsysvx(
'N',
'U', 2, 0, a, 1, af, 2, ip, b, 2, x, 2,
622 $ rcond, r1, r2, w, 4, iw, info )
623 CALL chkxer(
'DSYSVX', infot, nout, lerr, ok )
625 CALL dsysvx(
'N',
'U', 2, 0, a, 2, af, 1, ip, b, 2, x, 2,
626 $ rcond, r1, r2, w, 4, iw, info )
627 CALL chkxer(
'DSYSVX', infot, nout, lerr, ok )
629 CALL dsysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 1, x, 2,
630 $ rcond, r1, r2, w, 4, iw, info )
631 CALL chkxer(
'DSYSVX', infot, nout, lerr, ok )
633 CALL dsysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 1,
634 $ rcond, r1, r2, w, 4, iw, info )
635 CALL chkxer(
'DSYSVX', infot, nout, lerr, ok )
637 CALL dsysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 2,
638 $ rcond, r1, r2, w, 3, iw, info )
639 CALL chkxer(
'DSYSVX', infot, nout, lerr, ok )
641 ELSE IF( lsamen( 2, c2,
'SR' ) )
THEN
645 srnamt =
'DSYSV_ROOK'
647 CALL dsysv_rook(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
648 CALL chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
650 CALL dsysv_rook(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
651 CALL chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
653 CALL dsysv_rook(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
654 CALL chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
656 CALL dsysv_rook(
'U', 2, 0, a, 1, ip, b, 2, w, 1, info )
657 CALL chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
659 CALL dsysv_rook(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
660 CALL chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
662 CALL dsysv_rook(
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
663 CALL chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
665 CALL dsysv_rook(
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
666 CALL chkxer(
'DSYSV_ROOK', infot, nout, lerr, ok )
668 ELSE IF( lsamen( 2, c2,
'SK' ) )
THEN
682 CALL dsysv_rk(
'/', 0, 0, a, 1, e, ip, b, 1, w, 1, info )
683 CALL chkxer(
'DSYSV_RK', infot, nout, lerr, ok )
685 CALL dsysv_rk(
'U', -1, 0, a, 1, e, ip, b, 1, w, 1, info )
686 CALL chkxer(
'DSYSV_RK', infot, nout, lerr, ok )
688 CALL dsysv_rk(
'U', 0, -1, a, 1, e, ip, b, 1, w, 1, info )
689 CALL chkxer(
'DSYSV_RK', infot, nout, lerr, ok )
691 CALL dsysv_rk(
'U', 2, 0, a, 1, e, ip, b, 2, w, 1, info )
692 CALL chkxer(
'DSYSV_RK', infot, nout, lerr, ok )
694 CALL dsysv_rk(
'U', 2, 0, a, 2, e, ip, b, 1, w, 1, info )
695 CALL chkxer(
'DSYSV_RK', infot, nout, lerr, ok )
697 CALL dsysv_rk(
'U', 0, 0, a, 1, e, ip, b, 1, w, 0, info )
698 CALL chkxer(
'DSYSV_RK', infot, nout, lerr, ok )
700 CALL dsysv_rk(
'U', 0, 0, a, 1, e, ip, b, 1, w, -2, info )
701 CALL chkxer(
'DSYSV_RK', infot, nout, lerr, ok )
703 ELSE IF( lsamen( 2, c2,
'SA' ) )
THEN
709 CALL dsysv_aa(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
710 CALL chkxer(
'DSYSV_AA', infot, nout, lerr, ok )
712 CALL dsysv_aa(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
713 CALL chkxer(
'DSYSV_AA', infot, nout, lerr, ok )
715 CALL dsysv_aa(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
716 CALL chkxer(
'DSYSV_AA', infot, nout, lerr, ok )
718 CALL dsysv_aa(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
719 CALL chkxer(
'DSYSV_AA', infot, nout, lerr, ok )
721 ELSE IF( lsamen( 2, c2,
'S2' ) )
THEN
725 srnamt =
'DSYSV_AA_2STAGE'
727 CALL dsysv_aa_2stage(
'/', 0, 0, a, 1, a, 1, ip, ip, b, 1,
729 CALL chkxer(
'DSYSV_AA_2STAGE', infot, nout, lerr, ok )
731 CALL dsysv_aa_2stage(
'U', -1, 0, a, 1, a, 1, ip, ip, b, 1,
733 CALL chkxer(
'DSYSV_AA_2STAGE', infot, nout, lerr, ok )
735 CALL dsysv_aa_2stage(
'U', 0, -1, a, 1, a, 1, ip, ip, b, 1,
737 CALL chkxer(
'DSYSV_AA_2STAGE', infot, nout, lerr, ok )
739 CALL dsysv_aa_2stage(
'U', 2, 1, a, 1, a, 1, ip, ip, b, 1,
741 CALL chkxer(
'DSYSV_AA_2STAGE', infot, nout, lerr, ok )
743 CALL dsysv_aa_2stage(
'U', 2, 1, a, 2, a, 8, ip, ip, b, 1,
745 CALL chkxer(
'DSYSV_AA_2STAGE', infot, nout, lerr, ok )
747 CALL dsysv_aa_2stage(
'U', 2, 1, a, 2, a, 1, ip, ip, b, 2,
749 CALL chkxer(
'DSYSV_AA_2STAGE', infot, nout, lerr, ok )
751 ELSE IF( lsamen( 2, c2,
'SP' ) )
THEN
757 CALL dspsv(
'/', 0, 0, a, ip, b, 1, info )
758 CALL chkxer(
'DSPSV ', infot, nout, lerr, ok )
760 CALL dspsv(
'U', -1, 0, a, ip, b, 1, info )
761 CALL chkxer(
'DSPSV ', infot, nout, lerr, ok )
763 CALL dspsv(
'U', 0, -1, a, ip, b, 1, info )
764 CALL chkxer(
'DSPSV ', infot, nout, lerr, ok )
766 CALL dspsv(
'U', 2, 0, a, ip, b, 1, info )
767 CALL chkxer(
'DSPSV ', infot, nout, lerr, ok )
773 CALL dspsvx(
'/',
'U', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
775 CALL chkxer(
'DSPSVX', infot, nout, lerr, ok )
777 CALL dspsvx(
'N',
'/', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
779 CALL chkxer(
'DSPSVX', infot, nout, lerr, ok )
781 CALL dspsvx(
'N',
'U', -1, 0, a, af, ip, b, 1, x, 1, rcond, r1,
783 CALL chkxer(
'DSPSVX', infot, nout, lerr, ok )
785 CALL dspsvx(
'N',
'U', 0, -1, a, af, ip, b, 1, x, 1, rcond, r1,
787 CALL chkxer(
'DSPSVX', infot, nout, lerr, ok )
789 CALL dspsvx(
'N',
'U', 2, 0, a, af, ip, b, 1, x, 2, rcond, r1,
791 CALL chkxer(
'DSPSVX', infot, nout, lerr, ok )
793 CALL dspsvx(
'N',
'U', 2, 0, a, af, ip, b, 2, x, 1, rcond, r1,
795 CALL chkxer(
'DSPSVX', infot, nout, lerr, ok )
801 WRITE( nout, fmt = 9999 )path
803 WRITE( nout, fmt = 9998 )path
806 9999
FORMAT( 1x, a3,
' drivers passed the tests of the error exits' )
807 9998
FORMAT(
' *** ', a3,
' drivers failed the tests of the error ',