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

Diff of /trunk/dyn3d/dudv2.f

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

trunk/libf/dyn3d/dudv2.f revision 3 by guez, Wed Feb 27 13:16:39 2008 UTC trunk/dyn3d/dudv2.f revision 82 by guez, Wed Mar 5 14:57:53 2014 UTC
# Line 1  Line 1 
1  !  
2  ! $Header: /home/cvsroot/LMDZ4/libf/dyn3d/dudv2.F,v 1.1.1.1 2004/05/19 12:53:06 lmdzadmin Exp $  ! $Header: /home/cvsroot/LMDZ4/libf/dyn3d/dudv2.F,v 1.1.1.1 2004/05/19
3  !  ! 12:53:06 lmdzadmin Exp $
4        SUBROUTINE dudv2 ( teta, pkf, bern, du, dv  )  
5    SUBROUTINE dudv2(teta, pkf, bern, du, dv)
6        use dimens_m  
7        use paramet_m    USE dimens_m
8        use comvert    USE paramet_m
9        IMPLICIT NONE    USE disvert_m
10  c    IMPLICIT NONE
11  c=======================================================================  
12  c    ! =======================================================================
13  c   Auteur:  P. Le Van  
14  c   -------    ! Auteur:  P. Le Van
15  c    ! -------
16  c   Objet:  
17  c   ------    ! Objet:
18  c    ! ------
19  c   *****************************************************************  
20  c   ..... calcul du terme de pression (gradient de p/densite )   et    ! *****************************************************************
21  c          du terme de ( -gradient de la fonction de Bernouilli ) ...    ! ..... calcul du terme de pression (gradient de p/densite )   et
22  c   *****************************************************************    ! du terme de ( -gradient de la fonction de Bernouilli ) ...
23  c          Ces termes sont ajoutes a  d(ucov)/dt et a d(vcov)/dt  ..    ! *****************************************************************
24  c    ! Ces termes sont ajoutes a  d(ucov)/dt et a d(vcov)/dt  ..
25  c  
26  c    teta , pkf, bern  sont des arguments d'entree  pour le s-pg  ....  
27  c    du et dv          sont des arguments de sortie pour le s-pg  ....    ! teta , pkf, bern  sont des arguments d'entree  pour le s-pg  ....
28  c    ! du et dv          sont des arguments de sortie pour le s-pg  ....
29  c=======================================================================  
30  c    ! =======================================================================
31    
32        REAL teta( ip1jmp1,llm ),pkf( ip1jmp1,llm ) ,bern( ip1jmp1,llm ),  
33       *         du( ip1jmp1,llm ),  dv( ip1jm,llm )    REAL, INTENT (IN) :: teta(ip1jmp1, llm)
34        INTEGER  l,ij    REAL pkf(ip1jmp1, llm), bern(ip1jmp1, llm), du(ip1jmp1, llm), &
35  c      dv(ip1jm, llm)
36  c    INTEGER l, ij
37        DO 5 l = 1,llm  
38  c  
39        DO 2  ij  = iip2, ip1jm - 1    DO l = 1, llm
40         du(ij,l) = du(ij,l) + 0.5* ( teta( ij,l ) + teta( ij+1,l ) ) *  
41       * ( pkf( ij,l ) - pkf(ij+1,l) )  + bern(ij,l) - bern(ij+1,l)      DO ij = iip2, ip1jm - 1
42     2  CONTINUE        du(ij, l) = du(ij, l) + 0.5*(teta(ij,l)+teta(ij+1,l))*(pkf(ij,l)-pkf(ij &
43  c          +1,l)) + bern(ij, l) - bern(ij+1, l)
44  c      END DO
45  c    .....  correction  pour du(iip1,j,l),  j=2,jjm   ......  
46  c    ...          du(iip1,j,l) = du(1,j,l)                 ...  
47  c      ! .....  correction  pour du(iip1,j,l),  j=2,jjm   ......
48  CDIR$ IVDEP      ! ...          du(iip1,j,l) = du(1,j,l)                 ...
49        DO 3 ij = iip1+ iip1, ip1jm, iip1  
50        du( ij,l ) = du( ij - iim,l )      ! DIR$ IVDEP
51     3  CONTINUE      DO ij = iip1 + iip1, ip1jm, iip1
52  c        du(ij, l) = du(ij-iim, l)
53  c      END DO
54        DO 4 ij  = 1,ip1jm  
55        dv( ij,l) = dv(ij,l) + 0.5 * ( teta(ij,l) + teta( ij+iip1,l ) ) *  
56       *                             ( pkf(ij+iip1,l) - pkf(  ij,l  ) )      DO ij = 1, ip1jm
57       *                           +   bern( ij+iip1,l ) - bern( ij  ,l )        dv(ij, l) = dv(ij, l) + 0.5*(teta(ij,l)+teta(ij+iip1,l))*(pkf(ij+iip1,l &
58     4  CONTINUE          )-pkf(ij,l)) + bern(ij+iip1, l) - bern(ij, l)
59  c      END DO
60     5  CONTINUE  
61  c    END DO
62        RETURN  
63        END    RETURN
64    END SUBROUTINE dudv2

Legend:
Removed from v.3  
changed lines
  Added in v.82

  ViewVC Help
Powered by ViewVC 1.1.21