test_eigen, a Python code which generates random real symmetric and nonsymmetric matrices with known eigenvalues and eigenvectors, to test eigenvalue algorithms.

The current version of the code can only generate a symmetric or nonsymmetric matrix of arbitrary size, with real eigenvalues distributed according to a normal distribution whose mean and standard deviation are specified by the user in routines R8SYMM_GEN() and R8NSYMM_GEN().


The information on this web page is distributed under the MIT license.


test_eigen is available in a C version and a C++ version and a Fortran77 version and a Fortran90 version and a MATLAB version and an Octave version and a Python version.

Related Data and Programs:

jacobi_eigenvalue, a Python code which implements the Jacobi iteration for the iterative determination of the eigenvalues and eigenvectors of a real symmetric matrix.

test_matrix, a Python code which defines test matrices.


  1. Robert Gregory, David Karney,
    A Collection of Matrices for Testing Computational Algorithms,
    Wiley, 1969,
    ISBN: 0882756494,
    LC: QA263.G68.
  2. 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:

Last revised on 03 July 2017.