source: LMDZ5/branches/LMDZ6_rc0/libf/dyn3dmem/convmas_loc.F @ 3547

Last change on this file since 3547 was 1910, checked in by Laurent Fairhead, 11 years ago

Merged trunk changes r1860:1909 into testing branch

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
File size: 2.0 KB
Line 
1      SUBROUTINE convmas_loc (pbaru, pbarv, convm )
2c
3      USE parallel_lmdz
4      USE mod_filtreg_p
5      IMPLICIT NONE
6
7c=======================================================================
8c
9c   Auteurs:  P. Le Van , F. Hourdin  .
10c   -------
11c
12c   Objet:
13c   ------
14c
15c   ********************************************************************
16c   .... calcul de la convergence du flux de masse aux niveaux p ...
17c   ********************************************************************
18c
19c
20c     pbaru  et  pbarv  sont des arguments d'entree pour le s-pg  ....
21c      .....  convm      est  un argument de sortie pour le s-pg  ....
22c
23c    le calcul se fait de haut en bas,
24c    la convergence de masse au niveau p(llm+1) est egale a 0. et
25c    n'est pas stockee dans le tableau convm .
26c
27c
28c=======================================================================
29c
30c   Declarations:
31c   -------------
32
33#include "dimensions.h"
34#include "paramet.h"
35#include "comvert.h"
36#include "logic.h"
37
38      REAL pbaru( ijb_u:ije_u,llm ),pbarv( ijb_v:ije_v,llm )
39      REAL, target :: convm(  ijb_u:ije_u,llm )
40      INTEGER   l,ij
41
42      INTEGER ijb,ije,jjb,jje
43 
44     
45c-----------------------------------------------------------------------
46c    ....  calcul de - (d(pbaru)/dx + d(pbarv)/dy ) ......
47
48      CALL  convflu_loc( pbaru, pbarv, llm, convm )
49
50c-----------------------------------------------------------------------
51c   filtrage:
52c   ---------
53       
54       jjb=jj_begin
55       jje=jj_end+1
56       if (pole_sud) jje=jj_end
57 
58       CALL filtreg_p(convm, jjb_u, jje_u,jjb, jje, jjp1, llm,
59     &                 2, 2, .true., 1 )
60
61c    integration de la convergence de masse de haut  en bas ......
62!$OMP BARRIER
63!$OMP MASTER
64       ijb=ij_begin
65       ije=ij_end+iip1
66       if (pole_sud) ije=ij_end
67           
68      DO      l      = llmm1, 1, -1
69        DO    ij     = ijb, ije
70         convm(ij,l) = convm(ij,l) + convm(ij,l+1)
71        ENDDO
72      ENDDO
73c
74!$OMP END MASTER
75!$OMP BARRIER
76      RETURN
77      END
Note: See TracBrowser for help on using the repository browser.