source: LMDZ4/trunk/libf/dyn3dpar/covnat_p.F @ 1000

Last change on this file since 1000 was 1000, checked in by Laurent Fairhead, 16 years ago
  • Modifs sur le parallelisme: masquage dans la physique
  • Inclusion strato
  • mise en coherence etat0
  • le mode offline fonctionne maintenant en parallele,
  • les fichiers de la dynamiques sont correctement sortis et peuvent etre reconstruit avec rebuild
  • la version parallele de la dynamique peut s'executer sans MPI (sur 1 proc)
  • L'OPENMP fonctionne maintenant sans la parallelisation MPI.

YM
LF

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.6 KB
Line 
1!
2! $Header$
3!
4      SUBROUTINE covnat_p(klevel,ucov, vcov, unat, vnat )
5      USE parallel
6      IMPLICIT NONE
7
8c=======================================================================
9c
10c   Auteur:  F Hourdin Phu LeVan
11c   -------
12c
13c   Objet:
14c   ------
15c
16c  *********************************************************************
17c    calcul des compos. naturelles a partir des comp.covariantes
18c  ********************************************************************
19c
20c=======================================================================
21
22#include "dimensions.h"
23#include "paramet.h"
24#include "comgeom.h"
25
26      INTEGER klevel
27      REAL ucov( ip1jmp1,klevel ),  vcov( ip1jm,klevel )
28      REAL unat( ip1jmp1,klevel ), vnat( ip1jm,klevel )
29      INTEGER   l,ij
30      INTEGER :: ijb,ije
31     
32     
33      ijb=ij_begin
34      ije=ij_end
35     
36      if (pole_nord) then
37        DO l = 1,klevel
38           DO ij = 1, iip1
39              unat (ij,l) =0.
40           END DO
41        ENDDO
42      endif
43
44      if (pole_sud) then
45        DO l = 1,klevel
46           DO ij = ip1jm+1, ip1jmp1 
47            unat (ij,l) =0.
48           END DO
49        ENDDO
50      endif
51
52      ijb=ij_begin
53      ije=ij_end
54      if (pole_nord) ijb=ij_begin+iip1
55      if (pole_sud)  ije=ij_end-iip1
56     
57      DO l = 1,klevel
58         DO ij = ijb, ije
59            unat( ij,l ) = ucov( ij,l ) / cu(ij)
60         ENDDO
61      END DO
62
63      ijb=ij_begin
64      ije=ij_end
65      if (pole_sud)  ije=ij_end-iip1
66     
67      DO l = 1,klevel
68         DO ij = ijb,ije
69            vnat( ij,l ) = vcov( ij,l ) / cv(ij)
70         ENDDO
71
72      ENDDO
73     
74      RETURN
75      END
Note: See TracBrowser for help on using the repository browser.