**?geqrf**
computes the *QR* factorization of a general

-by-*m*

matrix.*n*

```
call sgeqrf (
```

*m, n, a, lda, tau, work, lwork, info*)

call dgeqrf (*m, n, a, lda, tau, work, lwork, info*)

call cgeqrf (*m, n, a, lda, tau, work, lwork, info*)

call zgeqrf (*m, n, a, lda, tau, work, lwork, info*)

**?geqpf**
computes the *QR* factorization of a general

-by-*m*

matrix with pivoting.*n*

```
call sgeqpf (
```

*m, n, a, lda, jpvt, tau, work, info*)

call dgeqpf (*m, n, a, lda, jpvt, tau, work, info*)

call cgeqpf (*m, n, a, lda, jpvt, tau, work, rwork, info*)

call zgeqpf (*m, n, a, lda, jpvt, tau, work, rwork, info*)

**?geqp3**
computes the *QR* factorization of a general

-by-*m*

matrix with column pivoting using Level 3 BLAS.*n*

```
call sgeqp3 (
```

*m, n, a, lda, jpvt, tau, work, lwork, info*)

call dgeqp3 (*m, n, a, lda, jpvt, tau, work, lwork, info*)

call cgeqp3 (*m, n, a, lda, jpvt, tau, work, lwork, rwork, info*)

call zgeqp3 (*m, n, a, lda, jpvt, tau, work, lwork, rwork, info*)

**?orgqr**
generates the real orthogonal matrix *Q* of the *QR* factorization formed by
?geqrf.

```
call sorgqr (
```

*m, n, k, a, lda, tau, work, lwork, info*)

call dorgqr (*m, n, k, a, lda, tau, work, lwork, info*)

**?ormqr**
multiplies a real matrix by the orthogonal matrix *Q* of the *QR* factorization formed by
?geqrf or ?geqpf.

```
call sormqr (
```

*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

call dormqr (*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

**?ungqr**
generates the complex unitary matrix *Q* of the *QR* factorization formed by
?geqrf.

```
call cungqr (
```

*m, n, k, a, lda, tau, work, lwork, info*)

call zungqr (*m, n, k, a, lda, tau, work, lwork, info*)

**?unmqr**
multiplies a complex matrix by the unitary matrix *Q* of the *QR* factorization formed by
?geqrf.

```
call cunmqr (
```

*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

call zunmqr (*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

**?gelqf**
computes the *LQ* factorization of a general

-by-*m*

matrix.*n*

```
call sgelqf (
```

*m, n, a, lda, tau, work, lwork, info*)

call dgelqf (*m, n, a, lda, tau, work, lwork, info*)

call cgelqf (*m, n, a, lda, tau, work, lwork, info*)

call zgelqf (*m, n, a, lda, tau, work, lwork, info*)

**?orglq**
generates the real orthogonal matrix *Q* of the *LQ* factorization formed by
?gelqf.

```
call sorglq (
```

*m, n, k, a, lda, tau, work, lwork, info*)

call dorglq (*m, n, k, a, lda, tau, work, lwork, info*)

**?ormlq**
multiplies a real matrix by the orthogonal matrix *Q* of the *LQ* factorization formed by
?gelqf.

```
call sormlq (
```

*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

call dormlq (*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

**?unglq**
generates the complex unitary matrix *Q* of the *LQ* factorization formed by
?gelqf.

```
call cunglq (
```

*m, n, k, a, lda, tau, work, lwork, info*)

call zunglq (*m, n, k, a, lda, tau, work, lwork, info*)

**?unmlq**
multiplies a complex matrix by the unitary matrix *Q* of the *LQ* factorization formed by
?gelqf.

```
call cunmlq (
```

*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

call zunmlq (*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

**?geqlf**
computes the *QL* factorization of a general

-by-*m*

matrix.*n*

```
call sgeqlf (
```

*m, n, a, lda, tau, work, lwork, info*)

call dgeqlf (*m, n, a, lda, tau, work, lwork, info*)

call cgeqlf (*m, n, a, lda, tau, work, lwork, info*)

call zgeqlf (*m, n, a, lda, tau, work, lwork, info*)

**?orgql**
generates the real matrix *Q* of the *QL* factorization formed by
?geqlf.

```
call sorgql (
```

*m, n, k, a, lda, tau, work, lwork, info*)

call dorgql (*m, n, k, a, lda, tau, work, lwork, info*)

**?ungql**
generates the complex matrix *Q* of the *QL* factorization formed by
?geqlf.

```
call cungql (
```

*m, n, k, a, lda, tau, work, lwork, info*)

call zungql (*m, n, k, a, lda, tau, work, lwork, info*)

**?ormql**
multiplies a real matrix by the orthogonal matrix *Q* of the *QL* factorization formed by
?geqlf.

```
call sormql (
```

*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

call dormql (*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

**?unmql**
multiplies a complex matrix by the unitary matrix *Q* of the *QL* factorization formed by
?geqlf.

```
call cunmql (
```

*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

call zunmql (*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

**?gerqf**
computes the *RQ* factorization of a general

-by-*m*

matrix.*n*

```
call sgerqf (
```

*m, n, a, lda, tau, work, lwork, info*)

call dgerqf (*m, n, a, lda, tau, work, lwork, info*)

call cgerqf (*m, n, a, lda, tau, work, lwork, info*)

call zgerqf (*m, n, a, lda, tau, work, lwork, info*)

**?orgrq**
generates the real orthogonal matrix *Q* of the *RQ* factorization formed by
?gerqf.

```
call sorgrq (
```

*m, n, k, a, lda, tau, work, lwork, info*)

call dorgrq (*m, n, k, a, lda, tau, work, lwork, info*)

**?ungrq**
generates the complex matrix *Q* of the *RQ* factorization formed by
?gerqf.

```
call cungrq (
```

*m, n, k, a, lda, tau, work, lwork, info*)

call zungrq (*m, n, k, a, lda, tau, work, lwork, info*)

**?ormrq**
multiplies a real matrix by the orthogonal matrix *Q* of the *RQ* factorization formed by
?gerqf.

```
call sormrq (
```

*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

call dormrq (*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

**?unmrq**
multiplies a complex matrix by the unitary matrix *Q* of the *RQ* factorization formed by
?gerqf.

```
call cunmrq (
```

*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

call zunmrq (*side, trans, m, n, k, a, lda, tau, c, ldc, work, lwork, info*)

**?tzrzf**
reduces the upper trapezoidal matrix *A* to upper triangular form.

```
call stzrzf (
```

*m, n, a, lda, tau, work, lwork, info*)

call dtzrzf (*m, n, a, lda, tau, work, lwork, info*)

call ctzrzf (*m, n, a, lda, tau, work, lwork, info*)

call ztzrzf (*m, n, a, lda, tau, work, lwork, info*)

**?ormrz**
multiplies a real matrix by the orthogonal matrix defined from the factorization formed by
?tzrzf.

```
call sormrz (
```

*side, trans, m, n, k, l, a, lda, tau, c, ldc, work, lwork, info*)

call dormrz (*side, trans, m, n, k, l, a, lda, tau, c, ldc, work, lwork, info*)

**?unmrz**
multiplies a complex matrix by the unitary matrix defined from the factorization formed by
?tzrzf.

```
call cunmrz (
```

*side, trans, m, n, k, l, a, lda, tau, c, ldc, work, lwork, info*)

call zunmrz (*side, trans, m, n, k, l, a, lda, tau, c, ldc, work, lwork, info*)

**?ggqrf**
computes the generalized *QR* factorization of two matrices.

```
call sggqrf (
```

*n, m, p, a, lda, taua, b, ldb, taub, work, lwork, info*)

call dggqrf (*n, m, p, a, lda, taua, b, ldb, taub, work, lwork, info*)

call cggqrf (*n, m, p, a, lda, taua, b, ldb, taub, work, lwork, info*)

call zggqrf (*n, m, p, a, lda, taua, b, ldb, taub, work, lwork, info*)

**?ggrqf**
computes the generalized *RQ* factorization of two matrices.

```
call sggrqf (
```

*m, p, n, a, lda, taua, b, ldb, taub, work, lwork, info*)

call dggrqf (*m, p, n, a, lda, taua, b, ldb, taub, work, lwork, info*)

call cggrqf (*m, p, n, a, lda, taua, b, ldb, taub, work, lwork, info*)

call zggrqf (*m, p, n, a, lda, taua, b, ldb, taub, work, lwork, info*)

* *Legal Information*
© 1999, 2002-2004, Intel Corporation