4   &, psct , pcardi, pcldsw, ppmb , ppsol, prmu0, ptave, pwv &
 
    5   &, paki , pcld  , pclear, pdsig, pfact, prmu , psec , pud &
 
   88 real_b :: paki(
klon,2,nsw)&
 
  107 integer_m :: ja, jk, jkl, jklp1, jkp1, jl, jnu
 
  110 real_b :: zdsco2, zdsh2o, zfppw, zrth, zrtu, zwh2o, zalpha1
 
  128   pud(jl,1,
klev+1)=_zero_
 
  129   pud(jl,2,
klev+1)=_zero_
 
  130   pud(jl,3,
klev+1)=_zero_
 
  131   pud(jl,4,
klev+1)=_zero_
 
  132   pud(jl,5,
klev+1)=_zero_
 
  133   pfact(jl)= prmu0(jl) * psct
 
  140   IF (prmu(jl) .LE. 1e-3) prmu(jl) = 1e-3
 
  141   psec(jl)=_one_/prmu(jl)
 
  142   zc1j(jl,
klev+1)=_zero_
 
  152   zo175(jl) = ppsol(jl)** 
rpdu1 
  153   zo190(jl) = ppsol(jl)** 
rpdh1 
  154   zsigo(jl) = ppsol(jl)
 
  166     zwh2o = max(pwv(jl,jkl) , 
repscq )
 
  167     zsign(jl) = 100._jprb * ppmb(jl,jkp1)
 
  168     pdsig(jl,jk) = (zsigo(jl) - zsign(jl))/ppsol(jl)
 
  169     zn175(jl) = zsign(jl) ** 
rpdu1 
  170     zn190(jl) = zsign(jl) ** 
rpdh1 
  171     zdsco2 = zo175(jl) - zn175(jl)
 
  172     zdsh2o = zo190(jl) - zn190(jl)
 
  173     pud(jl,1,jk) = 
rpnh * zdsh2o * zwh2o  * zrth
 
  174     pud(jl,2,jk) = 
rpnu * zdsco2 * pcardi * zrtu
 
  175     zfppw=1.6078_jprb*zwh2o/(_one_+0.608_jprb*zwh2o)
 
  176     pud(jl,4,jk)=pud(jl,1,jk)*zfppw
 
  177     pud(jl,5,jk)=pud(jl,1,jk)*(_one_-zfppw)
 
  178     zud(jl,1) = zud(jl,1) + pud(jl,1,jk)
 
  179     zud(jl,2) = zud(jl,2) + pud(jl,2,jk)
 
  180     zsigo(jl) = zsign(jl)
 
  181     zo175(jl) = zn175(jl)
 
  182     zo190(jl) = zn190(jl)
 
  185       zclear(jl)=zclear(jl)&
 
  186        &*(_one_-max(pcldsw(jl,jkl),zcloud(jl)))&
 
  187        &/(_one_-min(zcloud(jl),_one_-
repsec))
 
  188       zc1j(jl,jkl)= _one_ - zclear(jl)
 
  189       zcloud(jl) = pcldsw(jl,jkl)
 
  190     ELSEIF (
novlp == 2) 
THEN 
  191       zcloud(jl) = max(pcldsw(jl,jkl),zcloud(jl))
 
  192       zc1j(jl,jkl) = zcloud(jl)
 
  193     ELSEIF (
novlp == 3) 
THEN 
  194       zclear(jl) = zclear(jl)*(_one_-pcldsw(jl,jkl))
 
  195       zcloud(jl) = _one_ - zclear(jl)
 
  196       zc1j(jl,jkl) = zcloud(jl)
 
  197     ELSEIF (
novlp == 4) 
THEN 
  200       zclear(jl)=zclear(jl)*( &
 
  201         & zalpha1*(_one_-max(pcldsw(jl,jkl),zcloud(jl))) &
 
  202         &        /(_one_-min(zcloud(jl),_one_-
repsec)) &
 
  203         & +(_one_-zalpha1)*(_one_-pcldsw(jl,jkl)) )
 
  204       zc1j(jl,jkl) = _one_ - zclear(jl) 
 
  205       zcloud(jl) = pcldsw(jl,jkl)
 
  210   pclear(jl)=_one_-zc1j(jl,1)
 
  214     IF (pclear(jl) < _one_) 
THEN 
  215       pcld(jl,jk)=pcldsw(jl,jk)/(_one_-pclear(jl))
 
  229     zud(jl,ja) = zud(jl,ja) * psec(jl)
 
  235 ELSE IF (nsw.EQ.6) 
THEN 
  249       paki(jl,ja,jnu) = -log( zr(jl,ja) ) / zud(jl,ja)
 
real(kind=jprb), dimension(:), allocatable ra1ovlp
 
subroutine swtt1(KIDIA, KFDIA, KLON, KNU, KABS, KIND, PU, PTR)
 
subroutine swu(KIDIA, KFDIA, KLON, KLEV, PSCT, PCARDI, PCLDSW, PPMB, PPSOL, PRMU0, PTAVE, PWV, PAKI, PCLD, PCLEAR, PDSIG, PFACT, PRMU, PSEC, PUD)