*IF DEF,A05_2A,OR,DEF,A05_2C,OR,DEF,A05_3B,OR,DEF,A05_3C                   AJX1F405.120    
C ******************************COPYRIGHT******************************    GTS2F400.1117   
C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved.    GTS2F400.1118   
C                                                                          GTS2F400.1119   
C Use, duplication or disclosure of this code is subject to the            GTS2F400.1120   
C restrictions as set forth in the contract.                               GTS2F400.1121   
C                                                                          GTS2F400.1122   
C                Meteorological Office                                     GTS2F400.1123   
C                London Road                                               GTS2F400.1124   
C                BRACKNELL                                                 GTS2F400.1125   
C                Berkshire UK                                              GTS2F400.1126   
C                RG12 2SZ                                                  GTS2F400.1127   
C                                                                          GTS2F400.1128   
C If no contract has been raised with this copy of the code, the use,      GTS2F400.1129   
C duplication or disclosure of it is strictly prohibited.  Permission      GTS2F400.1130   
C to do so must first be obtained in writing from the Head of Numerical    GTS2F400.1131   
C Modelling at the above address.                                          GTS2F400.1132   
C ******************************COPYRIGHT******************************    GTS2F400.1133   
C                                                                          GTS2F400.1134   
CLL  SUBROUTINE CON_RAD------------------------------------------------    CONRAD1A.3      
CLL                                                                        CONRAD1A.4      
CLL  PURPOSE : CALCULATES CONVECTIVE CLOUD TOP, BASE AND                   CONRAD1A.5      
CLL            AMOUNT                                                      CONRAD1A.6      
CLL                                                                        CONRAD1A.7      
CLL  SUITABLE FOR SINGLE COLUMN MODEL USE                                  CONRAD1A.8      
CLL                                                                        CONRAD1A.9      
CLL  CODE REWORKED FOR CRAY Y-MP BY D.GREGORY AUTUMN/WINTER 1989/90        CONRAD1A.10     
CLL                                                                        CONRAD1A.11     
CLL  MODEL            MODIFICATION HISTORY FROM MODEL VERSION 3.0:         CONRAD1A.12     
CLL VERSION  DATE                                                          CONRAD1A.13     
CLL  3.3  23/12/93 Change to cloud top because of                          ARN2F304.16     
CLL                change to detrainment rate calculation.  D.Gregory.     ARN2F304.17     
CLL                                                                        ARN2F304.18     
CLL  3.4  21/03/94  Add lowest conv.cloud diagnostics.  R.T.H.Barnes.      ARN2F304.19     
CLL                                                                        ARN2F304.20     
CLL  4.4  26/09/97  Pass in extra cloud water variable to allow rain       AJX0F404.359    
CLL                 out in CLOUDW before calculation of water path         AJX0F404.360    
CLL                 if L_CCW is set to .TRUE. in CLOUDW.      J.M.G.       AJX0F404.361    
CLL                                                                        CONRAD1A.14     
CLL  PROGRAMMING STANDARDS : UNIFIED MODEL DOCUMENTATION PAPER NO. 4       CONRAD1A.15     
CLL  VERSION NO. 1                                                         CONRAD1A.16     
CLL                                                                        CONRAD1A.17     
CLL  LOGICAL COMPONENT NUMBER: P27                                         CONRAD1A.18     
CLL                                                                        CONRAD1A.19     
CLL  SYSTEM TASK : P27                                                     CONRAD1A.20     
CLL                                                                        CONRAD1A.21     
CLL  DOCUMENTATION : UNIFIED MODEL DOCUMENTATION PAPER P27                 CONRAD1A.22     
CLL                  SECTION (9)                                           CONRAD1A.23     
CLL                                                                        CONRAD1A.24     
CLLEND-----------------------------------------------------------------    CONRAD1A.25     
C                                                                          CONRAD1A.26     
C*L  ARGUMENTS---------------------------------------------------------    CONRAD1A.27     
C                                                                          CONRAD1A.28     

      SUBROUTINE CON_RAD (K,XPK,XPKP1,FLXKP1,BTERM,CCA,ICCB,ICCT,TCW,       2ARN2F304.21     
     *              CCW,CCLWP,DELPKP1,LCCA,LCBASE,LCTOP,LCCLWP,NPNTS)      AJX0F404.362    
C                                                                          CONRAD1A.31     
      IMPLICIT NONE                                                        CONRAD1A.32     
C                                                                          CONRAD1A.33     
C                                                                          CONRAD1A.34     
C----------------------------------------------------------------------    CONRAD1A.35     
C MODEL CONSTANTS                                                          CONRAD1A.36     
C----------------------------------------------------------------------    CONRAD1A.37     
C                                                                          CONRAD1A.38     
*CALL C_G                                                                  CONRAD1A.39     
C                                                                          CONRAD1A.40     
C----------------------------------------------------------------------    CONRAD1A.41     
C VECTOR LENGTH AND LOOP VARIABLES                                         CONRAD1A.42     
C----------------------------------------------------------------------    CONRAD1A.43     
C                                                                          CONRAD1A.44     
      INTEGER NPNTS        ! IN VECTOR LENGTH                              CONRAD1A.45     
C                                                                          CONRAD1A.46     
      INTEGER K            ! IN PRESENT MODEL LAYER                        CONRAD1A.47     
C                                                                          CONRAD1A.48     
      INTEGER I            ! LOOP COUNTER                                  CONRAD1A.49     
C                                                                          CONRAD1A.50     
C                                                                          CONRAD1A.51     
C----------------------------------------------------------------------    CONRAD1A.52     
C VARIABLES WHICH ARE INPUT                                                CONRAD1A.53     
C----------------------------------------------------------------------    CONRAD1A.54     
C                                                                          CONRAD1A.55     
      REAL XPK(NPNTS)      ! IN PARCEL CLOUD WATER IN LAYER K (KG/KG)      CONRAD1A.56     
C                                                                          CONRAD1A.57     
      REAL XPKP1(NPNTS)    ! IN PARCEL CLOUD WATER IN LAYER K+1 (KG/KG)    CONRAD1A.58     
C                                                                          CONRAD1A.59     
      LOGICAL BTERM(NPNTS) ! IN MASK FOR POINTS WHERE CONVECTION           CONRAD1A.60     
                           !    IS ENDING                                  CONRAD1A.61     
C                                                                          CONRAD1A.62     
      REAL FLXKP1(NPNTS)   ! IN PARCEL MASSFLUX IN LAYER K+1 (PA/S)        CONRAD1A.63     
C                                                                          CONRAD1A.64     
      REAL DELPKP1(NPNTS)  ! IN PRESSURE DIFFERENCE ACROSS LAYER K+1       CONRAD1A.65     
C                                                                          CONRAD1A.66     
      REAL CCW(NPNTS)      ! IN PARCEL CLOUD WATER AS CALCULATED BEFORE    AJX0F404.363    
                           !    PRECIPITATION. LAYER K+1 (KG/KG)           AJX0F404.364    
C                                                                          CONRAD1A.67     
C                                                                          AJX0F404.365    
C----------------------------------------------------------------------    CONRAD1A.68     
C VARIABLES WHICH ARE INPUT AND OUTPUT                                     CONRAD1A.69     
C----------------------------------------------------------------------    CONRAD1A.70     
C                                                                          CONRAD1A.71     
      REAL TCW(NPNTS)      ! INOUT                                         CONRAD1A.72     
                           ! IN  TOTAL CONDENSED WATER SUMMED TO           CONRAD1A.73     
                           !     LAYER K (KG/M**2/S)                       CONRAD1A.74     
                           ! OUT TOTAL CONDENSED WATER SUMMED TO           CONRAD1A.75     
                           !     LAYER K+1 OR IF CONVECTION HAS            CONRAD1A.76     
                           !     TERMINATED ZEROED (KG/M**2/S)             CONRAD1A.77     
C                                                                          CONRAD1A.78     
      REAL CCLWP(NPNTS)    ! INOUT                                         CONRAD1A.79     
                           ! IN  TOTAL CLOUD LIQUID WATER PATH             CONRAD1A.80     
                           !     SUMMED TO LAYER K  (KG/M**2)              CONRAD1A.81     
                           ! OUT TOTAL CLOUD LIQUID WATER PATH             CONRAD1A.82     
                           !     SUMMED TO LAYER K+1 (KG/M**2)             CONRAD1A.83     
      REAL LCCA(NPNTS)      ! INOUT LOWEST CONV.CLOUD AMOUNT (%)           ARN2F304.23     
C                                                                          ARN2F304.24     
      INTEGER LCBASE(NPNTS) ! INOUT LOWEST CONV.CLOUD BASE LEVEL           ARN2F304.25     
C                                                                          ARN2F304.26     
      INTEGER LCTOP(NPNTS)  ! INOUT LOWEST CONV.CLOUD TOP LEVEL            ARN2F304.27     
C                                                                          CONRAD1A.84     
C                                                                          CONRAD1A.85     
C----------------------------------------------------------------------    CONRAD1A.86     
C VARIABLES WHICH ARE AND OUTPUT                                           CONRAD1A.87     
C----------------------------------------------------------------------    CONRAD1A.88     
C                                                                          CONRAD1A.89     
      REAL CCA(NPNTS)      ! OUT CONVECTIVE CLOUD AMOUNT (%)               CONRAD1A.90     
C                                                                          CONRAD1A.91     
      INTEGER ICCB(NPNTS)   ! OUT CONVECTIVE CLOUD BASE LEVEL              CONRAD1A.92     
C                                                                          CONRAD1A.93     
      INTEGER ICCT(NPNTS)   ! OUT CONVECTIVE CLOUD TOP LEVEL               CONRAD1A.94     
C                                                                          CONRAD1A.95     
      REAL LCCLWP(NPNTS)    ! OUT LOWEST CONV.CLOUD LIQ.WATER PATH         ARN2F304.28     
C                                                                          ARN2F304.29     
C                                                                          ARN2F304.30     
C*---------------------------------------------------------------------    CONRAD1A.96     
CL                                                                         CONRAD1A.97     
CL---------------------------------------------------------------------    CONRAD1A.98     
CL CALCULATE CLOUD BASE and Lowest Cloud Base                              ARN2F304.31     
CL                                                                         CONRAD1A.100    
CL WHEN CLOUD BASE SET ZERO TOTAL CONDENSED WATER                          CONRAD1A.101    
CL---------------------------------------------------------------------    CONRAD1A.102    
CL                                                                         CONRAD1A.103    
      DO  I = 1,NPNTS                                                      ARN2F304.32     
        IF ( XPK(I) .LE. 0.0 .AND. CCW(I) .GT. 0 ) THEN                    AJX0F404.366    
          ICCB(I)=K+1                                                      ARN2F304.34     
          CCLWP(I)=0.0                                                     ARN2F304.35     
        END IF                                                             ARN2F304.36     
                                                                           ARN2F304.37     
        IF ( XPK(I) .LE. 0.0 .AND. CCW(I) .GT. 0.0 .AND.                   AJX0F404.367    
     &       LCBASE(I) .EQ. 0 ) THEN                                       ARN2F304.39     
          LCBASE(I)=K+1                                                    ARN2F304.40     
          LCCLWP(I)=0.0                                                    ARN2F304.41     
        END IF                                                             ARN2F304.42     
CL                                                                         CONRAD1A.109    
CL---------------------------------------------------------------------    CONRAD1A.110    
CL CALCULATE CLOUD TOP and Lowest Cloud Top                                ARN2F304.43     
CL---------------------------------------------------------------------    CONRAD1A.112    
CL                                                                         CONRAD1A.113    
        IF (BTERM(I) .AND.                                                 ARN2F304.44     
     *      ((CCW(I).GT.0.0).OR.(XPK(I).GT.0.0)) ) ICCT(I) = K+1           AJX0F404.368    
                                                                           ARN2F304.46     
        IF (BTERM(I) .AND.  LCTOP(I).EQ.0 .AND.                            ARN2F304.47     
     *      ((CCW(I).GT.0.0).OR.(XPK(I).GT.0.0)) ) THEN                    AJX0F404.369    
          LCTOP(I) = K+1                                                   ARN2F304.49     
        END IF                                                             ARN2F304.50     
C                                                                          DG020893.49     
        IF ( FLXKP1(I) .GT. 0.0) THEN                                      ARN2F304.51     
CL                                                                         CONRAD1A.116    
CL---------------------------------------------------------------------    CONRAD1A.117    
CL SUM TOTAL CONDENSED WATER PER SECOND - ASSUMES THAT THE INITIAL         CONRAD1A.118    
CL CONVECTIVE LAYER IS UNSATURATED                                         CONRAD1A.119    
CL---------------------------------------------------------------------    CONRAD1A.120    
CL                                                                         CONRAD1A.121    
          TCW(I) = TCW(I) + FLXKP1(I) * CCW(I) / G                         AJX0F404.370    
CL                                                                         CONRAD1A.123    
CL---------------------------------------------------------------------    CONRAD1A.124    
CL SUM CONV CONDENSED WATER PATH - ASSUMES THAT THE INITIAL                CONRAD1A.125    
CL CONVECTIVE LAYER IS UNSATURATED                                         CONRAD1A.126    
CL---------------------------------------------------------------------    CONRAD1A.127    
CL                                                                         CONRAD1A.128    
          CCLWP(I) = CCLWP(I) + XPKP1(I) * DELPKP1(I) / G                  ARN2F304.53     
CL                                                                         ARN2F304.54     
CL---------------------------------------------------------------------    ARN2F304.55     
CL SUM CONV CONDENSED WATER PATH up to lowest conv.cloud                   ARN2F304.56     
CL ASSUMES THAT THE INITIAL CONVECTIVE LAYER IS UNSATURATED                ARN2F304.57     
CL---------------------------------------------------------------------    ARN2F304.58     
CL                                                                         ARN2F304.59     
          IF (LCCA(I).LE.0.0) THEN                                         ARN2F304.60     
            LCCLWP(I) = LCCLWP(I) + CCW(I) * DELPKP1(I) / G                AJX0F404.371    
          END IF                                                           ARN2F304.62     
C                                                                          DG020893.51     
        END IF                                                             ARN2F304.63     
CL                                                                         CONRAD1A.130    
CL---------------------------------------------------------------------    CONRAD1A.131    
CL CALCULATE CONVECTIVE CLOUD AMOUNT IF CONVECTION TERMINATES IN           CONRAD1A.132    
CL LAYER K AND TOTAL CONDENSED WATER PATH OVER A TIME STEP                 CONRAD1A.133    
CL                                                                         CONRAD1A.134    
CL UM DOCUMENTATION PAPER P27                                              CONRAD1A.135    
CL SECTION (9), EQUATION (37)                                              CONRAD1A.136    
CL---------------------------------------------------------------------    CONRAD1A.137    
CL                                                                         CONRAD1A.138    
        IF( BTERM(I) .AND. TCW(I).GT.0.0 ) THEN                            ARN2F304.64     
C                                                                          CONRAD1A.140    
          IF ( TCW(I) .LT. 2.002E-6 ) TCW(I) = 2.002E-6                    ARN2F304.65     
C                                                                          CONRAD1A.142    
          CCA(I) = 0.7873 + 0.06 * LOG(TCW(I))                             ARN2F304.66     
          IF (CCA(I) .GT. 1.0) CCA(I) = 1.0                                ARN2F304.67     
C                                                                          CONRAD1A.145    
          IF (LCCA(I).LE.0.0) THEN                                         ARN2F304.68     
            LCCA(I) = 0.7873 + 0.06 * LOG(TCW(I))                          ARN2F304.69     
            IF (LCCA(I) .GT. 1.0) LCCA(I) = 1.0                            ARN2F304.70     
          END IF                                                           ARN2F304.71     
C                                                                          CONRAD1A.147    
          TCW(I) = 0.0                                                     ARN2F304.72     
C                                                                          ARN2F304.73     
        END IF                                                             ARN2F304.74     
      END DO ! I loop over NPNTS                                           ARN2F304.75     
C                                                                          CONRAD1A.150    
      RETURN                                                               CONRAD1A.151    
      END                                                                  CONRAD1A.152    
*ENDIF                                                                     CONRAD1A.153