An annotated example of an input file for testing the singular value decomposition routines and driver routine is shown below.
SVD: Data file for testing Singular Value Decomposition routines 19 Number of values of M 0 0 0 1 1 1 2 2 3 3 3 10 10 16 16 30 30 50 50 Values of M 0 1 3 0 1 2 0 1 0 1 3 10 16 10 16 30 50 30 50 Values of N 5 Number of parameter values 1 3 3 3 20 Values of NB (blocksize) 2 2 2 2 2 Values of NBMIN (minimum blocksize) 1 0 5 9 1 Values of NX (crossover point) 2 0 2 2 2 Values of NRHS 35.0 Threshold value T Put T to test the LAPACK routines T Put T to test the driver routines T Put T to test the error exits 1 Code to interpret the seed SVD 16
The first line of the input file must contain the characters SVD in columns 1-3. Lines 2-14 are read using list-directed input and specify the following values:
| line 2: | The number of values of M and N |
| line 3: | The values of M, the matrix row dimension |
| line 4: | The values of N, the matrix column dimension |
| line 5: | The number of values of the parameters NB, NBMIN, NX, NRHS |
| line 6: | The values of NB, the blocksize |
| line 7: | The values of NBMIN, the minimum blocksize |
| line 8: | The values of NX, the crossover point |
| line 9: | The values of NRHS, the number of right hand sides |
| line 10: | The threshold value for the test ratios |
| line 11: | TSTCHK, the flag to test LAPACK routines |
| line 12: | TSTDRV, the flag to test driver routines |
| line 13: | TSTERR, the flag to test error exits from the LAPACK and driver routines |
| line 14: | An integer code to interpret the random number seed. |
| = 0: Set the seed to a default value before each run | |
| = 1: Initialize the seed to a default value only before the first run | |
| = 2: Like 1, but use the seed values on the next line | |
| line 15: | If line 14 was 2, four integer values for the random number seed |
The remaining lines are used to specify the matrix types for one or more sets of tests, as in the nonsymmetric case. The valid 3-character codes are SVD or SBD (CBD in complex, DBD in double precision, and ZBD in complex*16).