Computes the eigenvalues and eigenvectors of a real symmetric matrix.
For a list of all members of this type, see SymEigen Members.
System.Object
Imsl.Math.SymEigen
Public static (Shared in Visual Basic) members of this type are safe for multithreaded operations. Instance members are not guaranteed to be thread-safe.
Orthogonal similarity transformations are used to reduce the matrix to an equivalent symmetric tridiagonal matrix. These transformations are accumulated. An implicit rational QR algorithm is used to compute the eigenvalues of this tridiagonal matrix. The eigenvectors are computed using the eigenvalues as perfect shifts, Parlett (1980, pages 169, 172). The reduction routine is based on the EISPACK routine TRED2
. See Smith et al. (1976) for the EISPACK routines. Further details, some timing data, and credits are given in Hanson et al. (1990).
Let M = the number of eigenvalues, = the array of eigenvalues, and is the associated eigenvector with jth eigenvalue.
Also, let be the machine precision. The performance index, , is defined to be
While the exact value of is highly machine dependent, the performance of SymEigen
is considered excellent if , good if , and poor if . The performance index was first developed by the EISPACK project at Argonne National Laboratory; see Smith et al. (1976, pages 124-125).
Namespace: Imsl.Math
Assembly: ImslCS (in ImslCS.dll)
SymEigen Members | Imsl.Math Namespace | Example