SUBROUTINE adv_vert(h,w,dh) IMPLICIT NONE c======================================================================= c c Auteur: P. Le Van c ------- c c Objet: c ------ c c *********************************************************** c .... calcul des termes d'advection vertic. c *********************************************************** c c calcul de - d( h * w )/ d(sigma) qu'on ajoute a dh c c======================================================================= c----------------------------------------------------------------------- c Declarations: c ------------- #include "dimensions.h" #include "paramet.h" #include "comvert.h" c Arguments: c ---------- REAL h(ip1jmp1,llm) REAL w(ip1jmp1,llm) REAL dh(ip1jmp1,llm) c Local: c ------ REAL wsur2(ip1jmp1), unsdsig2(llm), unspbx(ip1jm) REAL deuxjour,ww,gt INTEGER ij,l c----------------------------------------------------------------------- c 2. Calculs preliminaires: c ------------------------- DO 2 l = 1,llm unsdsig2( l ) = 0.5 * dsig1( l ) 2 CONTINUE c----------------------------------------------------------------------- DO l = 1,llmm1 DO ij = 1,ip1jmp1 wsur2( ij ) = - 0.5 * w( ij,l+1 ) ENDDO DO ij = 1,ip1jmp1 ww = wsur2(ij) * ( h(ij,l) + h(ij,l+1) ) dh(ij,l) = dh(ij,l) - dsig1(l) * ww dh(ij,l+1)= dh(ij,l+1) + dsig1(l+1) * ww ENDDO ENDDO RETURN END