**?gebrd**
reduces a general matrix to bidiagonal form.

```
call sgebrd (
```

*m, n, a, lda, d, e, tauq, taup, work, lwork, info*)

call dgebrd (*m, n, a, lda, d, e, tauq, taup, work, lwork, info*)

call cgebrd (*m, n, a, lda, d, e, tauq, taup, work, lwork, info*)

call zgebrd (*m, n, a, lda, d, e, tauq, taup, work, lwork, info*)

**?gbbrd**
reduces a general band matrix to bidiagonal form.

```
call sgbbrd (
```

*vect, m, n, ncc, kl, ku, ab, ldab, d, e, q, ldq, pt, ldpt, c, ldc, work, info*)

call dgbbrd (*vect, m, n, ncc, kl, ku, ab, ldab, d, e, q, ldq, pt, ldpt, c, ldc, work, info*)

call cgbbrd (*vect, m, n, ncc, kl, ku, ab, ldab, d, e, q, ldq, pt, ldpt, c, ldc, work, rwork, info*)

call zgbbrd (*vect, m, n, ncc, kl, ku, ab, ldab, d, e, q, ldq, pt, ldpt, c, ldc, work, rwork, info*)

**?orgbr**
generates the real orthogonal matrix *Q* or *P ^{T}*
determined by ?gebrd.

```
call sorgbr (
```*vect, m, n, k, a, lda, tau, work, lwork, info*)

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

**?ormbr**
multiplies an arbitrary real matrix by the real orthogonal matrix *Q* or *P ^{T}*
determined by ?gebrd.

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

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

**?ungbr**
generates the complex unitary matrix *Q* or *P ^{H}*
determined by ?gebrd.

```
call cungbr (
```*vect, m, n, k, a, lda, tau, work, lwork, info*)

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

**?unmbr**
multiplies an arbitrary complex matrix by the unitary matrix *Q* or *P*
determined by ?gebrd.

```
call cunmbr (
```

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

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

**?bdsqr**
computes the singular value decomposition of a general matrix
that has been reduced to bidiagonal form.

```
call sbdsqr (
```

*uplo, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, work, info*)

call dbdsqr (*uplo, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, work, info*)

call cbdsqr (*uplo, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, work, info*)

call zbdsqr (*uplo, n, ncvt, nru, ncc, d, e, vt, ldvt, u, ldu, c, ldc, work, info*)

**?bdsdc**
computes the singular value decomposition of a real bidiagonal matrix using a divide and conquer method.

```
call sbdsqc (
```

*uplo, compq, n, d, e, u, ldu, vt, ldtv, q, iq, work, iwork, info*)

call dbdsqc (*uplo, compq, n, d, e, u, ldu, vt, ldtv, q, iq, work, iwork, info*)

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