Ignore:
Timestamp:
Aug 17, 2006, 5:41:51 PM (18 years ago)
Author:
Laurent Fairhead
Message:

Inclusion des modifs de Y. Meurdesoif pour la version V3
LF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/branches/V3_test/libf/phylmd/yamada4.F

    r541 r704  
    55     s   ,zlev,zlay,u,v,teta,cd,q2,km,kn,kq,ustar
    66     s   ,iflag_pbl)
     7      use dimphy
    78      IMPLICIT NONE
    89c.......................................................................
    9 #include "dimensions.h"
    10 #include "dimphy.h"
     10cym#include "dimensions.h"
     11cym#include "dimphy.h"
    1112c.......................................................................
    1213c
     
    6465
    6566      integer nlay,nlev
    66       PARAMETER (nlay=klev)
    67       PARAMETER (nlev=klev+1)
     67cym      PARAMETER (nlay=klev)
     68cym      PARAMETER (nlev=klev+1)
    6869
    6970      logical first
     
    7172      save first,ipas
    7273      data first,ipas/.true.,0/
    73 
     74c$OMP THREADPRIVATE( first,ipas)
    7475
    7576      integer ig,k
     
    8283      real dtetadz(klon,klev+1)
    8384      real m2cstat,mcstat,kmcstat
    84       real l(klon,klev+1),l0(klon)
    85       save l0
    86 
     85      real l(klon,klev+1)
     86      real,allocatable,save :: l0(:)
     87c$OMP THREADPRIVATE(l0)     
    8788      real sq(klon),sqz(klon),zz(klon,klev+1)
    8889      integer iter
     
    9192      save ric,rifc,b1,kap
    9293      data ric,rifc,b1,kap/0.195,0.191,16.6,0.4/
    93 
     94c$OMP THREADPRIVATE(ric,rifc,b1,kap)
    9495      real frif,falpha,fsm
    9596      real fl,zzz,zl0,zq2,zn2
    9697
    97       real rino(klon,klev+1),smyam(klon,klev),styam(klon,klev)
    98      s  ,lyam(klon,klev),knyam(klon,klev)
    99      s  ,w2yam(klon,klev),t2yam(klon,klev)
    100       common/pbldiag/rino,smyam,styam,lyam,knyam,w2yam,t2yam
    101 
     98cym      real rino(klon,klev+1),smyam(klon,klev),styam(klon,klev)
     99cym     s  ,lyam(klon,klev),knyam(klon,klev)
     100cym     s  ,w2yam(klon,klev),t2yam(klon,klev)
     101      real,allocatable,save,dimension(:,:) :: rino,smyam,styam,lyam,
     102     s                                        knyam,w2yam,t2yam
     103cym      common/pbldiag/rino,smyam,styam,lyam,knyam,w2yam,t2yam
     104c$OMP THREADPRIVATE(rino,smyam,styam,lyam,knyam,w2yam,t2yam)
     105      logical,save :: firstcall=.true.
     106c$OMP THREADPRIVATE(firstcall)       
    102107      frif(ri)=0.6588*(ri+0.1776-sqrt(ri*ri-0.3221*ri+0.03156))
    103108      falpha(ri)=1.318*(0.2231-ri)/(0.2341-ri)
     
    106111     s     max(min(l0(ig)*kap*zlev(ig,k)/(kap*zlev(ig,k)+l0(ig))
    107112     s     ,0.5*sqrt(q2(ig,k))/sqrt(max(n2(ig,k),1.e-10))) ,1.)
     113
     114
     115      nlay=klev
     116      nlev=klev+1
     117     
     118      if (firstcall) then
     119        allocate(rino(klon,klev+1),smyam(klon,klev),styam(klon,klev))
     120        allocate(lyam(klon,klev),knyam(klon,klev))
     121        allocate(w2yam(klon,klev),t2yam(klon,klev))
     122        allocate(l0(klon))
     123        firstcall=.false.
     124      endif
     125
    108126
    109127      if (.not.(iflag_pbl.ge.6.and.iflag_pbl.le.9)) then
     
    378396
    379397c====================================================================
    380 c   Calcul des coefficients de mélange
     398c   Calcul des coefficients de mange
    381399c====================================================================
    382400      do k=2,klev
Note: See TracChangeset for help on using the changeset viewer.