![]() |
LAPACK
3.9.0
LAPACK: Linear Algebra PACKage
|
| subroutine cget52 | ( | logical | LEFT, |
| integer | N, | ||
| complex, dimension( lda, * ) | A, | ||
| integer | LDA, | ||
| complex, dimension( ldb, * ) | B, | ||
| integer | LDB, | ||
| complex, dimension( lde, * ) | E, | ||
| integer | LDE, | ||
| complex, dimension( * ) | ALPHA, | ||
| complex, dimension( * ) | BETA, | ||
| complex, dimension( * ) | WORK, | ||
| real, dimension( * ) | RWORK, | ||
| real, dimension( 2 ) | RESULT | ||
| ) |
CGET52
CGET52 does an eigenvector check for the generalized eigenvalue
problem.
The basic test for right eigenvectors is:
| b(i) A E(i) - a(i) B E(i) |
RESULT(1) = max -------------------------------
i n ulp max( |b(i) A|, |a(i) B| )
using the 1-norm. Here, a(i)/b(i) = w is the i-th generalized
eigenvalue of A - w B, or, equivalently, b(i)/a(i) = m is the i-th
generalized eigenvalue of m A - B.
H H _ _
For left eigenvectors, A , B , a, and b are used.
CGET52 also tests the normalization of E. Each eigenvector is
supposed to be normalized so that the maximum "absolute value"
of its elements is 1, where in this case, "absolute value"
of a complex value x is |Re(x)| + |Im(x)| ; let us call this
maximum "absolute value" norm of a vector v M(v).
if a(i)=b(i)=0, then the eigenvector is set to be the jth coordinate
vector. The normalization test is:
RESULT(2) = max | M(v(i)) - 1 | / ( n ulp )
eigenvectors v(i) | [in] | LEFT | LEFT is LOGICAL
=.TRUE.: The eigenvectors in the columns of E are assumed
to be *left* eigenvectors.
=.FALSE.: The eigenvectors in the columns of E are assumed
to be *right* eigenvectors. |
| [in] | N | N is INTEGER
The size of the matrices. If it is zero, CGET52 does
nothing. It must be at least zero. |
| [in] | A | A is COMPLEX array, dimension (LDA, N)
The matrix A. |
| [in] | LDA | LDA is INTEGER
The leading dimension of A. It must be at least 1
and at least N. |
| [in] | B | B is COMPLEX array, dimension (LDB, N)
The matrix B. |
| [in] | LDB | LDB is INTEGER
The leading dimension of B. It must be at least 1
and at least N. |
| [in] | E | E is COMPLEX array, dimension (LDE, N)
The matrix of eigenvectors. It must be O( 1 ). |
| [in] | LDE | LDE is INTEGER
The leading dimension of E. It must be at least 1 and at
least N. |
| [in] | ALPHA | ALPHA is COMPLEX array, dimension (N)
The values a(i) as described above, which, along with b(i),
define the generalized eigenvalues. |
| [in] | BETA | BETA is COMPLEX array, dimension (N)
The values b(i) as described above, which, along with a(i),
define the generalized eigenvalues. |
| [out] | WORK | WORK is COMPLEX array, dimension (N**2) |
| [out] | RWORK | RWORK is REAL array, dimension (N) |
| [out] | RESULT | RESULT is REAL array, dimension (2)
The values computed by the test described above. If A E or
B E is likely to overflow, then RESULT(1:2) is set to
10 / ulp. |
Definition at line 163 of file cget52.f.