source: LMDZ4/branches/pre_V3/libf/dyn3dpar/nxgrad_gam_p.F @ 2440

Last change on this file since 2440 was 630, checked in by Laurent Fairhead, 20 years ago

Import d'une version parallele de la dynamique 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      SUBROUTINE nxgrad_gam_p( klevel, rot, x, y )
2c
3c  P. Le Van
4c
5c   ********************************************************************
6c      calcul du gradient tourne de pi/2 du rotationnel du vect.v
7c   ********************************************************************
8c       rot          est un argument  d'entree pour le s-prog
9c       x  et y    sont des arguments de sortie pour le s-prog
10c
11      USE parallel
12      IMPLICIT NONE
13c
14#include "dimensions.h"
15#include "paramet.h"
16#include "comgeom.h"
17      INTEGER klevel
18      REAL rot( ip1jm,klevel ),x( ip1jmp1,klevel ),y(ip1jm,klevel )
19      INTEGER   l,ij
20      integer ismin,ismax
21      external ismin,ismax
22      INTEGER :: ijb,ije
23c
24      DO 10 l = 1,klevel
25c
26      ijb=ij_begin
27      ije=ij_end
28      if(pole_sud) ije=ij_end-iip1
29     
30      DO 1  ij = ijb+1, ije
31      y( ij,l ) = (rot( ij,l ) - rot( ij-1,l )) * cvscuvgam( ij )
32   1  CONTINUE
33c
34c    ..... correction pour  y ( 1,j,l )  ......
35c
36c    ....    y(1,j,l)= y(iip1,j,l) ....
37CDIR$ IVDEP
38      DO 2  ij = ijb, ije, iip1
39      y( ij,l ) = y( ij +iim,l )
40   2  CONTINUE
41c
42      ijb=ij_begin
43      ije=ij_end+iip1
44      if(pole_nord) ijb=ij_begin+iip1
45      if(pole_sud) ije=ij_end-iip1
46     
47      DO 4  ij = ijb,ije
48      x( ij,l ) = (rot( ij,l ) - rot( ij -iip1,l )) * cuscvugam( ij )
49   4  CONTINUE
50   
51      if (pole_nord) then
52        DO  ij = 1,iip1
53         x(    ij    ,l ) = 0.
54        ENDDO
55      endif
56
57      if (pole_sud) then
58        DO  ij = 1,iip1
59         x( ij +ip1jm,l ) = 0.
60        ENDDO
61      endif
62c
63  10  CONTINUE
64      RETURN
65      END
Note: See TracBrowser for help on using the repository browser.