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

Contents of /trunk/dyn3d/dudv2.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 43 - (show annotations)
Fri Apr 8 12:43:31 2011 UTC (13 years, 1 month ago) by guez
Original Path: trunk/libf/dyn3d/dudv2.f
File size: 1852 byte(s)
"start_init_phys" is now called directly by "etat0" instead of through
"start_init_dyn". "qsol_2d" is no longer a variable of module
"start_init_phys_m", it is an argument of
"start_init_phys". "start_init_dyn" now receives "tsol_2d" from
"etat0".

Split file "vlspltqs.f" into "vlspltqs.f90", "vlxqs.f90" and
""vlyqs.f90".

In "start_init_orog", replaced calls to "flin*" by calls to NetCDF95.

1 !
2 ! $Header: /home/cvsroot/LMDZ4/libf/dyn3d/dudv2.F,v 1.1.1.1 2004/05/19 12:53:06 lmdzadmin Exp $
3 !
4 SUBROUTINE dudv2 ( teta, pkf, bern, du, dv )
5
6 use dimens_m
7 use paramet_m
8 use comvert
9 IMPLICIT NONE
10 c
11 c=======================================================================
12 c
13 c Auteur: P. Le Van
14 c -------
15 c
16 c Objet:
17 c ------
18 c
19 c *****************************************************************
20 c ..... calcul du terme de pression (gradient de p/densite ) et
21 c du terme de ( -gradient de la fonction de Bernouilli ) ...
22 c *****************************************************************
23 c Ces termes sont ajoutes a d(ucov)/dt et a d(vcov)/dt ..
24 c
25 c
26 c teta , pkf, bern sont des arguments d'entree pour le s-pg ....
27 c du et dv sont des arguments de sortie pour le s-pg ....
28 c
29 c=======================================================================
30 c
31
32 REAL, intent(in):: teta( ip1jmp1,llm )
33 real pkf( ip1jmp1,llm ) ,bern( ip1jmp1,llm ),
34 * du( ip1jmp1,llm ), dv( ip1jm,llm )
35 INTEGER l,ij
36 c
37 c
38 DO 5 l = 1,llm
39 c
40 DO 2 ij = iip2, ip1jm - 1
41 du(ij,l) = du(ij,l) + 0.5* ( teta( ij,l ) + teta( ij+1,l ) ) *
42 * ( pkf( ij,l ) - pkf(ij+1,l) ) + bern(ij,l) - bern(ij+1,l)
43 2 CONTINUE
44 c
45 c
46 c ..... correction pour du(iip1,j,l), j=2,jjm ......
47 c ... du(iip1,j,l) = du(1,j,l) ...
48 c
49 CDIR$ IVDEP
50 DO 3 ij = iip1+ iip1, ip1jm, iip1
51 du( ij,l ) = du( ij - iim,l )
52 3 CONTINUE
53 c
54 c
55 DO 4 ij = 1,ip1jm
56 dv( ij,l) = dv(ij,l) + 0.5 * ( teta(ij,l) + teta( ij+iip1,l ) ) *
57 * ( pkf(ij+iip1,l) - pkf( ij,l ) )
58 * + bern( ij+iip1,l ) - bern( ij ,l )
59 4 CONTINUE
60 c
61 5 CONTINUE
62 c
63 RETURN
64 END

  ViewVC Help
Powered by ViewVC 1.1.21