next up previous contents index
Next: Example (from Program LA_HPEVX_EXAMPLE) Up: Standard Symmetric Eigenvalue Problems Previous: Purpose   Contents   Index

Arguments

AP
(input/output) REAL or COMPLEX array, shape $(:)$ with $size({\bf AP}) = n(n+1)/2$, where $n$ is the order of $A$.
On entry, the upper or lower triangle of matrix $A$ in packed storage. The elements are stored columnwise as follows:

\begin{displaymath}
\begin{array}{c\vert c\vert c}
A_{i,j} & i,j & {\bf UPLO} ...
... \leq i \leq n \end{array} & \mbox{ 'L'} \\ \hline
\end{array}\end{displaymath}

On exit, ${\bf AP}$ is overwritten by values generated during the reduction of $A$ to a tridiagonal matrix $T$. If ${\bf UPLO} =$ 'U', the diagonal and first superdiagonal of T overwrite the corresponding diagonals of $A$. If ${\bf UPLO} =$ 'L', the diagonal and first subdiagonal of T overwrite the corresponding diagonals of $A$.

W
(output) REAL array, shape $(:)$ with $size({\bf W}) = n$.
The eigenvalues in ascending order.

UPLO
Optional (input) CHARACTER(LEN=1).

\begin{optionarg}
\item[{$ =$\ 'U':}] Upper triangle of $A$\ is stored.
\item[{$ =$\ 'L':}] Lower triangle of $A$\ is stored.
\end{optionarg}
Default value: 'U'.

Z
Optional (output) REAL or COMPLEX array, shape $(:,:)$ with $size$(Z,1) $= n$ and $size$(Z,2) $=$ M.
The first M columns of Z contain the orthonormal eigenvectors of the matrix $A$ corresponding to the selected eigenvalues, with the $i^{th}$ column of Z containing the eigenvector associated with the eigenvalue in W$_i$. If an eigenvector fails to converge, then that column of Z contains the latest approximation to the eigenvector, and the index of the eigenvector is returned in IFAIL.
Note: The user must ensure that at least M columns are supplied in the array Z. When the exact value of M is not known in advance, an upper bound must be used. In all cases M $\leq n$.

VL,VU
Optional (input) REAL.
The lower and upper bounds of the interval to be searched for eigenvalues. VL $<$ VU.
Default values: VL $=$ -HUGE(wp) and VU $=$ HUGE(wp), where wp ::= KIND(1.0) $\mid$ KIND(1.0D0).
Note: Neither VL nor VU may be present if IL and/or IU is present.

IL,IU
Optional (input) INTEGER.
The indices of the smallest and largest eigenvalues to be returned. The ${\bf IL}^{th}$ through ${\bf IU}^{th}$ eigenvalues will be found. $1 \leq {\bf IL} \leq {\bf IU} \leq size({\bf A},1)$.
Default values: IL $= 1$ and IU $=$ $size$(A,1).
Note: Neither IL nor IU may be present if VL and/or VU is present.
Note: All eigenvalues are calculated if none of the arguments VL, VU, IL and IU are present.

M
Optional (output) INTEGER.
The total number of eigenvalues found. $0 \leq {\bf M} \leq size({\bf A},1)$.
Note: If ${\bf IL}$ and ${\bf IU}$ are present then ${\bf M} = {\bf IU}-{\bf IL}+1$.

IFAIL
Optional (output) INTEGER array, shape $(:)$ with $size$(IFAIL) $= n$.
If INFO $= 0$, the first M elements of IFAIL are zero.
If INFO $ > 0$, then IFAIL contains the indices of the eigenvectors that failed to converge.
Note: If Z is present then IFAIL should also be present.

ABSTOL
Optional (input) REAL.
The absolute error tolerance for the eigenvalues. An approximate eigenvalue is accepted as converged when it is determined to lie in an interval $[a,b]$ of width less than or equal to

\begin{displaymath}{\bf ABSTOL} + {\bf EPSILON}(1.0\_{\it wp})\times
\max(\mid a\mid,\mid b\mid),\end{displaymath}

where wp is the working precision. If ABSTOL $\leq 0$, then ${\bf EPSILON}(1.0\_{\it wp})\times \Vert T \Vert _1 $ will be used in its place, where $\Vert T \Vert _1$ is the $l_1$ norm of the tridiagonal matrix obtained by reducing $A$ to tridiagonal form. Eigenvalues will be computed most accurately when ABSTOL is set to twice the underflow threshold $2\times {\bf LA\_LAMCH}(1.0\_{\it wp},\mbox{'Safe minimum'})$, not zero.
Default value: $0.0\_{\it wp}$.
Note: If this routine returns with ${\bf INFO} > 0$, then some eigenvectors did not converge. Try setting ABSTOL to $2\times {\bf LA\_LAMCH}(1.0\_{\it wp},\mbox{'Safe minimum'})$.

INFO
Optional (output) INTEGER.

\begin{infoarg}
\item[{$=$\ 0:}] successful exit.
\item[{$<$\ 0:}] if {\bf INFO}...
...failed to converge.
Their indices are stored in array {\bf IFAIL}.
\end{infoarg}
If INFO is not present and an error occurs, then the program is terminated with an error message.
References: [1] and [17,9,20,21].

Subsections
next up previous contents index
Next: Example (from Program LA_HPEVX_EXAMPLE) Up: Standard Symmetric Eigenvalue Problems Previous: Purpose   Contents   Index
Susan Blackford 2001-08-19