MODULE dimensions INTEGER,SAVE :: iim !$OMP THREADPRIVATE(iim) INTEGER,SAVE :: jjm !$OMP THREADPRIVATE(jjm) INTEGER,SAVE :: ii_begin !$OMP THREADPRIVATE(ii_begin) INTEGER,SAVE :: jj_begin !$OMP THREADPRIVATE(jj_begin) INTEGER,SAVE :: ii_end !$OMP THREADPRIVATE(ii_end) INTEGER,SAVE :: jj_end !$OMP THREADPRIVATE(jj_end) INTEGER,SAVE :: ii_nb !$OMP THREADPRIVATE(ii_nb) INTEGER,SAVE :: jj_nb !$OMP THREADPRIVATE(jj_nb) INTEGER,SAVE :: ij_begin !$OMP THREADPRIVATE(ij_begin) INTEGER,SAVE :: ij_end !$OMP THREADPRIVATE(ij_end) INTEGER,SAVE :: ij_begin_ext !$OMP THREADPRIVATE(ij_begin_ext) INTEGER,SAVE :: ij_end_ext !$OMP THREADPRIVATE(ij_end_ext) INTEGER,SAVE :: t_right !$OMP THREADPRIVATE(t_right) INTEGER,SAVE :: t_rup !$OMP THREADPRIVATE(t_rup) INTEGER,SAVE :: t_lup !$OMP THREADPRIVATE(t_lup) INTEGER,SAVE :: t_left !$OMP THREADPRIVATE(t_left) INTEGER,SAVE :: t_ldown !$OMP THREADPRIVATE(t_ldown) INTEGER,SAVE :: t_rdown !$OMP THREADPRIVATE(t_rdown) INTEGER,SAVE :: u_right !$OMP THREADPRIVATE(u_right) INTEGER,SAVE :: u_rup !$OMP THREADPRIVATE(u_rup) INTEGER,SAVE :: u_lup !$OMP THREADPRIVATE(u_lup) INTEGER,SAVE :: u_left !$OMP THREADPRIVATE(u_left) INTEGER,SAVE :: u_ldown !$OMP THREADPRIVATE(u_ldown) INTEGER,SAVE :: u_rdown !$OMP THREADPRIVATE(u_rdown) INTEGER,SAVE :: z_rup !$OMP THREADPRIVATE(z_rup) INTEGER,SAVE :: z_up !$OMP THREADPRIVATE(z_up) INTEGER,SAVE :: z_lup !$OMP THREADPRIVATE(z_lup) INTEGER,SAVE :: z_ldown !$OMP THREADPRIVATE(z_ldown) INTEGER,SAVE :: z_down !$OMP THREADPRIVATE(z_down) INTEGER,SAVE :: z_rdown !$OMP THREADPRIVATE(z_rdown) INTEGER,SAVE :: t_pos(6) !$OMP THREADPRIVATE(t_pos) INTEGER,SAVE :: u_pos(6) !$OMP THREADPRIVATE(u_pos) INTEGER,SAVE :: z_pos(6) !$OMP THREADPRIVATE(z_pos) CONTAINS SUBROUTINE swap_dimensions(ind) USE domain_mod IMPLICIT NONE INTEGER,INTENT(IN) :: ind TYPE(t_domain),POINTER :: d d=>domain(ind) iim=d%iim jjm=d%jjm ii_begin=d%ii_begin jj_begin=d%jj_begin ii_end=d%ii_end jj_end=d%jj_end ii_nb=d%ii_nb jj_nb=d%jj_nb ij_begin=(jj_begin-1)*iim+ii_begin ij_end=(jj_end-1)*iim+ii_end ij_begin_ext=((jj_begin-1)-1)*iim+ii_begin-1 ij_end_ext = ((jj_end+1)-1)*iim+ii_end+1 t_right=d%t_right t_rup=d%t_rup t_lup=d%t_lup t_left=d%t_left t_ldown=d%t_ldown t_rdown=d%t_rdown u_right=d%u_right u_rup=d%u_rup u_lup=d%u_lup u_left=d%u_left u_ldown=d%u_ldown u_rdown=d%u_rdown z_rup=d%z_rup z_up=d%z_up z_lup=d%z_lup z_ldown=d%z_ldown z_down=d%z_down z_rdown=d%z_rdown t_pos(:)=d%t_pos(:) u_pos(:)=d%u_pos(:) z_pos(:)=d%z_pos(:) END SUBROUTINE swap_dimensions END MODULE dimensions