source: LMDZ5/trunk/libf/dyn3dpar/covcont_p.F @ 2510

Last change on this file since 2510 was 2239, checked in by Ehouarn Millour, 10 years ago

Reorganizing physics/dynamics interface:

  • what is related to dynamics-physics interface is now in a seperate directory: dynlmdz_phy* for physics in phy*
  • 1d model and related dependencies (including a couple from "dynamics", set up as symbolic links) is now in subdirectory "dyn1d" of phy*.
  • "bibio" directory is now "misc" and should only contain autonomous utilities.
  • "cosp" is now a subdirectory of phylmd.

EM

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.5 KB
Line 
1      SUBROUTINE covcont_p (klevel,ucov, vcov, ucont, vcont )
2      USE parallel_lmdz, ONLY: ij_begin,ij_end,OMP_CHUNK,
3     &                         pole_nord, pole_sud
4      IMPLICIT NONE
5
6c=======================================================================
7c
8c   Auteur:  P. Le Van
9c   -------
10c
11c   Objet:
12c   ------
13c
14c  *********************************************************************
15c    calcul des compos. contravariantes a partir des comp.covariantes
16c  ********************************************************************
17c
18c=======================================================================
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
46c$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
58c$OMP END DO NOWAIT
59      RETURN
60      END
Note: See TracBrowser for help on using the repository browser.