*IF DEF,OCEAN ORH1F305.459 C ******************************COPYRIGHT****************************** GTS2F400.5041 C (c) CROWN COPYRIGHT 1995, METEOROLOGICAL OFFICE, All Rights Reserved. GTS2F400.5042 C GTS2F400.5043 C Use, duplication or disclosure of this code is subject to the GTS2F400.5044 C restrictions as set forth in the contract. GTS2F400.5045 C GTS2F400.5046 C Meteorological Office GTS2F400.5047 C London Road GTS2F400.5048 C BRACKNELL GTS2F400.5049 C Berkshire UK GTS2F400.5050 C RG12 2SZ GTS2F400.5051 C GTS2F400.5052 C If no contract has been raised with this copy of the code, the use, GTS2F400.5053 C duplication or disclosure of it is strictly prohibited. Permission GTS2F400.5054 C to do so must first be obtained in writing from the Head of Numerical GTS2F400.5055 C Modelling at the above address. GTS2F400.5056 C ******************************COPYRIGHT****************************** GTS2F400.5057 C GTS2F400.5058 C*LL Subroutine IPDFLXCL IPDFLXCL.3 CLL IPDFLXCL.4 CLL Can run on any compiler accepting lower case variables. IPDFLXCL.5 CLL IPDFLXCL.6 CLL The code must be precompiled by the UPDOC system. IPDFLXCL.7 CLL Option L selects the code for Isopycnal Diffusion. IPDFLXCL.8 CLL IPDFLXCL.9 CLL Author: D.J.Carrington IPDFLXCL.10 CLL Date: 12 December 1990 IPDFLXCL.11 CLL Reviewer: R.A.Wood IPDFLXCL.12 CLL Date: 19 December 1990 IPDFLXCL.13 CLL Version 1.0 IPDFLXCL.14 CLL IPDFLXCL.15 ! Modification History: ORH1F305.4841 ! Version Date Details ORH1F305.4842 ! ------- ------- ------------------------------------------ ORH1F305.4843 ! 3.5 16.01.95 Remove *IF dependency. R.Hill ORH1F305.4844 CLL External documentation: IPDFLXCL.16 CLL Unified Model Documentation Paper No. 51. IPDFLXCL.17 CLL IPDFLXCL.18 CLL Naming convention of variables: Cox naming convention is used, IPDFLXCL.19 CLL with the addition that lower-case variables are IPDFLXCL.20 CLL introduced by the Isopycnal Diffusion scheme. IPDFLXCL.21 CLL IPDFLXCL.22 CLL Purpose of Subroutine: IPDFLXCL.23 CLL Calculates the various components of isopycnal diffusion IPDFLXCL.24 CLL and updates the tracers. However, it omits the d-2/d-z-2 IPDFLXCL.25 CLL term, which is dealt with in the implicit scheme in IPDFLXCL.26 CLL subroutine VDIFCALT. IPDFLXCL.27 CLL IPDFLXCL.28 CLL List of subroutines required for implementation of Isopycnal IPDFLXCL.29 CLL Diffusion Scheme (in order of being called): IPDFLXCL.30 CLL VERTCOFC * IPDFLXCL.31 CLL VDIFCALC IPDFLXCL.32 CLL VERTCOFT * IPDFLXCL.33 CLL IPDCOFCL IPDFLXCL.34 CLL IPDFLXCL IPDFLXCL.35 CLL VDIFCALT * K-theory mixing scheme IPDFLXCL.36 CLL IPDFLXCL.37 CLLEND------------------------------------------------------------------ IPDFLXCL.38 C* IPDFLXCL.39 C*L---- Arguments ------------------------------------------------------ IPDFLXCL.40 C IPDFLXCL.41SUBROUTINE IPDFLXCL 2IPDFLXCL.42 & ( M,J,JMT,IMT,IMTM1,KM,KMP1,KMM1,NT, IPDFLXCL.43 & TB,TBP,TBM,TA, IPDFLXCL.44 & DXU2RQ,DXT4RQ,DYUR,DYTR,DYT4R,DZ2RQ, IPDFLXCL.45 & CS,CSR,CSTR,FM,FMP,FMM, IPDFLXCL.46 & esav,fk1,fk2,fk3,tempx,tempa,tempb) JG170893.1 C IPDFLXCL.48 C IPDFLXCL.49 IMPLICIT NONE IPDFLXCL.50 ! ORH1F305.4845 *CALL CNTLOCN
ORH1F305.4846 *CALL OARRYSIZ
ORH1F305.4847 C IPDFLXCL.51 INTEGER IPDFLXCL.52 & I,J,K,M, IPDFLXCL.53 & JMT,IMT,IMTM1,KM,KMP1,KMM1,NT,ITT,NERGY IPDFLXCL.54 C IPDFLXCL.55 REAL IPDFLXCL.56 & TB(IMT,KM,NT),TBP(IMT,KM,NT),TBM(IMT,KM,NT),TA(IMT,KM,NT), IPDFLXCL.57 & DXU2RQ(IMT,KM),DXT4RQ(IMT,KM), IPDFLXCL.58 & DYUR(JMT),DYTR(JMT),DYT4R(JMT),DZ2RQ(IMT,KM), IPDFLXCL.59 & CS(JMT),CSR(JMT),CSTR(JMT),FM(IMT,KM),FMP(IMT,KM),FMM(IMT,KM), IPDFLXCL.60 & fk1(IMT,KM,3), ! IN } 1st/2nd/3rd rows of diffusion IPDFLXCL.61 & fk2(IMT,KM,3), ! IN } matrix for point (I,J,K), IPDFLXCL.62 & fk3(IMT,KM,3), ! IN } Eq.1.8 IPDFLXCL.63 & esav(IMT,KM,NT), ! INOUT used to save e(I,K,2) JG170893.2 & tempx(imt,km),tempa(imt,km),tempb(imt,km) JG170893.3 C workspace, and OUT temperature changes JG170893.4 C IPDFLXCL.65 C IPDFLXCL.66 C Declare local variables and arrays IPDFLXCL.67 C IPDFLXCL.68 REAL IPDFLXCL.69 & e(IMT,KMP1,3), ! K.grad-T in isopycnal coordinates, IPDFLXCL.70 C Eq.1.9 IPDFLXCL.71 & tempxa(IMT,KMP1), ! workspace JG170893.5 & fxa, ! } local csts. IPDFLXCL.74 & fxb ! } IPDFLXCL.75 C* IPDFLXCL.76 *IF DEF,OISOPYC ORH1F305.460 C IPDFLXCL.77 C -------------------------------------------------------------- IPDFLXCL.78 CL (K.grad-T) is calculated (contained in e), IPDFLXCL.79 CL K being the diffusion matrix. IPDFLXCL.80 C -------------------------------------------------------------- IPDFLXCL.81 C IPDFLXCL.82 fxa=.5 IPDFLXCL.83 fxb=2. IPDFLXCL.84 DO 810 K=1,KM IPDFLXCL.85 DO 810 I=1,IMT IPDFLXCL.86 tempa(I,K)=FMM(I,K)*(TB (I,K,M)-TBM(I,K,M)) IPDFLXCL.87 tempb(I,K)=FMP(I,K)*(TBP(I,K,M)-TB (I,K,M)) IPDFLXCL.88 810 CONTINUE IPDFLXCL.89 C IPDFLXCL.90 DO 820 K=1,KM IPDFLXCL.91 DO 815 I=2,IMTM1 IPDFLXCL.92 e(I,K,1)= IPDFLXCL.93 & fk1(I,K,1)*((TB(I+1,K,M)-TB(I,K,M)) IPDFLXCL.94 & *(fxb*CSTR(J)))*DXU2RQ(I,K) IPDFLXCL.95 & +fk1(I,K,2)*(( tempa(I,K)+tempa(I+1,K) IPDFLXCL.96 & +tempb(I,K)+tempb(I+1,K))*DYT4R(J)) IPDFLXCL.97 e(I,K,2)= IPDFLXCL.98 & fk2(I,K,1)*(( FM (I-1,K)*(TB (I ,K,M)-TB (I-1,K,M)) IPDFLXCL.99 & +FM (I+1,K)*(TB (I+1,K,M)-TB (I ,K,M)) IPDFLXCL.100 & +FMP(I-1,K)*(TBP(I ,K,M)-TBP(I-1,K,M)) IPDFLXCL.101 & +FMP(I+1,K)*(TBP(I+1,K,M)-TBP(I ,K,M))) IPDFLXCL.102 & *(DXT4RQ(I,K)*CSR(J))) IPDFLXCL.103 & +fk2(I,K,2)*((TBP(I,K,M)-TB(I,K,M))*DYUR(J)) IPDFLXCL.104 815 CONTINUE IPDFLXCL.105 I=1 IPDFLXCL.106 e(I,K,1)= IPDFLXCL.107 & fk1(I,K,1)*((TB(I+1,K,M)-TB(I,K,M)) IPDFLXCL.108 & *(fxb*CSTR(J)))*DXU2RQ(I,K) IPDFLXCL.109 & +fk1(I,K,2)*(( tempa(I,K)+tempa(I+1,K) IPDFLXCL.110 & +tempb(I,K)+tempb(I+1,K))*DYT4R(J)) IPDFLXCL.111 IF (L_OCYCLIC) THEN ORH1F305.4848 e(I,K,2)= IPDFLXCL.114 & fk2(I,K,1)*(( FM (IMT-2,K)*(TB (I ,K,M)-TB (IMT-2,K,M)) IPDFLXCL.115 & +FM (I+1,K)*(TB (I+1,K,M)-TB (I ,K,M)) IPDFLXCL.116 & +FMP(IMT-2,K)*(TBP(I ,K,M)-TBP(IMT-2,K,M)) IPDFLXCL.117 & +FMP(I+1,K)*(TBP(I+1,K,M)-TBP(I ,K,M))) IPDFLXCL.118 & *(DXT4RQ(I,K)*CSR(J))) IPDFLXCL.119 & +fk2(I,K,2)*((TBP(I,K,M)-TB(I,K,M))*DYUR(J)) IPDFLXCL.120 ELSE ORH1F305.4849 e(I,K,2)= IPDFLXCL.123 & fk2(I,K,1)*(( FM (I+1,K)*(TB (I+1,K,M)-TB (I ,K,M)) IPDFLXCL.124 & +FMP(I+1,K)*(TBP(I+1,K,M)-TBP(I ,K,M))) IPDFLXCL.125 & *(DXT4RQ(I,K)*CSR(J))) IPDFLXCL.126 & +fk2(I,K,2)*((TBP(I,K,M)-TB(I,K,M))*DYUR(J)) IPDFLXCL.127 ENDIF ORH1F305.4850 I=IMT IPDFLXCL.130 IF (L_OCYCLIC) THEN ORH1F305.4851 e(I,K,1)= IPDFLXCL.133 & fk1(I,K,1)*((TB(3,K,M)-TB(I,K,M)) IPDFLXCL.134 & *(fxb*CSTR(J)))*DXU2RQ(I,K) IPDFLXCL.135 & +fk1(I,K,2)*(( tempa(I,K)+tempa(3,K) IPDFLXCL.136 & +tempb(I,K)+tempb(3,K))*DYT4R(J)) IPDFLXCL.137 ELSE ORH1F305.4852 e(I,K,1)= IPDFLXCL.140 & fk1(I,K,1)*(0. IPDFLXCL.141 & *(fxb*CSTR(J)))*DXU2RQ(I,K) IPDFLXCL.142 & +fk1(I,K,2)*((tempa(I,K)+tempb(I,K)) IPDFLXCL.143 & *fxb*DYT4R(J)) IPDFLXCL.144 ENDIF ORH1F305.4853 IF (L_OCYCLIC) THEN ORH1F305.4854 e(I,K,2)= IPDFLXCL.147 & fk2(I,K,1)*(( FM (I-1,K)*(TB (I ,K,M)-TB (I-1,K,M)) IPDFLXCL.148 & +FM (3,K)*(TB (3,K,M)-TB (I ,K,M)) IPDFLXCL.149 & +FMP(I-1,K)*(TBP(I ,K,M)-TBP(I-1,K,M)) IPDFLXCL.150 & +FMP(3,K)*(TBP(3,K,M)-TBP(I ,K,M))) IPDFLXCL.151 & *(DXT4RQ(I,K)*CSR(J))) IPDFLXCL.152 & +fk2(I,K,2)*((TBP(I,K,M)-TB(I,K,M))*DYUR(J)) IPDFLXCL.153 ELSE ORH1F305.4855 e(I,K,2)= IPDFLXCL.156 & fk2(I,K,1)*(( FM (I-1,K)*(TB (I ,K,M)-TB (I-1,K,M)) IPDFLXCL.157 & +FMP(I-1,K)*(TBP(I ,K,M)-TBP(I-1,K,M))) IPDFLXCL.158 & *(DXT4RQ(I,K)*CSR(J))) IPDFLXCL.159 & +fk2(I,K,2)*((TBP(I,K,M)-TB(I,K,M))*DYUR(J)) IPDFLXCL.160 ENDIF ORH1F305.4856 C IPDFLXCL.163 820 CONTINUE IPDFLXCL.164 DO 840 K=2,KMM1 IPDFLXCL.165 DO 840 I=1,IMT IPDFLXCL.166 tempa(I,K)=FM(I,K)*(TB(I,K-1,M)-TB(I,K ,M)) IPDFLXCL.167 tempb(I,K)=FM(I,K+1)*(TB(I,K ,M)-TB(I,K+1,M)) IPDFLXCL.168 840 CONTINUE IPDFLXCL.169 DO 850 K=2,KMM1 IPDFLXCL.170 DO 845 I=1,IMTM1 IPDFLXCL.171 e(I,K,1)=e(I,K,1) IPDFLXCL.172 & +fk1(I,K,3)*(( tempa(I,K)+tempa(I+1,K) IPDFLXCL.173 & +tempb(I,K)+tempb(I+1,K))*fxa)*DZ2RQ(I,K) IPDFLXCL.174 e(I,K,2)=e(I,K,2) IPDFLXCL.175 & +fk2(I,K,3)*((FM (I,K-1)*(TB (I,K-1,M)-TB (I,K ,M)) IPDFLXCL.176 & +FM (I,K+1)*(TB (I,K ,M)-TB (I,K+1,M)) IPDFLXCL.177 & +FMP(I,K-1)*(TBP(I,K-1,M)-TBP(I,K ,M)) IPDFLXCL.178 & +FMP(I,K+1)*(TBP(I,K ,M)-TBP(I,K+1,M))) IPDFLXCL.179 & *fxa)*DZ2RQ(I,K) IPDFLXCL.180 845 CONTINUE IPDFLXCL.181 I=IMT IPDFLXCL.182 IF (L_OCYCLIC) THEN ORH1F305.4857 e(I,K,1)=e(I,K,1) IPDFLXCL.185 & +fk1(I,K,3)*(( tempa(I,K)+tempa(3,K) IPDFLXCL.186 & +tempb(I,K)+tempb(3,K))*fxa)*DZ2RQ(I,K) IPDFLXCL.187 ELSE ORH1F305.4858 e(I,K,1)=e(I,K,1) IPDFLXCL.190 & +fk1(I,K,3)*(tempa(I,K)+tempb(I,K)) IPDFLXCL.191 & *DZ2RQ(I,K) IPDFLXCL.192 ENDIF ORH1F305.4859 e(I,K,2)=e(I,K,2) IPDFLXCL.195 & +fk2(I,K,3)*((FM (I,K-1)*(TB (I,K-1,M)-TB (I,K ,M)) IPDFLXCL.196 & +FM (I,K+1)*(TB (I,K ,M)-TB (I,K+1,M)) IPDFLXCL.197 & +FMP(I,K-1)*(TBP(I,K-1,M)-TBP(I,K ,M)) IPDFLXCL.198 & +FMP(I,K+1)*(TBP(I,K ,M)-TBP(I,K+1,M))) IPDFLXCL.199 & *fxa)*DZ2RQ(I,K) IPDFLXCL.200 850 CONTINUE IPDFLXCL.201 C IPDFLXCL.202 CL Calculate surface and bottom values IPDFLXCL.203 C IPDFLXCL.204 DO 860 I=1,IMTM1 IPDFLXCL.205 e(I,1,1)=e(I,1,1) IPDFLXCL.206 & +fk1(I,1,3)*( FM(I ,2)*(TB (I ,1,M)-TB (I ,2,M)) IPDFLXCL.207 & +FM(I+1,2)*(TB (I+1,1,M)-TB (I+1,2,M))) IPDFLXCL.208 & *DZ2RQ(I,1)*0.5 IPDFLXCL.209 e(I,KM,1)=e(I,KM,1) IPDFLXCL.210 & +fk1(I,KM,3)*( FM(I ,KM)*(TB(I ,KMM1,M)-TB(I ,KM,M)) IPDFLXCL.211 & +FM(I+1,KM)*(TB(I+1,KMM1,M)-TB(I+1,KM,M))) IPDFLXCL.212 & *DZ2RQ(I,KM)*0.5 IPDFLXCL.213 e(I, 1,2)=e(I, 1,2) IPDFLXCL.214 & +fk2(I,1,3)*( FM (I,2)*(TB (I,1,M)-TB (I,2,M)) IPDFLXCL.215 & +FMP(I,2)*(TBP(I,1,M)-TBP(I,2,M))) IPDFLXCL.216 & *DZ2RQ(I,1)*0.5 IPDFLXCL.217 e(I,KM,2)=e(I,KM,2) IPDFLXCL.218 & +fk2(I,KM,3)*( FM (I,KM)*(TB (I,KMM1,M)-TB (I,KM,M)) IPDFLXCL.219 & +FMP(I,KM)*(TBP(I,KMM1,M)-TBP(I,KM,M))) IPDFLXCL.220 & *DZ2RQ(I,KM)*0.5 IPDFLXCL.221 C IPDFLXCL.222 CL e(I,1,3)=0 as the surface fluxes are included in the IPDFLXCL.223 CL implicit section of the code. IPDFLXCL.224 CL e(I,KMP1,3)=0 as the bottom fluxes are zero. IPDFLXCL.225 C IPDFLXCL.226 e(I,1,3)=0.0 IPDFLXCL.227 e(I,KMP1,3)=0. IPDFLXCL.228 860 CONTINUE IPDFLXCL.229 I=IMT IPDFLXCL.230 IF (L_OCYCLIC) THEN ORH1F305.4860 e(I,1,1)=e(I,1,1) IPDFLXCL.233 & +fk1(I,1,3)*( FM(I ,2)*(TB (I ,1,M)-TB (I ,2,M)) IPDFLXCL.234 & +FM(3,2)*(TB (3,1,M)-TB (3,2,M))) IPDFLXCL.235 & *DZ2RQ(I,1)*0.5 IPDFLXCL.236 ELSE ORH1F305.4861 e(I,1,1)=e(I,1,1) IPDFLXCL.239 & +fk1(I, 1,3)*(FM(I,2)*(TB (I,1,M)-TB(I,2,M))) IPDFLXCL.240 & *DZ2RQ(I,1)*0.5 IPDFLXCL.241 ENDIF ORH1F305.4862 IF (L_OCYCLIC) THEN ORH1F305.4863 e(I,KM,1)=e(I,KM,1) IPDFLXCL.244 & +fk1(I,KM,3)*( FM(I ,KM)*(TB(I ,KMM1,M)-TB(I ,KM,M)) IPDFLXCL.245 & +FM(3,KM)*(TB(3,KMM1,M)-TB(3,KM,M))) IPDFLXCL.246 & *DZ2RQ(I,KM)*0.5 IPDFLXCL.247 ELSE ORH1F305.4864 e(I,KM,1)=e(I,KM,1) IPDFLXCL.250 & +fk1(I,KM,3)*(FM(I,KM)*(TB(I,KMM1,M)-TB(I,KM,M))) IPDFLXCL.251 & *DZ2RQ(I,KM)*0.5 IPDFLXCL.252 ENDIF ORH1F305.4865 e(I, 1,2)=e(I, 1,2) IPDFLXCL.255 & +fk2(I, 1,3)*( FM (I,2)*(TB(I,1,M)-TB(I,2,M)) IPDFLXCL.256 & +FMP(I,2)*(TBP(I,1,M)-TBP(I,2,M))) IPDFLXCL.257 & *DZ2RQ(I,1)*0.5 IPDFLXCL.258 e(I,KM,2)=e(I,KM,2) IPDFLXCL.259 & +fk2(I,KM,3)*( FM (I,KM)*(TB (I,KMM1,M)-TB (I,KM,M)) IPDFLXCL.260 & +FMP(I,KM)*(TBP(I,KMM1,M)-TBP(I,KM,M))) IPDFLXCL.261 & *DZ2RQ(I,KM)*0.5 IPDFLXCL.262 e(I,1,3)=0.0 IPDFLXCL.263 e(I,KMP1,3)=0. IPDFLXCL.264 C IPDFLXCL.265 DO 870 K=1,KM IPDFLXCL.266 DO 871 I=2,IMT IPDFLXCL.267 tempa(I,K)=FM(I-1,K)*(TB(I ,K,M)-TB(I-1,K,M)) IPDFLXCL.268 871 CONTINUE IPDFLXCL.269 IF (L_OCYCLIC) THEN ORH1F305.4866 tempa(1,K)=tempa(IMTM1,K) IPDFLXCL.272 ELSE ORH1F305.4867 tempa(1,K)=0.0 IPDFLXCL.275 ENDIF ORH1F305.4868 DO 872 I=1,IMTM1 IPDFLXCL.278 tempb(I,K)=FM(I+1,K)*(TB(I+1,K,M)-TB(I ,K,M)) IPDFLXCL.279 872 CONTINUE IPDFLXCL.280 IF (L_OCYCLIC) THEN ORH1F305.4869 tempb(IMT,K)=tempb(2,K) IPDFLXCL.283 ELSE ORH1F305.4870 tempb(IMT,K)=0.0 IPDFLXCL.286 ENDIF ORH1F305.4871 870 CONTINUE IPDFLXCL.289 C IPDFLXCL.290 DO 880 K=2,KM IPDFLXCL.291 DO 880 I=1,IMT IPDFLXCL.292 e(I,K,3)= IPDFLXCL.293 & fk3(I,K,1)*(( tempa(I,K)+tempa(I,K-1) IPDFLXCL.294 & +tempb(I,K)+tempb(I,K-1))*CSTR(J))*DXT4RQ(I,K) IPDFLXCL.295 880 CONTINUE IPDFLXCL.296 DO 890 K=1,KM IPDFLXCL.297 DO 890 I=1,IMT IPDFLXCL.298 tempa(I,K)=FMM(I,K)*(TB (I,K,M)-TBM(I,K,M)) IPDFLXCL.299 tempb(I,K)=FMP(I,K)*(TBP(I,K,M)-TB (I,K,M)) IPDFLXCL.300 890 CONTINUE IPDFLXCL.301 DO 900 K=2,KM IPDFLXCL.302 DO 900 I=1,IMT IPDFLXCL.303 e(I,K,3)=e(I,K,3) IPDFLXCL.304 & +fk3(I,K,2)*(( tempa(I,K)+tempa(I,K-1) IPDFLXCL.305 & +tempb(I,K)+tempb(I,K-1))*DYT4R(J)) IPDFLXCL.306 C IPDFLXCL.307 CL Only fk3(I,K,1) & fk3(I,K,2) are used, since fk3(I,K,3) is IPDFLXCL.308 CL dealt with in the implicit code in VDIFCALT. IPDFLXCL.309 C IPDFLXCL.310 900 CONTINUE IPDFLXCL.311 C IPDFLXCL.312 C -------------------------------------------------------------- IPDFLXCL.313 CL Land points are masked out of the array IPDFLXCL.314 C -------------------------------------------------------------- IPDFLXCL.315 C IPDFLXCL.316 DO 910 K=1,KM IPDFLXCL.317 DO 905 I=1,IMTM1 IPDFLXCL.318 e(I,K,1)=FM (I+1,K)*FM(I,K)*e(I,K,1) IPDFLXCL.319 e(I,K,2)=FMP(I ,K)*FM(I,K)*e(I,K,2)*CS(J) IPDFLXCL.320 905 CONTINUE IPDFLXCL.321 I=IMT IPDFLXCL.322 IF (L_OCYCLIC) THEN ORH1F305.4872 e(I,K,1)=FM (3,K)*FM(I,K)*e(I,K,1) IPDFLXCL.325 ELSE ORH1F305.4873 e(I,K,1)=0. IPDFLXCL.328 ENDIF ORH1F305.4874 e(I,K,2)=FMP(I ,K)*FM(I,K)*e(I,K,2)*CS(J) IPDFLXCL.331 910 CONTINUE IPDFLXCL.332 DO 920 K=2,KM IPDFLXCL.333 DO 920 I=1,IMT IPDFLXCL.334 e(I,K,3)=FM(I,K-1)*FM(I,K)*e(I,K,3) IPDFLXCL.335 920 CONTINUE IPDFLXCL.336 C IPDFLXCL.337 930 CONTINUE IPDFLXCL.338 C IPDFLXCL.339 C -------------------------------------------------------------- IPDFLXCL.340 CL The tracers are updated here IPDFLXCL.341 C -------------------------------------------------------------- IPDFLXCL.342 C IPDFLXCL.343 DO 940 K=1,KM IPDFLXCL.344 DO 941 I=2,IMT IPDFLXCL.345 tempx(I,K)=(e(I,K,1)-e(I-1,K,1))*4.*DXT4RQ(I,K) JG170893.6 tempa(i,k)=(e(I,K,2)-esav(I,K,M))*DYTR(J) JG170893.7 tempxa(i,k)=((e(i,k,1)-e(i-1,k,1))*4.*DXT4RQ(i,k) JG170893.8 & +(e(i,k,2)-esav(i,k,m))*DYTR(J))*CSTR(J) JG170893.9 tempx(i,k)=tempx(i,k)*cstr(j) JG170893.10 tempa(i,k)=tempa(i,k)*cstr(j) JG170893.11 941 CONTINUE IPDFLXCL.348 IF (L_OCYCLIC) THEN ORH1F305.4875 tempx(1,K)=tempx(IMTM1,K) JG170893.12 tempxa(1,K)=tempxa(IMTM1,K) JG170893.13 tempa(1,K)=tempa(IMTM1,K) IPDFLXCL.351 ELSE ORH1F305.4876 tempx(1,K)=0.0 JG170893.14 tempxa(1,K)=0.0 JG170893.15 tempa(1,K)=0.0 IPDFLXCL.354 ENDIF ORH1F305.4877 ! ORH1F305.4878 DO 942 I=1,IMT IPDFLXCL.357 tempb(I,K)= ((e(I,K,3)-e(I,K+1,3))*fxb)*DZ2RQ(I,K) IPDFLXCL.358 TA(I,K,M)=TA(I,K,M)+tempxa(i,k)+tempb(I,K) JG170893.16 C IPDFLXCL.360 CL esav is needed since ( K * d-T/d-y ) for the present row IPDFLXCL.361 CL is used in the calc. of ( d/d-y * ( K * d-T/d-y ) ) IPDFLXCL.362 CL for the next slab IPDFLXCL.363 C IPDFLXCL.364 esav(I,K,M)=e(I,K,2) IPDFLXCL.365 942 CONTINUE IPDFLXCL.366 940 CONTINUE IPDFLXCL.367 C IPDFLXCL.368 *ENDIF ORH1F305.461 RETURN IPDFLXCL.369 END IPDFLXCL.370 *ENDIF IPDFLXCL.371