![]() |
LAPACK
3.4.1
LAPACK: Linear Algebra PACKage
|
00001 *> \brief \b SLAHD2 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 SLAHD2( IOUNIT, PATH ) 00012 * 00013 * .. Scalar Arguments .. 00014 * CHARACTER*3 PATH 00015 * INTEGER IOUNIT 00016 * .. 00017 * 00018 * 00019 *> \par Purpose: 00020 * ============= 00021 *> 00022 *> \verbatim 00023 *> 00024 *> SLAHD2 prints header information for the different test paths. 00025 *> \endverbatim 00026 * 00027 * Arguments: 00028 * ========== 00029 * 00030 *> \param[in] IOUNIT 00031 *> \verbatim 00032 *> IOUNIT is INTEGER. 00033 *> On entry, IOUNIT specifies the unit number to which the 00034 *> header information should be printed. 00035 *> \endverbatim 00036 *> 00037 *> \param[in] PATH 00038 *> \verbatim 00039 *> PATH is CHARACTER*3. 00040 *> On entry, PATH contains the name of the path for which the 00041 *> header information is to be printed. Current paths are 00042 *> 00043 *> SHS, CHS: Non-symmetric eigenproblem. 00044 *> SST, CST: Symmetric eigenproblem. 00045 *> SSG, CSG: Symmetric Generalized eigenproblem. 00046 *> SBD, CBD: Singular Value Decomposition (SVD) 00047 *> SBB, CBB: General Banded reduction to bidiagonal form 00048 *> 00049 *> These paths also are supplied in double precision (replace 00050 *> leading S by D and leading C by Z in path names). 00051 *> \endverbatim 00052 * 00053 * Authors: 00054 * ======== 00055 * 00056 *> \author Univ. of Tennessee 00057 *> \author Univ. of California Berkeley 00058 *> \author Univ. of Colorado Denver 00059 *> \author NAG Ltd. 00060 * 00061 *> \date November 2011 00062 * 00063 *> \ingroup single_eig 00064 * 00065 * ===================================================================== 00066 SUBROUTINE SLAHD2( IOUNIT, PATH ) 00067 * 00068 * -- LAPACK test routine (version 3.4.0) -- 00069 * -- LAPACK is a software package provided by Univ. of Tennessee, -- 00070 * -- Univ. of California Berkeley, Univ. of Colorado Denver and NAG Ltd..-- 00071 * November 2011 00072 * 00073 * .. Scalar Arguments .. 00074 CHARACTER*3 PATH 00075 INTEGER IOUNIT 00076 * .. 00077 * 00078 * ===================================================================== 00079 * 00080 * .. Local Scalars .. 00081 LOGICAL CORZ, SORD 00082 CHARACTER*2 C2 00083 INTEGER J 00084 * .. 00085 * .. External Functions .. 00086 LOGICAL LSAME, LSAMEN 00087 EXTERNAL LSAME, LSAMEN 00088 * .. 00089 * .. Executable Statements .. 00090 * 00091 IF( IOUNIT.LE.0 ) 00092 $ RETURN 00093 SORD = LSAME( PATH, 'S' ) .OR. LSAME( PATH, 'D' ) 00094 CORZ = LSAME( PATH, 'C' ) .OR. LSAME( PATH, 'Z' ) 00095 IF( .NOT.SORD .AND. .NOT.CORZ ) THEN 00096 WRITE( IOUNIT, FMT = 9999 )PATH 00097 END IF 00098 C2 = PATH( 2: 3 ) 00099 * 00100 IF( LSAMEN( 2, C2, 'HS' ) ) THEN 00101 IF( SORD ) THEN 00102 * 00103 * Real Non-symmetric Eigenvalue Problem: 00104 * 00105 WRITE( IOUNIT, FMT = 9998 )PATH 00106 * 00107 * Matrix types 00108 * 00109 WRITE( IOUNIT, FMT = 9988 ) 00110 WRITE( IOUNIT, FMT = 9987 ) 00111 WRITE( IOUNIT, FMT = 9986 )'pairs ', 'pairs ', 'prs.', 00112 $ 'prs.' 00113 WRITE( IOUNIT, FMT = 9985 ) 00114 * 00115 * Tests performed 00116 * 00117 WRITE( IOUNIT, FMT = 9984 )'orthogonal', '''=transpose', 00118 $ ( '''', J = 1, 6 ) 00119 * 00120 ELSE 00121 * 00122 * Complex Non-symmetric Eigenvalue Problem: 00123 * 00124 WRITE( IOUNIT, FMT = 9997 )PATH 00125 * 00126 * Matrix types 00127 * 00128 WRITE( IOUNIT, FMT = 9988 ) 00129 WRITE( IOUNIT, FMT = 9987 ) 00130 WRITE( IOUNIT, FMT = 9986 )'e.vals', 'e.vals', 'e.vs', 00131 $ 'e.vs' 00132 WRITE( IOUNIT, FMT = 9985 ) 00133 * 00134 * Tests performed 00135 * 00136 WRITE( IOUNIT, FMT = 9984 )'unitary', '*=conj.transp.', 00137 $ ( '*', J = 1, 6 ) 00138 END IF 00139 * 00140 ELSE IF( LSAMEN( 2, C2, 'ST' ) ) THEN 00141 * 00142 IF( SORD ) THEN 00143 * 00144 * Real Symmetric Eigenvalue Problem: 00145 * 00146 WRITE( IOUNIT, FMT = 9996 )PATH 00147 * 00148 * Matrix types 00149 * 00150 WRITE( IOUNIT, FMT = 9983 ) 00151 WRITE( IOUNIT, FMT = 9982 ) 00152 WRITE( IOUNIT, FMT = 9981 )'Symmetric' 00153 * 00154 * Tests performed 00155 * 00156 WRITE( IOUNIT, FMT = 9968 ) 00157 * 00158 ELSE 00159 * 00160 * Complex Hermitian Eigenvalue Problem: 00161 * 00162 WRITE( IOUNIT, FMT = 9995 )PATH 00163 * 00164 * Matrix types 00165 * 00166 WRITE( IOUNIT, FMT = 9983 ) 00167 WRITE( IOUNIT, FMT = 9982 ) 00168 WRITE( IOUNIT, FMT = 9981 )'Hermitian' 00169 * 00170 * Tests performed 00171 * 00172 WRITE( IOUNIT, FMT = 9967 ) 00173 END IF 00174 * 00175 ELSE IF( LSAMEN( 2, C2, 'SG' ) ) THEN 00176 * 00177 IF( SORD ) THEN 00178 * 00179 * Real Symmetric Generalized Eigenvalue Problem: 00180 * 00181 WRITE( IOUNIT, FMT = 9992 )PATH 00182 * 00183 * Matrix types 00184 * 00185 WRITE( IOUNIT, FMT = 9980 ) 00186 WRITE( IOUNIT, FMT = 9979 ) 00187 WRITE( IOUNIT, FMT = 9978 )'Symmetric' 00188 * 00189 * Tests performed 00190 * 00191 WRITE( IOUNIT, FMT = 9977 ) 00192 WRITE( IOUNIT, FMT = 9976 ) 00193 * 00194 ELSE 00195 * 00196 * Complex Hermitian Generalized Eigenvalue Problem: 00197 * 00198 WRITE( IOUNIT, FMT = 9991 )PATH 00199 * 00200 * Matrix types 00201 * 00202 WRITE( IOUNIT, FMT = 9980 ) 00203 WRITE( IOUNIT, FMT = 9979 ) 00204 WRITE( IOUNIT, FMT = 9978 )'Hermitian' 00205 * 00206 * Tests performed 00207 * 00208 WRITE( IOUNIT, FMT = 9975 ) 00209 WRITE( IOUNIT, FMT = 9974 ) 00210 * 00211 END IF 00212 * 00213 ELSE IF( LSAMEN( 2, C2, 'BD' ) ) THEN 00214 * 00215 IF( SORD ) THEN 00216 * 00217 * Real Singular Value Decomposition: 00218 * 00219 WRITE( IOUNIT, FMT = 9994 )PATH 00220 * 00221 * Matrix types 00222 * 00223 WRITE( IOUNIT, FMT = 9973 ) 00224 * 00225 * Tests performed 00226 * 00227 WRITE( IOUNIT, FMT = 9972 )'orthogonal' 00228 WRITE( IOUNIT, FMT = 9971 ) 00229 ELSE 00230 * 00231 * Complex Singular Value Decomposition: 00232 * 00233 WRITE( IOUNIT, FMT = 9993 )PATH 00234 * 00235 * Matrix types 00236 * 00237 WRITE( IOUNIT, FMT = 9973 ) 00238 * 00239 * Tests performed 00240 * 00241 WRITE( IOUNIT, FMT = 9972 )'unitary ' 00242 WRITE( IOUNIT, FMT = 9971 ) 00243 END IF 00244 * 00245 ELSE IF( LSAMEN( 2, C2, 'BB' ) ) THEN 00246 * 00247 IF( SORD ) THEN 00248 * 00249 * Real General Band reduction to bidiagonal form: 00250 * 00251 WRITE( IOUNIT, FMT = 9990 )PATH 00252 * 00253 * Matrix types 00254 * 00255 WRITE( IOUNIT, FMT = 9970 ) 00256 * 00257 * Tests performed 00258 * 00259 WRITE( IOUNIT, FMT = 9969 )'orthogonal' 00260 ELSE 00261 * 00262 * Complex Band reduction to bidiagonal form: 00263 * 00264 WRITE( IOUNIT, FMT = 9989 )PATH 00265 * 00266 * Matrix types 00267 * 00268 WRITE( IOUNIT, FMT = 9970 ) 00269 * 00270 * Tests performed 00271 * 00272 WRITE( IOUNIT, FMT = 9969 )'unitary ' 00273 END IF 00274 * 00275 ELSE 00276 * 00277 WRITE( IOUNIT, FMT = 9999 )PATH 00278 RETURN 00279 END IF 00280 * 00281 RETURN 00282 * 00283 9999 FORMAT( 1X, A3, ': no header available' ) 00284 9998 FORMAT( / 1X, A3, ' -- Real Non-symmetric eigenvalue problem' ) 00285 9997 FORMAT( / 1X, A3, ' -- Complex Non-symmetric eigenvalue problem' ) 00286 9996 FORMAT( / 1X, A3, ' -- Real Symmetric eigenvalue problem' ) 00287 9995 FORMAT( / 1X, A3, ' -- Complex Hermitian eigenvalue problem' ) 00288 9994 FORMAT( / 1X, A3, ' -- Real Singular Value Decomposition' ) 00289 9993 FORMAT( / 1X, A3, ' -- Complex Singular Value Decomposition' ) 00290 9992 FORMAT( / 1X, A3, ' -- Real Symmetric Generalized eigenvalue ', 00291 $ 'problem' ) 00292 9991 FORMAT( / 1X, A3, ' -- Complex Hermitian Generalized eigenvalue ', 00293 $ 'problem' ) 00294 9990 FORMAT( / 1X, A3, ' -- Real Band reduc. to bidiagonal form' ) 00295 9989 FORMAT( / 1X, A3, ' -- Complex Band reduc. to bidiagonal form' ) 00296 * 00297 9988 FORMAT( ' Matrix types (see xCHKHS for details): ' ) 00298 * 00299 9987 FORMAT( / ' Special Matrices:', / ' 1=Zero matrix. ', 00300 $ ' ', ' 5=Diagonal: geometr. spaced entries.', 00301 $ / ' 2=Identity matrix. ', ' 6=Diagona', 00302 $ 'l: clustered entries.', / ' 3=Transposed Jordan block. ', 00303 $ ' ', ' 7=Diagonal: large, evenly spaced.', / ' ', 00304 $ '4=Diagonal: evenly spaced entries. ', ' 8=Diagonal: s', 00305 $ 'mall, evenly spaced.' ) 00306 9986 FORMAT( ' Dense, Non-Symmetric Matrices:', / ' 9=Well-cond., ev', 00307 $ 'enly spaced eigenvals.', ' 14=Ill-cond., geomet. spaced e', 00308 $ 'igenals.', / ' 10=Well-cond., geom. spaced eigenvals. ', 00309 $ ' 15=Ill-conditioned, clustered e.vals.', / ' 11=Well-cond', 00310 $ 'itioned, clustered e.vals. ', ' 16=Ill-cond., random comp', 00311 $ 'lex ', A6, / ' 12=Well-cond., random complex ', A6, ' ', 00312 $ ' 17=Ill-cond., large rand. complx ', A4, / ' 13=Ill-condi', 00313 $ 'tioned, evenly spaced. ', ' 18=Ill-cond., small rand.', 00314 $ ' complx ', A4 ) 00315 9985 FORMAT( ' 19=Matrix with random O(1) entries. ', ' 21=Matrix ', 00316 $ 'with small random entries.', / ' 20=Matrix with large ran', 00317 $ 'dom entries. ' ) 00318 9984 FORMAT( / ' Tests performed: ', '(H is Hessenberg, T is Schur,', 00319 $ ' U and Z are ', A, ',', / 20X, A, ', W is a diagonal matr', 00320 $ 'ix of eigenvalues,', / 20X, 'L and R are the left and rig', 00321 $ 'ht eigenvector matrices)', / ' 1 = | A - U H U', A1, ' |', 00322 $ ' / ( |A| n ulp ) ', ' 2 = | I - U U', A1, ' | / ', 00323 $ '( n ulp )', / ' 3 = | H - Z T Z', A1, ' | / ( |H| n ulp ', 00324 $ ') ', ' 4 = | I - Z Z', A1, ' | / ( n ulp )', 00325 $ / ' 5 = | A - UZ T (UZ)', A1, ' | / ( |A| n ulp ) ', 00326 $ ' 6 = | I - UZ (UZ)', A1, ' | / ( n ulp )', / ' 7 = | T(', 00327 $ 'e.vects.) - T(no e.vects.) | / ( |T| ulp )', / ' 8 = | W', 00328 $ '(e.vects.) - W(no e.vects.) | / ( |W| ulp )', / ' 9 = | ', 00329 $ 'TR - RW | / ( |T| |R| ulp ) ', ' 10 = | LT - WL | / (', 00330 $ ' |T| |L| ulp )', / ' 11= |HX - XW| / (|H| |X| ulp) (inv.', 00331 $ 'it)', ' 12= |YH - WY| / (|H| |Y| ulp) (inv.it)' ) 00332 * 00333 * Symmetric/Hermitian eigenproblem 00334 * 00335 9983 FORMAT( ' Matrix types (see xDRVST for details): ' ) 00336 * 00337 9982 FORMAT( / ' Special Matrices:', / ' 1=Zero matrix. ', 00338 $ ' ', ' 5=Diagonal: clustered entries.', / ' 2=', 00339 $ 'Identity matrix. ', ' 6=Diagonal: lar', 00340 $ 'ge, evenly spaced.', / ' 3=Diagonal: evenly spaced entri', 00341 $ 'es. ', ' 7=Diagonal: small, evenly spaced.', / ' 4=D', 00342 $ 'iagonal: geometr. spaced entries.' ) 00343 9981 FORMAT( ' Dense ', A, ' Matrices:', / ' 8=Evenly spaced eigen', 00344 $ 'vals. ', ' 12=Small, evenly spaced eigenvals.', 00345 $ / ' 9=Geometrically spaced eigenvals. ', ' 13=Matrix ', 00346 $ 'with random O(1) entries.', / ' 10=Clustered eigenvalues.', 00347 $ ' ', ' 14=Matrix with large random entries.', 00348 $ / ' 11=Large, evenly spaced eigenvals. ', ' 15=Matrix ', 00349 $ 'with small random entries.' ) 00350 * 00351 * Symmetric/Hermitian Generalized eigenproblem 00352 * 00353 9980 FORMAT( ' Matrix types (see xDRVSG for details): ' ) 00354 * 00355 9979 FORMAT( / ' Special Matrices:', / ' 1=Zero matrix. ', 00356 $ ' ', ' 5=Diagonal: clustered entries.', / ' 2=', 00357 $ 'Identity matrix. ', ' 6=Diagonal: lar', 00358 $ 'ge, evenly spaced.', / ' 3=Diagonal: evenly spaced entri', 00359 $ 'es. ', ' 7=Diagonal: small, evenly spaced.', / ' 4=D', 00360 $ 'iagonal: geometr. spaced entries.' ) 00361 9978 FORMAT( ' Dense or Banded ', A, ' Matrices: ', 00362 $ / ' 8=Evenly spaced eigenvals. ', 00363 $ ' 15=Matrix with small random entries.', 00364 $ / ' 9=Geometrically spaced eigenvals. ', 00365 $ ' 16=Evenly spaced eigenvals, KA=1, KB=1.', 00366 $ / ' 10=Clustered eigenvalues. ', 00367 $ ' 17=Evenly spaced eigenvals, KA=2, KB=1.', 00368 $ / ' 11=Large, evenly spaced eigenvals. ', 00369 $ ' 18=Evenly spaced eigenvals, KA=2, KB=2.', 00370 $ / ' 12=Small, evenly spaced eigenvals. ', 00371 $ ' 19=Evenly spaced eigenvals, KA=3, KB=1.', 00372 $ / ' 13=Matrix with random O(1) entries. ', 00373 $ ' 20=Evenly spaced eigenvals, KA=3, KB=2.', 00374 $ / ' 14=Matrix with large random entries.', 00375 $ ' 21=Evenly spaced eigenvals, KA=3, KB=3.' ) 00376 9977 FORMAT( / ' Tests performed: ', 00377 $ / '( For each pair (A,B), where A is of the given type ', 00378 $ / ' and B is a random well-conditioned matrix. D is ', 00379 $ / ' diagonal, and Z is orthogonal. )', 00380 $ / ' 1 = SSYGV, with ITYPE=1 and UPLO=''U'':', 00381 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ', 00382 $ / ' 2 = SSPGV, with ITYPE=1 and UPLO=''U'':', 00383 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ', 00384 $ / ' 3 = SSBGV, with ITYPE=1 and UPLO=''U'':', 00385 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ', 00386 $ / ' 4 = SSYGV, with ITYPE=1 and UPLO=''L'':', 00387 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ', 00388 $ / ' 5 = SSPGV, with ITYPE=1 and UPLO=''L'':', 00389 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ', 00390 $ / ' 6 = SSBGV, with ITYPE=1 and UPLO=''L'':', 00391 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ' ) 00392 9976 FORMAT( ' 7 = SSYGV, with ITYPE=2 and UPLO=''U'':', 00393 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ', 00394 $ / ' 8 = SSPGV, with ITYPE=2 and UPLO=''U'':', 00395 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ', 00396 $ / ' 9 = SSPGV, with ITYPE=2 and UPLO=''L'':', 00397 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ', 00398 $ / '10 = SSPGV, with ITYPE=2 and UPLO=''L'':', 00399 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ', 00400 $ / '11 = SSYGV, with ITYPE=3 and UPLO=''U'':', 00401 $ ' | B A Z - Z D | / ( |A| |Z| n ulp ) ', 00402 $ / '12 = SSPGV, with ITYPE=3 and UPLO=''U'':', 00403 $ ' | B A Z - Z D | / ( |A| |Z| n ulp ) ', 00404 $ / '13 = SSYGV, with ITYPE=3 and UPLO=''L'':', 00405 $ ' | B A Z - Z D | / ( |A| |Z| n ulp ) ', 00406 $ / '14 = SSPGV, with ITYPE=3 and UPLO=''L'':', 00407 $ ' | B A Z - Z D | / ( |A| |Z| n ulp ) ' ) 00408 9975 FORMAT( / ' Tests performed: ', 00409 $ / '( For each pair (A,B), where A is of the given type ', 00410 $ / ' and B is a random well-conditioned matrix. D is ', 00411 $ / ' diagonal, and Z is unitary. )', 00412 $ / ' 1 = CHEGV, with ITYPE=1 and UPLO=''U'':', 00413 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ', 00414 $ / ' 2 = CHPGV, with ITYPE=1 and UPLO=''U'':', 00415 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ', 00416 $ / ' 3 = CHBGV, with ITYPE=1 and UPLO=''U'':', 00417 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ', 00418 $ / ' 4 = CHEGV, with ITYPE=1 and UPLO=''L'':', 00419 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ', 00420 $ / ' 5 = CHPGV, with ITYPE=1 and UPLO=''L'':', 00421 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ', 00422 $ / ' 6 = CHBGV, with ITYPE=1 and UPLO=''L'':', 00423 $ ' | A Z - B Z D | / ( |A| |Z| n ulp ) ' ) 00424 9974 FORMAT( ' 7 = CHEGV, with ITYPE=2 and UPLO=''U'':', 00425 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ', 00426 $ / ' 8 = CHPGV, with ITYPE=2 and UPLO=''U'':', 00427 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ', 00428 $ / ' 9 = CHPGV, with ITYPE=2 and UPLO=''L'':', 00429 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ', 00430 $ / '10 = CHPGV, with ITYPE=2 and UPLO=''L'':', 00431 $ ' | A B Z - Z D | / ( |A| |Z| n ulp ) ', 00432 $ / '11 = CHEGV, with ITYPE=3 and UPLO=''U'':', 00433 $ ' | B A Z - Z D | / ( |A| |Z| n ulp ) ', 00434 $ / '12 = CHPGV, with ITYPE=3 and UPLO=''U'':', 00435 $ ' | B A Z - Z D | / ( |A| |Z| n ulp ) ', 00436 $ / '13 = CHEGV, with ITYPE=3 and UPLO=''L'':', 00437 $ ' | B A Z - Z D | / ( |A| |Z| n ulp ) ', 00438 $ / '14 = CHPGV, with ITYPE=3 and UPLO=''L'':', 00439 $ ' | B A Z - Z D | / ( |A| |Z| n ulp ) ' ) 00440 * 00441 * Singular Value Decomposition 00442 * 00443 9973 FORMAT( ' Matrix types (see xCHKBD for details):', 00444 $ / ' Diagonal matrices:', / ' 1: Zero', 28X, 00445 $ ' 5: Clustered entries', / ' 2: Identity', 24X, 00446 $ ' 6: Large, evenly spaced entries', 00447 $ / ' 3: Evenly spaced entries', 11X, 00448 $ ' 7: Small, evenly spaced entries', 00449 $ / ' 4: Geometrically spaced entries', 00450 $ / ' General matrices:', / ' 8: Evenly spaced sing. vals.', 00451 $ 7X, '12: Small, evenly spaced sing vals', 00452 $ / ' 9: Geometrically spaced sing vals ', 00453 $ '13: Random, O(1) entries', / ' 10: Clustered sing. vals.', 00454 $ 11X, '14: Random, scaled near overflow', 00455 $ / ' 11: Large, evenly spaced sing vals ', 00456 $ '15: Random, scaled near underflow' ) 00457 * 00458 9972 FORMAT( / ' Test ratios: ', 00459 $ '(B: bidiagonal, S: diagonal, Q, P, U, and V: ', A10, / 16X, 00460 $ 'X: m x nrhs, Y = Q'' X, and Z = U'' Y)', 00461 $ / ' 1: norm( A - Q B P'' ) / ( norm(A) max(m,n) ulp )', 00462 $ / ' 2: norm( I - Q'' Q ) / ( m ulp )', 00463 $ / ' 3: norm( I - P'' P ) / ( n ulp )', 00464 $ / ' 4: norm( B - U S V'' ) / ( norm(B) min(m,n) ulp )', / 00465 $ ' 5: norm( Y - U Z ) / ( norm(Z) max(min(m,n),k) ulp )' 00466 $ , / ' 6: norm( I - U'' U ) / ( min(m,n) ulp )', 00467 $ / ' 7: norm( I - V'' V ) / ( min(m,n) ulp )' ) 00468 9971 FORMAT( ' 8: Test ordering of S (0 if nondecreasing, 1/ulp ', 00469 $ ' otherwise)', / 00470 $ ' 9: norm( S - S2 ) / ( norm(S) ulp ),', 00471 $ ' where S2 is computed', / 44X, 00472 $ 'without computing U and V''', 00473 $ / ' 10: Sturm sequence test ', 00474 $ '(0 if sing. vals of B within THRESH of S)', 00475 $ / ' 11: norm( A - (QU) S (V'' P'') ) / ', 00476 $ '( norm(A) max(m,n) ulp )', / 00477 $ ' 12: norm( X - (QU) Z ) / ( |X| max(M,k) ulp )', 00478 $ / ' 13: norm( I - (QU)''(QU) ) / ( M ulp )', 00479 $ / ' 14: norm( I - (V'' P'') (P V) ) / ( N ulp )' ) 00480 * 00481 * Band reduction to bidiagonal form 00482 * 00483 9970 FORMAT( ' Matrix types (see xCHKBB for details):', 00484 $ / ' Diagonal matrices:', / ' 1: Zero', 28X, 00485 $ ' 5: Clustered entries', / ' 2: Identity', 24X, 00486 $ ' 6: Large, evenly spaced entries', 00487 $ / ' 3: Evenly spaced entries', 11X, 00488 $ ' 7: Small, evenly spaced entries', 00489 $ / ' 4: Geometrically spaced entries', 00490 $ / ' General matrices:', / ' 8: Evenly spaced sing. vals.', 00491 $ 7X, '12: Small, evenly spaced sing vals', 00492 $ / ' 9: Geometrically spaced sing vals ', 00493 $ '13: Random, O(1) entries', / ' 10: Clustered sing. vals.', 00494 $ 11X, '14: Random, scaled near overflow', 00495 $ / ' 11: Large, evenly spaced sing vals ', 00496 $ '15: Random, scaled near underflow' ) 00497 * 00498 9969 FORMAT( / ' Test ratios: ', '(B: upper bidiagonal, Q and P: ', 00499 $ A10, / 16X, 'C: m x nrhs, PT = P'', Y = Q'' C)', 00500 $ / ' 1: norm( A - Q B PT ) / ( norm(A) max(m,n) ulp )', 00501 $ / ' 2: norm( I - Q'' Q ) / ( m ulp )', 00502 $ / ' 3: norm( I - PT PT'' ) / ( n ulp )', 00503 $ / ' 4: norm( Y - Q'' C ) / ( norm(Y) max(m,nrhs) ulp )' ) 00504 9968 FORMAT( / ' Tests performed: See sdrvst.f' ) 00505 9967 FORMAT( / ' Tests performed: See cdrvst.f' ) 00506 * 00507 * End of SLAHD2 00508 * 00509 END