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