Contents
dsterf - compute all eigenvalues of a symmetric tridiagonal
matrix using the Pal-Walker-Kahan variant of the QL or QR
algorithm
SUBROUTINE DSTERF(N, D, E, INFO)
INTEGER N, INFO
DOUBLE PRECISION D(*), E(*)
SUBROUTINE DSTERF_64(N, D, E, INFO)
INTEGER*8 N, INFO
DOUBLE PRECISION D(*), E(*)
F95 INTERFACE
SUBROUTINE STERF([N], D, E, [INFO])
INTEGER :: N, INFO
REAL(8), DIMENSION(:) :: D, E
SUBROUTINE STERF_64([N], D, E, [INFO])
INTEGER(8) :: N, INFO
REAL(8), DIMENSION(:) :: D, E
C INTERFACE
#include <sunperf.h>
void dsterf(int n, double *d, double *e, int *info);
void dsterf_64(long n, double *d, double *e, long *info);
dsterf computes all eigenvalues of a symmetric tridiagonal
matrix using the Pal-Walker-Kahan variant of the QL or QR
algorithm.
N (input) The order of the matrix. N >= 0.
D (input/output)
On entry, the n diagonal elements of the tridiago-
nal matrix. On exit, if INFO = 0, the eigenvalues
in ascending order.
E (input/output)
On entry, the (n-1) subdiagonal elements of the
tridiagonal matrix. On exit, E has been des-
troyed.
INFO (output)
= 0: successful exit
< 0: if INFO = -i, the i-th argument had an ille-
gal value
> 0: the algorithm failed to find all of the
eigenvalues in a total of 30*N iterations; if INFO
= i, then i elements of E have not converged to
zero.