source: trunk/LMDZ.MARS/libf/dyn3d/divgrad22.F @ 937

Last change on this file since 937 was 38, checked in by emillour, 14 years ago

Ajout du modè Martien (mon LMDZ.MARS.BETA, du 28/01/2011) dans le rértoire mars, pour pouvoir suivre plus facilement les modifs.
EM

File size: 1.4 KB
Line 
1      SUBROUTINE divgrad2_mars (klevel,h, lh, divgra )
2c
3c  P. Le Van
4c
5c   ************************************************************
6c
7c                                lh
8c        calcul de  (div( grad ))   de h  .....
9c   ************************************************************
10c      h  et lh  sont des arguments  d'entree pour le s-prog
11c      divgra     est  un argument  de sortie pour le s-prog
12c
13      IMPLICIT NONE
14c
15#include "dimensions.h"
16#include "paramet.h"
17#include "comdissipn.h"
18
19      INTEGER klevel
20      REAL h( ip1jmp1,klevel ), divgra( ip1jmp1,klevel )
21c
22      REAL ghy(ip1jm,llm), ghx(ip1jmp1,llm)
23      REAL signe, nudivgrs
24
25      INTEGER  l,ij,iter,lh
26
27      EXTERNAL  filtreg
28      EXTERNAL  SCOPY, grad, covcont, diverg, divergst
29
30
31      signe    = (-1.)**lh
32      nudivgrs = signe * cdivh
33
34      CALL SCOPY ( ip1jmp1*klevel,h,1,divgra,1 )
35
36      DO 2 iter = 1, lh -1
37      CALL grad (klevel,divgra, ghx  , ghy          )
38      CALL divergst (klevel,  ghx , ghy  , divgra       )
39   2  CONTINUE
40
41      CALL filtreg (divgra,jjp1,klevel,2,1,.true.,1)
42      CALL grad  (klevel,divgra, ghx, ghy      )
43      CALL covcont (klevel,ghx   , ghy, ghx ,ghy )
44      CALL diverg  (klevel,ghx   , ghy,divgra    )
45
46      CALL filtreg ( divgra,jjp1,klevel,2,1,.true.,1)
47
48      DO 5 l = 1,klevel
49      DO 4  ij = 1, ip1jmp1
50      divgra( ij,l ) = nudivgrs * divgra( ij,l )
51   4  CONTINUE
52   5  CONTINUE
53
54      RETURN
55      END
Note: See TracBrowser for help on using the repository browser.