/[lmdze]/trunk/Sources/phylmd/transp_lay.f
ViewVC logotype

Diff of /trunk/Sources/phylmd/transp_lay.f

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

trunk/libf/phylmd/transp_lay.f revision 3 by guez, Wed Feb 27 13:16:39 2008 UTC trunk/phylmd/transp_lay.f revision 82 by guez, Wed Mar 5 14:57:53 2014 UTC
# Line 1  Line 1 
1        SUBROUTINE transp_lay (paprs,tsol,  SUBROUTINE transp_lay(paprs, tsol, t, q, u, v, geom, vtran_e, vtran_q, &
2       e                   t, q, u, v, geom,      utran_e, utran_q)
3       s                   vtran_e, vtran_q, utran_e, utran_q)  
4  c    USE dimens_m
5        use dimens_m    USE dimphy
6        use dimphy    USE suphec_m
7        use YOMCST    IMPLICIT NONE
8        IMPLICIT none    ! ======================================================================
9  c======================================================================    ! Auteur(s): Z.X.Li (LMD/CNRS)
10  c Auteur(s): Z.X.Li (LMD/CNRS)    ! Date: le 25 avril 1994
11  c Date: le 25 avril 1994    ! Objet: Calculer le transport de l'energie et de la vapeur d'eau
12  c Objet: Calculer le transport de l'energie et de la vapeur d'eau    ! ======================================================================
13  c======================================================================  
14  c  
15  c    REAL, INTENT (IN) :: paprs(klon, klev+1)
16        REAL, intent(in):: paprs(klon,klev+1)    REAL tsol(klon)
17        real tsol(klon)    REAL, INTENT (IN) :: t(klon, klev)
18        REAL t(klon,klev), q(klon,klev), u(klon,klev), v(klon,klev)    REAL q(klon, klev), u(klon, klev), v(klon, klev)
19        REAL utran_e(klon,klev), utran_q(klon,klev)    REAL utran_e(klon, klev), utran_q(klon, klev)
20        REAL vtran_e(klon,klev), vtran_q(klon,klev)    REAL vtran_e(klon, klev), vtran_q(klon, klev)
21  c  
22        INTEGER i, l    INTEGER i, l
23  c     ------------------------------------------------------------------    ! ------------------------------------------------------------------
24        REAL geom(klon,klev), esh    REAL geom(klon, klev), esh
25  c     ------------------------------------------------------------------    ! ------------------------------------------------------------------
26        DO l = 1, klev    DO l = 1, klev
27        DO i = 1, klon      DO i = 1, klon
28           utran_e(i,l) = 0.0        utran_e(i, l) = 0.0
29           utran_q(i,l) = 0.0        utran_q(i, l) = 0.0
30           vtran_e(i,l) = 0.0        vtran_e(i, l) = 0.0
31           vtran_q(i,l) = 0.0        vtran_q(i, l) = 0.0
32        ENDDO      END DO
33        ENDDO    END DO
34  c  
35        DO l = 1, klev    DO l = 1, klev
36        DO i = 1, klon      DO i = 1, klon
37           esh = RCPD*t(i,l) + RLVTT*q(i,l) + geom(i,l)        esh = rcpd*t(i, l) + rlvtt*q(i, l) + geom(i, l)
38           utran_e(i,l)=utran_e(i,l)+ u(i,l)*esh*        utran_e(i, l) = utran_e(i, l) + u(i, l)*esh*(paprs(i,l)-paprs(i,l+1))/ &
39       .                (paprs(i,l)-paprs(i,l+1))/RG          rg
40           utran_q(i,l)=utran_q(i,l)+ u(i,l)*q(i,l)        utran_q(i, l) = utran_q(i, l) + u(i, l)*q(i, l)*(paprs(i,l)-paprs(i,l+1 &
41       .                *(paprs(i,l)-paprs(i,l+1))/RG          ))/rg
42           vtran_e(i,l)=vtran_e(i,l)+ v(i,l)*esh*        vtran_e(i, l) = vtran_e(i, l) + v(i, l)*esh*(paprs(i,l)-paprs(i,l+1))/ &
43       .                (paprs(i,l)-paprs(i,l+1))/RG          rg
44           vtran_q(i,l)=vtran_q(i,l)+ v(i,l)*q(i,l)        vtran_q(i, l) = vtran_q(i, l) + v(i, l)*q(i, l)*(paprs(i,l)-paprs(i,l+1 &
45       .                *(paprs(i,l)-paprs(i,l+1))/RG          ))/rg
46        ENDDO      END DO
47        ENDDO    END DO
48  c  
49        RETURN    RETURN
50        END  END SUBROUTINE transp_lay

Legend:
Removed from v.3  
changed lines
  Added in v.82

  ViewVC Help
Powered by ViewVC 1.1.21