78 REAL A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
79 $ R1( NMAX ), R2( NMAX ), W( 3* ), X( NMAX )
97 COMMON / infoc / infot, nout, ok, lerr
98 COMMON / srnamc / srnamt
106 WRITE( nout, fmt = * )
113 a( i, j ) = 1. / real( i+j )
114 af( i, j ) = 1. / real( i+j )
125 IF( lsamen( 2, c2,
'PO' ) )
THEN
134 CALL spotrf(
'/', 0, a, 1, info )
135 CALL chkxer(
'SPOTRF', infot, nout, lerr, ok )
137 CALL spotrf(
'U', -1, a, 1, info )
138 CALL chkxer(
'SPOTRF', infot, nout, lerr, ok )
140 CALL spotrf(
'U', 2, a, 1, info )
141 CALL chkxer(
'SPOTRF', infot, nout, lerr, ok )
147 CALL spotf2(
'/', 0, a, 1, info )
148 CALL chkxer(
'SPOTF2', infot, nout, lerr, ok )
150 CALL spotf2( 'u
', -1, A, 1, INFO )
151 CALL CHKXER( 'spotf2', INFOT, NOUT, LERR, OK )
153 CALL SPOTF2( 'u
', 2, A, 1, INFO )
154 CALL CHKXER( 'spotf2', INFOT, NOUT, LERR, OK )
160 CALL SPOTRI( '/
', 0, A, 1, INFO )
161 CALL CHKXER( 'spotri', INFOT, NOUT, LERR, OK )
163 CALL SPOTRI( 'u
', -1, A, 1, INFO )
164 CALL CHKXER( 'spotri', INFOT, NOUT, LERR, OK )
166 CALL SPOTRI( 'u
', 2, A, 1, INFO )
167 CALL CHKXER( 'spotri', INFOT, NOUT, LERR, OK )
173 CALL SPOTRS( '/
', 0, 0, A, 1, B, 1, INFO )
174 CALL CHKXER( 'spotrs', INFOT, NOUT, LERR, OK )
176 CALL SPOTRS( 'u
', -1, 0, A, 1, B, 1, INFO )
177 CALL CHKXER( 'spotrs', INFOT, NOUT, LERR, OK )
179 CALL SPOTRS( 'u
', 0, -1, A, 1, B, 1, INFO )
180 CALL CHKXER( 'spotrs', INFOT, NOUT, LERR, OK )
182 CALL SPOTRS( 'u
', 2, 1, A, 1, B, 2, INFO )
183 CALL CHKXER( 'spotrs', infot, nout, lerr, ok )
185 CALL spotrs(
'U', 2, 1, a, 2, b, 1, info )
186 CALL chkxer(
'SPOTRS', infot, nout, lerr, ok )
192 CALL sporfs(
'/', 0, 0, a, 1, af, 1, b, 1, x, 1, r1, r2, w, iw,
194 CALL chkxer(
'SPORFS', infot, nout, lerr, ok )
196 CALL sporfs(
'U', -1, 0, a, 1, af, 1, b, 1, x, 1, r1, r2, w,
198 CALL chkxer(
'SPORFS', infot, nout, lerr, ok )
200 CALL sporfs(
'U', 0, -1, a, 1, af, 1, b, 1, x, 1, r1, r2, w,
202 CALL chkxer(
'SPORFS', infot, nout, lerr, ok )
204 CALL sporfs(
'U', 2, 1, a, 1, af, 2, b, 2, x, 2, r1, r2, w, iw,
206 CALL chkxer(
'SPORFS', infot, nout, lerr, ok )
208 CALL sporfs(
'U', 2, 1, a, 2, af, 1, b, 2, x, 2, r1, r2, w, iw,
210 CALL chkxer(
'SPORFS', infot, nout, lerr, ok )
212 CALL sporfs(
'U', 2, 1, a, 2, af, 2, b, 1, x, 2, r1, r2, w, iw,
214 CALL chkxer(
'SPORFS', infot, nout, lerr, ok )
216 CALL sporfs( 'u
', 2, 1, A, 2, AF, 2, B, 2, X, 1, R1, R2, W, IW,
218 CALL CHKXER( 'sporfs', INFOT, NOUT, LERR, OK )
224 CALL SPOCON( '/
', 0, A, 1, ANRM, RCOND, W, IW, INFO )
225 CALL CHKXER( 'spocon', INFOT, NOUT, LERR, OK )
227 CALL SPOCON( 'u
', -1, A, 1, ANRM, RCOND, W, IW, INFO )
228 CALL CHKXER( 'spocon', INFOT, NOUT, LERR, OK )
230 CALL SPOCON( 'u
', 2, A, 1, ANRM, RCOND, W, IW, INFO )
231 CALL CHKXER( 'spocon', INFOT, NOUT, LERR, OK )
237 CALL SPOEQU( -1, A, 1, R1, RCOND, ANRM, INFO )
238 CALL CHKXER( 'spoequ', INFOT, NOUT, LERR, OK )
240 CALL SPOEQU( 2, A, 1, R1, RCOND, ANRM, INFO )
241 CALL CHKXER( 'spoequ', INFOT, NOUT, LERR, OK )
243 ELSE IF( LSAMEN( 2, C2, 'pp
' ) ) THEN
252 CALL SPPTRF( '/
', 0, A, INFO )
253 CALL CHKXER( 'spptrf', INFOT, NOUT, LERR, OK )
255 CALL SPPTRF( 'u
', -1, A, INFO )
256 CALL CHKXER( 'spptrf', INFOT, NOUT, LERR, OK )
262 CALL SPPTRI( '/
', 0, A, INFO )
263 CALL CHKXER( 'spptri', INFOT, NOUT, LERR, OK )
265 CALL SPPTRI( 'u
', -1, A, INFO )
266 CALL CHKXER( 'spptri', INFOT, NOUT, LERR, OK )
272 CALL SPPTRS( '/
', 0, 0, A, B, 1, INFO )
273 CALL CHKXER( 'spptrs', INFOT, NOUT, LERR, OK )
275 CALL SPPTRS( 'u
', -1, 0, A, B, 1, INFO )
276 CALL CHKXER( 'spptrs', INFOT, NOUT, LERR, OK )
278 CALL SPPTRS( 'u
', 0, -1, A, B, 1, INFO )
279 CALL CHKXER( 'spptrs', INFOT, NOUT, LERR, OK )
281 CALL SPPTRS( 'u
', 2, 1, A, B, 1, INFO )
282 CALL CHKXER( 'spptrs', INFOT, NOUT, LERR, OK )
288 CALL SPPRFS( '/
', 0, 0, A, AF, B, 1, X, 1, R1, R2, W, IW,
290 CALL CHKXER( 'spprfs', INFOT, NOUT, LERR, OK )
292 CALL SPPRFS( 'u
', -1, 0, A, AF, B, 1, X, 1, R1, R2, W, IW,
294 CALL CHKXER( 'spprfs', INFOT, NOUT, LERR, OK )
296 CALL SPPRFS( 'u
', 0, -1, A, AF, B, 1, X, 1, R1, R2, W, IW,
298 CALL CHKXER( 'spprfs', INFOT, NOUT, LERR, OK )
300 CALL SPPRFS( 'u
', 2, 1, A, AF, B, 1, X, 2, R1, R2, W, IW,
302 CALL CHKXER( 'spprfs', INFOT, NOUT, LERR, OK )
304 CALL SPPRFS( 'u
', 2, 1, A, AF, B, 2, X, 1, R1, R2, W, IW,
306 CALL CHKXER( 'spprfs', INFOT, NOUT, LERR, OK )
312 CALL SPPCON( '/
', 0, A, ANRM, RCOND, W, IW, INFO )
313 CALL CHKXER( 'sppcon', INFOT, NOUT, LERR, OK )
315 CALL SPPCON( 'u
', -1, A, ANRM, RCOND, W, IW, INFO )
316 CALL CHKXER( 'sppcon', INFOT, NOUT, LERR, OK )
322 CALL SPPEQU( '/
', 0, A, R1, RCOND, ANRM, INFO )
323 CALL CHKXER( 'sppequ', INFOT, NOUT, LERR, OK )
325 CALL SPPEQU( 'u
', -1, A, R1, RCOND, ANRM, INFO )
326 CALL CHKXER( 'sppequ', INFOT, NOUT, LERR, OK )
328 ELSE IF( LSAMEN( 2, C2, 'pb
' ) ) THEN
337 CALL SPBTRF( '/
', 0, 0, A, 1, INFO )
338 CALL CHKXER( 'spbtrf', INFOT, NOUT, LERR, OK )
340 CALL SPBTRF( 'u
', -1, 0, A, 1, INFO )
341 CALL CHKXER( 'spbtrf', INFOT, NOUT, LERR, OK )
343 CALL SPBTRF( 'u
', 1, -1, A, 1, INFO )
344 CALL CHKXER( 'spbtrf', INFOT, NOUT, LERR, OK )
346 CALL SPBTRF( 'u
', 2, 1, A, 1, INFO )
347 CALL CHKXER( 'spbtrf', INFOT, NOUT, LERR, OK )
353 CALL SPBTF2( '/
', 0, 0, A, 1, INFO )
354 CALL CHKXER( 'spbtf2', INFOT, NOUT, LERR, OK )
356 CALL SPBTF2( 'u
', -1, 0, A, 1, INFO )
357 CALL CHKXER( 'spbtf2', INFOT, NOUT, LERR, OK )
359 CALL SPBTF2( 'u
', 1, -1, A, 1, INFO )
360 CALL CHKXER( 'spbtf2', INFOT, NOUT, LERR, OK )
362 CALL SPBTF2( 'u', 2, 1, a, 1, info )
363 CALL chkxer(
'SPBTF2', infot, nout, lerr, ok )
369 CALL spbtrs(
'/', 0, 0, 0, a, 1, b, 1, info )
370 CALL chkxer(
'SPBTRS', infot, nout, lerr, ok )
372 CALL spbtrs(
'U', -1, 0, 0, a, 1, b, 1, info )
373 CALL chkxer(
'SPBTRS', infot, nout, lerr, ok )
375 CALL spbtrs(
'U', 1, -1, 0, a, 1, b, 1, info )
376 CALL chkxer(
'SPBTRS', infot, nout, lerr, ok )
378 CALL spbtrs(
'U', 0, 0, -1, a, 1, b, 1, info )
379 CALL chkxer(
'SPBTRS', infot, nout, lerr, ok )
381 CALL spbtrs(
'U', 2, 1, 1, a, 1, b, 1, info )
382 CALL chkxer(
'SPBTRS', infot, nout, lerr, ok )
384 CALL spbtrs(
'U', 2, 0, 1, a, 1, b, 1, info )
385 CALL chkxer(
'SPBTRS', infot, nout, lerr, ok )
391 CALL spbrfs(
'/', 0, 0, 0, a, 1, af, 1, b, 1, x, 1, r1, r2, w,
393 CALL chkxer(
'SPBRFS', infot, nout, lerr, ok )
395 CALL spbrfs(
'U', -1, 0, 0, a, 1, af, 1, b, 1, x, 1, r1, r2, w,
397 CALL chkxer(
'SPBRFS', infot, nout, lerr, ok )
399 CALL spbrfs(
'U', 1, -1, 0, a, 1, af, 1, b, 1, x, 1, r1, r2, w,
401 CALL chkxer(
'SPBRFS', infot, nout, lerr, ok )
403 CALL spbrfs(
'U', 0, 0, -1, a, 1, af, 1, b, 1, x, 1, r1, r2, w,
405 CALL chkxer(
'SPBRFS', infot, nout, lerr, ok )
407 CALL spbrfs(
'U', 2, 1, 1, a, 1, af, 2, b, 2, x, 2, r1, r2, w,
409 CALL chkxer(
'SPBRFS', infot, nout, lerr, ok )
411 CALL spbrfs(
'U', 2, 1, 1, a, 2, af, 1, b, 2, x, 2, r1, r2, w,
413 CALL chkxer(
'SPBRFS', infot, nout, lerr, ok )
415 CALL spbrfs(
'U', 2, 0, 1, a, 1, af, 1, b, 1, x, 2, r1, r2, w,
417 CALL chkxer(
'SPBRFS', infot, nout, lerr, ok )
419 CALL spbrfs(
'U', 2, 0, 1, a, 1, af, 1, b, 2, x, 1, r1, r2, w,
421 CALL chkxer(
'SPBRFS', infot, nout, lerr, ok )
427 CALL spbcon(
'/', 0, 0, a, 1, anrm, rcond, w, iw, info )
428 CALL chkxer(
'SPBCON', infot, nout, lerr, ok )
430 CALL spbcon(
'U', -1, 0, a, 1, anrm, rcond, w, iw, info )
431 CALL chkxer(
'SPBCON', infot, nout, lerr, ok )
433 CALL spbcon(
'U', 1, -1, a, 1, anrm, rcond, w, iw, info )
434 CALL chkxer(
'SPBCON', infot, nout, lerr, ok )
437 CALL chkxer(
'SPBCON', infot, nout, lerr, ok )
443 CALL spbequ( '/
', 0, 0, A, 1, R1, RCOND, ANRM, INFO )
444 CALL CHKXER( 'spbequ', INFOT, NOUT, LERR, OK )
446 CALL SPBEQU( 'u
', -1, 0, A, 1, R1, RCOND, ANRM, INFO )
447 CALL CHKXER( 'spbequ', INFOT, NOUT, LERR, OK )
449 CALL SPBEQU( 'u
', 1, -1, A, 1, R1, RCOND, ANRM, INFO )
450 CALL CHKXER( 'spbequ', INFOT, NOUT, LERR, OK )
452 CALL SPBEQU( 'u
', 2, 1, A, 1, R1, RCOND, ANRM, INFO )
453 CALL CHKXER( 'spbequ', INFOT, NOUT, LERR, OK )
458 CALL ALAESM( PATH, OK, NOUT )