# Symmetric Eigenproblems

To solve a symmetric eigenproblem with ScaLAPACK, you usually need to reduce the matrix to real tridiagonal form T and then find the eigenvalues and eigenvectors of the tridiagonal matrix T. ScaLAPACK includes routines for reducing the matrix to a tridiagonal form by an orthogonal (or unitary) similarity transformation `A = QTQH` as well as for solving tridiagonal symmetric eigenvalue problems. These routines are listed in Table “Computational Routines for Solving Symmetric Eigenproblems”.

There are different routines for symmetric eigenproblems, depending on whether you need eigenvalues only or eigenvectors as well, and on the algorithm used (either the QTQ algorithm, or bisection followed by inverse iteration).

Computational Routines for Solving Symmetric Eigenproblems
Operation | Dense symmetric/Hermitian matrix | Orthogonal/unitary matrix | Symmetric tridiagonal matrix
--- | --- | --- | ---
Reduce to tridiagonal form A = QTQH | p?sytrd/p?hetrd |  |
Multiply matrix after reduction |  | p?ormtr/p?unmtr |
Find all eigenvalues and eigenvectors of a tridiagonal matrix T by a QTQ method |  |  | steqr2*)
Find selected eigenvalues of a tridiagonal matrix T via bisection |  |  | p?stebz
Find selected eigenvectors of a tridiagonal matrix T by inverse iteration |  |  | p?stein

*) This routine is described as part of auxiliary ScaLAPACK routines.