LMDZ
covcont_p.F
Go to the documentation of this file.
1  SUBROUTINE covcont_p (klevel,ucov, vcov, ucont, vcont )
3  & pole_nord, pole_sud
4  IMPLICIT NONE
5 
6 c=======================================================================
7 c
8 c Auteur: P. Le Van
9 c -------
10 c
11 c Objet:
12 c ------
13 c
14 c *********************************************************************
15 c calcul des compos. contravariantes a partir des comp.covariantes
16 c ********************************************************************
17 c
18 c=======================================================================
19 
20 #include "dimensions.h"
21 #include "paramet.h"
22 #include "comgeom.h"
23 
24  INTEGER klevel
25  REAL ucov( ip1jmp1,klevel ), vcov( ip1jm,klevel )
26  REAL ucont( ip1jmp1,klevel ), vcont( ip1jm,klevel )
27  INTEGER l,ij
28  INTEGER ijb_u,ijb_v,ije_u,ije_v
29 
30 
31  ijb_u=ij_begin-iip1
32  ijb_v=ij_begin-iip1
33  ije_u=ij_end+iip1
34  ije_v=ij_end+iip1
35 
36  if (pole_nord) then
37  ijb_u=ij_begin+iip1
38  ijb_v=ij_begin
39  endif
40 
41  if (pole_sud) then
42  ije_u=ij_end-iip1
43  ije_v=ij_end-iip1
44  endif
45 
46 c$OMP DO SCHEDULE(STATIC,OMP_CHUNK)
47  DO 10 l = 1,klevel
48 
49  DO 2 ij = ijb_u,ije_u
50  ucont( ij,l ) = ucov( ij,l ) * unscu2( ij )
51  2 CONTINUE
52 
53  DO 4 ij = ijb_v,ije_v
54  vcont( ij,l ) = vcov( ij,l ) * unscv2( ij )
55  4 CONTINUE
56 
57  10 CONTINUE
58 c$OMP END DO NOWAIT
59  RETURN
60  END
!$Header llmm1 INTEGER ip1jmp1
Definition: paramet.h:14
integer, save ij_end
!$Header!CDK comgeom COMMON comgeom unscu2
Definition: comgeom.h:25
!$Header llmm1 INTEGER ip1jm
Definition: paramet.h:14
!$Header!CDK comgeom COMMON comgeom unscv2
Definition: comgeom.h:25
integer, save ij_begin
subroutine covcont_p(klevel, ucov, vcov, ucont, vcont)
Definition: covcont_p.F:2
integer, save omp_chunk