My Project
 All Classes Files Functions Variables Macros
massbarxy_p.F
Go to the documentation of this file.
1  SUBROUTINE massbarxy_p( masse, massebxy )
2  USE parallel
3  implicit none
4 c **********************************************************************
5 c
6 c Calcule les moyennes en x et y de la masse d'air dans chaque maille.
7 c **********************************************************************
8 c Auteurs : P. Le Van , Fr. Hourdin .
9 c ..........
10 c
11 c .. masse est un argum. d'entree pour le s-pg ...
12 c .. massebxy est un argum. de sortie pour le s-pg ...
13 c
14 c
15 c IMPLICIT NONE
16 c
17 #include "dimensions.h"
18 #include "paramet.h"
19 #include "comconst.h"
20 #include "comgeom.h"
21 c
22  REAL masse( ip1jmp1,llm ), massebxy( ip1jm,llm )
23 c
24  INTEGER ij,l,ijb,ije
25 
26 
27  ijb=ij_begin-iip1
28  ije=ij_end
29 
30  if (pole_nord) ijb=ijb+iip1
31  if (pole_sud) ije=ije-iip1
32 
33 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)
34  DO 100 l = 1 , llm
35 c
36  DO 5 ij = ijb, ije - 1
37  massebxy( ij,l ) = masse( ij ,l ) * alpha2( ij ) +
38  + masse( ij+1 ,l ) * alpha3( ij+1 ) +
39  + masse( ij+iip1,l ) * alpha1( ij+iip1 ) +
40  + masse( ij+iip2,l ) * alpha4( ij+iip2 )
41  5 CONTINUE
42 
43 c .... correction pour massebxy( iip1,j ) ........
44 
45 CDIR$ IVDEP
46 
47  DO 7 ij = ijb+iip1-1, ije+iip1-1, iip1
48  massebxy( ij,l ) = massebxy( ij - iim,l )
49  7 CONTINUE
50 
51 100 CONTINUE
52 c$OMP END DO NOWAIT
53 c
54  RETURN
55  END