Ignore:
Timestamp:
Apr 15, 2005, 2:36:17 PM (19 years ago)
Author:
lmdzadmin
Message:

Rajout convection Kerry Emanuel pour traceurs- MAF+JYG

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/trunk/libf/phylmd/cv3_routines.F

    r597 r619  
    21642164     :                    ,ment,qent,uent,vent,nent,elij,traent,sig
    21652165     :                    ,tv,tvp
    2166      :                    ,iflag,precip,ft,fr,fu,fv,ftra
     2166     :                    ,iflag,precip,VPrecip,ft,fr,fu,fv,ftra
    21672167     :                    ,upwd,dnwd,dnwd0,ma,mike,tls,tps,qcondc,wd)
    21682168      implicit none
     
    21972197c outputs:
    21982198      real precip(nloc)
     2199      real VPrecip(nloc,nd+1)
    21992200      real ft(nloc,nd), fr(nloc,nd), fu(nloc,nd), fv(nloc,nd)
    22002201      real ftra(nloc,nd,ntra)
     
    22282229       precip(il)=0.0
    22292230       wd(il)=0.0     ! gust
     2231       VPrecip(il,nd+1)=0.
    22302232      enddo
    22312233
    22322234      do i=1,nd
    22332235       do il=1,ncum
     2236         VPrecip(il,i)=0.0
    22342237         ft(il,i)=0.0
    22352238         fr(il,i)=0.0
     
    22702273      enddo
    22712274
     2275C   ***  CALCULATE VERTICAL PROFILE OF  PRECIPITATIONs IN kg/m2/s  ===
     2276C
     2277c MAF rajout pour lessivage
     2278       do k=1,nl
     2279         do il=1,ncum
     2280          if (k.le.inb(il)) then
     2281            if (cvflag_grav) then
     2282             VPrecip(il,k) = wt(il,k)*sigd*water(il,k)/grav
     2283            else
     2284             VPrecip(il,k) = wt(il,k)*sigd*water(il,k)/10.
     2285            endif
     2286          endif
     2287         end do
     2288       end do
     2289C
    22722290c
    22732291c   ***  Calculate downdraft velocity scale    ***
     
    30253043      SUBROUTINE cv3_uncompress(nloc,len,ncum,nd,ntra,idcum
    30263044     :         ,iflag
    3027      :         ,precip,sig,w0
     3045     :         ,precip,VPrecip,sig,w0
    30283046     :         ,ft,fq,fu,fv,ftra
     3047     :         ,inb
    30293048     :         ,Ma,upwd,dnwd,dnwd0,qcondc,wd,cape
     3049     :         ,da,phi,mp
    30303050     :         ,iflag1
    3031      :         ,precip1,sig1,w01
     3051     :         ,precip1,VPrecip1,sig1,w01
    30323052     :         ,ft1,fq1,fu1,fv1,ftra1
     3053     :         ,inb1
    30333054     :         ,Ma1,upwd1,dnwd1,dnwd01,qcondc1,wd1,cape1
    3034      :                               )
     3055     :         ,da1,phi1,mp1)
    30353056      implicit none
    30363057
     
    30413062      integer idcum(nloc)
    30423063      integer iflag(nloc)
     3064      integer inb(nloc)
    30433065      real precip(nloc)
     3066      real VPrecip(nloc,nd+1)
    30443067      real sig(nloc,nd), w0(nloc,nd)
    30453068      real ft(nloc,nd), fq(nloc,nd), fu(nloc,nd), fv(nloc,nd)
     
    30493072      real qcondc(nloc,nd)
    30503073      real wd(nloc),cape(nloc)
     3074      real da(nloc,nd),phi(nloc,nd,nd),mp(nloc,nd)
    30513075
    30523076c outputs:
    30533077      integer iflag1(len)
     3078      integer inb1(len)
    30543079      real precip1(len)
     3080      real VPrecip1(len,nd+1)
    30553081      real sig1(len,nd), w01(len,nd)
    30563082      real ft1(len,nd), fq1(len,nd), fu1(len,nd), fv1(len,nd)
     
    30603086      real qcondc1(nloc,nd)
    30613087      real wd1(nloc),cape1(nloc)
     3088      real da1(nloc,nd),phi1(nloc,nd,nd),mp1(nloc,nd)
    30623089
    30633090c local variables:
     
    30683095         iflag1(idcum(i))=iflag(i)
    30693096         wd1(idcum(i))=wd(i)
     3097         inb1(idcum(i))=inb(i)
    30703098         cape1(idcum(i))=cape(i)
    30713099 2000   continue
     
    30733101        do 2020 k=1,nl
    30743102          do 2010 i=1,ncum
     3103            VPrecip1(idcum(i),k)=VPrecip(i,k)
    30753104            sig1(idcum(i),k)=sig(i,k)
    30763105            w01(idcum(i),k)=w0(i,k)
     
    30843113            dnwd01(idcum(i),k)=dnwd0(i,k)
    30853114            qcondc1(idcum(i),k)=qcondc(i,k)
     3115            da1(idcum(i),k)=da(i,k)
     3116            mp1(idcum(i),k)=mp(i,k)
    30863117 2010     continue
    30873118 2020   continue
     
    30993130c 2110    continue
    31003131c 2100   continue
     3132        do j=1,nd
     3133         do k=1,nd
     3134          do i=1,ncum
     3135            phi1(idcum(i),k,j)=phi(i,k,j)
     3136          end do
     3137         end do
     3138        end do
    31013139
    31023140        return
Note: See TracChangeset for help on using the changeset viewer.