MODULE integrd_mod REAL,POINTER,SAVE :: p(:,:) REAL,POINTER,SAVE :: deltap(:,:) REAL,POINTER,SAVE :: ps(:) CONTAINS SUBROUTINE integrd_allocate USE bands USE allocate_field_mod USE parallel_lmdz USE dimensions_mod USE advect_new_mod,ONLY : advect_new_allocate IMPLICIT NONE TYPE(distrib),POINTER :: d d=>distrib_caldyn CALL allocate_u(p,llmp1,d) CALL allocate_u(deltap,llm,d) CALL allocate_u(ps,d) ps(:)=0 END SUBROUTINE integrd_allocate SUBROUTINE integrd_switch_caldyn(dist) USE allocate_field_mod USE bands USE parallel_lmdz IMPLICIT NONE TYPE(distrib),INTENT(IN) :: dist CALL switch_u(p,distrib_caldyn,dist) CALL switch_u(deltap,distrib_caldyn,dist) CALL switch_u(ps,distrib_caldyn,dist) END SUBROUTINE integrd_switch_caldyn END MODULE integrd_mod