/[lmdze]/trunk/libf/dyn3d/covnat.f90
ViewVC logotype

Diff of /trunk/libf/dyn3d/covnat.f90

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

revision 60 by guez, Wed Apr 27 13:00:12 2011 UTC revision 61 by guez, Fri Apr 20 14:58:43 2012 UTC
# Line 1  Line 1 
1  SUBROUTINE covnat(klevel,ucov, vcov, unat, vnat )  module covnat_m
2    
3    ! From LMDZ4/libf/dyn3d/covnat.F,v 1.1.1.1 2004/05/19 12:53:07    IMPLICIT NONE
4    
5    use dimens_m  contains
   use paramet_m  
   use comgeom  
6    
7    IMPLICIT NONE    SUBROUTINE covnat(klevel, ucov, vcov, unat, vnat)
8    
9        ! From LMDZ4/libf/dyn3d/covnat.F, version 1.1.1.1 2004/05/19 12:53:07
10    
11        USE paramet_m, ONLY: iip1, iip2, ip1jm, ip1jmp1
12        USE comgeom, ONLY: cu, cv
13    
14        ! Authors: F. Hourdin, Phu Le Van
15    
16        ! Objet : calcul des composantes naturelles à partir des
17        ! composantes covariantes.
18    
19        INTEGER, intent(in):: klevel
20        REAL, intent(in):: ucov(ip1jmp1, klevel), vcov(ip1jm, klevel)
21        REAL, intent(out):: unat(ip1jmp1, klevel), vnat(ip1jm, klevel)
22    
23        ! Local:
24        INTEGER l, ij
25    
26        !------------------------------------------------------------------
27    
28        DO l = 1, klevel
29           DO ij = 1, iip1
30              unat(ij, l) =0.
31           END DO
32    
33           DO ij = iip2, ip1jm
34              unat(ij, l) = ucov(ij, l) / cu(ij)
35           ENDDO
36    
37           DO ij = ip1jm+1, ip1jmp1
38              unat(ij, l) =0.
39           END DO
40    
41           DO ij = 1, ip1jm
42              vnat(ij, l) = vcov(ij, l) / cv(ij)
43           ENDDO
44        ENDDO
45    
46    !   Auteur:  F Hourdin Phu LeVan    END SUBROUTINE covnat
   !   Objet:  
   !    calcul des compos. naturelles a partir des comp.covariantes  
   
   INTEGER klevel  
   REAL ucov( ip1jmp1,klevel ),  vcov( ip1jm,klevel )  
   REAL unat( ip1jmp1,klevel ), vnat( ip1jm,klevel )  
   INTEGER   l,ij  
   
   !------------------------------------------------------------------  
   
   DO l = 1,klevel  
      DO ij = 1, iip1  
         unat (ij,l) =0.  
      END DO  
   
      DO ij = iip2, ip1jm  
         unat( ij,l ) = ucov( ij,l ) / cu(ij)  
      ENDDO  
   
      DO ij = ip1jm+1, ip1jmp1    
         unat (ij,l) =0.  
      END DO  
   
      DO ij = 1,ip1jm  
         vnat( ij,l ) = vcov( ij,l ) / cv(ij)  
      ENDDO  
   ENDDO  
47    
48  END SUBROUTINE covnat  end module covnat_m

Legend:
Removed from v.60  
changed lines
  Added in v.61

  ViewVC Help
Powered by ViewVC 1.1.21