My Project
 All Classes Files Functions Variables Macros
gradiv.F
Go to the documentation of this file.
1 !
2 ! $Header$
3 !
4  SUBROUTINE gradiv(klevel, xcov, ycov, ld, gdx, gdy )
5 c
6 c Auteur : P. Le Van
7 c
8 c ***************************************************************
9 c
10 c ld
11 c calcul de (grad (div) ) du vect. v ....
12 c
13 c xcov et ycov etant les composant.covariantes de v
14 c ****************************************************************
15 c xcov , ycov et ld sont des arguments d'entree pour le s-prog
16 c gdx et gdy sont des arguments de sortie pour le s-prog
17 c
18 c
19  IMPLICIT NONE
20 c
21 #include "dimensions.h"
22 #include "paramet.h"
23 #include "comdissipn.h"
24 #include "logic.h"
25 
26  INTEGER klevel
27 c
28  REAL xcov( ip1jmp1,klevel ), ycov( ip1jm,klevel )
29  REAL gdx( ip1jmp1,klevel ), gdy( ip1jm,klevel )
30 
31  REAL div(ip1jmp1,llm)
32 
33  INTEGER l,ij,iter,ld
34 c
35 c
36 c
37  CALL scopy( ip1jmp1*klevel,xcov,1,gdx,1 )
38  CALL scopy( ip1jm*klevel, ycov,1,gdy,1 )
39 c
40  DO 10 iter = 1,ld
41 c
42  CALL diverg( klevel, gdx , gdy, div )
43  CALL filtreg( div, jjp1, klevel, 2,1, .true.,2 )
44  CALL grad( klevel, div, gdx, gdy )
45 c
46  DO 5 l = 1, klevel
47  DO 3 ij = 1, ip1jmp1
48  gdx( ij,l ) = - gdx( ij,l ) * cdivu
49  3 CONTINUE
50  DO 4 ij = 1, ip1jm
51  gdy( ij,l ) = - gdy( ij,l ) * cdivu
52  4 CONTINUE
53  5 CONTINUE
54 c
55  10 CONTINUE
56  RETURN
57  END