TQL1 3 "31 August 1983" "Version 1.00"

Table of contents


NAME

tql1 - Double-precision symmetric tridiagonal matrix eigenvalues

SYNOPSIS

Fortran (77, 90, 95, HPF):
f77 [ flags ] file(s) ... -L/usr/local/lib -lgjl
SUBROUTINE tql1(n,d,e,ierr)
DOUBLE PRECISION    d(*),        e(*)
INTEGER             ierr,        n
C (K&R, 89, 99), C++ (98):
cc [ flags ] -I/usr/local/include file(s) ... -L/usr/local/lib -lgjl
Use
#include <gjl.h>
to get this prototype:
void tql1(const fortran_integer * n_, fortran_double_precision d_[], fortran_double_precision e_[], fortran_integer * ierr_);

NB: The definition of C/C++ data types fortran_ xxx, and the mapping of Fortran external names to C/C++ external names, is handled by the C/C++ header file. That way, the same function or subroutine name can be used in C, C++, and Fortran code, independent of compiler conventions for mangling of external names in these programming languages.

Last code modification: 31-Aug-1983


DESCRIPTION

Given a symmetric tridiagonal matrix of order n stored with its diagonal in d(1..n), and its subdiagonal in e(2..n), with e(1) arbitrary, use the QL method to find the eigenvalues.

On return, the original contents of d(*) and e(*) will have been destroyed, and d(*) will contain the eigenvalues in ascending order.

The error indicator, ierr, is normally set to zero on return. However, if an error exit is made, ierr is set to a positive value, and then the eigenvalues are correct and ordered for indices 1, 2, ..., ierr-1, but may not be the smallest eigenvalues.

This routine is a translation of the Algol procedure tql1() from ``The QR and QL Algorithms for Symmetric Matrices'', Numerische Mathematik 11, 293--306 (1968), by H. J. Bowdler, R. S. Martin, C. Reinsch and J. H. Wilkinson. That article was republished in the Handbook for Automatic Computation, Vol. II, Linear Algebra, 227--240 (1971), eds. J. H. Wilkinson and C. Reinsch, Springer-Verlag, ISBN 3-540-05414-6.

tql1() is part of the EISPACK-1 and EISPACK-2 libraries.


AUTHORS

The algorithms and code are described in detail in the paper
Algorithm xxx: Quadruple-Precision Gamma(x) and psi(x) Functions for Real Arguments
in ACM Transactions on Mathematical Software, Volume ??, Number ??, Pages ????--???? and ????--????, 2001, by
Nelson H. F. Beebe
Center for Scientific Computing
University of Utah
Department of Mathematics, 110 LCB
155 S 1400 E RM 233
Salt Lake City, UT 84112-0090
Tel: +1 801 581 5254
FAX: +1 801 581 4148
Email: beebe@math.utah.edu, beebe@acm.org, beebe@computer.org
WWW URL: http://www.math.utah.edu/~beebe
and
James S. Ball
University of Utah
Department of Physics
Salt Lake City, UT 84112-0830
USA
Tel: +1 801 581 8397
FAX: +1 801 581 6256
Email: ball@physics.utah.edu
WWW URL: http://www.physics.utah.edu/people/faculty/ball.html