---
name: "zget52.f"
section: "3"
platform: "linux"
package: "lapack-doc"
version: "3.12.1-2"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/zget52.f"
---

# zget52.f(3)

## NAME

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
!> 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)
!>
!>
```

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