1 |
! |
SUBROUTINE vitvert(convm , w) |
|
! $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 |
|
! From libf/dyn3d/vitvert.F, version 1.1.1.1 2004/05/19 12:53:05 |
4 |
|
! Authors: P. Le Van , F. Hourdin |
5 |
|
|
6 |
|
! Objet : calcul de la vitesse verticale aux niveaux sigma |
7 |
|
|
8 |
DO 2 l = 1,llmm1 |
! La vitesse verticale est orientee de haut en bas . |
9 |
|
! au sol, au niveau sigma(1), w(i, j, 1) = 0. |
10 |
DO 1 ij = 1,ip1jmp1 |
! au sommet, au niveau sigma(llm+1) , la vit.verticale est aussi |
11 |
w( ij, l+1 ) = convm( ij, l+1 ) - bp(l+1) * convm( ij, 1 ) |
! egale a 0. et n'est pas stockee dans le tableau w . |
|
1 CONTINUE |
|
|
|
|
|
2 CONTINUE |
|
|
|
|
|
DO 5 ij = 1,ip1jmp1 |
|
|
w(ij,1) = 0. |
|
|
5 CONTINUE |
|
12 |
|
|
13 |
RETURN |
USE dimens_m, ONLY : llm |
14 |
END |
USE paramet_m, ONLY : ip1jmp1 |
15 |
|
USE disvert_m, ONLY : bp |
16 |
|
|
17 |
|
IMPLICIT NONE |
18 |
|
|
19 |
|
real, intent(in):: convm(ip1jmp1, llm) |
20 |
|
REAL, intent(out):: w(ip1jmp1, llm) |
21 |
|
|
22 |
|
! Local: |
23 |
|
INTEGER l |
24 |
|
|
25 |
|
!------------------------------------------------------ |
26 |
|
|
27 |
|
forall (l = 2: llm) w(:, l) = convm(:, l) - bp(l) * convm(:, 1) |
28 |
|
w(:, 1) = 0. |
29 |
|
|
30 |
|
END SUBROUTINE vitvert |