source: trunk/LMDZ.MARS/libf/dyn3d/tourpot.F @ 1766

Last change on this file since 1766 was 1422, checked in by milmd, 10 years ago

In GENERIC, MARS and COMMON models replace some include files by modules (usefull for decoupling physics with dynamics).

File size: 1.8 KB
Line 
1      SUBROUTINE tourpot ( vcov, ucov, massebxy, vorpot )
2      IMPLICIT NONE
3
4c=======================================================================
5c
6c   Auteur:  P. Le Van
7c   -------
8c
9c   Objet:
10c   ------
11c
12c    *******************************************************************
13c    .........      calcul du tourbillon potentiel             .........
14c    *******************************************************************
15c
16c     vcov,ucov,fext et pbarxyfl sont des argum. d'entree pour le s-pg .
17c             vorpot            est  un argum.de sortie pour le s-pg .
18c
19c=======================================================================
20
21#include "dimensions.h"
22#include "paramet.h"
23#include "comgeom.h"
24
25      REAL  rot( ip1jm,llm )
26      REAL vcov( ip1jm,llm ),ucov( ip1jmp1,llm )
27      REAL massebxy( ip1jm,llm ),vorpot( ip1jm,llm )
28
29      INTEGER l, ij
30
31      EXTERNAL filtreg
32
33
34
35c  ... vorpot = ( Filtre( d(vcov)/dx - d(ucov)/dy ) + fext ) /psbarxy ..
36
37
38
39c    ........  Calcul du rotationnel du vent V  puis filtrage  ........
40
41      DO 5 l = 1,llm
42
43      DO 2 ij = 1, ip1jm - 1
44      rot( ij,l ) = vcov(ij+1,l)-vcov(ij,l)+ucov(ij+iip1,l)-ucov(ij,l)
45   2  CONTINUE
46
47c    ....  correction pour  rot( iip1,j,l )  .....
48c    ....     rot(iip1,j,l) = rot(1,j,l)    .....
49
50CDIR$ IVDEP
51
52      DO 3 ij = iip1, ip1jm, iip1
53      rot( ij,l ) = rot( ij -iim, l )
54   3  CONTINUE
55
56   5  CONTINUE
57
58
59      CALL filtreg( rot, jjm, llm, 2, 1, .FALSE., 1 )
60
61
62      DO 10 l = 1, llm
63
64      DO 6 ij = 1, ip1jm - 1
65      vorpot( ij,l ) = ( rot(ij,l) + fext(ij) ) / massebxy(ij,l)
66   6  CONTINUE
67
68c    ..... correction pour  vorpot( iip1,j,l)  .....
69c    ....   vorpot(iip1,j,l)= vorpot(1,j,l) ....
70CDIR$ IVDEP
71      DO 8 ij = iip1, ip1jm, iip1
72      vorpot( ij,l ) = vorpot( ij -iim,l )
73   8  CONTINUE
74
75  10  CONTINUE
76
77      RETURN
78      END
Note: See TracBrowser for help on using the repository browser.