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

Annotation of /trunk/dyn3d/massbar.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 91 - (hide annotations)
Wed Mar 26 17:18:58 2014 UTC (10 years, 2 months ago) by guez
File size: 1226 byte(s)
Removed unused variables lock_startdate and time_stamp of module
calendar.

Noticed that physiq does not change the surface pressure. So removed
arguments ps and dpfi of subroutine addfi. dpfi was always 0. The
computation of ps in addfi included some averaging at the poles. In
principle, this does not change ps but in practice it does because of
finite numerical precision. So the results of the simulation are
changed. Removed arguments ps and dpfi of calfis. Removed argument
d_ps of physiq.

du at the poles is not computed by dudv1, so declare only the
corresponding latitudes in dudv1. caldyn passes only a section of the
array dudyn as argument.

Removed variable niadv of module iniadvtrac_m.

Declared arguments of exner_hyb as assumed-shape arrays and made all
other horizontal sizes in exner_hyb dynamic. This allows the external
program test_disvert to use exner_hyb at a single horizontal position.

1 guez 91 module massbar_m
2 guez 3
3 guez 91 IMPLICIT NONE
4 guez 3
5 guez 91 contains
6 guez 3
7 guez 91 SUBROUTINE massbar(masse, massebx, masseby)
8 guez 3
9 guez 91 ! From LMDZ4/libf/dyn3d/massbar.F, version 1.1.1.1, 2004/05/19 12:53:05
10     ! Authors: P. Le Van, F. Hourdin.
11 guez 3
12 guez 91 ! Calcule les moyennes en x et y de la masse d'air dans chaque
13     ! maille. Cf. "inigeom.txt" et "massbar.txt".
14 guez 78
15 guez 91 USE dimens_m, ONLY: iim, llm
16     USE paramet_m, ONLY: iip1, ip1jm, ip1jmp1
17     USE comgeom, ONLY: alpha1p2, alpha1p4, alpha2p3, alpha3p4
18 guez 78
19 guez 91 REAL, intent(in):: masse(ip1jmp1,llm)
20     real, intent(out):: massebx(ip1jmp1,llm), masseby(ip1jm,llm)
21 guez 78
22 guez 91 ! Local:
23     integer l, ij
24 guez 78
25 guez 91 !--------------------------------------------------------------
26 guez 78
27 guez 91 DO l = 1, llm
28     DO ij = 1, ip1jmp1 - 1
29     massebx(ij,l) = masse(ij, l) * alpha1p2(ij) + &
30     masse(ij+1, l) * alpha3p4(ij+1)
31     ENDDO
32 guez 78
33 guez 91 ! correction pour massebx(iip1,j)
34     ! massebx(iip1,j)= massebx(1,j)
35     DO ij = iip1, ip1jmp1, iip1
36     massebx(ij,l) = massebx(ij - iim,l)
37     ENDDO
38 guez 78
39 guez 91 DO ij = 1,ip1jm
40     masseby(ij,l) = masse(ij, l) * alpha2p3(ij) + &
41     masse(ij+iip1, l) * alpha1p4(ij+iip1)
42     ENDDO
43     end DO
44    
45     END SUBROUTINE massbar
46    
47     end module massbar_m

  ViewVC Help
Powered by ViewVC 1.1.21