source: LMDZ6/trunk/libf/phylmd/ecrad/ifsrrtm/rrtm_taumol4.F90 @ 5407

Last change on this file since 5407 was 4773, checked in by idelkadi, 12 months ago
  • Update of Ecrad in LMDZ The same organization of the Ecrad offline version is retained in order to facilitate the updating of Ecrad in LMDZ and the comparison between online and offline results. version 1.6.1 of Ecrad (https://github.com/lguez/ecrad.git)
  • Implementation of the double call of Ecrad in LMDZ


File size: 13.4 KB
Line 
1!----------------------------------------------------------------------------
2SUBROUTINE RRTM_TAUMOL4 (KIDIA,KFDIA,KLEV,P_TAU,&
3 & P_TAUAERL,P_FAC00,P_FAC01,P_FAC10,P_FAC11,P_FORFAC,P_FORFRAC,K_INDFOR,K_JP,K_JT,K_JT1,P_ONEMINUS,&
4 & P_COLH2O,P_COLCO2,P_COLO3,K_LAYTROP,P_SELFFAC,P_SELFFRAC,K_INDSELF,PFRAC, &
5 & P_RAT_H2OCO2, P_RAT_H2OCO2_1, P_RAT_O3CO2, P_RAT_O3CO2_1) 
6
7!     BAND 4:  630-700 cm-1 (low - H2O,CO2; high - O3,CO2)
8
9!     AUTHOR.
10!     -------
11!      JJMorcrette, ECMWF
12
13!     MODIFICATIONS.
14!     --------------
15!      M.Hamrud      01-Oct-2003 CY28 Cleaning
16!      NEC           25-Oct-2007 Optimisations
17!      JJMorcrette 20110613 flexible number of g-points
18!      ABozzo 201306 updated to rrtmg v4.85
19! ---------------------------------------------------------------------------
20
21USE PARKIND1  ,ONLY : JPIM     ,JPRB
22USE YOMHOOK   ,ONLY : LHOOK, DR_HOOK, JPHOOK
23
24USE PARRRTM  , ONLY : JPBAND
25USE YOERRTM  , ONLY : JPGPT  ,NG4   ,NGS3
26USE YOERRTWN , ONLY : NSPA   ,NSPB
27USE YOERRTA4 , ONLY : ABSA   ,ABSB   ,FRACREFA, FRACREFB,SELFREF,FORREF
28USE YOERRTRF, ONLY : CHI_MLS
29
30IMPLICIT NONE
31
32INTEGER(KIND=JPIM),INTENT(IN)    :: KIDIA
33INTEGER(KIND=JPIM),INTENT(IN)    :: KFDIA
34INTEGER(KIND=JPIM),INTENT(IN)    :: KLEV
35REAL(KIND=JPRB)   ,INTENT(OUT)   :: P_TAU(KIDIA:KFDIA,JPGPT,KLEV)
36REAL(KIND=JPRB)   ,INTENT(IN)    :: P_TAUAERL(KIDIA:KFDIA,KLEV,JPBAND)
37REAL(KIND=JPRB)   ,INTENT(IN)    :: P_FAC00(KIDIA:KFDIA,KLEV)
38REAL(KIND=JPRB)   ,INTENT(IN)    :: P_FAC01(KIDIA:KFDIA,KLEV)
39REAL(KIND=JPRB)   ,INTENT(IN)    :: P_FAC10(KIDIA:KFDIA,KLEV)
40REAL(KIND=JPRB)   ,INTENT(IN)    :: P_FAC11(KIDIA:KFDIA,KLEV)
41INTEGER(KIND=JPIM),INTENT(IN)    :: K_JP(KIDIA:KFDIA,KLEV)
42INTEGER(KIND=JPIM),INTENT(IN)    :: K_JT(KIDIA:KFDIA,KLEV)
43INTEGER(KIND=JPIM),INTENT(IN)    :: K_JT1(KIDIA:KFDIA,KLEV)
44REAL(KIND=JPRB)   ,INTENT(IN)    :: P_ONEMINUS
45REAL(KIND=JPRB)   ,INTENT(IN)    :: P_COLH2O(KIDIA:KFDIA,KLEV)
46REAL(KIND=JPRB)   ,INTENT(IN)    :: P_COLCO2(KIDIA:KFDIA,KLEV)
47REAL(KIND=JPRB)   ,INTENT(IN)    :: P_COLO3(KIDIA:KFDIA,KLEV)
48INTEGER(KIND=JPIM),INTENT(IN)    :: K_LAYTROP(KIDIA:KFDIA)
49REAL(KIND=JPRB)   ,INTENT(IN)    :: P_SELFFAC(KIDIA:KFDIA,KLEV)
50REAL(KIND=JPRB)   ,INTENT(IN)    :: P_SELFFRAC(KIDIA:KFDIA,KLEV)
51INTEGER(KIND=JPIM),INTENT(IN)    :: K_INDSELF(KIDIA:KFDIA,KLEV)
52REAL(KIND=JPRB)   ,INTENT(OUT)   :: PFRAC(KIDIA:KFDIA,JPGPT,KLEV)
53
54REAL(KIND=JPRB)   ,INTENT(IN)   :: P_RAT_H2OCO2(KIDIA:KFDIA,KLEV)
55REAL(KIND=JPRB)   ,INTENT(IN)   :: P_RAT_H2OCO2_1(KIDIA:KFDIA,KLEV)
56REAL(KIND=JPRB)   ,INTENT(IN)   :: P_RAT_O3CO2(KIDIA:KFDIA,KLEV)
57REAL(KIND=JPRB)   ,INTENT(IN)   :: P_RAT_O3CO2_1(KIDIA:KFDIA,KLEV)
58INTEGER(KIND=JPIM),INTENT(IN)   :: K_INDFOR(KIDIA:KFDIA,KLEV)
59REAL(KIND=JPRB)   ,INTENT(IN)   :: P_FORFAC(KIDIA:KFDIA,KLEV)
60REAL(KIND=JPRB)   ,INTENT(IN)   :: P_FORFRAC(KIDIA:KFDIA,KLEV)
61! ---------------------------------------------------------------------------
62
63REAL(KIND=JPRB) :: Z_SPECCOMB(KLEV),Z_SPECCOMB1(KLEV), Z_SPECCOMB_PLANCK(KLEV)
64INTEGER(KIND=JPIM) :: IND0(KLEV),IND1(KLEV),INDS(KLEV),INDF(KLEV)
65
66INTEGER(KIND=JPIM) :: IG, JS, JLAY, JS1, JPL
67INTEGER(KIND=JPIM) :: JLON
68
69
70REAL(KIND=JPRB) :: ZREFRAT_PLANCK_A, ZREFRAT_PLANCK_B
71 REAL(KIND=JPRB) ::  Z_FAC000, Z_FAC100, Z_FAC200,&
72 & Z_FAC010, Z_FAC110, Z_FAC210, &
73 & Z_FAC001, Z_FAC101, Z_FAC201, &
74 & Z_FAC011, Z_FAC111, Z_FAC211
75REAL(KIND=JPRB) :: ZP, ZP4, ZFK0, ZFK1, ZFK2
76REAL(KIND=JPRB) :: ZTAUFOR,ZTAUSELF,ZTAU_MAJOR,ZTAU_MAJOR1
77REAL(KIND=JPRB) :: Z_FS, Z_SPECMULT, Z_SPECPARM,  &
78 & Z_FS1, Z_SPECMULT1, Z_SPECPARM1, &
79 & Z_FPL, Z_SPECMULT_PLANCK, Z_SPECPARM_PLANCK
80
81REAL(KIND=JPHOOK) :: ZHOOK_HANDLE
82
83IF (LHOOK) CALL DR_HOOK('RRTM_TAUMOL4',0,ZHOOK_HANDLE)
84
85! P =   142.5940 mb
86      ZREFRAT_PLANCK_A = CHI_MLS(1,11)/CHI_MLS(2,11)
87
88! P = 95.58350 mb
89      ZREFRAT_PLANCK_B = CHI_MLS(3,13)/CHI_MLS(2,13)
90
91!     Compute the optical depth by interpolating in ln(pressure),
92!     temperature, and appropriate species.  Below LAYTROP, the water
93!     vapor self-continuum is interpolated (in temperature) separately.
94 
95DO JLAY = 1, KLEV
96  DO JLON = KIDIA, KFDIA
97    IF (JLAY <= K_LAYTROP(JLON)) THEN
98      Z_SPECCOMB(JLAY) = P_COLH2O(JLON,JLAY) + P_RAT_H2OCO2(JLON,JLAY)*P_COLCO2(JLON,JLAY)
99      Z_SPECPARM = P_COLH2O(JLON,JLAY)/Z_SPECCOMB(JLAY)
100      Z_SPECPARM=MIN(P_ONEMINUS,Z_SPECPARM)
101      Z_SPECMULT = 8._JPRB*(Z_SPECPARM)
102      JS = 1 + INT(Z_SPECMULT)
103      Z_FS = MOD(Z_SPECMULT,1.0_JPRB)
104
105      Z_SPECCOMB1(JLAY) = P_COLH2O(JLON,JLAY) + P_RAT_H2OCO2_1(JLON,JLAY)*P_COLCO2(JLON,JLAY)
106      Z_SPECPARM1 = P_COLH2O(JLON,JLAY)/Z_SPECCOMB1(JLAY)
107      IF (Z_SPECPARM1 >= P_ONEMINUS) Z_SPECPARM1 = P_ONEMINUS
108      Z_SPECMULT1 = 8._JPRB*(Z_SPECPARM1)
109      JS1 = 1 + INT(Z_SPECMULT1)
110      Z_FS1 = MOD(Z_SPECMULT1,1.0_JPRB)
111
112      Z_SPECCOMB_PLANCK(JLAY) = P_COLH2O(JLON,JLAY)+ZREFRAT_PLANCK_A*P_COLCO2(JLON,JLAY)
113      Z_SPECPARM_PLANCK = P_COLH2O(JLON,JLAY)/Z_SPECCOMB_PLANCK(JLAY)
114      IF (Z_SPECPARM_PLANCK >= P_ONEMINUS) Z_SPECPARM_PLANCK=P_ONEMINUS
115      Z_SPECMULT_PLANCK = 8._JPRB*Z_SPECPARM_PLANCK
116      JPL= 1 + INT(Z_SPECMULT_PLANCK)
117      Z_FPL = MOD(Z_SPECMULT_PLANCK,1.0_JPRB)
118
119      IND0(JLAY) = ((K_JP(JLON,JLAY)-1)*5+(K_JT(JLON,JLAY)-1))*NSPA(4) + JS
120      IND1(JLAY) = (K_JP(JLON,JLAY)*5+(K_JT1(JLON,JLAY)-1))*NSPA(4) + JS1
121      INDS(JLAY) = K_INDSELF(JLON,JLAY)
122      INDF(JLAY) = K_INDFOR(JLON,JLAY)
123
124    IF (Z_SPECPARM < 0.125_JPRB) THEN
125            ZP = Z_FS - 1
126            ZP4 = ZP**4
127            ZFK0 = ZP4
128            ZFK1 = 1 - ZP - 2.0_JPRB*ZP4
129            ZFK2 = ZP + ZP4
130            Z_FAC000 = ZFK0*P_FAC00(JLON,JLAY)
131            Z_FAC100 = ZFK1*P_FAC00(JLON,JLAY)
132            Z_FAC200 = ZFK2*P_FAC00(JLON,JLAY)
133            Z_FAC010 = ZFK0*P_FAC10(JLON,JLAY)
134            Z_FAC110 = ZFK1*P_FAC10(JLON,JLAY)
135            Z_FAC210 = ZFK2*P_FAC10(JLON,JLAY)
136         ELSEIF (Z_SPECPARM > 0.875_JPRB) THEN
137            ZP = -Z_FS
138            ZP4 = ZP**4
139            ZFK0 = ZP4
140            ZFK1 = 1 - ZP - 2.0_JPRB*ZP4
141            ZFK2 = ZP + ZP4
142            Z_FAC000 = ZFK0*P_FAC00(JLON,JLAY)
143            Z_FAC100 = ZFK1*P_FAC00(JLON,JLAY)
144            Z_FAC200 = ZFK2*P_FAC00(JLON,JLAY)
145            Z_FAC010 = ZFK0*P_FAC10(JLON,JLAY)
146            Z_FAC110 = ZFK1*P_FAC10(JLON,JLAY)
147            Z_FAC210 = ZFK2*P_FAC10(JLON,JLAY)
148         ELSE
149            Z_FAC000 = (1._JPRB - Z_FS) * P_FAC00(JLON,JLAY)
150            Z_FAC010 = (1._JPRB - Z_FS) * P_FAC10(JLON,JLAY)
151            Z_FAC100 = Z_FS * P_FAC00(JLON,JLAY)
152            Z_FAC110 = Z_FS * P_FAC10(JLON,JLAY)
153         ENDIF
154         IF (Z_SPECPARM1 < 0.125_JPRB) THEN
155            ZP = Z_FS1 - 1
156            ZP4 = ZP**4
157            ZFK0 = ZP4
158            ZFK1 = 1 - ZP - 2.0_JPRB*ZP4
159            ZFK2 = ZP + ZP4
160            Z_FAC001 = ZFK0*P_FAC01(JLON,JLAY)
161            Z_FAC101 = ZFK1*P_FAC01(JLON,JLAY)
162            Z_FAC201 = ZFK2*P_FAC01(JLON,JLAY)
163            Z_FAC011 = ZFK0*P_FAC11(JLON,JLAY)
164            Z_FAC111 = ZFK1*P_FAC11(JLON,JLAY)
165            Z_FAC211 = ZFK2*P_FAC11(JLON,JLAY)
166         ELSEIF (Z_SPECPARM1 > 0.875_JPRB) THEN
167            ZP = -Z_FS1
168            ZP4 = ZP**4
169            ZFK0 = ZP4
170            ZFK1 = 1 - ZP - 2.0_JPRB*ZP4
171            ZFK2 = ZP + ZP4
172            Z_FAC001 = ZFK0*P_FAC01(JLON,JLAY)
173            Z_FAC101 = ZFK1*P_FAC01(JLON,JLAY)
174            Z_FAC201 = ZFK2*P_FAC01(JLON,JLAY)
175            Z_FAC011 = ZFK0*P_FAC11(JLON,JLAY)
176            Z_FAC111 = ZFK1*P_FAC11(JLON,JLAY)
177            Z_FAC211 = ZFK2*P_FAC11(JLON,JLAY)
178         ELSE
179            Z_FAC001 = (1._JPRB - Z_FS1) * P_FAC01(JLON,JLAY)
180            Z_FAC011 = (1._JPRB - Z_FS1) * P_FAC11(JLON,JLAY)
181            Z_FAC101 = Z_FS1 * P_FAC01(JLON,JLAY)
182            Z_FAC111 = Z_FS1 * P_FAC11(JLON,JLAY)
183         ENDIF
184
185
186
187!-- DS_000515
188!CDIR UNROLL=NG4
189      DO IG = 1, NG4
190!-- DS_000515
191         ZTAUSELF = P_SELFFAC(JLON,JLAY)* (SELFREF(INDS(JLAY),IG) + P_SELFFRAC(JLON,JLAY) * &
192              &  (SELFREF(INDS(JLAY)+1,IG) - SELFREF(INDS(JLAY),IG)))
193         ZTAUFOR = P_FORFAC(JLON,JLAY) * (FORREF(INDF(JLAY),IG) + P_FORFRAC(JLON,JLAY) * &
194              &  (FORREF(INDF(JLAY)+1,IG) - FORREF(INDF(JLAY),IG)))
195
196            IF (Z_SPECPARM < 0.125_JPRB) THEN
197               ZTAU_MAJOR = Z_SPECCOMB(JLAY) * &
198                 &  (Z_FAC000 * ABSA(IND0(JLAY),IG) + &
199                 &  Z_FAC100 * ABSA(IND0(JLAY)+1,IG) + &
200                 &  Z_FAC200 * ABSA(IND0(JLAY)+2,IG) + &
201                 &  Z_FAC010 * ABSA(IND0(JLAY)+9,IG) + &
202                 &  Z_FAC110 * ABSA(IND0(JLAY)+10,IG) + &
203                 &  Z_FAC210 * ABSA(IND0(JLAY)+11,IG))
204            ELSEIF (Z_SPECPARM > 0.875_JPRB) THEN
205               ZTAU_MAJOR = Z_SPECCOMB(JLAY) * &
206                 &  (Z_FAC200 * ABSA(IND0(JLAY)-1,IG) + &
207                 &  Z_FAC100 * ABSA(IND0(JLAY),IG) + &
208                 &  Z_FAC000 * ABSA(IND0(JLAY)+1,IG) + &
209                 &  Z_FAC210 * ABSA(IND0(JLAY)+8,IG) + &
210                 &  Z_FAC110 * ABSA(IND0(JLAY)+9,IG) + &
211                 &  Z_FAC010 * ABSA(IND0(JLAY)+10,IG))
212            ELSE
213               ZTAU_MAJOR = Z_SPECCOMB(JLAY) * &
214                 &  (Z_FAC000 * ABSA(IND0(JLAY),IG) + &
215                 &  Z_FAC100 * ABSA(IND0(JLAY)+1,IG) + &
216                 &  Z_FAC010 * ABSA(IND0(JLAY)+9,IG) + &
217                 &  Z_FAC110 * ABSA(IND0(JLAY)+10,IG))
218            ENDIF
219
220            IF (Z_SPECPARM1 < 0.125_JPRB) THEN
221               ZTAU_MAJOR1 = Z_SPECCOMB1(JLAY) * &
222                 &  (Z_FAC001 * ABSA(IND1(JLAY),IG) + &
223                 &  Z_FAC101 * ABSA(IND1(JLAY)+1,IG) + &
224                 &  Z_FAC201 * ABSA(IND1(JLAY)+2,IG) + &
225                 &  Z_FAC011 * ABSA(IND1(JLAY)+9,IG) + &
226                 &  Z_FAC111 * ABSA(IND1(JLAY)+10,IG) + &
227                 &  Z_FAC211 * ABSA(IND1(JLAY)+11,IG))
228            ELSEIF (Z_SPECPARM1 > 0.875_JPRB) THEN
229               ZTAU_MAJOR1 = Z_SPECCOMB1(JLAY) * &
230                 &  (Z_FAC201 * ABSA(IND1(JLAY)-1,IG) + &
231                 &  Z_FAC101 * ABSA(IND1(JLAY),IG) + &
232                 &  Z_FAC001 * ABSA(IND1(JLAY)+1,IG) + &
233                 &  Z_FAC211 * ABSA(IND1(JLAY)+8,IG) + &
234                 &  Z_FAC111 * ABSA(IND1(JLAY)+9,IG) + &
235                 &  Z_FAC011 * ABSA(IND1(JLAY)+10,IG))
236            ELSE
237               ZTAU_MAJOR1 = Z_SPECCOMB1(JLAY) * &
238                 &  (Z_FAC001 * ABSA(IND1(JLAY),IG) +  &
239                 &  Z_FAC101 * ABSA(IND1(JLAY)+1,IG) + &
240                 &  Z_FAC011 * ABSA(IND1(JLAY)+9,IG) + &
241                 &  Z_FAC111 * ABSA(IND1(JLAY)+10,IG))
242            ENDIF
243
244
245            P_TAU(JLON,NGS3+IG,JLAY) = ZTAU_MAJOR + ZTAU_MAJOR1 &
246               & + ZTAUSELF + ZTAUFOR &
247               & + P_TAUAERL(JLON,JLAY,4) 
248            PFRAC(JLON,NGS3+IG,JLAY) = FRACREFA(IG,JPL) + Z_FPL *&
249               & (FRACREFA(IG,JPL+1) - FRACREFA(IG,JPL))
250      ENDDO
251    ENDIF
252
253    IF (JLAY > K_LAYTROP(JLON)) THEN
254      Z_SPECCOMB(JLAY) = P_COLO3(JLON,JLAY) + P_RAT_O3CO2(JLON,JLAY)*P_COLCO2(JLON,JLAY)
255      Z_SPECPARM = P_COLO3(JLON,JLAY)/Z_SPECCOMB(JLAY)
256      Z_SPECPARM=MIN(P_ONEMINUS,Z_SPECPARM)
257      Z_SPECMULT = 4._JPRB*(Z_SPECPARM)
258      JS = 1 + INT(Z_SPECMULT)
259      Z_FS = MOD(Z_SPECMULT,1.0_JPRB)
260
261      Z_SPECCOMB1(JLAY) = P_COLO3(JLON,JLAY) + P_RAT_O3CO2_1(JLON,JLAY)*P_COLCO2(JLON,JLAY)
262      Z_SPECPARM1 = P_COLO3(JLON,JLAY)/Z_SPECCOMB1(JLAY)
263      Z_SPECPARM1=MIN(P_ONEMINUS,Z_SPECPARM1)
264      Z_SPECMULT1 = 4._JPRB*(Z_SPECPARM1)
265      JS1 = 1 + INT(Z_SPECMULT1)
266      Z_FS1 = MOD(Z_SPECMULT1,1.0_JPRB)
267
268      Z_FAC000 = (1._JPRB - Z_FS) * P_FAC00(JLON,JLAY)
269      Z_FAC010 = (1._JPRB - Z_FS) * P_FAC10(JLON,JLAY)
270      Z_FAC100 = Z_FS * P_FAC00(JLON,JLAY)
271      Z_FAC110 = Z_FS * P_FAC10(JLON,JLAY)
272      Z_FAC001 = (1._JPRB - Z_FS1) * P_FAC01(JLON,JLAY)
273      Z_FAC011 = (1._JPRB - Z_FS1) * P_FAC11(JLON,JLAY)
274      Z_FAC101 = Z_FS1 * P_FAC01(JLON,JLAY)
275      Z_FAC111 = Z_FS1 * P_FAC11(JLON,JLAY)
276
277      Z_SPECCOMB_PLANCK(JLAY) = P_COLO3(JLON,JLAY)+ZREFRAT_PLANCK_B*P_COLCO2(JLON,JLAY)
278      Z_SPECPARM_PLANCK = P_COLO3(JLON,JLAY)/Z_SPECCOMB_PLANCK(JLAY)
279      IF (Z_SPECPARM_PLANCK >= P_ONEMINUS) Z_SPECPARM_PLANCK=P_ONEMINUS
280      Z_SPECMULT_PLANCK = 4._JPRB*Z_SPECPARM_PLANCK
281      JPL= 1 + INT(Z_SPECMULT_PLANCK)
282      Z_FPL = MOD(Z_SPECMULT_PLANCK,1.0_JPRB)
283
284      IND0(JLAY) = ((K_JP(JLON,JLAY)-13)*5+(K_JT(JLON,JLAY)-1))*NSPB(4) + JS
285      IND1(JLAY) = ((K_JP(JLON,JLAY)-12)*5+(K_JT1(JLON,JLAY)-1))*NSPB(4) + JS1
286
287
288!CDIR UNROLL=NG4
289      DO IG = 1, NG4
290        P_TAU(JLON,NGS3+IG,JLAY) = Z_SPECCOMB(JLAY) *   &
291          &(Z_FAC000 * ABSB(IND0(JLAY)  ,IG) +&
292          & Z_FAC100 * ABSB(IND0(JLAY)+1,IG) +&
293          & Z_FAC010 * ABSB(IND0(JLAY)+5,IG) +&
294          & Z_FAC110 * ABSB(IND0(JLAY)+6,IG)) +&
295          & Z_SPECCOMB1(JLAY) * &
296          & (Z_FAC001 * ABSB(IND1(JLAY)  ,IG) +&
297          & Z_FAC101 * ABSB(IND1(JLAY)+1,IG) +&
298          & Z_FAC011 * ABSB(IND1(JLAY)+5,IG) +&
299          & Z_FAC111 * ABSB(IND1(JLAY)+6,IG))+&
300          & P_TAUAERL(JLON,JLAY,4) 
301        PFRAC(JLON,NGS3+IG,JLAY) = FRACREFB(IG,JPL) + Z_FPL *&
302         & (FRACREFB(IG,JPL+1) - FRACREFB(IG,JPL)) 
303      ENDDO
304
305! Empirical modification to code to improve stratospheric cooling rates
306! for co2.  Revised to apply weighting for g-point reduction in this band.
307
308         P_TAU(JLON,NGS3+8,JLAY)=P_TAU(JLON,NGS3+8,JLAY)*0.92
309         P_TAU(JLON,NGS3+9,JLAY)=P_TAU(JLON,NGS3+9,JLAY)*0.88
310         P_TAU(JLON,NGS3+10,JLAY)=P_TAU(JLON,NGS3+10,JLAY)*1.07
311         P_TAU(JLON,NGS3+11,JLAY)=P_TAU(JLON,NGS3+11,JLAY)*1.1
312         P_TAU(JLON,NGS3+12,JLAY)=P_TAU(JLON,NGS3+12,JLAY)*0.99
313         P_TAU(JLON,NGS3+13,JLAY)=P_TAU(JLON,NGS3+13,JLAY)*0.88
314         P_TAU(JLON,NGS3+14,JLAY)=P_TAU(JLON,NGS3+14,JLAY)*0.943
315
316
317    ENDIF
318  ENDDO
319ENDDO
320
321IF (LHOOK) CALL DR_HOOK('RRTM_TAUMOL4',1,ZHOOK_HANDLE)
322
323END SUBROUTINE RRTM_TAUMOL4
Note: See TracBrowser for help on using the repository browser.