---
name: "zget54.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/zget54.f"
---

# zget54.f(3)

## NAME

TESTING/EIG/zget54.f

## SYNOPSIS

### Functions/Subroutines

subroutine **zget54** (n, a, lda, b, ldb, s, lds, t, ldt, u, ldu, v, ldv, work, result)\
 **ZGET54**

## Function/Subroutine Documentation

### subroutine zget54 (integer n, complex\*16, dimension( lda, \* ) a, integer lda, complex\*16, dimension( ldb, \* ) b, integer ldb, complex\*16, dimension( lds, \* ) s, integer lds, complex\*16, dimension( ldt, \* ) t, integer ldt, complex\*16, dimension( ldu, \* ) u, integer ldu, complex\*16, dimension( ldv, \* ) v, integer ldv, complex\*16, dimension( \* ) work, double precision result)

**ZGET54**

**Purpose:**

```
!>
!> ZGET54 checks a generalized decomposition of the form
!>
!>          A = U*S*V'  and B = U*T* V'
!>
!> where ' means conjugate transpose and U and V are unitary.
!>
!> Specifically,
!>
!>   RESULT = ||( A - U*S*V', B - U*T*V' )|| / (||( A, B )||*n*ulp )
!>
```

**Parameters**

*N*

```
!>          N is INTEGER
!>          The size of the matrix.  If it is zero, DGET54 does nothing.
!>          It must be at least zero.
!>
```

*A*

```
!>          A is COMPLEX*16 array, dimension (LDA, N)
!>          The original (unfactored) 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 original (unfactored) matrix B.
!>
```

*LDB*

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

*S*

```
!>          S is COMPLEX*16 array, dimension (LDS, N)
!>          The factored matrix S.
!>
```

*LDS*

```
!>          LDS is INTEGER
!>          The leading dimension of S.  It must be at least 1
!>          and at least N.
!>
```

*T*

```
!>          T is COMPLEX*16 array, dimension (LDT, N)
!>          The factored matrix T.
!>
```

*LDT*

```
!>          LDT is INTEGER
!>          The leading dimension of T.  It must be at least 1
!>          and at least N.
!>
```

*U*

```
!>          U is COMPLEX*16 array, dimension (LDU, N)
!>          The orthogonal matrix on the left-hand side in the
!>          decomposition.
!>
```

*LDU*

```
!>          LDU is INTEGER
!>          The leading dimension of U.  LDU must be at least N and
!>          at least 1.
!>
```

*V*

```
!>          V is COMPLEX*16 array, dimension (LDV, N)
!>          The orthogonal matrix on the left-hand side in the
!>          decomposition.
!>
```

*LDV*

```
!>          LDV is INTEGER
!>          The leading dimension of V.  LDV must be at least N and
!>          at least 1.
!>
```

*WORK*

```
!>          WORK is COMPLEX*16 array, dimension (3*N**2)
!>
```

*RESULT*

```
!>          RESULT is DOUBLE PRECISION
!>          The value RESULT, It is currently limited to 1/ulp, to
!>          avoid overflow. Errors are flagged by RESULT=10/ulp.
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **154** of file **zget54.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.
