59 SUBROUTINE derrsy( PATH, NUNIT )
80 INTEGER i, info, j, n_err_bnds, nparams
81 DOUBLE PRECISION anrm, rcond, berr
84 INTEGER ip( nmax ), iw( nmax )
85 DOUBLE PRECISION a( nmax, nmax ), af( nmax, nmax ), b( nmax ),
86 $ r1( nmax ), r2( nmax ), w( 3*nmax ), x( nmax ),
87 $ s( nmax ), err_bnds_n( nmax, 3 ),
88 $ err_bnds_c( nmax, 3 ), params( 1 )
105 common / infoc / infot, nout, ok, lerr
106 common / srnamc / srnamt
114 WRITE( nout, fmt = * )
121 a( i, j ) = 1.d0 / dble( i+j )
122 af( i, j ) = 1.d0 / dble( i+j )
137 IF(
lsamen( 2, c2,
'SY' ) )
THEN
146 CALL
dsytrf(
'/', 0, a, 1, ip, w, 1, info )
147 CALL
chkxer(
'DSYTRF', infot, nout, lerr, ok )
149 CALL
dsytrf(
'U', -1, a, 1, ip, w, 1, info )
150 CALL
chkxer(
'DSYTRF', infot, nout, lerr, ok )
152 CALL
dsytrf(
'U', 2, a, 1, ip, w, 4, info )
153 CALL
chkxer(
'DSYTRF', infot, nout, lerr, ok )
159 CALL
dsytf2(
'/', 0, a, 1, ip, info )
160 CALL
chkxer(
'DSYTF2', infot, nout, lerr, ok )
162 CALL
dsytf2(
'U', -1, a, 1, ip, info )
163 CALL
chkxer(
'DSYTF2', infot, nout, lerr, ok )
165 CALL
dsytf2(
'U', 2, a, 1, ip, info )
166 CALL
chkxer(
'DSYTF2', infot, nout, lerr, ok )
172 CALL
dsytri(
'/', 0, a, 1, ip, w, info )
173 CALL
chkxer(
'DSYTRI', infot, nout, lerr, ok )
175 CALL
dsytri(
'U', -1, a, 1, ip, w, info )
176 CALL
chkxer(
'DSYTRI', infot, nout, lerr, ok )
178 CALL
dsytri(
'U', 2, a, 1, ip, w, info )
179 CALL
chkxer(
'DSYTRI', infot, nout, lerr, ok )
185 CALL
dsytri2(
'/', 0, a, 1, ip, w, iw, info )
186 CALL
chkxer(
'DSYTRI2', infot, nout, lerr, ok )
188 CALL
dsytri2(
'U', -1, a, 1, ip, w, iw, info )
189 CALL
chkxer(
'DSYTRI2', infot, nout, lerr, ok )
191 CALL
dsytri2(
'U', 2, a, 1, ip, w, iw, info )
192 CALL
chkxer(
'DSYTRI2', infot, nout, lerr, ok )
198 CALL
dsytrs(
'/', 0, 0, a, 1, ip, b, 1, info )
199 CALL
chkxer(
'DSYTRS', infot, nout, lerr, ok )
201 CALL
dsytrs(
'U', -1, 0, a, 1, ip, b, 1, info )
202 CALL
chkxer(
'DSYTRS', infot, nout, lerr, ok )
204 CALL
dsytrs(
'U', 0, -1, a, 1, ip, b, 1, info )
205 CALL
chkxer(
'DSYTRS', infot, nout, lerr, ok )
207 CALL
dsytrs(
'U', 2, 1, a, 1, ip, b, 2, info )
208 CALL
chkxer(
'DSYTRS', infot, nout, lerr, ok )
210 CALL
dsytrs(
'U', 2, 1, a, 2, ip, b, 1, info )
211 CALL
chkxer(
'DSYTRS', infot, nout, lerr, ok )
217 CALL
dsyrfs(
'/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1, r1, r2, w,
219 CALL
chkxer(
'DSYRFS', infot, nout, lerr, ok )
221 CALL
dsyrfs(
'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1, r1, r2,
223 CALL
chkxer(
'DSYRFS', infot, nout, lerr, ok )
225 CALL
dsyrfs(
'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1, r1, r2,
227 CALL
chkxer(
'DSYRFS', infot, nout, lerr, ok )
229 CALL
dsyrfs(
'U', 2, 1, a, 1, af, 2, ip, b, 2, x, 2, r1, r2, w,
231 CALL
chkxer(
'DSYRFS', infot, nout, lerr, ok )
233 CALL
dsyrfs(
'U', 2, 1, a, 2, af, 1, ip, b, 2, x, 2, r1, r2, w,
235 CALL
chkxer(
'DSYRFS', infot, nout, lerr, ok )
237 CALL
dsyrfs(
'U', 2, 1, a, 2, af, 2, ip, b, 1, x, 2, r1, r2, w,
239 CALL
chkxer(
'DSYRFS', infot, nout, lerr, ok )
241 CALL
dsyrfs(
'U', 2, 1, a, 2, af, 2, ip, b, 2, x, 1, r1, r2, w,
243 CALL
chkxer(
'DSYRFS', infot, nout, lerr, ok )
251 CALL
dsyrfsx(
'/', eq, 0, 0, a, 1, af, 1, ip, s, b, 1, x, 1,
252 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
253 $ params, w, iw, info )
254 CALL
chkxer(
'DSYRFSX', infot, nout, lerr, ok )
256 CALL
dsyrfsx(
'U', eq, -1, 0, a, 1, af, 1, ip, s, b, 1, x, 1,
257 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
258 $ params, w, iw, info )
259 CALL
chkxer(
'DSYRFSX', infot, nout, lerr, ok )
262 CALL
dsyrfsx(
'U', eq, -1, 0, a, 1, af, 1, ip, s, b, 1, x, 1,
263 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
264 $ params, w, iw, info )
265 CALL
chkxer(
'DSYRFSX', infot, nout, lerr, ok )
267 CALL
dsyrfsx(
'U', eq, 0, -1, a, 1, af, 1, ip, s, b, 1, x, 1,
268 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
269 $ params, w, iw, info )
270 CALL
chkxer(
'DSYRFSX', infot, nout, lerr, ok )
272 CALL
dsyrfsx(
'U', eq, 2, 1, a, 1, af, 2, ip, s, b, 2, x, 2,
273 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
274 $ params, w, iw, info )
275 CALL
chkxer(
'DSYRFSX', infot, nout, lerr, ok )
277 CALL
dsyrfsx(
'U', eq, 2, 1, a, 2, af, 1, ip, s, b, 2, x, 2,
278 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
279 $ params, w, iw, info )
280 CALL
chkxer(
'DSYRFSX', infot, nout, lerr, ok )
282 CALL
dsyrfsx(
'U', eq, 2, 1, a, 2, af, 2, ip, s, b, 1, x, 2,
283 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
284 $ params, w, iw, info )
285 CALL
chkxer(
'DSYRFSX', infot, nout, lerr, ok )
287 CALL
dsyrfsx(
'U', eq, 2, 1, a, 2, af, 2, ip, s, b, 2, x, 1,
288 $ rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
289 $ params, w, iw, info )
290 CALL
chkxer(
'DSYRFSX', infot, nout, lerr, ok )
296 CALL
dsycon(
'/', 0, a, 1, ip, anrm, rcond, w, iw, info )
297 CALL
chkxer(
'DSYCON', infot, nout, lerr, ok )
299 CALL
dsycon(
'U', -1, a, 1, ip, anrm, rcond, w, iw, info )
300 CALL
chkxer(
'DSYCON', infot, nout, lerr, ok )
302 CALL
dsycon(
'U', 2, a, 1, ip, anrm, rcond, w, iw, info )
303 CALL
chkxer(
'DSYCON', infot, nout, lerr, ok )
305 CALL
dsycon(
'U', 1, a, 1, ip, -1.0d0, rcond, w, iw, info )
306 CALL
chkxer(
'DSYCON', infot, nout, lerr, ok )
308 ELSE IF(
lsamen( 2, c2,
'SP' ) )
THEN
317 CALL
dsptrf(
'/', 0, a, ip, info )
318 CALL
chkxer(
'DSPTRF', infot, nout, lerr, ok )
320 CALL
dsptrf(
'U', -1, a, ip, info )
321 CALL
chkxer(
'DSPTRF', infot, nout, lerr, ok )
327 CALL
dsptri(
'/', 0, a, ip, w, info )
328 CALL
chkxer(
'DSPTRI', infot, nout, lerr, ok )
330 CALL
dsptri(
'U', -1, a, ip, w, info )
331 CALL
chkxer(
'DSPTRI', infot, nout, lerr, ok )
337 CALL
dsptrs(
'/', 0, 0, a, ip, b, 1, info )
338 CALL
chkxer(
'DSPTRS', infot, nout, lerr, ok )
340 CALL
dsptrs(
'U', -1, 0, a, ip, b, 1, info )
341 CALL
chkxer(
'DSPTRS', infot, nout, lerr, ok )
343 CALL
dsptrs(
'U', 0, -1, a, ip, b, 1, info )
344 CALL
chkxer(
'DSPTRS', infot, nout, lerr, ok )
346 CALL
dsptrs(
'U', 2, 1, a, ip, b, 1, info )
347 CALL
chkxer(
'DSPTRS', infot, nout, lerr, ok )
353 CALL
dsprfs(
'/', 0, 0, a, af, ip, b, 1, x, 1, r1, r2, w, iw,
355 CALL
chkxer(
'DSPRFS', infot, nout, lerr, ok )
357 CALL
dsprfs(
'U', -1, 0, a, af, ip, b, 1, x, 1, r1, r2, w, iw,
359 CALL
chkxer(
'DSPRFS', infot, nout, lerr, ok )
361 CALL
dsprfs(
'U', 0, -1, a, af, ip, b, 1, x, 1, r1, r2, w, iw,
363 CALL
chkxer(
'DSPRFS', infot, nout, lerr, ok )
365 CALL
dsprfs(
'U', 2, 1, a, af, ip, b, 1, x, 2, r1, r2, w, iw,
367 CALL
chkxer(
'DSPRFS', infot, nout, lerr, ok )
369 CALL
dsprfs(
'U', 2, 1, a, af, ip, b, 2, x, 1, r1, r2, w, iw,
371 CALL
chkxer(
'DSPRFS', infot, nout, lerr, ok )
377 CALL
dspcon(
'/', 0, a, ip, anrm, rcond, w, iw, info )
378 CALL
chkxer(
'DSPCON', infot, nout, lerr, ok )
380 CALL
dspcon(
'U', -1, a, ip, anrm, rcond, w, iw, info )
381 CALL
chkxer(
'DSPCON', infot, nout, lerr, ok )
383 CALL
dspcon(
'U', 1, a, ip, -1.0d0, rcond, w, iw, info )
384 CALL
chkxer(
'DSPCON', infot, nout, lerr, ok )
389 CALL
alaesm( path, ok, nout )