[1632] | 1 | MODULE vlz_mod |
---|
| 2 | |
---|
[2270] | 3 | REAL,POINTER,SAVE :: wq(:,:,:) |
---|
[1632] | 4 | REAL,POINTER,SAVE :: dzq(:,:) |
---|
| 5 | REAL,POINTER,SAVE :: dzqw(:,:) |
---|
| 6 | REAL,POINTER,SAVE :: adzqw(:,:) |
---|
[4050] | 7 | ! CRisi: pour les traceurs: |
---|
[2270] | 8 | REAL,POINTER,SAVE :: Ratio(:,:,:) |
---|
[1632] | 9 | |
---|
| 10 | CONTAINS |
---|
| 11 | |
---|
| 12 | SUBROUTINE vlz_allocate |
---|
| 13 | USE bands |
---|
[1810] | 14 | USE allocate_field_mod |
---|
[1823] | 15 | USE parallel_lmdz |
---|
[5182] | 16 | USE lmdz_infotrac |
---|
[5159] | 17 | USE lmdz_dimensions |
---|
| 18 | USE lmdz_paramet |
---|
[1632] | 19 | IMPLICIT NONE |
---|
| 20 | TYPE(distrib),POINTER :: d |
---|
| 21 | |
---|
| 22 | d=>distrib_vanleer |
---|
[2270] | 23 | CALL allocate_u(wq,llm+1,nqtot,d) |
---|
[1632] | 24 | CALL allocate_u(dzq,llm,d) |
---|
| 25 | CALL allocate_u(dzqw,llm,d) |
---|
| 26 | CALL allocate_u(adzqw,llm,d) |
---|
[4050] | 27 | IF(ANY(tracers(:)%nqDescen > 0)) CALL allocate_u(Ratio,llm,nqtot,d) |
---|
[1632] | 28 | |
---|
| 29 | END SUBROUTINE vlz_allocate |
---|
| 30 | |
---|
| 31 | SUBROUTINE vlz_switch_vanleer(dist) |
---|
[1810] | 32 | USE allocate_field_mod |
---|
[1632] | 33 | USE bands |
---|
[1823] | 34 | USE parallel_lmdz |
---|
[5182] | 35 | USE lmdz_infotrac |
---|
[1632] | 36 | IMPLICIT NONE |
---|
| 37 | TYPE(distrib),INTENT(IN) :: dist |
---|
| 38 | |
---|
| 39 | CALL switch_u(wq,distrib_vanleer,dist) |
---|
| 40 | CALL switch_u(dzq,distrib_vanleer,dist) |
---|
| 41 | CALL switch_u(dzqw,distrib_vanleer,dist) |
---|
| 42 | CALL switch_u(adzqw,distrib_vanleer,dist) |
---|
[4050] | 43 | IF(ANY(tracers(:)%nqDescen > 0)) CALL switch_u(Ratio,distrib_vanleer,dist) |
---|
[1632] | 44 | |
---|
| 45 | END SUBROUTINE vlz_switch_vanleer |
---|
| 46 | |
---|
| 47 | END MODULE vlz_mod |
---|