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