71 parameter( one = 1.0d+0 )
76 INTEGER I, INFO, J, N_ERR_BNDS, NPARAMS
77 DOUBLE PRECISION RCOND, RPVGRW, BERR
81 DOUBLE PRECISION C( NMAX ), R( NMAX ), R1( NMAX ), R2( NMAX ),
82 $ RF( NMAX ), RW( NMAX ), ERR_BNDS_N( NMAX, 3 ),
83 $ ERR_BNDS_C( NMAX, 3 ), PARAMS( 1 )
84 COMPLEX*16 A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
85 $ E( NMAX ), W( 2*NMAX ), X( NMAX )
105 COMMON / infoc / infot, nout, ok, lerr
106 COMMON / srnamc / srnamt
109 INTRINSIC dble, dcmplx
114 WRITE( nout, fmt = * )
121 a( i, j ) = dcmplx( 1.d0 / dble( i+j ),
122 $ -1.d0 / dble( i+j ) )
123 af( i, j ) = dcmplx( 1.d0 / dble( i+j ),
124 $ -1.d0 / dble( i+j ) )
139 IF( lsamen( 2, c2,
'GE' ) )
THEN
145 CALL zgesv( -1, 0, a, 1, ip, b, 1, info )
146 CALL chkxer(
'ZGESV ', infot, nout, lerr, ok )
148 CALL zgesv( 0, -1, a, 1, ip, b, 1, info )
149 CALL chkxer(
'ZGESV ', infot, nout, lerr, ok )
151 CALL zgesv( 2, 1, a, 1, ip, b, 2, info )
152 CALL chkxer(
'ZGESV ', infot, nout, lerr, ok )
154 CALL zgesv( 2, 1, a, 2, ip, b, 1, info )
155 CALL chkxer(
'ZGESV ', infot, nout, lerr, ok )
161 CALL zgesvx(
'/',
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
162 $ x, 1, rcond, r1, r2, w, rw, info )
163 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
165 CALL zgesvx(
'N',
'/', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
166 $ x, 1, rcond, r1, r2, w, rw, info )
167 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
169 CALL zgesvx(
'N',
'N', -1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
170 $ x, 1, rcond, r1, r2, w, rw, info )
171 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
173 CALL zgesvx(
'N',
'N', 0, -1, a, 1, af, 1, ip, eq, r, c, b, 1,
174 $ x, 1, rcond, r1, r2, w, rw, info )
175 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
177 CALL zgesvx(
'N',
'N', 2, 1, a, 1, af, 2, ip, eq, r, c, b, 2,
178 $ x, 2, rcond, r1, r2, w, rw, info )
179 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
181 CALL zgesvx(
'N',
'N', 2, 1, a, 2, af, 1, ip, eq, r, c, b, 2,
182 $ x, 2, rcond, r1, r2, w, rw, info )
183 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
186 CALL zgesvx(
'F',
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
187 $ x, 1, rcond, r1, r2, w, rw, info )
188 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
191 CALL zgesvx(
'F',
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
192 $ x, 1, rcond, r1, r2, w, rw, info )
193 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
196 CALL zgesvx(
'F',
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b, 1,
197 $ x, 1, rcond, r1, r2, w, rw, info )
198 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
200 CALL zgesvx(
'N',
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b, 1,
201 $ x, 2, rcond, r1, r2, w, rw, info )
202 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
204 CALL zgesvx(
'N',
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b, 2,
205 $ x, 1, rcond, r1, r2, w, rw, info )
206 CALL chkxer(
'ZGESVX', infot, nout, lerr, ok )
214 CALL zgesvxx(
'/',
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b,
215 $ 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
216 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
218 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
220 CALL zgesvxx(
'N',
'/', 0, 0, a, 1, af, 1, ip, eq, r, c, b,
221 $ 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
222 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
224 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
226 CALL zgesvxx(
'N',
'N', -1, 0, a, 1, af, 1, ip, eq, r, c, b,
227 $ 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
228 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
230 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
232 CALL zgesvxx(
'N',
'N', 0, -1, a, 1, af, 1, ip, eq, r, c, b,
233 $ 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
234 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
236 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
238 CALL zgesvxx(
'N',
'N', 2, 1, a, 1, af, 2, ip, eq, r, c, b,
239 $ 2, x, 2, rcond, rpvgrw, berr, n_err_bnds,
240 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
242 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
244 CALL zgesvxx(
'N',
'N', 2, 1, a, 2, af, 1, ip, eq, r, c, b,
245 $ 2, x, 2, rcond, rpvgrw, berr, n_err_bnds,
246 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
248 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
251 CALL zgesvxx(
'F',
'N', 0, 0, a, 1, af, 1, ip, eq, r, c, b,
252 $ 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
253 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
255 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
258 CALL zgesvxx(
'F',
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b,
259 $ 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
260 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
262 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
265 CALL zgesvxx(
'F',
'N', 1, 0, a, 1, af, 1, ip, eq, r, c, b,
266 $ 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
267 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
269 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
271 CALL zgesvxx(
'N',
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b,
272 $ 1, x, 2, rcond, rpvgrw, berr, n_err_bnds,
273 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
275 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
277 CALL zgesvxx(
'N',
'N', 2, 1, a, 2, af, 2, ip, eq, r, c, b,
278 $ 2, x, 1, rcond, rpvgrw, berr, n_err_bnds,
279 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
281 CALL chkxer(
'ZGESVXX', infot, nout, lerr, ok )
283 ELSE IF( lsamen( 2, c2,
'GB' ) )
THEN
289 CALL zgbsv( -1, 0, 0, 0, a, 1, ip, b, 1, info )
290 CALL chkxer(
'ZGBSV ', infot, nout, lerr, ok )
292 CALL zgbsv( 1, -1, 0, 0, a, 1, ip, b, 1, info )
293 CALL chkxer(
'ZGBSV ', infot, nout, lerr, ok )
295 CALL zgbsv( 1, 0, -1, 0, a, 1, ip, b, 1, info )
296 CALL chkxer(
'ZGBSV ', infot, nout, lerr, ok )
298 CALL zgbsv( 0, 0, 0, -1, a, 1, ip, b, 1, info )
299 CALL chkxer(
'ZGBSV ', infot, nout, lerr, ok )
301 CALL zgbsv( 1, 1, 1, 0, a, 3, ip, b, 1, info )
302 CALL chkxer(
'ZGBSV ', infot, nout, lerr, ok )
304 CALL zgbsv( 2, 0, 0, 0, a, 1, ip, b, 1, info )
305 CALL chkxer(
'ZGBSV ', infot, nout, lerr, ok )
311 CALL zgbsvx(
'/',
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
312 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
313 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
315 CALL zgbsvx(
'N',
'/', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
316 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
317 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
319 CALL zgbsvx(
'N',
'N', -1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
320 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
321 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
323 CALL zgbsvx(
'N',
'N', 1, -1, 0, 0, a, 1, af, 1, ip, eq, r, c,
324 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
325 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
327 CALL zgbsvx(
'N',
'N', 1, 0, -1, 0, a, 1, af, 1, ip, eq, r, c,
328 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
329 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
331 CALL zgbsvx(
'N',
'N', 0, 0, 0, -1, a, 1, af, 1, ip, eq, r, c,
332 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
333 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
335 CALL zgbsvx(
'N',
'N', 1, 1, 1, 0, a, 2, af, 4, ip, eq, r, c,
336 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
337 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
339 CALL zgbsvx(
'N',
'N', 1, 1, 1, 0, a, 3, af, 3, ip, eq, r, c,
340 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
341 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
344 CALL zgbsvx(
'F',
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
345 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
346 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
349 CALL zgbsvx(
'F',
'N', 1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
350 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
351 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
354 CALL zgbsvx(
'F',
'N', 1, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
355 $ b, 1, x, 1, rcond, r1, r2, w, rw, info )
356 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
358 CALL zgbsvx(
'N',
'N', 2, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
359 $ b, 1, x, 2, rcond, r1, r2, w, rw, info )
360 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
362 CALL zgbsvx(
'N',
'N', 2, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
363 $ b, 2, x, 1, rcond, r1, r2, w, rw, info )
364 CALL chkxer(
'ZGBSVX', infot, nout, lerr, ok )
372 CALL zgbsvxx(
'/',
'N', 0, 0, 0, 0, a, 1, af, 1, ip, eq, r, c,
373 $ b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
374 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
376 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
378 CALL zgbsvxx(
'N',
'/', 0, 1, 1, 0, a, 1, af, 1, ip, eq, r, c,
379 $ b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
380 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
382 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
384 CALL zgbsvxx(
'N',
'N', -1, 1, 1, 0, a, 1, af, 1, ip, eq, r, c,
385 $ b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
386 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
388 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
390 CALL zgbsvxx(
'N',
'N', 2, -1, 1, 0, a, 1, af, 1, ip, eq,
391 $ r, c, b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
392 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
394 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
396 CALL zgbsvxx(
'N',
'N', 2, 1, -1, 0, a, 1, af, 1, ip, eq,
397 $ r, c, b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
398 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
400 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
402 CALL zgbsvxx(
'N',
'N', 0, 1, 1, -1, a, 1, af, 1, ip, eq, r, c,
403 $ b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
404 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
406 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
408 CALL zgbsvxx(
'N',
'N', 2, 1, 1, 1, a, 2, af, 2, ip, eq, r, c,
409 $ b, 2, x, 2, rcond, rpvgrw, berr, n_err_bnds,
410 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
412 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
414 CALL zgbsvxx(
'N',
'N', 2, 1, 1, 1, a, 3, af, 3, ip, eq, r, c,
415 $ b, 2, x, 2, rcond, rpvgrw, berr, n_err_bnds,
416 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
418 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
421 CALL zgbsvxx(
'F',
'N', 0, 1, 1, 0, a, 3, af, 4, ip, eq, r, c,
422 $ b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
423 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
425 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
428 CALL zgbsvxx(
'F',
'N', 1, 1, 1, 0, a, 3, af, 4, ip, eq, r, c,
429 $ b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
430 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
432 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
435 CALL zgbsvxx(
'F',
'N', 1, 1, 1, 0, a, 3, af, 4, ip, eq, r, c,
436 $ b, 1, x, 1, rcond, rpvgrw, berr, n_err_bnds,
437 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
439 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
441 CALL zgbsvxx(
'N',
'N', 2, 1, 1, 1, a, 3, af, 4, ip, eq, r, c,
442 $ b, 1, x, 2, rcond, rpvgrw, berr, n_err_bnds,
443 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
445 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
447 CALL zgbsvxx(
'N',
'N', 2, 1, 1, 1, a, 3, af, 4, ip, eq, r, c,
448 $ b, 2, x, 1, rcond, rpvgrw, berr, n_err_bnds,
449 $ err_bnds_n, err_bnds_c, nparams, params, w, rw,
451 CALL chkxer(
'ZGBSVXX', infot, nout, lerr, ok )
453 ELSE IF( lsamen( 2, c2,
'GT' ) )
THEN
459 CALL zgtsv( -1, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1,
461 CALL chkxer(
'ZGTSV ', infot, nout, lerr, ok )
463 CALL zgtsv( 0, -1, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1,
465 CALL chkxer(
'ZGTSV ', infot, nout, lerr, ok )
467 CALL zgtsv( 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ), b, 1, info )
468 CALL chkxer(
'ZGTSV ', infot, nout, lerr, ok )
474 CALL zgtsvx(
'/',
'N', 0, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
475 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
476 $ ip, b, 1, x, 1, rcond, r1, r2, w, rw, info )
477 CALL chkxer(
'ZGTSVX', infot, nout, lerr, ok )
479 CALL zgtsvx(
'N',
'/', 0, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
480 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
481 $ ip, b, 1, x, 1, rcond, r1, r2, w, rw, info )
482 CALL chkxer(
'ZGTSVX', infot, nout, lerr, ok )
484 CALL zgtsvx(
'N',
'N', -1, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
485 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
486 $ ip, b, 1, x, 1, rcond, r1, r2, w, rw, info )
487 CALL chkxer(
'ZGTSVX', infot, nout, lerr, ok )
489 CALL zgtsvx(
'N',
'N', 0, -1, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
490 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
491 $ ip, b, 1, x, 1, rcond, r1, r2, w, rw, info )
492 CALL chkxer(
'ZGTSVX', infot, nout, lerr, ok )
494 CALL zgtsvx(
'N',
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
495 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
496 $ ip, b, 1, x, 2, rcond, r1, r2, w, rw, info )
497 CALL chkxer(
'ZGTSVX', infot, nout, lerr, ok )
499 CALL zgtsvx(
'N',
'N', 2, 0, a( 1, 1 ), a( 1, 2 ), a( 1, 3 ),
500 $ af( 1, 1 ), af( 1, 2 ), af( 1, 3 ), af( 1, 4 ),
501 $ ip, b, 2, x, 1, rcond, r1, r2, w, rw, info )
502 CALL chkxer(
'ZGTSVX', infot, nout, lerr, ok )
504 ELSE IF( lsamen( 2, c2,
'HR' ) )
THEN
508 srnamt =
'ZHESV_ROOK'
510 CALL zhesv_rook(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
511 CALL chkxer(
'ZHESV_ROOK', infot, nout, lerr, ok )
513 CALL zhesv_rook(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
514 CALL chkxer(
'ZHESV_ROOK', infot, nout, lerr, ok )
516 CALL zhesv_rook(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
517 CALL chkxer(
'ZHESV_ROOK', infot, nout, lerr, ok )
519 CALL zhesv_rook(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
520 CALL chkxer(
'ZHESV_ROOK', infot, nout, lerr, ok )
522 ELSE IF( lsamen( 2, c2,
'PO' ) )
THEN
528 CALL zposv(
'/', 0, 0, a, 1, b, 1, info )
529 CALL chkxer(
'ZPOSV ', infot, nout, lerr, ok )
531 CALL zposv(
'U', -1, 0, a, 1, b, 1, info )
532 CALL chkxer(
'ZPOSV ', infot, nout, lerr, ok )
534 CALL zposv(
'U', 0, -1, a, 1, b, 1, info )
535 CALL chkxer(
'ZPOSV ', infot, nout, lerr, ok )
537 CALL zposv(
'U', 2, 0, a, 1, b, 2, info )
538 CALL chkxer(
'ZPOSV ', infot, nout, lerr, ok )
540 CALL zposv(
'U', 2, 0, a, 2, b, 1, info )
541 CALL chkxer(
'ZPOSV ', infot, nout, lerr, ok )
547 CALL zposvx(
'/',
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
548 $ rcond, r1, r2, w, rw, info )
549 CALL chkxer(
'ZPOSVX', infot, nout, lerr, ok )
551 CALL zposvx(
'N',
'/', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
552 $ rcond, r1, r2, w, rw, info )
553 CALL chkxer(
'ZPOSVX', infot, nout, lerr, ok )
555 CALL zposvx(
'N',
'U', -1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
556 $ rcond, r1, r2, w, rw, info )
557 CALL chkxer(
'ZPOSVX', infot, nout, lerr, ok )
559 CALL zposvx(
'N',
'U', 0, -1, a, 1, af, 1, eq, c, b, 1, x, 1,
560 $ rcond, r1, r2, w, rw, info )
561 CALL chkxer(
'ZPOSVX', infot, nout, lerr, ok )
563 CALL zposvx(
'N',
'U', 2, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
564 $ rcond, r1, r2, w, rw, info )
565 CALL chkxer(
'ZPOSVX', infot, nout, lerr, ok )
567 CALL zposvx(
'N',
'U', 2, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
568 $ rcond, r1, r2, w, rw, info )
569 CALL chkxer(
'ZPOSVX', infot, nout, lerr, ok )
572 CALL zposvx(
'F',
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
573 $ rcond, r1, r2, w, rw, info )
574 CALL chkxer(
'ZPOSVX', infot, nout, lerr, ok )
577 CALL zposvx(
'F',
'U', 1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
578 $ rcond, r1, r2, w, rw, info )
579 CALL chkxer(
'ZPOSVX', infot, nout, lerr, ok )
581 CALL zposvx(
'N',
'U', 2, 0, a, 2, af, 2, eq, c, b, 1, x, 2,
582 $ rcond, r1, r2, w, rw, info )
583 CALL chkxer(
'ZPOSVX', infot, nout, lerr, ok )
585 CALL zposvx(
'N',
'U', 2, 0, a, 2, af, 2, eq, c, b, 2, x, 1,
586 $ rcond, r1, r2, w, rw, info )
587 CALL chkxer(
'ZPOSVX', infot, nout, lerr, ok )
595 CALL zposvxx(
'/',
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
596 $ rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
597 $ err_bnds_c, nparams, params, w, rw, info )
598 CALL chkxer(
'ZPOSVXX', infot, nout, lerr, ok )
600 CALL zposvxx(
'N',
'/', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
601 $ rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
602 $ err_bnds_c, nparams, params, w, rw, info )
603 CALL chkxer(
'ZPOSVXX', infot, nout, lerr, ok )
605 CALL zposvxx(
'N',
'U', -1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
606 $ rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
607 $ err_bnds_c, nparams, params, w, rw, info )
608 CALL chkxer(
'ZPOSVXX', infot, nout, lerr, ok )
610 CALL zposvxx(
'N',
'U', 0, -1, a, 1, af, 1, eq, c, b, 1, x, 1,
611 $ rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
612 $ err_bnds_c, nparams, params, w, rw, info )
613 CALL chkxer(
'ZPOSVXX', infot, nout, lerr, ok )
615 CALL zposvxx(
'N',
'U', 2, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
616 $ rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
617 $ err_bnds_c, nparams, params, w, rw, info )
618 CALL chkxer(
'ZPOSVXX', infot, nout, lerr, ok )
620 CALL zposvxx(
'N',
'U', 2, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
621 $ rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
622 $ err_bnds_c, nparams, params, w, rw, info )
623 CALL chkxer(
'ZPOSVXX', infot, nout, lerr, ok )
626 CALL zposvxx(
'F',
'U', 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
627 $ rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
628 $ err_bnds_c, nparams, params, w, rw, info )
629 CALL chkxer(
'ZPOSVXX', infot, nout, lerr, ok )
632 CALL zposvxx(
'F',
'U', 1, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
633 $ rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
634 $ err_bnds_c, nparams, params, w, rw, info )
635 CALL chkxer(
'ZPOSVXX', infot, nout, lerr, ok )
637 CALL zposvxx(
'N',
'U', 2, 0, a, 2, af, 2, eq, c, b, 1, x, 2,
638 $ rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
639 $ err_bnds_c, nparams, params, w, rw, info )
640 CALL chkxer(
'ZPOSVXX', infot, nout, lerr, ok )
642 CALL zposvxx(
'N',
'U', 2, 0, a, 2, af, 2, eq, c, b, 2, x, 1,
643 $ rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
644 $ err_bnds_c, nparams, params, w, rw, info )
645 CALL chkxer(
'ZPOSVXX', infot, nout, lerr, ok )
647 ELSE IF( lsamen( 2, c2,
'PP' ) )
THEN
653 CALL zppsv(
'/', 0, 0, a, b, 1, info )
654 CALL chkxer(
'ZPPSV ', infot, nout, lerr, ok )
656 CALL zppsv(
'U', -1, 0, a, b, 1, info )
657 CALL chkxer(
'ZPPSV ', infot, nout, lerr, ok )
659 CALL zppsv(
'U', 0, -1, a, b, 1, info )
660 CALL chkxer(
'ZPPSV ', infot, nout, lerr, ok )
662 CALL zppsv(
'U', 2, 0, a, b, 1, info )
663 CALL chkxer(
'ZPPSV ', infot, nout, lerr, ok )
669 CALL zppsvx(
'/',
'U', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
670 $ r1, r2, w, rw, info )
671 CALL chkxer(
'ZPPSVX', infot, nout, lerr, ok )
673 CALL zppsvx(
'N',
'/', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
674 $ r1, r2, w, rw, info )
675 CALL chkxer(
'ZPPSVX', infot, nout, lerr, ok )
677 CALL zppsvx(
'N',
'U', -1, 0, a, af, eq, c, b, 1, x, 1, rcond,
678 $ r1, r2, w, rw, info )
679 CALL chkxer(
'ZPPSVX', infot, nout, lerr, ok )
681 CALL zppsvx(
'N',
'U', 0, -1, a, af, eq, c, b, 1, x, 1, rcond,
682 $ r1, r2, w, rw, info )
683 CALL chkxer(
'ZPPSVX', infot, nout, lerr, ok )
686 CALL zppsvx(
'F',
'U', 0, 0, a, af, eq, c, b, 1, x, 1, rcond,
687 $ r1, r2, w, rw, info )
688 CALL chkxer(
'ZPPSVX', infot, nout, lerr, ok )
691 CALL zppsvx(
'F',
'U', 1, 0, a, af, eq, c, b, 1, x, 1, rcond,
692 $ r1, r2, w, rw, info )
693 CALL chkxer(
'ZPPSVX', infot, nout, lerr, ok )
695 CALL zppsvx(
'N',
'U', 2, 0, a, af, eq, c, b, 1, x, 2, rcond,
696 $ r1, r2, w, rw, info )
697 CALL chkxer(
'ZPPSVX', infot, nout, lerr, ok )
699 CALL zppsvx(
'N',
'U', 2, 0, a, af, eq, c, b, 2, x, 1, rcond,
700 $ r1, r2, w, rw, info )
701 CALL chkxer(
'ZPPSVX', infot, nout, lerr, ok )
703 ELSE IF( lsamen( 2, c2,
'PB' ) )
THEN
709 CALL zpbsv(
'/', 0, 0, 0, a, 1, b, 1, info )
710 CALL chkxer(
'ZPBSV ', infot, nout, lerr, ok )
712 CALL zpbsv(
'U', -1, 0, 0, a, 1, b, 1, info )
713 CALL chkxer(
'ZPBSV ', infot, nout, lerr, ok )
715 CALL zpbsv(
'U', 1, -1, 0, a, 1, b, 1, info )
716 CALL chkxer(
'ZPBSV ', infot, nout, lerr, ok )
718 CALL zpbsv(
'U', 0, 0, -1, a, 1, b, 1, info )
719 CALL chkxer(
'ZPBSV ', infot, nout, lerr, ok )
721 CALL zpbsv(
'U', 1, 1, 0, a, 1, b, 2, info )
722 CALL chkxer(
'ZPBSV ', infot, nout, lerr, ok )
724 CALL zpbsv(
'U', 2, 0, 0, a, 1, b, 1, info )
725 CALL chkxer(
'ZPBSV ', infot, nout, lerr, ok )
731 CALL zpbsvx(
'/',
'U', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
732 $ rcond, r1, r2, w, rw, info )
733 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
735 CALL zpbsvx(
'N',
'/', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
736 $ rcond, r1, r2, w, rw, info )
737 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
739 CALL zpbsvx(
'N',
'U', -1, 0, 0, a, 1, af, 1, eq, c, b, 1, x,
740 $ 1, rcond, r1, r2, w, rw, info )
741 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
743 CALL zpbsvx(
'N',
'U', 1, -1, 0, a, 1, af, 1, eq, c, b, 1, x,
744 $ 1, rcond, r1, r2, w, rw, info )
745 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
747 CALL zpbsvx(
'N',
'U', 0, 0, -1, a, 1, af, 1, eq, c, b, 1, x,
748 $ 1, rcond, r1, r2, w, rw, info )
749 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
751 CALL zpbsvx(
'N',
'U', 1, 1, 0, a, 1, af, 2, eq, c, b, 2, x, 2,
752 $ rcond, r1, r2, w, rw, info )
753 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
755 CALL zpbsvx(
'N',
'U', 1, 1, 0, a, 2, af, 1, eq, c, b, 2, x, 2,
756 $ rcond, r1, r2, w, rw, info )
757 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
760 CALL zpbsvx(
'F',
'U', 0, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
761 $ rcond, r1, r2, w, rw, info )
762 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
765 CALL zpbsvx(
'F',
'U', 1, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 1,
766 $ rcond, r1, r2, w, rw, info )
767 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
769 CALL zpbsvx(
'N',
'U', 2, 0, 0, a, 1, af, 1, eq, c, b, 1, x, 2,
770 $ rcond, r1, r2, w, rw, info )
771 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
773 CALL zpbsvx(
'N',
'U', 2, 0, 0, a, 1, af, 1, eq, c, b, 2, x, 1,
774 $ rcond, r1, r2, w, rw, info )
775 CALL chkxer(
'ZPBSVX', infot, nout, lerr, ok )
777 ELSE IF( lsamen( 2, c2,
'PT' ) )
THEN
783 CALL zptsv( -1, 0, r, a( 1, 1 ), b, 1, info )
784 CALL chkxer(
'ZPTSV ', infot, nout, lerr, ok )
786 CALL zptsv( 0, -1, r, a( 1, 1 ), b, 1, info )
787 CALL chkxer(
'ZPTSV ', infot, nout, lerr, ok )
789 CALL zptsv( 2, 0, r, a( 1, 1 ), b, 1, info )
790 CALL chkxer(
'ZPTSV ', infot, nout, lerr, ok )
796 CALL zptsvx(
'/', 0, 0, r, a( 1, 1 ), rf, af( 1, 1 ), b, 1, x,
797 $ 1, rcond, r1, r2, w, rw, info )
798 CALL chkxer(
'ZPTSVX', infot, nout, lerr, ok )
800 CALL zptsvx(
'N', -1, 0, r, a( 1, 1 ), rf, af( 1, 1 ), b, 1, x,
801 $ 1, rcond, r1, r2, w, rw, info )
802 CALL chkxer(
'ZPTSVX', infot, nout, lerr, ok )
804 CALL zptsvx(
'N', 0, -1, r, a( 1, 1 ), rf, af( 1, 1 ), b, 1, x,
805 $ 1, rcond, r1, r2, w, rw, info )
806 CALL chkxer(
'ZPTSVX', infot, nout, lerr, ok )
808 CALL zptsvx(
'N', 2, 0, r, a( 1, 1 ), rf, af( 1, 1 ), b, 1, x,
809 $ 2, rcond, r1, r2, w, rw, info )
810 CALL chkxer(
'ZPTSVX', infot, nout, lerr, ok )
812 CALL zptsvx(
'N', 2, 0, r, a( 1, 1 ), rf, af( 1, 1 ), b, 2, x,
813 $ 1, rcond, r1, r2, w, rw, info )
814 CALL chkxer(
'ZPTSVX', infot, nout, lerr, ok )
816 ELSE IF( lsamen( 2, c2,
'HE' ) )
THEN
822 CALL zhesv(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
823 CALL chkxer(
'ZHESV ', infot, nout, lerr, ok )
825 CALL zhesv(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
826 CALL chkxer(
'ZHESV ', infot, nout, lerr, ok )
828 CALL zhesv(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
829 CALL chkxer(
'ZHESV ', infot, nout, lerr, ok )
831 CALL zhesv(
'U', 2, 0, a, 1, ip, b, 2, w, 1, info )
832 CALL chkxer(
'ZHESV ', infot, nout, lerr, ok )
834 CALL zhesv(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
835 CALL chkxer(
'ZHESV ', infot, nout, lerr, ok )
837 CALL zhesv(
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
838 CALL chkxer(
'ZHESV ', infot, nout, lerr, ok )
840 CALL zhesv(
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
841 CALL chkxer(
'ZHESV ', infot, nout, lerr, ok )
847 CALL zhesvx(
'/',
'U', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
848 $ rcond, r1, r2, w, 1, rw, info )
849 CALL chkxer(
'ZHESVX', infot, nout, lerr, ok )
851 CALL zhesvx(
'N',
'/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
852 $ rcond, r1, r2, w, 1, rw, info )
853 CALL chkxer(
'ZHESVX', infot, nout, lerr, ok )
855 CALL zhesvx(
'N',
'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1,
856 $ rcond, r1, r2, w, 1, rw, info )
857 CALL chkxer(
'ZHESVX', infot, nout, lerr, ok )
859 CALL zhesvx(
'N',
'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1,
860 $ rcond, r1, r2, w, 1, rw, info )
861 CALL chkxer(
'ZHESVX', infot, nout, lerr, ok )
863 CALL zhesvx(
'N',
'U', 2, 0, a, 1, af, 2, ip, b, 2, x, 2,
864 $ rcond, r1, r2, w, 4, rw, info )
865 CALL chkxer(
'ZHESVX', infot, nout, lerr, ok )
867 CALL zhesvx(
'N',
'U', 2, 0, a, 2, af, 1, ip, b, 2, x, 2,
868 $ rcond, r1, r2, w, 4, rw, info )
869 CALL chkxer(
'ZHESVX', infot, nout, lerr, ok )
871 CALL zhesvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 1, x, 2,
872 $ rcond, r1, r2, w, 4, rw, info )
873 CALL chkxer(
'ZHESVX', infot, nout, lerr, ok )
875 CALL zhesvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 1,
876 $ rcond, r1, r2, w, 4, rw, info )
877 CALL chkxer(
'ZHESVX', infot, nout, lerr, ok )
879 CALL zhesvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 2,
880 $ rcond, r1, r2, w, 3, rw, info )
881 CALL chkxer(
'ZHESVX', infot, nout, lerr, ok )
889 CALL zhesvxx(
'/',
'U', 0, 0, a, 1, af, 1, ip, eq, c, b, 1, x,
890 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
891 $ err_bnds_c, nparams, params, w, rw, info )
892 CALL chkxer(
'ZHESVXX', infot, nout, lerr, ok )
894 CALL zhesvxx(
'N',
'/', 0, 0, a, 1, af, 1, ip, eq, c, b, 1, x,
895 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
896 $ err_bnds_c, nparams, params, w, rw, info )
897 CALL chkxer(
'ZHESVXX', infot, nout, lerr, ok )
899 CALL zhesvxx(
'N',
'U', -1, 0, a, 1, af, 1, ip, eq, c, b, 1, x,
900 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
901 $ err_bnds_c, nparams, params, w, rw, info )
902 CALL chkxer(
'ZHESVXX', infot, nout, lerr, ok )
904 CALL zhesvxx(
'N',
'U', 0, -1, a, 1, af, 1, ip, eq, c, b, 1, x,
905 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
906 $ err_bnds_c, nparams, params, w, rw, info )
907 CALL chkxer(
'ZHESVXX', infot, nout, lerr, ok )
909 CALL zhesvxx(
'N',
'U', 2, 0, a, 1, af, 2, ip, eq, c, b, 2, x,
910 $ 2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
911 $ err_bnds_c, nparams, params, w, rw, info )
912 CALL chkxer(
'ZHESVXX', infot, nout, lerr, ok )
914 CALL zhesvxx(
'N',
'U', 2, 0, a, 2, af, 1, ip, eq, c, b, 2, x,
915 $ 2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
916 $ err_bnds_c, nparams, params, w, rw, info )
917 CALL chkxer(
'ZHESVXX', infot, nout, lerr, ok )
920 CALL zhesvxx(
'F',
'U', 0, 0, a, 1, af, 1, ip, eq, c, b, 1, x,
921 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
922 $ err_bnds_c, nparams, params, w, rw, info )
923 CALL chkxer(
'ZHESVXX', infot, nout, lerr, ok )
926 CALL zhesvxx(
'F',
'U', 1, 0, a, 1, af, 1, ip, eq, c, b, 1, x,
927 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
928 $ err_bnds_c, nparams, params, w, rw, info )
929 CALL chkxer(
'ZHESVXX', infot, nout, lerr, ok )
931 CALL zhesvxx(
'N',
'U', 2, 0, a, 2, af, 2, ip, eq, c, b, 1, x,
932 $ 2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
933 $ err_bnds_c, nparams, params, w, rw, info )
934 CALL chkxer(
'ZHESVXX', infot, nout, lerr, ok )
936 CALL zhesvxx(
'N',
'U', 2, 0, a, 2, af, 2, ip, eq, c, b, 2, x,
937 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
938 $ err_bnds_c, nparams, params, w, rw, info )
939 CALL chkxer(
'ZHESVXX', infot, nout, lerr, ok )
941 ELSE IF( lsamen( 2, c2,
'HR' ) )
THEN
945 srnamt =
'ZHESV_ROOK'
947 CALL zhesv_rook(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
948 CALL chkxer(
'ZHESV_ROOK', infot, nout, lerr, ok )
950 CALL zhesv_rook(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
951 CALL chkxer(
'ZHESV_ROOK', infot, nout, lerr, ok )
953 CALL zhesv_rook(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
954 CALL chkxer(
'ZHESV_ROOK', infot, nout, lerr, ok )
956 CALL zhesv_rook(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
957 CALL chkxer(
'ZHESV_ROOK', infot, nout, lerr, ok )
959 CALL zhesv_rook(
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
960 CALL chkxer(
'ZHESV_ROOK', infot, nout, lerr, ok )
962 CALL zhesv_rook(
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
963 CALL chkxer(
'ZHESV_ROOK', infot, nout, lerr, ok )
965 ELSE IF( lsamen( 2, c2,
'HK' ) )
THEN
979 CALL zhesv_rk(
'/', 0, 0, a, 1, e, ip, b, 1, w, 1, info )
980 CALL chkxer(
'ZHESV_RK', infot, nout, lerr, ok )
982 CALL zhesv_rk(
'U', -1, 0, a, 1, e, ip, b, 1, w, 1, info )
983 CALL chkxer(
'ZHESV_RK', infot, nout, lerr, ok )
985 CALL zhesv_rk(
'U', 0, -1, a, 1, e, ip, b, 1, w, 1, info )
986 CALL chkxer(
'ZHESV_RK', infot, nout, lerr, ok )
988 CALL zhesv_rk(
'U', 2, 0, a, 1, e, ip, b, 2, w, 1, info )
989 CALL chkxer(
'ZHESV_RK', infot, nout, lerr, ok )
991 CALL zhesv_rk(
'U', 2, 0, a, 2, e, ip, b, 1, w, 1, info )
992 CALL chkxer(
'ZHESV_RK', infot, nout, lerr, ok )
994 CALL zhesv_rk(
'U', 0, 0, a, 1, e, ip, b, 1, w, 0, info )
995 CALL chkxer(
'ZHESV_RK', infot, nout, lerr, ok )
997 CALL zhesv_rk(
'U', 0, 0, a, 1, e, ip, b, 1, w, -2, info )
998 CALL chkxer(
'ZHESV_RK', infot, nout, lerr, ok )
1000 ELSE IF( lsamen( 2, c2,
'HP' ) )
THEN
1006 CALL zhpsv(
'/', 0, 0, a, ip, b, 1, info )
1007 CALL chkxer(
'ZHPSV ', infot, nout, lerr, ok )
1009 CALL zhpsv(
'U', -1, 0, a, ip, b, 1, info )
1010 CALL chkxer(
'ZHPSV ', infot, nout, lerr, ok )
1012 CALL zhpsv(
'U', 0, -1, a, ip, b, 1, info )
1013 CALL chkxer(
'ZHPSV ', infot, nout, lerr, ok )
1015 CALL zhpsv(
'U', 2, 0, a, ip, b, 1, info )
1016 CALL chkxer(
'ZHPSV ', infot, nout, lerr, ok )
1022 CALL zhpsvx(
'/',
'U', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
1024 CALL chkxer(
'ZHPSVX', infot, nout, lerr, ok )
1026 CALL zhpsvx(
'N',
'/', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
1028 CALL chkxer(
'ZHPSVX', infot, nout, lerr, ok )
1030 CALL zhpsvx(
'N',
'U', -1, 0, a, af, ip, b, 1, x, 1, rcond, r1,
1032 CALL chkxer(
'ZHPSVX', infot, nout, lerr, ok )
1034 CALL zhpsvx(
'N',
'U', 0, -1, a, af, ip, b, 1, x, 1, rcond, r1,
1036 CALL chkxer(
'ZHPSVX', infot, nout, lerr, ok )
1038 CALL zhpsvx(
'N',
'U', 2, 0, a, af, ip, b, 1, x, 2, rcond, r1,
1040 CALL chkxer(
'ZHPSVX', infot, nout, lerr, ok )
1042 CALL zhpsvx(
'N',
'U', 2, 0, a, af, ip, b, 2, x, 1, rcond, r1,
1044 CALL chkxer(
'ZHPSVX', infot, nout, lerr, ok )
1046 ELSE IF( lsamen( 2, c2,
'SY' ) )
THEN
1052 CALL zsysv(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
1053 CALL chkxer(
'ZSYSV ', infot, nout, lerr, ok )
1055 CALL zsysv(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
1056 CALL chkxer(
'ZSYSV ', infot, nout, lerr, ok )
1058 CALL zsysv(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
1059 CALL chkxer(
'ZSYSV ', infot, nout, lerr, ok )
1061 CALL zsysv(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
1062 CALL chkxer(
'ZSYSV ', infot, nout, lerr, ok )
1064 CALL zsysv(
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
1065 CALL chkxer(
'ZSYSV ', infot, nout, lerr, ok )
1067 CALL zsysv(
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
1068 CALL chkxer(
'ZSYSV ', infot, nout, lerr, ok )
1074 CALL zsysvx(
'/',
'U', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
1075 $ rcond, r1, r2, w, 1, rw, info )
1076 CALL chkxer(
'ZSYSVX', infot, nout, lerr, ok )
1078 CALL zsysvx(
'N',
'/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1,
1079 $ rcond, r1, r2, w, 1, rw, info )
1080 CALL chkxer(
'ZSYSVX', infot, nout, lerr, ok )
1082 CALL zsysvx(
'N',
'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1,
1083 $ rcond, r1, r2, w, 1, rw, info )
1084 CALL chkxer(
'ZSYSVX', infot, nout, lerr, ok )
1086 CALL zsysvx(
'N',
'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1,
1087 $ rcond, r1, r2, w, 1, rw, info )
1088 CALL chkxer(
'ZSYSVX', infot, nout, lerr, ok )
1090 CALL zsysvx(
'N',
'U', 2, 0, a, 1, af, 2, ip, b, 2, x, 2,
1091 $ rcond, r1, r2, w, 4, rw, info )
1092 CALL chkxer(
'ZSYSVX', infot, nout, lerr, ok )
1094 CALL zsysvx(
'N',
'U', 2, 0, a, 2, af, 1, ip, b, 2, x, 2,
1095 $ rcond, r1, r2, w, 4, rw, info )
1096 CALL chkxer(
'ZSYSVX', infot, nout, lerr, ok )
1098 CALL zsysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 1, x, 2,
1099 $ rcond, r1, r2, w, 4, rw, info )
1100 CALL chkxer(
'ZSYSVX', infot, nout, lerr, ok )
1102 CALL zsysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 1,
1103 $ rcond, r1, r2, w, 4, rw, info )
1104 CALL chkxer(
'ZSYSVX', infot, nout, lerr, ok )
1106 CALL zsysvx(
'N',
'U', 2, 0, a, 2, af, 2, ip, b, 2, x, 2,
1107 $ rcond, r1, r2, w, 3, rw, info )
1108 CALL chkxer(
'ZSYSVX', infot, nout, lerr, ok )
1117 CALL zsysvxx(
'/',
'U', 0, 0, a, 1, af, 1, ip, eq, r, b, 1, x,
1118 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1119 $ err_bnds_c, nparams, params, w, rw, info )
1120 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1122 CALL zsysvxx(
'N',
'/', 0, 0, a, 1, af, 1, ip, eq, r, b, 1, x,
1123 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1124 $ err_bnds_c, nparams, params, w, rw, info )
1125 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1127 CALL zsysvxx(
'N',
'U', -1, 0, a, 1, af, 1, ip, eq, r, b, 1, x,
1128 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1129 $ err_bnds_c, nparams, params, w, rw, info )
1130 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1133 CALL zsysvxx(
'N',
'U', 0, -1, a, 1, af, 1, ip, eq, r, b, 1, x,
1134 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1135 $ err_bnds_c, nparams, params, w, rw, info )
1136 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1139 CALL zsysvxx(
'N',
'U', 2, 0, a, 1, af, 2, ip, eq, r, b, 2, x,
1140 $ 2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1141 $ err_bnds_c, nparams, params, w, rw, info )
1142 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1144 CALL zsysvxx(
'N',
'U', 2, 0, a, 2, af, 1, ip, eq, r, b, 2, x,
1145 $ 2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1146 $ err_bnds_c, nparams, params, w, rw, info )
1147 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1149 CALL zsysvxx(
'F',
'U', 2, 0, a, 2, af, 2, ip,
'A', r, b, 2, x,
1150 $ 2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1151 $ err_bnds_c, nparams, params, w, rw, info )
1152 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1155 CALL zsysvxx(
'F',
'U', 2, 0, a, 2, af, 2, ip, eq, r, b, 2, x,
1156 $ 2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1157 $ err_bnds_c, nparams, params, w, rw, info )
1158 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1162 CALL zsysvxx(
'F',
'U', 2, 0, a, 2, af, 2, ip, eq, r, b, 2, x,
1163 $ 2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1164 $ err_bnds_c, nparams, params, w, rw, info )
1165 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1168 CALL zsysvxx(
'N',
'U', 2, 0, a, 2, af, 2, ip, eq, r, b, 1, x,
1169 $ 2, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1170 $ err_bnds_c, nparams, params, w, rw, info )
1171 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1173 CALL zsysvxx(
'N',
'U', 2, 0, a, 2, af, 2, ip, eq, r, b, 2, x,
1174 $ 1, rcond, rpvgrw, berr, n_err_bnds, err_bnds_n,
1175 $ err_bnds_c, nparams, params, w, rw, info )
1176 CALL chkxer(
'ZSYSVXX', infot, nout, lerr, ok )
1178 ELSE IF( lsamen( 2, c2,
'SR' ) )
THEN
1182 srnamt =
'ZSYSV_ROOK'
1184 CALL zsysv_rook(
'/', 0, 0, a, 1, ip, b, 1, w, 1, info )
1185 CALL chkxer(
'ZSYSV_ROOK', infot, nout, lerr, ok )
1187 CALL zsysv_rook(
'U', -1, 0, a, 1, ip, b, 1, w, 1, info )
1188 CALL chkxer(
'ZSYSV_ROOK', infot, nout, lerr, ok )
1190 CALL zsysv_rook(
'U', 0, -1, a, 1, ip, b, 1, w, 1, info )
1191 CALL chkxer(
'ZSYSV_ROOK', infot, nout, lerr, ok )
1193 CALL zsysv_rook(
'U', 2, 0, a, 2, ip, b, 1, w, 1, info )
1194 CALL chkxer(
'ZSYSV_ROOK', infot, nout, lerr, ok )
1196 CALL zsysv_rook(
'U', 0, 0, a, 1, ip, b, 1, w, 0, info )
1197 CALL chkxer(
'ZSYSV_ROOK', infot, nout, lerr, ok )
1199 CALL zsysv_rook(
'U', 0, 0, a, 1, ip, b, 1, w, -2, info )
1201 ELSE IF( lsamen( 2, c2,
'SK' ) )
THEN
1215 CALL zsysv_rk(
'/', 0, 0, a, 1, e, ip, b, 1, w, 1, info )
1216 CALL chkxer(
'ZSYSV_RK', infot, nout, lerr, ok )
1218 CALL zsysv_rk(
'U', -1, 0, a, 1, e, ip, b, 1, w, 1, info )
1219 CALL chkxer(
'ZSYSV_RK', infot, nout, lerr, ok )
1221 CALL zsysv_rk(
'U', 0, -1, a, 1, e, ip, b, 1, w, 1, info )
1222 CALL chkxer(
'ZSYSV_RK', infot, nout, lerr, ok )
1224 CALL zsysv_rk(
'U', 2, 0, a, 1, e, ip, b, 2, w, 1, info )
1225 CALL chkxer(
'ZSYSV_RK', infot, nout, lerr, ok )
1227 CALL zsysv_rk(
'U', 2, 0, a, 2, e, ip, b, 1, w, 1, info )
1228 CALL chkxer(
'ZSYSV_RK', infot, nout, lerr, ok )
1230 CALL zsysv_rk(
'U', 0, 0, a, 1, e, ip, b, 1, w, 0, info )
1231 CALL chkxer(
'ZSYSV_RK', infot, nout, lerr, ok )
1233 CALL zsysv_rk(
'U', 0, 0, a, 1, e, ip, b, 1, w, -2, info )
1234 CALL chkxer(
'ZSYSV_RK', infot, nout, lerr, ok )
1236 ELSE IF( lsamen( 2, c2,
'SP' ) )
THEN
1242 CALL zspsv(
'/', 0, 0, a, ip, b, 1, info )
1243 CALL chkxer(
'ZSPSV ', infot, nout, lerr, ok )
1245 CALL zspsv(
'U', -1, 0, a, ip, b, 1, info )
1246 CALL chkxer(
'ZSPSV ', infot, nout, lerr, ok )
1248 CALL zspsv(
'U', 0, -1, a, ip, b, 1, info )
1249 CALL chkxer(
'ZSPSV ', infot, nout, lerr, ok )
1251 CALL zspsv(
'U', 2, 0, a, ip, b, 1, info )
1252 CALL chkxer(
'ZSPSV ', infot, nout, lerr, ok )
1258 CALL zspsvx(
'/',
'U', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
1260 CALL chkxer(
'ZSPSVX', infot, nout, lerr, ok )
1262 CALL zspsvx(
'N',
'/', 0, 0, a, af, ip, b, 1, x, 1, rcond, r1,
1264 CALL chkxer(
'ZSPSVX', infot, nout, lerr, ok )
1266 CALL zspsvx(
'N',
'U', -1, 0, a, af, ip, b, 1, x, 1, rcond, r1,
1268 CALL chkxer(
'ZSPSVX', infot, nout, lerr, ok )
1270 CALL zspsvx(
'N',
'U', 0, -1, a, af, ip, b, 1, x, 1, rcond, r1,
1272 CALL chkxer(
'ZSPSVX', infot, nout, lerr, ok )
1274 CALL zspsvx(
'N',
'U', 2, 0, a, af, ip, b, 1, x, 2, rcond, r1,
1276 CALL chkxer(
'ZSPSVX', infot, nout, lerr, ok )
1278 CALL zspsvx(
'N',
'U', 2, 0, a, af, ip, b, 2, x, 1, rcond, r1,
1280 CALL chkxer(
'ZSPSVX', infot, nout, lerr, ok )
1286 WRITE( nout, fmt = 9999 )path
1288 WRITE( nout, fmt = 9998 )path
1291 9999
FORMAT( 1x, a3,
' drivers passed the tests of the error exits' )
1292 9998
FORMAT(
' *** ', a3,
' drivers failed the tests of the error ',
subroutine chkxer(srnamt, infot, nout, lerr, ok)
subroutine zgbsv(n, kl, ku, nrhs, ab, ldab, ipiv, b, ldb, info)
ZGBSV computes the solution to system of linear equations A * X = B for GB matrices (simple driver)
subroutine zgbsvx(fact, trans, n, kl, ku, nrhs, ab, ldab, afb, ldafb, ipiv, equed, r, c, b, ldb, x, ldx, rcond, ferr, berr, work, rwork, info)
ZGBSVX computes the solution to system of linear equations A * X = B for GB matrices
subroutine zgbsvxx(fact, trans, n, kl, ku, nrhs, ab, ldab, afb, ldafb, ipiv, equed, r, c, b, ldb, x, ldx, rcond, rpvgrw, berr, n_err_bnds, err_bnds_norm, err_bnds_comp, nparams, params, work, rwork, info)
ZGBSVXX computes the solution to system of linear equations A * X = B for GB matrices
subroutine zgesv(n, nrhs, a, lda, ipiv, b, ldb, info)
Download ZGESV + dependencies <a href="http://www.netlib.org/cgi-bin/netlibfiles....
subroutine zgesvx(fact, trans, n, nrhs, a, lda, af, ldaf, ipiv, equed, r, c, b, ldb, x, ldx, rcond, ferr, berr, work, rwork, info)
ZGESVX computes the solution to system of linear equations A * X = B for GE matrices
subroutine zgesvxx(fact, trans, n, nrhs, a, lda, af, ldaf, ipiv, equed, r, c, b, ldb, x, ldx, rcond, rpvgrw, berr, n_err_bnds, err_bnds_norm, err_bnds_comp, nparams, params, work, rwork, info)
ZGESVXX computes the solution to system of linear equations A * X = B for GE matrices
subroutine zgtsv(n, nrhs, dl, d, du, b, ldb, info)
ZGTSV computes the solution to system of linear equations A * X = B for GT matrices
subroutine zgtsvx(fact, trans, n, nrhs, dl, d, du, dlf, df, duf, du2, ipiv, b, ldb, x, ldx, rcond, ferr, berr, work, rwork, info)
ZGTSVX computes the solution to system of linear equations A * X = B for GT matrices
subroutine zhesv_rk(uplo, n, nrhs, a, lda, e, ipiv, b, ldb, work, lwork, info)
ZHESV_RK computes the solution to system of linear equations A * X = B for SY matrices
subroutine zsysv_rk(uplo, n, nrhs, a, lda, e, ipiv, b, ldb, work, lwork, info)
ZSYSV_RK computes the solution to system of linear equations A * X = B for SY matrices
subroutine zhesv_rook(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
ZHESV_ROOK computes the solution to a system of linear equations A * X = B for HE matrices using the ...
subroutine zsysv_rook(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
ZSYSV_ROOK computes the solution to system of linear equations A * X = B for SY matrices
subroutine zhesv(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
ZHESV computes the solution to system of linear equations A * X = B for HE matrices
subroutine zsysv(uplo, n, nrhs, a, lda, ipiv, b, ldb, work, lwork, info)
ZSYSV computes the solution to system of linear equations A * X = B for SY matrices
subroutine zhesvx(fact, uplo, n, nrhs, a, lda, af, ldaf, ipiv, b, ldb, x, ldx, rcond, ferr, berr, work, lwork, rwork, info)
ZHESVX computes the solution to system of linear equations A * X = B for HE matrices
subroutine zsysvx(fact, uplo, n, nrhs, a, lda, af, ldaf, ipiv, b, ldb, x, ldx, rcond, ferr, berr, work, lwork, rwork, info)
ZSYSVX computes the solution to system of linear equations A * X = B for SY matrices
subroutine zsysvxx(fact, uplo, n, nrhs, a, lda, af, ldaf, ipiv, equed, s, b, ldb, x, ldx, rcond, rpvgrw, berr, n_err_bnds, err_bnds_norm, err_bnds_comp, nparams, params, work, rwork, info)
ZSYSVXX computes the solution to system of linear equations A * X = B for SY matrices
subroutine zhesvxx(fact, uplo, n, nrhs, a, lda, af, ldaf, ipiv, equed, s, b, ldb, x, ldx, rcond, rpvgrw, berr, n_err_bnds, err_bnds_norm, err_bnds_comp, nparams, params, work, rwork, info)
ZHESVXX computes the solution to system of linear equations A * X = B for HE matrices
subroutine zspsv(uplo, n, nrhs, ap, ipiv, b, ldb, info)
ZSPSV computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine zhpsv(uplo, n, nrhs, ap, ipiv, b, ldb, info)
ZHPSV computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine zspsvx(fact, uplo, n, nrhs, ap, afp, ipiv, b, ldb, x, ldx, rcond, ferr, berr, work, rwork, info)
ZSPSVX computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine zhpsvx(fact, uplo, n, nrhs, ap, afp, ipiv, b, ldb, x, ldx, rcond, ferr, berr, work, rwork, info)
ZHPSVX computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine zpbsv(uplo, n, kd, nrhs, ab, ldab, b, ldb, info)
ZPBSV computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine zpbsvx(fact, uplo, n, kd, nrhs, ab, ldab, afb, ldafb, equed, s, b, ldb, x, ldx, rcond, ferr, berr, work, rwork, info)
ZPBSVX computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine zposv(uplo, n, nrhs, a, lda, b, ldb, info)
ZPOSV computes the solution to system of linear equations A * X = B for PO matrices
subroutine zposvx(fact, uplo, n, nrhs, a, lda, af, ldaf, equed, s, b, ldb, x, ldx, rcond, ferr, berr, work, rwork, info)
ZPOSVX computes the solution to system of linear equations A * X = B for PO matrices
subroutine zposvxx(fact, uplo, n, nrhs, a, lda, af, ldaf, equed, s, b, ldb, x, ldx, rcond, rpvgrw, berr, n_err_bnds, err_bnds_norm, err_bnds_comp, nparams, params, work, rwork, info)
ZPOSVXX computes the solution to system of linear equations A * X = B for PO matrices
subroutine zppsv(uplo, n, nrhs, ap, b, ldb, info)
ZPPSV computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine zppsvx(fact, uplo, n, nrhs, ap, afp, equed, s, b, ldb, x, ldx, rcond, ferr, berr, work, rwork, info)
ZPPSVX computes the solution to system of linear equations A * X = B for OTHER matrices
subroutine zptsv(n, nrhs, d, e, b, ldb, info)
ZPTSV computes the solution to system of linear equations A * X = B for PT matrices
subroutine zptsvx(fact, n, nrhs, d, e, df, ef, b, ldb, x, ldx, rcond, ferr, berr, work, rwork, info)
ZPTSVX computes the solution to system of linear equations A * X = B for PT matrices
subroutine zerrvx(path, nunit)
ZERRVX