source: LMDZ6/branches/Amaury_dev/libf/dyn3dmem/advect_new_mod.F90

Last change on this file was 5159, checked in by abarral, 3 months ago

Put dimensions.h and paramet.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.3 KB
Line 
1MODULE advect_new_mod
2
3  REAL,POINTER,SAVE :: dv1(:,:)
4  REAL,POINTER,SAVE :: du1(:,:)
5  REAL,POINTER,SAVE :: dteta1(:,:)
6  REAL,POINTER,SAVE :: dv2(:,:)
7  REAL,POINTER,SAVE :: du2(:,:)
8  REAL,POINTER,SAVE :: dteta2(:,:)
9  REAL,POINTER,SAVE :: uav(:,:)
10  REAL,POINTER,SAVE :: vav(:,:)
11
12 
13CONTAINS
14
15  SUBROUTINE advect_new_allocate
16  USE bands
17  USE allocate_field_mod
18  USE parallel_lmdz
19  USE lmdz_dimensions
20  USE lmdz_paramet
21  IMPLICIT NONE
22  TYPE(distrib),POINTER :: d
23
24
25    d=>distrib_caldyn
26    CALL allocate_v(dv1,llm,d)
27    CALL allocate_u(du1,llm,d)
28    CALL allocate_u(dteta1,llm,d)
29    CALL allocate_v(dv2,llm,d)
30    CALL allocate_u(du2,llm,d)
31    CALL allocate_u(dteta2,llm,d)
32    CALL allocate_u(uav,llm,d)
33    CALL allocate_v(vav,llm,d)
34 
35   
36  END SUBROUTINE advect_new_allocate
37 
38  SUBROUTINE advect_new_switch_caldyn(dist)
39  USE allocate_field_mod
40  USE bands
41  USE parallel_lmdz
42  IMPLICIT NONE
43    TYPE(distrib),INTENT(IN) :: dist
44
45    CALL switch_v(dv1,distrib_caldyn,dist)
46    CALL switch_u(du1,distrib_caldyn,dist)
47    CALL switch_u(dteta1,distrib_caldyn,dist)
48    CALL switch_v(dv2,distrib_caldyn,dist)
49    CALL switch_u(du2,distrib_caldyn,dist)
50    CALL switch_u(dteta2,distrib_caldyn,dist)
51    CALL switch_u(uav,distrib_caldyn,dist)
52    CALL switch_v(vav,distrib_caldyn,dist)
53
54  END SUBROUTINE advect_new_switch_caldyn
55 
56END MODULE advect_new_mod 
Note: See TracBrowser for help on using the repository browser.