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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 178 - (show annotations)
Fri Mar 11 18:47:26 2016 UTC (8 years, 2 months ago) by guez
File size: 1704 byte(s)
Moved variables date0, deltat, datasz_max, ncvar_ids, point, buff_pos,
buffer, regular from module histcom_var to modules where they are
defined.

Removed procedure ioipslmpp, useless for a sequential program.

Added argument datasz_max to histwrite_real (to avoid circular
dependency with histwrite).

Removed useless variables and computations everywhere.

Changed real litteral constants from default kind to double precision
in lwb, lwu, lwvn, sw1s, swtt, swtt1, swu.

Removed unused arguments: paer of sw, sw1s, sw2s, swclr; pcldsw of
sw1s, sw2s; pdsig, prayl of swr; co2_ppm of clmain, clqh; tsol of
transp_lay; nsrf of screenp; kcrit and kknu of gwstress; pstd of
orosetup.

Added output of relative humidity.

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

Properties

Name Value
svn:executable

  ViewVC Help
Powered by ViewVC 1.1.21