/[lmdze]/trunk/dyn3d/massbarxy.f
ViewVC logotype

Contents of /trunk/dyn3d/massbarxy.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 78 - (show annotations)
Wed Feb 5 17:51:07 2014 UTC (10 years, 3 months ago) by guez
Original Path: trunk/dyn3d/massbarxy.f90
File size: 1107 byte(s)
Moved procedure inigeom into module comgeom.

In disvert, renamed s_sampling to vert_sampling, following
LMDZ. Removed choice strato1. In case read, read ap and bp instead of
s (following LMDZ).

Added argument phis to start_init_orog and start_init_dyn, and removed
variable phis of module start_init_orog_m. In etat0 and
start_init_orog, renamed relief to zmea_2d. In start_init_dyn, renamed
psol to ps.

In start_init_orog, renamed relief_hi to relief. No need to set
phis(iim + 1, :) = phis(1, :), already done in grid_noro.

Documentation for massbar out of SVN, in massbar.txt. Documentation
was duplicated in massdair, but not relevant in massdair.

In conflx, no need to initialize pen_[ud] and pde_[ud]. In flxasc,
used intermediary variable fact (following LMDZ).

In grid_noro, added local variable zmea0 for zmea not smoothed and
computed zphi from zmea instead of zmea0 (following LMDZ). This
changes the results of ce0l.

Removed arguments pen_u and pde_d of phytrac and nflxtr, which were
not used.

1 module massbarxy_m
2
3 IMPLICIT NONE
4
5 contains
6
7 SUBROUTINE massbarxy(masse, massebxy)
8
9 ! From LMDZ4/libf/dyn3d/massbarxy.F, version 1.1.1.1 2004/05/19 12:53:07
10
11 ! Calcule les moyennes en x et y de la masse d'air dans chaque maille.
12 ! Auteurs : P. Le Van, F. Hourdin.
13
14 USE dimens_m, ONLY: iim, llm
15 USE paramet_m, ONLY: iip1, iip2, ip1jm, ip1jmp1
16 USE comgeom, ONLY: alpha1, alpha2, alpha3, alpha4
17
18 REAL, intent(in):: masse(ip1jmp1, llm)
19 real, intent(out):: massebxy(ip1jm, llm)
20
21 ! Local:
22 integer l, ij
23
24 !-------------------------------------------------------------------
25
26 DO l = 1, llm
27 DO ij = 1, ip1jm - 1
28 massebxy(ij, l) = masse(ij, l) * alpha2(ij) &
29 + masse(ij + 1, l) * alpha3(ij + 1) &
30 + masse(ij + iip1, l) * alpha1(ij + iip1) &
31 + masse(ij + iip2, l) * alpha4(ij + iip2)
32 end DO
33
34 ! correction pour massebxy(iip1, j)
35 DO ij = iip1, ip1jm, iip1
36 massebxy(ij, l) = massebxy(ij - iim, l)
37 end DO
38 end DO
39
40 END SUBROUTINE massbarxy
41
42 end module massbarxy_m

  ViewVC Help
Powered by ViewVC 1.1.21