77      INTEGER            I, INFO, J, N_ERR_BNDS, NPARAMS
 
   78      DOUBLE PRECISION   ANRM, RCOND, BERR
 
   81      INTEGER            IP( NMAX ), IW( NMAX )
 
   82      DOUBLE PRECISION   A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
 
   83     $                   E( NMAX ), R1( NMAX ), R2( NMAX ), W( 3*NMAX ),
 
   84     $                   X( NMAX ), S( NMAX ), ERR_BNDS_N( NMAX, 3 ),
 
   85     $                   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 )
 
  138      IF( lsamen( 2, c2, 
'SY' ) ) 
THEN 
  148         CALL dsytrf( 
'/', 0, a, 1, ip, w, 1, info )
 
  149         CALL chkxer( 
'DSYTRF', infot, nout, lerr, ok )
 
  151         CALL dsytrf( 
'U', -1, a, 1, ip, w, 1, info )
 
  152         CALL chkxer( 
'DSYTRF', infot, nout, lerr, ok )
 
  154         CALL dsytrf( 
'U', 2, a, 1, ip, w, 4, info )
 
  155         CALL chkxer( 
'DSYTRF', infot, nout, lerr, ok )
 
  157         CALL dsytrf( 
'U', 0, a, 1, ip, w, 0, info )
 
  158         CALL chkxer( 
'DSYTRF', infot, nout, lerr, ok )
 
  160         CALL dsytrf( 
'U', 0, a, 1, ip, w, -2, info )
 
  161         CALL chkxer( 
'DSYTRF', infot, nout, lerr, ok )
 
  167         CALL dsytf2( 
'/', 0, a, 1, ip, info )
 
  168         CALL chkxer( 
'DSYTF2', infot, nout, lerr, ok )
 
  170         CALL dsytf2( 
'U', -1, a, 1, ip, info )
 
  171         CALL chkxer( 
'DSYTF2', infot, nout, lerr, ok )
 
  173         CALL dsytf2( 
'U', 2, a, 1, ip, info )
 
  174         CALL chkxer( 
'DSYTF2', infot, nout, lerr, ok )
 
  180         CALL dsytri( 
'/', 0, a, 1, ip, w, info )
 
  181         CALL chkxer( 
'DSYTRI', infot, nout, lerr, ok )
 
  183         CALL dsytri( 
'U', -1, a, 1, ip, w, info )
 
  184         CALL chkxer( 
'DSYTRI', infot, nout, lerr, ok )
 
  186         CALL dsytri( 
'U', 2, a, 1, ip, w, info )
 
  187         CALL chkxer( 
'DSYTRI', infot, nout, lerr, ok )
 
  193         CALL dsytri2( 
'/', 0, a, 1, ip, w, iw, info )
 
  194         CALL chkxer( 
'DSYTRI2', infot, nout, lerr, ok )
 
  196         CALL dsytri2( 
'U', -1, a, 1, ip, w, iw, info )
 
  197         CALL chkxer( 
'DSYTRI2', infot, nout, lerr, ok )
 
  199         CALL dsytri2( 
'U', 2, a, 1, ip, w, iw, info )
 
  200         CALL chkxer( 
'DSYTRI2', infot, nout, lerr, ok )
 
  206         CALL dsytri2x( 
'/', 0, a, 1, ip, w, 1, info )
 
  207         CALL chkxer( 
'DSYTRI2X', infot, nout, lerr, ok )
 
  209         CALL dsytri2x( 
'U', -1, a, 1, ip, w, 1, info )
 
  210         CALL chkxer( 
'DSYTRI2X', infot, nout, lerr, ok )
 
  212         CALL dsytri2x( 
'U', 2, a, 1, ip, w, 1, info )
 
  213         CALL chkxer( 
'DSYTRI2X', infot, nout, lerr, ok )
 
  219         CALL dsytrs( 
'/', 0, 0, a, 1, ip, b, 1, info )
 
  220         CALL chkxer( 
'DSYTRS', infot, nout, lerr, ok )
 
  222         CALL dsytrs( 
'U', -1, 0, a, 1, ip, b, 1, info )
 
  223         CALL chkxer( 
'DSYTRS', infot, nout, lerr, ok )
 
  225         CALL dsytrs( 
'U', 0, -1, a, 1, ip, b, 1, info )
 
  226         CALL chkxer( 
'DSYTRS', infot, nout, lerr, ok )
 
  228         CALL dsytrs( 
'U', 2, 1, a, 1, ip, b, 2, info )
 
  229         CALL chkxer( 
'DSYTRS', infot, nout, lerr, ok )
 
  231         CALL dsytrs( 
'U', 2, 1, a, 2, ip, b, 1, info )
 
  232         CALL chkxer( 
'DSYTRS', infot, nout, lerr, ok )
 
  238         CALL dsyrfs( 
'/', 0, 0, a, 1, af, 1, ip, b, 1, x, 1, r1, r2, w,
 
  240         CALL chkxer( 
'DSYRFS', infot, nout, lerr, ok )
 
  242         CALL dsyrfs( 
'U', -1, 0, a, 1, af, 1, ip, b, 1, x, 1, r1, r2,
 
  244         CALL chkxer( 
'DSYRFS', infot, nout, lerr, ok )
 
  246         CALL dsyrfs( 
'U', 0, -1, a, 1, af, 1, ip, b, 1, x, 1, r1, r2,
 
  248         CALL chkxer( 
'DSYRFS', infot, nout, lerr, ok )
 
  250         CALL dsyrfs( 
'U', 2, 1, a, 1, af, 2, ip, b, 2, x, 2, r1, r2, w,
 
  252         CALL chkxer( 
'DSYRFS', infot, nout, lerr, ok )
 
  254         CALL dsyrfs( 
'U', 2, 1, a, 2, af, 1, ip, b, 2, x, 2, r1, r2, w,
 
  256         CALL chkxer( 
'DSYRFS', infot, nout, lerr, ok )
 
  258         CALL dsyrfs( 
'U', 2, 1, a, 2, af, 2, ip, b, 1, x, 2, r1, r2, w,
 
  260         CALL chkxer( 
'DSYRFS', infot, nout, lerr, ok )
 
  262         CALL dsyrfs( 
'U', 2, 1, a, 2, af, 2, ip, b, 2, x, 1, r1, r2, w,
 
  264         CALL chkxer( 
'DSYRFS', infot, nout, lerr, ok )
 
  272         CALL dsyrfsx( 
'/', eq, 0, 0, a, 1, af, 1, ip, s, b, 1, x, 1,
 
  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, -1, 0, a, 1, af, 1, ip, s, b, 1, x, 1,
 
  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 )
 
  283         CALL dsyrfsx( 
'U', eq, -1, 0, a, 1, af, 1, ip, s, b, 1, x, 1,
 
  284     $        rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
 
  285     $        params, w, iw, info )
 
  286         CALL chkxer( 
'DSYRFSX', infot, nout, lerr, ok )
 
  288         CALL dsyrfsx( 
'U', eq, 0, -1, a, 1, af, 1, ip, s, b, 1, x, 1,
 
  289     $        rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
 
  290     $        params, w, iw, info )
 
  291         CALL chkxer( 
'DSYRFSX', infot, nout, lerr, ok )
 
  293         CALL dsyrfsx( 
'U', eq, 2, 1, a, 1, af, 2, ip, s, b, 2, x, 2,
 
  294     $        rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
 
  295     $        params, w, iw, info )
 
  296         CALL chkxer( 
'DSYRFSX', infot, nout, lerr, ok )
 
  298         CALL dsyrfsx( 
'U', eq, 2, 1, a, 2, af, 1, ip, s, b, 2, x, 2,
 
  299     $        rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
 
  300     $        params, w, iw, info )
 
  301         CALL chkxer( 
'DSYRFSX', infot, nout, lerr, ok )
 
  303         CALL dsyrfsx( 
'U', eq, 2, 1, a, 2, af, 2, ip, s, b, 1, x, 2,
 
  304     $        rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
 
  305     $        params, w, iw, info )
 
  306         CALL chkxer( 
'DSYRFSX', infot, nout, lerr, ok )
 
  308         CALL dsyrfsx( 
'U', eq, 2, 1, a, 2, af, 2, ip, s, b, 2, x, 1,
 
  309     $        rcond, berr, n_err_bnds, err_bnds_n, err_bnds_c, nparams,
 
  310     $        params, w, iw, info )
 
  311         CALL chkxer( 
'DSYRFSX', infot, nout, lerr, ok )
 
  317         CALL dsycon( 
'/', 0, a, 1, ip, anrm, rcond, w, iw, info )
 
  318         CALL chkxer( 
'DSYCON', infot, nout, lerr, ok )
 
  320         CALL dsycon( 
'U', -1, a, 1, ip, anrm, rcond, w, iw, info )
 
  321         CALL chkxer( 
'DSYCON', infot, nout, lerr, ok )
 
  323         CALL dsycon( 
'U', 2, a, 1, ip, anrm, rcond, w, iw, info )
 
  324         CALL chkxer( 
'DSYCON', infot, nout, lerr, ok )
 
  326         CALL dsycon( 
'U', 1, a, 1, ip, -1.0d0, rcond, w, iw, info )
 
  327         CALL chkxer( 
'DSYCON', infot, nout, lerr, ok )
 
  329      ELSE IF( lsamen( 2, c2, 
'SR' ) ) 
THEN 
  337         srnamt = 
'DSYTRF_ROOK' 
  340         CALL chkxer( 
'DSYTRF_ROOK', infot, nout, lerr, ok )
 
  343         CALL chkxer( 
'DSYTRF_ROOK', infot, nout, lerr, ok )
 
  346         CALL chkxer( 
'DSYTRF_ROOK', infot, nout, lerr, ok )
 
  349         CALL chkxer( 
'DSYTRF_ROOK', infot, nout, lerr, ok )
 
  352         CALL chkxer( 
'DSYTRF_ROOK', infot, nout, lerr, ok )
 
  356         srnamt = 
'DSYTF2_ROOK' 
  359         CALL chkxer( 
'DSYTF2_ROOK', infot, nout, lerr, ok )
 
  362         CALL chkxer( 
'DSYTF2_ROOK', infot, nout, lerr, ok )
 
  365         CALL chkxer( 
'DSYTF2_ROOK', infot, nout, lerr, ok )
 
  369         srnamt = 
'DSYTRI_ROOK' 
  372         CALL chkxer( 
'DSYTRI_ROOK', infot, nout, lerr, ok )
 
  375         CALL chkxer( 
'DSYTRI_ROOK', infot, nout, lerr, ok )
 
  378         CALL chkxer( 
'DSYTRI_ROOK', infot, nout, lerr, ok )
 
  382         srnamt = 
'DSYTRS_ROOK' 
  384         CALL dsytrs_rook( 
'/', 0, 0, a, 1, ip, b, 1, info )
 
  385         CALL chkxer( 
'DSYTRS_ROOK', infot, nout, lerr, ok )
 
  387         CALL dsytrs_rook( 
'U', -1, 0, a, 1, ip, b, 1, info )
 
  388         CALL chkxer( 
'DSYTRS_ROOK', infot, nout, lerr, ok )
 
  390         CALL dsytrs_rook( 
'U', 0, -1, a, 1, ip, b, 1, info )
 
  391         CALL chkxer( 
'DSYTRS_ROOK', infot, nout, lerr, ok )
 
  393         CALL dsytrs_rook( 
'U', 2, 1, a, 1, ip, b, 2, info )
 
  394         CALL chkxer( 
'DSYTRS_ROOK', infot, nout, lerr, ok )
 
  396         CALL dsytrs_rook( 
'U', 2, 1, a, 2, ip, b, 1, info )
 
  397         CALL chkxer( 
'DSYTRS_ROOK', infot, nout, lerr, ok )
 
  401         srnamt = 
'DSYCON_ROOK' 
  403         CALL dsycon_rook( 
'/', 0, a, 1, ip, anrm, rcond, w, iw, info )
 
  404         CALL chkxer( 
'DSYCON_ROOK', infot, nout, lerr, ok )
 
  406         CALL dsycon_rook( 
'U', -1, a, 1, ip, anrm, rcond, w, iw, info )
 
  407         CALL chkxer( 
'DSYCON_ROOK', infot, nout, lerr, ok )
 
  409         CALL dsycon_rook( 
'U', 2, a, 1, ip, anrm, rcond, w, iw, info )
 
  410         CALL chkxer( 
'DSYCON_ROOK', infot, nout, lerr, ok )
 
  412         CALL dsycon_rook( 
'U', 1, a, 1, ip, -1.0d0, rcond, w, iw, info)
 
  413         CALL chkxer( 
'DSYCON_ROOK', infot, nout, lerr, ok )
 
  415      ELSE IF( lsamen( 2, c2, 
'SK' ) ) 
THEN 
  429         CALL dsytrf_rk( 
'/', 0, a, 1, e, ip, w, 1, info )
 
  430         CALL chkxer( 
'DSYTRF_RK', infot, nout, lerr, ok )
 
  432         CALL dsytrf_rk( 
'U', -1, a, 1, e, ip, w, 1, info )
 
  433         CALL chkxer( 
'DSYTRF_RK', infot, nout, lerr, ok )
 
  435         CALL dsytrf_rk( 
'U', 2, a, 1, e, ip, w, 1, info )
 
  436         CALL chkxer( 
'DSYTRF_RK', infot, nout, lerr, ok )
 
  438         CALL dsytrf_rk( 
'U', 0, a, 1, e, ip, w, 0, info )
 
  439         CALL chkxer( 
'DSYTRF_RK', infot, nout, lerr, ok )
 
  441         CALL dsytrf_rk( 
'U', 0, a, 1, e, ip, w, -2, info )
 
  442         CALL chkxer( 
'DSYTRF_RK', infot, nout, lerr, ok )
 
  448         CALL dsytf2_rk( 
'/', 0, a, 1, e, ip, info )
 
  449         CALL chkxer( 
'DSYTF2_RK', infot, nout, lerr, ok )
 
  451         CALL dsytf2_rk( 
'U', -1, a, 1, e, ip, info )
 
  452         CALL chkxer( 
'DSYTF2_RK', infot, nout, lerr, ok )
 
  454         CALL dsytf2_rk( 
'U', 2, a, 1, e, ip, info )
 
  455         CALL chkxer( 
'DSYTF2_RK', infot, nout, lerr, ok )
 
  461         CALL dsytri_3( 
'/', 0, a, 1, e, ip, w, 1, info )
 
  462         CALL chkxer( 
'DSYTRI_3', infot, nout, lerr, ok )
 
  464         CALL dsytri_3( 
'U', -1, a, 1, e, ip, w, 1, info )
 
  465         CALL chkxer( 
'DSYTRI_3', infot, nout, lerr, ok )
 
  467         CALL dsytri_3( 
'U', 2, a, 1, e, ip, w, 1, info )
 
  468         CALL chkxer( 
'DSYTRI_3', infot, nout, lerr, ok )
 
  470         CALL dsytri_3( 
'U', 0, a, 1, e, ip, w, 0, info )
 
  471         CALL chkxer( 
'DSYTRI_3', infot, nout, lerr, ok )
 
  473         CALL dsytri_3( 
'U', 0, a, 1, e, ip, w, -2, info )
 
  474         CALL chkxer( 
'DSYTRI_3', infot, nout, lerr, ok )
 
  480         CALL dsytri_3x( 
'/', 0, a, 1, e, ip, w, 1, info )
 
  481         CALL chkxer( 
'DSYTRI_3X', infot, nout, lerr, ok )
 
  483         CALL dsytri_3x( 
'U', -1, a, 1, e, ip, w, 1, info )
 
  484         CALL chkxer( 
'DSYTRI_3X', infot, nout, lerr, ok )
 
  486         CALL dsytri_3x( 
'U', 2, a, 1, e, ip, w, 1, info )
 
  487         CALL chkxer( 
'DSYTRI_3X', infot, nout, lerr, ok )
 
  493         CALL dsytrs_3( 
'/', 0, 0, a, 1, e, ip, b, 1, info )
 
  494         CALL chkxer( 
'DSYTRS_3', infot, nout, lerr, ok )
 
  496         CALL dsytrs_3( 
'U', -1, 0, a, 1, e, ip, b, 1, info )
 
  497         CALL chkxer( 
'DSYTRS_3', infot, nout, lerr, ok )
 
  499         CALL dsytrs_3( 
'U', 0, -1, a, 1, e, ip, b, 1, info )
 
  500         CALL chkxer( 
'DSYTRS_3', infot, nout, lerr, ok )
 
  502         CALL dsytrs_3( 
'U', 2, 1, a, 1, e, ip, b, 2, info )
 
  503         CALL chkxer( 
'DSYTRS_3', infot, nout, lerr, ok )
 
  505         CALL dsytrs_3( 
'U', 2, 1, a, 2, e, ip, b, 1, info )
 
  506         CALL chkxer( 
'DSYTRS_3', infot, nout, lerr, ok )
 
  512         CALL dsycon_3( 
'/', 0, a, 1,  e, ip, anrm, rcond, w, iw,
 
  514         CALL chkxer( 
'DSYCON_3', infot, nout, lerr, ok )
 
  516         CALL dsycon_3( 
'U', -1, a, 1, e, ip, anrm, rcond, w, iw,
 
  518         CALL chkxer( 
'DSYCON_3', infot, nout, lerr, ok )
 
  520         CALL dsycon_3( 
'U', 2, a, 1, e, ip, anrm, rcond, w, iw,
 
  522         CALL chkxer( 
'DSYCON_3', infot, nout, lerr, ok )
 
  524         CALL dsycon_3( 
'U', 1, a, 1, e, ip, -1.0d0, rcond, w, iw,
 
  526         CALL chkxer( 
'DSYCON_3', infot, nout, lerr, ok )
 
  528      ELSE IF( lsamen( 2, c2, 
'SP' ) ) 
THEN 
  538         CALL dsptrf( 
'/', 0, a, ip, info )
 
  539         CALL chkxer( 
'DSPTRF', infot, nout, lerr, ok )
 
  541         CALL dsptrf( 
'U', -1, a, ip, info )
 
  542         CALL chkxer( 
'DSPTRF', infot, nout, lerr, ok )
 
  548         CALL dsptri( 
'/', 0, a, ip, w, info )
 
  549         CALL chkxer( 
'DSPTRI', infot, nout, lerr, ok )
 
  551         CALL dsptri( 
'U', -1, a, ip, w, info )
 
  552         CALL chkxer( 
'DSPTRI', infot, nout, lerr, ok )
 
  558         CALL dsptrs( 
'/', 0, 0, a, ip, b, 1, info )
 
  559         CALL chkxer( 
'DSPTRS', infot, nout, lerr, ok )
 
  561         CALL dsptrs( 
'U', -1, 0, a, ip, b, 1, info )
 
  562         CALL chkxer( 
'DSPTRS', infot, nout, lerr, ok )
 
  564         CALL dsptrs( 
'U', 0, -1, a, ip, b, 1, info )
 
  565         CALL chkxer( 
'DSPTRS', infot, nout, lerr, ok )
 
  567         CALL dsptrs( 
'U', 2, 1, a, ip, b, 1, info )
 
  568         CALL chkxer( 
'DSPTRS', infot, nout, lerr, ok )
 
  574         CALL dsprfs( 
'/', 0, 0, a, af, ip, b, 1, x, 1, r1, r2, w, iw,
 
  576         CALL chkxer( 
'DSPRFS', infot, nout, lerr, ok )
 
  578         CALL dsprfs( 
'U', -1, 0, a, af, ip, b, 1, x, 1, r1, r2, w, iw,
 
  580         CALL chkxer( 
'DSPRFS', infot, nout, lerr, ok )
 
  582         CALL dsprfs( 
'U', 0, -1, a, af, ip, b, 1, x, 1, r1, r2, w, iw,
 
  584         CALL chkxer( 
'DSPRFS', infot, nout, lerr, ok )
 
  586         CALL dsprfs( 
'U', 2, 1, a, af, ip, b, 1, x, 2, r1, r2, w, iw,
 
  588         CALL chkxer( 
'DSPRFS', infot, nout, lerr, ok )
 
  590         CALL dsprfs( 
'U', 2, 1, a, af, ip, b, 2, x, 1, r1, r2, w, iw,
 
  592         CALL chkxer( 
'DSPRFS', infot, nout, lerr, ok )
 
  598         CALL dspcon( 
'/', 0, a, ip, anrm, rcond, w, iw, info )
 
  599         CALL chkxer( 
'DSPCON', infot, nout, lerr, ok )
 
  601         CALL dspcon( 
'U', -1, a, ip, anrm, rcond, w, iw, info )
 
  602         CALL chkxer( 
'DSPCON', infot, nout, lerr, ok )
 
  604         CALL dspcon( 
'U', 1, a, ip, -1.0d0, rcond, w, iw, info )
 
  605         CALL chkxer( 
'DSPCON', infot, nout, lerr, ok )
 
  610      CALL alaesm( path, ok, nout )