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

Annotation of /trunk/dyn3d/dudv2.f

Parent Directory Parent Directory | Revision Log Revision Log


Revision 81 - (hide annotations)
Wed Mar 5 14:38:41 2014 UTC (10 years, 2 months ago) by guez
Original Path: trunk/dyn3d/dudv2.f90
File size: 1658 byte(s)
 Converted to free source form files which were still in fixed source
form. The conversion was done using the polish mode of the NAG Fortran
Compiler.

In addition to converting to free source form, the processing of the
files also:

-- indented the code (including comments);

-- set Fortran keywords to uppercase, and set all other identifiers
to lower case;

-- added qualifiers to end statements (for example "end subroutine
conflx", instead of "end");

-- changed the terminating statements of all DO loops so that each
loop ends with an ENDDO statement (instead of a labeled continue).

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

  ViewVC Help
Powered by ViewVC 1.1.21