9  &, cldfrac,taucld,coldry,wkl,wx &
 
   10  &, tauaerl,pavel,tavel,pz,tz,tbound,nlayers,semiss,ireflect)
 
   65 real_b :: cldfrac(
jplay)             
 
   67 real_b :: coldry(
jplay)
 
   75 real_b :: pavel(
jplay)
 
   76 real_b :: tavel(
jplay)
 
   87 real_b :: zc1j(0:
klev)               
 
   88 integer_m ::  ixindx(
jpinpx)         
 
  103 data amd   /  28.970_jprb    /
 
  104 data amw   /  18.0154_jprb   /
 
  105 data amco2 /  44.011_jprb    /
 
  106 data amo   /  47.9982_jprb   /
 
  107 data amch4 /  16.043_jprb    /
 
  108 data amn2o /  44.013_jprb    /
 
  109 data amc11 / 137.3686_jprb   /
 
  110 data amc12 / 120.9140_jprb   /
 
  111 data avgdro/ 6.02214e23_jprb /
 
  112 data gravit/ 9.80665e02_jprb /
 
  115 integer_m :: iatm, imol, ix, ixmax, j1, j2, jae, jb, jk, jl, 
l, jis
 
  116 integer_m :: nmol, nxmol
 
  119 real_b :: amm, zcldly, zclear, zcloud, zepsec
 
  174 semiss(1)  = zemis(iplon)
 
  175 semiss(2)  = zemis(iplon)
 
  176 semiss(3)  = zemis(iplon)
 
  177 semiss(4)  = zemis(iplon)
 
  178 semiss(5)  = zemis(iplon)
 
  179 semiss(6)  = zemiw(iplon)
 
  180 semiss(7)  = zemiw(iplon)
 
  181 semiss(8)  = zemiw(iplon)
 
  182 semiss(9)  = zemis(iplon)
 
  183 semiss(10) = zemis(iplon)
 
  184 semiss(11) = zemis(iplon)
 
  185 semiss(12) = zemis(iplon)
 
  186 semiss(13) = zemis(iplon)
 
  187 semiss(14) = zemis(iplon)
 
  188 semiss(15) = zemis(iplon)
 
  189 semiss(16) = zemis(iplon)
 
  213 pz(0) = 
paph(iplon,
klev+1)/100._jprb
 
  220   wkl(1,
l) = 
pq(iplon,
klev-
l+1)*amd/amw
 
  221   wkl(2,
l) = 
pcco2*amd/amco2
 
  223   wkl(4,
l) = 
rn2o*amd/amn2o
 
  224   wkl(6,
l) = 
rch4*amd/amch4
 
  225   amm = (1-wkl(1,
l))*amd + wkl(1,
l)*amw
 
  226   coldry(
l) = (pz(
l-1)-pz(
l))*1.e3_jprb*avgdro/(gravit*amm*(1+wkl(1,
l)))
 
  231 9001 
format(1
x,6e12.5)
 
  240 9002 
format(1
x,i3,6e12.5)
 
  250   tauaerl(
l, 1)=ztauaer(1)
 
  251   tauaerl(
l, 2)=ztauaer(1)
 
  258   tauaerl(
l, 3)=ztauaer(2)
 
  259   tauaerl(
l, 4)=ztauaer(2)
 
  260   tauaerl(
l, 5)=ztauaer(2)
 
  267   tauaerl(
l, 6)=ztauaer(3)
 
  268   tauaerl(
l, 8)=ztauaer(3)
 
  269   tauaerl(
l, 9)=ztauaer(3)
 
  276   tauaerl(
l, 7)=ztauaer(4)
 
  284   tauaerl(
l,10)=ztauaer(5)
 
  285   tauaerl(
l,11)=ztauaer(5)
 
  286   tauaerl(
l,12)=ztauaer(5)
 
  287   tauaerl(
l,13)=ztauaer(5)
 
  288   tauaerl(
l,14)=ztauaer(5)
 
  289   tauaerl(
l,15)=ztauaer(5)
 
  290   tauaerl(
l,16)=ztauaer(5)
 
  292 9003 
format(1
x,
'rrtm_ecrt ZTAUAER:',i3,5e13.6)  
 
  307     wkl(imol,
l) = coldry(
l) * wkl(imol,
l)
 
  312   IF (ixindx(ix)  /=  0) 
THEN 
  315       wx(ixindx(ix),
l) = coldry(
l) * wx(ix,
l) * 1.e-20_jprb
 
  331     IF (
pcldf(jl,jk) > zepsec) 
THEN 
  334        &*(_one_-max( zcldly , zcloud ))&
 
  335        &/(_one_-min( zcloud , _one_-zepsec ))
 
  337       zc1j(jk)= _one_ - zclear
 
  341        &*(_one_-max( zcldly , zcloud ))&
 
  342        &/(_one_-min( zcloud , _one_-zepsec ))
 
  344       zc1j(jk)= _one_ - zclear
 
  348 ELSEIF (
novlp == 2) 
THEN 
  351     IF (
pcldf(jl,jk) > zepsec) 
THEN 
  353       zcloud = max( zcldly , zcloud )
 
  357       zcloud = max( zcldly , zcloud )
 
  362 ELSEIF (
novlp == 3) 
THEN 
  365     IF (
pcldf(jl,jk) > zepsec) 
THEN 
  367       zclear = zclear * (_one_-zcldly)
 
  368       zcloud = _one_ - zclear
 
  372       zclear = zclear * (_one_-zcldly)
 
  373       zcloud = _one_ - zclear
 
  385 IF (
ptclear  >  _one_-zepsec) 
THEN 
  392       taucld(
l,jb) = _zero_
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP pcco2
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP pth
 
real(kind=jprb), dimension(6, 6) raer
 
c c $Id c c calculs statistiques distribution nuage ftion du regime dynamique c c Ce calcul doit etre fait a partir de valeurs mensuelles CALL nbregdyn DO kmaxm1 DO l
 
integer(kind=jpim), parameter jpinpx
 
integer(kind=jpim), parameter jpgpt
 
integer(kind=jpim), parameter jpband
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP pozn
 
subroutine rrtm_ecrt_140gp(K_IPLON, klon, klev, kcld, paer, paph, pap, pts, pth, pt, P_ZEMIS, P_ZEMIW, pq, pcco2, pozn, pcldf, ptaucld, ptclear, P_CLDFRAC, P_TAUCLD, PTAU_LW, P_COLDRY, P_WKL, P_WX, P_TAUAERL, PAVEL, P_TAVEL, PZ, P_TZ, P_TBOUND, K_NLAYERS, P_SEMISS, K_IREFLECT)
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP ptclear
 
!$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
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP pcldf
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP paph
 
integer(kind=jpim), parameter jplay
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP kcld
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP pt
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP ptaucld
 
integer(kind=jpim), parameter jpg
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP pap
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP && paer
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP && pts
 
INTERFACE SUBROUTINE RRTM_ECRT_140GP && pq
 
integer(kind=jpim), parameter jpxsec