78 INTEGER IP( NMAX ), IW( NMAX )
79 REAL A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
80 $ C( NMAX ), E( NMAX ), R( NMAX ), R1( NMAX ),
81 $ R2( NMAX ), W( 2*NMAX ), X( NMAX )
100 COMMON / infoc / infot, nout, ok, lerr
101 COMMON / srnamc / srnamt
109 WRITE( nout, fmt = * )
116 a( i, j ) = 1. / real( i+j )
117 af( i, j ) = 1. / real( i+j )
132 IF( lsamen( 2, c2,
'GE' ) )
THEN
138 CALL sgesv( -1, 0, a, 1, ip, b, 1, info )
139 CALL chkxer(
'SGESV ', infot, nout, lerr, ok )
141 CALL sgesv( 0, -1, a, 1, ip, b, 1, info )
142 CALL chkxer(
'SGESV ', infot, nout, lerr, ok )
144 CALL sgesv( 2, 1, a, 1, ip, b, 2, info )
145 CALL chkxer(
'SGESV ', infot, nout, lerr, ok )
147 CALL sgesv( 2, 1, a, 2, ip, b, 1, info )
148 CALL chkxer(
'SGESV ', infot, nout, lerr, ok )
154 CALL sgesvx(
'/',
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
155 $ x, 1, rcond, r1, r2, w, iw, info )
156 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
158 CALL sgesvx(
'N',
'/', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
159 $ x, 1, rcond, r1, r2, w, iw, info )
160 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
162 CALL sgesvx(
'N',
'N', -1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
163 $ x, 1, rcond, r1, r2, w, iw, info )
164 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
166 CALL sgesvx(
'N',
'N', 0, -1, a, 1, af, 1, ip, eq, r, c, b, 1,
167 $ x, 1, rcond, r1, r2, w, iw, info )
168 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
170 CALL sgesvx(
'N',
'N', 2, 1, a, 1, af, 2, ip, eq, r, c, b, 2,
171 $ x, 2, rcond, r1, r2, w, iw, info )
172 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
174 CALL sgesvx(
'N',
'N', 2, 1, a, 2, af, 1, ip, eq, r, c, b, 2,
175 $ x, 2, rcond, r1, r2, w, iw, info )
176 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
179 CALL sgesvx(
'F',
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
180 $ x, 1, rcond, r1, r2, w, iw, info )
181 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
184 CALL sgesvx(
'F',
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
185 $ x, 1, rcond, r1, r2, w, iw, info )
186 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
189 CALL sgesvx(
'F',
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
190 $ x, 1, rcond, r1, r2, w, iw, info )
191 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
193 CALL sgesvx(
'N',
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b, 1,
194 $ x, 2, rcond, r1, r2, w, iw, info )
195 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
197 CALL sgesvx(
'N',
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b, 2,
198 $ x, 1, rcond, r1, r2, w, iw, info )
199 CALL chkxer(
'SGESVX', infot, nout, lerr, ok )
201 ELSE IF( lsamen( 2, c2,
'GB' ) )
THEN
207 CALL sgbsv( -1, 0, 0, 0, a, 1, ip, b, 1, info )
208 CALL chkxer(
'SGBSV ', infot, nout, lerr, ok )
210 CALL sgbsv( 1, -1, 0, 0, a, 1, ip, b, 1, info )
211 CALL chkxer(
'SGBSV ', infot, nout, lerr, ok )
213 CALL sgbsv( 1, 0, -1, 0, a, 1, ip, b, 1, info )
214 CALL chkxer(
'SGBSV ', infot, nout, lerr, ok )
216 CALL sgbsv( 0, 0, 0, -1, a, 1, ip, b, 1, info )
217 CALL chkxer(
'SGBSV ', infot, nout, lerr, ok )
219 CALL sgbsv( 1, 1, 1, 0, a, 3, ip, b, 1, info )
220 CALL chkxer(
'SGBSV ', infot, nout, lerr, ok )
222 CALL sgbsv( 2, 0, 0, 0, a, 1, ip, b, 1, info )
223 CALL chkxer(
'SGBSV ', infot, nout, lerr, ok )
229 CALL sgbsvx(
'/',
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
230 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
231 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
233 CALL sgbsvx(
'N',
'/', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
234 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
235 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
237 CALL sgbsvx(
'N',
'N', -1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
238 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
239 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
241 CALL sgbsvx(
'N',
'N', 1, -1, 0, 0, a, 1, af, 1, ip, eq, r, c,
242 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
243 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
245 CALL sgbsvx(
'N',
'N', 1, 0, -1, 0, a, 1, af, 1, ip, eq, r, c,
246 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
247 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
249 CALL sgbsvx(
'N',
'N', 0, 0, 0, -1, a, 1, af, 1, ip, eq, r, c,
250 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
251 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
253 CALL sgbsvx(
'N',
'N', 1, 1, 1, 0, a, 2, af, 4, ip, eq, r, c,
254 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
255 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
257 CALL sgbsvx(
'N',
'N', 1, 1, 1, 0, a, 3, af, 3, ip, eq, r, c,
258 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
259 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
262 CALL sgbsvx(
'F',
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
263 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
264 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
267 CALL sgbsvx(
'F',
'N', 1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
268 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
269 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
272 CALL sgbsvx(
'F',
'N', 1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
273 $ b, 1, x, 1, rcond, r1, r2, w, iw, info )
274 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
276 CALL sgbsvx(
'N',
'N', 2, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
277 $ b, 1, x, 2, rcond, r1, r2, w, iw, info )
278 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
280 CALL sgbsvx(
'N',
'N', 2, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
281 $ b, 2, x, 1, rcond, r1, r2, w, iw, info )
282 CALL chkxer(
'SGBSVX', infot, nout, lerr, ok )
284 ELSE IF( lsamen( 2, c2,
'GT' ) )
THEN
290 CALL sgtsv( -1, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1,
292 CALL chkxer(
'SGTSV ', infot, nout, lerr, ok )
294 CALL sgtsv( 0, -1, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1,
296 CALL chkxer(
'SGTSV ', infot, nout, lerr, ok )
298 CALL sgtsv( 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1, info )
299 CALL chkxer(
'SGTSV ', infot, nout, lerr, ok )
305 CALL sgtsvx(
'/',
'N', 0, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
306 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
307 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
308 CALL chkxer(
'SGTSVX', infot, nout, lerr, ok )
310 CALL sgtsvx(
'N',
'/', 0, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
311 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
312 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
313 CALL chkxer(
'SGTSVX', infot, nout, lerr, ok )
315 CALL sgtsvx(
'N',
'N', -1, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
316 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
317 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
318 CALL chkxer(
'SGTSVX', infot, nout, lerr, ok )
320 CALL sgtsvx(
'N',
'N', 0, -1, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
321 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
322 $ ip, b, 1, x, 1, rcond, r1, r2, w, iw, info )
323 CALL chkxer(
'SGTSVX', infot, nout, lerr, ok )
325 CALL sgtsvx(
'N',
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
326 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
327 $ ip, b, 1, x, 2, rcond, r1, r2, w, iw, info )
328 CALL chkxer(
'SGTSVX', infot, nout, lerr, ok )
330 CALL sgtsvx(
'N',
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
331 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
332 $ ip, b, 2, x, 1, rcond, r1, r2, w, iw, info )
333 CALL chkxer(
'SGTSVX', infot, nout, lerr, ok )
335 ELSE IF( lsamen( 2, c2,
'PO' ) )
THEN
341 CALL sposv(
'/', 0, 0, a, 1, b, 1, info )
342 CALL chkxer(
'SPOSV ', infot, nout, lerr, ok )
344 CALL sposv(
'U', -1, 0, a, 1, b, 1, info )
345 CALL chkxer(
'SPOSV ', infot, nout, lerr, ok )
347 CALL sposv(
'U', 0, -1, a, 1, b, 1, info )
348 CALL chkxer(
'SPOSV ', infot, nout, lerr, ok )
350 CALL sposv(
'U', 2, 0, a, 1, b, 2, info )
351 CALL chkxer(
'SPOSV ', infot, nout, lerr, ok )
353 CALL sposv(
'U', 2, 0, a, 2, b, 1, info )
354 CALL chkxer(
'SPOSV ', infot, nout, lerr, ok )
360 CALL sposvx(
'/',
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
361 $ rcond, r1, r2, w, iw, info )
362 CALL chkxer(
'SPOSVX', infot, nout, lerr, ok )
364 CALL sposvx(
'N',
'/', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
365 $ rcond, r1, r2, w, iw, info )
366 CALL chkxer(
'SPOSVX', infot, nout, lerr, ok )
368 CALL sposvx(
'N',
'U', -1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
369 $ rcond, r1, r2, w, iw, info )
370 CALL chkxer(
'SPOSVX', infot, nout, lerr, ok )
372 CALL sposvx(
'N',
'U', 0, -1, a, 1, af, 1, eq, c, b, 1, x, 1,
373 $ rcond, r1, r2, w, iw, info )
374 CALL chkxer(
'SPOSVX', infot, nout, lerr, ok )
376 CALL sposvx(
'N',
'U', 2, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
377 $ rcond, r1, r2, w, iw, info )
378 CALL chkxer(
'SPOSVX', infot, nout, lerr, ok )
380 CALL sposvx(
'N',
'U', 2, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
381 $ rcond, r1, r2, w, iw, info )
382 CALL chkxer(
'SPOSVX', infot, nout, lerr, ok )
385 CALL sposvx(
'F',
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
386 $ rcond, r1, r2, w, iw, info )
387 CALL chkxer(
'SPOSVX', infot, nout, lerr, ok )
390 CALL sposvx(
'F',
'U', 1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
391 $ rcond, r1, r2, w, iw, info )
392 CALL chkxer(
'SPOSVX', infot, nout, lerr, ok )
394 CALL sposvx(
'N',
'U', 2, 0, a, 2, af, 2, eq, c, b, 1, x, 2,
395 $ rcond, r1, r2, w, iw, info )
396 CALL chkxer(
'SPOSVX', infot, nout, lerr, ok )
398 CALL sposvx(
'N',
'U', 2, 0, a, 2, af, 2, eq, c, b, 2, x, 1,
399 $ rcond, r1, r2, w, iw, info )
400 CALL chkxer(
'SPOSVX', infot, nout, lerr, ok )
402 ELSE IF( lsamen( 2, c2,
'PP' ) )
THEN
408 CALL sppsv(
'/', 0, 0, a, b, 1, info )
409 CALL chkxer(
'SPPSV ', infot, nout, lerr, ok )
411 CALL sppsv(
'U', -1, 0, a, b, 1, info )
412 CALL chkxer(
'SPPSV ', infot, nout, lerr, ok )
414 CALL sppsv(
'U', 0, -1, a, b, 1, info )
415 CALL chkxer(
'SPPSV ', infot, nout, lerr, ok )
417 CALL sppsv(
'U', 2, 0, a, b, 1, info )
418 CALL chkxer(
'SPPSV ', infot, nout, lerr, ok )
424 CALL sppsvx(
'/',
'U', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
425 $ r1, r2, w, iw, info )
426 CALL chkxer(
'SPPSVX', infot, nout, lerr, ok )
428 CALL sppsvx(
'N',
'/', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
429 $ r1, r2, w, iw, info )
430 CALL chkxer(
'SPPSVX', infot, nout, lerr, ok )
432 CALL sppsvx(
'N',
'U', -1, 0, a, af, eq, c, b, 1, x, 1, rcond,
433 $ r1, r2, w, iw, info )
434 CALL chkxer(
'SPPSVX', infot, nout, lerr, ok )
436 CALL sppsvx(
'N',
'U', 0, -1, a, af, eq, c, b, 1, x, 1, rcond,
437 $ r1, r2, w, iw, info )
438 CALL chkxer(
'SPPSVX', infot, nout, lerr, ok )
441 CALL sppsvx(
'F',
'U', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
442 $ r1, r2, w, iw, info )
443 CALL chkxer(
'SPPSVX', infot, nout, lerr, ok )
446 CALL sppsvx(
'F',
'U', 1, 0, a, af, eq, c, b, 1, x, 1, rcond,
447 $ r1, r2, w, iw, info )
448 CALL chkxer(
'SPPSVX', infot, nout, lerr, ok )
450 CALL sppsvx(
'N',
'U', 2, 0, a, af, eq, c, b, 1, x, 2, rcond,
451 $ r1, r2, w, iw, info )
452 CALL chkxer(
'SPPSVX', infot, nout, lerr, ok )
454 CALL sppsvx(
'N',
'U', 2, 0, a, af, eq, c, b, 2, x, 1, rcond,
455 $ r1, r2, w, iw, info )
456 CALL chkxer(
'SPPSVX', infot, nout, lerr, ok )
458 ELSE IF( lsamen( 2, c2,
'PB' ) )
THEN
464 CALL spbsv(
'/', 0, 0, 0, a, 1, b, 1, info )
465 CALL chkxer(
'SPBSV ', infot, nout, lerr, ok )
467 CALL spbsv(
'U', -1, 0, 0, a, 1, b, 1, info )
468 CALL chkxer(
'SPBSV ', infot, nout, lerr, ok )
470 CALL spbsv(
'U', 1, -1, 0, a, 1, b, 1, info )
471 CALL chkxer(
'SPBSV ', infot, nout, lerr, ok )
473 CALL spbsv(
'U', 0, 0, -1, a, 1, b, 1, info )
474 CALL chkxer(
'SPBSV ', infot, nout, lerr, ok )
476 CALL spbsv(
'U', 1, 1, 0, a, 1, b, 2, info )
477 CALL chkxer(
'SPBSV ', infot, nout, lerr, ok )
479 CALL spbsv(
'U', 2, 0, 0, a, 1, b, 1, info )
480 CALL chkxer(
'SPBSV ', infot, nout, lerr, ok )
486 CALL spbsvx(
'/',
'U', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
487 $ rcond, r1, r2, w, iw, info )
488 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
490 CALL spbsvx(
'N',
'/', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
491 $ rcond, r1, r2, w, iw, info )
492 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
494 CALL spbsvx(
'N',
'U', -1, 0, 0, a, 1, af, 1, eq, c, b, 1, x,
495 $ 1, rcond, r1, r2, w, iw, info )
496 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
498 CALL spbsvx(
'N',
'U', 1, -1, 0, a, 1, af, 1, eq, c, b, 1, x,
499 $ 1, rcond, r1, r2, w, iw, info )
500 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
502 CALL spbsvx(
'N',
'U', 0, 0, -1, a, 1, af, 1, eq, c, b, 1, x,
503 $ 1, rcond, r1, r2, w, iw, info )
504 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
506 CALL spbsvx(
'N',
'U', 1, 1, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
507 $ rcond, r1, r2, w, iw, info )
508 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
510 CALL spbsvx(
'N',
'U', 1, 1, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
511 $ rcond, r1, r2, w, iw, info )
512 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
515 CALL spbsvx(
'F',
'U', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
516 $ rcond, r1, r2, w, iw, info )
517 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
520 CALL spbsvx(
'F',
'U', 1, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
521 $ rcond, r1, r2, w, iw, info )
522 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
524 CALL spbsvx(
'N',
'U', 2, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 2,
525 $ rcond, r1, r2, w, iw, info )
526 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
528 CALL spbsvx(
'N',
'U', 2, 0, 0, a, 1, af, 1, eq, c, b, 2, x, 1,
529 $ rcond, r1, r2, w, iw, info )
530 CALL chkxer(
'SPBSVX', infot, nout, lerr, ok )
532 ELSE IF( lsamen( 2, c2,
'PT' ) )
THEN
538 CALL sptsv( -1, 0, a( 1, 1 ), a( 1, 2 ), b, 1, info )
539 CALL chkxer(
'SPTSV ', infot, nout, lerr, ok )
541 CALL sptsv( 0, -1, a( 1, 1 ), a( 1, 2 ), b, 1, info )
542 CALL chkxer(
'SPTSV ', infot, nout, lerr, ok )
544 CALL sptsv( 2, 0, a( 1, 1 ), a( 1, 2 ), b, 1, info )
545 CALL chkxer(
'SPTSV ', infot, nout, lerr, ok )
551 CALL sptsvx(
'/', 0, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
552 $ af( 1, 2 ), b, 1, x, 1, rcond, r1, r2, w, info )
553 CALL chkxer(
'SPTSVX', infot, nout, lerr, ok )
555 CALL sptsvx(
'N', -1, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
556 $ af( 1, 2 ), b, 1, x, 1, rcond, r1, r2, w, info )
557 CALL chkxer(
'SPTSVX', infot, nout, lerr, ok )
559 CALL sptsvx(
'N', 0, -1, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
560 $ af( 1, 2 ), b, 1, x, 1, rcond, r1, r2, w, info )
561 CALL chkxer(
'SPTSVX', infot, nout, lerr, ok )
563 CALL sptsvx(
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
564 $ af( 1, 2 ), b, 1, x, 2, rcond, r1, r2, w, info )
565 CALL chkxer(
'SPTSVX', infot, nout, lerr, ok )
567 CALL sptsvx(
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), af( 1, 1 ),
568 $ af( 1, 2 ), b, 2, x, 1, rcond, r1, r2, w, info )
569 CALL chkxer(
'SPTSVX', infot, nout, lerr, ok )
571 ELSE IF( lsamen( 2, c2,
'SY' ) )
THEN
577 CALL ssysv(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
578 CALL chkxer(
'SSYSV ', infot, nout, lerr, ok )
580 CALL ssysv(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
581 CALL chkxer(
'SSYSV ', infot, nout, lerr, ok )
583 CALL ssysv(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
584 CALL chkxer(
'SSYSV ', infot, nout, lerr, ok )
586 CALL ssysv(
'U', 2, 0, a, 1, ip, b, 2, w, 1, info )
587 CALL chkxer(
'SSYSV ', infot, nout, lerr, ok )
589 CALL ssysv(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
590 CALL chkxer(
'SSYSV ', infot, nout, lerr, ok )
592 CALL ssysv(
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
593 CALL chkxer(
'SSYSV ', infot, nout, lerr, ok )
595 CALL ssysv(
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
596 CALL chkxer(
'SSYSV ', infot, nout, lerr, ok )
602 CALL ssysvx(
'/',
'U', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
603 $ rcond, r1, r2, w, 1, iw, info )
604 CALL chkxer(
'SSYSVX', infot, nout, lerr, ok )
606 CALL ssysvx(
'N',
'/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
607 $ rcond, r1, r2, w, 1, iw, info )
608 CALL chkxer(
'SSYSVX', infot, nout, lerr, ok )
610 CALL ssysvx(
'N',
'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1,
611 $ rcond, r1, r2, w, 1, iw, info )
612 CALL chkxer(
'SSYSVX', infot, nout, lerr, ok )
614 CALL ssysvx(
'N',
'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1,
615 $ rcond, r1, r2, w, 1, iw, info )
616 CALL chkxer(
'SSYSVX', infot, nout, lerr, ok )
618 CALL ssysvx(
'N',
'U', 2, 0, a, 1, af, 2, ip, b, 2, x, 2,
619 $ rcond, r1, r2, w, 4, iw, info )
620 CALL chkxer(
'SSYSVX', infot, nout, lerr, ok )
622 CALL ssysvx(
'N',
'U', 2, 0, a, 2, af, 1, ip, b, 2, x, 2,
623 $ rcond, r1, r2, w, 4, iw, info )
624 CALL chkxer(
'SSYSVX', infot, nout, lerr, ok )
626 CALL ssysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 1, x, 2,
627 $ rcond, r1, r2, w, 4, iw, info )
628 CALL chkxer(
'SSYSVX', infot, nout, lerr, ok )
630 CALL ssysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 1,
631 $ rcond, r1, r2, w, 4, iw, info )
632 CALL chkxer(
'SSYSVX', infot, nout, lerr, ok )
634 CALL ssysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 2,
635 $ rcond, r1, r2, w, 3, iw, info )
636 CALL chkxer(
'SSYSVX', infot, nout, lerr, ok )
639 ELSE IF( lsamen( 2, c2,
'SR' ) )
THEN
643 srnamt =
'SSYSV_ROOK'
645 CALL ssysv_rook(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
646 CALL chkxer(
'SSYSV_ROOK', infot, nout, lerr, ok )
648 CALL ssysv_rook(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
649 CALL chkxer(
'SSYSV_ROOK', infot, nout, lerr, ok )
651 CALL ssysv_rook(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
652 CALL chkxer(
'SSYSV_ROOK', infot, nout, lerr, ok )
654 CALL ssysv_rook(
'U', 2, 0, a, 1, ip, b, 2, w, 1, info )
655 CALL chkxer(
'SSYSV_ROOK', infot, nout, lerr, ok )
657 CALL ssysv_rook(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
658 CALL chkxer(
'SSYSV_ROOK', infot, nout, lerr, ok )
660 CALL ssysv_rook(
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
661 CALL chkxer(
'SSYSV_ROOK', infot, nout, lerr, ok )
663 CALL ssysv_rook(
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
664 CALL chkxer(
'SSYSV_ROOK', infot, nout, lerr, ok )
666 ELSE IF( lsamen( 2, c2,
'SK' ) )
THEN
680 CALL ssysv_rk(
'/', 0, 0, a, 1, e, ip, b, 1, w, 1, info )
681 CALL chkxer(
'SSYSV_RK', infot, nout, lerr, ok )
683 CALL ssysv_rk(
'U', -1, 0, a, 1, e, ip, b, 1, w, 1, info )
684 CALL chkxer(
'SSYSV_RK', infot, nout, lerr, ok )
686 CALL ssysv_rk(
'U', 0, -1, a, 1, e, ip, b, 1, w, 1, info )
687 CALL chkxer(
'SSYSV_RK', infot, nout, lerr, ok )
689 CALL ssysv_rk(
'U', 2, 0, a, 1, e, ip, b, 2, w, 1, info )
690 CALL chkxer(
'SSYSV_RK', infot, nout, lerr, ok )
692 CALL ssysv_rk(
'U', 2, 0, a, 2, e, ip, b, 1, w, 1, info )
693 CALL chkxer(
'SSYSV_RK', infot, nout, lerr, ok )
695 CALL ssysv_rk(
'U', 0, 0, a, 1, e, ip, b, 1, w, 0, info )
696 CALL chkxer(
'SSYSV_RK', infot, nout, lerr, ok )
698 CALL ssysv_rk(
'U', 0, 0, a, 1, e, ip, b, 1, w, -2, info )
699 CALL chkxer(
'SSYSV_RK', infot, nout, lerr, ok )
701 ELSE IF( lsamen( 2, c2,
'SA' ) )
THEN
707 CALL ssysv_aa(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
708 CALL chkxer(
'SSYSV_AA', infot, nout, lerr, ok )
710 CALL ssysv_aa(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
711 CALL chkxer(
'SSYSV_AA', infot, nout, lerr, ok )
713 CALL ssysv_aa(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
714 CALL chkxer(
'SSYSV_AA', infot, nout, lerr, ok )
716 CALL ssysv_aa(
'U', 2, 0, a, 1, ip, b, 2, w, 1, info )
717 CALL chkxer(
'SSYSV_AA', infot, nout, lerr, ok )
719 CALL ssysv_aa(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
720 CALL chkxer(
'SSYSV_AA', infot, nout, lerr, ok )
722 CALL ssysv_aa(
'U', 3, 1, a, 3, ip, b, 3, w, 6, info )
723 CALL chkxer(
'SSYSV_AA', infot, nout, lerr, ok )
725 ELSE IF( lsamen( 2, c2,
'S2' ) )
THEN
729 srnamt =
'SSYSV_AA_2STAGE'
731 CALL ssysv_aa_2stage(
'/', 0, 0, a, 1, a, 1, ip, ip, b, 1,
733 CALL chkxer(
'SSYSV_AA_2STAGE', infot, nout, lerr, ok )
735 CALL ssysv_aa_2stage(
'U', -1, 0, a, 1, a, 1, ip, ip, b, 1,
737 CALL chkxer(
'SSYSV_AA_2STAGE', infot, nout, lerr, ok )
739 CALL ssysv_aa_2stage(
'U', 0, -1, a, 1, a, 1, ip, ip, b, 1,
741 CALL chkxer(
'SSYSV_AA_2STAGE', infot, nout, lerr, ok )
743 CALL ssysv_aa_2stage(
'U', 2, 1, a, 1, a, 1, ip, ip, b, 1,
745 CALL chkxer(
'SSYSV_AA_2STAGE', infot, nout, lerr, ok )
747 CALL ssysv_aa_2stage(
'U', 2, 1, a, 2, a, 1, ip, ip, b, 2,
749 CALL chkxer(
'SSYSV_AA_2STAGE', infot, nout, lerr, ok )
751 CALL ssysv_aa_2stage(
'U', 2, 1, a, 2, a, 8, ip, ip, b, 1,
753 CALL chkxer(
'SSYSV_AA_2STAGE', infot, nout, lerr, ok )
755 CALL ssysv_aa_2stage(
'U', 2, 1, a, 2, a, 8, ip, ip, b, 2,
757 CALL chkxer(
'SSYSV_AA_2STAGE', infot, nout, lerr, ok )
759 ELSE IF( lsamen( 2, c2,
'SP' ) )
THEN
765 CALL sspsv(
'/', 0, 0, a, ip, b, 1, info )
766 CALL chkxer(
'SSPSV ', infot, nout, lerr, ok )
768 CALL sspsv(
'U', -1, 0, a, ip, b, 1, info )
769 CALL chkxer(
'SSPSV ', infot, nout, lerr, ok )
771 CALL sspsv(
'U', 0, -1, a, ip, b, 1, info )
772 CALL chkxer(
'SSPSV ', infot, nout, lerr, ok )
774 CALL sspsv(
'U', 2, 0, a, ip, b, 1, info )
775 CALL chkxer(
'SSPSV ', infot, nout, lerr, ok )
781 CALL sspsvx(
'/',
'U', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
783 CALL chkxer(
'SSPSVX', infot, nout, lerr, ok )
785 CALL sspsvx(
'N',
'/', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
787 CALL chkxer(
'SSPSVX', infot, nout, lerr, ok )
789 CALL sspsvx(
'N',
'U', -1, 0, a, af, ip, b, 1, x, 1, rcond, r1,
791 CALL chkxer(
'SSPSVX', infot, nout, lerr, ok )
793 CALL sspsvx(
'N',
'U', 0, -1, a, af, ip, b, 1, x, 1, rcond, r1,
795 CALL chkxer(
'SSPSVX', infot, nout, lerr, ok )
797 CALL sspsvx(
'N',
'U', 2, 0, a, af, ip, b, 1, x, 2, rcond, r1,
799 CALL chkxer(
'SSPSVX', infot, nout, lerr, ok )
801 CALL sspsvx(
'N',
'U', 2, 0, a, af, ip, b, 2, x, 1, rcond, r1,
803 CALL chkxer(
'SSPSVX', infot, nout, lerr, ok )
809 WRITE( nout, fmt = 9999 )path
811 WRITE( nout, fmt = 9998 )path
814 9999
FORMAT( 1x, a3,
' drivers passed the tests of the error exits' )
815 9998
FORMAT(
' *** ', a3,
' drivers failed the tests of the error ',
subroutine chkxer(srnamt, infot, nout, lerr, ok)
subroutine sgbsv(n, kl, ku, nrhs, ab, ldab, ipiv, b, ldb, info)
SGBSV computes the solution to system of linear equations A * X = B for GB matrices (simple driver)
subroutine sgbsvx(fact, trans, n, kl, ku, nrhs, ab, ldab, afb, ldafb, ipiv, equed, r, c, b, ldb, x, ldx, rcond, ferr, berr, work, iwork, info)
SGBSVX computes the solution to system of linear equations A * X = B for GB matrices
subroutine sgesv(n, nrhs, a, lda, ipiv, b, ldb, info)
Download SGESV + dependencies <a href="http://www.netlib.org/cgi-bin/netlibfiles....
subroutine sgesvx(fact, trans, n, nrhs, a, lda, af, ldaf, ipiv, equed, r, c, b, ldb, x, ldx, rcond, ferr, berr, work, iwork, info)
SGESVX computes the solution to system of linear equations A * X = B for GE matrices
subroutine sgtsv(n, nrhs, dl, d, du, b, ldb, info)
SGTSV computes the solution to system of linear equations A * X = B for GT matrices
subroutine sgtsvx(fact, trans, n, nrhs, dl, d, du, dlf, df, duf, du2, ipiv, b, ldb, x, ldx, rcond, ferr, berr, work, iwork, info)
SGTSVX computes the solution to system of linear equations A * X = B for GT matrices
subroutine ssysv_aa_2stage(uplo, n, nrhs, a, lda, tb, ltb, ipiv, ipiv2, b, ldb, work, lwork, info)
SSYSV_AA_2STAGE computes the solution to system of linear equations A * X = B for SY matrices
subroutine ssysv_aa(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
SSYSV_AA computes the solution to system of linear equations A * X = B for SY matrices
subroutine ssysv_rk(uplo, n, nrhs, a, lda, e, ipiv, b, ldb, work, lwork, info)
SSYSV_RK computes the solution to system of linear equations A * X = B for SY matrices
subroutine ssysv_rook(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
SSYSV_ROOK computes the solution to system of linear equations A * X = B for SY matrices
subroutine ssysv(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
SSYSV computes the solution to system of linear equations A * X = B for SY matrices
subroutine ssysvx(fact, uplo, n, nrhs, a, lda, af, ldaf, ipiv, b, ldb, x, ldx, rcond, ferr, berr, work, lwork, iwork, info)
SSYSVX computes the solution to system of linear equations A * X = B for SY matrices
subroutine sspsv(uplo, n, nrhs, ap, ipiv, b, ldb, info)
SSPSV computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine sspsvx(fact, uplo, n, nrhs, ap, afp, ipiv, b, ldb, x, ldx, rcond, ferr, berr, work, iwork, info)
SSPSVX computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine spbsv(uplo, n, kd, nrhs, ab, ldab, b, ldb, info)
SPBSV computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine spbsvx(fact, uplo, n, kd, nrhs, ab, ldab, afb, ldafb, equed, s, b, ldb, x, ldx, rcond, ferr, berr, work, iwork, info)
SPBSVX computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine sposv(uplo, n, nrhs, a, lda, b, ldb, info)
SPOSV computes the solution to system of linear equations A * X = B for PO matrices
subroutine sposvx(fact, uplo, n, nrhs, a, lda, af, ldaf, equed, s, b, ldb, x, ldx, rcond, ferr, berr, work, iwork, info)
SPOSVX computes the solution to system of linear equations A * X = B for PO matrices
subroutine sppsv(uplo, n, nrhs, ap, b, ldb, info)
SPPSV computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine sppsvx(fact, uplo, n, nrhs, ap, afp, equed, s, b, ldb, x, ldx, rcond, ferr, berr, work, iwork, info)
SPPSVX computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine sptsv(n, nrhs, d, e, b, ldb, info)
SPTSV computes the solution to system of linear equations A * X = B for PT matrices
subroutine sptsvx(fact, n, nrhs, d, e, df, ef, b, ldb, x, ldx, rcond, ferr, berr, work, info)
SPTSVX computes the solution to system of linear equations A * X = B for PT matrices
subroutine serrvx(path, nunit)
SERRVX