TEST_EIGEN
Test Matrices for Eigenvalue Analysis
TEST_EIGEN
is a C++ library which
generates eigenvalue tests.
The current version of the code can only generate a symmetric
matrix with eigenvalues distributed according to a normal
distribution whose mean and standard deviation are specified
by the user (subroutine SYMM_TEST).
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
TEST_EIGEN is available in
a C version and
a C++ version and
a FORTRAN77 version and
a FORTRAN90 version and
a MATLAB version.
Related Data and Programs:
EISPACK,
a C++ library which
carries out eigenvalue computations.
It includes a function to compute the singular value decomposition (SVD)
of a rectangular matrix.
superseded by LAPACK;
JACOBI_EIGENVALUE,
a C++ library which
implements the Jacobi iteration for the iterative determination
of the eigenvalues and eigenvectors of a real symmetric matrix.
POWER_METHOD,
a C++ library which
carries out the power method for finding a dominant eigenvalue
and its eigenvector.
TEST_MAT,
a C++ library which
defines test matrices.
TOMS343,
a FORTRAN77 library which
computes the eigenvalues and
eigenvectors of a general real matrix;
this is a FORTRAN77 version of ACM TOMS algorithm 343.
TOMS384,
a FORTRAN77 library which
computes the eigenvalues and eigenvectors
of a symmetric matrix;
this is a FORTRAN77 version of ACM TOMS algorithm 384.
Reference:
-
Robert Gregory, David Karney,
A Collection of Matrices for Testing Computational Algorithms,
Wiley, 1969,
ISBN: 0882756494,
LC: QA263.G68.
-
Pete Stewart,
Efficient Generation of Random Orthogonal Matrices With an Application
to Condition Estimators,
SIAM Journal on Numerical Analysis,
Volume 17, Number 3, June 1980, pages 403-409.
Source Code:
Examples and Tests:
List of Routines:
-
I4_MAX returns the maximum of two I4's.
-
I4_MIN returns the minimum of two I4's.
-
R8_ABS returns the absolute value of an R8.
-
R8_NORMAL_01 samples the standard normal probability distribution.
-
R8_SIGN returns the sign of an R8.
-
R8_UNIFORM_01 returns a unit pseudorandom R8.
-
R8BIN_PRINT prints the bins of a real vector.
-
R8MAT_COPY copies one R8MAT to another.
-
R8MAT_HOUSE_AXH_NEW computes A*H where H is a compact Householder matrix.
-
R8MAT_IDENTITY returns an identity matrix.
-
R8MAT_MM_NEW multiplies two matrices.
-
R8MAT_ORTH_UNIFORM returns a random orthogonal matrix.
-
R8MAT_PRINT prints an R8MAT.
-
R8MAT_PRINT_SOME prints some of an R8MAT.
-
R8SYMM_TEST determines a symmetric matrix with a certain eigenstructure.
-
R8VEC_BIN computes bins based on a given R8VEC.
-
R8VEC_COPY copies an R8VEC.
-
R8VEC_HOUSE_COLUMN defines a Householder premultiplier that "packs" a column.
-
R8VEC_MAX returns the value of the maximum element in an R8VEC.
-
R8VEC_MIN returns the value of the minimum element in an R8VEC.
-
R8VEC_NORM_L2 returns the L2 norm of an R8VEC.
-
R8VEC_NORMAL returns a scaled pseudonormal R8VEC.
-
R8VEC_PRINT prints an R8VEC.
-
R8VEC_UNIFORM_01_NEW returns a new unit pseudorandom R8VEC.
-
R8VEC_ZERO_NEW creates and zeroes an R8VEC.
-
R8VEC2_PRINT prints an R8VEC2.
-
TIMESTAMP prints the current YMDHMS date as a time stamp.
You can go up one level to
the C++ source codes.
Last revised on 22 February 2012.