      SUBROUTINE INITAL
      IMPLICIT DOUBLE PRECISION (A-H,O-Z) 
      COMMON/T/      T,  NSTOP,  NORUN
     +      /Y/   Y(1)
     +      /F/  YT(1)
C...
C...  INITIAL CONDITION
      Y(1)=1.0D0
      RETURN
      END
      SUBROUTINE DERV
      IMPLICIT DOUBLE PRECISION (A-H,O-Z) 
      COMMON/T/      T,  NSTOP,  NORUN
     +      /Y/   Y(1)
     +      /F/  YT(1)
C...
C...  ODE
      YT(1)=-Y(1)
      RETURN
      END
      SUBROUTINE PRINT(NI,NO)
      IMPLICIT DOUBLE PRECISION (A-H,O-Z) 
      COMMON/T/      T,  NSTOP,  NORUN
     +      /Y/   Y(1)
     +      /F/  YT(1)
C...
C...  COMMON AREA TO ACCESS THE ESTIMATED ERRORS FROM SUBROUTINE FS_RKF45
      COMMON/RK7/ E(250)
C...
C...  MONITOR THE CALCULATION
      WRITE(*,*)NORUN,T
C...
C...  PRINT HEADING FOR SOLUTION
      IF(T.LT.0.001D0)WRITE(NO,2)
2     FORMAT(//,6X,'T',8X,'Y(1)',6X,'YEXACT',5X,'E (EST)',3X'E (EXACT)',
     +          5X,'RATIO')
C...
C...  PRINT NUMERICAL AND EXACT SOLUTIONS, ESTIMATED AND EXACT ERRORS,
C...  RATIO OF ERROR
C...
C...     EXACT SOLUTION
         YE=DEXP(-T)
C...
C...     EXACT ERROR
         EE=Y(1)-YE
C...
C...     RATIO OF ERRORS
         IF(T.LT.0.001D0)THEN
            E(1)=0.0D0
            RATIO=1.0D0
         ELSE
            RATIO=E(1)/EE
         END IF
C...
C...     PRINT RESULTS
         WRITE(NO,1)T,Y(1),YE,E(1),EE,RATIO
1        FORMAT(F7.3,2F12.5,2D12.3,F10.3)
      RETURN
      END
