LAPACK 3.3.0

derrpox.f

Go to the documentation of this file.
00001       SUBROUTINE DERRPO( PATH, NUNIT )
00002 *
00003 *  -- LAPACK test routine (version 3.2.1) --
00004 *     Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
00005 *     April 2009
00006 *
00007 *     .. Scalar Arguments ..
00008       CHARACTER*3        PATH
00009       INTEGER            NUNIT
00010 *     ..
00011 *
00012 *  Purpose
00013 *  =======
00014 *
00015 *  DERRPO tests the error exits for the DOUBLE PRECISION routines
00016 *  for symmetric positive definite matrices.
00017 *
00018 *  Note that this file is used only when the XBLAS are available,
00019 *  otherwise derrpo.f defines this subroutine.
00020 *
00021 *  Arguments
00022 *  =========
00023 *
00024 *  PATH    (input) CHARACTER*3
00025 *          The LAPACK path name for the routines to be tested.
00026 *
00027 *  NUNIT   (input) INTEGER
00028 *          The unit number for output.
00029 *
00030 *  =====================================================================
00031 *
00032 *     .. Parameters ..
00033       INTEGER            NMAX
00034       PARAMETER          ( NMAX = 4 )
00035 *     ..
00036 *     .. Local Scalars ..
00037       CHARACTER          EQ
00038       CHARACTER*2        C2
00039       INTEGER            I, INFO, J, N_ERR_BNDS, NPARAMS
00040       DOUBLE PRECISION   ANRM, RCOND, BERR
00041 *     ..
00042 *     .. Local Arrays ..
00043       INTEGER            IW( NMAX )
00044       DOUBLE PRECISION   A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
00045      $                   R1( NMAX ), R2( NMAX ), W( 3*NMAX ), X( NMAX ),
00046      $                   S( NMAX ), ERR_BNDS_N( NMAX, 3 ),
00047      $                   ERR_BNDS_C( NMAX, 3), PARAMS( 1 )
00048 *     ..
00049 *     .. External Functions ..
00050       LOGICAL            LSAMEN
00051       EXTERNAL           LSAMEN
00052 *     ..
00053 *     .. External Subroutines ..
00054       EXTERNAL           ALAESM, CHKXER, DPBCON, DPBEQU, DPBRFS, DPBTF2,
00055      $                   DPBTRF, DPBTRS, DPOCON, DPOEQU, DPORFS, DPOTF2,
00056      $                   DPOTRF, DPOTRI, DPOTRS, DPPCON, DPPEQU, DPPRFS,
00057      $                   DPPTRF, DPPTRI, DPPTRS, DPOEQUB, DPORFSX
00058 *     ..
00059 *     .. Scalars in Common ..
00060       LOGICAL            LERR, OK
00061       CHARACTER*32       SRNAMT
00062       INTEGER            INFOT, NOUT
00063 *     ..
00064 *     .. Common blocks ..
00065       COMMON             / INFOC / INFOT, NOUT, OK, LERR
00066       COMMON             / SRNAMC / SRNAMT
00067 *     ..
00068 *     .. Intrinsic Functions ..
00069       INTRINSIC          DBLE
00070 *     ..
00071 *     .. Executable Statements ..
00072 *
00073       NOUT = NUNIT
00074       WRITE( NOUT, FMT = * )
00075       C2 = PATH( 2: 3 )
00076 *
00077 *     Set the variables to innocuous values.
00078 *
00079       DO 20 J = 1, NMAX
00080          DO 10 I = 1, NMAX
00081             A( I, J ) = 1.D0 / DBLE( I+J )
00082             AF( I, J ) = 1.D0 / DBLE( I+J )
00083    10    CONTINUE
00084          B( J ) = 0.D0
00085          R1( J ) = 0.D0
00086          R2( J ) = 0.D0
00087          W( J ) = 0.D0
00088          X( J ) = 0.D0
00089          S( J ) = 0.D0
00090          IW( J ) = J
00091    20 CONTINUE
00092       OK = .TRUE.
00093 *
00094       IF( LSAMEN( 2, C2, 'PO' ) ) THEN
00095 *
00096 *        Test error exits of the routines that use the Cholesky
00097 *        decomposition of a symmetric positive definite matrix.
00098 *
00099 *        DPOTRF
00100 *
00101          SRNAMT = 'DPOTRF'
00102          INFOT = 1
00103          CALL DPOTRF( '/', 0, A, 1, INFO )
00104          CALL CHKXER( 'DPOTRF', INFOT, NOUT, LERR, OK )
00105          INFOT = 2
00106          CALL DPOTRF( 'U', -1, A, 1, INFO )
00107          CALL CHKXER( 'DPOTRF', INFOT, NOUT, LERR, OK )
00108          INFOT = 4
00109          CALL DPOTRF( 'U', 2, A, 1, INFO )
00110          CALL CHKXER( 'DPOTRF', INFOT, NOUT, LERR, OK )
00111 *
00112 *        DPOTF2
00113 *
00114          SRNAMT = 'DPOTF2'
00115          INFOT = 1
00116          CALL DPOTF2( '/', 0, A, 1, INFO )
00117          CALL CHKXER( 'DPOTF2', INFOT, NOUT, LERR, OK )
00118          INFOT = 2
00119          CALL DPOTF2( 'U', -1, A, 1, INFO )
00120          CALL CHKXER( 'DPOTF2', INFOT, NOUT, LERR, OK )
00121          INFOT = 4
00122          CALL DPOTF2( 'U', 2, A, 1, INFO )
00123          CALL CHKXER( 'DPOTF2', INFOT, NOUT, LERR, OK )
00124 *
00125 *        DPOTRI
00126 *
00127          SRNAMT = 'DPOTRI'
00128          INFOT = 1
00129          CALL DPOTRI( '/', 0, A, 1, INFO )
00130          CALL CHKXER( 'DPOTRI', INFOT, NOUT, LERR, OK )
00131          INFOT = 2
00132          CALL DPOTRI( 'U', -1, A, 1, INFO )
00133          CALL CHKXER( 'DPOTRI', INFOT, NOUT, LERR, OK )
00134          INFOT = 4
00135          CALL DPOTRI( 'U', 2, A, 1, INFO )
00136          CALL CHKXER( 'DPOTRI', INFOT, NOUT, LERR, OK )
00137 *
00138 *        DPOTRS
00139 *
00140          SRNAMT = 'DPOTRS'
00141          INFOT = 1
00142          CALL DPOTRS( '/', 0, 0, A, 1, B, 1, INFO )
00143          CALL CHKXER( 'DPOTRS', INFOT, NOUT, LERR, OK )
00144          INFOT = 2
00145          CALL DPOTRS( 'U', -1, 0, A, 1, B, 1, INFO )
00146          CALL CHKXER( 'DPOTRS', INFOT, NOUT, LERR, OK )
00147          INFOT = 3
00148          CALL DPOTRS( 'U', 0, -1, A, 1, B, 1, INFO )
00149          CALL CHKXER( 'DPOTRS', INFOT, NOUT, LERR, OK )
00150          INFOT = 5
00151          CALL DPOTRS( 'U', 2, 1, A, 1, B, 2, INFO )
00152          CALL CHKXER( 'DPOTRS', INFOT, NOUT, LERR, OK )
00153          INFOT = 7
00154          CALL DPOTRS( 'U', 2, 1, A, 2, B, 1, INFO )
00155          CALL CHKXER( 'DPOTRS', INFOT, NOUT, LERR, OK )
00156 *
00157 *        DPORFS
00158 *
00159          SRNAMT = 'DPORFS'
00160          INFOT = 1
00161          CALL DPORFS( '/', 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, IW,
00162      $                INFO )
00163          CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK )
00164          INFOT = 2
00165          CALL DPORFS( 'U', -1, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00166      $                IW, INFO )
00167          CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK )
00168          INFOT = 3
00169          CALL DPORFS( 'U', 0, -1, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00170      $                IW, INFO )
00171          CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK )
00172          INFOT = 5
00173          CALL DPORFS( 'U', 2, 1, A, 1, AF, 2, B, 2, X, 2, R1, R2, W, IW,
00174      $                INFO )
00175          CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK )
00176          INFOT = 7
00177          CALL DPORFS( 'U', 2, 1, A, 2, AF, 1, B, 2, X, 2, R1, R2, W, IW,
00178      $                INFO )
00179          CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK )
00180          INFOT = 9
00181          CALL DPORFS( 'U', 2, 1, A, 2, AF, 2, B, 1, X, 2, R1, R2, W, IW,
00182      $                INFO )
00183          CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK )
00184          INFOT = 11
00185          CALL DPORFS( 'U', 2, 1, A, 2, AF, 2, B, 2, X, 1, R1, R2, W, IW,
00186      $                INFO )
00187          CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK )
00188 *
00189 *        DPORFSX
00190 *
00191          N_ERR_BNDS = 3
00192          NPARAMS = 0
00193          SRNAMT = 'DPORFSX'
00194          INFOT = 1
00195          CALL DPORFSX( '/', EQ, 0, 0, A, 1, AF, 1, S, B, 1, X, 1,
00196      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00197      $        PARAMS, W, IW, INFO )
00198          CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK )
00199          INFOT = 2
00200          CALL DPORFSX( 'U', EQ, -1, 0, A, 1, AF, 1, S, B, 1, X, 1,
00201      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00202      $        PARAMS, W, IW, INFO )
00203          CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK )
00204          EQ = 'N'
00205          INFOT = 3
00206          CALL DPORFSX( 'U', EQ, -1, 0, A, 1, AF, 1, S, B, 1, X, 1,
00207      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00208      $        PARAMS, W, IW, INFO )
00209          CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK )
00210          INFOT = 4
00211          CALL DPORFSX( 'U', EQ, 0, -1, A, 1, AF, 1, S, B, 1, X, 1,
00212      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00213      $        PARAMS, W, IW, INFO )
00214          CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK )
00215          INFOT = 6
00216          CALL DPORFSX( 'U', EQ, 2, 1, A, 1, AF, 2, S, B, 2, X, 2,
00217      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00218      $        PARAMS, W, IW, INFO )
00219          CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK )
00220          INFOT = 8
00221          CALL DPORFSX( 'U', EQ, 2, 1, A, 2, AF, 1, S, B, 2, X, 2,
00222      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00223      $        PARAMS, W, IW, INFO )
00224          CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK )
00225          INFOT = 11
00226          CALL DPORFSX( 'U', EQ, 2, 1, A, 2, AF, 2, S, B, 1, X, 2,
00227      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00228      $        PARAMS, W, IW, INFO )
00229          CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK )
00230          INFOT = 13
00231          CALL DPORFSX( 'U', EQ, 2, 1, A, 2, AF, 2, S, B, 2, X, 1,
00232      $        RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS,
00233      $        PARAMS, W, IW, INFO )
00234          CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK )
00235 *
00236 *        DPOCON
00237 *
00238          SRNAMT = 'DPOCON'
00239          INFOT = 1
00240          CALL DPOCON( '/', 0, A, 1, ANRM, RCOND, W, IW, INFO )
00241          CALL CHKXER( 'DPOCON', INFOT, NOUT, LERR, OK )
00242          INFOT = 2
00243          CALL DPOCON( 'U', -1, A, 1, ANRM, RCOND, W, IW, INFO )
00244          CALL CHKXER( 'DPOCON', INFOT, NOUT, LERR, OK )
00245          INFOT = 4
00246          CALL DPOCON( 'U', 2, A, 1, ANRM, RCOND, W, IW, INFO )
00247          CALL CHKXER( 'DPOCON', INFOT, NOUT, LERR, OK )
00248 *
00249 *        DPOEQU
00250 *
00251          SRNAMT = 'DPOEQU'
00252          INFOT = 1
00253          CALL DPOEQU( -1, A, 1, R1, RCOND, ANRM, INFO )
00254          CALL CHKXER( 'DPOEQU', INFOT, NOUT, LERR, OK )
00255          INFOT = 3
00256          CALL DPOEQU( 2, A, 1, R1, RCOND, ANRM, INFO )
00257          CALL CHKXER( 'DPOEQU', INFOT, NOUT, LERR, OK )
00258 *
00259 *        DPOEQUB
00260 *
00261          SRNAMT = 'DPOEQUB'
00262          INFOT = 1
00263          CALL DPOEQUB( -1, A, 1, R1, RCOND, ANRM, INFO )
00264          CALL CHKXER( 'DPOEQUB', INFOT, NOUT, LERR, OK )
00265          INFOT = 3
00266          CALL DPOEQUB( 2, A, 1, R1, RCOND, ANRM, INFO )
00267          CALL CHKXER( 'DPOEQUB', INFOT, NOUT, LERR, OK )
00268 *
00269       ELSE IF( LSAMEN( 2, C2, 'PP' ) ) THEN
00270 *
00271 *        Test error exits of the routines that use the Cholesky
00272 *        decomposition of a symmetric positive definite packed matrix.
00273 *
00274 *        DPPTRF
00275 *
00276          SRNAMT = 'DPPTRF'
00277          INFOT = 1
00278          CALL DPPTRF( '/', 0, A, INFO )
00279          CALL CHKXER( 'DPPTRF', INFOT, NOUT, LERR, OK )
00280          INFOT = 2
00281          CALL DPPTRF( 'U', -1, A, INFO )
00282          CALL CHKXER( 'DPPTRF', INFOT, NOUT, LERR, OK )
00283 *
00284 *        DPPTRI
00285 *
00286          SRNAMT = 'DPPTRI'
00287          INFOT = 1
00288          CALL DPPTRI( '/', 0, A, INFO )
00289          CALL CHKXER( 'DPPTRI', INFOT, NOUT, LERR, OK )
00290          INFOT = 2
00291          CALL DPPTRI( 'U', -1, A, INFO )
00292          CALL CHKXER( 'DPPTRI', INFOT, NOUT, LERR, OK )
00293 *
00294 *        DPPTRS
00295 *
00296          SRNAMT = 'DPPTRS'
00297          INFOT = 1
00298          CALL DPPTRS( '/', 0, 0, A, B, 1, INFO )
00299          CALL CHKXER( 'DPPTRS', INFOT, NOUT, LERR, OK )
00300          INFOT = 2
00301          CALL DPPTRS( 'U', -1, 0, A, B, 1, INFO )
00302          CALL CHKXER( 'DPPTRS', INFOT, NOUT, LERR, OK )
00303          INFOT = 3
00304          CALL DPPTRS( 'U', 0, -1, A, B, 1, INFO )
00305          CALL CHKXER( 'DPPTRS', INFOT, NOUT, LERR, OK )
00306          INFOT = 6
00307          CALL DPPTRS( 'U', 2, 1, A, B, 1, INFO )
00308          CALL CHKXER( 'DPPTRS', INFOT, NOUT, LERR, OK )
00309 *
00310 *        DPPRFS
00311 *
00312          SRNAMT = 'DPPRFS'
00313          INFOT = 1
00314          CALL DPPRFS( '/', 0, 0, A, AF, B, 1, X, 1, R1, R2, W, IW,
00315      $                INFO )
00316          CALL CHKXER( 'DPPRFS', INFOT, NOUT, LERR, OK )
00317          INFOT = 2
00318          CALL DPPRFS( 'U', -1, 0, A, AF, B, 1, X, 1, R1, R2, W, IW,
00319      $                INFO )
00320          CALL CHKXER( 'DPPRFS', INFOT, NOUT, LERR, OK )
00321          INFOT = 3
00322          CALL DPPRFS( 'U', 0, -1, A, AF, B, 1, X, 1, R1, R2, W, IW,
00323      $                INFO )
00324          CALL CHKXER( 'DPPRFS', INFOT, NOUT, LERR, OK )
00325          INFOT = 7
00326          CALL DPPRFS( 'U', 2, 1, A, AF, B, 1, X, 2, R1, R2, W, IW,
00327      $                INFO )
00328          CALL CHKXER( 'DPPRFS', INFOT, NOUT, LERR, OK )
00329          INFOT = 9
00330          CALL DPPRFS( 'U', 2, 1, A, AF, B, 2, X, 1, R1, R2, W, IW,
00331      $                INFO )
00332          CALL CHKXER( 'DPPRFS', INFOT, NOUT, LERR, OK )
00333 *
00334 *        DPPCON
00335 *
00336          SRNAMT = 'DPPCON'
00337          INFOT = 1
00338          CALL DPPCON( '/', 0, A, ANRM, RCOND, W, IW, INFO )
00339          CALL CHKXER( 'DPPCON', INFOT, NOUT, LERR, OK )
00340          INFOT = 2
00341          CALL DPPCON( 'U', -1, A, ANRM, RCOND, W, IW, INFO )
00342          CALL CHKXER( 'DPPCON', INFOT, NOUT, LERR, OK )
00343 *
00344 *        DPPEQU
00345 *
00346          SRNAMT = 'DPPEQU'
00347          INFOT = 1
00348          CALL DPPEQU( '/', 0, A, R1, RCOND, ANRM, INFO )
00349          CALL CHKXER( 'DPPEQU', INFOT, NOUT, LERR, OK )
00350          INFOT = 2
00351          CALL DPPEQU( 'U', -1, A, R1, RCOND, ANRM, INFO )
00352          CALL CHKXER( 'DPPEQU', INFOT, NOUT, LERR, OK )
00353 *
00354       ELSE IF( LSAMEN( 2, C2, 'PB' ) ) THEN
00355 *
00356 *        Test error exits of the routines that use the Cholesky
00357 *        decomposition of a symmetric positive definite band matrix.
00358 *
00359 *        DPBTRF
00360 *
00361          SRNAMT = 'DPBTRF'
00362          INFOT = 1
00363          CALL DPBTRF( '/', 0, 0, A, 1, INFO )
00364          CALL CHKXER( 'DPBTRF', INFOT, NOUT, LERR, OK )
00365          INFOT = 2
00366          CALL DPBTRF( 'U', -1, 0, A, 1, INFO )
00367          CALL CHKXER( 'DPBTRF', INFOT, NOUT, LERR, OK )
00368          INFOT = 3
00369          CALL DPBTRF( 'U', 1, -1, A, 1, INFO )
00370          CALL CHKXER( 'DPBTRF', INFOT, NOUT, LERR, OK )
00371          INFOT = 5
00372          CALL DPBTRF( 'U', 2, 1, A, 1, INFO )
00373          CALL CHKXER( 'DPBTRF', INFOT, NOUT, LERR, OK )
00374 *
00375 *        DPBTF2
00376 *
00377          SRNAMT = 'DPBTF2'
00378          INFOT = 1
00379          CALL DPBTF2( '/', 0, 0, A, 1, INFO )
00380          CALL CHKXER( 'DPBTF2', INFOT, NOUT, LERR, OK )
00381          INFOT = 2
00382          CALL DPBTF2( 'U', -1, 0, A, 1, INFO )
00383          CALL CHKXER( 'DPBTF2', INFOT, NOUT, LERR, OK )
00384          INFOT = 3
00385          CALL DPBTF2( 'U', 1, -1, A, 1, INFO )
00386          CALL CHKXER( 'DPBTF2', INFOT, NOUT, LERR, OK )
00387          INFOT = 5
00388          CALL DPBTF2( 'U', 2, 1, A, 1, INFO )
00389          CALL CHKXER( 'DPBTF2', INFOT, NOUT, LERR, OK )
00390 *
00391 *        DPBTRS
00392 *
00393          SRNAMT = 'DPBTRS'
00394          INFOT = 1
00395          CALL DPBTRS( '/', 0, 0, 0, A, 1, B, 1, INFO )
00396          CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK )
00397          INFOT = 2
00398          CALL DPBTRS( 'U', -1, 0, 0, A, 1, B, 1, INFO )
00399          CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK )
00400          INFOT = 3
00401          CALL DPBTRS( 'U', 1, -1, 0, A, 1, B, 1, INFO )
00402          CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK )
00403          INFOT = 4
00404          CALL DPBTRS( 'U', 0, 0, -1, A, 1, B, 1, INFO )
00405          CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK )
00406          INFOT = 6
00407          CALL DPBTRS( 'U', 2, 1, 1, A, 1, B, 1, INFO )
00408          CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK )
00409          INFOT = 8
00410          CALL DPBTRS( 'U', 2, 0, 1, A, 1, B, 1, INFO )
00411          CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK )
00412 *
00413 *        DPBRFS
00414 *
00415          SRNAMT = 'DPBRFS'
00416          INFOT = 1
00417          CALL DPBRFS( '/', 0, 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00418      $                IW, INFO )
00419          CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK )
00420          INFOT = 2
00421          CALL DPBRFS( 'U', -1, 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00422      $                IW, INFO )
00423          CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK )
00424          INFOT = 3
00425          CALL DPBRFS( 'U', 1, -1, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00426      $                IW, INFO )
00427          CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK )
00428          INFOT = 4
00429          CALL DPBRFS( 'U', 0, 0, -1, A, 1, AF, 1, B, 1, X, 1, R1, R2, W,
00430      $                IW, INFO )
00431          CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK )
00432          INFOT = 6
00433          CALL DPBRFS( 'U', 2, 1, 1, A, 1, AF, 2, B, 2, X, 2, R1, R2, W,
00434      $                IW, INFO )
00435          CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK )
00436          INFOT = 8
00437          CALL DPBRFS( 'U', 2, 1, 1, A, 2, AF, 1, B, 2, X, 2, R1, R2, W,
00438      $                IW, INFO )
00439          CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK )
00440          INFOT = 10
00441          CALL DPBRFS( 'U', 2, 0, 1, A, 1, AF, 1, B, 1, X, 2, R1, R2, W,
00442      $                IW, INFO )
00443          CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK )
00444          INFOT = 12
00445          CALL DPBRFS( 'U', 2, 0, 1, A, 1, AF, 1, B, 2, X, 1, R1, R2, W,
00446      $                IW, INFO )
00447          CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK )
00448 *
00449 *        DPBCON
00450 *
00451          SRNAMT = 'DPBCON'
00452          INFOT = 1
00453          CALL DPBCON( '/', 0, 0, A, 1, ANRM, RCOND, W, IW, INFO )
00454          CALL CHKXER( 'DPBCON', INFOT, NOUT, LERR, OK )
00455          INFOT = 2
00456          CALL DPBCON( 'U', -1, 0, A, 1, ANRM, RCOND, W, IW, INFO )
00457          CALL CHKXER( 'DPBCON', INFOT, NOUT, LERR, OK )
00458          INFOT = 3
00459          CALL DPBCON( 'U', 1, -1, A, 1, ANRM, RCOND, W, IW, INFO )
00460          CALL CHKXER( 'DPBCON', INFOT, NOUT, LERR, OK )
00461          INFOT = 5
00462          CALL DPBCON( 'U', 2, 1, A, 1, ANRM, RCOND, W, IW, INFO )
00463          CALL CHKXER( 'DPBCON', INFOT, NOUT, LERR, OK )
00464 *
00465 *        DPBEQU
00466 *
00467          SRNAMT = 'DPBEQU'
00468          INFOT = 1
00469          CALL DPBEQU( '/', 0, 0, A, 1, R1, RCOND, ANRM, INFO )
00470          CALL CHKXER( 'DPBEQU', INFOT, NOUT, LERR, OK )
00471          INFOT = 2
00472          CALL DPBEQU( 'U', -1, 0, A, 1, R1, RCOND, ANRM, INFO )
00473          CALL CHKXER( 'DPBEQU', INFOT, NOUT, LERR, OK )
00474          INFOT = 3
00475          CALL DPBEQU( 'U', 1, -1, A, 1, R1, RCOND, ANRM, INFO )
00476          CALL CHKXER( 'DPBEQU', INFOT, NOUT, LERR, OK )
00477          INFOT = 5
00478          CALL DPBEQU( 'U', 2, 1, A, 1, R1, RCOND, ANRM, INFO )
00479          CALL CHKXER( 'DPBEQU', INFOT, NOUT, LERR, OK )
00480       END IF
00481 *
00482 *     Print a summary line.
00483 *
00484       CALL ALAESM( PATH, OK, NOUT )
00485 *
00486       RETURN
00487 *
00488 *     End of DERRPO
00489 *
00490       END
 All Files Functions