00001 SUBROUTINE SERRVX( PATH, NUNIT )
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 CHARACTER*3 PATH
00012 INTEGER NUNIT
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 INTEGER NMAX
00034 PARAMETER ( NMAX = 4 )
00035
00036
00037 CHARACTER EQ
00038 CHARACTER*2 C2
00039 INTEGER I, INFO, J, N_ERR_BNDS, NPARAMS
00040 REAL RCOND, RPVGRW, BERR
00041
00042
00043 INTEGER IP( NMAX ), IW( NMAX )
00044 REAL A( NMAX, NMAX ), AF( NMAX, NMAX ), B( NMAX ),
00045 $ C( NMAX ), R( NMAX ), R1( NMAX ), R2( NMAX ),
00046 $ W( 2*NMAX ), X( NMAX ), ERR_BNDS_N( NMAX, 3 ),
00047 $ ERR_BNDS_C( NMAX, 3 ), PARAMS
00048
00049
00050 LOGICAL LSAMEN
00051 EXTERNAL LSAMEN
00052
00053
00054 EXTERNAL CHKXER, SGBSV, SGBSVX, SGESV, SGESVX, SGTSV,
00055 $ SGTSVX, SPBSV, SPBSVX, SPOSV, SPOSVX, SPPSV,
00056 $ SPPSVX, SPTSV, SPTSVX, SSPSV, SSPSVX, SSYSV,
00057 $ SSYSVX, SGESVXX, SSYSVXX, SPOSVXX, SGBSVXX
00058
00059
00060 LOGICAL LERR, OK
00061 CHARACTER*32 SRNAMT
00062 INTEGER INFOT, NOUT
00063
00064
00065 COMMON / INFOC / INFOT, NOUT, OK, LERR
00066 COMMON / SRNAMC / SRNAMT
00067
00068
00069 INTRINSIC REAL
00070
00071
00072
00073 NOUT = NUNIT
00074 WRITE( NOUT, FMT = * )
00075 C2 = PATH( 2: 3 )
00076
00077
00078
00079 DO 20 J = 1, NMAX
00080 DO 10 I = 1, NMAX
00081 A( I, J ) = 1. / REAL( I+J )
00082 AF( I, J ) = 1. / REAL( I+J )
00083 10 CONTINUE
00084 B( J ) = 0.
00085 R1( J ) = 0.
00086 R2( J ) = 0.
00087 W( J ) = 0.
00088 X( J ) = 0.
00089 C( J ) = 0.
00090 R( J ) = 0.
00091 IP( J ) = J
00092 20 CONTINUE
00093 EQ = ' '
00094 OK = .TRUE.
00095
00096 IF( LSAMEN( 2, C2, 'GE' ) ) THEN
00097
00098
00099
00100 SRNAMT = 'SGESV '
00101 INFOT = 1
00102 CALL SGESV( -1, 0, A, 1, IP, B, 1, INFO )
00103 CALL CHKXER( 'SGESV ', INFOT, NOUT, LERR, OK )
00104 INFOT = 2
00105 CALL SGESV( 0, -1, A, 1, IP, B, 1, INFO )
00106 CALL CHKXER( 'SGESV ', INFOT, NOUT, LERR, OK )
00107 INFOT = 4
00108 CALL SGESV( 2, 1, A, 1, IP, B, 2, INFO )
00109 CALL CHKXER( 'SGESV ', INFOT, NOUT, LERR, OK )
00110 INFOT = 7
00111 CALL SGESV( 2, 1, A, 2, IP, B, 1, INFO )
00112 CALL CHKXER( 'SGESV ', INFOT, NOUT, LERR, OK )
00113
00114
00115
00116 SRNAMT = 'SGESVX'
00117 INFOT = 1
00118 CALL SGESVX( '/', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00119 $ X, 1, RCOND, R1, R2, W, IW, INFO )
00120 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00121 INFOT = 2
00122 CALL SGESVX( 'N', '/', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00123 $ X, 1, RCOND, R1, R2, W, IW, INFO )
00124 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00125 INFOT = 3
00126 CALL SGESVX( 'N', 'N', -1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00127 $ X, 1, RCOND, R1, R2, W, IW, INFO )
00128 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00129 INFOT = 4
00130 CALL SGESVX( 'N', 'N', 0, -1, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00131 $ X, 1, RCOND, R1, R2, W, IW, INFO )
00132 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00133 INFOT = 6
00134 CALL SGESVX( 'N', 'N', 2, 1, A, 1, AF, 2, IP, EQ, R, C, B, 2,
00135 $ X, 2, RCOND, R1, R2, W, IW, INFO )
00136 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00137 INFOT = 8
00138 CALL SGESVX( 'N', 'N', 2, 1, A, 2, AF, 1, IP, EQ, R, C, B, 2,
00139 $ X, 2, RCOND, R1, R2, W, IW, INFO )
00140 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00141 INFOT = 10
00142 EQ = '/'
00143 CALL SGESVX( 'F', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00144 $ X, 1, RCOND, R1, R2, W, IW, INFO )
00145 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00146 INFOT = 11
00147 EQ = 'R'
00148 CALL SGESVX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00149 $ X, 1, RCOND, R1, R2, W, IW, INFO )
00150 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00151 INFOT = 12
00152 EQ = 'C'
00153 CALL SGESVX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00154 $ X, 1, RCOND, R1, R2, W, IW, INFO )
00155 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00156 INFOT = 14
00157 CALL SGESVX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B, 1,
00158 $ X, 2, RCOND, R1, R2, W, IW, INFO )
00159 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00160 INFOT = 16
00161 CALL SGESVX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B, 2,
00162 $ X, 1, RCOND, R1, R2, W, IW, INFO )
00163 CALL CHKXER( 'SGESVX', INFOT, NOUT, LERR, OK )
00164
00165
00166
00167 N_ERR_BNDS = 3
00168 NPARAMS = 0
00169 SRNAMT = 'SGESVXX'
00170 INFOT = 1
00171 CALL SGESVXX( '/', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00172 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00173 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00174 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00175 INFOT = 2
00176 CALL SGESVXX( 'N', '/', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00177 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00178 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00179 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00180 INFOT = 3
00181 CALL SGESVXX( 'N', 'N', -1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00182 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00183 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00184 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00185 INFOT = 4
00186 CALL SGESVXX( 'N', 'N', 0, -1, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00187 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00188 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00189 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00190 INFOT = 6
00191 CALL SGESVXX( 'N', 'N', 2, 1, A, 1, AF, 2, IP, EQ, R, C, B, 2,
00192 $ X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00193 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00194 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00195 INFOT = 8
00196 CALL SGESVXX( 'N', 'N', 2, 1, A, 2, AF, 1, IP, EQ, R, C, B, 2,
00197 $ X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00198 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00199 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00200 INFOT = 10
00201 EQ = '/'
00202 CALL SGESVXX( 'F', 'N', 0, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00203 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00204 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00205 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00206 INFOT = 11
00207 EQ = 'R'
00208 CALL SGESVXX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00209 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00210 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00211 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00212 INFOT = 12
00213 EQ = 'C'
00214 CALL SGESVXX( 'F', 'N', 1, 0, A, 1, AF, 1, IP, EQ, R, C, B, 1,
00215 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00216 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00217 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00218 INFOT = 14
00219 CALL SGESVXX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B, 1,
00220 $ X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00221 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00222 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00223 INFOT = 16
00224 CALL SGESVXX( 'N', 'N', 2, 1, A, 2, AF, 2, IP, EQ, R, C, B, 2,
00225 $ X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00226 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00227 CALL CHKXER( 'SGESVXX', INFOT, NOUT, LERR, OK )
00228
00229 ELSE IF( LSAMEN( 2, C2, 'GB' ) ) THEN
00230
00231
00232
00233 SRNAMT = 'SGBSV '
00234 INFOT = 1
00235 CALL SGBSV( -1, 0, 0, 0, A, 1, IP, B, 1, INFO )
00236 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK )
00237 INFOT = 2
00238 CALL SGBSV( 1, -1, 0, 0, A, 1, IP, B, 1, INFO )
00239 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK )
00240 INFOT = 3
00241 CALL SGBSV( 1, 0, -1, 0, A, 1, IP, B, 1, INFO )
00242 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK )
00243 INFOT = 4
00244 CALL SGBSV( 0, 0, 0, -1, A, 1, IP, B, 1, INFO )
00245 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK )
00246 INFOT = 6
00247 CALL SGBSV( 1, 1, 1, 0, A, 3, IP, B, 1, INFO )
00248 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK )
00249 INFOT = 9
00250 CALL SGBSV( 2, 0, 0, 0, A, 1, IP, B, 1, INFO )
00251 CALL CHKXER( 'SGBSV ', INFOT, NOUT, LERR, OK )
00252
00253
00254
00255 SRNAMT = 'SGBSVX'
00256 INFOT = 1
00257 CALL SGBSVX( '/', 'N', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00258 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00259 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00260 INFOT = 2
00261 CALL SGBSVX( 'N', '/', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00262 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00263 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00264 INFOT = 3
00265 CALL SGBSVX( 'N', 'N', -1, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00266 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00267 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00268 INFOT = 4
00269 CALL SGBSVX( 'N', 'N', 1, -1, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00270 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00271 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00272 INFOT = 5
00273 CALL SGBSVX( 'N', 'N', 1, 0, -1, 0, A, 1, AF, 1, IP, EQ, R, C,
00274 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00275 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00276 INFOT = 6
00277 CALL SGBSVX( 'N', 'N', 0, 0, 0, -1, A, 1, AF, 1, IP, EQ, R, C,
00278 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00279 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00280 INFOT = 8
00281 CALL SGBSVX( 'N', 'N', 1, 1, 1, 0, A, 2, AF, 4, IP, EQ, R, C,
00282 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00283 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00284 INFOT = 10
00285 CALL SGBSVX( 'N', 'N', 1, 1, 1, 0, A, 3, AF, 3, IP, EQ, R, C,
00286 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00287 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00288 INFOT = 12
00289 EQ = '/'
00290 CALL SGBSVX( 'F', 'N', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00291 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00292 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00293 INFOT = 13
00294 EQ = 'R'
00295 CALL SGBSVX( 'F', 'N', 1, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00296 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00297 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00298 INFOT = 14
00299 EQ = 'C'
00300 CALL SGBSVX( 'F', 'N', 1, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00301 $ B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00302 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00303 INFOT = 16
00304 CALL SGBSVX( 'N', 'N', 2, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00305 $ B, 1, X, 2, RCOND, R1, R2, W, IW, INFO )
00306 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00307 INFOT = 18
00308 CALL SGBSVX( 'N', 'N', 2, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00309 $ B, 2, X, 1, RCOND, R1, R2, W, IW, INFO )
00310 CALL CHKXER( 'SGBSVX', INFOT, NOUT, LERR, OK )
00311
00312
00313
00314 N_ERR_BNDS = 3
00315 NPARAMS = 0
00316 SRNAMT = 'SGBSVXX'
00317 INFOT = 1
00318 CALL SGBSVXX( '/', 'N', 0, 0, 0, 0, A, 1, AF, 1, IP, EQ, R, C,
00319 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00320 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00321 $ INFO )
00322 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00323 INFOT = 2
00324 CALL SGBSVXX( 'N', '/', 0, 1, 1, 0, A, 1, AF, 1, IP, EQ, R, C,
00325 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00326 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00327 $ INFO )
00328 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00329 INFOT = 3
00330 CALL SGBSVXX( 'N', 'N', -1, 1, 1, 0, A, 1, AF, 1, IP, EQ, R, C,
00331 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00332 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00333 $ INFO )
00334 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00335 INFOT = 4
00336 CALL SGBSVXX( 'N', 'N', 2, -1, 1, 0, A, 1, AF, 1, IP, EQ,
00337 $ R, C, B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00338 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00339 $ INFO )
00340 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00341 INFOT = 5
00342 CALL SGBSVXX( 'N', 'N', 2, 1, -1, 0, A, 1, AF, 1, IP, EQ,
00343 $ R, C, B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00344 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00345 $ INFO )
00346 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00347 INFOT = 6
00348 CALL SGBSVXX( 'N', 'N', 0, 1, 1, -1, A, 1, AF, 1, IP, EQ, R, C,
00349 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00350 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00351 $ INFO )
00352 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00353 INFOT = 8
00354 CALL SGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 2, AF, 2, IP, EQ, R, C,
00355 $ B, 2, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00356 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00357 $ INFO )
00358 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00359 INFOT = 10
00360 CALL SGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 3, AF, 3, IP, EQ, R, C,
00361 $ B, 2, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00362 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00363 $ INFO )
00364 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00365 INFOT = 12
00366 EQ = '/'
00367 CALL SGBSVXX( 'F', 'N', 0, 1, 1, 0, A, 3, AF, 4, IP, EQ, R, C,
00368 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00369 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00370 $ INFO )
00371 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00372 INFOT = 13
00373 EQ = 'R'
00374 CALL SGBSVXX( 'F', 'N', 1, 1, 1, 0, A, 3, AF, 4, IP, EQ, R, C,
00375 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00376 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00377 $ INFO )
00378 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00379 INFOT = 14
00380 EQ = 'C'
00381 CALL SGBSVXX( 'F', 'N', 1, 1, 1, 0, A, 3, AF, 4, IP, EQ, R, C,
00382 $ B, 1, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00383 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00384 $ INFO )
00385 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00386 INFOT = 15
00387 CALL SGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 3, AF, 4, IP, EQ, R, C,
00388 $ B, 1, X, 2, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00389 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00390 $ INFO )
00391 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00392 INFOT = 16
00393 CALL SGBSVXX( 'N', 'N', 2, 1, 1, 1, A, 3, AF, 4, IP, EQ, R, C,
00394 $ B, 2, X, 1, RCOND, RPVGRW, BERR, N_ERR_BNDS,
00395 $ ERR_BNDS_N, ERR_BNDS_C, NPARAMS, PARAMS, W, IW,
00396 $ INFO )
00397 CALL CHKXER( 'SGBSVXX', INFOT, NOUT, LERR, OK )
00398
00399 ELSE IF( LSAMEN( 2, C2, 'GT' ) ) THEN
00400
00401
00402
00403 SRNAMT = 'SGTSV '
00404 INFOT = 1
00405 CALL SGTSV( -1, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), B, 1,
00406 $ INFO )
00407 CALL CHKXER( 'SGTSV ', INFOT, NOUT, LERR, OK )
00408 INFOT = 2
00409 CALL SGTSV( 0, -1, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), B, 1,
00410 $ INFO )
00411 CALL CHKXER( 'SGTSV ', INFOT, NOUT, LERR, OK )
00412 INFOT = 7
00413 CALL SGTSV( 2, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ), B, 1, INFO )
00414 CALL CHKXER( 'SGTSV ', INFOT, NOUT, LERR, OK )
00415
00416
00417
00418 SRNAMT = 'SGTSVX'
00419 INFOT = 1
00420 CALL SGTSVX( '/', 'N', 0, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00421 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00422 $ IP, B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00423 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK )
00424 INFOT = 2
00425 CALL SGTSVX( 'N', '/', 0, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00426 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00427 $ IP, B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00428 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK )
00429 INFOT = 3
00430 CALL SGTSVX( 'N', 'N', -1, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00431 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00432 $ IP, B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00433 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK )
00434 INFOT = 4
00435 CALL SGTSVX( 'N', 'N', 0, -1, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00436 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00437 $ IP, B, 1, X, 1, RCOND, R1, R2, W, IW, INFO )
00438 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK )
00439 INFOT = 14
00440 CALL SGTSVX( 'N', 'N', 2, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00441 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00442 $ IP, B, 1, X, 2, RCOND, R1, R2, W, IW, INFO )
00443 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK )
00444 INFOT = 16
00445 CALL SGTSVX( 'N', 'N', 2, 0, A( 1, 1 ), A( 1, 2 ), A( 1, 3 ),
00446 $ AF( 1, 1 ), AF( 1, 2 ), AF( 1, 3 ), AF( 1, 4 ),
00447 $ IP, B, 2, X, 1, RCOND, R1, R2, W, IW, INFO )
00448 CALL CHKXER( 'SGTSVX', INFOT, NOUT, LERR, OK )
00449
00450 ELSE IF( LSAMEN( 2, C2, 'PO' ) ) THEN
00451
00452
00453
00454 SRNAMT = 'SPOSV '
00455 INFOT = 1
00456 CALL SPOSV( '/', 0, 0, A, 1, B, 1, INFO )
00457 CALL CHKXER( 'SPOSV ', INFOT, NOUT, LERR, OK )
00458 INFOT = 2
00459 CALL SPOSV( 'U', -1, 0, A, 1, B, 1, INFO )
00460 CALL CHKXER( 'SPOSV ', INFOT, NOUT, LERR, OK )
00461 INFOT = 3
00462 CALL SPOSV( 'U', 0, -1, A, 1, B, 1, INFO )
00463 CALL CHKXER( 'SPOSV ', INFOT, NOUT, LERR, OK )
00464 INFOT = 5
00465 CALL SPOSV( 'U', 2, 0, A, 1, B, 2, INFO )
00466 CALL CHKXER( 'SPOSV ', INFOT, NOUT, LERR, OK )
00467 INFOT = 7
00468 CALL SPOSV( 'U', 2, 0, A, 2, B, 1, INFO )
00469 CALL CHKXER( 'SPOSV ', INFOT, NOUT, LERR, OK )
00470
00471
00472
00473 SRNAMT = 'SPOSVX'
00474 INFOT = 1
00475 CALL SPOSVX( '/', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00476 $ RCOND, R1, R2, W, IW, INFO )
00477 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK )
00478 INFOT = 2
00479 CALL SPOSVX( 'N', '/', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00480 $ RCOND, R1, R2, W, IW, INFO )
00481 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK )
00482 INFOT = 3
00483 CALL SPOSVX( 'N', 'U', -1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00484 $ RCOND, R1, R2, W, IW, INFO )
00485 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK )
00486 INFOT = 4
00487 CALL SPOSVX( 'N', 'U', 0, -1, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00488 $ RCOND, R1, R2, W, IW, INFO )
00489 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK )
00490 INFOT = 6
00491 CALL SPOSVX( 'N', 'U', 2, 0, A, 1, AF, 2, EQ, C, B, 2, X, 2,
00492 $ RCOND, R1, R2, W, IW, INFO )
00493 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK )
00494 INFOT = 8
00495 CALL SPOSVX( 'N', 'U', 2, 0, A, 2, AF, 1, EQ, C, B, 2, X, 2,
00496 $ RCOND, R1, R2, W, IW, INFO )
00497 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK )
00498 INFOT = 9
00499 EQ = '/'
00500 CALL SPOSVX( 'F', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00501 $ RCOND, R1, R2, W, IW, INFO )
00502 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK )
00503 INFOT = 10
00504 EQ = 'Y'
00505 CALL SPOSVX( 'F', 'U', 1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00506 $ RCOND, R1, R2, W, IW, INFO )
00507 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK )
00508 INFOT = 12
00509 CALL SPOSVX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 1, X, 2,
00510 $ RCOND, R1, R2, W, IW, INFO )
00511 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK )
00512 INFOT = 14
00513 CALL SPOSVX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 2, X, 1,
00514 $ RCOND, R1, R2, W, IW, INFO )
00515 CALL CHKXER( 'SPOSVX', INFOT, NOUT, LERR, OK )
00516
00517
00518
00519 N_ERR_BNDS = 3
00520 NPARAMS = 0
00521 SRNAMT = 'SPOSVXX'
00522 INFOT = 1
00523 CALL SPOSVXX( '/', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00524 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00525 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00526 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK )
00527 INFOT = 2
00528 CALL SPOSVXX( 'N', '/', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00529 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00530 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00531 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK )
00532 INFOT = 3
00533 CALL SPOSVXX( 'N', 'U', -1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00534 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00535 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00536 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK )
00537 INFOT = 4
00538 CALL SPOSVXX( 'N', 'U', 0, -1, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00539 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00540 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00541 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK )
00542 INFOT = 6
00543 CALL SPOSVXX( 'N', 'U', 2, 0, A, 1, AF, 2, EQ, C, B, 2, X, 2,
00544 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00545 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00546 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK )
00547 INFOT = 8
00548 CALL SPOSVXX( 'N', 'U', 2, 0, A, 2, AF, 1, EQ, C, B, 2, X, 2,
00549 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00550 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00551 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK )
00552 INFOT = 9
00553 EQ = '/'
00554 CALL SPOSVXX( 'F', 'U', 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00555 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00556 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00557 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK )
00558 INFOT = 10
00559 EQ = 'Y'
00560 CALL SPOSVXX( 'F', 'U', 1, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00561 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00562 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00563 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK )
00564 INFOT = 12
00565 CALL SPOSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 1, X, 2,
00566 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00567 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00568 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK )
00569 INFOT = 14
00570 CALL SPOSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, EQ, C, B, 2, X, 1,
00571 $ RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00572 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00573 CALL CHKXER( 'SPOSVXX', INFOT, NOUT, LERR, OK )
00574
00575 ELSE IF( LSAMEN( 2, C2, 'PP' ) ) THEN
00576
00577
00578
00579 SRNAMT = 'SPPSV '
00580 INFOT = 1
00581 CALL SPPSV( '/', 0, 0, A, B, 1, INFO )
00582 CALL CHKXER( 'SPPSV ', INFOT, NOUT, LERR, OK )
00583 INFOT = 2
00584 CALL SPPSV( 'U', -1, 0, A, B, 1, INFO )
00585 CALL CHKXER( 'SPPSV ', INFOT, NOUT, LERR, OK )
00586 INFOT = 3
00587 CALL SPPSV( 'U', 0, -1, A, B, 1, INFO )
00588 CALL CHKXER( 'SPPSV ', INFOT, NOUT, LERR, OK )
00589 INFOT = 6
00590 CALL SPPSV( 'U', 2, 0, A, B, 1, INFO )
00591 CALL CHKXER( 'SPPSV ', INFOT, NOUT, LERR, OK )
00592
00593
00594
00595 SRNAMT = 'SPPSVX'
00596 INFOT = 1
00597 CALL SPPSVX( '/', 'U', 0, 0, A, AF, EQ, C, B, 1, X, 1, RCOND,
00598 $ R1, R2, W, IW, INFO )
00599 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK )
00600 INFOT = 2
00601 CALL SPPSVX( 'N', '/', 0, 0, A, AF, EQ, C, B, 1, X, 1, RCOND,
00602 $ R1, R2, W, IW, INFO )
00603 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK )
00604 INFOT = 3
00605 CALL SPPSVX( 'N', 'U', -1, 0, A, AF, EQ, C, B, 1, X, 1, RCOND,
00606 $ R1, R2, W, IW, INFO )
00607 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK )
00608 INFOT = 4
00609 CALL SPPSVX( 'N', 'U', 0, -1, A, AF, EQ, C, B, 1, X, 1, RCOND,
00610 $ R1, R2, W, IW, INFO )
00611 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK )
00612 INFOT = 7
00613 EQ = '/'
00614 CALL SPPSVX( 'F', 'U', 0, 0, A, AF, EQ, C, B, 1, X, 1, RCOND,
00615 $ R1, R2, W, IW, INFO )
00616 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK )
00617 INFOT = 8
00618 EQ = 'Y'
00619 CALL SPPSVX( 'F', 'U', 1, 0, A, AF, EQ, C, B, 1, X, 1, RCOND,
00620 $ R1, R2, W, IW, INFO )
00621 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK )
00622 INFOT = 10
00623 CALL SPPSVX( 'N', 'U', 2, 0, A, AF, EQ, C, B, 1, X, 2, RCOND,
00624 $ R1, R2, W, IW, INFO )
00625 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK )
00626 INFOT = 12
00627 CALL SPPSVX( 'N', 'U', 2, 0, A, AF, EQ, C, B, 2, X, 1, RCOND,
00628 $ R1, R2, W, IW, INFO )
00629 CALL CHKXER( 'SPPSVX', INFOT, NOUT, LERR, OK )
00630
00631 ELSE IF( LSAMEN( 2, C2, 'PB' ) ) THEN
00632
00633
00634
00635 SRNAMT = 'SPBSV '
00636 INFOT = 1
00637 CALL SPBSV( '/', 0, 0, 0, A, 1, B, 1, INFO )
00638 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK )
00639 INFOT = 2
00640 CALL SPBSV( 'U', -1, 0, 0, A, 1, B, 1, INFO )
00641 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK )
00642 INFOT = 3
00643 CALL SPBSV( 'U', 1, -1, 0, A, 1, B, 1, INFO )
00644 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK )
00645 INFOT = 4
00646 CALL SPBSV( 'U', 0, 0, -1, A, 1, B, 1, INFO )
00647 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK )
00648 INFOT = 6
00649 CALL SPBSV( 'U', 1, 1, 0, A, 1, B, 2, INFO )
00650 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK )
00651 INFOT = 8
00652 CALL SPBSV( 'U', 2, 0, 0, A, 1, B, 1, INFO )
00653 CALL CHKXER( 'SPBSV ', INFOT, NOUT, LERR, OK )
00654
00655
00656
00657 SRNAMT = 'SPBSVX'
00658 INFOT = 1
00659 CALL SPBSVX( '/', 'U', 0, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00660 $ RCOND, R1, R2, W, IW, INFO )
00661 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00662 INFOT = 2
00663 CALL SPBSVX( 'N', '/', 0, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00664 $ RCOND, R1, R2, W, IW, INFO )
00665 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00666 INFOT = 3
00667 CALL SPBSVX( 'N', 'U', -1, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X,
00668 $ 1, RCOND, R1, R2, W, IW, INFO )
00669 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00670 INFOT = 4
00671 CALL SPBSVX( 'N', 'U', 1, -1, 0, A, 1, AF, 1, EQ, C, B, 1, X,
00672 $ 1, RCOND, R1, R2, W, IW, INFO )
00673 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00674 INFOT = 5
00675 CALL SPBSVX( 'N', 'U', 0, 0, -1, A, 1, AF, 1, EQ, C, B, 1, X,
00676 $ 1, RCOND, R1, R2, W, IW, INFO )
00677 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00678 INFOT = 7
00679 CALL SPBSVX( 'N', 'U', 1, 1, 0, A, 1, AF, 2, EQ, C, B, 2, X, 2,
00680 $ RCOND, R1, R2, W, IW, INFO )
00681 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00682 INFOT = 9
00683 CALL SPBSVX( 'N', 'U', 1, 1, 0, A, 2, AF, 1, EQ, C, B, 2, X, 2,
00684 $ RCOND, R1, R2, W, IW, INFO )
00685 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00686 INFOT = 10
00687 EQ = '/'
00688 CALL SPBSVX( 'F', 'U', 0, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00689 $ RCOND, R1, R2, W, IW, INFO )
00690 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00691 INFOT = 11
00692 EQ = 'Y'
00693 CALL SPBSVX( 'F', 'U', 1, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 1,
00694 $ RCOND, R1, R2, W, IW, INFO )
00695 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00696 INFOT = 13
00697 CALL SPBSVX( 'N', 'U', 2, 0, 0, A, 1, AF, 1, EQ, C, B, 1, X, 2,
00698 $ RCOND, R1, R2, W, IW, INFO )
00699 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00700 INFOT = 15
00701 CALL SPBSVX( 'N', 'U', 2, 0, 0, A, 1, AF, 1, EQ, C, B, 2, X, 1,
00702 $ RCOND, R1, R2, W, IW, INFO )
00703 CALL CHKXER( 'SPBSVX', INFOT, NOUT, LERR, OK )
00704
00705 ELSE IF( LSAMEN( 2, C2, 'PT' ) ) THEN
00706
00707
00708
00709 SRNAMT = 'SPTSV '
00710 INFOT = 1
00711 CALL SPTSV( -1, 0, A( 1, 1 ), A( 1, 2 ), B, 1, INFO )
00712 CALL CHKXER( 'SPTSV ', INFOT, NOUT, LERR, OK )
00713 INFOT = 2
00714 CALL SPTSV( 0, -1, A( 1, 1 ), A( 1, 2 ), B, 1, INFO )
00715 CALL CHKXER( 'SPTSV ', INFOT, NOUT, LERR, OK )
00716 INFOT = 6
00717 CALL SPTSV( 2, 0, A( 1, 1 ), A( 1, 2 ), B, 1, INFO )
00718 CALL CHKXER( 'SPTSV ', INFOT, NOUT, LERR, OK )
00719
00720
00721
00722 SRNAMT = 'SPTSVX'
00723 INFOT = 1
00724 CALL SPTSVX( '/', 0, 0, A( 1, 1 ), A( 1, 2 ), AF( 1, 1 ),
00725 $ AF( 1, 2 ), B, 1, X, 1, RCOND, R1, R2, W, INFO )
00726 CALL CHKXER( 'SPTSVX', INFOT, NOUT, LERR, OK )
00727 INFOT = 2
00728 CALL SPTSVX( 'N', -1, 0, A( 1, 1 ), A( 1, 2 ), AF( 1, 1 ),
00729 $ AF( 1, 2 ), B, 1, X, 1, RCOND, R1, R2, W, INFO )
00730 CALL CHKXER( 'SPTSVX', INFOT, NOUT, LERR, OK )
00731 INFOT = 3
00732 CALL SPTSVX( 'N', 0, -1, A( 1, 1 ), A( 1, 2 ), AF( 1, 1 ),
00733 $ AF( 1, 2 ), B, 1, X, 1, RCOND, R1, R2, W, INFO )
00734 CALL CHKXER( 'SPTSVX', INFOT, NOUT, LERR, OK )
00735 INFOT = 9
00736 CALL SPTSVX( 'N', 2, 0, A( 1, 1 ), A( 1, 2 ), AF( 1, 1 ),
00737 $ AF( 1, 2 ), B, 1, X, 2, RCOND, R1, R2, W, INFO )
00738 CALL CHKXER( 'SPTSVX', INFOT, NOUT, LERR, OK )
00739 INFOT = 11
00740 CALL SPTSVX( 'N', 2, 0, A( 1, 1 ), A( 1, 2 ), AF( 1, 1 ),
00741 $ AF( 1, 2 ), B, 2, X, 1, RCOND, R1, R2, W, INFO )
00742 CALL CHKXER( 'SPTSVX', INFOT, NOUT, LERR, OK )
00743
00744 ELSE IF( LSAMEN( 2, C2, 'SY' ) ) THEN
00745
00746
00747
00748 SRNAMT = 'SSYSV '
00749 INFOT = 1
00750 CALL SSYSV( '/', 0, 0, A, 1, IP, B, 1, W, 1, INFO )
00751 CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK )
00752 INFOT = 2
00753 CALL SSYSV( 'U', -1, 0, A, 1, IP, B, 1, W, 1, INFO )
00754 CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK )
00755 INFOT = 3
00756 CALL SSYSV( 'U', 0, -1, A, 1, IP, B, 1, W, 1, INFO )
00757 CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK )
00758 INFOT = 8
00759 CALL SSYSV( 'U', 2, 0, A, 2, IP, B, 1, W, 1, INFO )
00760 CALL CHKXER( 'SSYSV ', INFOT, NOUT, LERR, OK )
00761
00762
00763
00764 SRNAMT = 'SSYSVX'
00765 INFOT = 1
00766 CALL SSYSVX( '/', 'U', 0, 0, A, 1, AF, 1, IP, B, 1, X, 1,
00767 $ RCOND, R1, R2, W, 1, IW, INFO )
00768 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK )
00769 INFOT = 2
00770 CALL SSYSVX( 'N', '/', 0, 0, A, 1, AF, 1, IP, B, 1, X, 1,
00771 $ RCOND, R1, R2, W, 1, IW, INFO )
00772 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK )
00773 INFOT = 3
00774 CALL SSYSVX( 'N', 'U', -1, 0, A, 1, AF, 1, IP, B, 1, X, 1,
00775 $ RCOND, R1, R2, W, 1, IW, INFO )
00776 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK )
00777 INFOT = 4
00778 CALL SSYSVX( 'N', 'U', 0, -1, A, 1, AF, 1, IP, B, 1, X, 1,
00779 $ RCOND, R1, R2, W, 1, IW, INFO )
00780 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK )
00781 INFOT = 6
00782 CALL SSYSVX( 'N', 'U', 2, 0, A, 1, AF, 2, IP, B, 2, X, 2,
00783 $ RCOND, R1, R2, W, 4, IW, INFO )
00784 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK )
00785 INFOT = 8
00786 CALL SSYSVX( 'N', 'U', 2, 0, A, 2, AF, 1, IP, B, 2, X, 2,
00787 $ RCOND, R1, R2, W, 4, IW, INFO )
00788 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK )
00789 INFOT = 11
00790 CALL SSYSVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 1, X, 2,
00791 $ RCOND, R1, R2, W, 4, IW, INFO )
00792 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK )
00793 INFOT = 13
00794 CALL SSYSVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 2, X, 1,
00795 $ RCOND, R1, R2, W, 4, IW, INFO )
00796 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK )
00797 INFOT = 18
00798 CALL SSYSVX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, B, 2, X, 2,
00799 $ RCOND, R1, R2, W, 3, IW, INFO )
00800 CALL CHKXER( 'SSYSVX', INFOT, NOUT, LERR, OK )
00801
00802
00803
00804 N_ERR_BNDS = 3
00805 NPARAMS = 0
00806 SRNAMT = 'SSYSVXX'
00807 INFOT = 1
00808 EQ = 'N'
00809 CALL SSYSVXX( '/', 'U', 0, 0, A, 1, AF, 1, IP, EQ, R, B, 1, X,
00810 $ 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00811 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00812 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK )
00813 INFOT = 2
00814 CALL SSYSVXX( 'N', '/', 0, 0, A, 1, AF, 1, IP, EQ, R, B, 1, X,
00815 $ 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00816 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00817 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK )
00818 INFOT = 3
00819 CALL SSYSVXX( 'N', 'U', -1, 0, A, 1, AF, 1, IP, EQ, R, B, 1, X,
00820 $ 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00821 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00822 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK )
00823 INFOT = 4
00824 EQ = '/'
00825 CALL SSYSVXX( 'N', 'U', 0, -1, A, 1, AF, 1, IP, EQ, R, B, 1, X,
00826 $ 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00827 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00828 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK )
00829 EQ = 'Y'
00830 INFOT = 6
00831 CALL SSYSVXX( 'N', 'U', 2, 0, A, 1, AF, 2, IP, EQ, R, B, 2, X,
00832 $ 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00833 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00834 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK )
00835 INFOT = 8
00836 CALL SSYSVXX( 'N', 'U', 2, 0, A, 2, AF, 1, IP, EQ, R, B, 2, X,
00837 $ 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00838 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00839 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK )
00840 INFOT = 12
00841 EQ = 'N'
00842 CALL SSYSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, EQ, R, B, 1, X,
00843 $ 2, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00844 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00845 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK )
00846 INFOT = 14
00847 CALL SSYSVXX( 'N', 'U', 2, 0, A, 2, AF, 2, IP, EQ, R, B, 2, X,
00848 $ 1, RCOND, RPVGRW, BERR, N_ERR_BNDS, ERR_BNDS_N,
00849 $ ERR_BNDS_C, NPARAMS, PARAMS, W, IW, INFO )
00850 CALL CHKXER( 'SSYSVXX', INFOT, NOUT, LERR, OK )
00851
00852 ELSE IF( LSAMEN( 2, C2, 'SP' ) ) THEN
00853
00854
00855
00856 SRNAMT = 'SSPSV '
00857 INFOT = 1
00858 CALL SSPSV( '/', 0, 0, A, IP, B, 1, INFO )
00859 CALL CHKXER( 'SSPSV ', INFOT, NOUT, LERR, OK )
00860 INFOT = 2
00861 CALL SSPSV( 'U', -1, 0, A, IP, B, 1, INFO )
00862 CALL CHKXER( 'SSPSV ', INFOT, NOUT, LERR, OK )
00863 INFOT = 3
00864 CALL SSPSV( 'U', 0, -1, A, IP, B, 1, INFO )
00865 CALL CHKXER( 'SSPSV ', INFOT, NOUT, LERR, OK )
00866 INFOT = 7
00867 CALL SSPSV( 'U', 2, 0, A, IP, B, 1, INFO )
00868 CALL CHKXER( 'SSPSV ', INFOT, NOUT, LERR, OK )
00869
00870
00871
00872 SRNAMT = 'SSPSVX'
00873 INFOT = 1
00874 CALL SSPSVX( '/', 'U', 0, 0, A, AF, IP, B, 1, X, 1, RCOND, R1,
00875 $ R2, W, IW, INFO )
00876 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK )
00877 INFOT = 2
00878 CALL SSPSVX( 'N', '/', 0, 0, A, AF, IP, B, 1, X, 1, RCOND, R1,
00879 $ R2, W, IW, INFO )
00880 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK )
00881 INFOT = 3
00882 CALL SSPSVX( 'N', 'U', -1, 0, A, AF, IP, B, 1, X, 1, RCOND, R1,
00883 $ R2, W, IW, INFO )
00884 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK )
00885 INFOT = 4
00886 CALL SSPSVX( 'N', 'U', 0, -1, A, AF, IP, B, 1, X, 1, RCOND, R1,
00887 $ R2, W, IW, INFO )
00888 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK )
00889 INFOT = 9
00890 CALL SSPSVX( 'N', 'U', 2, 0, A, AF, IP, B, 1, X, 2, RCOND, R1,
00891 $ R2, W, IW, INFO )
00892 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK )
00893 INFOT = 11
00894 CALL SSPSVX( 'N', 'U', 2, 0, A, AF, IP, B, 2, X, 1, RCOND, R1,
00895 $ R2, W, IW, INFO )
00896 CALL CHKXER( 'SSPSVX', INFOT, NOUT, LERR, OK )
00897 END IF
00898
00899
00900
00901 IF( OK ) THEN
00902 WRITE( NOUT, FMT = 9999 )PATH
00903 ELSE
00904 WRITE( NOUT, FMT = 9998 )PATH
00905 END IF
00906
00907 9999 FORMAT( 1X, A3, ' drivers passed the tests of the error exits' )
00908 9998 FORMAT( ' *** ', A3, ' drivers failed the tests of the error ',
00909 $ 'exits ***' )
00910
00911 RETURN
00912
00913
00914
00915 END