LMDZ
caladvtrac_mod.F90
Go to the documentation of this file.
2 
3  REAL,POINTER,SAVE :: q_adv(:,:,:)
4  REAL,POINTER,SAVE :: massem_adv(:,:)
5  REAL,POINTER,SAVE :: wg_adv(:,:)
6  REAL,POINTER,SAVE :: teta_adv(:,:)
7  REAL,POINTER,SAVE :: p_adv(:,:)
8  REAL,POINTER,SAVE :: pk_adv(:,:)
9  REAL,POINTER,SAVE :: pbarug_adv(:,:)
10  REAL,POINTER,SAVE :: pbarvg_adv(:,:)
11  REAL,POINTER,SAVE :: pbaruc(:,:)
12  REAL,POINTER,SAVE :: pbarvc(:,:)
13  REAL,POINTER,SAVE :: pbarug(:,:)
14  REAL,POINTER,SAVE :: pbarvg(:,:)
15  REAL,POINTER,SAVE :: wg(:,:)
16 
17  REAL,POINTER,SAVE :: massem(:,:)
18 
19 CONTAINS
20 
21  SUBROUTINE caladvtrac_allocate
22  USE bands
24  USE parallel_lmdz
25  USE infotrac
26  USE advtrac_mod, ONLY : advtrac_allocate
27  USE groupe_mod
28  IMPLICIT NONE
29  include "dimensions.h"
30  include "paramet.h"
31  TYPE(distrib),POINTER :: d
32 
34  CALL allocate_u(q_adv,llm,nqtot,d)
35  CALL allocate_u(massem_adv,llm,d)
36  CALL allocate_u(wg_adv,llm,d)
37  CALL allocate_u(teta_adv,llm,d)
38  CALL allocate_u(p_adv,llmp1,d)
39  CALL allocate_u(pk_adv,llm,d)
40  CALL allocate_u(pbarug_adv,llm,d)
41  CALL allocate_v(pbarvg_adv,llm,d)
42 
44  CALL allocate_u(massem,llm,d)
45  CALL allocate_u(pbaruc,llm,d)
46  CALL allocate_v(pbarvc,llm,d)
47  CALL allocate_u(pbarug,llm,d)
48  CALL allocate_v(pbarvg,llm,d)
49  CALL allocate_u(wg,llm,d)
50 
51  CALL groupe_allocate
52  CALL advtrac_allocate
53 
54  END SUBROUTINE caladvtrac_allocate
55 
56  SUBROUTINE caladvtrac_switch_caldyn(dist)
58  USE bands
59  USE parallel_lmdz
60  USE groupe_mod
61  IMPLICIT NONE
62  TYPE(distrib),INTENT(IN) :: dist
63 
64  CALL switch_u(massem,distrib_caldyn,dist)
65  CALL switch_u(pbaruc,distrib_caldyn,dist)
66  CALL switch_v(pbarvc,distrib_caldyn,dist,up=1)
67  CALL switch_u(pbarug,distrib_caldyn,dist)
68  CALL switch_v(pbarvg,distrib_caldyn,dist)
69  CALL switch_u(wg,distrib_caldyn,dist)
70 
71  CALL groupe_switch_caldyn(dist)
72 
73  END SUBROUTINE caladvtrac_switch_caldyn
74 
75  SUBROUTINE caladvtrac_switch_vanleer(dist)
77  USE bands
78  USE parallel_lmdz
80  IMPLICIT NONE
81  TYPE(distrib),INTENT(IN) :: dist
82 
83  CALL switch_u(q_adv,distrib_vanleer,dist)
87  CALL switch_u(p_adv,distrib_vanleer,dist)
91 
92  CALL advtrac_switch_vanleer(dist)
93 
94  END SUBROUTINE caladvtrac_switch_vanleer
95 
96 END MODULE caladvtrac_mod
real, dimension(:,:), pointer, save teta_adv
real, dimension(:,:), pointer, save p_adv
Definition: bands.F90:4
real, dimension(:,:), pointer, save pbarvc
!$Header llmp1
Definition: paramet.h:14
real, dimension(:,:), pointer, save pbarvg_adv
real, dimension(:,:), pointer, save wg
!$Id Turb_fcg_gcssold get_uvd hqturb_gcssold endif!large scale llm day day1 day day1 *dt_toga endif!time annee_ref dt_toga u_toga vq_toga w_prof vq_prof llm day day1 day day1 *dt_dice endif!time annee_ref dt_dice swup_dice vg_dice omega_dice tg_prof vg_profd w_profd omega_profd!do llm!print llm l llm
real, dimension(:,:), pointer, save wg_adv
integer, save nqtot
Definition: infotrac.F90:6
type(distrib), target, save distrib_vanleer
Definition: bands.F90:18
real, dimension(:,:), pointer, save pbaruc
real, dimension(:,:), pointer, save massem_adv
subroutine caladvtrac_allocate
real, dimension(:,:,:), pointer, save q_adv
subroutine groupe_switch_caldyn(dist)
Definition: groupe_mod.F90:27
real, dimension(:,:), pointer, save massem
real, dimension(:,:), pointer, save pbarug_adv
real, dimension(:,:), pointer, save pk_adv
subroutine caladvtrac_switch_vanleer(dist)
real, dimension(:,:), pointer, save pbarug
subroutine caladvtrac_switch_caldyn(dist)
subroutine groupe_allocate
Definition: groupe_mod.F90:9
subroutine advtrac_allocate
Definition: advtrac_mod.F90:8
real, dimension(:,:), pointer, save pbarvg
type(distrib), target, save distrib_caldyn
Definition: bands.F90:17
subroutine advtrac_switch_vanleer(dist)
Definition: advtrac_mod.F90:24