LAPACK 3.12.0
LAPACK: Linear Algebra PACKage
|
subroutine sget53 | ( | real, dimension( lda, * ) | a, |
integer | lda, | ||
real, dimension( ldb, * ) | b, | ||
integer | ldb, | ||
real | scale, | ||
real | wr, | ||
real | wi, | ||
real | result, | ||
integer | info | ||
) |
SGET53
SGET53 checks the generalized eigenvalues computed by SLAG2. The basic test for an eigenvalue is: | det( s A - w B ) | RESULT = --------------------------------------------------- ulp max( s norm(A), |w| norm(B) )*norm( s A - w B ) Two "safety checks" are performed: (1) ulp*max( s*norm(A), |w|*norm(B) ) must be at least safe_minimum. This insures that the test performed is not essentially det(0*A + 0*B)=0. (2) s*norm(A) + |w|*norm(B) must be less than 1/safe_minimum. This insures that s*A - w*B will not overflow. If these tests are not passed, then s and w are scaled and tested anyway, if this is possible.
[in] | A | A is REAL array, dimension (LDA, 2) The 2x2 matrix A. |
[in] | LDA | LDA is INTEGER The leading dimension of A. It must be at least 2. |
[in] | B | B is REAL array, dimension (LDB, N) The 2x2 upper-triangular matrix B. |
[in] | LDB | LDB is INTEGER The leading dimension of B. It must be at least 2. |
[in] | SCALE | SCALE is REAL The "scale factor" s in the formula s A - w B . It is assumed to be non-negative. |
[in] | WR | WR is REAL The real part of the eigenvalue w in the formula s A - w B . |
[in] | WI | WI is REAL The imaginary part of the eigenvalue w in the formula s A - w B . |
[out] | RESULT | RESULT is REAL If INFO is 2 or less, the value computed by the test described above. If INFO=3, this will just be 1/ulp. |
[out] | INFO | INFO is INTEGER =0: The input data pass the "safety checks". =1: s*norm(A) + |w|*norm(B) > 1/safe_minimum. =2: ulp*max( s*norm(A), |w|*norm(B) ) < safe_minimum =3: same as INFO=2, but s and w could not be scaled so as to compute the test. |
Definition at line 125 of file sget53.f.