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

Annotation of /trunk/dyn3d/tourpot.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 78 - (hide annotations)
Wed Feb 5 17:51:07 2014 UTC (10 years, 3 months ago) by guez
Original Path: trunk/dyn3d/tourpot.f90
File size: 1541 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 guez 78 module tourpot_m
2 guez 3
3 guez 78 IMPLICIT NONE
4 guez 3
5 guez 78 contains
6 guez 27
7 guez 78 SUBROUTINE tourpot(vcov, ucov, massebxy, vorpot)
8 guez 3
9 guez 78 ! From LMDZ4/libf/dyn3d/tourpot.F, version 1.1.1.1 2004/05/19 12:53:06
10 guez 3
11 guez 78 ! Auteur : P. Le Van
12     ! Objet : calcul du tourbillon potentiel
13 guez 3
14 guez 78 USE dimens_m, ONLY: iim, jjm, llm
15     USE paramet_m, ONLY: iip1, ip1jm, ip1jmp1
16     USE comgeom, ONLY: fext
17     use filtreg_m, only: filtreg
18 guez 3
19 guez 78 REAL, intent(in):: vcov(ip1jm, llm), ucov(ip1jmp1, llm)
20     REAL, intent(in):: massebxy(ip1jm, llm)
21 guez 3
22 guez 78 real, intent(out):: vorpot(ip1jm, llm)
23     ! = (Filtre(d(vcov)/dx - d(ucov)/dy) + fext) / massebxy
24 guez 3
25 guez 78 ! Local:
26     REAL rot(ip1jm, llm)
27     INTEGER l, ij
28 guez 3
29 guez 78 !---------------------------------------------------------------
30 guez 3
31 guez 78 ! Calcul du rotationnel du vent puis filtrage
32 guez 3
33 guez 78 DO l = 1, llm
34     DO ij = 1, ip1jm - 1
35     rot(ij, l) = vcov(ij + 1, l) - vcov(ij, l) + ucov(ij + iip1, l) &
36     - ucov(ij, l)
37     end DO
38 guez 3
39 guez 78 ! correction pour rot(iip1, j, l)
40     ! rot(iip1, j, l) = rot(1, j, l)
41     DO ij = iip1, ip1jm, iip1
42     rot(ij, l) = rot(ij - iim, l)
43     end DO
44     end DO
45 guez 3
46 guez 78 CALL filtreg(rot, jjm, llm, 2, 1, .FALSE.)
47 guez 3
48 guez 78 DO l = 1, llm
49     DO ij = 1, ip1jm - 1
50     vorpot(ij, l) = (rot(ij, l) + fext(ij)) / massebxy(ij, l)
51     end DO
52 guez 3
53 guez 78 ! correction pour vorpot(iip1, j, l)
54     ! vorpot(iip1, j, l)= vorpot(1, j, l)
55     DO ij = iip1, ip1jm, iip1
56     vorpot(ij, l) = vorpot(ij - iim, l)
57     end DO
58     end DO
59 guez 3
60 guez 78 END SUBROUTINE tourpot
61 guez 3
62 guez 78 end module tourpot_m

  ViewVC Help
Powered by ViewVC 1.1.21