5 * Revision 1.1.1.1 1996/04/01 15:02:37 mclareni
10 SUBROUTINE TQL2(NM,N,D,E,Z,IERR)
11 INTEGER I,J,K,L,M,N,II,NM,MML,IERR
12 REAL D(N),E(N),Z(NM,N)
13 REAL B,C,F,G,H,P,R,S,MACHEP
14 #if defined(CERNLIB_CDC)
17 #if !defined(CERNLIB_CDC)
21 IF (N .EQ. 1) GO TO 1001
29 H = MACHEP * (ABS(D(L)) + ABS(E(L)))
32 IF (ABS(E(M)) .LE. B) GO TO 120
34 120 IF (M .EQ. L) GO TO 220
35 130 IF (J .EQ. 30) GO TO 1000
37 P = (D(L+1) - D(L)) / (2.0 * E(L))
39 H = D(L) - E(L) / (P + SIGN(R,P))
51 IF (ABS(P) .LT. ABS(E(I))) GO TO 150
63 160 P = C * D(I) - S * G
64 D(I+1) = H + S * (C * G + S * D(I))
67 Z(K,I+1) = S * Z(K,I) + C * H
68 Z(K,I) = C * Z(K,I) - S * H
73 IF (ABS(E(L)) .GT. B) GO TO 130
81 IF (D(J) .GE. P) GO TO 260
85 IF (K .EQ. I) GO TO 300