1 |
! |
2 |
! $Header: /home/cvsroot/LMDZ4/libf/dyn3d/convmas.F,v 1.1.1.1 2004/05/19 12:53:07 lmdzadmin Exp $ |
3 |
! |
4 |
SUBROUTINE convmas (pbaru, pbarv, convm ) |
5 |
c |
6 |
use dimens_m |
7 |
use paramet_m |
8 |
use comvert |
9 |
use conf_gcm_m |
10 |
use filtreg_m, only: filtreg |
11 |
IMPLICIT NONE |
12 |
|
13 |
c======================================================================= |
14 |
c |
15 |
c Auteurs: P. Le Van , F. Hourdin . |
16 |
c ------- |
17 |
c |
18 |
c Objet: |
19 |
c ------ |
20 |
c |
21 |
c ******************************************************************** |
22 |
c .... calcul de la convergence du flux de masse aux niveaux p ... |
23 |
c ******************************************************************** |
24 |
c |
25 |
c |
26 |
c pbaru et pbarv sont des arguments d'entree pour le s-pg .... |
27 |
c ..... convm est un argument de sortie pour le s-pg .... |
28 |
c |
29 |
c le calcul se fait de haut en bas, |
30 |
c la convergence de masse au niveau p(llm+1) est egale a 0. et |
31 |
c n'est pas stockee dans le tableau convm . |
32 |
c |
33 |
c |
34 |
c======================================================================= |
35 |
c |
36 |
c Declarations: |
37 |
c ------------- |
38 |
|
39 |
|
40 |
REAL, intent(in):: pbaru( ip1jmp1,llm ),pbarv( ip1jm,llm ) |
41 |
real, intent(out):: convm( ip1jmp1,llm ) |
42 |
INTEGER l,ij |
43 |
|
44 |
|
45 |
c----------------------------------------------------------------------- |
46 |
c .... calcul de - (d(pbaru)/dx + d(pbarv)/dy ) ...... |
47 |
|
48 |
CALL convflu( pbaru, pbarv, llm, convm ) |
49 |
|
50 |
c----------------------------------------------------------------------- |
51 |
c filtrage: |
52 |
c --------- |
53 |
|
54 |
CALL filtreg( convm, jjp1, llm, 2, 2, .true.) |
55 |
|
56 |
c integration de la convergence de masse de haut en bas ...... |
57 |
|
58 |
DO l = llmm1, 1, -1 |
59 |
DO ij = 1, ip1jmp1 |
60 |
convm(ij,l) = convm(ij,l) + convm(ij,l+1) |
61 |
ENDDO |
62 |
ENDDO |
63 |
c |
64 |
RETURN |
65 |
END |