LAPACK 3.3.0
|
00001 SUBROUTINE DERRTR( PATH, NUNIT ) 00002 * 00003 * -- LAPACK test routine (version 3.1) -- 00004 * Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. 00005 * November 2006 00006 * 00007 * .. Scalar Arguments .. 00008 CHARACTER*3 PATH 00009 INTEGER NUNIT 00010 * .. 00011 * 00012 * Purpose 00013 * ======= 00014 * 00015 * DERRTR tests the error exits for the DOUBLE PRECISION triangular 00016 * routines. 00017 * 00018 * Arguments 00019 * ========= 00020 * 00021 * PATH (input) CHARACTER*3 00022 * The LAPACK path name for the routines to be tested. 00023 * 00024 * NUNIT (input) INTEGER 00025 * The unit number for output. 00026 * 00027 * ===================================================================== 00028 * 00029 * .. Parameters .. 00030 INTEGER NMAX 00031 PARAMETER ( NMAX = 2 ) 00032 * .. 00033 * .. Local Scalars .. 00034 CHARACTER*2 C2 00035 INTEGER INFO 00036 DOUBLE PRECISION RCOND, SCALE 00037 * .. 00038 * .. Local Arrays .. 00039 INTEGER IW( NMAX ) 00040 DOUBLE PRECISION A( NMAX, NMAX ), B( NMAX ), R1( NMAX ), 00041 $ R2( NMAX ), W( NMAX ), X( NMAX ) 00042 * .. 00043 * .. External Functions .. 00044 LOGICAL LSAMEN 00045 EXTERNAL LSAMEN 00046 * .. 00047 * .. External Subroutines .. 00048 EXTERNAL ALAESM, CHKXER, DLATBS, DLATPS, DLATRS, DTBCON, 00049 $ DTBRFS, DTBTRS, DTPCON, DTPRFS, DTPTRI, DTPTRS, 00050 $ DTRCON, DTRRFS, DTRTI2, DTRTRI, DTRTRS 00051 * .. 00052 * .. Scalars in Common .. 00053 LOGICAL LERR, OK 00054 CHARACTER*32 SRNAMT 00055 INTEGER INFOT, NOUT 00056 * .. 00057 * .. Common blocks .. 00058 COMMON / INFOC / INFOT, NOUT, OK, LERR 00059 COMMON / SRNAMC / SRNAMT 00060 * .. 00061 * .. Executable Statements .. 00062 * 00063 NOUT = NUNIT 00064 WRITE( NOUT, FMT = * ) 00065 C2 = PATH( 2: 3 ) 00066 A( 1, 1 ) = 1.D0 00067 A( 1, 2 ) = 2.D0 00068 A( 2, 2 ) = 3.D0 00069 A( 2, 1 ) = 4.D0 00070 OK = .TRUE. 00071 * 00072 IF( LSAMEN( 2, C2, 'TR' ) ) THEN 00073 * 00074 * Test error exits for the general triangular routines. 00075 * 00076 * DTRTRI 00077 * 00078 SRNAMT = 'DTRTRI' 00079 INFOT = 1 00080 CALL DTRTRI( '/', 'N', 0, A, 1, INFO ) 00081 CALL CHKXER( 'DTRTRI', INFOT, NOUT, LERR, OK ) 00082 INFOT = 2 00083 CALL DTRTRI( 'U', '/', 0, A, 1, INFO ) 00084 CALL CHKXER( 'DTRTRI', INFOT, NOUT, LERR, OK ) 00085 INFOT = 3 00086 CALL DTRTRI( 'U', 'N', -1, A, 1, INFO ) 00087 CALL CHKXER( 'DTRTRI', INFOT, NOUT, LERR, OK ) 00088 INFOT = 5 00089 CALL DTRTRI( 'U', 'N', 2, A, 1, INFO ) 00090 CALL CHKXER( 'DTRTRI', INFOT, NOUT, LERR, OK ) 00091 * 00092 * DTRTI2 00093 * 00094 SRNAMT = 'DTRTI2' 00095 INFOT = 1 00096 CALL DTRTI2( '/', 'N', 0, A, 1, INFO ) 00097 CALL CHKXER( 'DTRTI2', INFOT, NOUT, LERR, OK ) 00098 INFOT = 2 00099 CALL DTRTI2( 'U', '/', 0, A, 1, INFO ) 00100 CALL CHKXER( 'DTRTI2', INFOT, NOUT, LERR, OK ) 00101 INFOT = 3 00102 CALL DTRTI2( 'U', 'N', -1, A, 1, INFO ) 00103 CALL CHKXER( 'DTRTI2', INFOT, NOUT, LERR, OK ) 00104 INFOT = 5 00105 CALL DTRTI2( 'U', 'N', 2, A, 1, INFO ) 00106 CALL CHKXER( 'DTRTI2', INFOT, NOUT, LERR, OK ) 00107 * 00108 * DTRTRS 00109 * 00110 SRNAMT = 'DTRTRS' 00111 INFOT = 1 00112 CALL DTRTRS( '/', 'N', 'N', 0, 0, A, 1, X, 1, INFO ) 00113 CALL CHKXER( 'DTRTRS', INFOT, NOUT, LERR, OK ) 00114 INFOT = 2 00115 CALL DTRTRS( 'U', '/', 'N', 0, 0, A, 1, X, 1, INFO ) 00116 CALL CHKXER( 'DTRTRS', INFOT, NOUT, LERR, OK ) 00117 INFOT = 3 00118 CALL DTRTRS( 'U', 'N', '/', 0, 0, A, 1, X, 1, INFO ) 00119 CALL CHKXER( 'DTRTRS', INFOT, NOUT, LERR, OK ) 00120 INFOT = 4 00121 CALL DTRTRS( 'U', 'N', 'N', -1, 0, A, 1, X, 1, INFO ) 00122 CALL CHKXER( 'DTRTRS', INFOT, NOUT, LERR, OK ) 00123 INFOT = 5 00124 CALL DTRTRS( 'U', 'N', 'N', 0, -1, A, 1, X, 1, INFO ) 00125 CALL CHKXER( 'DTRTRS', INFOT, NOUT, LERR, OK ) 00126 INFOT = 7 00127 CALL DTRTRS( 'U', 'N', 'N', 2, 1, A, 1, X, 2, INFO ) 00128 CALL CHKXER( 'DTRTRS', INFOT, NOUT, LERR, OK ) 00129 INFOT = 9 00130 CALL DTRTRS( 'U', 'N', 'N', 2, 1, A, 2, X, 1, INFO ) 00131 CALL CHKXER( 'DTRTRS', INFOT, NOUT, LERR, OK ) 00132 * 00133 * DTRRFS 00134 * 00135 SRNAMT = 'DTRRFS' 00136 INFOT = 1 00137 CALL DTRRFS( '/', 'N', 'N', 0, 0, A, 1, B, 1, X, 1, R1, R2, W, 00138 $ IW, INFO ) 00139 CALL CHKXER( 'DTRRFS', INFOT, NOUT, LERR, OK ) 00140 INFOT = 2 00141 CALL DTRRFS( 'U', '/', 'N', 0, 0, A, 1, B, 1, X, 1, R1, R2, W, 00142 $ IW, INFO ) 00143 CALL CHKXER( 'DTRRFS', INFOT, NOUT, LERR, OK ) 00144 INFOT = 3 00145 CALL DTRRFS( 'U', 'N', '/', 0, 0, A, 1, B, 1, X, 1, R1, R2, W, 00146 $ IW, INFO ) 00147 CALL CHKXER( 'DTRRFS', INFOT, NOUT, LERR, OK ) 00148 INFOT = 4 00149 CALL DTRRFS( 'U', 'N', 'N', -1, 0, A, 1, B, 1, X, 1, R1, R2, W, 00150 $ IW, INFO ) 00151 CALL CHKXER( 'DTRRFS', INFOT, NOUT, LERR, OK ) 00152 INFOT = 5 00153 CALL DTRRFS( 'U', 'N', 'N', 0, -1, A, 1, B, 1, X, 1, R1, R2, W, 00154 $ IW, INFO ) 00155 CALL CHKXER( 'DTRRFS', INFOT, NOUT, LERR, OK ) 00156 INFOT = 7 00157 CALL DTRRFS( 'U', 'N', 'N', 2, 1, A, 1, B, 2, X, 2, R1, R2, W, 00158 $ IW, INFO ) 00159 CALL CHKXER( 'DTRRFS', INFOT, NOUT, LERR, OK ) 00160 INFOT = 9 00161 CALL DTRRFS( 'U', 'N', 'N', 2, 1, A, 2, B, 1, X, 2, R1, R2, W, 00162 $ IW, INFO ) 00163 CALL CHKXER( 'DTRRFS', INFOT, NOUT, LERR, OK ) 00164 INFOT = 11 00165 CALL DTRRFS( 'U', 'N', 'N', 2, 1, A, 2, B, 2, X, 1, R1, R2, W, 00166 $ IW, INFO ) 00167 CALL CHKXER( 'DTRRFS', INFOT, NOUT, LERR, OK ) 00168 * 00169 * DTRCON 00170 * 00171 SRNAMT = 'DTRCON' 00172 INFOT = 1 00173 CALL DTRCON( '/', 'U', 'N', 0, A, 1, RCOND, W, IW, INFO ) 00174 CALL CHKXER( 'DTRCON', INFOT, NOUT, LERR, OK ) 00175 INFOT = 2 00176 CALL DTRCON( '1', '/', 'N', 0, A, 1, RCOND, W, IW, INFO ) 00177 CALL CHKXER( 'DTRCON', INFOT, NOUT, LERR, OK ) 00178 INFOT = 3 00179 CALL DTRCON( '1', 'U', '/', 0, A, 1, RCOND, W, IW, INFO ) 00180 CALL CHKXER( 'DTRCON', INFOT, NOUT, LERR, OK ) 00181 INFOT = 4 00182 CALL DTRCON( '1', 'U', 'N', -1, A, 1, RCOND, W, IW, INFO ) 00183 CALL CHKXER( 'DTRCON', INFOT, NOUT, LERR, OK ) 00184 INFOT = 6 00185 CALL DTRCON( '1', 'U', 'N', 2, A, 1, RCOND, W, IW, INFO ) 00186 CALL CHKXER( 'DTRCON', INFOT, NOUT, LERR, OK ) 00187 * 00188 * DLATRS 00189 * 00190 SRNAMT = 'DLATRS' 00191 INFOT = 1 00192 CALL DLATRS( '/', 'N', 'N', 'N', 0, A, 1, X, SCALE, W, INFO ) 00193 CALL CHKXER( 'DLATRS', INFOT, NOUT, LERR, OK ) 00194 INFOT = 2 00195 CALL DLATRS( 'U', '/', 'N', 'N', 0, A, 1, X, SCALE, W, INFO ) 00196 CALL CHKXER( 'DLATRS', INFOT, NOUT, LERR, OK ) 00197 INFOT = 3 00198 CALL DLATRS( 'U', 'N', '/', 'N', 0, A, 1, X, SCALE, W, INFO ) 00199 CALL CHKXER( 'DLATRS', INFOT, NOUT, LERR, OK ) 00200 INFOT = 4 00201 CALL DLATRS( 'U', 'N', 'N', '/', 0, A, 1, X, SCALE, W, INFO ) 00202 CALL CHKXER( 'DLATRS', INFOT, NOUT, LERR, OK ) 00203 INFOT = 5 00204 CALL DLATRS( 'U', 'N', 'N', 'N', -1, A, 1, X, SCALE, W, INFO ) 00205 CALL CHKXER( 'DLATRS', INFOT, NOUT, LERR, OK ) 00206 INFOT = 7 00207 CALL DLATRS( 'U', 'N', 'N', 'N', 2, A, 1, X, SCALE, W, INFO ) 00208 CALL CHKXER( 'DLATRS', INFOT, NOUT, LERR, OK ) 00209 * 00210 ELSE IF( LSAMEN( 2, C2, 'TP' ) ) THEN 00211 * 00212 * Test error exits for the packed triangular routines. 00213 * 00214 * DTPTRI 00215 * 00216 SRNAMT = 'DTPTRI' 00217 INFOT = 1 00218 CALL DTPTRI( '/', 'N', 0, A, INFO ) 00219 CALL CHKXER( 'DTPTRI', INFOT, NOUT, LERR, OK ) 00220 INFOT = 2 00221 CALL DTPTRI( 'U', '/', 0, A, INFO ) 00222 CALL CHKXER( 'DTPTRI', INFOT, NOUT, LERR, OK ) 00223 INFOT = 3 00224 CALL DTPTRI( 'U', 'N', -1, A, INFO ) 00225 CALL CHKXER( 'DTPTRI', INFOT, NOUT, LERR, OK ) 00226 * 00227 * DTPTRS 00228 * 00229 SRNAMT = 'DTPTRS' 00230 INFOT = 1 00231 CALL DTPTRS( '/', 'N', 'N', 0, 0, A, X, 1, INFO ) 00232 CALL CHKXER( 'DTPTRS', INFOT, NOUT, LERR, OK ) 00233 INFOT = 2 00234 CALL DTPTRS( 'U', '/', 'N', 0, 0, A, X, 1, INFO ) 00235 CALL CHKXER( 'DTPTRS', INFOT, NOUT, LERR, OK ) 00236 INFOT = 3 00237 CALL DTPTRS( 'U', 'N', '/', 0, 0, A, X, 1, INFO ) 00238 CALL CHKXER( 'DTPTRS', INFOT, NOUT, LERR, OK ) 00239 INFOT = 4 00240 CALL DTPTRS( 'U', 'N', 'N', -1, 0, A, X, 1, INFO ) 00241 CALL CHKXER( 'DTPTRS', INFOT, NOUT, LERR, OK ) 00242 INFOT = 5 00243 CALL DTPTRS( 'U', 'N', 'N', 0, -1, A, X, 1, INFO ) 00244 CALL CHKXER( 'DTPTRS', INFOT, NOUT, LERR, OK ) 00245 INFOT = 8 00246 CALL DTPTRS( 'U', 'N', 'N', 2, 1, A, X, 1, INFO ) 00247 CALL CHKXER( 'DTPTRS', INFOT, NOUT, LERR, OK ) 00248 * 00249 * DTPRFS 00250 * 00251 SRNAMT = 'DTPRFS' 00252 INFOT = 1 00253 CALL DTPRFS( '/', 'N', 'N', 0, 0, A, B, 1, X, 1, R1, R2, W, IW, 00254 $ INFO ) 00255 CALL CHKXER( 'DTPRFS', INFOT, NOUT, LERR, OK ) 00256 INFOT = 2 00257 CALL DTPRFS( 'U', '/', 'N', 0, 0, A, B, 1, X, 1, R1, R2, W, IW, 00258 $ INFO ) 00259 CALL CHKXER( 'DTPRFS', INFOT, NOUT, LERR, OK ) 00260 INFOT = 3 00261 CALL DTPRFS( 'U', 'N', '/', 0, 0, A, B, 1, X, 1, R1, R2, W, IW, 00262 $ INFO ) 00263 CALL CHKXER( 'DTPRFS', INFOT, NOUT, LERR, OK ) 00264 INFOT = 4 00265 CALL DTPRFS( 'U', 'N', 'N', -1, 0, A, B, 1, X, 1, R1, R2, W, 00266 $ IW, INFO ) 00267 CALL CHKXER( 'DTPRFS', INFOT, NOUT, LERR, OK ) 00268 INFOT = 5 00269 CALL DTPRFS( 'U', 'N', 'N', 0, -1, A, B, 1, X, 1, R1, R2, W, 00270 $ IW, INFO ) 00271 CALL CHKXER( 'DTPRFS', INFOT, NOUT, LERR, OK ) 00272 INFOT = 8 00273 CALL DTPRFS( 'U', 'N', 'N', 2, 1, A, B, 1, X, 2, R1, R2, W, IW, 00274 $ INFO ) 00275 CALL CHKXER( 'DTPRFS', INFOT, NOUT, LERR, OK ) 00276 INFOT = 10 00277 CALL DTPRFS( 'U', 'N', 'N', 2, 1, A, B, 2, X, 1, R1, R2, W, IW, 00278 $ INFO ) 00279 CALL CHKXER( 'DTPRFS', INFOT, NOUT, LERR, OK ) 00280 * 00281 * DTPCON 00282 * 00283 SRNAMT = 'DTPCON' 00284 INFOT = 1 00285 CALL DTPCON( '/', 'U', 'N', 0, A, RCOND, W, IW, INFO ) 00286 CALL CHKXER( 'DTPCON', INFOT, NOUT, LERR, OK ) 00287 INFOT = 2 00288 CALL DTPCON( '1', '/', 'N', 0, A, RCOND, W, IW, INFO ) 00289 CALL CHKXER( 'DTPCON', INFOT, NOUT, LERR, OK ) 00290 INFOT = 3 00291 CALL DTPCON( '1', 'U', '/', 0, A, RCOND, W, IW, INFO ) 00292 CALL CHKXER( 'DTPCON', INFOT, NOUT, LERR, OK ) 00293 INFOT = 4 00294 CALL DTPCON( '1', 'U', 'N', -1, A, RCOND, W, IW, INFO ) 00295 CALL CHKXER( 'DTPCON', INFOT, NOUT, LERR, OK ) 00296 * 00297 * DLATPS 00298 * 00299 SRNAMT = 'DLATPS' 00300 INFOT = 1 00301 CALL DLATPS( '/', 'N', 'N', 'N', 0, A, X, SCALE, W, INFO ) 00302 CALL CHKXER( 'DLATPS', INFOT, NOUT, LERR, OK ) 00303 INFOT = 2 00304 CALL DLATPS( 'U', '/', 'N', 'N', 0, A, X, SCALE, W, INFO ) 00305 CALL CHKXER( 'DLATPS', INFOT, NOUT, LERR, OK ) 00306 INFOT = 3 00307 CALL DLATPS( 'U', 'N', '/', 'N', 0, A, X, SCALE, W, INFO ) 00308 CALL CHKXER( 'DLATPS', INFOT, NOUT, LERR, OK ) 00309 INFOT = 4 00310 CALL DLATPS( 'U', 'N', 'N', '/', 0, A, X, SCALE, W, INFO ) 00311 CALL CHKXER( 'DLATPS', INFOT, NOUT, LERR, OK ) 00312 INFOT = 5 00313 CALL DLATPS( 'U', 'N', 'N', 'N', -1, A, X, SCALE, W, INFO ) 00314 CALL CHKXER( 'DLATPS', INFOT, NOUT, LERR, OK ) 00315 * 00316 ELSE IF( LSAMEN( 2, C2, 'TB' ) ) THEN 00317 * 00318 * Test error exits for the banded triangular routines. 00319 * 00320 * DTBTRS 00321 * 00322 SRNAMT = 'DTBTRS' 00323 INFOT = 1 00324 CALL DTBTRS( '/', 'N', 'N', 0, 0, 0, A, 1, X, 1, INFO ) 00325 CALL CHKXER( 'DTBTRS', INFOT, NOUT, LERR, OK ) 00326 INFOT = 2 00327 CALL DTBTRS( 'U', '/', 'N', 0, 0, 0, A, 1, X, 1, INFO ) 00328 CALL CHKXER( 'DTBTRS', INFOT, NOUT, LERR, OK ) 00329 INFOT = 3 00330 CALL DTBTRS( 'U', 'N', '/', 0, 0, 0, A, 1, X, 1, INFO ) 00331 CALL CHKXER( 'DTBTRS', INFOT, NOUT, LERR, OK ) 00332 INFOT = 4 00333 CALL DTBTRS( 'U', 'N', 'N', -1, 0, 0, A, 1, X, 1, INFO ) 00334 CALL CHKXER( 'DTBTRS', INFOT, NOUT, LERR, OK ) 00335 INFOT = 5 00336 CALL DTBTRS( 'U', 'N', 'N', 0, -1, 0, A, 1, X, 1, INFO ) 00337 CALL CHKXER( 'DTBTRS', INFOT, NOUT, LERR, OK ) 00338 INFOT = 6 00339 CALL DTBTRS( 'U', 'N', 'N', 0, 0, -1, A, 1, X, 1, INFO ) 00340 CALL CHKXER( 'DTBTRS', INFOT, NOUT, LERR, OK ) 00341 INFOT = 8 00342 CALL DTBTRS( 'U', 'N', 'N', 2, 1, 1, A, 1, X, 2, INFO ) 00343 CALL CHKXER( 'DTBTRS', INFOT, NOUT, LERR, OK ) 00344 INFOT = 10 00345 CALL DTBTRS( 'U', 'N', 'N', 2, 0, 1, A, 1, X, 1, INFO ) 00346 CALL CHKXER( 'DTBTRS', INFOT, NOUT, LERR, OK ) 00347 * 00348 * DTBRFS 00349 * 00350 SRNAMT = 'DTBRFS' 00351 INFOT = 1 00352 CALL DTBRFS( '/', 'N', 'N', 0, 0, 0, A, 1, B, 1, X, 1, R1, R2, 00353 $ W, IW, INFO ) 00354 CALL CHKXER( 'DTBRFS', INFOT, NOUT, LERR, OK ) 00355 INFOT = 2 00356 CALL DTBRFS( 'U', '/', 'N', 0, 0, 0, A, 1, B, 1, X, 1, R1, R2, 00357 $ W, IW, INFO ) 00358 CALL CHKXER( 'DTBRFS', INFOT, NOUT, LERR, OK ) 00359 INFOT = 3 00360 CALL DTBRFS( 'U', 'N', '/', 0, 0, 0, A, 1, B, 1, X, 1, R1, R2, 00361 $ W, IW, INFO ) 00362 CALL CHKXER( 'DTBRFS', INFOT, NOUT, LERR, OK ) 00363 INFOT = 4 00364 CALL DTBRFS( 'U', 'N', 'N', -1, 0, 0, A, 1, B, 1, X, 1, R1, R2, 00365 $ W, IW, INFO ) 00366 CALL CHKXER( 'DTBRFS', INFOT, NOUT, LERR, OK ) 00367 INFOT = 5 00368 CALL DTBRFS( 'U', 'N', 'N', 0, -1, 0, A, 1, B, 1, X, 1, R1, R2, 00369 $ W, IW, INFO ) 00370 CALL CHKXER( 'DTBRFS', INFOT, NOUT, LERR, OK ) 00371 INFOT = 6 00372 CALL DTBRFS( 'U', 'N', 'N', 0, 0, -1, A, 1, B, 1, X, 1, R1, R2, 00373 $ W, IW, INFO ) 00374 CALL CHKXER( 'DTBRFS', INFOT, NOUT, LERR, OK ) 00375 INFOT = 8 00376 CALL DTBRFS( 'U', 'N', 'N', 2, 1, 1, A, 1, B, 2, X, 2, R1, R2, 00377 $ W, IW, INFO ) 00378 CALL CHKXER( 'DTBRFS', INFOT, NOUT, LERR, OK ) 00379 INFOT = 10 00380 CALL DTBRFS( 'U', 'N', 'N', 2, 1, 1, A, 2, B, 1, X, 2, R1, R2, 00381 $ W, IW, INFO ) 00382 CALL CHKXER( 'DTBRFS', INFOT, NOUT, LERR, OK ) 00383 INFOT = 12 00384 CALL DTBRFS( 'U', 'N', 'N', 2, 1, 1, A, 2, B, 2, X, 1, R1, R2, 00385 $ W, IW, INFO ) 00386 CALL CHKXER( 'DTBRFS', INFOT, NOUT, LERR, OK ) 00387 * 00388 * DTBCON 00389 * 00390 SRNAMT = 'DTBCON' 00391 INFOT = 1 00392 CALL DTBCON( '/', 'U', 'N', 0, 0, A, 1, RCOND, W, IW, INFO ) 00393 CALL CHKXER( 'DTBCON', INFOT, NOUT, LERR, OK ) 00394 INFOT = 2 00395 CALL DTBCON( '1', '/', 'N', 0, 0, A, 1, RCOND, W, IW, INFO ) 00396 CALL CHKXER( 'DTBCON', INFOT, NOUT, LERR, OK ) 00397 INFOT = 3 00398 CALL DTBCON( '1', 'U', '/', 0, 0, A, 1, RCOND, W, IW, INFO ) 00399 CALL CHKXER( 'DTBCON', INFOT, NOUT, LERR, OK ) 00400 INFOT = 4 00401 CALL DTBCON( '1', 'U', 'N', -1, 0, A, 1, RCOND, W, IW, INFO ) 00402 CALL CHKXER( 'DTBCON', INFOT, NOUT, LERR, OK ) 00403 INFOT = 5 00404 CALL DTBCON( '1', 'U', 'N', 0, -1, A, 1, RCOND, W, IW, INFO ) 00405 CALL CHKXER( 'DTBCON', INFOT, NOUT, LERR, OK ) 00406 INFOT = 7 00407 CALL DTBCON( '1', 'U', 'N', 2, 1, A, 1, RCOND, W, IW, INFO ) 00408 CALL CHKXER( 'DTBCON', INFOT, NOUT, LERR, OK ) 00409 * 00410 * DLATBS 00411 * 00412 SRNAMT = 'DLATBS' 00413 INFOT = 1 00414 CALL DLATBS( '/', 'N', 'N', 'N', 0, 0, A, 1, X, SCALE, W, 00415 $ INFO ) 00416 CALL CHKXER( 'DLATBS', INFOT, NOUT, LERR, OK ) 00417 INFOT = 2 00418 CALL DLATBS( 'U', '/', 'N', 'N', 0, 0, A, 1, X, SCALE, W, 00419 $ INFO ) 00420 CALL CHKXER( 'DLATBS', INFOT, NOUT, LERR, OK ) 00421 INFOT = 3 00422 CALL DLATBS( 'U', 'N', '/', 'N', 0, 0, A, 1, X, SCALE, W, 00423 $ INFO ) 00424 CALL CHKXER( 'DLATBS', INFOT, NOUT, LERR, OK ) 00425 INFOT = 4 00426 CALL DLATBS( 'U', 'N', 'N', '/', 0, 0, A, 1, X, SCALE, W, 00427 $ INFO ) 00428 CALL CHKXER( 'DLATBS', INFOT, NOUT, LERR, OK ) 00429 INFOT = 5 00430 CALL DLATBS( 'U', 'N', 'N', 'N', -1, 0, A, 1, X, SCALE, W, 00431 $ INFO ) 00432 CALL CHKXER( 'DLATBS', INFOT, NOUT, LERR, OK ) 00433 INFOT = 6 00434 CALL DLATBS( 'U', 'N', 'N', 'N', 1, -1, A, 1, X, SCALE, W, 00435 $ INFO ) 00436 CALL CHKXER( 'DLATBS', INFOT, NOUT, LERR, OK ) 00437 INFOT = 8 00438 CALL DLATBS( 'U', 'N', 'N', 'N', 2, 1, A, 1, X, SCALE, W, 00439 $ INFO ) 00440 CALL CHKXER( 'DLATBS', INFOT, NOUT, LERR, OK ) 00441 END IF 00442 * 00443 * Print a summary line. 00444 * 00445 CALL ALAESM( PATH, OK, NOUT ) 00446 * 00447 RETURN 00448 * 00449 * End of DERRTR 00450 * 00451 END