*IF DEF,A05_2C                                                             DOWND2C.2      
C ******************************COPYRIGHT******************************    DOWND2C.3      
C (c) CROWN COPYRIGHT 1996, METEOROLOGICAL OFFICE, All Rights Reserved.    DOWND2C.4      
C                                                                          DOWND2C.5      
C Use, duplication or disclosure of this code is subject to the            DOWND2C.6      
C restrictions as set forth in the contract.                               DOWND2C.7      
C                                                                          DOWND2C.8      
C                Meteorological Office                                     DOWND2C.9      
C                London Road                                               DOWND2C.10     
C                BRACKNELL                                                 DOWND2C.11     
C                Berkshire UK                                              DOWND2C.12     
C                RG12 2SZ                                                  DOWND2C.13     
C                                                                          DOWND2C.14     
C If no contract has been raised with this copy of the code, the use,      DOWND2C.15     
C duplication or disclosure of it is strictly prohibited.  Permission      DOWND2C.16     
C to do so must first be obtained in writing from the Head of Numerical    DOWND2C.17     
C Modelling at the above address.                                          DOWND2C.18     
C ******************************COPYRIGHT******************************    DOWND2C.19     
C                                                                          DOWND2C.20     
CLL  SUBROUTINE DOWND--------------------------------------------------    DOWND2C.21     
CLL                                                                        DOWND2C.22     
CLL  PURPOSE : CALL DOWNDRAUGHT CALCULATION                                DOWND2C.23     
CLL                                                                        DOWND2C.24     
CLL            CHANGE OF PHASE CALCULATION WHERE NO DOWNDRAUGHT OCCURS     DOWND2C.25     
CLL                                                                        DOWND2C.26     
CLL  SUITABLE FOR SINGLE COLUMN MODEL USE                                  DOWND2C.27     
CLL                                                                        DOWND2C.28     
CLL  MODEL            MODIFICATION HISTORY FROM MODEL:                     DOWND2C.29     
CLL VERSION  DATE                                                          DOWND2C.30     
CLL   4.2   1/11/96   New deck version based on DOWND2A with HADCM2        DOWND2C.31     
CLL                   specific modifications: R Jones                      DOWND2C.32     
!LL  4.5   23/02/98  Call comdecks. D. Robinson                            ADR1F405.44     
CLL                                                                        DOWND2C.33     
CLL  PROGRAMMING STANDARDS : UNIFIED MODEL DOCUMENTATION PAPER NO. 3       DOWND2C.34     
CLL  VERSION NO. 4  DATED 5/2/92                                           DOWND2C.35     
CLL                                                                        DOWND2C.36     
CLL  SYSTEM TASK : P27                                                     DOWND2C.37     
CLL                                                                        DOWND2C.38     
CLL  DOCUMENTATION : UNIFIED MODEL DOCUMENTATION PAPER 27                  DOWND2C.39     
CLL                                                                        DOWND2C.40     
CLLEND-----------------------------------------------------------------    DOWND2C.41     
C                                                                          DOWND2C.42     
C*L  ARGUMENTS---------------------------------------------------------    DOWND2C.43     
C                                                                          DOWND2C.44     

      SUBROUTINE DOWND (NPNTS,K,KCT,THDD_K,QDD_K,THE_K,THE_KM1,QE_K,        4,12DOWND2C.45     
     &                  QE_KM1,DTHBYDT_K,DTHBYDT_KM1,DQBYDT_K,             DOWND2C.46     
     &                  DQBYDT_KM1,FLX_DD_K,P_KM1,DELPK,DELPKM1,EXK,       DOWND2C.47     
     &                  EXKM1,DELTD,DELQD,AMDETK,EKM14,EKM34,PRECIP_K,     DOWND2C.48     
     &                  RAIN,SNOW,ICCB,BWATER_K,BDD_START,                 DOWND2C.49     
     &                  BDDWT_K,BDDWT_KM1,BDD_ON,RAIN_ENV,SNOW_ENV,        DOWND2C.50     
     &                  RAIN_DD,SNOW_DD,FLX_UD_K,TIMESTEP,CCA,NDDON_A)     DOWND2C.51     
C                                                                          DOWND2C.52     
      IMPLICIT NONE                                                        DOWND2C.53     
C                                                                          DOWND2C.54     
C-----------------------------------------------------------------------   DOWND2C.55     
C MODEL CONSTANTS                                                          DOWND2C.56     
C-----------------------------------------------------------------------   DOWND2C.57     
*CALL C_0_DG_C                                                             ADR1F405.45     
C                                                                          DOWND2C.70     
C-----------------------------------------------------------------------   DOWND2C.71     
C VECTOR LENGTHS AND LOOP COUNTERS                                         DOWND2C.72     
C-----------------------------------------------------------------------   DOWND2C.73     
C                                                                          DOWND2C.74     
C                                                                          DOWND2C.75     
      INTEGER I                  ! LOOP COUNTER                            DOWND2C.76     
C                                                                          DOWND2C.77     
      INTEGER K                  ! IN PRESENT MODEL LAYER                  DOWND2C.78     
C                                                                          DOWND2C.79     
      INTEGER NPNTS              ! IN NUMBER OF POINTS                     DOWND2C.80     
C                                                                          DOWND2C.81     
      INTEGER NDDON,NDDON_A      ! NUMBER OF POINTS AT WHICH               DOWND2C.82     
                                 ! DOWNDRAUGHT DOES OCCUR                  DOWND2C.83     
C                                                                          DOWND2C.84     
C-----------------------------------------------------------------------   DOWND2C.85     
C VARIABLES WHICH ARE INPUT                                                DOWND2C.86     
C-----------------------------------------------------------------------   DOWND2C.87     
C                                                                          DOWND2C.88     
      INTEGER KCT                ! IN CONVECTIVE CLOUD TOP LAYER           DOWND2C.89     
C                                                                          DOWND2C.90     
      REAL THDD_K(NPNTS)         ! IN MODEL POTENTIAL TEMPERATURE          DOWND2C.91     
                                 !    OF DOWNDRAUGHT IN LAYER K (K)        DOWND2C.92     
C                                                                          DOWND2C.93     
      REAL QDD_K(NPNTS)          ! IN MIXING RATIO OF DOWNDRAUGHT IN       DOWND2C.94     
                                 !    LAYER K (KG/KG)                      DOWND2C.95     
C                                                                          DOWND2C.96     
      REAL THE_K(NPNTS)          ! IN POTENTIAL TEMPERATURE OF             DOWND2C.97     
                                 !    ENVIRONMENT IN LAYER K (K)           DOWND2C.98     
C                                                                          DOWND2C.99     
      REAL THE_KM1(NPNTS)        ! IN POTENTIAL TEMPERATURE OF             DOWND2C.100    
                                 !    ENVIRONMENT IN LAYER K-1 (K)         DOWND2C.101    
C                                                                          DOWND2C.102    
      REAL QE_K(NPNTS)           ! IN MIXING RATIO OF ENVIRONMENT IN       DOWND2C.103    
                                 !    LAYER K (KG/KG)                      DOWND2C.104    
C                                                                          DOWND2C.105    
      REAL QE_KM1(NPNTS)         ! IN MIXING RATIO OF ENVIRONMENT IN       DOWND2C.106    
                                 !    LAYER K-1 (KG/KG)                    DOWND2C.107    
C                                                                          DOWND2C.108    
      REAL FLX_DD_K(NPNTS)       ! IN DOWNDRAUGHT MASS FLUX OF LAYER K     DOWND2C.109    
                                 !    (PA/S)                               DOWND2C.110    
C                                                                          DOWND2C.111    
      REAL P_KM1(NPNTS)          ! IN PRESSURE OF LAYER K-1 (PA)           DOWND2C.112    
C                                                                          DOWND2C.113    
      REAL DELPK(NPNTS)          ! IN PRESSURE DIFFERENCE ACROSS           DOWND2C.114    
                                 !    LAYER K (PA)                         DOWND2C.115    
C                                                                          DOWND2C.116    
      REAL DELPKM1(NPNTS)        ! IN PRESSURE DIFFERENCE ACROSS           DOWND2C.117    
                                 !    LAYER K-1 (PA)                       DOWND2C.118    
C                                                                          DOWND2C.119    
      REAL EXK(NPNTS)            ! IN EXNER RATIO FOR LAYER K              DOWND2C.120    
C                                                                          DOWND2C.121    
      REAL EXKM1(NPNTS)          ! IN EXNER RATIO FOR LAYER K-1            DOWND2C.122    
C                                                                          DOWND2C.123    
      REAL PRECIP_K(NPNTS)       ! IN PRECIPITATION ADDED WHEN             DOWND2C.124    
                                 !    DESCENDING FROM LAYER K TO K-1       DOWND2C.125    
                                 !    (KG/M**2/S)                          DOWND2C.126    
C                                                                          DOWND2C.127    
      REAL AMDETK(NPNTS)         ! IN MIXING DETRAINMENT AT LEVEL K        DOWND2C.128    
                                 !    MULTIPLIED BY APPROPRIATE LAYER      DOWND2C.129    
                                 !    THICKNESS                            DOWND2C.130    
C                                                                          DOWND2C.131    
      REAL EKM14(NPNTS)          ! IN EXNER RATIO AT LAYER K-1/4           DOWND2C.132    
C                                                                          DOWND2C.133    
      REAL EKM34(NPNTS)          ! IN EXNER RATIO AT LAYER K-3/4           DOWND2C.134    
C                                                                          DOWND2C.135    
      REAL DELTD(NPNTS)          ! IN COOLING NECESSARY TO                 DOWND2C.136    
                                 !    ACHIEVE SATURATION (K)               DOWND2C.137    
C                                                                          DOWND2C.138    
      REAL DELQD(NPNTS)          ! IN MOISTENING NECESSARY TO              DOWND2C.139    
                                 !    ACHIEVE SATURATION (KG/KG)           DOWND2C.140    
C                                                                          DOWND2C.141    
      REAL ICCB(NPNTS)           ! IN CLOUD BASE LEVEL                     DOWND2C.142    
C                                                                          DOWND2C.143    
      LOGICAL BWATER_K(NPNTS)    ! IN MASK FOR THOSE POINTS AT WHICH       DOWND2C.144    
                                 !    CONDENSATE IS WATER IN LAYER K       DOWND2C.145    
C                                                                          DOWND2C.146    
      LOGICAL BDDWT_K(NPNTS)     ! IN MASK FOR THOSE POINTS IN             DOWND2C.147    
                                 !    DOWNDRAUGHT WHERE PRECIPITATION      DOWND2C.148    
                                 !    IS LIQUID IN LAYER K                 DOWND2C.149    
C                                                                          DOWND2C.150    
      LOGICAL BDDWT_KM1(NPNTS)   ! IN MASK FOR THOSE POINTS IN             DOWND2C.151    
                                 !    DOWNDRAUGHT WHERE PRECIPITATION      DOWND2C.152    
                                 !    IS LIQUID IN LAYER K-1               DOWND2C.153    
C                                                                          DOWND2C.154    
      REAL RAIN_ENV(NPNTS)       ! IN AMOUNT OF RAIN FALLING THROUGH       DOWND2C.155    
                                 !    THE ENVIRONMENT                      DOWND2C.156    
C                                                                          DOWND2C.157    
      REAL SNOW_ENV(NPNTS)       ! IN AMOUNT OF SNOW FALLING THROUGH       DOWND2C.158    
                                 !    THE ENVIRONMENT                      DOWND2C.159    
C                                                                          DOWND2C.160    
      REAL RAIN_DD(NPNTS)        ! IN AMOUNT OF RAIN FALLING THROUGH       DOWND2C.161    
                                 !    THE DOWNDRAUGHT                      DOWND2C.162    
C                                                                          DOWND2C.163    
      REAL SNOW_DD(NPNTS)        ! IN AMOUNT OF SNOW FALLING THROUGH       DOWND2C.164    
                                 !    THE DOWNDRAUGHT                      DOWND2C.165    
C                                                                          DOWND2C.166    
      REAL FLX_UD_K(NPNTS)       ! IN UPDRAUGHT MASSFLUX AT LAYER K        DOWND2C.167    
C                                                                          DOWND2C.168    
      REAL TIMESTEP              ! IN MODEL TIMESTEP (S)                   DOWND2C.169    
C                                                                          DOWND2C.170    
      REAL CCA(NPNTS)            ! IN CONVECTIVE CLOUD AMOUNT              DOWND2C.171    
C                                                                          DOWND2C.172    
C-----------------------------------------------------------------------   DOWND2C.173    
C VARIABLES WHICH ARE INPUT AND OUTPUT                                     DOWND2C.174    
C-----------------------------------------------------------------------   DOWND2C.175    
C                                                                          DOWND2C.176    
      LOGICAL BDD_START(NPNTS)   ! INOUT                                   DOWND2C.177    
                                 ! IN  MASK FOR THOSE POINTS WHERE         DOWND2C.178    
                                 !     DOWNDRAUGHT MAY FORM IN LAYER K     DOWND2C.179    
                                 ! OUT MASK FOR THOSE POINTS WHERE         DOWND2C.180    
                                 !     DOWNDRAUGHT MAY FORM IN LAYER       DOWND2C.181    
                                 !     K-1                                 DOWND2C.182    
C                                                                          DOWND2C.183    
      REAL DTHBYDT_K(NPNTS)      ! INOUT                                   DOWND2C.184    
                                 ! IN  INCREMENT TO MODEL POTENTIAL        DOWND2C.185    
                                 !     TEMPERATURE OF LAYER K (K/S)        DOWND2C.186    
                                 ! OUT UPDATED INCREMENT TO MODEL          DOWND2C.187    
                                 !     POTENTIAL TEMPERATURE OF LAYER K    DOWND2C.188    
                                 !     (K/S)                               DOWND2C.189    
C                                                                          DOWND2C.190    
      REAL DTHBYDT_KM1(NPNTS)    ! INOUT                                   DOWND2C.191    
                                 ! IN  INCREMENT TO MODEL POTENTIAL        DOWND2C.192    
                                 !     TEMPERATURE OF LAYER K-1 (K/S)      DOWND2C.193    
                                 ! OUT UPDATED INCREMENT TO MODEL          DOWND2C.194    
                                 !     POTENTIAL TEMPERATURE OF            DOWND2C.195    
                                 !     LAYER K-1 (K/S)                     DOWND2C.196    
C                                                                          DOWND2C.197    
      REAL DQBYDT_K(NPNTS)       ! INOUT                                   DOWND2C.198    
                                 ! IN  INCREMENT TO MODEL MIXING           DOWND2C.199    
                                 !     RATIO OF LAYER K (KG/KG/S)          DOWND2C.200    
                                 ! OUT UPDATED INCREMENT TO MODEL          DOWND2C.201    
                                 !     MIXING RATIO OF LAYER K (KG/KG/S)   DOWND2C.202    
C                                                                          DOWND2C.203    
      REAL DQBYDT_KM1(NPNTS)     ! INOUT                                   DOWND2C.204    
                                 ! IN  INCREMENT TO MODEL MIXING           DOWND2C.205    
                                 !     RATIO OF LAYER K-1 (KG/KG/S)        DOWND2C.206    
                                 ! OUT UPDATED INCREMENT TO MODEL          DOWND2C.207    
                                 !     POTENTIAL TEMPERATURE OF            DOWND2C.208    
                                 !     LAYER K-1 (KG/KG/S)                 DOWND2C.209    
C                                                                          DOWND2C.210    
      REAL RAIN (NPNTS)          ! INOUT                                   DOWND2C.211    
                                 ! IN  INITIALISED RAINFALL (KG/M**2/S)    DOWND2C.212    
                                 ! OUT SURFACE RAINFALL (KG/M**2/S)        DOWND2C.213    
C                                                                          DOWND2C.214    
      REAL SNOW(NPNTS)           ! INOUT                                   DOWND2C.215    
                                 ! IN  INITIALISED SNOWFALL (KG/M**2/S)    DOWND2C.216    
                                 ! OUT SURFACE SNOWFALL (KG/M**2/S)        DOWND2C.217    
C                                                                          DOWND2C.218    
      LOGICAL BDD_ON(NPNTS)      ! INOUT                                   DOWND2C.219    
                                 ! IN  MASK FOR THOSE POINTS WHERE DD      DOWND2C.220    
                                 !     HAS CONTINUED FROM PREVIOUS LAYER   DOWND2C.221    
                                 ! OUT MASK FOR THOSE POINTS WHERE DD      DOWND2C.222    
                                 !     CONTINUES TO LAYER K-1              DOWND2C.223    
C                                                                          DOWND2C.224    
C-----------------------------------------------------------------------   DOWND2C.225    
C VARIABLES WHICH ARE DEFINED LOCALLY                                      DOWND2C.226    
C-----------------------------------------------------------------------   DOWND2C.227    
C                                                                          DOWND2C.228    
C                                                                          DOWND2C.229    
      REAL WORK(NDDON_A,24)      !  WORK SPACE                             DOWND2C.230    
C                                                                          DOWND2C.231    
      LOGICAL BWORK(NDDON_A,5)   !  WORK SPACE FOR 'BIT' MASKS             DOWND2C.232    
C                                                                          DOWND2C.233    
      INTEGER INDEX1(NDDON_A)    !  INDEX FOR COMPRESS AND                 DOWND2C.234    
C                                                                          DOWND2C.235    
      LOGICAL B_DD_END(NPNTS)    !  MASK FOR POINTS WHERE DOWNDRAUGHT      DOWND2C.236    
                                 ! HAS ENDED                               DOWND2C.237    
C                                                                          DOWND2C.238    
C                                                                          DOWND2C.239    
      REAL FACTOR                !  PROPORTION OF RAINFALL GOING           DOWND2C.240    
                                 !  THROUGH DOWNDRAUGHT                    DOWND2C.241    
C                                                                          DOWND2C.242    
C-----------------------------------------------------------------------   DOWND2C.243    
C EXTERNAL ROUTINES CALLED                                                 DOWND2C.244    
C-----------------------------------------------------------------------   DOWND2C.245    
C                                                                          DOWND2C.246    
      EXTERNAL CHG_PHSE, PEVP_BCB, DDRAUGHT                                DOWND2C.247    
C                                                                          DOWND2C.248    
C-----------------------------------------------------------------------   DOWND2C.249    
C START OF MAIN LOOP                                                       DOWND2C.250    
C   UPDATE PRECIPITATION AND CALCULATE MASK FOR WHERE PRECIPITATION        DOWND2C.251    
C   IS LIQUID                                                              DOWND2C.252    
C-----------------------------------------------------------------------   DOWND2C.253    
C                                                                          DOWND2C.254    
      DO I=1,NPNTS                                                         DOWND2C.255    
        B_DD_END(I) = .FALSE.                                              DOWND2C.256    
      END DO                                                               DOWND2C.257    
C                                                                          DOWND2C.258    
      IF (K.EQ.KCT+1) THEN                                                 DOWND2C.259    
        DO I=1,NPNTS                                                       DOWND2C.260    
         RAIN_DD(I) = 0.0                                                  DOWND2C.261    
         RAIN_ENV(I) = 0.0                                                 DOWND2C.262    
         SNOW_DD(I) = 0.0                                                  DOWND2C.263    
         SNOW_ENV(I) = 0.0                                                 DOWND2C.264    
        END DO                                                             DOWND2C.265    
      END IF                                                               DOWND2C.266    
C                                                                          DOWND2C.267    
      DO I=1,NPNTS                                                         DOWND2C.268    
C                                                                          DOWND2C.269    
         IF (BDD_ON(I)) THEN                                               DOWND2C.270    
           FACTOR = 1.0                                                    DOWND2C.271    
         ELSE                                                              DOWND2C.272    
           FACTOR = 0.0                                                    DOWND2C.273    
         END IF                                                            DOWND2C.274    
C                                                                          DOWND2C.275    
         IF (BWATER_K(I)) THEN                                             DOWND2C.276    
           RAIN_DD(I) = RAIN_DD(I)+(PRECIP_K(I)+RAIN_ENV(I))*FACTOR        DOWND2C.277    
           RAIN_ENV(I) = (RAIN_ENV(I)+PRECIP_K(I))*(1.0-FACTOR)            DOWND2C.278    
           SNOW_DD(I) = SNOW_DD(I) + SNOW_ENV(I)*FACTOR                    DOWND2C.279    
           SNOW_ENV(I) = SNOW_ENV(I)*(1.0-FACTOR)                          DOWND2C.280    
         ELSE                                                              DOWND2C.281    
           SNOW_DD(I) = SNOW_DD(I)+(PRECIP_K(I)+SNOW_ENV(I))*FACTOR        DOWND2C.282    
           SNOW_ENV(I) = (SNOW_ENV(I)+PRECIP_K(I))*(1.0-FACTOR)            DOWND2C.283    
           RAIN_DD(I) = RAIN_DD(I) + RAIN_ENV(I)*FACTOR                    DOWND2C.284    
           RAIN_ENV(I) = RAIN_ENV(I)*(1.0-FACTOR)                          DOWND2C.285    
         END IF                                                            DOWND2C.286    
         PRECIP_K(I) = 0.0                                                 DOWND2C.287    
C                                                                          DOWND2C.288    
      END DO                                                               DOWND2C.289    
C                                                                          DOWND2C.290    
C                                                                          DOWND2C.291    
C-----------------------------------------------------------------------   DOWND2C.292    
C COMPRESS OUT ON BASIS OF BIT VECTOR BDDON - THOSE POINTS WITH A          DOWND2C.293    
C DOWNDRAUGHT                                                              DOWND2C.294    
C-----------------------------------------------------------------------   DOWND2C.295    
C                                                                          DOWND2C.296    
      NDDON=0                                                              DOWND2C.297    
C                                                                          DOWND2C.298    
      DO I=1,NPNTS                                                         DOWND2C.299    
        IF (BDD_ON(I)) THEN                                                DOWND2C.300    
           NDDON = NDDON+1                                                 DOWND2C.301    
           INDEX1(NDDON) = I                                               DOWND2C.302    
        END IF                                                             DOWND2C.303    
      END DO                                                               DOWND2C.304    
C                                                                          DOWND2C.305    
      IF (NDDON .NE. 0) THEN                                               DOWND2C.306    
         DO I=1,NDDON                                                      DOWND2C.307    
          WORK(I,1) = THDD_K(INDEX1(I))                                    DOWND2C.308    
          WORK(I,2) = QDD_K(INDEX1(I))                                     DOWND2C.309    
          WORK(I,3) = THE_K(INDEX1(I))                                     DOWND2C.310    
          WORK(I,4) = THE_KM1(INDEX1(I))                                   DOWND2C.311    
          WORK(I,5) = QE_K(INDEX1(I))                                      DOWND2C.312    
          WORK(I,6) = QE_KM1(INDEX1(I))                                    DOWND2C.313    
          WORK(I,7) = DTHBYDT_K(INDEX1(I))                                 DOWND2C.314    
          WORK(I,8) = DTHBYDT_KM1(INDEX1(I))                               DOWND2C.315    
          WORK(I,9) = DQBYDT_K(INDEX1(I))                                  DOWND2C.316    
          WORK(I,10) = DQBYDT_KM1(INDEX1(I))                               DOWND2C.317    
          WORK(I,11) = FLX_DD_K(INDEX1(I))                                 DOWND2C.318    
          WORK(I,12) = P_KM1(INDEX1(I))                                    DOWND2C.319    
          WORK(I,13) = DELPK(INDEX1(I))                                    DOWND2C.320    
          WORK(I,14) = DELPKM1(INDEX1(I))                                  DOWND2C.321    
          WORK(I,15) = EXK(INDEX1(I))                                      DOWND2C.322    
          WORK(I,16) = EXKM1(INDEX1(I))                                    DOWND2C.323    
          WORK(I,17) = DELTD(INDEX1(I))                                    DOWND2C.324    
          WORK(I,18) = DELQD(INDEX1(I))                                    DOWND2C.325    
          WORK(I,19) = AMDETK(INDEX1(I))                                   DOWND2C.326    
          WORK(I,20) = EKM14(INDEX1(I))                                    DOWND2C.327    
          WORK(I,21) = EKM34(INDEX1(I))                                    DOWND2C.328    
          WORK(I,22) = RAIN_DD(INDEX1(I))                                  DOWND2C.329    
          WORK(I,23) = SNOW_DD(INDEX1(I))                                  DOWND2C.330    
          WORK(I,24) = CCA(INDEX1(I))                                      DOWND2C.331    
          BWORK(I,1) = BDD_START(INDEX1(I))                                DOWND2C.332    
          BWORK(I,2) = BDDWT_K(INDEX1(I))                                  DOWND2C.333    
          BWORK(I,3) = BDDWT_KM1(INDEX1(I))                                DOWND2C.334    
          BWORK(I,4) = BDD_ON(INDEX1(I))                                   DOWND2C.335    
          BWORK(I,5) = B_DD_END(INDEX1(I))                                 DOWND2C.336    
      END DO                                                               DOWND2C.337    
C                                                                          DOWND2C.338    
C-----------------------------------------------------------------------   DOWND2C.339    
C START DOWNDRAUGHT CALCULATION                                            DOWND2C.340    
C-----------------------------------------------------------------------   DOWND2C.341    
C                                                                          DOWND2C.342    
C                                                                          DOWND2C.343    
         CALL DDRAUGHT (NDDON,K,KCT,WORK(1,1),WORK(1,2),WORK(1,3),         DOWND2C.344    
     &                  WORK(1,4),WORK(1,5),WORK(1,6),WORK(1,7),           DOWND2C.345    
     &                  WORK(1,8),WORK(1,9),WORK(1,10),WORK(1,11),         DOWND2C.346    
     &                  WORK(1,12),WORK(1,13),WORK(1,14),                  DOWND2C.347    
     &                  WORK(1,15),WORK(1,16),WORK(1,17),WORK(1,18),       DOWND2C.348    
     &                  WORK(1,19),WORK(1,20),WORK(1,21),WORK(1,22),       DOWND2C.349    
     &                  WORK(1,23),BWORK(1,1),BWORK(1,2),BWORK(1,3),       DOWND2C.350    
     &                  BWORK(1,4),BWORK(1,5),WORK(1,24))                  DOWND2C.351    
C                                                                          DOWND2C.352    
C-----------------------------------------------------------------------   DOWND2C.353    
C EXPAND REQUIRED VECTORS BACK TO FULL FIELDS                              DOWND2C.354    
C-----------------------------------------------------------------------   DOWND2C.355    
C                                                                          DOWND2C.356    
      DO I=1,NDDON                                                         DOWND2C.357    
       THDD_K(INDEX1(I)) = WORK(I,1)                                       DOWND2C.358    
       QDD_K(INDEX1(I)) = WORK(I,2)                                        DOWND2C.359    
       DTHBYDT_K(INDEX1(I)) = WORK(I,7)                                    DOWND2C.360    
       DTHBYDT_KM1(INDEX1(I)) = WORK(I,8)                                  DOWND2C.361    
       DQBYDT_K(INDEX1(I)) = WORK(I,9)                                     DOWND2C.362    
       DQBYDT_KM1(INDEX1(I)) = WORK(I,10)                                  DOWND2C.363    
       FLX_DD_K(INDEX1(I)) = WORK(I,11)                                    DOWND2C.364    
       RAIN_DD(INDEX1(I)) = WORK(I,22)                                     DOWND2C.365    
       SNOW_DD(INDEX1(I)) = WORK(I,23)                                     DOWND2C.366    
       BDD_START(INDEX1(I)) = BWORK(I,1)                                   DOWND2C.367    
       BDDWT_K(INDEX1(I)) = BWORK(I,2)                                     DOWND2C.368    
       BDDWT_KM1(INDEX1(I)) = BWORK(I,3)                                   DOWND2C.369    
       BDD_ON(INDEX1(I)) = BWORK(I,4)                                      DOWND2C.370    
       B_DD_END(INDEX1(I)) = BWORK(I,5)                                    DOWND2C.371    
      END DO                                                               DOWND2C.372    
      END IF                                                               DOWND2C.373    
C                                                                          DOWND2C.374    
C-----------------------------------------------------------------------   DOWND2C.375    
C RESET PRECIPITATION FALLING THROUGH ENVIRONMENT IF DOWNDRAUGHT           DOWND2C.376    
C DID NOT FORM                                                             DOWND2C.377    
C-----------------------------------------------------------------------   DOWND2C.378    
C                                                                          DOWND2C.379    
      DO I=1,NPNTS                                                         DOWND2C.380    
        IF (.NOT.BDD_ON(I).AND..NOT.B_DD_END(I)) THEN                      DOWND2C.381    
          RAIN_ENV(I) = RAIN_ENV(I)+RAIN_DD(I)                             DOWND2C.382    
          SNOW_ENV(I) = SNOW_ENV(I)+SNOW_DD(I)                             DOWND2C.383    
          RAIN_DD(I) = 0.0                                                 DOWND2C.384    
          SNOW_DD(I) = 0.0                                                 DOWND2C.385    
        END IF                                                             DOWND2C.386    
      END DO                                                               DOWND2C.387    
C                                                                          DOWND2C.388    
C-----------------------------------------------------------------------   DOWND2C.389    
C CARRY OUT CHANGE OF PHASE CALCULATION FOR PRECIPITATION FALLING          DOWND2C.390    
C THROUGH ENVIRONMENT                                                      DOWND2C.391    
C-----------------------------------------------------------------------   DOWND2C.392    
C                                                                          DOWND2C.393    
         CALL CHG_PHSE (NPNTS,K,RAIN_ENV,SNOW_ENV,DTHBYDT_KM1,             DOWND2C.394    
     &                  EXK,EXKM1,DELPKM1,THE_K,THE_KM1)                   DOWND2C.395    
C                                                                          DOWND2C.396    
C-----------------------------------------------------------------------   DOWND2C.397    
C EVAPORATE RAIN FALLING THROUGH ENVIRONMENT IF LAYER K BELOW              DOWND2C.398    
C CLOUD BASE                                                               DOWND2C.399    
C-----------------------------------------------------------------------   DOWND2C.400    
C                                                                          DOWND2C.401    
         CALL PEVP_BCB (NPNTS,K-1,ICCB,THE_KM1,P_KM1,QE_KM1,DELPKM1,       DOWND2C.402    
     &                  RAIN_ENV,SNOW_ENV,DTHBYDT_KM1,DQBYDT_KM1,          DOWND2C.403    
     &                  EXKM1,TIMESTEP,CCA)                                DOWND2C.404    
C                                                                          DOWND2C.405    
C-----------------------------------------------------------------------   DOWND2C.406    
C RESET PRECIPITATION FALLING THROUGH ENVIRONMENT IF DOWNDRAUGHT           DOWND2C.407    
C TERMINATES                                                               DOWND2C.408    
C-----------------------------------------------------------------------   DOWND2C.409    
C                                                                          DOWND2C.410    
      DO I=1,NPNTS                                                         DOWND2C.411    
        IF (B_DD_END(I)) THEN                                              DOWND2C.412    
          RAIN_ENV(I) = RAIN_ENV(I)+RAIN_DD(I)                             DOWND2C.413    
          SNOW_ENV(I) = SNOW_ENV(I)+SNOW_DD(I)                             DOWND2C.414    
          RAIN_DD(I) = 0.0                                                 DOWND2C.415    
          SNOW_DD(I) = 0.0                                                 DOWND2C.416    
        END IF                                                             DOWND2C.417    
      END DO                                                               DOWND2C.418    
C                                                                          DOWND2C.419    
C-----------------------------------------------------------------------   DOWND2C.420    
C UPDATE RAIN AND SNOW                                                     DOWND2C.421    
C-----------------------------------------------------------------------   DOWND2C.422    
C                                                                          DOWND2C.423    
       IF (K.EQ.2) THEN                                                    DOWND2C.424    
         DO I=1,NPNTS                                                      DOWND2C.425    
           RAIN(I) = RAIN(I)+RAIN_DD(I)+RAIN_ENV(I)                        DOWND2C.426    
           SNOW(I) = SNOW(I)+SNOW_DD(I)+SNOW_ENV(I)                        DOWND2C.427    
         END DO                                                            DOWND2C.428    
       END IF                                                              DOWND2C.429    
C                                                                          DOWND2C.430    
      RETURN                                                               DOWND2C.431    
      END                                                                  DOWND2C.432    
C                                                                          DOWND2C.433    
*ENDIF                                                                     DOWND2C.434