DCKCSD

   Originally DCKGSV
   Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd..
   November 2006

   Adapted to DCKCSD
   July 2010

Purpose

DCKCSD tests DORCSD:
       the CSD for an M-by-M orthogonal matrix X partitioned as
       [ X11 X12; X21 X22 ]. X11 is P-by-Q.

Arguments

NM
(input) INTEGER
The number of values of M contained in the vector MVAL.
MVAL
(input) INTEGER array, dimension (NM)
The values of the matrix row dimension M.
PVAL
(input) INTEGER array, dimension (NM)
The values of the matrix row dimension P.
QVAL
(input) INTEGER array, dimension (NM)
The values of the matrix column dimension Q.
NMATS
(input) INTEGER
The number of matrix types to be tested for each combination
of matrix dimensions.  If NMATS >= NTYPES (the maximum
number of matrix types), then all the different types are
generated for testing.  If NMATS < NTYPES, another input line
is read to get the numbers of the matrix types to be used.
ISEED
(input/output) INTEGER array, dimension (4)
On entry, the seed of the random number generator.  The array
elements should be between 0 and 4095, otherwise they will be
reduced mod 4096, and ISEED(4) must be odd.
On exit, the next seed in the random number sequence after
all the test matrices have been generated.
THRESH
(input) DOUBLE PRECISION
The threshold value for the test ratios.  A result is
included in the output file if RESULT >= THRESH.  To have
every test ratio printed, use THRESH = 0.
MMAX
(input) INTEGER
The maximum value permitted for M, used in dimensioning the
work arrays.
X
(workspace) DOUBLE PRECISION array, dimension (MMAX*MMAX)
XF
(workspace) DOUBLE PRECISION array, dimension (MMAX*MMAX)
U1
(workspace) DOUBLE PRECISION array, dimension (MMAX*MMAX)
U2
(workspace) DOUBLE PRECISION array, dimension (MMAX*MMAX)
V1T
(workspace) DOUBLE PRECISION array, dimension (MMAX*MMAX)
V2T
(workspace) DOUBLE PRECISION array, dimension (MMAX*MMAX)
THETA
(workspace) DOUBLE PRECISION array, dimension (MMAX)
IWORK
(workspace) INTEGER array, dimension (MMAX)
WORK
(workspace) DOUBLE PRECISION array
RWORK
(workspace) DOUBLE PRECISION array
NIN
(input) INTEGER
The unit number for input.
NOUT
(input) INTEGER
The unit number for output.
INFO
(output) INTEGER
= 0 :  successful exit
> 0 :  If DLAROR returns an error code, the absolute value
       of it is returned.

Call Graph

Caller Graph