source: LMDZ6/branches/Amaury_dev/libf/dyn3dmem/gr_u_scal_loc.f90 @ 5112

Last change on this file since 5112 was 5105, checked in by abarral, 2 months ago

Replace 1DUTILS.h by module lmdz_1dutils.f90
Replace 1DConv.h by module lmdz_old_1dconv.f90 (it's only used by old_* files)
Convert *.F to *.f90
Fix gradsdef.h formatting
Remove unnecessary "RETURN" at the end of functions/subroutines

  • 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.4 KB
Line 
1
2! $Header$
3
4SUBROUTINE gr_u_scal_loc(nx,x_u,x_scal)
5  !%W%    %G%
6  !=======================================================================
7  !
8  !   Author:    Frederic Hourdin      original: 11/11/92
9  !   -------
10  !
11  !   Subject:
12  !   ------
13  !
14  !   Method:
15  !   --------
16  !
17  !   Interface:
18  !   ----------
19  !
20  !  Input:
21  !  ------
22  !
23  !  Output:
24  !  -------
25  !
26  !=======================================================================
27  USE parallel_lmdz
28  IMPLICIT NONE
29  !-----------------------------------------------------------------------
30  !   Declararations:
31  !   ---------------
32
33  INCLUDE "dimensions.h"
34  INCLUDE "paramet.h"
35  INCLUDE "comgeom.h"
36
37  !   Arguments:
38  !   ----------
39
40  INTEGER :: nx
41  REAL :: x_u(ijb_u:ije_u,nx),x_scal(ijb_u:ije_u,nx)
42
43  !   Local:
44  !   ------
45
46  INTEGER :: l,ij
47  INTEGER :: ijb,ije
48
49  !-----------------------------------------------------------------------
50  ijb=ij_begin
51  ije=ij_end
52
53!$OMP DO SCHEDULE(STATIC,OMP_CHUNK)
54  DO l=1,nx
55     DO ij=ijb+1,ije
56        x_scal(ij,l)= &
57              (aireu(ij)*x_u(ij,l)+aireu(ij-1)*x_u(ij-1,l)) &
58              /(aireu(ij)+aireu(ij-1))
59     ENDDO
60  ENDDO
61!$OMP ENDDO NOWAIT
62
63  ijb=ij_begin
64  ije=ij_end
65
66!$OMP DO SCHEDULE(STATIC,OMP_CHUNK)
67  DO l=1,nx
68     DO ij=ijb,ije-iip1+1,iip1
69       x_scal(ij,l)=x_scal(ij+iip1-1,l)
70     ENDDO
71  ENDDO
72!$OMP ENDDO NOWAIT
73
74
75END SUBROUTINE gr_u_scal_loc
Note: See TracBrowser for help on using the repository browser.