# ungr2 - Man Page

{un,or}gr2: step in ungrq

## Synopsis

### Functions

subroutine cungr2 (m, n, k, a, lda, tau, work, info)
CUNGR2 generates all or part of the unitary matrix Q from an RQ factorization determined by cgerqf (unblocked algorithm).
subroutine dorgr2 (m, n, k, a, lda, tau, work, info)
DORGR2 generates all or part of the orthogonal matrix Q from an RQ factorization determined by sgerqf (unblocked algorithm).
subroutine sorgr2 (m, n, k, a, lda, tau, work, info)
SORGR2 generates all or part of the orthogonal matrix Q from an RQ factorization determined by sgerqf (unblocked algorithm).
subroutine zungr2 (m, n, k, a, lda, tau, work, info)
ZUNGR2 generates all or part of the unitary matrix Q from an RQ factorization determined by cgerqf (unblocked algorithm).

## Function Documentation

### subroutine cungr2 (integer m, integer n, integer k, complex, dimension( lda, * ) a, integer lda, complex, dimension( * ) tau, complex, dimension( * ) work, integer info)

CUNGR2 generates all or part of the unitary matrix Q from an RQ factorization determined by cgerqf (unblocked algorithm).

Purpose:

``` CUNGR2 generates an m by n complex matrix Q with orthonormal rows,
which is defined as the last m rows of a product of k elementary
reflectors of order n

Q  =  H(1)**H H(2)**H . . . H(k)**H

as returned by CGERQF.```
Parameters

M

```          M is INTEGER
The number of rows of the matrix Q. M >= 0.```

N

```          N is INTEGER
The number of columns of the matrix Q. N >= M.```

K

```          K is INTEGER
The number of elementary reflectors whose product defines the
matrix Q. M >= K >= 0.```

A

```          A is COMPLEX array, dimension (LDA,N)
On entry, the (m-k+i)-th row must contain the vector which
defines the elementary reflector H(i), for i = 1,2,...,k, as
returned by CGERQF in the last k rows of its array argument
A.
On exit, the m-by-n matrix Q.```

LDA

```          LDA is INTEGER
The first dimension of the array A. LDA >= max(1,M).```

TAU

```          TAU is COMPLEX array, dimension (K)
TAU(i) must contain the scalar factor of the elementary
reflector H(i), as returned by CGERQF.```

WORK

`          WORK is COMPLEX array, dimension (M)`

INFO

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

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 113 of file cungr2.f.

### subroutine dorgr2 (integer m, integer n, integer k, double precision, dimension( lda, * ) a, integer lda, double precision, dimension( * ) tau, double precision, dimension( * ) work, integer info)

DORGR2 generates all or part of the orthogonal matrix Q from an RQ factorization determined by sgerqf (unblocked algorithm).

Purpose:

``` DORGR2 generates an m by n real matrix Q with orthonormal rows,
which is defined as the last m rows of a product of k elementary
reflectors of order n

Q  =  H(1) H(2) . . . H(k)

as returned by DGERQF.```
Parameters

M

```          M is INTEGER
The number of rows of the matrix Q. M >= 0.```

N

```          N is INTEGER
The number of columns of the matrix Q. N >= M.```

K

```          K is INTEGER
The number of elementary reflectors whose product defines the
matrix Q. M >= K >= 0.```

A

```          A is DOUBLE PRECISION array, dimension (LDA,N)
On entry, the (m-k+i)-th row must contain the vector which
defines the elementary reflector H(i), for i = 1,2,...,k, as
returned by DGERQF in the last k rows of its array argument
A.
On exit, the m by n matrix Q.```

LDA

```          LDA is INTEGER
The first dimension of the array A. LDA >= max(1,M).```

TAU

```          TAU is DOUBLE PRECISION array, dimension (K)
TAU(i) must contain the scalar factor of the elementary
reflector H(i), as returned by DGERQF.```

WORK

`          WORK is DOUBLE PRECISION array, dimension (M)`

INFO

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

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 113 of file dorgr2.f.

### subroutine sorgr2 (integer m, integer n, integer k, real, dimension( lda, * ) a, integer lda, real, dimension( * ) tau, real, dimension( * ) work, integer info)

SORGR2 generates all or part of the orthogonal matrix Q from an RQ factorization determined by sgerqf (unblocked algorithm).

Purpose:

``` SORGR2 generates an m by n real matrix Q with orthonormal rows,
which is defined as the last m rows of a product of k elementary
reflectors of order n

Q  =  H(1) H(2) . . . H(k)

as returned by SGERQF.```
Parameters

M

```          M is INTEGER
The number of rows of the matrix Q. M >= 0.```

N

```          N is INTEGER
The number of columns of the matrix Q. N >= M.```

K

```          K is INTEGER
The number of elementary reflectors whose product defines the
matrix Q. M >= K >= 0.```

A

```          A is REAL array, dimension (LDA,N)
On entry, the (m-k+i)-th row must contain the vector which
defines the elementary reflector H(i), for i = 1,2,...,k, as
returned by SGERQF in the last k rows of its array argument
A.
On exit, the m by n matrix Q.```

LDA

```          LDA is INTEGER
The first dimension of the array A. LDA >= max(1,M).```

TAU

```          TAU is REAL array, dimension (K)
TAU(i) must contain the scalar factor of the elementary
reflector H(i), as returned by SGERQF.```

WORK

`          WORK is REAL array, dimension (M)`

INFO

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

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 113 of file sorgr2.f.

### subroutine zungr2 (integer m, integer n, integer k, complex*16, dimension( lda, * ) a, integer lda, complex*16, dimension( * ) tau, complex*16, dimension( * ) work, integer info)

ZUNGR2 generates all or part of the unitary matrix Q from an RQ factorization determined by cgerqf (unblocked algorithm).

Purpose:

``` ZUNGR2 generates an m by n complex matrix Q with orthonormal rows,
which is defined as the last m rows of a product of k elementary
reflectors of order n

Q  =  H(1)**H H(2)**H . . . H(k)**H

as returned by ZGERQF.```
Parameters

M

```          M is INTEGER
The number of rows of the matrix Q. M >= 0.```

N

```          N is INTEGER
The number of columns of the matrix Q. N >= M.```

K

```          K is INTEGER
The number of elementary reflectors whose product defines the
matrix Q. M >= K >= 0.```

A

```          A is COMPLEX*16 array, dimension (LDA,N)
On entry, the (m-k+i)-th row must contain the vector which
defines the elementary reflector H(i), for i = 1,2,...,k, as
returned by ZGERQF in the last k rows of its array argument
A.
On exit, the m-by-n matrix Q.```

LDA

```          LDA is INTEGER
The first dimension of the array A. LDA >= max(1,M).```

TAU

```          TAU is COMPLEX*16 array, dimension (K)
TAU(i) must contain the scalar factor of the elementary
reflector H(i), as returned by ZGERQF.```

WORK

`          WORK is COMPLEX*16 array, dimension (M)`

INFO

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

Univ. of Tennessee

Univ. of California Berkeley

Univ. of Colorado Denver

NAG Ltd.

Definition at line 113 of file zungr2.f.

## Author

Generated automatically by Doxygen for LAPACK from the source code.

## Info

Tue Nov 28 2023 12:08:43 Version 3.12.0 LAPACK