LMDZ
srtm_srtm_224gp_mcica.F90
Go to the documentation of this file.
1 SUBROUTINE srtm_srtm_224gp_mcica &
2  & ( kidia , kfdia , klon , klev , ksw , kcols , kcldly ,&
3  & paer , palbd , palbp , paph , pap , &
4  & pts , pth , pt ,&
5  & pq , pcco2 , pozn , prmu0 ,&
6  & pfrcl , ptauc , pasyc , pomgc ,&
7  & pfsux , pfsuc &
8  & )
9 
10 !-- interface to RRTM_SW
11 ! JJMorcrette 030225
12 ! JJMorcrette 20050110 McICA version
13 
14 USE parkind1 ,ONLY : jpim ,jprb
15 USE yomhook ,ONLY : lhook, dr_hook
16 
17 USE parsrtm , ONLY : jplay
18 USE yoerdi , ONLY : rch4 , rn2o
19 USE yoerad , ONLY : naer
20 USE yoesrtaer, ONLY : rsrtaua, rsrpiza, rsrasya
21 USE yomphy3 , ONLY : rii0
22 USE yomcst , ONLY : ri0
23 
24 IMPLICIT NONE
25 
26 !-- Input arguments
27 
28 INTEGER(KIND=JPIM),INTENT(IN) :: KLON
29 INTEGER(KIND=JPIM),INTENT(IN) :: KLEV
30 INTEGER(KIND=JPIM),INTENT(IN) :: KSW
31 INTEGER(KIND=JPIM),INTENT(IN) :: KIDIA
32 INTEGER(KIND=JPIM),INTENT(IN) :: KFDIA
33 INTEGER(KIND=JPIM),INTENT(IN) :: KCOLS
34 INTEGER(KIND=JPIM),INTENT(IN) :: KCLDLY(kcols)
35 
36 REAL(KIND=JPRB) ,INTENT(IN) :: PAER(klon,6,klev) ! top to bottom
37 REAL(KIND=JPRB) ,INTENT(IN) :: PALBD(klon,ksw)
38 REAL(KIND=JPRB) ,INTENT(IN) :: PALBP(klon,ksw)
39 REAL(KIND=JPRB) ,INTENT(IN) :: PAPH(klon,klev+1)
40 REAL(KIND=JPRB) ,INTENT(IN) :: PAP(klon,klev)
41 REAL(KIND=JPRB) ,INTENT(IN) :: PTS(klon)
42 REAL(KIND=JPRB) ,INTENT(IN) :: PTH(klon,klev+1)
43 REAL(KIND=JPRB) ,INTENT(IN) :: PT(klon,klev)
44 REAL(KIND=JPRB) ,INTENT(IN) :: PQ(klon,klev)
45 REAL(KIND=JPRB) ,INTENT(IN) :: PCCO2
46 REAL(KIND=JPRB) ,INTENT(IN) :: POZN(klon,klev)
47 REAL(KIND=JPRB) ,INTENT(IN) :: PRMU0(klon)
48 
49 REAL(KIND=JPRB) ,INTENT(IN) :: PFRCL(klon,kcols,klev) ! bottom to top
50 REAL(KIND=JPRB) ,INTENT(IN) :: PTAUC(klon,kcols,klev) ! bottom to top
51 REAL(KIND=JPRB) ,INTENT(IN) :: PASYC(klon,kcols,klev) ! bottom to top
52 REAL(KIND=JPRB) ,INTENT(IN) :: POMGC(klon,kcols,klev) ! bottom to top
53 
54 REAL(KIND=JPRB) ,INTENT(OUT) :: PFSUX(klon,2,klev+1)
55 REAL(KIND=JPRB) ,INTENT(OUT) :: PFSUC(klon,2,klev+1)
56 
57 !-- Output arguments
58 
59 !-----------------------------------------------------------------------
60 
61 !-- dummy integers
62 
63 INTEGER(KIND=JPIM) :: ICLDATM, INFLAG, ICEFLAG, I_LIQFLAG, ITMOL, I_NSTR
64 
65 INTEGER(KIND=JPIM) :: IK, IMOL, J1, J2, JAE, JL, JK, JSW
66 
67 !-- dummy reals
68 
69 REAL(KIND=JPRB) :: ZPZ(0:jplay) , ZTZ(0:jplay) , ZPAVEL(jplay) , ZTAVEL(jplay)
70 REAL(KIND=JPRB) :: ZCOLDRY(jplay) , ZCOLMOL(jplay) , ZWKL(35,jplay)
71 REAL(KIND=JPRB) :: ZCO2MULT(jplay), ZCOLCH4(jplay) , ZCOLCO2(jplay) , ZCOLH2O(jplay)
72 REAL(KIND=JPRB) :: ZCOLN2O(jplay) , ZCOLO2(jplay) , ZCOLO3(jplay)
73 REAL(KIND=JPRB) :: ZFORFAC(jplay) , ZFORFRAC(jplay), ZSELFFAC(jplay), ZSELFFRAC(jplay)
74 REAL(KIND=JPRB) :: ZFAC00(jplay) , ZFAC01(jplay) , ZFAC10(jplay) , ZFAC11(jplay)
75 REAL(KIND=JPRB) :: ZTBOUND , ZONEMINUS , ZRMU0 , ZADJI0
76 REAL(KIND=JPRB) :: ZALBD(ksw) , ZALBP(ksw)
77 
78 REAL(KIND=JPRB) :: ZFRCL(kcols,jplay), ZTAUC(jplay,kcols), ZASYC(jplay,kcols), ZOMGC(jplay,kcols)
79 REAL(KIND=JPRB) :: ZTAUA(jplay,ksw), ZASYA(jplay,ksw), ZOMGA(jplay,ksw)
80 
81 REAL(KIND=JPRB) :: ZBBCD(jplay+1), ZBBCU(jplay+1), ZBBFD(jplay+1), ZBBFU(jplay+1)
82 !REAL(KIND=JPRB) :: ZUVCD(JPLAY+1), ZUVCU(JPLAY+1), ZUVFD(JPLAY+1), ZUVFU(JPLAY+1)
83 !REAL(KIND=JPRB) :: ZVSCD(JPLAY+1), ZVSCU(JPLAY+1), ZVSFD(JPLAY+1), ZVSFU(JPLAY+1)
84 !REAL(KIND=JPRB) :: ZNICD(JPLAY+1), ZNICU(JPLAY+1), ZNIFD(JPLAY+1), ZNIFU(JPLAY+1)
85 
86 INTEGER(KIND=JPIM) :: ILAYTROP, ILAYSWTCH, ILAYLOW
87 INTEGER(KIND=JPIM) :: INDFOR(jplay), INDSELF(jplay)
88 INTEGER(KIND=JPIM) :: JP(jplay), JT(jplay), JT1(jplay)
89 
90 REAL(KIND=JPRB) :: ZAMD ! Effective molecular weight of dry air (g/mol)
91 REAL(KIND=JPRB) :: ZAMW ! Molecular weight of water vapor (g/mol)
92 REAL(KIND=JPRB) :: ZAMCO2 ! Molecular weight of carbon dioxide (g/mol)
93 REAL(KIND=JPRB) :: ZAMO ! Molecular weight of ozone (g/mol)
94 REAL(KIND=JPRB) :: ZAMCH4 ! Molecular weight of methane (g/mol)
95 REAL(KIND=JPRB) :: ZAMN2O ! Molecular weight of nitrous oxide (g/mol)
96 REAL(KIND=JPRB) :: ZAMC11 ! Molecular weight of CFC11 (g/mol) - CFCL3
97 REAL(KIND=JPRB) :: ZAMC12 ! Molecular weight of CFC12 (g/mol) - CF2CL2
98 REAL(KIND=JPRB) :: ZAVGDRO ! Avogadro's number (molecules/mole)
99 REAL(KIND=JPRB) :: ZGRAVIT ! Gravitational acceleration (cm/sec2)
100 REAL(KIND=JPRB) :: ZAMM
101 
102 REAL(KIND=JPRB) :: RAMW ! Molecular weight of water vapor (g/mol)
103 REAL(KIND=JPRB) :: RAMCO2 ! Molecular weight of carbon dioxide (g/mol)
104 REAL(KIND=JPRB) :: RAMO ! Molecular weight of ozone (g/mol)
105 REAL(KIND=JPRB) :: RAMCH4 ! Molecular weight of methane (g/mol)
106 REAL(KIND=JPRB) :: RAMN2O ! Molecular weight of nitrous oxide (g/mol)
107 
108 ! Atomic weights for conversion from mass to volume mixing ratios; these
109 ! are the same values used in ECRT to assure accurate conversion to vmr
110 data zamd / 28.970_jprb /
111 data zamw / 18.0154_jprb /
112 data zamco2 / 44.011_jprb /
113 data zamo / 47.9982_jprb /
114 data zamch4 / 16.043_jprb /
115 data zamn2o / 44.013_jprb /
116 data zamc11 / 137.3686_jprb /
117 data zamc12 / 120.9140_jprb /
118 data zavgdro/ 6.02214e23_jprb /
119 data zgravit/ 9.80665e02_jprb /
120 data ramw / 0.05550_jprb /
121 data ramco2 / 0.02272_jprb /
122 data ramo / 0.02083_jprb /
123 data ramch4 / 0.06233_jprb /
124 data ramn2o / 0.02272_jprb /
125 
126 
127 REAL(KIND=JPRB) :: ZCLEAR, ZCLOUD, ZEPSEC, ZTOTCC
128 
129 INTEGER(KIND=JPIM) :: IOVLP
130 REAL(KIND=JPRB) :: ZHOOK_HANDLE
131 
132 
133 #include "srtm_setcoef.intfb.h"
134 #include "srtm_spcvrt_mcica.intfb.h"
135 
136 
137 !-----------------------------------------------------------------------
138 !-- calculate information needed ny the radiative transfer routine
139 
140 IF (lhook) CALL dr_hook('SRTM_SRTM_224GP_MCICA',0,zhook_handle)
141 zepsec = 1.e-06_jprb
142 zoneminus=1.0_jprb - zepsec
143 zadji0 = rii0 / ri0
144 !-- overlap: 1=max-ran, 2=maximum, 3=random
145 iovlp=3
146 
147 !print *,'Entering srtm_srtm_224gp_mcica'
148 
149 icldatm = 1
150 inflag = 2
151 iceflag = 3
152 i_liqflag= 1
153 itmol = 6
154 i_nstr = 2
155 
156 DO jl = kidia, kfdia
157  zrmu0=prmu0(jl)
158  IF (zrmu0 > 0.0_jprb) THEN
159 
160 !- coefficients related to the cloud optical properties (original RRTM_SW)
161 
162 ! print *,'just before SRTM_CLDPROP'
163 
164 ! DO JK=1,KLEV
165 ! CLDFRAC(JK) = PFRCL (JL,JK)
166 ! CLDDAT1(JK) = PSCLA1(JL,JK)
167 ! CLDDAT2(JK) = PSCLA2(JL,JK)
168 ! CLDDAT3(JK) = PSCLA3(JL,JK)
169 ! CLDDAT4(JK) = PSCLA4(JL,JK)
170 ! DO JMOM=0,16
171 ! CLDDATMOM(JMOM,JK)=PSCLMOM(JL,JMOM,JK)
172 ! ENDDO
173 ! print 9101,JK,CLDFRAC(JK),CLDDAT1(JK),CLDDAT2(JK),CLDDAT3(JK)&
174 ! &,CLDDAT4(JK),(CLDDATMOM(JMOM,JK),JMOM=0,NSTR)
175  9101 format(1x,'srtm_srtm_224gp Cld :',i3,f7.4,7e12.5)
176 ! ENDDO
177 
178 ! CALL SRTM_CLDPROP &
179 ! &( KLEV, ICLDATM, INFLAG, ICEFLAG, LIQFLAG, NSTR &
180 ! &, CLDFRAC, CLDDAT1, CLDDAT2, CLDDAT3, CLDDAT4, CLDDATMOM &
181 ! &, TAUCLDORIG, TAUCLOUD, SSACLOUD, XMOM &
182 ! &)
183 
184 !- coefficients for the temperature and pressure dependence of the
185 ! molecular absorption coefficients
186 
187  DO j1=1,35
188  DO j2=1,klev
189  zwkl(j1,j2)=0.0_jprb
190  ENDDO
191  ENDDO
192 
193  ztbound=pts(jl)
194  zpz(0) = paph(jl,klev+1)*0.01_jprb
195  ztz(0) = pth(jl,klev+1)
196 
197  zclear=1.0_jprb
198  zcloud=0.0_jprb
199  ztotcc=0.0_jprb
200  DO jk = 1, klev
201  zpavel(jk) = pap(jl,klev-jk+1) *0.01_jprb
202  ztavel(jk) = pt(jl,klev-jk+1)
203  zpz(jk) = paph(jl,klev-jk+1) *0.01_jprb
204  ztz(jk) = pth(jl,klev-jk+1)
205  zwkl(1,jk) = pq(jl,klev-jk+1) *zamd*ramw
206  zwkl(2,jk) = pcco2 *zamd*ramco2
207  zwkl(3,jk) = pozn(jl,klev-jk+1)*zamd*ramo
208  zwkl(4,jk) = rn2o *zamd*ramn2o
209  zwkl(6,jk) = rch4 *zamd*ramch4
210  zamm = (1-zwkl(1,jk))*zamd + zwkl(1,jk)*zamw
211  zcoldry(jk) = (zpz(jk-1)-zpz(jk))*1.e3_jprb*zavgdro/(zgravit*zamm*(1+zwkl(1,jk)))
212 ! print 9200,JK,PAVEL(JK),TAVEL(JK),(WKL(JA,JK),JA=1,4),WKL(6,JK),COLDRY(JK)
213  9200 format(1x,'SRTM ',i3,2f7.1,6e13.5)
214 
215 
216 
217  ENDDO
218 
219 ! print *,'ZTOTCC ZCLEAR : ',ZTOTCC,' ',ZCLEAR
220 
221  DO imol=1,itmol
222  DO jk=1,klev
223  zwkl(imol,jk)=zcoldry(jk)* zwkl(imol,jk)
224  ENDDO
225  ENDDO
226 
227 ! print *,'just before SRTM_SETCOEF'
228 
229  CALL srtm_setcoef &
230  & ( klev , itmol,&
231  & zpavel , ztavel , zpz , ztz , ztbound,&
232  & zcoldry , zwkl,&
233  & ilaytrop, ilayswtch, ilaylow,&
234  & zco2mult, zcolch4 , zcolco2 , zcolh2o , zcolmol , zcoln2o , zcolo2 , zcolo3,&
235  & zforfac , zforfrac , indfor , zselffac, zselffrac, indself, &
236  & zfac00 , zfac01 , zfac10 , zfac11,&
237  & jp , jt , jt1 &
238  & )
239 
240 ! print *,'just after SRTM_SETCOEF'
241 
242 !- call the radiation transfer routine
243 
244  DO jsw=1,ksw
245  zalbd(jsw)=palbd(jl,jsw)
246  zalbp(jsw)=palbp(jl,jsw)
247  ENDDO
248 
249  DO jsw=1,kcols
250  DO jk=1,klev
251  zfrcl(jsw,jk) = pfrcl(jl,jsw,jk)
252  ztauc(jk,jsw) = ptauc(jl,jsw,jk)
253  zasyc(jk,jsw) = pasyc(jl,jsw,jk)
254  zomgc(jk,jsw) = pomgc(jl,jsw,jk)
255 
256 !---- security: might have to be moved upstream to radlswr -------
257 ! IF(ZTAUC(JK,JSW) == 0._JPRB) ZFRCL(JSW,JK) = 0._JPRB
258 !-----------------------------------------------------------------
259 
260 
261 ! IF (ZFRCL(JSW,JK) /= 0._JPRB) THEN
262 ! print 9002,JSW,JK,ZFRCL(JSW,JK),ZTAUC(JK,JSW),ZASYC(JK,JSW),ZOMGC(JK,JSW)
263 9002 format(1x,'srtm_224gp_McICA ClOPropECmodel ',2i3,f8.4,3e12.5)
264 ! ENDIF
265  ENDDO
266  ENDDO
267 
268 !- mixing of aerosols
269 
270 ! print *,'Aerosol optical properties computations'
271 ! DO JSW=1,KSW
272 ! print 9012,JSW,(JAE,RSRTAUA(JSW,JAE),RSRPIZA(JSW,JAE),RSRASYA(JSW,JAE),JAE=1,6)
273  9012 format(i3,(/,i3,3e13.5))
274 ! ENDDO
275 
276 ! DO JK=1,KLEV
277 ! print 9013,JK,(PAER(JL,JAE,JK),JAE=1,6)
278  9013 format(1x,i3,6e12.5)
279 ! ENDDO
280 
281  IF (naer == 0) THEN
282  DO jsw=1,ksw
283  DO jk=1,klev
284  ztaua(jk,jsw)= 0.0_jprb
285  zasya(jk,jsw)= 0.0_jprb
286  zomga(jk,jsw)= 1.0_jprb
287  ENDDO
288  ENDDO
289  ELSE
290  DO jsw=1,ksw
291  DO jk=1,klev
292  ik=klev+1-jk
293  ztaua(jk,jsw)=0.0_jprb
294  zasya(jk,jsw)=0.0_jprb
295  zomga(jk,jsw)=0.0_jprb
296  DO jae=1,6
297  ztaua(jk,jsw)=ztaua(jk,jsw)+rsrtaua(jsw,jae)*paer(jl,jae,ik)
298  zomga(jk,jsw)=zomga(jk,jsw)+rsrtaua(jsw,jae)*paer(jl,jae,ik) &
299  & *rsrpiza(jsw,jae)
300  zasya(jk,jsw)=zasya(jk,jsw)+rsrtaua(jsw,jae)*paer(jl,jae,ik) &
301  & *rsrpiza(jsw,jae)*rsrasya(jsw,jae)
302  ENDDO
303  IF (zomga(jk,jsw) /= 0.0_jprb) THEN
304  zasya(jk,jsw)=zasya(jk,jsw)/zomga(jk,jsw)
305  ENDIF
306  IF (ztaua(jk,jsw) /= 0.0_jprb) THEN
307  zomga(jk,jsw)=zomga(jk,jsw)/ztaua(jk,jsw)
308  ENDIF
309 ! print 9003,JSW,JK,ZTAUA(JK,JSW),ZOMGA(JK,JSW),ZASYA(JK,JSW)
310 9003 format(1x,'Aerosols ',2i3,3f10.4)
311  ENDDO
312  ENDDO
313  ENDIF
314 
315  DO jk=1,klev+1
316  zbbcu(jk)=0.0_jprb
317  zbbcd(jk)=0.0_jprb
318  zbbfu(jk)=0.0_jprb
319  zbbfd(jk)=0.0_jprb
320 ! ZUVCU(JK)=0.0_JPRB
321 ! ZUVCD(JK)=0.0_JPRB
322 ! ZUVFU(JK)=0.0_JPRB
323 ! ZUVFD(JK)=0.0_JPRB
324 ! ZVSCU(JK)=0.0_JPRB
325 ! ZVSCD(JK)=0.0_JPRB
326 ! ZVSFU(JK)=0.0_JPRB
327 ! ZVSFD(JK)=0.0_JPRB
328 ! ZNICU(JK)=0.0_JPRB
329 ! ZNICD(JK)=0.0_JPRB
330 ! ZNIFU(JK)=0.0_JPRB
331 ! ZNIFD(JK)=0.0_JPRB
332  ENDDO
333 
334 ! print *,'just before calling STRM_SPCVRT for JL=',JL,' and ZRMU0=',ZRMU0
335 
336  CALL srtm_spcvrt_mcica &
337  &( klev , itmol , ksw , kcols , zoneminus,&
338  & zpavel , ztavel , zpz , ztz , ztbound , zalbd , zalbp,&
339  & zfrcl , ztauc , zasyc , zomgc , ztaua , zasya , zomga , zrmu0,&
340  & zcoldry , zwkl ,&
341  & ilaytrop, ilayswtch, ilaylow,&
342  & zco2mult, zcolch4 , zcolco2, zcolh2o , zcolmol , zcoln2o, zcolo2 , zcolo3,&
343  & zforfac , zforfrac , indfor , zselffac, zselffrac, indself,&
344  & zfac00 , zfac01 , zfac10 , zfac11 ,&
345  & jp , jt , jt1 ,&
346  & zbbfd , zbbfu , zbbcd , zbbcu )
347 
348 ! & ZBBFD , ZBBFU , ZUVFD , ZUVFU , ZVSFD , ZVSFU , ZNIFD , ZNIFU,&
349 ! & ZBBCD , ZBBCU , ZUVCD , ZUVCU , ZVSCD , ZVSCU , ZNICD , ZNICU &
350 ! & )
351 
352 ! print *,'SRTM_SRTM_224GP before potential scaling'
353 ! IF (IOVLP == 3) THEN
354 ! DO JK=1,KLEV+1
355 !! print 9004,JK,ZBBCU(JK),ZBBCD(JK),ZBBFU(JK),ZBBFD(JK)
356  9004 format(1x,'Clear-sky and total fluxes U & D ',i3,4f10.3)
357 ! PFSUC(JL,1,JK)=ZBBCU(JK)
358 ! PFSUC(JL,2,JK)=ZBBCD(JK)
359 ! PFSUX(JL,1,JK)=ZBBFU(JK)
360 ! PFSUX(JL,2,JK)=ZBBFD(JK)
361 ! ENDDO
362 ! ELSE
363 ! print *,'SRTM_SRTM_224GP after potential scaling'
364  DO jk=1,klev+1
365  pfsuc(jl,1,jk)=zadji0 * zbbcu(jk)
366  pfsuc(jl,2,jk)=zadji0 * zbbcd(jk)
367  pfsux(jl,1,jk)=zadji0 * ( (1.0_jprb-zclear)*zbbfu(jk)+zclear*zbbcu(jk) )
368  pfsux(jl,2,jk)=zadji0 * ( (1.0_jprb-zclear)*zbbfd(jk)+zclear*zbbcd(jk) )
369 !-- for testing only
370  pfsuc(jl,1,jk)=zadji0 * zbbcu(jk)
371  pfsuc(jl,2,jk)=zadji0 * zbbcd(jk)
372  pfsux(jl,1,jk)=zadji0 * zbbfu(jk)
373  pfsux(jl,2,jk)=zadji0 * zbbfd(jk)
374  ENDDO
375 ! ENDIF
376 
377 ! DO JK=1,KLEV+1
378 ! print 9005,JK,PFSUC(JL,1,JK),PFSUC(JL,2,JK),PFSUX(JL,1,JK),PFSUX(JL,2,JK)
379  9005 format(1x,'Clear-sky and total fluxes U & D ',i3,4f10.3)
380 ! ENDDO
381 
382  ELSE
383  DO jk=1,klev+1
384  pfsuc(jl,1,jk)=0.0_jprb
385  pfsuc(jl,2,jk)=0.0_jprb
386  pfsux(jl,1,jk)=0.0_jprb
387  pfsux(jl,2,jk)=0.0_jprb
388  ENDDO
389  ENDIF
390 ENDDO
391 
392 !PRINT *,'OUT OF SRTM_224GP_MCICA'
393 
394 !-----------------------------------------------------------------------
395 IF (lhook) CALL dr_hook('SRTM_SRTM_224GP_MCICA',1,zhook_handle)
396 END SUBROUTINE srtm_srtm_224gp_mcica
INTERFACE SUBROUTINE RRTM_ECRT_140GP pcco2
real(kind=jprb), dimension(14, 6) rsrpiza
Definition: yoesrtaer.F90:18
INTERFACE SUBROUTINE RRTM_ECRT_140GP pth
integer(kind=jpim), parameter jplay
Definition: parsrtm.F90:19
integer, save kidia
Definition: dimphy.F90:6
integer, save klon
Definition: dimphy.F90:3
subroutine srtm_spcvrt_mcica(KLEV, KMOL, KSW, KCOLS, PONEMINUS,PAVEL, PTAVEL, PZ, PTZ, PTBOUND, PALBD, PALBP,PFRCL, PTAUC, PASYC, POMGC, PTAUA, PASYA, POMGA, PRMU0,PCOLDRY, PWKL,KLAYTROP, KLAYSWTCH, KLAYLOW,PCO2MULT, PCOLCH4, PCOLCO2, PCOLH2O, PCOLMOL, PCOLN2O, PCOLO2, PCOLO3,PFORFAC, PFORFRAC, KINDFOR, PSELFFAC, PSELFFRAC, KINDSELF,PFAC00, PFAC01, PFAC10, PFAC11,KJP, KJT, KJT1,
integer, save klev
Definition: dimphy.F90:7
Definition: yoerdi.F90:1
integer(kind=jpim) naer
Definition: yoerad.F90:13
real(kind=jprb), dimension(14, 6) rsrtaua
Definition: yoesrtaer.F90:17
INTERFACE SUBROUTINE RRTM_ECRT_140GP pozn
integer, save kfdia
Definition: dimphy.F90:5
real(kind=jprb) rii0
Definition: yomphy3.F90:163
integer, parameter jprb
Definition: parkind1.F90:31
Definition: yoerad.F90:1
real(kind=jprb), dimension(14, 6) rsrasya
Definition: yoesrtaer.F90:19
real(kind=jprb) rch4
Definition: yoerdi.F90:16
!$Header!c c INCLUDE fxyprim h c c c Fonctions in line c c REAL fyprim REAL rj c c il faut la calculer avant d appeler ces fonctions c c c Fonctions a changer selon x(x) et y(y) choisis.c-----------------------------------------------------------------c c.....ici
real(kind=jprb) ri0
Definition: yomcst.F90:33
real(kind=jprb) rn2o
Definition: yoerdi.F90:17
logical lhook
Definition: yomhook.F90:12
INTERFACE SUBROUTINE RRTM_ECRT_140GP paph
subroutine dr_hook(CDNAME, KSWITCH, PKEY)
Definition: yomhook.F90:17
subroutine srtm_setcoef(KLEV, KNMOL, PAVEL, PTAVEL, PZ, PTZ, PTBOUND, PCOLDRY, PWKL, KLAYTROP, KLAYSWTCH, KLAYLOW, PCO2MULT, PCOLCH4, PCOLCO2, PCOLH2O, PCOLMOL, PCOLN2O, PCOLO2, PCOLO3, PFORFAC, PFORFRAC, KINDFOR, PSELFFAC, PSELFFRAC, KINDSELF, PFAC00, PFAC01, PFAC10, PFAC11, KJP, KJT, KJT1)
INTERFACE SUBROUTINE RRTM_ECRT_140GP pt
integer, parameter jpim
Definition: parkind1.F90:13
INTERFACE SUBROUTINE RRTM_ECRT_140GP pap
subroutine srtm_srtm_224gp_mcica(KIDIA, KFDIA, KLON, KLEV, KSW, KCOLS, KCLDLY, PAER, PALBD, PALBP, PAPH, PAP, PTS, PTH, PT, PQ, PCCO2, POZN, PRMU0, PFRCL, PTAUC, PASYC, POMGC, PFSUX, PFSUC)
INTERFACE SUBROUTINE RRTM_ECRT_140GP && paer
INTERFACE SUBROUTINE RRTM_ECRT_140GP && pts
Definition: yomcst.F90:1
INTERFACE SUBROUTINE RRTM_ECRT_140GP && pq