source: LMDZ6/branches/Amaury_dev/libf/dyn3dmem/covnat_loc.f90 @ 5153

Last change on this file since 5153 was 5136, checked in by abarral, 3 months ago

Put comgeom.h, comgeom2.h into modules

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
File size: 1.7 KB
Line 
1
2! $Header$
3
4SUBROUTINE covnat_loc(klevel,ucov, vcov, unat, vnat )
5  USE parallel_lmdz
6  USE lmdz_comgeom
7
8  IMPLICIT NONE
9
10  !=======================================================================
11  !
12  !   Auteur:  F Hourdin Phu LeVan
13  !   -------
14  !
15  !   Objet:
16  !   ------
17  !
18  !  *********************************************************************
19  !    calcul des compos. naturelles a partir des comp.covariantes
20  !  ********************************************************************
21  !
22  !=======================================================================
23
24  INCLUDE "dimensions.h"
25  INCLUDE "paramet.h"
26
27  INTEGER :: klevel
28  REAL :: ucov( ijb_u:ije_u,klevel ),  vcov( ijb_v:ije_v,klevel )
29  REAL :: unat( ijb_u:ije_u,klevel ), vnat( ijb_v:ije_v,klevel )
30  INTEGER :: l,ij
31  INTEGER :: ijb,ije
32
33
34  ijb=ij_begin
35  ije=ij_end
36
37  IF (pole_nord) THEN
38!$OMP DO SCHEDULE(STATIC,OMP_CHUNK)
39    DO l = 1,klevel
40       DO ij = 1, iip1
41          unat (ij,l) =0.
42       END DO
43    ENDDO
44!$OMP ENDDO NOWAIT
45  ENDIF
46
47  IF (pole_sud) THEN
48!$OMP DO SCHEDULE(STATIC,OMP_CHUNK)
49    DO l = 1,klevel
50       DO ij = ip1jm+1, ip1jmp1
51        unat (ij,l) =0.
52       END DO
53    ENDDO
54!$OMP ENDDO NOWAIT
55  ENDIF
56
57  ijb=ij_begin
58  ije=ij_end
59  IF (pole_nord) ijb=ij_begin+iip1
60  IF (pole_sud)  ije=ij_end-iip1
61
62!$OMP DO SCHEDULE(STATIC,OMP_CHUNK)
63  DO l = 1,klevel
64     DO ij = ijb, ije
65        unat( ij,l ) = ucov( ij,l ) / cu(ij)
66     ENDDO
67  END DO
68!$OMP ENDDO NOWAIT
69
70  ijb=ij_begin-iip1
71  ije=ij_end
72  IF (pole_nord) ijb=ij_begin
73  IF (pole_sud)  ije=ij_end-iip1
74
75!$OMP DO SCHEDULE(STATIC,OMP_CHUNK)
76  DO l = 1,klevel
77     DO ij = ijb,ije
78        vnat( ij,l ) = vcov( ij,l ) / cv(ij)
79     ENDDO
80  ENDDO
81!$OMP ENDDO NOWAIT
82
83
84END SUBROUTINE covnat_loc
Note: See TracBrowser for help on using the repository browser.