source: LMDZ.3.3/branches/rel-LF/libf/dyn3d/advection.F @ 468

Last change on this file since 468 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: 2.5 KB
Line 
1      SUBROUTINE advection
2     $ (ucov,vcov,h,pext,pks,pksf,phis,phi,conser,du,dv,dh,dp)
3      IMPLICIT NONE
4
5c=======================================================================
6c
7c  P. Le Van
8c
9c   Objet:
10c   ------
11c
12c   Calcul des tendances dynamiques.
13c
14c=======================================================================
15
16c-----------------------------------------------------------------------
17c   0. Declarations:
18c   ----------------
19
20#include "dimensions.h"
21#include "paramet.h"
22#include "comconst.h"
23#include "comvert.h"
24#include "comgeom.h"
25
26c   Arguments:
27c   ----------
28
29      LOGICAL conser
30
31      REAL vcov(ip1jm,llm),ucov(ip1jmp1,llm),h(ip1jmp1,llm)
32      REAL pext(ip1jmp1),pks(ip1jmp1),pksf(ip1jmp1),phis(ip1jmp1)
33      REAL vcont(ip1jm,llm),ucont(ip1jmp1,llm)
34      REAL phi(ip1jmp1,llm)
35      REAL dv(ip1jm,llm),du(ip1jmp1,llm)
36      REAL dh(ip1jmp1,llm),dp(ip1jmp1)
37
38c   Local:
39c   ------
40
41      REAL pbarx(ip1jmp1),pbary(ip1jm),pbarxy(ip1jm)
42      REAL pbaru(ip1jmp1,llm),pbarv(ip1jm,llm),vorpot(ip1jm,llm)
43      REAL w(ip1jmp1,llm),ecin(ip1jmp1,llm),convm(ip1jmp1,llm)
44      REAL bern(ip1jmp1,llm)
45
46      INTEGER ij
47      EXTERNAL  advect,bernoui,convmas,covcont,dhdq1,dudv1,dudv2,
48     *          enercin,flumass,pbar,tourpot,vitvert,sortvarc
49
50c-----------------------------------------------------------------------
51c   calcul des tendances dynamiques:
52c   --------------------------------
53
54      CALL covcont (llm,ucov , vcov , ucont, vcont               )
55      CALL pbar    ( pext ,pbarx , pbary, pbarxy              )
56      CALL flumass ( pbarx, pbary, vcont, ucont ,pbaru, pbarv )
57      CALL dhdq1   (   h  , pbaru, pbarv,  dh                 )
58      CALL convmas ( pbaru, pbarv, convm                      )
59
60      DO 10  ij = 1, ip1jmp1
61      dp( ij ) = convm( ij,1 )
62  10  CONTINUE
63
64      CALL vitvert ( convm , w                              )
65      CALL tourpot ( vcov  , ucov  , pbarxy  , vorpot       )
66      CALL dudv1   ( vorpot, pbaru , pbarv   , du    , dv   )
67      CALL enercin ( vcov  , ucov  , vcont   , ucont , ecin )
68      CALL bernoui ( ip1jmp1,llm,phi   , ecin  , bern       )
69      CALL dudv2   ( h     , pksf  , bern    , du    , dv   )
70
71      CALL advect  ( ucov,vcov,h,w,pbarx,pbary,du,dv,dh     )
72
73c-----------------------------------------------------------------------
74c   sorties eventuelles des variables de controle:
75c   ----------------------------------------------
76
77      IF (conser) CALL sortvarc
78     $   (ucov,h,pext,pks,phis,pbarx,pbarxy,vorpot,phi,bern,dp)
79
80      RETURN
81      END
Note: See TracBrowser for help on using the repository browser.