.TH "TESTING/EIG/zget52.f" 3 "Version 3.12.0" "LAPACK" \" -*- nroff -*- .ad l .nh .SH NAME TESTING/EIG/zget52.f .SH SYNOPSIS .br .PP .SS "Functions/Subroutines" .in +1c .ti -1c .RI "subroutine \fBzget52\fP (left, n, a, lda, b, ldb, e, \fBlde\fP, alpha, beta, work, rwork, result)" .br .RI "\fBZGET52\fP " .in -1c .SH "Function/Subroutine Documentation" .PP .SS "subroutine zget52 (logical left, integer n, complex*16, dimension( lda, * ) a, integer lda, complex*16, dimension( ldb, * ) b, integer ldb, complex*16, dimension( \fBlde\fP, * ) e, integer lde, complex*16, dimension( * ) alpha, complex*16, dimension( * ) beta, complex*16, dimension( * ) work, double precision, dimension( * ) rwork, double precision, dimension( 2 ) result)" .PP \fBZGET52\fP .PP \fBPurpose:\fP .RS 4 .PP .nf !> !> 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 !> of its elements is 1, where in this case, !> of a complex value x is |Re(x)| + |Im(x)| ; let us call this !> maximum 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) !> !> .fi .PP .RE .PP \fBParameters\fP .RS 4 \fILEFT\fP .PP .nf !> 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\&. !> .fi .PP .br \fIN\fP .PP .nf !> N is INTEGER !> The size of the matrices\&. If it is zero, ZGET52 does !> nothing\&. It must be at least zero\&. !> .fi .PP .br \fIA\fP .PP .nf !> A is COMPLEX*16 array, dimension (LDA, N) !> The matrix A\&. !> .fi .PP .br \fILDA\fP .PP .nf !> LDA is INTEGER !> The leading dimension of A\&. It must be at least 1 !> and at least N\&. !> .fi .PP .br \fIB\fP .PP .nf !> B is COMPLEX*16 array, dimension (LDB, N) !> The matrix B\&. !> .fi .PP .br \fILDB\fP .PP .nf !> LDB is INTEGER !> The leading dimension of B\&. It must be at least 1 !> and at least N\&. !> .fi .PP .br \fIE\fP .PP .nf !> E is COMPLEX*16 array, dimension (LDE, N) !> The matrix of eigenvectors\&. It must be O( 1 )\&. !> .fi .PP .br \fILDE\fP .PP .nf !> LDE is INTEGER !> The leading dimension of E\&. It must be at least 1 and at !> least N\&. !> .fi .PP .br \fIALPHA\fP .PP .nf !> ALPHA is COMPLEX*16 array, dimension (N) !> The values a(i) as described above, which, along with b(i), !> define the generalized eigenvalues\&. !> .fi .PP .br \fIBETA\fP .PP .nf !> BETA is COMPLEX*16 array, dimension (N) !> The values b(i) as described above, which, along with a(i), !> define the generalized eigenvalues\&. !> .fi .PP .br \fIWORK\fP .PP .nf !> WORK is COMPLEX*16 array, dimension (N**2) !> .fi .PP .br \fIRWORK\fP .PP .nf !> RWORK is DOUBLE PRECISION array, dimension (N) !> .fi .PP .br \fIRESULT\fP .PP .nf !> 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\&. !> .fi .PP .RE .PP \fBAuthor\fP .RS 4 Univ\&. of Tennessee .PP Univ\&. of California Berkeley .PP Univ\&. of Colorado Denver .PP NAG Ltd\&. .RE .PP .PP Definition at line \fB160\fP of file \fBzget52\&.f\fP\&. .SH "Author" .PP Generated automatically by Doxygen for LAPACK from the source code\&.