/[lmdze]/trunk/Sources/phylmd/Orography/orodrag.f
ViewVC logotype

Diff of /trunk/Sources/phylmd/Orography/orodrag.f

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 177 by guez, Thu Jun 18 13:49:26 2015 UTC revision 178 by guez, Fri Mar 11 18:47:26 2016 UTC
# Line 4  Line 4 
4    
5        USE dimens_m        USE dimens_m
6        USE dimphy        USE dimphy
7          use gwstress_m, only: gwstress
8        USE suphec_m        USE suphec_m
9        USE yoegwd        USE yoegwd
10        use gwprofil_m, only: gwprofil        use gwprofil_m, only: gwprofil
11          use orosetup_m, only: orosetup
12        IMPLICIT NONE        IMPLICIT NONE
13    
14    
# Line 40  Line 42 
42  !     method.  !     method.
43  !     -------  !     -------
44    
 !     externals.  
 !     ----------  
       INTEGER ismin, ismax  
       EXTERNAL ismin, ismax  
   
45  !     reference.  !     reference.
46  !     ----------  !     ----------
47    
# Line 62  Line 59 
59  !              ---------  !              ---------
60    
61    
62        INTEGER nlon, nlev, klevm1        INTEGER nlon, nlev
63        INTEGER jl, ilevp1, jk, ji        INTEGER jl, ilevp1, jk, ji
64        REAL zdelp, ztemp, zforc, ztend        REAL zdelp, ztemp, zforc, ztend
65        REAL rover, zb, zc, zconb, zabsv        REAL rover, zb, zc, zconb, zabsv
# Line 86  Line 83 
83        REAL ztau(klon,klev+1), zstab(klon,klev+1), &        REAL ztau(klon,klev+1), zstab(klon,klev+1), &
84          zvph(klon,klev+1), zrho(klon,klev+1), zri(klon,klev+1), &          zvph(klon,klev+1), zrho(klon,klev+1), zri(klon,klev+1), &
85          zpsi(klon,klev+1), zzdep(klon,klev)          zpsi(klon,klev+1), zzdep(klon,klev)
86        REAL zdudt(klon), zdvdt(klon), zdtdt(klon), zdedt(klon), zvidis(klon), &        REAL zdudt(klon), zdvdt(klon), zvidis(klon), &
87          znu(klon), zd1(klon), zd2(klon), zdmod(klon)          znu(klon), zd1(klon), zd2(klon), zdmod(klon)
88        REAL ztmst, zrtmst        REAL ztmst
89        REAL, INTENT (IN) :: ptsphy        REAL, INTENT (IN) :: ptsphy
90    
91  !------------------------------------------------------------------  !------------------------------------------------------------------
# Line 99  Line 96 
96  !*         1.1   computational constants  !*         1.1   computational constants
97  !                -----------------------  !                -----------------------
98    
       klevm1 = klev - 1  
99        ztmst = ptsphy        ztmst = ptsphy
       zrtmst = 1./ztmst  
100  !     ------------------------------------------------------------------  !     ------------------------------------------------------------------
101    
102  !*         1.3   check whether row contains point for printing  !*         1.3   check whether row contains point for printing
# Line 115  Line 110 
110    
111    
112        CALL orosetup(nlon,ktest,ikcrit,ikcrith,icrit,ikenvh,iknu,iknu2,paphm1, &        CALL orosetup(nlon,ktest,ikcrit,ikcrith,icrit,ikenvh,iknu,iknu2,paphm1, &
113          papm1,pum1,pvm1,ptm1,pgeom1,pstd,zrho,zri,zstab,ztau,zvph,zpsi,zzdep, &          papm1,pum1,pvm1,ptm1,pgeom1,zrho,zri,zstab,ztau,zvph,zpsi,zzdep, &
114          pulow,pvlow,ptheta,pgamma,pmea,ppic,pval,znu,zd1,zd2,zdmod)          pulow,pvlow,ptheta,pgamma,pmea,ppic,pval,znu,zd1,zd2,zdmod)
115    
116    
# Line 127  Line 122 
122  !*                 supercritical forms.computes anisotropy coefficient  !*                 supercritical forms.computes anisotropy coefficient
123  !*                 as measure of orographic twodimensionality.  !*                 as measure of orographic twodimensionality.
124    
125        CALL gwstress(nlon,nlev,ktest,icrit,ikenvh,iknu,zrho,zstab,zvph,pstd, &        CALL gwstress(nlon,nlev,ktest,ikenvh,zrho,zstab,zvph,pstd, &
126          psig,pmea,ppic,ztau,pgeom1,zdmod)          psig,pmea,ppic,ztau,pgeom1,zdmod)
127    
128    
# Line 148  Line 143 
143          zvidis(jl) = 0.0          zvidis(jl) = 0.0
144          zdudt(jl) = 0.0          zdudt(jl) = 0.0
145          zdvdt(jl) = 0.0          zdvdt(jl) = 0.0
         zdtdt(jl) = 0.0  
146  510   CONTINUE  510   CONTINUE
147    
148        ilevp1 = klev + 1        ilevp1 = klev + 1
# Line 208  Line 202 
202              zust = pum1(ji,jk) + ztmst*zdudt(ji)              zust = pum1(ji,jk) + ztmst*zdudt(ji)
203              zvst = pvm1(ji,jk) + ztmst*zdvdt(ji)              zvst = pvm1(ji,jk) + ztmst*zdvdt(ji)
204              zdis = 0.5*(pum1(ji,jk)**2+pvm1(ji,jk)**2-zust**2-zvst**2)              zdis = 0.5*(pum1(ji,jk)**2+pvm1(ji,jk)**2-zust**2-zvst**2)
             zdedt(ji) = zdis/ztmst  
205              zvidis(ji) = zvidis(ji) + zdis*zdelp              zvidis(ji) = zvidis(ji) + zdis*zdelp
             zdtdt(ji) = zdedt(ji)/rcpd  
 !     pte(ji,jk)=zdtdt(ji)  
206    
207  !  ENCORE UN TRUC POUR EVITER LES EXPLOSIONS  !  ENCORE UN TRUC POUR EVITER LES EXPLOSIONS
208    

Legend:
Removed from v.177  
changed lines
  Added in v.178

  ViewVC Help
Powered by ViewVC 1.1.21