source: trunk/LMDZ.COMMON/libf/dyn3d_common/tourpot.F @ 1453

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