source: LMDZ5/trunk/libf/dyn3dmem/advect_new_mod.F90 @ 1810

Last change on this file since 1810 was 1810, checked in by Ehouarn Millour, 11 years ago

Updating makelmdz and create_makelmdz for :

1 parallelism
2 compilation with various versions of orchidee
3 compilation in 1D mode
4 some cleaning

Also some updates in dyn3dmem:
1 allocate_field_mod.f90 renamed allocate_field_mod.F90
2 module dimensions renamed dimensions_mod
3 module allocate_field renamed allocate_field

FH

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
19  USE dimensions_mod
20  IMPLICIT NONE
21  TYPE(distrib),POINTER :: d
22
23
24    d=>distrib_caldyn
25    CALL allocate_v(dv1,llm,d)
26    CALL allocate_u(du1,llm,d)
27    CALL allocate_u(dteta1,llm,d)
28    CALL allocate_v(dv2,llm,d)
29    CALL allocate_u(du2,llm,d)
30    CALL allocate_u(dteta2,llm,d)
31    CALL allocate_u(uav,llm,d)
32    CALL allocate_v(vav,llm,d)
33 
34   
35  END SUBROUTINE advect_new_allocate
36 
37  SUBROUTINE advect_new_switch_caldyn(dist)
38  USE allocate_field_mod
39  USE bands
40  USE parallel
41  IMPLICIT NONE
42    TYPE(distrib),INTENT(IN) :: dist
43
44    CALL switch_v(dv1,distrib_caldyn,dist)
45    CALL switch_u(du1,distrib_caldyn,dist)
46    CALL switch_u(dteta1,distrib_caldyn,dist)
47    CALL switch_v(dv2,distrib_caldyn,dist)
48    CALL switch_u(du2,distrib_caldyn,dist)
49    CALL switch_u(dteta2,distrib_caldyn,dist)
50    CALL switch_u(uav,distrib_caldyn,dist)
51    CALL switch_v(vav,distrib_caldyn,dist)
52
53  END SUBROUTINE advect_new_switch_caldyn
54 
55END MODULE advect_new_mod 
Note: See TracBrowser for help on using the repository browser.