8 |
|
|
9 |
! From LMDZ4/libf/dyn3d/convmas.F, version 1.1.1.1, 2004/05/19 12:53:07 |
! From LMDZ4/libf/dyn3d/convmas.F, version 1.1.1.1, 2004/05/19 12:53:07 |
10 |
|
|
11 |
USE dimens_m, ONLY: iim, jjm, llm |
USE dimensions, ONLY: iim, jjm, llm |
12 |
USE paramet_m, ONLY: ip1jm, ip1jmp1, jjp1, llmm1 |
USE paramet_m, ONLY: ip1jm, ip1jmp1, llmm1 |
13 |
USE filtreg_m, ONLY: filtreg |
USE filtreg_scal_m, ONLY: filtreg_scal |
14 |
|
|
15 |
! Authors: P. Le Van, F. Hourdin |
! Authors: P. Le Van, F. Hourdin |
16 |
! Objet: calcul de la convergence du flux de masse aux niveaux p |
! Objet: calcul de la convergence du flux de masse aux niveaux p |
17 |
|
|
18 |
! Le calcul se fait de haut en bas, la convergence de masse au |
! Le calcul se fait de haut en bas, la convergence de masse au |
19 |
! niveau p(llm+1) est égale à 0 et n'est pas stockée dans le |
! niveau p(llm + 1) est égale à 0 et n'est pas stockée dans le |
20 |
! tableau convm. |
! tableau convm. |
21 |
|
|
22 |
REAL, INTENT(IN):: pbaru(ip1jmp1, llm), pbarv(ip1jm, llm) |
REAL, INTENT(IN):: pbaru(ip1jmp1, llm), pbarv(ip1jm, llm) |
31 |
CALL convflu(pbaru, pbarv, llm, convm) |
CALL convflu(pbaru, pbarv, llm, convm) |
32 |
|
|
33 |
! Filtrage : |
! Filtrage : |
34 |
CALL filtreg(convm, direct = .true., intensive = .false.) |
CALL filtreg_scal(convm, direct = .true., intensive = .false.) |
35 |
|
|
36 |
! Intégration de la convergence de masse de haut en bas : |
! Intégration de la convergence de masse de haut en bas : |
37 |
DO l = llmm1, 1, -1 |
DO l = llmm1, 1, -1 |
38 |
convm(:, :, l) = convm(:, :, l) + convm(:, :, l+1) |
convm(:, :, l) = convm(:, :, l) + convm(:, :, l + 1) |
39 |
END DO |
END DO |
40 |
|
|
41 |
END SUBROUTINE convmas |
END SUBROUTINE convmas |