      SUBROUTINE INTFRC (AMLDFROW,REAMFROW,VEAMFROW,FR1FROW,FR2FROW,
     1                   SSLDFROW,RESSFROW,VESSFROW,DSLDFROW,REDSFROW,
     2                   VEDSFROW,BCLDFROW,REBCFROW,VEBCFROW,OCLDFROW,
     3                   REOCFROW,VEOCFROW,ZCDNFROW,BCICFROW,BCDPFROW,
     4                   AMLDFROL,REAMFROL,VEAMFROL,FR1FROL,FR2FROL,
     5                   SSLDFROL,RESSFROL,VESSFROL,DSLDFROL,REDSFROL,
     6                   VEDSFROL,BCLDFROL,REBCFROL,VEBCFROL,OCLDFROL,
     7                   REOCFROL,VEOCFROL,ZCDNFROL,BCICFROL,BCDPFROL,
     8                   IL1,IL2,ILG,ILEV,DELT,GMT,IDAY,MDAY)
C
C     * APR  3/13 - K.VON SALZEN. NEW
C     *                       INTERPOLATION OF FORCING FIELDS.
C
C     * XXROW  = CHEMISTRY FIELD    FOR PREVIOUS TIMESTEP. 
C     * XXROL  = CHEMISTRY FIELD    AT NEXT PHYSICS TIME.
C
C     * DELT   = MODEL TIMESTEP IN SECONDS. 
C     * GMT    = NUMBER OF SECONDS IN CURRENT DAY.
C     * IDAY   = CURRENT JULIAN DAY.  
C     * MDAY   = DATE OF TARGET SST.
C
      IMPLICIT REAL   (A-H,O-Z),
     +INTEGER (I-N) 
C
C     * SINGLE-LEVEL FIELDS.
C
      REAL BCDPFROW(ILG), BCDPFROL(ILG)
C
C     * MULTI-LEVEL FIELDS.
C
      REAL   AMLDFROW(ILG,ILEV),   AMLDFROL(ILG,ILEV)
      REAL   REAMFROW(ILG,ILEV),   REAMFROL(ILG,ILEV)
      REAL   VEAMFROW(ILG,ILEV),   VEAMFROL(ILG,ILEV)
      REAL   FR1FROW (ILG,ILEV),   FR1FROL (ILG,ILEV)
      REAL   FR2FROW (ILG,ILEV),   FR2FROL (ILG,ILEV)
      REAL   SSLDFROW(ILG,ILEV),   SSLDFROL(ILG,ILEV)
      REAL   RESSFROW(ILG,ILEV),   RESSFROL(ILG,ILEV)
      REAL   VESSFROW(ILG,ILEV),   VESSFROL(ILG,ILEV)
      REAL   DSLDFROW(ILG,ILEV),   DSLDFROL(ILG,ILEV)
      REAL   REDSFROW(ILG,ILEV),   REDSFROL(ILG,ILEV)
      REAL   VEDSFROW(ILG,ILEV),   VEDSFROL(ILG,ILEV)
      REAL   BCLDFROW(ILG,ILEV),   BCLDFROL(ILG,ILEV)
      REAL   REBCFROW(ILG,ILEV),   REBCFROL(ILG,ILEV)
      REAL   VEBCFROW(ILG,ILEV),   VEBCFROL(ILG,ILEV)
      REAL   OCLDFROW(ILG,ILEV),   OCLDFROL(ILG,ILEV)
      REAL   REOCFROW(ILG,ILEV),   REOCFROL(ILG,ILEV)
      REAL   VEOCFROW(ILG,ILEV),   VEOCFROL(ILG,ILEV)
      REAL   ZCDNFROW(ILG,ILEV),   ZCDNFROL(ILG,ILEV)
      REAL   BCICFROW(ILG,ILEV),   BCICFROL(ILG,ILEV)
C-------------------------------------------------------------------- 
C     * COMPUTE THE NUMBER OF TIMESTEPS FROM HERE TO MDAY. 
C
      DAY=REAL(IDAY)+GMT/86400. 
      FMDAY=REAL(MDAY) 
      IF(FMDAY.LT.DAY) FMDAY=FMDAY+365. 
      DAYSM=FMDAY-DAY 
      ISTEPSM=NINT(DAYSM*86400./DELT)
      STEPSM=REAL(ISTEPSM)
C 
C     * GENERAL INTERPOLATION.
C 
      DO 210 I=IL1,IL2
        BCDPFROW(I)=((STEPSM-1.)*BCDPFROW(I)+BCDPFROL(I))/STEPSM 
  210 CONTINUE
C 
      DO 250 L=1,ILEV
      DO 250 I=IL1,IL2
        AMLDFROW(I,L)=((STEPSM-1.)*AMLDFROW(I,L)+AMLDFROL(I,L))/STEPSM 
        REAMFROW(I,L)=((STEPSM-1.)*REAMFROW(I,L)+REAMFROL(I,L))/STEPSM 
        VEAMFROW(I,L)=((STEPSM-1.)*VEAMFROW(I,L)+VEAMFROL(I,L))/STEPSM 
        FR1FROW (I,L)=((STEPSM-1.)*FR1FROW (I,L)+FR1FROL (I,L))/STEPSM 
        FR2FROW (I,L)=((STEPSM-1.)*FR2FROW (I,L)+FR2FROL (I,L))/STEPSM 
        SSLDFROW(I,L)=((STEPSM-1.)*SSLDFROW(I,L)+SSLDFROL(I,L))/STEPSM 
        RESSFROW(I,L)=((STEPSM-1.)*RESSFROW(I,L)+RESSFROL(I,L))/STEPSM 
        VESSFROW(I,L)=((STEPSM-1.)*VESSFROW(I,L)+VESSFROL(I,L))/STEPSM 
        DSLDFROW(I,L)=((STEPSM-1.)*DSLDFROW(I,L)+DSLDFROL(I,L))/STEPSM 
        REDSFROW(I,L)=((STEPSM-1.)*REDSFROW(I,L)+REDSFROL(I,L))/STEPSM 
        VEDSFROW(I,L)=((STEPSM-1.)*VEDSFROW(I,L)+VEDSFROL(I,L))/STEPSM 
        BCLDFROW(I,L)=((STEPSM-1.)*BCLDFROW(I,L)+BCLDFROL(I,L))/STEPSM 
        REBCFROW(I,L)=((STEPSM-1.)*REBCFROW(I,L)+REBCFROL(I,L))/STEPSM 
        VEBCFROW(I,L)=((STEPSM-1.)*VEBCFROW(I,L)+VEBCFROL(I,L))/STEPSM 
        OCLDFROW(I,L)=((STEPSM-1.)*OCLDFROW(I,L)+OCLDFROL(I,L))/STEPSM 
        REOCFROW(I,L)=((STEPSM-1.)*REOCFROW(I,L)+REOCFROL(I,L))/STEPSM 
        VEOCFROW(I,L)=((STEPSM-1.)*VEOCFROW(I,L)+VEOCFROL(I,L))/STEPSM 
        ZCDNFROW(I,L)=((STEPSM-1.)*ZCDNFROW(I,L)+ZCDNFROL(I,L))/STEPSM 
        BCICFROW(I,L)=((STEPSM-1.)*BCICFROW(I,L)+BCICFROL(I,L))/STEPSM 
  250 CONTINUE
C 
      RETURN
      END 
