C***********************************************************************
C   THIS SUBROUTINE DOES THE INVERTING WORK.
C***********************************************************************
      SUBROUTINE MINV (A,N)
      INCLUDE 'PARMTR.INC'
      DOUBLE PRECISION A, F1, F, Q, F2
      DIMENSION A(MAXPAR,MAXPAR), F1(MAXPAR)
      M=N-1
      A(1,1)=1./A(1,1)
      DO 60 I=1,M
      DO 20 J=1,I
      F=0.0
      DO 10 K=1,I
   10 F=F+A(J,K)*A(K,I+1)
   20 F1(J)=-F
      F2=A(I+1,I+1)
      DO 30 J=1,I
   30 F2=F2+A(J,I+1)*F1(J)
      Q=F2/A(I+1,I+1)
      IRR=I+1
      IF (DABS(Q).LT..00001) WRITE (6,70) IRR
      F2=1./F2
      A(I+1,I+1)=F2
      DO 40 J=1,I
      DO 40 K=1,I
   40 A(J,K)=F1(J)*F1(K)*F2+A(J,K)
      DO 50 J=1,I
      A(J,I+1)=F1(J)*F2
   50 A(I+1,J)=A(J,I+1)
   60 CONTINUE
      RETURN
C
   70 FORMAT (1H0,84HPROBLEMS INVERTING THE MATRIX IT MAY BE SINGULAR. T
     1HE PROBLEM WAS ENCOUNTERED AT ROW,I4)
      END
