*IF DEF,C92_1A                                                             TINT1A.2      
C ******************************COPYRIGHT******************************    GTS2F400.10423  
C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved.    GTS2F400.10424  
C                                                                          GTS2F400.10425  
C Use, duplication or disclosure of this code is subject to the            GTS2F400.10426  
C restrictions as set forth in the contract.                               GTS2F400.10427  
C                                                                          GTS2F400.10428  
C                Meteorological Office                                     GTS2F400.10429  
C                London Road                                               GTS2F400.10430  
C                BRACKNELL                                                 GTS2F400.10431  
C                Berkshire UK                                              GTS2F400.10432  
C                RG12 2SZ                                                  GTS2F400.10433  
C                                                                          GTS2F400.10434  
C If no contract has been raised with this copy of the code, the use,      GTS2F400.10435  
C duplication or disclosure of it is strictly prohibited.  Permission      GTS2F400.10436  
C to do so must first be obtained in writing from the Head of Numerical    GTS2F400.10437  
C Modelling at the above address.                                          GTS2F400.10438  
C ******************************COPYRIGHT******************************    GTS2F400.10439  
C                                                                          GTS2F400.10440  
CLL  SUBROUTINE T_INT:--------------------------------------------------   TINT1A.3      
CLL                                                                        TINT1A.4      
CLL  Purpose:                                                              TINT1A.5      
CLL       Carries out linear interpolation in time between two fields.     TINT1A.6      
CLL       If the missing data indicator is present at one of the           TINT1A.7      
CLL       times, the value at the other time is used.                      TINT1A.8      
CLL                                                                        TINT1A.9      
CLL  Written by A. Dickinson 30/03/90                                      TINT1A.10     
CLL                                                                        TINT1A.11     
CLL  Model            Modification history from model version 3.0:         TINT1A.12     
CLL version  date                                                          TINT1A.13     
CLL                                                                        TINT1A.14     
CLL  Programming standard:                                                 TINT1A.15     
CLL           Unified Model Documentation Paper No 3                       TINT1A.16     
CLL           Version No 1 15/1/90                                         TINT1A.17     
CLL                                                                        TINT1A.18     
CLL  System component:S190                                                 TINT1A.19     
CLL                                                                        TINT1A.20     
CLL  System task: S1                                                       TINT1A.21     
CLL                                                                        TINT1A.22     
CLL  Documentation:                                                        TINT1A.23     
CLL       The interpolation formulae are described in                      TINT1A.24     
CLL       unified model on-line documentation paper S1.                    TINT1A.25     
CLL                                                                        TINT1A.26     
CLL  -------------------------------------------------------------------   TINT1A.27     
C*L  Arguments:---------------------------------------------------------   TINT1A.28     
                                                                           TINT1A.29     

      SUBROUTINE T_INT(DATA_T1,T1,DATA_T2,T2,DATA_T3,T3,POINTS)             6TINT1A.30     
                                                                           TINT1A.31     
      IMPLICIT NONE                                                        TINT1A.32     
                                                                           TINT1A.33     
      INTEGER                                                              TINT1A.34     
     * POINTS  !IN No of points to be processed                            TINT1A.35     
                                                                           TINT1A.36     
      REAL                                                                 TINT1A.37     
     * DATA_T1(POINTS) !IN Data at T1                                      TINT1A.38     
     *,DATA_T2(POINTS) !IN Data at T2                                      TINT1A.39     
     *,DATA_T3(POINTS) !OUT Data at T3                                     TINT1A.40     
     *,T1 !IN Time of first data field                                     TINT1A.41     
     *,T2 !IN Time of second data field                                    TINT1A.42     
     *,T3 !IN Time at which new field is required T1<=T3<=T2               TINT1A.43     
                                                                           TINT1A.44     
                                                                           TINT1A.45     
C Local arrays:---------------------------------------------------------   TINT1A.46     
C None                                                                     TINT1A.47     
C ----------------------------------------------------------------------   TINT1A.48     
C*L External subroutines called:----------------------------------------   TINT1A.49     
C None                                                                     TINT1A.50     
C*----------------------------------------------------------------------   TINT1A.51     
C Local variables:------------------------------------------------------   TINT1A.52     
      REAL                                                                 TINT1A.53     
     * ALPHA !Fractional time                                              TINT1A.54     
                                                                           TINT1A.55     
      INTEGER                                                              TINT1A.56     
     * I     !Loop index                                                   TINT1A.57     
C ----------------------------------------------------------------------   TINT1A.58     
*CALL C_MDI                                                                TINT1A.59     
                                                                           TINT1A.60     
                                                                           TINT1A.61     
      ALPHA=(T3-T1)/(T2-T1)                                                TINT1A.62     
      DO 100 I=1,POINTS                                                    TINT1A.63     
      DATA_T3(I)=DATA_T2(I)*ALPHA+DATA_T1(I)*(1-ALPHA)                     TINT1A.64     
      IF(DATA_T1(I).EQ.RMDI)DATA_T3(I)=DATA_T2(I)                          TINT1A.65     
      IF(DATA_T2(I).EQ.RMDI)DATA_T3(I)=DATA_T1(I)                          TINT1A.66     
100   CONTINUE                                                             TINT1A.67     
                                                                           TINT1A.68     
      RETURN                                                               TINT1A.69     
      END                                                                  TINT1A.70     
                                                                           TINT1A.71     
*ENDIF                                                                     TINT1A.72