/[lmdze]/trunk/Sources/dyn3d/convmas.f
ViewVC logotype

Diff of /trunk/Sources/dyn3d/convmas.f

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/libf/dyn3d/convmas.f revision 27 by guez, Thu Mar 25 14:29:07 2010 UTC trunk/dyn3d/convmas.f revision 91 by guez, Wed Mar 26 17:18:58 2014 UTC
# Line 1  Line 1 
1  !  module convmas_m
2  ! $Header: /home/cvsroot/LMDZ4/libf/dyn3d/convmas.F,v 1.1.1.1 2004/05/19 12:53:07 lmdzadmin Exp $  
3  !    IMPLICIT NONE
4        SUBROUTINE convmas (pbaru, pbarv, convm )  
5  c  contains
6        use dimens_m  
7        use paramet_m    SUBROUTINE convmas(pbaru, pbarv, convm)
8        use comvert  
9        use logic      ! From LMDZ4/libf/dyn3d/convmas.F, version 1.1.1.1, 2004/05/19 12:53:07
10        use filtreg_m, only: filtreg  
11        IMPLICIT NONE      USE dimens_m, ONLY: llm
12        USE paramet_m, ONLY: ip1jm, ip1jmp1, jjp1, llmm1
13  c=======================================================================      USE filtreg_m, ONLY: filtreg
14  c  
15  c   Auteurs:  P. Le Van , F. Hourdin  .      ! Authors: P. Le Van, F. Hourdin
16  c   -------      ! Objet: calcul de la convergence du flux de masse aux niveaux p
17  c  
18  c   Objet:      ! Le calcul se fait de haut en bas, la convergence de masse au
19  c   ------      ! niveau p(llm+1) est égale à 0 et n'est pas stockée dans le
20  c      ! tableau convm.
21  c   ********************************************************************  
22  c   .... calcul de la convergence du flux de masse aux niveaux p ...      REAL, INTENT(IN):: pbaru(ip1jmp1, llm), pbarv(ip1jm, llm)
23  c   ********************************************************************      REAL, INTENT(OUT):: convm(ip1jmp1, llm)
24  c  
25  c      ! Local:
26  c     pbaru  et  pbarv  sont des arguments d'entree pour le s-pg  ....      INTEGER l, ij
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      ! Calcul de - (d(pbaru)/dx + d(pbarv)/dy) :
31  c    n'est pas stockee dans le tableau convm .      CALL convflu(pbaru, pbarv, llm, convm)
32  c  
33  c      ! Filtrage :
34  c=======================================================================      CALL filtreg(convm, jjp1, llm, 2, 2, .TRUE.)
35  c  
36  c   Declarations:      ! Intégration de la convergence de masse de haut en bas :
37  c   -------------      DO l = llmm1, 1, -1
38           DO ij = 1, ip1jmp1
39              convm(ij, l) = convm(ij, l) + convm(ij, l+1)
40        REAL pbaru( ip1jmp1,llm ),pbarv( ip1jm,llm ),convm(  ip1jmp1,llm )         END DO
41        INTEGER   l,ij      END DO
42    
43      END SUBROUTINE convmas
44  c-----------------------------------------------------------------------  
45  c    ....  calcul de - (d(pbaru)/dx + d(pbarv)/dy ) ......  end module convmas_m
   
       CALL  convflu( pbaru, pbarv, llm, convm )  
   
 c-----------------------------------------------------------------------  
 c   filtrage:  
 c   ---------  
   
        CALL filtreg( convm, jjp1, llm, 2, 2, .true., 1 )  
   
 c    integration de la convergence de masse de haut  en bas ......  
   
       DO      l      = llmm1, 1, -1  
         DO    ij     = 1, ip1jmp1  
          convm(ij,l) = convm(ij,l) + convm(ij,l+1)  
         ENDDO  
       ENDDO  
 c  
       RETURN  
       END  

Legend:
Removed from v.27  
changed lines
  Added in v.91

  ViewVC Help
Powered by ViewVC 1.1.21