1*> \brief \b DERRPOX 2* 3* =========== DOCUMENTATION =========== 4* 5* Online html documentation available at 6* http://www.netlib.org/lapack/explore-html/ 7* 8* Definition: 9* =========== 10* 11* SUBROUTINE DERRPO( PATH, NUNIT ) 12* 13* .. Scalar Arguments .. 14* CHARACTER*3 PATH 15* INTEGER NUNIT 16* .. 17* 18* 19*> \par Purpose: 20* ============= 21*> 22*> \verbatim 23*> 24*> DERRPO tests the error exits for the DOUBLE PRECISION routines 25*> for symmetric positive definite matrices. 26*> 27*> Note that this file is used only when the XBLAS are available, 28*> otherwise derrpo.f defines this subroutine. 29*> \endverbatim 30* 31* Arguments: 32* ========== 33* 34*> \param[in] PATH 35*> \verbatim 36*> PATH is CHARACTER*3 37*> The LAPACK path name for the routines to be tested. 38*> \endverbatim 39*> 40*> \param[in] NUNIT 41*> \verbatim 42*> NUNIT is INTEGER 43*> The unit number for output. 44*> \endverbatim 45* 46* Authors: 47* ======== 48* 49*> \author Univ. of Tennessee 50*> \author Univ. of California Berkeley 51*> \author Univ. of Colorado Denver 52*> \author NAG Ltd. 53* 54*> \ingroup double_lin 55* 56* ===================================================================== 57 SUBROUTINE DERRPO( PATH, NUNIT ) 58* 59* -- LAPACK test routine -- 60* -- LAPACK is a software package provided by Univ. of Tennessee, -- 61* -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- 62* 63* .. Scalar Arguments .. 64 CHARACTER*3 PATH 65 INTEGER NUNIT 66* .. 67* 68* ===================================================================== 69* 70* .. Parameters .. 71 INTEGER NMAX 72 PARAMETER ( NMAX = 4 ) 73* .. 74* .. Local Scalars .. 75 CHARACTER EQ 76 CHARACTER*2 C2 77 INTEGER I, INFO, J, N_ERR_BNDS, NPARAMS 78 DOUBLE PRECISION ANRM, RCOND, BERR 79* .. 80* .. Local Arrays .. 81 INTEGER IW( NMAX ) 82 DOUBLE PRECISION A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ), 83 $ R1( NMAX ), R2( NMAX ), W( 3*NMAX ), X( NMAX ), 84 $ S( NMAX ), ERR_BNDS_N( NMAX, 3 ), 85 $ ERR_BNDS_C( NMAX, 3), PARAMS( 1 ) 86* .. 87* .. External Functions .. 88 LOGICAL LSAMEN 89 EXTERNAL LSAMEN 90* .. 91* .. External Subroutines .. 92 EXTERNAL ALAESM, CHKXER, DPBCON, DPBEQU, DPBRFS, DPBTF2, 93 $ DPBTRF, DPBTRS, DPOCON, DPOEQU, DPORFS, DPOTF2, 94 $ DPOTRF, DPOTRI, DPOTRS, DPPCON, DPPEQU, DPPRFS, 95 $ DPPTRF, DPPTRI, DPPTRS, DPOEQUB, DPORFSX 96* .. 97* .. Scalars in Common .. 98 LOGICAL LERR, OK 99 CHARACTER*32 SRNAMT 100 INTEGER INFOT, NOUT 101* .. 102* .. Common blocks .. 103 COMMON / INFOC / INFOT, NOUT, OK, LERR 104 COMMON / SRNAMC / SRNAMT 105* .. 106* .. Intrinsic Functions .. 107 INTRINSIC DBLE 108* .. 109* .. Executable Statements .. 110* 111 NOUT = NUNIT 112 WRITE( NOUT, FMT = * ) 113 C2 = PATH( 2: 3 ) 114* 115* Set the variables to innocuous values. 116* 117 DO 20 J = 1, NMAX 118 DO 10 I = 1, NMAX 119 A( I, J ) = 1.D0 / DBLE( I+J ) 120 AF( I, J ) = 1.D0 / DBLE( I+J ) 121 10 CONTINUE 122 B( J ) = 0.D0 123 R1( J ) = 0.D0 124 R2( J ) = 0.D0 125 W( J ) = 0.D0 126 X( J ) = 0.D0 127 S( J ) = 0.D0 128 IW( J ) = J 129 20 CONTINUE 130 OK = .TRUE. 131* 132 IF( LSAMEN( 2, C2, 'PO' ) ) THEN 133* 134* Test error exits of the routines that use the Cholesky 135* decomposition of a symmetric positive definite matrix. 136* 137* DPOTRF 138* 139 SRNAMT = 'DPOTRF' 140 INFOT = 1 141 CALL DPOTRF( '/', 0, A, 1, INFO ) 142 CALL CHKXER( 'DPOTRF', INFOT, NOUT, LERR, OK ) 143 INFOT = 2 144 CALL DPOTRF( 'U', -1, A, 1, INFO ) 145 CALL CHKXER( 'DPOTRF', INFOT, NOUT, LERR, OK ) 146 INFOT = 4 147 CALL DPOTRF( 'U', 2, A, 1, INFO ) 148 CALL CHKXER( 'DPOTRF', INFOT, NOUT, LERR, OK ) 149* 150* DPOTF2 151* 152 SRNAMT = 'DPOTF2' 153 INFOT = 1 154 CALL DPOTF2( '/', 0, A, 1, INFO ) 155 CALL CHKXER( 'DPOTF2', INFOT, NOUT, LERR, OK ) 156 INFOT = 2 157 CALL DPOTF2( 'U', -1, A, 1, INFO ) 158 CALL CHKXER( 'DPOTF2', INFOT, NOUT, LERR, OK ) 159 INFOT = 4 160 CALL DPOTF2( 'U', 2, A, 1, INFO ) 161 CALL CHKXER( 'DPOTF2', INFOT, NOUT, LERR, OK ) 162* 163* DPOTRI 164* 165 SRNAMT = 'DPOTRI' 166 INFOT = 1 167 CALL DPOTRI( '/', 0, A, 1, INFO ) 168 CALL CHKXER( 'DPOTRI', INFOT, NOUT, LERR, OK ) 169 INFOT = 2 170 CALL DPOTRI( 'U', -1, A, 1, INFO ) 171 CALL CHKXER( 'DPOTRI', INFOT, NOUT, LERR, OK ) 172 INFOT = 4 173 CALL DPOTRI( 'U', 2, A, 1, INFO ) 174 CALL CHKXER( 'DPOTRI', INFOT, NOUT, LERR, OK ) 175* 176* DPOTRS 177* 178 SRNAMT = 'DPOTRS' 179 INFOT = 1 180 CALL DPOTRS( '/', 0, 0, A, 1, B, 1, INFO ) 181 CALL CHKXER( 'DPOTRS', INFOT, NOUT, LERR, OK ) 182 INFOT = 2 183 CALL DPOTRS( 'U', -1, 0, A, 1, B, 1, INFO ) 184 CALL CHKXER( 'DPOTRS', INFOT, NOUT, LERR, OK ) 185 INFOT = 3 186 CALL DPOTRS( 'U', 0, -1, A, 1, B, 1, INFO ) 187 CALL CHKXER( 'DPOTRS', INFOT, NOUT, LERR, OK ) 188 INFOT = 5 189 CALL DPOTRS( 'U', 2, 1, A, 1, B, 2, INFO ) 190 CALL CHKXER( 'DPOTRS', INFOT, NOUT, LERR, OK ) 191 INFOT = 7 192 CALL DPOTRS( 'U', 2, 1, A, 2, B, 1, INFO ) 193 CALL CHKXER( 'DPOTRS', INFOT, NOUT, LERR, OK ) 194* 195* DPORFS 196* 197 SRNAMT = 'DPORFS' 198 INFOT = 1 199 CALL DPORFS( '/', 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, IW, 200 $ INFO ) 201 CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK ) 202 INFOT = 2 203 CALL DPORFS( 'U', -1, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, 204 $ IW, INFO ) 205 CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK ) 206 INFOT = 3 207 CALL DPORFS( 'U', 0, -1, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, 208 $ IW, INFO ) 209 CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK ) 210 INFOT = 5 211 CALL DPORFS( 'U', 2, 1, A, 1, AF, 2, B, 2, X, 2, R1, R2, W, IW, 212 $ INFO ) 213 CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK ) 214 INFOT = 7 215 CALL DPORFS( 'U', 2, 1, A, 2, AF, 1, B, 2, X, 2, R1, R2, W, IW, 216 $ INFO ) 217 CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK ) 218 INFOT = 9 219 CALL DPORFS( 'U', 2, 1, A, 2, AF, 2, B, 1, X, 2, R1, R2, W, IW, 220 $ INFO ) 221 CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK ) 222 INFOT = 11 223 CALL DPORFS( 'U', 2, 1, A, 2, AF, 2, B, 2, X, 1, R1, R2, W, IW, 224 $ INFO ) 225 CALL CHKXER( 'DPORFS', INFOT, NOUT, LERR, OK ) 226* 227* DPORFSX 228* 229 N_ERR_BNDS = 3 230 NPARAMS = 0 231 SRNAMT = 'DPORFSX' 232 INFOT = 1 233 CALL DPORFSX( '/', EQ, 0, 0, A, 1, AF, 1, S, B, 1, X, 1, 234 $ RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS, 235 $ PARAMS, W, IW, INFO ) 236 CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK ) 237 INFOT = 2 238 CALL DPORFSX( 'U', "/", -1, 0, A, 1, AF, 1, S, B, 1, X, 1, 239 $ RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS, 240 $ PARAMS, W, IW, INFO ) 241 CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK ) 242 EQ = 'N' 243 INFOT = 3 244 CALL DPORFSX( 'U', EQ, -1, 0, A, 1, AF, 1, S, B, 1, X, 1, 245 $ RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS, 246 $ PARAMS, W, IW, INFO ) 247 CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK ) 248 INFOT = 4 249 CALL DPORFSX( 'U', EQ, 0, -1, A, 1, AF, 1, S, B, 1, X, 1, 250 $ RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS, 251 $ PARAMS, W, IW, INFO ) 252 CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK ) 253 INFOT = 6 254 CALL DPORFSX( 'U', EQ, 2, 1, A, 1, AF, 2, S, B, 2, X, 2, 255 $ RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS, 256 $ PARAMS, W, IW, INFO ) 257 CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK ) 258 INFOT = 8 259 CALL DPORFSX( 'U', EQ, 2, 1, A, 2, AF, 1, S, B, 2, X, 2, 260 $ RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS, 261 $ PARAMS, W, IW, INFO ) 262 CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK ) 263 INFOT = 11 264 CALL DPORFSX( 'U', EQ, 2, 1, A, 2, AF, 2, S, B, 1, X, 2, 265 $ RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS, 266 $ PARAMS, W, IW, INFO ) 267 CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK ) 268 INFOT = 13 269 CALL DPORFSX( 'U', EQ, 2, 1, A, 2, AF, 2, S, B, 2, X, 1, 270 $ RCOND, BERR, N_ERR_BNDS, ERR_BNDS_N, ERR_BNDS_C, NPARAMS, 271 $ PARAMS, W, IW, INFO ) 272 CALL CHKXER( 'DPORFSX', INFOT, NOUT, LERR, OK ) 273* 274* DPOCON 275* 276 SRNAMT = 'DPOCON' 277 INFOT = 1 278 CALL DPOCON( '/', 0, A, 1, ANRM, RCOND, W, IW, INFO ) 279 CALL CHKXER( 'DPOCON', INFOT, NOUT, LERR, OK ) 280 INFOT = 2 281 CALL DPOCON( 'U', -1, A, 1, ANRM, RCOND, W, IW, INFO ) 282 CALL CHKXER( 'DPOCON', INFOT, NOUT, LERR, OK ) 283 INFOT = 4 284 CALL DPOCON( 'U', 2, A, 1, ANRM, RCOND, W, IW, INFO ) 285 CALL CHKXER( 'DPOCON', INFOT, NOUT, LERR, OK ) 286* 287* DPOEQU 288* 289 SRNAMT = 'DPOEQU' 290 INFOT = 1 291 CALL DPOEQU( -1, A, 1, R1, RCOND, ANRM, INFO ) 292 CALL CHKXER( 'DPOEQU', INFOT, NOUT, LERR, OK ) 293 INFOT = 3 294 CALL DPOEQU( 2, A, 1, R1, RCOND, ANRM, INFO ) 295 CALL CHKXER( 'DPOEQU', INFOT, NOUT, LERR, OK ) 296* 297* DPOEQUB 298* 299 SRNAMT = 'DPOEQUB' 300 INFOT = 1 301 CALL DPOEQUB( -1, A, 1, R1, RCOND, ANRM, INFO ) 302 CALL CHKXER( 'DPOEQUB', INFOT, NOUT, LERR, OK ) 303 INFOT = 3 304 CALL DPOEQUB( 2, A, 1, R1, RCOND, ANRM, INFO ) 305 CALL CHKXER( 'DPOEQUB', INFOT, NOUT, LERR, OK ) 306* 307 ELSE IF( LSAMEN( 2, C2, 'PP' ) ) THEN 308* 309* Test error exits of the routines that use the Cholesky 310* decomposition of a symmetric positive definite packed matrix. 311* 312* DPPTRF 313* 314 SRNAMT = 'DPPTRF' 315 INFOT = 1 316 CALL DPPTRF( '/', 0, A, INFO ) 317 CALL CHKXER( 'DPPTRF', INFOT, NOUT, LERR, OK ) 318 INFOT = 2 319 CALL DPPTRF( 'U', -1, A, INFO ) 320 CALL CHKXER( 'DPPTRF', INFOT, NOUT, LERR, OK ) 321* 322* DPPTRI 323* 324 SRNAMT = 'DPPTRI' 325 INFOT = 1 326 CALL DPPTRI( '/', 0, A, INFO ) 327 CALL CHKXER( 'DPPTRI', INFOT, NOUT, LERR, OK ) 328 INFOT = 2 329 CALL DPPTRI( 'U', -1, A, INFO ) 330 CALL CHKXER( 'DPPTRI', INFOT, NOUT, LERR, OK ) 331* 332* DPPTRS 333* 334 SRNAMT = 'DPPTRS' 335 INFOT = 1 336 CALL DPPTRS( '/', 0, 0, A, B, 1, INFO ) 337 CALL CHKXER( 'DPPTRS', INFOT, NOUT, LERR, OK ) 338 INFOT = 2 339 CALL DPPTRS( 'U', -1, 0, A, B, 1, INFO ) 340 CALL CHKXER( 'DPPTRS', INFOT, NOUT, LERR, OK ) 341 INFOT = 3 342 CALL DPPTRS( 'U', 0, -1, A, B, 1, INFO ) 343 CALL CHKXER( 'DPPTRS', INFOT, NOUT, LERR, OK ) 344 INFOT = 6 345 CALL DPPTRS( 'U', 2, 1, A, B, 1, INFO ) 346 CALL CHKXER( 'DPPTRS', INFOT, NOUT, LERR, OK ) 347* 348* DPPRFS 349* 350 SRNAMT = 'DPPRFS' 351 INFOT = 1 352 CALL DPPRFS( '/', 0, 0, A, AF, B, 1, X, 1, R1, R2, W, IW, 353 $ INFO ) 354 CALL CHKXER( 'DPPRFS', INFOT, NOUT, LERR, OK ) 355 INFOT = 2 356 CALL DPPRFS( 'U', -1, 0, A, AF, B, 1, X, 1, R1, R2, W, IW, 357 $ INFO ) 358 CALL CHKXER( 'DPPRFS', INFOT, NOUT, LERR, OK ) 359 INFOT = 3 360 CALL DPPRFS( 'U', 0, -1, A, AF, B, 1, X, 1, R1, R2, W, IW, 361 $ INFO ) 362 CALL CHKXER( 'DPPRFS', INFOT, NOUT, LERR, OK ) 363 INFOT = 7 364 CALL DPPRFS( 'U', 2, 1, A, AF, B, 1, X, 2, R1, R2, W, IW, 365 $ INFO ) 366 CALL CHKXER( 'DPPRFS', INFOT, NOUT, LERR, OK ) 367 INFOT = 9 368 CALL DPPRFS( 'U', 2, 1, A, AF, B, 2, X, 1, R1, R2, W, IW, 369 $ INFO ) 370 CALL CHKXER( 'DPPRFS', INFOT, NOUT, LERR, OK ) 371* 372* DPPCON 373* 374 SRNAMT = 'DPPCON' 375 INFOT = 1 376 CALL DPPCON( '/', 0, A, ANRM, RCOND, W, IW, INFO ) 377 CALL CHKXER( 'DPPCON', INFOT, NOUT, LERR, OK ) 378 INFOT = 2 379 CALL DPPCON( 'U', -1, A, ANRM, RCOND, W, IW, INFO ) 380 CALL CHKXER( 'DPPCON', INFOT, NOUT, LERR, OK ) 381* 382* DPPEQU 383* 384 SRNAMT = 'DPPEQU' 385 INFOT = 1 386 CALL DPPEQU( '/', 0, A, R1, RCOND, ANRM, INFO ) 387 CALL CHKXER( 'DPPEQU', INFOT, NOUT, LERR, OK ) 388 INFOT = 2 389 CALL DPPEQU( 'U', -1, A, R1, RCOND, ANRM, INFO ) 390 CALL CHKXER( 'DPPEQU', INFOT, NOUT, LERR, OK ) 391* 392 ELSE IF( LSAMEN( 2, C2, 'PB' ) ) THEN 393* 394* Test error exits of the routines that use the Cholesky 395* decomposition of a symmetric positive definite band matrix. 396* 397* DPBTRF 398* 399 SRNAMT = 'DPBTRF' 400 INFOT = 1 401 CALL DPBTRF( '/', 0, 0, A, 1, INFO ) 402 CALL CHKXER( 'DPBTRF', INFOT, NOUT, LERR, OK ) 403 INFOT = 2 404 CALL DPBTRF( 'U', -1, 0, A, 1, INFO ) 405 CALL CHKXER( 'DPBTRF', INFOT, NOUT, LERR, OK ) 406 INFOT = 3 407 CALL DPBTRF( 'U', 1, -1, A, 1, INFO ) 408 CALL CHKXER( 'DPBTRF', INFOT, NOUT, LERR, OK ) 409 INFOT = 5 410 CALL DPBTRF( 'U', 2, 1, A, 1, INFO ) 411 CALL CHKXER( 'DPBTRF', INFOT, NOUT, LERR, OK ) 412* 413* DPBTF2 414* 415 SRNAMT = 'DPBTF2' 416 INFOT = 1 417 CALL DPBTF2( '/', 0, 0, A, 1, INFO ) 418 CALL CHKXER( 'DPBTF2', INFOT, NOUT, LERR, OK ) 419 INFOT = 2 420 CALL DPBTF2( 'U', -1, 0, A, 1, INFO ) 421 CALL CHKXER( 'DPBTF2', INFOT, NOUT, LERR, OK ) 422 INFOT = 3 423 CALL DPBTF2( 'U', 1, -1, A, 1, INFO ) 424 CALL CHKXER( 'DPBTF2', INFOT, NOUT, LERR, OK ) 425 INFOT = 5 426 CALL DPBTF2( 'U', 2, 1, A, 1, INFO ) 427 CALL CHKXER( 'DPBTF2', INFOT, NOUT, LERR, OK ) 428* 429* DPBTRS 430* 431 SRNAMT = 'DPBTRS' 432 INFOT = 1 433 CALL DPBTRS( '/', 0, 0, 0, A, 1, B, 1, INFO ) 434 CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK ) 435 INFOT = 2 436 CALL DPBTRS( 'U', -1, 0, 0, A, 1, B, 1, INFO ) 437 CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK ) 438 INFOT = 3 439 CALL DPBTRS( 'U', 1, -1, 0, A, 1, B, 1, INFO ) 440 CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK ) 441 INFOT = 4 442 CALL DPBTRS( 'U', 0, 0, -1, A, 1, B, 1, INFO ) 443 CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK ) 444 INFOT = 6 445 CALL DPBTRS( 'U', 2, 1, 1, A, 1, B, 1, INFO ) 446 CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK ) 447 INFOT = 8 448 CALL DPBTRS( 'U', 2, 0, 1, A, 1, B, 1, INFO ) 449 CALL CHKXER( 'DPBTRS', INFOT, NOUT, LERR, OK ) 450* 451* DPBRFS 452* 453 SRNAMT = 'DPBRFS' 454 INFOT = 1 455 CALL DPBRFS( '/', 0, 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, 456 $ IW, INFO ) 457 CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK ) 458 INFOT = 2 459 CALL DPBRFS( 'U', -1, 0, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, 460 $ IW, INFO ) 461 CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK ) 462 INFOT = 3 463 CALL DPBRFS( 'U', 1, -1, 0, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, 464 $ IW, INFO ) 465 CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK ) 466 INFOT = 4 467 CALL DPBRFS( 'U', 0, 0, -1, A, 1, AF, 1, B, 1, X, 1, R1, R2, W, 468 $ IW, INFO ) 469 CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK ) 470 INFOT = 6 471 CALL DPBRFS( 'U', 2, 1, 1, A, 1, AF, 2, B, 2, X, 2, R1, R2, W, 472 $ IW, INFO ) 473 CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK ) 474 INFOT = 8 475 CALL DPBRFS( 'U', 2, 1, 1, A, 2, AF, 1, B, 2, X, 2, R1, R2, W, 476 $ IW, INFO ) 477 CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK ) 478 INFOT = 10 479 CALL DPBRFS( 'U', 2, 0, 1, A, 1, AF, 1, B, 1, X, 2, R1, R2, W, 480 $ IW, INFO ) 481 CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK ) 482 INFOT = 12 483 CALL DPBRFS( 'U', 2, 0, 1, A, 1, AF, 1, B, 2, X, 1, R1, R2, W, 484 $ IW, INFO ) 485 CALL CHKXER( 'DPBRFS', INFOT, NOUT, LERR, OK ) 486* 487* DPBCON 488* 489 SRNAMT = 'DPBCON' 490 INFOT = 1 491 CALL DPBCON( '/', 0, 0, A, 1, ANRM, RCOND, W, IW, INFO ) 492 CALL CHKXER( 'DPBCON', INFOT, NOUT, LERR, OK ) 493 INFOT = 2 494 CALL DPBCON( 'U', -1, 0, A, 1, ANRM, RCOND, W, IW, INFO ) 495 CALL CHKXER( 'DPBCON', INFOT, NOUT, LERR, OK ) 496 INFOT = 3 497 CALL DPBCON( 'U', 1, -1, A, 1, ANRM, RCOND, W, IW, INFO ) 498 CALL CHKXER( 'DPBCON', INFOT, NOUT, LERR, OK ) 499 INFOT = 5 500 CALL DPBCON( 'U', 2, 1, A, 1, ANRM, RCOND, W, IW, INFO ) 501 CALL CHKXER( 'DPBCON', INFOT, NOUT, LERR, OK ) 502* 503* DPBEQU 504* 505 SRNAMT = 'DPBEQU' 506 INFOT = 1 507 CALL DPBEQU( '/', 0, 0, A, 1, R1, RCOND, ANRM, INFO ) 508 CALL CHKXER( 'DPBEQU', INFOT, NOUT, LERR, OK ) 509 INFOT = 2 510 CALL DPBEQU( 'U', -1, 0, A, 1, R1, RCOND, ANRM, INFO ) 511 CALL CHKXER( 'DPBEQU', INFOT, NOUT, LERR, OK ) 512 INFOT = 3 513 CALL DPBEQU( 'U', 1, -1, A, 1, R1, RCOND, ANRM, INFO ) 514 CALL CHKXER( 'DPBEQU', INFOT, NOUT, LERR, OK ) 515 INFOT = 5 516 CALL DPBEQU( 'U', 2, 1, A, 1, R1, RCOND, ANRM, INFO ) 517 CALL CHKXER( 'DPBEQU', INFOT, NOUT, LERR, OK ) 518 END IF 519* 520* Print a summary line. 521* 522 CALL ALAESM( PATH, OK, NOUT ) 523* 524 RETURN 525* 526* End of DERRPOX 527* 528 END 529