/[lmdze]/trunk/libf/dyn3d/advect.f90
ViewVC logotype

Diff of /trunk/libf/dyn3d/advect.f90

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

revision 46 by guez, Mon May 16 14:52:30 2011 UTC revision 47 by guez, Fri Jul 1 15:00:48 2011 UTC
# Line 4  module advect_m Line 4  module advect_m
4    
5  contains  contains
6    
7    SUBROUTINE advect(ucov, vcov, teta, w, massebx, masseby, du, dv, dteta, &    SUBROUTINE advect(ucov, vcov, teta, w, massebx, masseby, du, dv, dteta)
        conser)  
8    
9      ! From dyn3d/advect.F, version 1.1.1.1 2004/05/19 12:53:06      ! From dyn3d/advect.F, version 1.1.1.1 2004/05/19 12:53:06
10      ! Authors: P. Le Van , F. Hourdin      ! Authors: P. Le Van , F. Hourdin
# Line 16  contains Line 15  contains
15      USE paramet_m, ONLY : iip1, iip2, ip1jm, ip1jmp1      USE paramet_m, ONLY : iip1, iip2, ip1jm, ip1jmp1
16      USE comconst, ONLY : daysec      USE comconst, ONLY : daysec
17      USE comgeom, ONLY : unsaire      USE comgeom, ONLY : unsaire
     USE ener, ONLY : gtot  
18    
19      ! Arguments:      ! Arguments:
20      REAL, intent(in):: vcov(ip1jm, llm), ucov(ip1jmp1, llm)      REAL, intent(in):: vcov(ip1jm, llm), ucov(ip1jmp1, llm)
# Line 24  contains Line 22  contains
22      REAL, intent(in):: massebx(ip1jmp1, llm), masseby(ip1jm, llm)      REAL, intent(in):: massebx(ip1jmp1, llm), masseby(ip1jm, llm)
23      real, INTENT (IN):: w(ip1jmp1, llm)      real, INTENT (IN):: w(ip1jmp1, llm)
24      REAL, intent(inout):: dv(ip1jm, llm), du(ip1jmp1, llm), dteta(ip1jmp1, llm)      REAL, intent(inout):: dv(ip1jm, llm), du(ip1jmp1, llm), dteta(ip1jmp1, llm)
     LOGICAL, INTENT (IN):: conser  
25    
26      ! Local:      ! Local:
27      REAL uav(ip1jmp1, llm), vav(ip1jm, llm), wsur2(ip1jmp1)      REAL uav(ip1jmp1, llm), vav(ip1jm, llm), wsur2(ip1jmp1)
28      REAL unsaire2(ip1jmp1)      REAL ww, uu, vv
     REAL deuxjour, ww, uu, vv  
29      INTEGER ij, l      INTEGER ij, l
30    
31      !-----------------------------------------------------------------------      !-----------------------------------------------------------------------
32    
33      ! 2. Calculs preliminaires :      ! 2. Calculs preliminaires :
34    
     IF (conser) THEN  
        deuxjour = 2. * daysec  
        unsaire2 = unsaire**2  
     END IF  
   
35      ! Calcul de \bar{u}^{yy}      ! Calcul de \bar{u}^{yy}
36      DO l = 1, llm      DO l = 1, llm
37         DO ij = iip2, ip1jmp1         DO ij = iip2, ip1jmp1
# Line 108  contains Line 99  contains
99            dteta(ij, l) = dteta(ij, l) - ww            dteta(ij, l) = dteta(ij, l) - ww
100            dteta(ij, l + 1) = dteta(ij, l + 1) + ww            dteta(ij, l + 1) = dteta(ij, l + 1) + ww
101         end DO         end DO
   
        IF (conser) THEN  
           gtot(l) = deuxjour * sqrt(sum(wsur2**2 * unsaire2) / ip1jmp1)  
        END IF  
102      END DO      END DO
103    
104    END SUBROUTINE advect    END SUBROUTINE advect

Legend:
Removed from v.46  
changed lines
  Added in v.47

  ViewVC Help
Powered by ViewVC 1.1.21