source: LMDZ5/trunk/libf/dyn3dmem/convmas_loc.F90 @ 5440

Last change on this file since 5440 was 2603, checked in by Ehouarn Millour, 8 years ago

Cleanup in the dynamics: turn logic.h into module logic_mod.F90
EM

  • 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: 1.6 KB
RevLine 
[2336]1SUBROUTINE convmas_loc (pbaru, pbarv, convm)
2!
3!-------------------------------------------------------------------------------
4! Authors: P. Le Van , Fr. Hourdin.
5!-------------------------------------------------------------------------------
6! Purpose: Compute mass flux convergence at p levels.
7  USE parallel_lmdz
8  USE mod_filtreg_p
9  IMPLICIT NONE
10  include "dimensions.h"
11  include "paramet.h"
12  include "comgeom.h"
13!===============================================================================
14! Arguments:
15  REAL, INTENT(IN)  :: pbaru(ijb_u:ije_u,llm)
16  REAL, INTENT(IN)  :: pbarv(ijb_v:ije_v,llm)
17  REAL, INTENT(OUT) :: convm(ijb_u:ije_u,llm)
18!===============================================================================
19! Method used:   Computation from top to bottom.
20!   Mass convergence at level llm is equal to zero and is not stored in convm.
21!===============================================================================
22! Local variables:
23  INTEGER :: l, ijb, ije, jjb, jje
24!===============================================================================
[1632]25
[2336]26!--- Computation of - (d(pbaru)/dx + d(pbarv)/dy )
27  CALL convflu_loc( pbaru, pbarv, llm, convm )
[1632]28
[2336]29!--- Filter
30  jjb=jj_begin
31  jje=jj_end+1
32  IF(pole_sud) jje=jj_end
33  CALL filtreg_p(convm,jjb_u,jje_u,jjb,jje,jjp1,llm,2,2,.TRUE.,1)
[1632]34
[2336]35!--- Mass convergence is integrated from top to bottom
[1632]36!$OMP BARRIER
37!$OMP MASTER
[2336]38  ijb=ij_begin
39  ije=ij_end+iip1
40  IF(pole_sud) ije=ij_end
41  DO l=llmm1,1,-1
42    convm(ijb:ije,l) = convm(ijb:ije,l) + convm(ijb:ije,l+1)
43  END DO
[1632]44!$OMP END MASTER
45!$OMP BARRIER
[2336]46
47END SUBROUTINE convmas_loc
48
Note: See TracBrowser for help on using the repository browser.