### Symmetric Eigenvalue Problems

?sytrd reduces a real symmetric matrix to tridiagonal form.
``` call ssytrd (uplo, n, a, lda, d, e, tau, work, lwork, info) call dsytrd (uplo, n, a, lda, d, e, tau, work, lwork, info) ```

?orgtr generates the real orthogonal matrix Q determined by ?sytrd.
``` call sorgtr (uplo, n, a, lda, tau, work, lwork, info) call dorgtr (uplo, n, a, lda, tau, work, lwork, info) ```

?ormtr multiplies a real matrix by the real orthogonal matrix Q determined by ?sytrd.
``` call sormtr (side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info) call dormtr (side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info) ```

?hetrd reduces a complex Hermitian matrix to tridiagonal form.
``` call chetrd (uplo, n, a, lda, d, e, tau, work, lwork, info) call zhetrd (uplo, n, a, lda, d, e, tau, work, lwork, info) ```

?ungtr generates the complex unitary matrix Q determined by ?hetrd.
``` call cungtr (uplo, n, a, lda, tau, work, lwork, info) call zungtr (uplo, n, a, lda, tau, work, lwork, info) ```

?unmtr multiplies a complex matrix by the complex unitary matrix Q determined by ?hetrd.
``` call cunmtr (side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info) call zunmtr (side, uplo, trans, m, n, a, lda, tau, c, ldc, work, lwork, info) ```

?sptrd reduces a real symmetric matrix to tridiagonal form using packed storage.
``` call ssptrd (uplo, n, ap, d, e, tau, info) call dsptrd (uplo, n, ap, d, e, tau, info) ```

?opgtr generates the real orthogonal matrix Q determined by ?sptrd.
``` call sopgtr (uplo, n, ap, tau, q, ldq, work, info) call dopgtr (uplo, n, ap, tau, q, ldq, work, info) ```

?opmtr multiplies a real matrix by the real orthogonal matrix Q determined by ?sptrd.
``` call sopmtr (side, uplo, trans, m, n, ap, tau, c, ldc, work, info) call dopmtr (side, uplo, trans, m, n, ap, tau, c, ldc, work, info) ```

?hptrd reduces a complex Hermitian matrix to tridiagonal form using packed storage.
``` call chptrd (uplo, n, ap, d, e, tau, info) call zhptrd (uplo, n, ap, d, e, tau, info) ```

?upgtr generates the complex unitary matrix Q determined by ?hptrd.
``` call cupgtr (uplo, n, ap, tau, q, ldq, work, info) call zupgtr (uplo, n, ap, tau, q, ldq, work, info) ```

?upmtr multiplies a complex matrix by the unitary matrix Q determined by ?hptrd.
``` call cupmtr (side, uplo, trans, m, n, ap, tau, c, ldc, work, info) call zupmtr (side, uplo, trans, m, n, ap, tau, c, ldc, work, info) ```

?sbtrd reduces a real symmetric band matrix to tridiagonal form.
``` call ssbtrd (vect, uplo, n, kd, ab, ldab, d, e, q, ldq, work, info) call dsbtrd (vect, uplo, n, kd, ab, ldab, d, e, q, ldq, work, info) ```

?hbtrd reduces a complex Hermitian band matrix to tridiagonal form.
``` call chbtrd (vect, uplo, n, kd, ab, ldab, d, e, q, ldq, work, info) call zhbtrd (vect, uplo, n, kd, ab, ldab, d, e, q, ldq, work, info) ```

?sterf computes all eigenvalues of a real symmetric tridiagonal matrix using QR algorithm.
``` call ssterf (n, d, e, info) call dsterf (n, d, e, info) ```

?steqr computes all eigenvalues and eigenvectors of a symmetric or Hermitian matrix reduced to tridiagonal form (QR algorithm).
``` call ssteqr (compz, n, d, e, z, ldz, work, info) call dsteqr (compz, n, d, e, z, ldz, work, info) call csteqr (compz, n, d, e, z, ldz, work, info) call zsteqr (compz, n, d, e, z, ldz, work, info) ```

?stedc computes all eigenvalues and eigenvectors of a symmetric tridiagonal matrix using the divide and conquer method.
``` call sstedc (compz, n, d, e, z, ldz, work, lwork, iwork, liwork, info) call dstedc (compz, n, d, e, z, ldz, work, lwork, iwork, liwork, info) call cstedc (compz, n, d, e, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info) call zstedc (compz, n, d, e, z, ldz, work, lwork, rwork, lrwork, iwork, liwork, info) ```

?stegr computes selected eigenvalues and eigenvectors of a real symmetric tridiagonal matrix.
``` call sstegr (jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info) call dstegr (jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info) call cstegr (jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info) call zstegr (jobz, range, n, d, e, vl, vu, il, iu, abstol, m, w, z, ldz, isuppz, work, lwork, iwork, liwork, info) ```

?pteqr computes all eigenvalues and (optionally) all eigenvectors of a real symmetric positive-definite tridiagonal matrix.
``` call spteqr (compz, n, d, e, z, ldz, work, info) call dpteqr (compz, n, d, e, z, ldz, work, info) call cpteqr (compz, n, d, e, z, ldz, work, info) call zpteqr (compz, n, d, e, z, ldz, work, info) ```

?stebz computes selected eigenvalues of a real symmetric tridiagonal matrix by bisection.
``` call sstebz (range, order, n, vl, vu, il, iu, abstol, d, e, m, nsplit, w, iblock, isplit, work, iwork, info) call dstebz (range, order, n, vl, vu, il, iu, abstol, d, e, m, nsplit, w, iblock, isplit, work, iwork, info) ```

?stein computes the eigenvectors corresponding to specified eigenvalues of a real symmetric tridiagonal matrix.
``` call sstein (n, d, e, m, w, iblock, isplit, z, ldz, work, iwork, ifailv, info) call dstein (n, d, e, m, w, iblock, isplit, z, ldz, work, iwork, ifailv, info) call cstein (n, d, e, m, w, iblock, isplit, z, ldz, work, iwork, ifailv, info) call zstein (n, d, e, m, w, iblock, isplit, z, ldz, work, iwork, ifailv, info) ```

?disna computes the reciprocal condition numbers for the eigenvectors of a symmetric/Hermitian matrix or for the left or right singular vectors of a general matrix.
``` call sdisna (job, m, n, d, sep, info) call ddisna (job, m, n, d, sep, info) ```

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