subroutine rebakb(nm,n,b,dl,m,z) c integer i,j,k,m,n,i1,ii,nm double precision b(nm,n),dl(n),z(nm,m) double precision x c c this subroutine is a translation of the algol procedure rebakb, c num. math. 11, 99-110(1968) by martin and wilkinson. c handbook for auto. comp., vol.ii-linear algebra, 303-314(1971). c c this subroutine forms the eigenvectors of a generalized c symmetric eigensystem by back transforming those of the c derived symmetric matrix determined by reduc2. c c on input c c nm must be set to the row dimension of two-dimensional c array parameters as declared in the calling program c dimension statement. c c n is the order of the matrix system. c c b contains information about the similarity transformation c (cholesky decomposition) used in the reduction by reduc2 c in its strict lower triangle. c c dl contains further information about the transformation. c c m is the number of eigenvectors to be back transformed. c c z contains the eigenvectors to be back transformed c in its first m columns. c c on output c c z contains the transformed eigenvectors c in its first m columns. c c questions and comments should be directed to burton s. garbow, c mathematics and computer science div, argonne national laboratory c c this version dated august 1983. c c ------------------------------------------------------------------ c if (m .eq. 0) go to 200 c do 100 j = 1, m c .......... for i=n step -1 until 1 do -- .......... do 100 ii = 1, n i1 = n - ii i = i1 + 1 x = dl(i) * z(i,j) if (i .eq. 1) go to 80 c do 60 k = 1, i1 60 x = x + b(i,k) * z(k,j) c 80 z(i,j) = x 100 continue c 200 return end