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

# sget51.f(3)

## NAME

TESTING/EIG/sget51.f

## SYNOPSIS

### Functions/Subroutines

subroutine **sget51** (itype, n, a, lda, b, ldb, u, ldu, v, ldv, work, result)\
 **SGET51**

## Function/Subroutine Documentation

### subroutine sget51 (integer itype, integer n, real, dimension( lda, \* ) a, integer lda, real, dimension( ldb, \* ) b, integer ldb, real, dimension( ldu, \* ) u, integer ldu, real, dimension( ldv, \* ) v, integer ldv, real, dimension( \* ) work, real result)

**SGET51**

**Purpose:**

```
!>
!>      SGET51  generally checks a decomposition of the form
!>
!>              A = U B V'
!>
!>      where ' means transpose and U and V are orthogonal.
!>
!>      Specifically, if ITYPE=1
!>
!>              RESULT = | A - U B V' | / ( |A| n ulp )
!>
!>      If ITYPE=2, then:
!>
!>              RESULT = | A - B | / ( |A| n ulp )
!>
!>      If ITYPE=3, then:
!>
!>              RESULT = | I - UU' | / ( n ulp )
!>
```

**Parameters**

*ITYPE*

```
!>          ITYPE is INTEGER
!>          Specifies the type of tests to be performed.
!>          =1: RESULT = | A - U B V' | / ( |A| n ulp )
!>          =2: RESULT = | A - B | / ( |A| n ulp )
!>          =3: RESULT = | I - UU' | / ( n ulp )
!>
```

*N*

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

*A*

```
!>          A is REAL array, dimension (LDA, N)
!>          The original (unfactored) matrix.
!>
```

*LDA*

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

*B*

```
!>          B is REAL array, dimension (LDB, N)
!>          The factored matrix.
!>
```

*LDB*

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

*U*

```
!>          U is REAL array, dimension (LDU, N)
!>          The orthogonal matrix on the left-hand side in the
!>          decomposition.
!>          Not referenced if ITYPE=2
!>
```

*LDU*

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

*V*

```
!>          V is REAL array, dimension (LDV, N)
!>          The orthogonal matrix on the left-hand side in the
!>          decomposition.
!>          Not referenced if ITYPE=2
!>
```

*LDV*

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

*WORK*

```
!>          WORK is REAL array, dimension (2*N**2)
!>
```

*RESULT*

```
!>          RESULT is REAL
!>          The values computed by the test specified by ITYPE.  The
!>          value 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 **147** of file **sget51.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.
