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

# cupgtr(3)

Part of [cupgtr.f(3)](/cupgtr.f/3.md).

## NAME

SRC/cupgtr.f

## SYNOPSIS

### Functions/Subroutines

subroutine **cupgtr** (uplo, n, ap, tau, q, ldq, work, info)\
 **CUPGTR**

## Function/Subroutine Documentation

### subroutine cupgtr (character uplo, integer n, complex, dimension( \* ) ap, complex, dimension( \* ) tau, complex, dimension( ldq, \* ) q, integer ldq, complex, dimension( \* ) work, integer info)

**CUPGTR**

**Purpose:**

```
!>
!> CUPGTR generates a complex unitary matrix Q which is defined as the
!> product of n-1 elementary reflectors H(i) of order n, as returned by
!> CHPTRD using packed storage:
!>
!> if UPLO = 'U', Q = H(n-1) . . . H(2) H(1),
!>
!> if UPLO = 'L', Q = H(1) H(2) . . . H(n-1).
!>
```

**Parameters**

*UPLO*

```
!>          UPLO is CHARACTER*1
!>          = 'U': Upper triangular packed storage used in previous
!>                 call to CHPTRD;
!>          = 'L': Lower triangular packed storage used in previous
!>                 call to CHPTRD.
!>
```

*N*

```
!>          N is INTEGER
!>          The order of the matrix Q. N >= 0.
!>
```

*AP*

```
!>          AP is COMPLEX array, dimension (N*(N+1)/2)
!>          The vectors which define the elementary reflectors, as
!>          returned by CHPTRD.
!>
```

*TAU*

```
!>          TAU is COMPLEX array, dimension (N-1)
!>          TAU(i) must contain the scalar factor of the elementary
!>          reflector H(i), as returned by CHPTRD.
!>
```

*Q*

```
!>          Q is COMPLEX array, dimension (LDQ,N)
!>          The N-by-N unitary matrix Q.
!>
```

*LDQ*

```
!>          LDQ is INTEGER
!>          The leading dimension of the array Q. LDQ >= max(1,N).
!>
```

*WORK*

```
!>          WORK is COMPLEX array, dimension (N-1)
!>
```

*INFO*

```
!>          INFO is INTEGER
!>          = 0:  successful exit
!>          < 0:  if INFO = -i, the i-th argument had an illegal value
!>
```

**Author**

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line **113** of file **cupgtr.f**.

## Author

Generated automatically by Doxygen for LAPACK from the source code.
