DUM=A(IMAX,K) A(IMAX,K)=A(J,K) A(J,K)=DUM END DO
D=-D
VV(IMAX)=VV(J) END IF
INDX(J)=IMAX
IF (A(J,J).EQ.0.) A(J,J)=TINY IF (J.NE.N) THEN DUM=1./A(J,J) DO I=J+1,N
A(I,J)=A(I,J)*DUM END DO END IF
END DO
RETURN END
C----------------------------------------------------------------------
SUBROUTINE LUBKSB (A, N, NP, INDX, B)
C----- Linear equation solver based on LU decomposition
C----- Use single precision on cray C
IMPLICIT REAL*8 (A-H,O-Z)
DIMENSION A(NP,NP), INDX(N), B(N)
II=0
DO I=1,N
LL=INDX(I) SUM=B(LL) B(LL)=B(I)
IF (II.NE.0) THEN DO J=II,I-1
SUM=SUM-A(I,J)*B(J) END DO
ELSE IF (SUM.NE.0.) THEN II=I END IF
B(I)=SUM END DO
DO I=N,1,-1 SUM=B(I)
IF (I.LT.N) THEN DO J=I+1,N
SUM=SUM-A(I,J)*B(J) END DO END IF
B(I)=SUM/A(I,I) END DO
RETURN END