/[lmdze]/trunk/dyn3d/vitvert.f
ViewVC logotype

Diff of /trunk/dyn3d/vitvert.f

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

trunk/libf/dyn3d/vitvert.f revision 3 by guez, Wed Feb 27 13:16:39 2008 UTC trunk/dyn3d/vitvert.f revision 254 by guez, Mon Feb 5 10:39:38 2018 UTC
# Line 1  Line 1 
1  !  module vitvert_m
 ! $Header: /home/cvsroot/LMDZ4/libf/dyn3d/vitvert.F,v 1.1.1.1 2004/05/19 12:53:05 lmdzadmin Exp $  
 !  
       SUBROUTINE vitvert ( convm , w )  
 c  
   
 c=======================================================================  
 c  
 c   Auteurs:  P. Le Van , F. Hourdin .  
 c   -------  
 c  
 c   Objet:  
 c   ------  
 c  
 c    *******************************************************************  
 c  .... calcul de la vitesse verticale aux niveaux sigma  ....  
 c    *******************************************************************  
 c     convm   est un argument  d'entree pour le s-pg  ......  
 c       w     est un argument de sortie pour le s-pg  ......  
 c  
 c    la vitesse verticale est orientee de  haut en bas .  
 c    au sol, au niveau sigma(1),   w(i,j,1) = 0.  
 c    au sommet, au niveau sigma(llm+1) , la vit.verticale est aussi  
 c    egale a 0. et n'est pas stockee dans le tableau w  .  
 c  
 c  
 c=======================================================================  
   
       use dimens_m  
       use paramet_m  
       use comvert  
       IMPLICIT NONE  
   
       REAL w(ip1jmp1,llm),convm(ip1jmp1,llm)  
       INTEGER   l, ij  
2    
3      IMPLICIT NONE
4    
5    contains
6    
7        DO 2  l = 1,llmm1    pure function vitvert(convm)
   
       DO 1 ij = 1,ip1jmp1  
       w( ij, l+1 ) = convm( ij, l+1 ) - bp(l+1) * convm( ij, 1 )  
    1  CONTINUE  
   
    2  CONTINUE  
   
       DO 5 ij  = 1,ip1jmp1  
       w(ij,1)  = 0.  
 5     CONTINUE  
8    
9        RETURN      ! From libf/dyn3d/vitvert.F, version 1.1.1.1, 2004/05/19 12:53:05
10        END      ! Authors: P. Le Van, F. Hourdin
11    
12        ! Purpose: Compute vertical speed at sigma levels.
13    
14        ! Vertical speed is oriented from bottom to top. At ground-level
15        ! sigma(1): vitvert(i, j, 1) = 0. At top-level sigma(llm + 1), vertical
16        ! speed is 0 too and is not stored in vitvert.
17        
18        USE dimens_m, ONLY : llm
19        USE disvert_m, ONLY : bp
20    
21        real, intent(in):: convm(:, :, :) ! (iim + 1, jjm + 1, llm)
22        REAL vitvert(size(convm, 1), size(convm, 2), size(convm, 3))
23    
24        ! Local:
25        INTEGER l
26    
27        !------------------------------------------------------
28    
29        forall (l = 2: llm) &
30             vitvert(:, :, l) = convm(:, :, l) - bp(l) * convm(:, :, 1)
31        vitvert(:, :, 1) = 0.
32    
33      END function vitvert
34    
35    end module vitvert_m

Legend:
Removed from v.3  
changed lines
  Added in v.254

  ViewVC Help
Powered by ViewVC 1.1.21