SymEigen Class |
Namespace: Imsl.Math
The SymEigen type exposes the following members.
Name | Description | |
---|---|---|
SymEigen(Double) |
Constructs the eigenvalues and the eigenvectors for a real symmetric
matrix.
| |
SymEigen(Double, Boolean) |
Constructs the eigenvalues and (optionally) the eigenvectors for a
real symmetric matrix.
|
Name | Description | |
---|---|---|
Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetValues |
Returns the eigenvalues.
| |
GetVectors |
Return the eigenvectors of a symmetric matrix of type double.
| |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
PerformanceIndex |
Returns the performance index of a real symmetric eigensystem.
| |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
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).