source: LMDZ.3.3/trunk/libf/dyn3d/advertF

Last change on this file was 2, checked in by lmdz, 25 years ago

Initial revision

  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 1.5 KB
Line 
1      SUBROUTINE adv_vert(h,w,dh)
2      IMPLICIT NONE
3c=======================================================================
4c
5c   Auteur:  P. Le Van
6c   -------
7c
8c   Objet:
9c   ------
10c
11c   ***********************************************************
12c   .... calcul des termes d'advection vertic.
13c   ***********************************************************
14c
15c       calcul de  - d( h  * w )/ d(sigma)     qu'on ajoute a   dh
16c
17c=======================================================================
18c-----------------------------------------------------------------------
19c   Declarations:
20c   -------------
21
22#include "dimensions.h"
23#include "paramet.h"
24#include "comvert.h"
25
26c   Arguments:
27c   ----------
28
29      REAL h(ip1jmp1,llm)
30      REAL w(ip1jmp1,llm)
31      REAL dh(ip1jmp1,llm)
32
33c   Local:
34c   ------
35
36      REAL wsur2(ip1jmp1), unsdsig2(llm), unspbx(ip1jm)
37      REAL deuxjour,ww,gt
38
39      INTEGER  ij,l
40
41c-----------------------------------------------------------------------
42c   2. Calculs preliminaires:
43c   -------------------------
44
45      DO 2 l = 1,llm
46      unsdsig2( l ) = 0.5 * dsig1( l )
47   2  CONTINUE
48
49
50c-----------------------------------------------------------------------
51
52      DO l = 1,llmm1
53
54         DO ij = 1,ip1jmp1
55         wsur2( ij ) = - 0.5 * w( ij,l+1 )
56         ENDDO
57   
58         DO ij = 1,ip1jmp1
59             ww        = wsur2(ij) * ( h(ij,l) + h(ij,l+1) )
60             dh(ij,l)  = dh(ij,l)   - dsig1(l)   * ww
61             dh(ij,l+1)= dh(ij,l+1) + dsig1(l+1) * ww
62         ENDDO
63   
64      ENDDO
65
66      RETURN
67      END
Note: See TracBrowser for help on using the repository browser.