zget52.f - Man Page

TESTING/EIG/zget52.f

Synopsis

Functions/Subroutines

subroutine zget52 (left, n, a, lda, b, ldb, e, lde, alpha, beta, work, rwork, result)
ZGET52

Function/Subroutine Documentation

subroutine zget52 (logical left, integer n, complex*16, dimension( lda, * ) a, integer lda, complex*16, dimension( ldb, * ) b, integer ldb, complex*16, dimension( lde, * ) e, integer lde, complex*16, dimension( * ) alpha, complex*16, dimension( * ) beta, complex*16, dimension( * ) work, double precision, dimension( * ) rwork, double precision, dimension( 2 ) result)

ZGET52

Purpose:

 ZGET52  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.

 ZGET52 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)
Parameters

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.

N

          N is INTEGER
          The size of the matrices.  If it is zero, ZGET52 does
          nothing.  It must be at least zero.

A

          A is COMPLEX*16 array, dimension (LDA, N)
          The matrix A.

LDA

          LDA is INTEGER
          The leading dimension of A.  It must be at least 1
          and at least N.

B

          B is COMPLEX*16 array, dimension (LDB, N)
          The matrix B.

LDB

          LDB is INTEGER
          The leading dimension of B.  It must be at least 1
          and at least N.

E

          E is COMPLEX*16 array, dimension (LDE, N)
          The matrix of eigenvectors.  It must be O( 1 ).

LDE

          LDE is INTEGER
          The leading dimension of E.  It must be at least 1 and at
          least N.

ALPHA

          ALPHA is COMPLEX*16 array, dimension (N)
          The values a(i) as described above, which, along with b(i),
          define the generalized eigenvalues.

BETA

          BETA is COMPLEX*16 array, dimension (N)
          The values b(i) as described above, which, along with a(i),
          define the generalized eigenvalues.

WORK

          WORK is COMPLEX*16 array, dimension (N**2)

RWORK

          RWORK is DOUBLE PRECISION array, dimension (N)

RESULT

          RESULT is DOUBLE PRECISION 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.
Author

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 160 of file zget52.f.

Author

Generated automatically by Doxygen for LAPACK from the source code.

Referenced By

The man page zget52(3) is an alias of zget52.f(3).

Tue Nov 28 2023 12:08:42 Version 3.12.0 LAPACK