*IF DEF,A05_2A,OR,DEF,A05_2C,OR,DEF,A05_3B                                 AJX1F405.165    
C ******************************COPYRIGHT******************************    GTS2F400.1477   
C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved.    GTS2F400.1478   
C                                                                          GTS2F400.1479   
C Use, duplication or disclosure of this code is subject to the            GTS2F400.1480   
C restrictions as set forth in the contract.                               GTS2F400.1481   
C                                                                          GTS2F400.1482   
C                Meteorological Office                                     GTS2F400.1483   
C                London Road                                               GTS2F400.1484   
C                BRACKNELL                                                 GTS2F400.1485   
C                Berkshire UK                                              GTS2F400.1486   
C                RG12 2SZ                                                  GTS2F400.1487   
C                                                                          GTS2F400.1488   
C If no contract has been raised with this copy of the code, the use,      GTS2F400.1489   
C duplication or disclosure of it is strictly prohibited.  Permission      GTS2F400.1490   
C to do so must first be obtained in writing from the Head of Numerical    GTS2F400.1491   
C Modelling at the above address.                                          GTS2F400.1492   
C ******************************COPYRIGHT******************************    GTS2F400.1493   
C                                                                          GTS2F400.1494   
CLL  SUBROUTINE CRS_FRZL------------------------------------------         CRSFRZ2A.3      
CLL                                                                        CRSFRZ2A.4      
CLL  PURPOSE : CHANGE OF PHASE ROUTINE WHERE PRECIPITATION                 CRSFRZ2A.5      
CLL            CROSSES A MELTING OR FREEZING LEVEL                         CRSFRZ2A.6      
CLL                                                                        CRSFRZ2A.7      
CLL            ADD LATENT HEATING                                          CRSFRZ2A.8      
CLL                                                                        CRSFRZ2A.9      
CLL  SUITABLE FOR SINGLE COLUMN MODEL USE                                  CRSFRZ2A.10     
CLL                                                                        CRSFRZ2A.11     
CLL  CODE WRITTEN FOR CRAY Y-MP BY S.BETT AND D.GREGORY AUTUMN 1991        CRSFRZ2A.12     
CLL                                                                        CRSFRZ2A.13     
CLL  MODEL            MODIFICATION HISTORY FROM MODEL VERSION 3.0:         CRSFRZ2A.14     
CLL VERSION  DATE                                                          CRSFRZ2A.15     
CLL                                                                        CRSFRZ2A.16     
CLL  PROGRAMMING STANDARDS : UNIFIED MODEL DOCUMENTATION PAPER NO. 3       CRSFRZ2A.17     
CLL  VERSION NO. 4  DATED 5/2/92                                           CRSFRZ2A.18     
CLL                                                                        CRSFRZ2A.19     
CLL  LOGICAL COMPONENTS COVERED:                                           CRSFRZ2A.20     
CLL                                                                        CRSFRZ2A.21     
CLL  SYSTEM TASK : P27                                                     CRSFRZ2A.22     
CLL                                                                        CRSFRZ2A.23     
CLL  DOCUMENTATION : UNIFIED MODEL DOCUMENTATION PAPER P27                 CRSFRZ2A.24     
CLL                                                                        CRSFRZ2A.25     
CLLEND-----------------------------------------------------------------    CRSFRZ2A.26     
C                                                                          CRSFRZ2A.27     
C*L  ARGUMENTS---------------------------------------------------------    CRSFRZ2A.28     
C                                                                          CRSFRZ2A.29     

      SUBROUTINE CRS_FRZL (NPNTS,RAIN,SNOW,THDD_KM1,EXKM1,                  3CRSFRZ2A.30     
     &                     FLX_DD_KM1,BDDWT_KM1)                           CRSFRZ2A.31     
C                                                                          CRSFRZ2A.32     
      IMPLICIT NONE                                                        CRSFRZ2A.33     
C                                                                          CRSFRZ2A.34     
C----------------------------------------------------------------------    CRSFRZ2A.35     
C MODEL CONSTANTS                                                          CRSFRZ2A.36     
C----------------------------------------------------------------------    CRSFRZ2A.37     
C                                                                          CRSFRZ2A.38     
*CALL C_LHEAT                                                              CRSFRZ2A.39     
*CALL C_R_CP                                                               CRSFRZ2A.40     
*CALL C_G                                                                  CRSFRZ2A.41     
*CALL C_0_DG_C                                                             CRSFRZ2A.42     
C                                                                          CRSFRZ2A.43     
C----------------------------------------------------------------------    CRSFRZ2A.44     
C VECTOR LENGTHS AND LOOP COUNTERS                                         CRSFRZ2A.45     
C----------------------------------------------------------------------    CRSFRZ2A.46     
C                                                                          CRSFRZ2A.47     
      INTEGER NPNTS                ! IN VECTOR LENGTH                      CRSFRZ2A.48     
C                                                                          CRSFRZ2A.49     
      INTEGER I                    ! LOOP COUNTER                          CRSFRZ2A.50     
C                                                                          CRSFRZ2A.51     
C----------------------------------------------------------------------    CRSFRZ2A.52     
C VARIABLES WHICH ARE INPUT                                                CRSFRZ2A.53     
C----------------------------------------------------------------------    CRSFRZ2A.54     
C                                                                          CRSFRZ2A.55     
      LOGICAL BDDWT_KM1(NPNTS)     ! IN MASK FOR POINTS WHERE              CRSFRZ2A.56     
                                   !    PRECIPITATION IS LIQUID            CRSFRZ2A.57     
                                   !    IN LAYER K+1                       CRSFRZ2A.58     
C                                                                          CRSFRZ2A.59     
      REAL EXKM1(NPNTS)            ! IN EXNER RATIO FOR LAYER K-1          CRSFRZ2A.60     
C                                                                          CRSFRZ2A.61     
      REAL FLX_DD_KM1(NPNTS)       ! IN MASS FLUX OF LAYER K-1 (PA/S)      CRSFRZ2A.62     
C                                                                          CRSFRZ2A.63     
C----------------------------------------------------------------------    CRSFRZ2A.64     
C VARIABLES WHICH ARE INPUT AND OUTPUT                                     CRSFRZ2A.65     
C----------------------------------------------------------------------    CRSFRZ2A.66     
C                                                                          CRSFRZ2A.67     
      REAL RAIN(NPNTS)             ! INOUT                                 CRSFRZ2A.68     
                                   ! IN  AMOUNT OF FALLING RAIN            CRSFRZ2A.69     
                                   !     DESCENDING FROM LAYER             CRSFRZ2A.70     
                                   !     K-1 TO K-2 (KG/M**2/S)            CRSFRZ2A.71     
                                   ! OUT UPDATED AMOUNT OF FALLING         CRSFRZ2A.72     
                                   !     RAIN (KG/M**2/S)                  CRSFRZ2A.73     
C                                                                          CRSFRZ2A.74     
      REAL SNOW(NPNTS)             ! INOUT                                 CRSFRZ2A.75     
                                   ! IN  AMOUNT OF FALLING SNOW            CRSFRZ2A.76     
                                   !     DESCENDING FROM LAYER             CRSFRZ2A.77     
                                   !     K-1 TO K-2 (KG/M**2/S)            CRSFRZ2A.78     
                                   ! OUT UPDATED AMOUNT OF FALLING         CRSFRZ2A.79     
                                   !     SNOW (KG/M**2/S)                  CRSFRZ2A.80     
C                                                                          CRSFRZ2A.81     
      REAL THDD_KM1(NPNTS)         ! INOUT                                 CRSFRZ2A.82     
                                   ! IN  DOWNDRAUGHT POTENTIAL             CRSFRZ2A.83     
                                   !     TEMPERATURE IN LAYER K-1 (K)      CRSFRZ2A.84     
                                   ! OUT UPDATED DOWNDRAUGHT POTENTIAL     CRSFRZ2A.85     
                                   !     TEMPERATURE IN LAYER K-1          CRSFRZ2A.86     
                                   !     DUE TO CHANGE OF PHASE (K)        CRSFRZ2A.87     
C                                                                          CRSFRZ2A.88     
C----------------------------------------------------------------------    CRSFRZ2A.89     
C VARIABLES WHICH ARE DEFINED LOCALLY                                      CRSFRZ2A.90     
C---------------------------------------------------------------------     CRSFRZ2A.91     
C                                                                          CRSFRZ2A.92     
      REAL FACTOR                  ! USED IN THE CALCULATION OF            CRSFRZ2A.93     
                                   ! CHANGE OF PHASE OF FALLING            CRSFRZ2A.94     
                                   ! PRECIPITATION                         CRSFRZ2A.95     
C                                                                          CRSFRZ2A.96     
      REAL PRECIP_FRE              ! FREEZING PRECIPITATION                CRSFRZ2A.97     
C                                                                          CRSFRZ2A.98     
      REAL PRECIP_MELT             ! MELTING PRECIPITATION                 CRSFRZ2A.99     
C                                                                          CRSFRZ2A.100    
CL                                                                         CRSFRZ2A.101    
CL----------------------------------------------------------------------   CRSFRZ2A.102    
CL  ADD LATENT HEATING WHERE PRECIP CROSSES A MELTING OR FREEZING LEVEL    CRSFRZ2A.103    
CL                                                                         CRSFRZ2A.104    
CL  UM DOCUMENTATION PAPER P27                                             CRSFRZ2A.105    
CL  SECTION (11), EQUATION (42)                                            CRSFRZ2A.106    
CL----------------------------------------------------------------------   CRSFRZ2A.107    
CL                                                                         CRSFRZ2A.108    
       DO I=1,NPNTS                                                        CRSFRZ2A.109    
        FACTOR = LF*G/(EXKM1(I)*CP*FLX_DD_KM1(I))                          CRSFRZ2A.110    
C                                                                          CRSFRZ2A.111    
        IF (.NOT.BDDWT_KM1(I).AND.RAIN(I).GT.0.0.AND.THDD_KM1(I).LT.       CRSFRZ2A.112    
     *       TM/EXKM1(I)) THEN                                             CRSFRZ2A.113    
C FREEZE                                                                   CRSFRZ2A.114    
          PRECIP_FRE = (TM/EXKM1(I)-THDD_KM1(I))/ FACTOR                   CRSFRZ2A.115    
          IF (PRECIP_FRE.GT.RAIN(I)) PRECIP_FRE = RAIN(I)                  CRSFRZ2A.116    
          THDD_KM1(I) = THDD_KM1(I)+PRECIP_FRE*FACTOR                      CRSFRZ2A.117    
          RAIN(I) = RAIN(I)-PRECIP_FRE                                     CRSFRZ2A.118    
          SNOW(I) = SNOW(I)+PRECIP_FRE                                     CRSFRZ2A.119    
C                                                                          CRSFRZ2A.120    
        ELSE IF (BDDWT_KM1(I).AND.SNOW(I).GT.0.0) THEN                     CRSFRZ2A.121    
C MELT                                                                     CRSFRZ2A.122    
          PRECIP_MELT = (THDD_KM1(I)-TM/EXKM1(I))/FACTOR                   CRSFRZ2A.123    
          IF (PRECIP_MELT.GT.SNOW(I)) PRECIP_MELT = SNOW(I)                CRSFRZ2A.124    
          THDD_KM1(I) = THDD_KM1(I)-PRECIP_MELT*FACTOR                     CRSFRZ2A.125    
          RAIN(I) = RAIN(I)+PRECIP_MELT                                    CRSFRZ2A.126    
          SNOW(I) = SNOW(I)-PRECIP_MELT                                    CRSFRZ2A.127    
        END IF                                                             CRSFRZ2A.128    
      END DO                                                               CRSFRZ2A.129    
C                                                                          CRSFRZ2A.130    
      RETURN                                                               CRSFRZ2A.131    
      END                                                                  CRSFRZ2A.132    
C                                                                          CRSFRZ2A.133    
*ENDIF                                                                     CRSFRZ2A.134