LMDZ
pbar.F
Go to the documentation of this file.
1 !
2 ! $Header$
3 !
4  SUBROUTINE pbar ( pext, pbarx, pbary, pbarxy )
5  IMPLICIT NONE
6 
7 c=======================================================================
8 c
9 c Auteur: P. Le Van
10 c -------
11 c
12 c Objet:
13 c ------
14 c
15 c **********************************************************************
16 c calcul des moyennes en x et en y de (pression au sol*aire variable) ..
17 c *********************************************************************
18 c
19 c pext est un argum. d'entree pour le s-pg ..
20 c pbarx,pbary et pbarxy sont des argum. de sortie pour le s-pg ..
21 c
22 c Methode:
23 c --------
24 c
25 c A chaque point scalaire P (i,j) est affecte 4 coefficients d'aires
26 c alpha1(i,j) calcule au point ( i+1/4,j-1/4 )
27 c alpha2(i,j) calcule au point ( i+1/4,j+1/4 )
28 c alpha3(i,j) calcule au point ( i-1/4,j+1/4 )
29 c alpha4(i,j) calcule au point ( i-1/4,j-1/4 )
30 c
31 c Avec alpha1(i,j) = aire(i+1/4,j-1/4)/ aire(i,j)
32 c
33 c N.B . Pour plus de details, voir s-pg ... iniconst ...
34 c
35 c
36 c
37 c alpha4 . . alpha1 . alpha4
38 c (i,j) (i,j) (i+1,j)
39 c
40 c P . U . . P
41 c (i,j) (i,j) (i+1,j)
42 c
43 c alpha3 . . alpha2 .alpha3
44 c (i,j) (i,j) (i+1,j)
45 c
46 c V . Z . . V
47 c (i,j)
48 c
49 c alpha4 . . alpha1 .alpha4
50 c (i,j+1) (i,j+1) (i+1,j+1)
51 c
52 c P . U . . P
53 c (i,j+1) (i+1,j+1)
54 c
55 c
56 c
57 c
58 c On a :
59 c
60 c pbarx(i,j) = Pext(i ,j) * ( alpha1(i ,j) + alpha2(i,j)) +
61 c Pext(i+1,j) * ( alpha3(i+1,j) + alpha4(i+1,j) )
62 c localise au point ... U (i,j) ...
63 c
64 c pbary(i,j) = Pext(i,j ) * ( alpha2(i,j ) + alpha3(i,j ) +
65 c Pext(i,j+1) * ( alpha1(i,j+1) + alpha4(i,j+1)
66 c localise au point ... V (i,j) ...
67 c
68 c pbarxy(i,j)= Pext(i,j) *alpha2(i,j) + Pext(i+1,j) *alpha3(i+1,j) +
69 c Pext(i,j+1)*alpha1(i,j+1)+ Pext(i+1,j+1)*alpha4(i+1,j+1)
70 c localise au point ... Z (i,j) ...
71 c
72 c
73 c
74 c=======================================================================
75 
76 
77 #include "dimensions.h"
78 #include "paramet.h"
79 
80 #include "comgeom.h"
81 
82  REAL pext( ip1jmp1 ), pbarx ( ip1jmp1 )
83  REAL pbary( ip1jm ), pbarxy( ip1jm )
84 
85  INTEGER ij
86 
87 
88 
89  DO 1 ij = 1, ip1jmp1 - 1
90  pbarx( ij ) = pext(ij) * alpha1p2(ij) + pext(ij+1)*alpha3p4(ij+1)
91  1 CONTINUE
92 
93 c .... correction pour pbarx( iip1,j) .....
94 
95 c ... pbarx(iip1,j)= pbarx(1,j) ...
96 CDIR$ IVDEP
97  DO 2 ij = iip1, ip1jmp1, iip1
98  pbarx( ij ) = pbarx( ij - iim )
99  2 CONTINUE
100 
101 
102  DO 3 ij = 1,ip1jm
103  pbary( ij ) = pext( ij ) * alpha2p3( ij ) +
104  * pext( ij+iip1 ) * alpha1p4( ij+iip1 )
105  3 CONTINUE
106 
107 
108  DO 5 ij = 1, ip1jm - 1
109  pbarxy( ij ) = pext(ij)*alpha2(ij) + pext(ij+1)*alpha3(ij+1) +
110  * pext(ij+iip1)*alpha1(ij+iip1) + pext(ij+iip2)*alpha4(ij+iip2)
111  5 CONTINUE
112 
113 
114 c .... correction pour pbarxy( iip1,j ) ........
115 
116 CDIR$ IVDEP
117 
118  DO 7 ij = iip1, ip1jm, iip1
119  pbarxy( ij ) = pbarxy( ij - iim )
120  7 CONTINUE
121 
122 
123  RETURN
124  END
!$Header iip2
Definition: paramet.h:14
!$Header llmm1 INTEGER ip1jmp1
Definition: paramet.h:14
!$Header!CDK comgeom COMMON comgeom alpha1p2
Definition: comgeom.h:25
!$Header!CDK comgeom COMMON comgeom && alpha1
Definition: comgeom.h:25
!$Header!CDK comgeom COMMON comgeom alpha4
Definition: comgeom.h:25
!$Header!CDK comgeom COMMON comgeom alpha3
Definition: comgeom.h:25
!$Header llmm1 INTEGER ip1jm
Definition: paramet.h:14
!$Header!CDK comgeom COMMON comgeom alpha1p4
Definition: comgeom.h:25
!$Header!CDK comgeom COMMON comgeom alpha3p4
Definition: comgeom.h:25
subroutine pbar(pext, pbarx, pbary, pbarxy)
Definition: pbar.F:5
!$Header!CDK comgeom COMMON comgeom alpha2p3
Definition: comgeom.h:25
c c zjulian c cym CALL iim cym klev iim
Definition: ini_bilKP_ave.h:24
!$Header!CDK comgeom COMMON comgeom alpha2
Definition: comgeom.h:25