5 & (
klev , kmol , ksw , poneminus, &
6 & pavel , ptavel , pz , ptz , ptbound , palbd , palbp, &
7 & pfrcl , ptauc , pasyc , pomgc , ptaua , pasya , pomga , prmu0, &
9 & klaytrop, klayswtch, klaylow ,&
10 & pco2mult, pcolch4 , pcolco2 , pcolh2o , pcolmol , pcoln2o , pcolo2 , pcolo3 ,&
11 & pforfac , pforfrac , kindfor , pselffac, pselffrac, kindself ,&
12 & pfac00 , pfac01 , pfac10 , pfac11 ,&
15 & pbbfd, pbbfu, puvfd, puvfu, pvsfd, pvsfu , pnifd , pnifu ,&
16 & pbbcd, pbbcu, puvcd, puvcu, pvscd, pvscu , pnicd , pnicu &
80 INTEGER(KIND=JPIM),
INTENT(IN) :: KSW
81 INTEGER(KIND=JPIM) :: KLEV
82 INTEGER(KIND=JPIM) :: KMOL
83 REAL(KIND=JPRB) :: PONEMINUS
84 REAL(KIND=JPRB) :: PAVEL(
jplay)
85 REAL(KIND=JPRB) :: PTAVEL(
jplay)
86 REAL(KIND=JPRB) :: PZ(0:
jplay)
87 REAL(KIND=JPRB) :: PTZ(0:
jplay)
88 REAL(KIND=JPRB) :: PTBOUND
89 REAL(KIND=JPRB) ,
INTENT(IN) :: PALBD(ksw)
90 REAL(KIND=JPRB) ,
INTENT(IN) :: PALBP(ksw)
91 REAL(KIND=JPRB) ,
INTENT(IN) :: PFRCL(
jplay)
92 REAL(KIND=JPRB) ,
INTENT(IN) :: PTAUC(
jplay,ksw)
93 REAL(KIND=JPRB) ,
INTENT(IN) :: PASYC(
jplay,ksw)
94 REAL(KIND=JPRB) ,
INTENT(IN) :: POMGC(
jplay,ksw)
95 REAL(KIND=JPRB) ,
INTENT(IN) :: PTAUA(
jplay,ksw)
96 REAL(KIND=JPRB) ,
INTENT(IN) :: PASYA(
jplay,ksw)
97 REAL(KIND=JPRB) ,
INTENT(IN) :: POMGA(
jplay,ksw)
98 REAL(KIND=JPRB) :: PRMU0
99 REAL(KIND=JPRB) :: PCOLDRY(
jplay)
100 REAL(KIND=JPRB) :: PWKL(35,
jplay)
101 INTEGER(KIND=JPIM) :: KLAYTROP
102 INTEGER(KIND=JPIM) :: KLAYSWTCH
103 INTEGER(KIND=JPIM) :: KLAYLOW
104 REAL(KIND=JPRB) :: PCO2MULT(
jplay)
105 REAL(KIND=JPRB) :: PCOLCH4(
jplay)
106 REAL(KIND=JPRB) :: PCOLCO2(
jplay)
107 REAL(KIND=JPRB) :: PCOLH2O(
jplay)
108 REAL(KIND=JPRB) :: PCOLMOL(
jplay)
109 REAL(KIND=JPRB) :: PCOLN2O(
jplay)
110 REAL(KIND=JPRB) :: PCOLO2(
jplay)
111 REAL(KIND=JPRB) :: PCOLO3(
jplay)
112 REAL(KIND=JPRB) :: PFORFAC(
jplay)
113 REAL(KIND=JPRB) :: PFORFRAC(
jplay)
114 INTEGER(KIND=JPIM) :: KINDFOR(
jplay)
115 REAL(KIND=JPRB) :: PSELFFAC(
jplay)
116 REAL(KIND=JPRB) :: PSELFFRAC(
jplay)
117 INTEGER(KIND=JPIM) :: KINDSELF(
jplay)
118 REAL(KIND=JPRB) :: PFAC00(
jplay)
119 REAL(KIND=JPRB) :: PFAC01(
jplay)
120 REAL(KIND=JPRB) :: PFAC10(
jplay)
121 REAL(KIND=JPRB) :: PFAC11(
jplay)
122 INTEGER(KIND=JPIM) :: KJP(
jplay)
123 INTEGER(KIND=JPIM) :: KJT(
jplay)
124 INTEGER(KIND=JPIM) :: KJT1(
jplay)
125 REAL(KIND=JPRB) ,
INTENT(INOUT) :: PBBFD(
jplay+1)
126 REAL(KIND=JPRB) ,
INTENT(INOUT) :: PBBFU(
jplay+1)
127 REAL(KIND=JPRB) :: PUVFD(
jplay+1)
128 REAL(KIND=JPRB) :: PUVFU(
jplay+1)
129 REAL(KIND=JPRB) :: PVSFD(
jplay+1)
130 REAL(KIND=JPRB) :: PVSFU(
jplay+1)
131 REAL(KIND=JPRB) :: PNIFD(
jplay+1)
132 REAL(KIND=JPRB) :: PNIFU(
jplay+1)
133 REAL(KIND=JPRB) ,
INTENT(INOUT) :: PBBCD(
jplay+1)
134 REAL(KIND=JPRB) ,
INTENT(INOUT) :: PBBCU(
jplay+1)
135 REAL(KIND=JPRB) :: PUVCD(
jplay+1)
136 REAL(KIND=JPRB) :: PUVCU(
jplay+1)
137 REAL(KIND=JPRB) :: PVSCD(
jplay+1)
138 REAL(KIND=JPRB) :: PVSCU(
jplay+1)
139 REAL(KIND=JPRB) :: PNICD(
jplay+1)
140 REAL(KIND=JPRB) :: PNICU(
jplay+1)
145 LOGICAL :: LLRTCHK(
jplay)
150 & , ZGCC(JPLAY) , ZGCO(JPLAY) &
151 & , ZOMCC(JPLAY) , ZOMCO(JPLAY) &
152 & , ZRDND(JPLAY+1), ZRDNDC(JPLAY+1)&
153 & , ZREF(JPLAY+1) , ZREFC(JPLAY+1) , ZREFO(JPLAY+1) &
154 & , ZREFD(JPLAY+1), ZREFDC(JPLAY+1), ZREFDO(JPLAY+1) &
155 & , ZRUP(JPLAY+1) , ZRUPD(JPLAY+1) &
156 & , ZRUPC(JPLAY+1), ZRUPDC(JPLAY+1)&
157 & , ZTAUC(JPLAY) , ZTAUO(JPLAY) &
159 & , ZTRA(JPLAY+1) , ZTRAC(JPLAY+1) , ZTRAO(JPLAY+1) &
160 & , ZTRAD(JPLAY+1), ZTRADC(JPLAY+1), ZTRADO(JPLAY+1)
162 & ZDBTC(JPLAY+1), ZTDBTC(JPLAY+1), ZINCFLX(JPGPT) &
163 & , ZINCF14(14) , ZINCTOT
165 INTEGER(KIND=JPIM) :: IB1, IB2, IBM, IGT, IKL, IW, JB, JG, JK, I_KMODTS
167 REAL(KIND=JPRB) :: ZDBTMC, ZDBTMO, ZF, ZINCFLUX, ZWF
171 REAL(KIND=JPRB) :: ZTAUG(
jplay,16), ZTAUR(
jplay,16), ZSFLXZEN(16)
175 & ZCD(JPLAY+1,JPGPT), ZCU(JPLAY+1,JPGPT) &
176 & , ZFD(JPLAY+1,JPGPT), ZFU(JPLAY+1,JPGPT)
177 REAL(KIND=JPRB) :: ZHOOK_HANDLE
180 #include "srtm_taumol16.intfb.h"
181 #include "srtm_taumol17.intfb.h"
182 #include "srtm_taumol18.intfb.h"
183 #include "srtm_taumol19.intfb.h"
184 #include "srtm_taumol20.intfb.h"
185 #include "srtm_taumol21.intfb.h"
186 #include "srtm_taumol22.intfb.h"
187 #include "srtm_taumol23.intfb.h"
188 #include "srtm_taumol24.intfb.h"
189 #include "srtm_taumol25.intfb.h"
190 #include "srtm_taumol26.intfb.h"
191 #include "srtm_taumol27.intfb.h"
192 #include "srtm_taumol28.intfb.h"
193 #include "srtm_taumol29.intfb.h"
194 #include "srtm_reftra.intfb.h"
195 #include "srtm_vrtqdr.intfb.h"
215 zincf14(ibm)=0.0_jprb
225 & pfac00 , pfac01 , pfac10 , pfac11 ,&
226 & kjp , kjt , kjt1 , poneminus,&
227 & pcolh2o , pcolch4 , pcolmol ,&
228 & klaytrop, pselffac , pselffrac, kindself, pforfac , pforfrac, kindfor ,&
229 & zsflxzen, ztaug , ztaur &
233 ELSEIF (jb == 17)
THEN
236 & pfac00 , pfac01 , pfac10 , pfac11 ,&
237 & kjp , kjt , kjt1 , poneminus ,&
238 & pcolh2o , pcolco2 , pcolmol ,&
239 & klaytrop, pselffac, pselffrac, kindself , pforfac, pforfrac, kindfor ,&
240 & zsflxzen, ztaug , ztaur &
244 ELSEIF (jb == 18)
THEN
247 & pfac00 , pfac01 , pfac10 , pfac11 ,&
248 & kjp , kjt , kjt1 , poneminus ,&
249 & pcolh2o , pcolch4 , pcolmol ,&
250 & klaytrop, pselffac, pselffrac, kindself , pforfac, pforfrac, kindfor ,&
251 & zsflxzen, ztaug , ztaur &
255 ELSEIF (jb == 19)
THEN
258 & pfac00 , pfac01 , pfac10 , pfac11 ,&
259 & kjp , kjt , kjt1 , poneminus ,&
260 & pcolh2o , pcolco2 , pcolmol ,&
261 & klaytrop, pselffac, pselffrac, kindself , pforfac, pforfrac, kindfor ,&
262 & zsflxzen, ztaug , ztaur &
266 ELSEIF (jb == 20)
THEN
269 & pfac00 , pfac01 , pfac10 , pfac11 ,&
270 & kjp , kjt , kjt1 , poneminus ,&
271 & pcolh2o , pcolch4 , pcolmol ,&
272 & klaytrop, pselffac, pselffrac, kindself , pforfac, pforfrac, kindfor ,&
273 & zsflxzen, ztaug , ztaur &
277 ELSEIF (jb == 21)
THEN
280 & pfac00 , pfac01 , pfac10 , pfac11 ,&
281 & kjp , kjt , kjt1 , poneminus ,&
282 & pcolh2o , pcolco2 , pcolmol ,&
283 & klaytrop, pselffac, pselffrac, kindself , pforfac, pforfrac, kindfor ,&
284 & zsflxzen, ztaug , ztaur &
288 ELSEIF (jb == 22)
THEN
291 & pfac00 , pfac01 , pfac10 , pfac11 ,&
292 & kjp , kjt , kjt1 , poneminus ,&
293 & pcolh2o , pcolmol , pcolo2 ,&
294 & klaytrop, pselffac, pselffrac, kindself , pforfac, pforfrac, kindfor ,&
295 & zsflxzen, ztaug , ztaur &
299 ELSEIF (jb == 23)
THEN
302 & pfac00 , pfac01 , pfac10 , pfac11 ,&
303 & kjp , kjt , kjt1 , poneminus ,&
304 & pcolh2o , pcolmol ,&
305 & klaytrop, pselffac, pselffrac, kindself , pforfac, pforfrac, kindfor ,&
306 & zsflxzen, ztaug , ztaur &
310 ELSEIF (jb == 24)
THEN
313 & pfac00 , pfac01 , pfac10 , pfac11 ,&
314 & kjp , kjt , kjt1 , poneminus ,&
315 & pcolh2o , pcolmol , pcolo2 , pcolo3 ,&
316 & klaytrop, pselffac, pselffrac, kindself , pforfac, pforfrac, kindfor ,&
317 & zsflxzen, ztaug , ztaur &
321 ELSEIF (jb == 25)
THEN
325 & pfac00 , pfac01 , pfac10 , pfac11 ,&
326 & kjp , kjt , kjt1 , poneminus ,&
327 & pcolh2o , pcolmol , pcolo3 ,&
329 & zsflxzen, ztaug , ztaur &
333 ELSEIF (jb == 26)
THEN
337 & pfac00 , pfac01 , pfac10 , pfac11 ,&
338 & kjp , kjt , kjt1 , poneminus ,&
339 & pcolh2o , pcolco2 , pcolmol ,&
340 & klaytrop, pselffac, pselffrac, kindself , pforfac, pforfrac, kindfor ,&
341 & zsflxzen, ztaug , ztaur &
345 ELSEIF (jb == 27)
THEN
349 & pfac00 , pfac01 , pfac10 , pfac11 ,&
350 & kjp , kjt , kjt1 , poneminus ,&
351 & pcolmol , pcolo3 ,&
353 & zsflxzen, ztaug , ztaur &
357 ELSEIF (jb == 28)
THEN
361 & pfac00 , pfac01 , pfac10 , pfac11 ,&
362 & kjp , kjt , kjt1 , poneminus ,&
363 & pcolmol , pcolo2 , pcolo3 ,&
365 & zsflxzen, ztaug , ztaur &
369 ELSEIF (jb == 29)
THEN
372 & pfac00 , pfac01 , pfac10 , pfac11 ,&
373 & kjp , kjt , kjt1 , poneminus ,&
374 & pcolh2o , pcolco2 , pcolmol ,&
375 & klaytrop , pselffac, pselffrac, kindself , pforfac, pforfrac, kindfor ,&
376 & zsflxzen , ztaug , ztaur &
385 9010
format(1
x,
'SolFlx ',16f8.4)
389 9011
format(1
x,
'TauGas ',i3,16e9.2)
394 9012
format(1
x,
'TauRay ',i3,16e9.2)
399 9013
format(1
x,
'Cloud optprop ',i3,f8.4,f8.3,2f8.5)
410 zincflx(iw) =zsflxzen(jg)*prmu0
411 zincflux =zincflux+zsflxzen(jg)*prmu0
412 zinctot =zinctot+zsflxzen(jg)
413 zincf14(ibm)=zincf14(ibm)+zsflxzen(jg)
443 zdbtc(klev+1) =0.0_jprb
444 ztrac(klev+1) =0.0_jprb
445 ztradc(klev+1)=0.0_jprb
446 zrefc(klev+1) =palbp(ibm)
447 zrefdc(klev+1)=palbd(ibm)
448 zrupc(klev+1) =palbp(ibm)
449 zrupdc(klev+1)=palbd(ibm)
455 zdbt(klev+1) =0.0_jprb
456 ztra(klev+1) =0.0_jprb
457 ztrad(klev+1)=0.0_jprb
458 zref(klev+1) =palbp(ibm)
459 zrefd(klev+1)=palbd(ibm)
460 zrup(klev+1) =palbp(ibm)
461 zrupd(klev+1)=palbd(ibm)
476 9000
format(1
x,
'Cloud quantities ',3i4,3e12.5)
491 ztauc(jk) = ztaur(ikl,jg) + ztaug(ikl,jg) + ptaua(ikl,ibm)
492 zomcc(jk) = ztaur(ikl,jg)*1.0_jprb + ptaua(ikl,ibm)*pomga(ikl,ibm)
493 zgcc(jk) = pasya(ikl,ibm)*pomga(ikl,ibm)*ptaua(ikl,ibm) / zomcc(jk)
494 zomcc(jk) = zomcc(jk) / ztauc(jk)
497 ztauo(jk) = ztaur(ikl,jg) + ztaug(ikl,jg) + ptaua(ikl,ibm) + ptauc(ikl,ibm)
498 zomco(jk) = ptaua(ikl,ibm)*pomga(ikl,ibm) + ptauc(ikl,ibm)*pomgc(ikl,ibm) &
499 & + ztaur(ikl,jg)*1.0_jprb
500 zgco(jk) = (ptauc(ikl,ibm)*pomgc(ikl,ibm)*pasyc(ikl,ibm) &
501 & + ptaua(ikl,ibm)*pomga(ikl,ibm)*pasya(ikl,ibm)) &
503 zomco(jk) = zomco(jk) / ztauo(jk)
507 9001
format(1
x,
'clear :',2i3,l4,7(1
x,e13.6))
510 9002
format(1
x,
'total0:',2i3,l4,7(1
x,e13.6))
519 ztauc(jk)=(1._jprb-zwf)*ztauc(jk)
520 zomcc(jk)=(zomcc(jk)-zwf)/(1.0_jprb-zwf)
521 zgcc(jk)=(zgcc(jk)-zf)/(1.0_jprb-zf)
525 & llrtchk, zgcc , prmu0, ztauc , zomcc ,&
526 & zrefc , zrefdc, ztrac, ztradc )
535 ztauo(jk)=(1._jprb-zwf)*ztauo(jk)
536 zomco(jk)=(zomco(jk)-zwf)/(1._jprb-zwf)
537 zgco(jk)=(zgco(jk)-zf)/(1._jprb-zf)
538 llrtchk(jk)=(pfrcl(ikl) >
repclc)
543 9003
format(1
x,
'totalD:',i3,l4,7(1
x,e13.6))
550 & llrtchk, zgco , prmu0, ztauo , zomco ,&
551 & zrefo , zrefdo, ztrao, ztrado )
559 zclear = 1.0_jprb - pfrcl(ikl)
562 zref(jk) = zclear*zrefc(jk) + zcloud*zrefo(jk)
563 zrefd(jk)= zclear*zrefdc(jk)+ zcloud*zrefdo(jk)
564 ztra(jk) = zclear*ztrac(jk) + zcloud*ztrao(jk)
565 ztrad(jk)= zclear*ztradc(jk)+ zcloud*ztrado(jk)
569 zdbtmc = exp(-ztauc(jk)/prmu0)
570 zdbtmo = exp(-ztauo(jk)/prmu0)
571 zdbt(jk) = zclear*zdbtmc+zcloud*zdbtmo
572 ztdbt(jk+1)= zdbt(jk)*ztdbt(jk)
576 ztdbtc(jk+1)=zdbtc(jk)*ztdbtc(jk)
580 9199
format(1
x,
'Comb total:',i3,6e13.6)
581 9200
format(1
x,
'Comb clear:',i3,6e13.6)
591 & zrefc, zrefdc, ztrac , ztradc ,&
592 & zdbtc, zrdndc, zrupc , zrupdc, ztdbtc ,&
599 9201
format(1
x,
'clear-sky contrib to fluxes',i3,2f12.4)
608 & zref , zrefd , ztra , ztrad ,&
609 & zdbt , zrdnd , zrup , zrupd , ztdbt ,&
616 9202
format(1
x,
'cloudy sky contrib to fluxes',i3,2f12.4)
623 pbbfu(jk) = pbbfu(jk) + zincflx(iw)*zfu(jk,iw)
624 pbbfd(jk) = pbbfd(jk) + zincflx(iw)*zfd(jk,iw)
625 pbbcu(jk) = pbbcu(jk) + zincflx(iw)*zcu(jk,iw)
626 pbbcd(jk) = pbbcd(jk) + zincflx(iw)*zcd(jk,iw)
653 9206
format(1
x,
'fluxes up to:',3i3,i4,6e13.6)
668 9301
format(1
x,
'Incident Spectral Flux: ',i3,2e15.8,f12.8)
subroutine srtm_taumol26(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLCO2, P_COLMOL, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
integer(kind=jpim), parameter jpb2
subroutine srtm_reftra(KLEV, KMODTS, LDRTCHK, PGG, PRMUZ, PTAU, PW, PREF, PREFD, PTRA, PTRAD)
subroutine srtm_taumol23(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLMOL, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
subroutine srtm_taumol19(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLCO2, P_COLMOL, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
integer(kind=jpim), parameter jplay
subroutine srtm_taumol25(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLMOL, P_COLO3, K_LAYTROP, P_SFLUXZEN, P_TAUG, P_TAUR)
subroutine srtm_taumol18(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLCH4, P_COLMOL, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
subroutine srtm_taumol24(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLMOL, P_COLO2, P_COLO3, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
subroutine srtm_taumol17(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLCO2, P_COLMOL, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
subroutine srtm_spcvrt(KLEV, KMOL, KSW, 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,
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL false
subroutine srtm_taumol22(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLMOL, P_COLO2, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
subroutine srtm_taumol29(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLCO2, P_COLMOL, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
integer(kind=jpim), parameter jpgpt
subroutine srtm_taumol27(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLMOL, P_COLO3, K_LAYTROP, P_SFLUXZEN, P_TAUG, P_TAUR)
!$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
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL ulevSTD CALL &zphi philevSTD CALL &zx_rh rhlevSTD!DO klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon du jour ou toutes les read_climoz CALL true
subroutine srtm_taumol21(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLCO2, P_COLMOL, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
subroutine srtm_taumol16(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLCH4, P_COLMOL, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
subroutine dr_hook(CDNAME, KSWITCH, PKEY)
subroutine srtm_vrtqdr(KLEV, KW, PREF, PREFD, PTRA, PTRAD, PDBT, PRDND, PRUP, PRUPD, PTDBT, PFD, PFU)
subroutine srtm_taumol28(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLMOL, P_COLO2, P_COLO3, K_LAYTROP, P_SFLUXZEN, P_TAUG, P_TAUR)
subroutine srtm_taumol20(KLEV, P_FAC00, P_FAC01, P_FAC10, P_FAC11, K_JP, K_JT, K_JT1, P_ONEMINUS, P_COLH2O, P_COLCH4, P_COLMOL, K_LAYTROP, P_SELFFAC, P_SELFFRAC, K_INDSELF, P_FORFAC, P_FORFRAC, K_INDFOR, P_SFLUXZEN, P_TAUG, P_TAUR)
integer(kind=jpim), dimension(14) ngc
integer(kind=jpim), parameter jpb1