/[lmdze]/trunk/phylmd/transp.f90
ViewVC logotype

Contents of /trunk/phylmd/transp.f90

Parent Directory Parent Directory | Revision Log Revision Log


Revision 328 - (show annotations)
Thu Jun 13 14:40:06 2019 UTC (4 years, 11 months ago) by guez
File size: 1409 byte(s)
Change all `.f` suffixes to `.f90`. (The opposite was done in revision
82.)  Because of change of philosopy in GNUmakefile: we already had a
rewritten rule for `.f`, so it does not make the makefile longer to
replace it by a rule for `.f90`. And it spares us options of
makedepf90 and of the compiler. Also we prepare the way for a simpler
`CMakeLists.txt`.

1 module transp_m
2
3 IMPLICIT NONE
4
5 contains
6
7 SUBROUTINE transp(paprs, t, q, u, v, geom, vtran_e, vtran_q, utran_e, utran_q)
8
9 ! From LMDZ4/libf/phylmd/transp.F,v 1.1.1.1 2004/05/19 12:53:09
10
11 ! Auteur(s): Z.X.Li (LMD/CNRS)
12 ! Date: le 25 avril 1994
13 ! Objet: Calculer le transport total de l'energie et de la vapeur d'eau
14
15 USE dimensions
16 USE dimphy
17 USE suphec_m
18
19 REAL, INTENT (IN) :: paprs(klon, klev+1)
20 REAL, INTENT (IN) :: t(klon, klev)
21 REAL, INTENT (IN) :: q(klon, klev), u(klon, klev), v(klon, klev)
22 REAL utran_e(klon), utran_q(klon), vtran_e(klon), vtran_q(klon)
23
24 INTEGER i, l
25 ! ------------------------------------------------------------------
26 REAL geom(klon, klev), e
27 ! ------------------------------------------------------------------
28 DO i = 1, klon
29 utran_e(i) = 0.0
30 utran_q(i) = 0.0
31 vtran_e(i) = 0.0
32 vtran_q(i) = 0.0
33 END DO
34
35 DO l = 1, klev
36 DO i = 1, klon
37 e = rcpd*t(i, l) + rlvtt*q(i, l) + geom(i, l)
38 utran_e(i) = utran_e(i) + u(i, l)*e*(paprs(i,l)-paprs(i,l+1))/rg
39 utran_q(i) = utran_q(i) + u(i, l)*q(i, l)*(paprs(i,l)-paprs(i,l+1))/rg
40 vtran_e(i) = vtran_e(i) + v(i, l)*e*(paprs(i,l)-paprs(i,l+1))/rg
41 vtran_q(i) = vtran_q(i) + v(i, l)*q(i, l)*(paprs(i,l)-paprs(i,l+1))/rg
42 END DO
43 END DO
44
45 END SUBROUTINE transp
46
47 end module transp_m

  ViewVC Help
Powered by ViewVC 1.1.21