/[lmdze]/trunk/dyn3d/convmas.f90
ViewVC logotype

Contents of /trunk/dyn3d/convmas.f90

Parent Directory Parent Directory | Revision Log Revision Log


Revision 328 - (show annotations)
Thu Jun 13 14:40:06 2019 UTC (4 years, 11 months ago) by guez
File size: 1167 byte(s)
Change all `.f` suffixes to `.f90`. (The opposite was done in revision
82.)  Because of change of philosopy in GNUmakefile: we already had a
rewritten rule for `.f`, so it does not make the makefile longer to
replace it by a rule for `.f90`. And it spares us options of
makedepf90 and of the compiler. Also we prepare the way for a simpler
`CMakeLists.txt`.

1 module convmas_m
2
3 IMPLICIT NONE
4
5 contains
6
7 SUBROUTINE convmas(pbaru, pbarv, convm)
8
9 ! From LMDZ4/libf/dyn3d/convmas.F, version 1.1.1.1, 2004/05/19 12:53:07
10
11 USE dimensions, ONLY: iim, jjm, llm
12 USE paramet_m, ONLY: ip1jm, ip1jmp1, llmm1
13 USE filtreg_scal_m, ONLY: filtreg_scal
14
15 ! Authors: P. Le Van, F. Hourdin
16 ! 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
19 ! niveau p(llm + 1) est égale à 0 et n'est pas stockée dans le
20 ! tableau convm.
21
22 REAL, INTENT(IN):: pbaru(ip1jmp1, llm), pbarv(ip1jm, llm)
23 REAL, INTENT(OUT):: convm(iim + 1, jjm + 1, llm)
24
25 ! Local:
26 INTEGER l
27
28 !-----------------------------------------------------------------------
29
30 ! Calcul de - (d(pbaru)/dx + d(pbarv)/dy) :
31 CALL convflu(pbaru, pbarv, llm, convm)
32
33 ! Filtrage :
34 CALL filtreg_scal(convm, direct = .true., intensive = .false.)
35
36 ! Intégration de la convergence de masse de haut en bas :
37 DO l = llmm1, 1, -1
38 convm(:, :, l) = convm(:, :, l) + convm(:, :, l + 1)
39 END DO
40
41 END SUBROUTINE convmas
42
43 end module convmas_m

  ViewVC Help
Powered by ViewVC 1.1.21