C SYSLIN    SOURCE    CHAT      05/01/13    03:29:02     5004
       SUBROUTINE SYSLIN(IPO1)

      IMPLICIT INTEGER(I-N)
       IMPLICIT REAL*8 (A-H,O-Z)


-INC PPARAM
-INC CCOPTIO
-INC SMLREEL

       SEGMENT TRAV
          REAL*8 T(J)
          REAL*8 S(I)
          INTEGER MF(J)
       ENDSEGMENT

       TRAV=IPO1
       SEGACT TRAV*MOD
       N=T(/1)

       IF(N.LE.1) THEN
          IF( S(1).NE.0.D0) T(1)=T(1)/S(1)
          GOTO 9999
       ENDIF
       IA=0
       KF=N
       M=N-1
       DO 30 I=1,M
            IA=IA+1
            II=I+1
            D=0.D0
            IF(S(IA).NE.0.D0) D=1.D0/S(IA)
            XI=T(I)
            T(I)=D*XI
            K=KF
            DO 20 J=II,N
                 IA=IA+1
                 B=S(IA)*D
                 T(J)=T(J)-B*XI
                 DO 10 KA=IA,KF
                      K=K+1
                      S(K)=S(K)-B*S(KA)
 10              CONTINUE
                 S(IA)=B
 20          CONTINUE
             KF=KF+N-I
 30    CONTINUE
       XN=T(N)
       T(N)=0.D0
       IF(S(KF).NE.0.D0) T(N)=XN/S(KF)
       L=N
       DO 50 I=1,M
            B=T(L)
            KF=L
            L=L-1
            DO 40 J=1,L
                 T(J)=T(J)-S(KF)*B
                 KF=KF+N-J
 40         CONTINUE
 50    CONTINUE


 9999  RETURN
       END



