source: LMDZ5/trunk/libf/dyn3dmem/vlz_mod.F90 @ 1782

Last change on this file since 1782 was 1632, checked in by Laurent Fairhead, 12 years ago

Import initial du répertoire dyn3dmem

Attention! ceci n'est qu'une version préliminaire du code "basse mémoire":
le code contenu dans ce répertoire est basé sur la r1320 et a donc besoin
d'être mis à jour par rapport à la dynamique parallèle d'aujourd'hui.
Ce code est toutefois mis à disposition pour circonvenir à des problèmes
de mémoire que certaines configurations du modèle pourraient rencontrer.
Dans l'état, il compile et tourne sur vargas et au CCRT


Initial import of dyn3dmem

Warning! this is just a preliminary version of the memory light code:
it is based on r1320 of the code and thus needs to be updated before
it can replace the present dyn3dpar code. It is nevertheless put at your
disposal to circumvent some memory problems some LMDZ configurations may
encounter. In its present state, it will compile and run on vargas and CCRT

File size: 883 bytes
Line 
1MODULE vlz_mod
2
3  REAL,POINTER,SAVE :: wq(:,:)
4  REAL,POINTER,SAVE :: dzq(:,:)
5  REAL,POINTER,SAVE :: dzqw(:,:)
6  REAL,POINTER,SAVE :: adzqw(:,:)
7 
8CONTAINS
9
10  SUBROUTINE vlz_allocate
11  USE bands
12  USE allocate_field
13  USE parallel
14  USE infotrac
15  USE dimensions
16  IMPLICIT NONE
17  TYPE(distrib),POINTER :: d
18   
19    d=>distrib_vanleer
20    CALL allocate_u(wq,llm+1,d)
21    CALL allocate_u(dzq,llm,d)
22    CALL allocate_u(dzqw,llm,d)
23    CALL allocate_u(adzqw,llm,d)
24
25  END SUBROUTINE vlz_allocate
26 
27  SUBROUTINE vlz_switch_vanleer(dist)
28  USE allocate_field
29  USE bands
30  USE parallel
31  IMPLICIT NONE
32    TYPE(distrib),INTENT(IN) :: dist
33 
34    CALL switch_u(wq,distrib_vanleer,dist)
35    CALL switch_u(dzq,distrib_vanleer,dist)
36    CALL switch_u(dzqw,distrib_vanleer,dist)
37    CALL switch_u(adzqw,distrib_vanleer,dist)
38
39  END SUBROUTINE vlz_switch_vanleer 
40 
41END MODULE vlz_mod 
Note: See TracBrowser for help on using the repository browser.