52
   53
   54
   55
   56
   57
   58      INTEGER            NUNIT
   59
   60
   61
   62
   63
   64
   65      INTEGER            INFO
   66      DOUBLE PRECISION   ALPHA, BETA
   67
   68
   69      DOUBLE PRECISION   A( 1, 1), B( 1, 1)
   70
   71
   75
   76
   77      LOGICAL            LERR, OK
   78      CHARACTER*32       SRNAMT
   79      INTEGER            INFOT, NOUT
   80
   81
   82      COMMON             / infoc / infot, nout, ok, lerr
   83      COMMON             / srnamc / srnamt
   84
   85
   86
   87      nout = nunit
   88      ok = .true.
   89      a( 1, 1 ) = 1.0d+0
   90      b( 1, 1 ) = 1.0d+0
   91      alpha     = 1.0d+0
   92      beta      = 1.0d+0
   93
   94      srnamt = 'DPFTRF'
   95      infot = 1
   96      CALL dpftrf( 
'/', 
'U', 0, a, info )
 
   97      CALL chkxer( 
'DPFTRF', infot, nout, lerr, ok )
 
   98      infot = 2
   99      CALL dpftrf( 
'N', 
'/', 0, a, info )
 
  100      CALL chkxer( 
'DPFTRF', infot, nout, lerr, ok )
 
  101      infot = 3
  102      CALL dpftrf( 
'N', 
'U', -1, a, info )
 
  103      CALL chkxer( 
'DPFTRF', infot, nout, lerr, ok )
 
  104
  105      srnamt = 'DPFTRS'
  106      infot = 1
  107      CALL dpftrs( 
'/', 
'U', 0, 0, a, b, 1, info )
 
  108      CALL chkxer( 
'DPFTRS', infot, nout, lerr, ok )
 
  109      infot = 2
  110      CALL dpftrs( 
'N', 
'/', 0, 0, a, b, 1, info )
 
  111      CALL chkxer( 
'DPFTRS', infot, nout, lerr, ok )
 
  112      infot = 3
  113      CALL dpftrs( 
'N', 
'U', -1, 0, a, b, 1, info )
 
  114      CALL chkxer( 
'DPFTRS', infot, nout, lerr, ok )
 
  115      infot = 4
  116      CALL dpftrs( 
'N', 
'U', 0, -1, a, b, 1, info )
 
  117      CALL chkxer( 
'DPFTRS', infot, nout, lerr, ok )
 
  118      infot = 7
  119      CALL dpftrs( 
'N', 
'U', 0, 0, a, b, 0, info )
 
  120      CALL chkxer( 
'DPFTRS', infot, nout, lerr, ok )
 
  121
  122      srnamt = 'DPFTRI'
  123      infot = 1
  124      CALL dpftri( 
'/', 
'U', 0, a, info )
 
  125      CALL chkxer( 
'DPFTRI', infot, nout, lerr, ok )
 
  126      infot = 2
  127      CALL dpftri( 
'N', 
'/', 0, a, info )
 
  128      CALL chkxer( 
'DPFTRI', infot, nout, lerr, ok )
 
  129      infot = 3
  130      CALL dpftri( 
'N', 
'U', -1, a, info )
 
  131      CALL chkxer( 
'DPFTRI', infot, nout, lerr, ok )
 
  132
  133      srnamt = 'DTFSM '
  134      infot = 1
  135      CALL dtfsm( 
'/', 
'L', 
'U', 
'T', 
'U', 0, 0, alpha, a, b, 1 )
 
  136      CALL chkxer( 
'DTFSM ', infot, nout, lerr, ok )
 
  137      infot = 2
  138      CALL dtfsm( 
'N', 
'/', 
'U', 
'T', 
'U', 0, 0, alpha, a, b, 1 )
 
  139      CALL chkxer( 
'DTFSM ', infot, nout, lerr, ok )
 
  140      infot = 3
  141      CALL dtfsm( 
'N', 
'L', 
'/', 
'T', 
'U', 0, 0, alpha, a, b, 1 )
 
  142      CALL chkxer( 
'DTFSM ', infot, nout, lerr, ok )
 
  143      infot = 4
  144      CALL dtfsm( 
'N', 
'L', 
'U', 
'/', 
'U', 0, 0, alpha, a, b, 1 )
 
  145      CALL chkxer( 
'DTFSM ', infot, nout, lerr, ok )
 
  146      infot = 5
  147      CALL dtfsm( 
'N', 
'L', 
'U', 
'T', 
'/', 0, 0, alpha, a, b, 1 )
 
  148      CALL chkxer( 
'DTFSM ', infot, nout, lerr, ok )
 
  149      infot = 6
  150      CALL dtfsm( 
'N', 
'L', 
'U', 
'T', 
'U', -1, 0, alpha, a, b, 1 )
 
  151      CALL chkxer( 
'DTFSM ', infot, nout, lerr, ok )
 
  152      infot = 7
  153      CALL dtfsm( 
'N', 
'L', 
'U', 
'T', 
'U', 0, -1, alpha, a, b, 1 )
 
  154      CALL chkxer( 
'DTFSM ', infot, nout, lerr, ok )
 
  155      infot = 11
  156      CALL dtfsm( 
'N', 
'L', 
'U', 
'T', 
'U', 0, 0, alpha, a, b, 0 )
 
  157      CALL chkxer( 
'DTFSM ', infot, nout, lerr, ok )
 
  158
  159      srnamt = 'DTFTRI'
  160      infot = 1
  161      CALL dtftri( 
'/', 
'L', 
'N', 0, a, info )
 
  162      CALL chkxer( 
'DTFTRI', infot, nout, lerr, ok )
 
  163      infot = 2
  164      CALL dtftri( 
'N', 
'/', 
'N', 0, a, info )
 
  165      CALL chkxer( 
'DTFTRI', infot, nout, lerr, ok )
 
  166      infot = 3
  167      CALL dtftri( 
'N', 
'L', 
'/', 0, a, info )
 
  168      CALL chkxer( 
'DTFTRI', infot, nout, lerr, ok )
 
  169      infot = 4
  170      CALL dtftri( 
'N', 
'L', 
'N', -1, a, info )
 
  171      CALL chkxer( 
'DTFTRI', infot, nout, lerr, ok )
 
  172
  173      srnamt = 'DTFTTR'
  174      infot = 1
  175      CALL dtfttr( 
'/', 
'U', 0, a, b, 1, info )
 
  176      CALL chkxer( 
'DTFTTR', infot, nout, lerr, ok )
 
  177      infot = 2
  178      CALL dtfttr( 
'N', 
'/', 0, a, b, 1, info )
 
  179      CALL chkxer( 
'DTFTTR', infot, nout, lerr, ok )
 
  180      infot = 3
  181      CALL dtfttr( 
'N', 
'U', -1, a, b, 1, info )
 
  182      CALL chkxer( 
'DTFTTR', infot, nout, lerr, ok )
 
  183      infot = 6
  184      CALL dtfttr( 
'N', 
'U', 0, a, b, 0, info )
 
  185      CALL chkxer( 
'DTFTTR', infot, nout, lerr, ok )
 
  186
  187      srnamt = 'DTRTTF'
  188      infot = 1
  189      CALL dtrttf( 
'/', 
'U', 0, a, 1, b, info )
 
  190      CALL chkxer( 
'DTRTTF', infot, nout, lerr, ok )
 
  191      infot = 2
  192      CALL dtrttf( 
'N', 
'/', 0, a, 1, b, info )
 
  193      CALL chkxer( 
'DTRTTF', infot, nout, lerr, ok )
 
  194      infot = 3
  195      CALL dtrttf( 
'N', 
'U', -1, a, 1, b, info )
 
  196      CALL chkxer( 
'DTRTTF', infot, nout, lerr, ok )
 
  197      infot = 5
  198      CALL dtrttf( 
'N', 
'U', 0, a, 0, b, info )
 
  199      CALL chkxer( 
'DTRTTF', infot, nout, lerr, ok )
 
  200
  201      srnamt = 'DTFTTP'
  202      infot = 1
  203      CALL dtfttp( 
'/', 
'U', 0, a, b, info )
 
  204      CALL chkxer( 
'DTFTTP', infot, nout, lerr, ok )
 
  205      infot = 2
  206      CALL dtfttp( 
'N', 
'/', 0, a, b, info )
 
  207      CALL chkxer( 
'DTFTTP', infot, nout, lerr, ok )
 
  208      infot = 3
  209      CALL dtfttp( 
'N', 
'U', -1, a, b, info )
 
  210      CALL chkxer( 
'DTFTTP', infot, nout, lerr, ok )
 
  211
  212      srnamt = 'DTPTTF'
  213      infot = 1
  214      CALL dtpttf( 
'/', 
'U', 0, a, b, info )
 
  215      CALL chkxer( 
'DTPTTF', infot, nout, lerr, ok )
 
  216      infot = 2
  217      CALL dtpttf( 
'N', 
'/', 0, a, b, info )
 
  218      CALL chkxer( 
'DTPTTF', infot, nout, lerr, ok )
 
  219      infot = 3
  220      CALL dtpttf( 
'N', 
'U', -1, a, b, info )
 
  221      CALL chkxer( 
'DTPTTF', infot, nout, lerr, ok )
 
  222
  223      srnamt = 'DTRTTP'
  224      infot = 1
  225      CALL dtrttp( 
'/', 0, a, 1,  b, info )
 
  226      CALL chkxer( 
'DTRTTP', infot, nout, lerr, ok )
 
  227      infot = 2
  228      CALL dtrttp( 
'U', -1, a, 1,  b, info )
 
  229      CALL chkxer( 
'DTRTTP', infot, nout, lerr, ok )
 
  230      infot = 4
  231      CALL dtrttp( 
'U', 0, a, 0,  b, info )
 
  232      CALL chkxer( 
'DTRTTP', infot, nout, lerr, ok )
 
  233
  234      srnamt = 'DTPTTR'
  235      infot = 1
  236      CALL dtpttr( 
'/', 0, a, b, 1,  info )
 
  237      CALL chkxer( 
'DTPTTR', infot, nout, lerr, ok )
 
  238      infot = 2
  239      CALL dtpttr( 
'U', -1, a, b, 1,  info )
 
  240      CALL chkxer( 
'DTPTTR', infot, nout, lerr, ok )
 
  241      infot = 5
  242      CALL dtpttr( 
'U', 0, a, b, 0, info )
 
  243      CALL chkxer( 
'DTPTTR', infot, nout, lerr, ok )
 
  244
  245      srnamt = 'DSFRK '
  246      infot = 1
  247      CALL dsfrk( 
'/', 
'U', 
'N', 0, 0, alpha, a, 1, beta, b )
 
  248      CALL chkxer( 
'DSFRK ', infot, nout, lerr, ok )
 
  249      infot = 2
  250      CALL dsfrk( 
'N', 
'/', 
'N', 0, 0, alpha, a, 1, beta, b )
 
  251      CALL chkxer( 
'DSFRK ', infot, nout, lerr, ok )
 
  252      infot = 3
  253      CALL dsfrk( 
'N', 
'U', 
'/', 0, 0, alpha, a, 1, beta, b )
 
  254      CALL chkxer( 
'DSFRK ', infot, nout, lerr, ok )
 
  255      infot = 4
  256      CALL dsfrk( 
'N', 
'U', 
'N', -1, 0, alpha, a, 1, beta, b )
 
  257      CALL chkxer( 
'DSFRK ', infot, nout, lerr, ok )
 
  258      infot = 5
  259      CALL dsfrk( 
'N', 
'U', 
'N', 0, -1, alpha, a, 1, beta, b )
 
  260      CALL chkxer( 
'DSFRK ', infot, nout, lerr, ok )
 
  261      infot = 8
  262      CALL dsfrk( 
'N', 
'U', 
'N', 0, 0, alpha, a, 0, beta, b )
 
  263      CALL chkxer( 
'DSFRK ', infot, nout, lerr, ok )
 
  264
  265
  266
  267      IF( ok ) THEN
  268         WRITE( nout, fmt = 9999 )
  269      ELSE
  270         WRITE( nout, fmt = 9998 )
  271      END IF
  272
  273 9999 FORMAT( 1x, 'DOUBLE PRECISION RFP routines passed the tests of ',
  274     $        'the error exits' )
  275 9998 FORMAT( ' *** RFP routines failed the tests of the error ',
  276     $        'exits ***' )
  277      RETURN
  278
  279
  280
subroutine chkxer(srnamt, infot, nout, lerr, ok)
subroutine dsfrk(transr, uplo, trans, n, k, alpha, a, lda, beta, c)
DSFRK performs a symmetric rank-k operation for matrix in RFP format.
subroutine dpftrf(transr, uplo, n, a, info)
DPFTRF
subroutine dpftri(transr, uplo, n, a, info)
DPFTRI
subroutine dpftrs(transr, uplo, n, nrhs, a, b, ldb, info)
DPFTRS
subroutine dtfsm(transr, side, uplo, trans, diag, m, n, alpha, a, b, ldb)
DTFSM solves a matrix equation (one operand is a triangular matrix in RFP format).
subroutine dtftri(transr, uplo, diag, n, a, info)
DTFTRI
subroutine dtfttp(transr, uplo, n, arf, ap, info)
DTFTTP copies a triangular matrix from the rectangular full packed format (TF) to the standard packed...
subroutine dtfttr(transr, uplo, n, arf, a, lda, info)
DTFTTR copies a triangular matrix from the rectangular full packed format (TF) to the standard full f...
subroutine dtpttf(transr, uplo, n, ap, arf, info)
DTPTTF copies a triangular matrix from the standard packed format (TP) to the rectangular full packed...
subroutine dtpttr(uplo, n, ap, a, lda, info)
DTPTTR copies a triangular matrix from the standard packed format (TP) to the standard full format (T...
subroutine dtrttf(transr, uplo, n, a, lda, arf, info)
DTRTTF copies a triangular matrix from the standard full format (TR) to the rectangular full packed f...
subroutine dtrttp(uplo, n, a, lda, ap, info)
DTRTTP copies a triangular matrix from the standard full format (TR) to the standard packed format (T...