*IF DEF,A05_2A,OR,DEF,A05_2C AJX1F405.128 C ******************************COPYRIGHT****************************** GTS2F400.2431 C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved. GTS2F400.2432 C GTS2F400.2433 C Use, duplication or disclosure of this code is subject to the GTS2F400.2434 C restrictions as set forth in the contract. GTS2F400.2435 C GTS2F400.2436 C Meteorological Office GTS2F400.2437 C London Road GTS2F400.2438 C BRACKNELL GTS2F400.2439 C Berkshire UK GTS2F400.2440 C RG12 2SZ GTS2F400.2441 C GTS2F400.2442 C If no contract has been raised with this copy of the code, the use, GTS2F400.2443 C duplication or disclosure of it is strictly prohibited. Permission GTS2F400.2444 C to do so must first be obtained in writing from the Head of Numerical GTS2F400.2445 C Modelling at the above address. GTS2F400.2446 C ******************************COPYRIGHT****************************** GTS2F400.2447 C GTS2F400.2448 CLL SUBROUTINE ENVIRON------------------------------------------------ ENVIRO1A.3 CLL ENVIRO1A.4 CLL PURPOSE : CALCULATE THE EFFECT OF CONVECTION UPON THE ENVIRO1A.5 CLL LARGE-SCALE ATMOSPHERE ENVIRO1A.6 CLL ENVIRO1A.7 CLL SUITABLE FOR SINGLE COLUMN MODEL USE ENVIRO1A.8 CLL ENVIRO1A.9 CLL CODE REWORKED FOR CRAY Y-MP BY D.GREGORY AUTUMN/WINTER 1989/90 ENVIRO1A.10 CLL ENVIRO1A.11 CLL MODEL MODIFICATION HISTORY FROM MODEL VERSION 3.0: ENVIRO1A.12 CLL VERSION DATE ENVIRO1A.13 CLL ENVIRO1A.14 CLL PROGRAMMING STANDARDS : UNIFIED MODEL DOCUMENTATION PAPER NO. 4 ENVIRO1A.15 CLL VERSION NO. 1 ENVIRO1A.16 CLL ENVIRO1A.17 CLL LOGICAL COMPONENTS COVERED: P27 ENVIRO1A.18 CLL ENVIRO1A.19 CLL SYSTEM TASK : ENVIRO1A.20 CLL ENVIRO1A.21 CLL DOCUMENTATION : UNIFIED MODEL DOCUMENTATION PAPER P27 ENVIRO1A.22 CLL ENVIRO1A.23 CLLEND----------------------------------------------------------------- ENVIRO1A.24 C ENVIRO1A.25 C*L ARGUMENTS--------------------------------------------------------- ENVIRO1A.26 C ENVIRO1A.27SUBROUTINE ENVIRON (NPNTS,DTHEK,DQEK,DTHEKP1,DQEKP1, 3ENVIRO1A.28 * THEK,QEK,DELTAK,FLXK,THPK,QPK, ENVIRO1A.29 * THRK,QRK,THEKP1,QEKP1,BTERM,THPKP1, ENVIRO1A.30 * QPKP1,XPK,XPKP1,BWKP1,FLXKP1,BLOWST, ENVIRO1A.31 * EKP14,EXK,EXKP1,DELPK,DELPKP1,AMDETK) ENVIRO1A.32 C ENVIRO1A.33 IMPLICIT NONE ENVIRO1A.34 C ENVIRO1A.35 C----------------------------------------------------------------------- ENVIRO1A.36 C MODEL CONSTANTS ENVIRO1A.37 C----------------------------------------------------------------------- ENVIRO1A.38 C ENVIRO1A.39 *CALL C_R_CP
ENVIRO1A.40 *CALL C_LHEAT
ENVIRO1A.41 *CALL PARXS
ENVIRO1A.42 C ENVIRO1A.43 C----------------------------------------------------------------------- ENVIRO1A.44 C VECTOR LENGTHS AND LOOP COUNTERS ENVIRO1A.45 C----------------------------------------------------------------------- ENVIRO1A.46 C ENVIRO1A.47 INTEGER NPNTS ! IN VECTOR LENGTH ENVIRO1A.48 C ENVIRO1A.49 INTEGER I ! LOOP COUNTER ENVIRO1A.50 C ENVIRO1A.51 C ENVIRO1A.52 C----------------------------------------------------------------------- ENVIRO1A.53 C VARIABLES THAT ARE INPUT ENVIRO1A.54 C----------------------------------------------------------------------- ENVIRO1A.55 C ENVIRO1A.56 REAL THEK(NPNTS) ! IN POTENTIAL TEMPERATURE OF CLOUD ENVIRO1A.57 ! ENVIRONMENT IN LAYER K (K) ENVIRO1A.58 C ENVIRO1A.59 REAL THEKP1(NPNTS) ! IN POTENTIAL TEMPERATURE OF CLOUD ENVIRO1A.60 ! ENVIRONMENT IN LAYER K+1 (K) ENVIRO1A.61 C ENVIRO1A.62 REAL QEK(NPNTS) ! IN MIXING RATIO OF CLOUD ENVIRO1A.63 ! ENVIRONMENT IN LAYER K (KG/KG) ENVIRO1A.64 C ENVIRO1A.65 REAL QEKP1(NPNTS) ! IN MIXING RATIO OF CLOUD ENVIRO1A.66 ! ENVIRONMENT IN LAYER K+1 (KG/KG) ENVIRO1A.67 C ENVIRO1A.68 REAL THPK(NPNTS) ! IN PARCEL POTENTIAL TEMPERATURE IN ENVIRO1A.69 ! LAYER K (K) ENVIRO1A.70 C ENVIRO1A.71 REAL QPK(NPNTS) ! IN PARCEL MIXING RATIO IN LAYER K (KG/KG) ENVIRO1A.72 C ENVIRO1A.73 REAL THPKP1(NPNTS) ! IN PARCEL POTENTIAL TEMPERATURE IN ENVIRO1A.74 ! LAYER K+1 (K) ENVIRO1A.75 C ENVIRO1A.76 REAL QPKP1(NPNTS) ! IN PARCEL MIXING RATIO IN LAYER K+1 ENVIRO1A.77 ! (KG/KG) ENVIRO1A.78 C ENVIRO1A.79 REAL XPK(NPNTS) ! IN PARCEL CLOUD WATER IN LAYER K (KG/KG) ENVIRO1A.80 C ENVIRO1A.81 REAL FLXK(NPNTS) ! IN PARCEL MASSFLUX IN LAYER K (PA/S) ENVIRO1A.82 C ENVIRO1A.83 LOGICAL BWKP1(NPNTS) ! IN MASK FOR WHETHER CONDENSATE IS ENVIRO1A.84 ! LIQUID IN LAYER K+1 ENVIRO1A.85 C ENVIRO1A.86 LOGICAL BTERM(NPNTS) ! IN MASK FOR PARCELS WHICH TERMINATE IN ENVIRO1A.87 ! LAYER K+1 ENVIRO1A.88 C ENVIRO1A.89 LOGICAL BLOWST(NPNTS) ! IN MASK FOR THOSE POINTS AT WHICH ENVIRO1A.90 ! STABILITY IS LOW ENOUGH FOR ENVIRO1A.91 ! CONVECTION TO OCCUR ENVIRO1A.92 C ENVIRO1A.93 REAL THRK(NPNTS) ! IN PARCEL DETRAINMENT POTENTIAL ENVIRO1A.94 ! TEMPERATURE IN LAYER K (K) ENVIRO1A.95 C ENVIRO1A.96 REAL QRK(NPNTS) ! IN PARCEL DETRAINMENT MIXING RATIO ENVIRO1A.97 ! IN LAYER K (KG/KG) ENVIRO1A.98 C ENVIRO1A.99 REAL XPKP1(NPNTS) ! IN PARCEL CLOUD WATER IN LAYER K+1 ENVIRO1A.100 ! (KG/KG) ENVIRO1A.101 C ENVIRO1A.102 REAL FLXKP1(NPNTS) ! IN PARCEL MASSFLUX IN LAYER K+1 (PA/S) ENVIRO1A.103 C ENVIRO1A.104 REAL DELTAK(NPNTS) ! IN PARCEL FORCED DETRAINMENT RATE ENVIRO1A.105 ! IN LAYER K MULTIPLIED BY APPROPRIATE ENVIRO1A.106 ! LAYER THICKNESS ENVIRO1A.107 C ENVIRO1A.108 REAL EKP14(NPNTS) ! IN ENTRAINMENT RATE FOR LEVEL K+1/4 ENVIRO1A.109 ! MULTIPLIED BY APPROPRIATE LAYER ENVIRO1A.110 ! THICKNESS ENVIRO1A.111 C ENVIRO1A.112 REAL EXK(NPNTS) ! IN EXNER RATIO FOR MID-POINT OF LAYER K ENVIRO1A.113 C ENVIRO1A.114 REAL EXKP1(NPNTS) ! IN EXNER RATIO FOR MID-POINT OF ENVIRO1A.115 ! LAYER K+1 ENVIRO1A.116 C ENVIRO1A.117 REAL DELPK(NPNTS) ! IN PRESSURE DIFFERENCE ACROSS LAYER K ENVIRO1A.118 ! (PA) ENVIRO1A.119 C ENVIRO1A.120 REAL DELPKP1(NPNTS) ! IN PRESSURE DIFFERENCE ACROSS LAYER K+1 ENVIRO1A.121 ! (PA) ENVIRO1A.122 C ENVIRO1A.123 REAL AMDETK(NPNTS) ! IN MIXING DETRIANMENT AT LEVEL K ENVIRO1A.124 ! MULTIPLIED BY APPROPRIATE LAYER ENVIRO1A.125 ! THICKNESS ENVIRO1A.126 C ENVIRO1A.127 C ENVIRO1A.128 C----------------------------------------------------------------------- ENVIRO1A.129 C VARIABLES THAT ARE INPUT AND OUTPUT ENVIRO1A.130 C----------------------------------------------------------------------- ENVIRO1A.131 C ENVIRO1A.132 REAL DTHEK(NPNTS) ! INOUT ENVIRO1A.133 ! IN INCREMENT TO MODEL POTENTIAL ENVIRO1A.134 ! TEMPERATURE IN LAYER K DUE TO ENVIRO1A.135 ! CONVECTION (MAY BE NONE ZERO ENVIRO1A.136 ! DUE TO A PREVIOUS SPLIT FINAL ENVIRO1A.137 ! DETRAINMENT CALCULATION) (K/S) ENVIRO1A.138 ! OUT UPDATED INCREMENT TO MODEL POTENTIAL ENVIRO1A.139 ! TEMPERATURE IN LAYER K DUE TO ENVIRO1A.140 ! CONVECTION (K/S) ENVIRO1A.141 C ENVIRO1A.142 REAL DQEK(NPNTS) ! INOUT ENVIRO1A.143 ! IN INCREMENT TO MODEL MIXING RATIO ENVIRO1A.144 ! IN LAYER K DUE TO CONVECTION ENVIRO1A.145 ! (MAY BE NONE ZERO ENVIRO1A.146 ! DUE TO A PREVIOUS SPLIT FINAL ENVIRO1A.147 ! DETRAINMENT CALCULATION) (KG/KG/S) ENVIRO1A.148 ! OUT UPDATED INCREMENT TO MODEL MIXING ENVIRO1A.149 ! RATIO IN LAYER K DUE TO ENVIRO1A.150 ! CONVECTION (KG/KG/S) ENVIRO1A.151 C ENVIRO1A.152 C ENVIRO1A.153 C----------------------------------------------------------------------- ENVIRO1A.154 C VARIABLES THAT ARE OUTPUT ENVIRO1A.155 C----------------------------------------------------------------------- ENVIRO1A.156 C ENVIRO1A.157 REAL DTHEKP1(NPNTS) ! OUT INCREMENT TO MODEL POTENTIAL ENVIRO1A.158 ! TEMPERATURE IN LAYER K+1 DUE TO ENVIRO1A.159 ! CONVECTION (K/S) ENVIRO1A.160 C ENVIRO1A.161 REAL DQEKP1(NPNTS) ! OUT INCREMENT TO MODEL MIXING RATIO ENVIRO1A.162 ! IN LAYER K+1 DUE TO CONVECTION ENVIRO1A.163 ! (KG/KG/S) ENVIRO1A.164 C ENVIRO1A.165 C ENVIRO1A.166 C----------------------------------------------------------------------- ENVIRO1A.167 C VARIABLES THAT ARE DEFINED LOCALLY ENVIRO1A.168 C----------------------------------------------------------------------- ENVIRO1A.169 C ENVIRO1A.170 REAL EL ! LATENT HEAT OF CONDENSATION OR ENVIRO1A.171 ! (CONDENSATION + FUSION) (J/KG) ENVIRO1A.172 C ENVIRO1A.173 REAL TEMPRY ! TEMPORARY ARRAY ENVIRO1A.174 C ENVIRO1A.175 C*--------------------------------------------------------------------- ENVIRO1A.176 C ENVIRO1A.177 DO 10 I=1,NPNTS ENVIRO1A.178 C ENVIRO1A.179 C----------------------------------------------------------------------- ENVIRO1A.180 C CREATE A VECTOR OF LATENT HEATS ENVIRO1A.181 C----------------------------------------------------------------------- ENVIRO1A.182 C ENVIRO1A.183 IF (BWKP1(I)) THEN ENVIRO1A.184 EL = LC ENVIRO1A.185 ELSE ENVIRO1A.186 EL = LC + LF ENVIRO1A.187 ENDIF ENVIRO1A.188 C ENVIRO1A.189 C---------------------------------------------------------------------- ENVIRO1A.190 C CALCULATE PARCEL MASSFLUX DIVIDED BY THE THICKNESS OF LAYER K ENVIRO1A.191 C THIS VALUE IS USED IN SEVERAL PLACES IN THE SUBROUTINE ENVIRO1A.192 C---------------------------------------------------------------------- ENVIRO1A.193 C ENVIRO1A.194 TEMPRY = FLXK(I)/DELPK(I) ENVIRO1A.195 C ENVIRO1A.196 IF (BLOWST(I)) THEN ENVIRO1A.197 CL ENVIRO1A.198 CL---------------------------------------------------------------------- ENVIRO1A.199 CL AT THE LOWEST CONVECTIVE LAYER, THE PARCEL MASS FLUX IS A FLUX FROM ENVIRO1A.200 CL THE ENVIRONMENT. IE. THE INITIAL MASS FLUX IS ENTRAINED WITH EXCESS ENVIRO1A.201 CL POTENTIAL TEMPERATURE AND MIXING RATIO TPIXS, QPIXS ENVIRO1A.202 CL ENVIRO1A.203 CL UM DOCUMENTATIO PAPER P27 ENVIRO1A.204 CL SECTION (10), EQUATION (39) ENVIRO1A.205 CL---------------------------------------------------------------------- ENVIRO1A.206 CL ENVIRO1A.207 DTHEK(I) = DTHEK(I) - TEMPRY*THPIXS ENVIRO1A.208 DQEK(I) = DQEK(I) - TEMPRY*QPIXS ENVIRO1A.209 ENDIF ENVIRO1A.210 CL ENVIRO1A.211 CL--------------------------------------------------------------------- ENVIRO1A.212 CL EFFECT OF CONVECTION UPON POTENTIAL TEMPERATURE OF LAYER K ENVIRO1A.213 CL ENVIRO1A.214 CL UM DOCUMENTATION PAPER P27 ENVIRO1A.215 CL SECTION (10), EQUATION (38A) ENVIRO1A.216 CL-------------------------------------------------------------------- ENVIRO1A.217 CL ENVIRO1A.218 DTHEK(I) = DTHEK(I) + TEMPRY * ( ENVIRO1A.219 * ENVIRO1A.220 * (1+EKP14(I)) * (1.0-DELTAK(I)) * ! COMPENSATING ENVIRO1A.221 * (1-AMDETK(I)) * (THEKP1(I)-THEK(I)) ! SUBSIDENCE ENVIRO1A.222 * + ENVIRO1A.223 * DELTAK(I) * (1.0-AMDETK(I)) * ! FORCED ENVIRO1A.224 * (THRK(I)-THEK(I)- ! DETRAINMENT ENVIRO1A.225 * ((EL/CP)*XPK(I)/EXK(I))) ENVIRO1A.226 * + ENVIRO1A.227 * AMDETK(I) * (THPK(I)-THEK(I)- ! MIXING ENVIRO1A.228 * ((EL/CP)*XPK(I)/EXK(I))) ! DETRAINMENT ENVIRO1A.229 * ) ENVIRO1A.230 CL ENVIRO1A.231 CL--------------------------------------------------------------------- ENVIRO1A.232 CL EFFECT OF CONVECTION UPON MIXING RATIO OF LAYER K ENVIRO1A.233 CL ENVIRO1A.234 CL UM DOCUMENTATION PAPER P27 ENVIRO1A.235 CL SECTION (10), EQUATION (38B) ENVIRO1A.236 CL-------------------------------------------------------------------- ENVIRO1A.237 CL ENVIRO1A.238 DQEK(I) = DQEK(I) + TEMPRY * ( ENVIRO1A.239 * ENVIRO1A.240 * (1+EKP14(I)) * (1.0-DELTAK(I)) * ! COMPENSATING ENVIRO1A.241 * (1-AMDETK(I)) * (QEKP1(I)-QEK(I)) ! SUBSIDENCE ENVIRO1A.242 * + ENVIRO1A.243 * DELTAK(I) * (1.0-AMDETK(I)) * ! FORCED ENVIRO1A.244 * (QRK(I)-QEK(I)+XPK(I)) ! DETRAINMENT ENVIRO1A.245 * + ENVIRO1A.246 * AMDETK(I) * (QPK(I)-QEK(I)+ ! MIXING ENVIRO1A.247 * XPK(I)) ! DETRAINMENT ENVIRO1A.248 * ) ENVIRO1A.249 CL ENVIRO1A.250 CL---------------------------------------------------------------------- ENVIRO1A.251 CL TERMINAL DETRAINMENT AND SUBSIDENCE IN TERMINAL LAYER ENVIRO1A.252 CL ENVIRO1A.253 CL UM DOCUMENTATION PAPER P27 ENVIRO1A.254 CL SECTION (10), EQUATION (40) ENVIRO1A.255 CL-------------------------------------------------------------------- ENVIRO1A.256 CL ENVIRO1A.257 IF ( BTERM(I) ) THEN ENVIRO1A.258 TEMPRY = FLXKP1(I)/DELPKP1(I) ENVIRO1A.259 DTHEKP1(I) = DTHEKP1(I) + TEMPRY*((THPKP1(I)-THEKP1(I)) ENVIRO1A.260 * - EL*XPKP1(I)/(EXKP1(I)*CP)) ENVIRO1A.261 DQEKP1(I) = DQEKP1(I) + TEMPRY*(QPKP1(I)-QEKP1(I) ENVIRO1A.262 * + XPKP1(I)) ENVIRO1A.263 ENDIF ENVIRO1A.264 10 CONTINUE ENVIRO1A.265 C ENVIRO1A.266 RETURN ENVIRO1A.267 END ENVIRO1A.268 *ENDIF ENVIRO1A.269