source: LMDZ4/branches/IPSL-CM4_IPCC_patches/libf/dyn3d/dudv1.F @ 5297

Last change on this file since 5297 was 524, checked in by lmdzadmin, 20 years ago

Initial revision

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1.5 KB
Line 
1!
2! $Header$
3!
4      SUBROUTINE dudv1 ( vorpot, pbaru, pbarv, du, dv )
5      IMPLICIT NONE
6c
7c-----------------------------------------------------------------------
8c
9c   Auteur:   P. Le Van
10c   -------
11c
12c   Objet:
13c   ------
14c   calcul du terme de  rotation
15c   ce terme est ajoute a  d(ucov)/dt et a d(vcov)/dt  ..
16c   vorpot, pbaru et pbarv sont des arguments d'entree  pour le s-pg ..
17c   du  et dv              sont des arguments de sortie pour le s-pg ..
18c
19c-----------------------------------------------------------------------
20
21#include "dimensions.h"
22#include "paramet.h"
23
24      REAL vorpot( ip1jm,llm ) ,pbaru( ip1jmp1,llm ) ,
25     *     pbarv( ip1jm,llm ) ,du( ip1jmp1,llm ) ,dv( ip1jm,llm )
26      INTEGER  l,ij
27c
28c
29      DO 10 l = 1,llm
30c
31      DO 2  ij = iip2, ip1jm - 1
32      du( ij,l ) = 0.125 *(  vorpot(ij-iip1, l) + vorpot( ij, l)  ) *
33     *                    (   pbarv(ij-iip1, l) + pbarv(ij-iim,  l) +
34     *                        pbarv(   ij  , l) + pbarv(ij+ 1 ,  l)   )
35   2  CONTINUE
36c
37      DO 3 ij = 1, ip1jm - 1
38      dv( ij+1,l ) = - 0.125 *(  vorpot(ij, l)  + vorpot(ij+1, l)  ) *
39     *                        (   pbaru(ij, l)  +  pbaru(ij+1   , l) +
40     *                       pbaru(ij+iip1, l)  +  pbaru(ij+iip2, l)  )
41   3  CONTINUE
42c
43c    .... correction  pour  dv( 1,j,l )  .....
44c    ....   dv(1,j,l)= dv(iip1,j,l) ....
45c
46CDIR$ IVDEP
47      DO 4 ij = 1, ip1jm, iip1
48      dv( ij,l ) = dv( ij + iim, l )
49   4  CONTINUE
50c
51  10  CONTINUE
52      RETURN
53      END
Note: See TracBrowser for help on using the repository browser.