5 SUBROUTINE dheqr (A, LDA, N, Q, INFO, IJOB)
67 INTEGER LDA, N, INFO, IJOB
68 DOUBLE PRECISION A(lda,*), Q(*)
69 INTEGER I, IQ, J, K, KM1, KP1, NM1
70 DOUBLE PRECISION C, S, T, T1, T2
72 IF (ijob .GT. 1) go to 70
88 IF (km1 .LT. 1) go to 20
96 a(j+1,k) = s*t1 + c*t2
105 IF (t2 .NE. 0.0d0) go to 30
110 IF (
abs(t2) .LT.
abs(t1)) go to 40
112 s = -1.0d0/
sqrt(1.0d0+t*t)
117 c = 1.0d0/
sqrt(1.0d0+t*t)
123 IF (a(k,k) .EQ. 0.0d0) info = k
143 a(k+1,n) = s*t1 + c*t2
152 IF (t2 .NE. 0.0d0) go to 110
157 IF (
abs(t2) .LT.
abs(t1)) go to 120
159 s = -1.0d0/
sqrt(1.0d0+t*t)
164 c = 1.0d0/
sqrt(1.0d0+t*t)
171 IF (a(n,n) .EQ. 0.0d0) info = n
subroutine dheqr(A, LDA, N, Q, INFO, IJOB)
octave_value sqrt(void) const