/[lmdze]/trunk/dyn3d/dudv1.f
ViewVC logotype

Diff of /trunk/dyn3d/dudv1.f

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/dyn3d/dudv1.f revision 76 by guez, Fri Nov 15 18:45:49 2013 UTC trunk/dyn3d/dudv1.f90 revision 81 by guez, Wed Mar 5 14:38:41 2014 UTC
# Line 1  Line 1 
1  !  
2  ! $Header: /home/cvsroot/LMDZ4/libf/dyn3d/dudv1.F,v 1.1.1.1 2004/05/19 12:53:06 lmdzadmin Exp $  ! $Header: /home/cvsroot/LMDZ4/libf/dyn3d/dudv1.F,v 1.1.1.1 2004/05/19
3  !  ! 12:53:06 lmdzadmin Exp $
4        SUBROUTINE dudv1 ( vorpot, pbaru, pbarv, du, dv )  
5        use dimens_m  SUBROUTINE dudv1(vorpot, pbaru, pbarv, du, dv)
6        use paramet_m    USE dimens_m
7        IMPLICIT NONE    USE paramet_m
8  c    IMPLICIT NONE
9  c-----------------------------------------------------------------------  
10  c    ! -----------------------------------------------------------------------
11  c   Auteur:   P. Le Van  
12  c   -------    ! Auteur:   P. Le Van
13  c    ! -------
14  c   Objet:  
15  c   ------    ! Objet:
16  c   calcul du terme de  rotation    ! ------
17  c   ce terme est ajoute a  d(ucov)/dt et a d(vcov)/dt  ..    ! calcul du terme de  rotation
18  c   vorpot, pbaru et pbarv sont des arguments d'entree  pour le s-pg ..    ! ce terme est ajoute a  d(ucov)/dt et a d(vcov)/dt  ..
19  c   du  et dv              sont des arguments de sortie pour le s-pg ..    ! vorpot, pbaru et pbarv sont des arguments d'entree  pour le s-pg ..
20  c    ! du  et dv              sont des arguments de sortie pour le s-pg ..
21  c-----------------------------------------------------------------------  
22      ! -----------------------------------------------------------------------
23    
24        REAL vorpot( ip1jm,llm ) ,pbaru( ip1jmp1,llm ) ,  
25       *     pbarv( ip1jm,llm ) ,du( ip1jmp1,llm ) ,dv( ip1jm,llm )    REAL vorpot(ip1jm, llm), pbaru(ip1jmp1, llm), pbarv(ip1jm, llm), &
26        INTEGER  l,ij      du(ip1jmp1, llm), dv(ip1jm, llm)
27  c    INTEGER l, ij
28  c  
29        DO 10 l = 1,llm  
30  c    DO l = 1, llm
31        DO 2  ij = iip2, ip1jm - 1  
32        du( ij,l ) = 0.125 *(  vorpot(ij-iip1, l) + vorpot( ij, l)  ) *      DO ij = iip2, ip1jm - 1
33       *                    (   pbarv(ij-iip1, l) + pbarv(ij-iim,  l) +        du(ij, l) = 0.125*(vorpot(ij-iip1,l)+vorpot(ij,l))* &
34       *                        pbarv(   ij  , l) + pbarv(ij+ 1 ,  l)   )          (pbarv(ij-iip1,l)+pbarv(ij-iim,l)+pbarv(ij,l)+pbarv(ij+1,l))
35     2  CONTINUE      END DO
36  c  
37        DO 3 ij = 1, ip1jm - 1      DO ij = 1, ip1jm - 1
38        dv( ij+1,l ) = - 0.125 *(  vorpot(ij, l)  + vorpot(ij+1, l)  ) *        dv(ij+1, l) = -0.125*(vorpot(ij,l)+vorpot(ij+1,l))*(pbaru(ij,l)+pbaru( &
39       *                        (   pbaru(ij, l)  +  pbaru(ij+1   , l) +          ij+1,l)+pbaru(ij+iip1,l)+pbaru(ij+iip2,l))
40       *                       pbaru(ij+iip1, l)  +  pbaru(ij+iip2, l)  )      END DO
41     3  CONTINUE  
42  c      ! .... correction  pour  dv( 1,j,l )  .....
43  c    .... correction  pour  dv( 1,j,l )  .....      ! ....   dv(1,j,l)= dv(iip1,j,l) ....
44  c    ....   dv(1,j,l)= dv(iip1,j,l) ....  
45  c      ! DIR$ IVDEP
46  CDIR$ IVDEP      DO ij = 1, ip1jm, iip1
47        DO 4 ij = 1, ip1jm, iip1        dv(ij, l) = dv(ij+iim, l)
48        dv( ij,l ) = dv( ij + iim, l )      END DO
49     4  CONTINUE  
50  c    END DO
51    10  CONTINUE    RETURN
52        RETURN  END SUBROUTINE dudv1
       END  

Legend:
Removed from v.76  
changed lines
  Added in v.81

  ViewVC Help
Powered by ViewVC 1.1.21