[1632] | 1 | MODULE gradiv2_mod |
---|
| 2 | |
---|
| 3 | REAL,POINTER,SAVE :: gdx( :,: ) |
---|
| 4 | REAL,POINTER,SAVE :: gdy( :,: ) |
---|
| 5 | REAL,POINTER,SAVE :: div( :,: ) |
---|
| 6 | |
---|
| 7 | CONTAINS |
---|
| 8 | |
---|
| 9 | SUBROUTINE gradiv2_allocate |
---|
| 10 | USE bands |
---|
[1810] | 11 | USE allocate_field_mod |
---|
[1823] | 12 | USE parallel_lmdz |
---|
[5272] | 13 | USE dimensions_mod, ONLY: iim, jjm, llm, ndm |
---|
| 14 | IMPLICIT NONE |
---|
[1632] | 15 | TYPE(distrib),POINTER :: d |
---|
| 16 | d=>distrib_dissip |
---|
| 17 | |
---|
| 18 | CALL allocate_u(gdx,llm,d) |
---|
| 19 | CALL allocate_v(gdy,llm,d) |
---|
| 20 | CALL allocate_u(div,llm,d) |
---|
| 21 | |
---|
| 22 | |
---|
| 23 | END SUBROUTINE gradiv2_allocate |
---|
| 24 | |
---|
| 25 | SUBROUTINE gradiv2_switch_dissip(dist) |
---|
[1810] | 26 | USE allocate_field_mod |
---|
[1632] | 27 | USE bands |
---|
[1823] | 28 | USE parallel_lmdz |
---|
[1632] | 29 | IMPLICIT NONE |
---|
| 30 | TYPE(distrib),INTENT(IN) :: dist |
---|
| 31 | |
---|
| 32 | CALL switch_u(gdx,distrib_dissip,dist) |
---|
| 33 | CALL switch_v(gdy,distrib_dissip,dist) |
---|
| 34 | CALL switch_u(div,distrib_dissip,dist) |
---|
| 35 | |
---|
| 36 | |
---|
| 37 | END SUBROUTINE gradiv2_switch_dissip |
---|
| 38 | |
---|
| 39 | END MODULE gradiv2_mod |
---|