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

Annotation of /trunk/dyn3d/dudv2.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 265 - (hide annotations)
Tue Mar 20 09:35:59 2018 UTC (6 years, 2 months ago) by guez
File size: 1429 byte(s)
Rename module dimens_m to dimensions.
1 guez 88 module dudv2_m
2 guez 3
3 guez 81 IMPLICIT NONE
4    
5 guez 88 contains
6 guez 81
7 guez 88 SUBROUTINE dudv2(teta, pkf, bern, du, dv)
8 guez 81
9 guez 88 ! From LMDZ4/libf/dyn3d/dudv2.F, version 1.1.1.1, 2004/05/19 12:53:06
10 guez 81
11 guez 88 ! Author: P. Le Van
12 guez 81
13 guez 95 ! Objet : calcul du terme de pression (gradient de p / densité) et
14     ! du terme "- gradient de la fonction de Bernouilli". Ces termes
15     ! sont ajoutés à d(ucov)/dt et à d(vcov)/dt.
16 guez 81
17 guez 265 USE dimensions, ONLY: iim, llm
18 guez 88 USE paramet_m, ONLY: iip1, iip2, ip1jm, ip1jmp1
19 guez 81
20 guez 88 REAL, INTENT(IN):: teta(ip1jmp1, llm)
21     REAL, INTENT(IN):: pkf(ip1jmp1, llm)
22 guez 95 real, INTENT(IN):: bern(ip1jmp1, llm)
23 guez 260 real, intent(inout):: du(ip1jmp1, llm), dv(ip1jm, llm)
24 guez 81
25 guez 88 ! Local:
26     INTEGER l, ij
27 guez 81
28 guez 88 !-----------------------------------------------------------------
29 guez 81
30 guez 88 DO l = 1, llm
31     DO ij = iip2, ip1jm - 1
32     du(ij, l) = du(ij, l) + 0.5 * (teta(ij, l) + teta(ij + 1, l)) &
33     * (pkf(ij, l) - pkf(ij + 1, l)) + bern(ij, l) - bern(ij + 1, l)
34     END DO
35 guez 81
36 guez 88 ! correction pour du(iip1, j, l), j=2, jjm
37     ! du(iip1, j, l) = du(1, j, l)
38     DO ij = iip1 + iip1, ip1jm, iip1
39     du(ij, l) = du(ij - iim, l)
40     END DO
41 guez 81
42 guez 88 DO ij = 1, ip1jm
43     dv(ij, l) = dv(ij, l) + 0.5 * (teta(ij, l) + teta(ij + iip1, l)) &
44     * (pkf(ij + iip1, l) - pkf(ij, l)) + bern(ij + iip1, l) &
45     - bern(ij, l)
46     END DO
47 guez 81 END DO
48    
49 guez 88 END SUBROUTINE dudv2
50 guez 81
51 guez 88 end module dudv2_m

  ViewVC Help
Powered by ViewVC 1.1.21