_TRIDIB(3F) _TRIDIB(3F)
TRIDIB, STRIDIB - EISPACK routine. This subroutine finds those
eigenvalues of a TRIDIAGONAL SYMMETRIC matrix between specified boundary
indices, using bisection.
subroutine tridib(n,eps1,d,e,e2,lb,ub,m11,m,w,ind,ierr,rv4,rv5)
integer n, m11, m, ierr, ind(m)
double precision eps1, lb, ub
double precision d(n), e(n), e2(n), w(m), rv4(n), rv5(n)
subroutine stridib(n,eps1,d,e,e2,lb,ub,m11,m,w,ind,ierr,rv4,rv5)
integer n, m11, m, ierr, ind(m)
real eps1, lb, ub
real d(n), e(n), e2(n), w(m), rv4(n), rv5(n)
On Input
N is the order of the matrix.
EPS1 is an absolute error tolerance for the computed eigenvalues. If the
input EPS1 is non-positive, it is reset for each submatrix to a default
value, namely, minus the product of the relative machine precision and
the 1-norm of the submatrix.
D contains the diagonal elements of the input matrix.
E contains the subdiagonal elements of the input matrix in its last N-1
positions. E(1) is arbitrary.
E2 contains the squares of the corresponding elements of E. E2(1) is
arbitrary.
M11 specifies the lower boundary index for the desired eigenvalues.
M specifies the number of eigenvalues desired. The upper boundary index
M22 is then obtained as M22=M11+M-1. On Output
EPS1 is unaltered unless it has been reset to its (last) default value.
D and E are unaltered. ELEMENTS of E2, corresponding to elements of E
regarded as negligible, have been replaced by zero causing the matrix to
split into a direct sum of submatrices. E2(1) is also set to zero.
LB and UB DEFINE an interval containing exactly the desired eigenvalues.
W contains, in its first M positions, the eigenvalues between indices M11
and M22 in ascending order.
Page 1
_TRIDIB(3F) _TRIDIB(3F)
IND contains in its first M positions the submatrix indices associated
with the corresponding eigenvalues in W -- 1 for eigenvalues belonging to
the first submatrix from the top, 2 for those belonging to the second
submatrix, etc.
IERR is set to Zero for normal return, 3*N+1 if multiple
eigenvalues at index M11 make
unique selection impossible, 3*N+2 if multiple eigenvalues at
index M22 make
unique selection impossible.
RV4 and RV5 are temporary storage arrays. Note that subroutine TQL1,
IMTQL1, or TQLRAT is generally faster than TRIDIB, if more than N/4
eigenvalues are to be found. Questions and comments should be directed
to B. S. Garbow, APPLIED MATHEMATICS DIVISION, ARGONNE NATIONAL
LABORATORY
PPPPaaaaggggeeee 2222 [ Back ]
|