*IF DEF,A05_3C                                                             CRSFRZ3C.2      
C ******************************COPYRIGHT******************************    CRSFRZ3C.3      
C (c) CROWN COPYRIGHT 1997, METEOROLOGICAL OFFICE, All Rights Reserved.    CRSFRZ3C.4      
C                                                                          CRSFRZ3C.5      
C Use, duplication or disclosure of this code is subject to the            CRSFRZ3C.6      
C restrictions as set forth in the contract.                               CRSFRZ3C.7      
C                                                                          CRSFRZ3C.8      
C                Meteorological Office                                     CRSFRZ3C.9      
C                London Road                                               CRSFRZ3C.10     
C                BRACKNELL                                                 CRSFRZ3C.11     
C                Berkshire UK                                              CRSFRZ3C.12     
C                RG12 2SZ                                                  CRSFRZ3C.13     
C                                                                          CRSFRZ3C.14     
C If no contract has been raised with this copy of the code, the use,      CRSFRZ3C.15     
C duplication or disclosure of it is strictly prohibited.  Permission      CRSFRZ3C.16     
C to do so must first be obtained in writing from the Head of Numerical    CRSFRZ3C.17     
C Modelling at the above address.                                          CRSFRZ3C.18     
C ******************************COPYRIGHT******************************    CRSFRZ3C.19     
C                                                                          CRSFRZ3C.20     
CLL  SUBROUTINE CRS_FRZL------------------------------------------         CRSFRZ3C.21     
CLL                                                                        CRSFRZ3C.22     
CLL  PURPOSE : CHANGE OF PHASE ROUTINE WHERE PRECIPITATION                 CRSFRZ3C.23     
CLL            CROSSES A MELTING OR FREEZING LEVEL                         CRSFRZ3C.24     
CLL                                                                        CRSFRZ3C.25     
CLL            ADD LATENT HEATING                                          CRSFRZ3C.26     
CLL                                                                        CRSFRZ3C.27     
CLL  SUITABLE FOR SINGLE COLUMN MODEL USE                                  CRSFRZ3C.28     
CLL                                                                        CRSFRZ3C.29     
CLL  CODE WRITTEN FOR CRAY Y-MP BY S.BETT AND D.GREGORY AUTUMN 1991        CRSFRZ3C.30     
CLL                                                                        CRSFRZ3C.31     
CLL  MODEL            MODIFICATION HISTORY:                                CRSFRZ3C.32     
CLL VERSION  DATE                                                          CRSFRZ3C.33     
!LL   4.4   17/10/97  New version optimised for T3E.                       CRSFRZ3C.34     
!LL                   Single PE optimisations           D.Salmond          CRSFRZ3C.35     
!LL   4.5   03/03/98  Insert missing brackets. Julie Gregory.              ADR1F405.75     
CLL                                                                        CRSFRZ3C.36     
CLL  PROGRAMMING STANDARDS : UNIFIED MODEL DOCUMENTATION PAPER NO. 3       CRSFRZ3C.37     
CLL  VERSION NO. 4  DATED 5/2/92                                           CRSFRZ3C.38     
CLL                                                                        CRSFRZ3C.39     
CLL  LOGICAL COMPONENTS COVERED:                                           CRSFRZ3C.40     
CLL                                                                        CRSFRZ3C.41     
CLL  SYSTEM TASK : P27                                                     CRSFRZ3C.42     
CLL                                                                        CRSFRZ3C.43     
CLL  DOCUMENTATION : UNIFIED MODEL DOCUMENTATION PAPER 27                  CRSFRZ3C.44     
CLL                                                                        CRSFRZ3C.45     
CLLEND-----------------------------------------------------------------    CRSFRZ3C.46     
C                                                                          CRSFRZ3C.47     
C*L  ARGUMENTS---------------------------------------------------------    CRSFRZ3C.48     
C                                                                          CRSFRZ3C.49     

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