Changeset 472
- Timestamp:
- 09/05/16 14:59:46 (8 years ago)
- Location:
- codes/icosagcm/trunk/src
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
codes/icosagcm/trunk/src/icosagcm.f90
r467 r472 51 51 CALL output_field_init 52 52 CALL init_timeloop 53 !$OMP END PARALLEL54 55 53 CALL init_physics 56 54 57 !$OMP PARALLEL58 55 CALL timeloop 59 56 CALL switch_omp_no_distrib_level -
codes/icosagcm/trunk/src/physics.f90
r402 r472 63 63 CALL allocate_field(f_dulat,field_t,type_real,llm, name='dulat') 64 64 CALL allocate_field(f_temp,field_t,type_real,llm, name='temp') 65 CALL allocate_field(f_temp,field_t,type_real,llm, name='temp')66 65 CALL init_pack_before ! Compute physics_inout%ngrid and offsets used by pack/unpack 67 66 CALL init_physics_dcmip2016 -
codes/icosagcm/trunk/src/physics_dcmip2016.f90
r435 r472 6 6 !$OMP THREADPRIVATE(testcase) 7 7 8 TYPE(t_field),POINTER :: f_out_i(:) 9 REAL(rstd),POINTER :: out_i(:,:) 10 11 TYPE(t_field),POINTER :: f_precl(:) 12 REAL(rstd),ALLOCATABLE :: precl_packed(:) 13 14 TYPE(t_field),POINTER :: f_Q1(:) 15 TYPE(t_field),POINTER :: f_Q2(:) 16 TYPE(t_field),POINTER :: f_PS(:) 17 TYPE(t_field),POINTER :: f_rhodz(:) 18 TYPE(t_field),POINTER :: f_Q1_col_int(:) 19 TYPE(t_field),POINTER :: f_Q2_col_int(:) 8 TYPE(t_field),SAVE,POINTER :: f_out_i(:) 9 REAL(rstd),SAVE,POINTER :: out_i(:,:) 10 11 TYPE(t_field),SAVE,POINTER :: f_precl(:) 12 REAL(rstd),SAVE,ALLOCATABLE :: precl_packed(:) 13 !$OMP THREADPRIVATE(precl_packed) 14 15 TYPE(t_field),SAVE,POINTER :: f_Q1(:) 16 TYPE(t_field),SAVE,POINTER :: f_Q2(:) 17 TYPE(t_field),SAVE,POINTER :: f_PS(:) 18 TYPE(t_field),SAVE,POINTER :: f_rhodz(:) 19 TYPE(t_field),SAVE,POINTER :: f_Q1_col_int(:) 20 TYPE(t_field),SAVE,POINTER :: f_Q2_col_int(:) 20 21 PUBLIC :: init_physics, full_physics, write_physics 21 22 -
codes/icosagcm/trunk/src/physics_interface.f90
r381 r472 26 26 27 27 TYPE(t_physics_inout), SAVE :: physics_inout 28 !$OMP THREADPRIVATE(physics_inout) 28 29 29 30 ! pack_info contains indices used by pack/unpack routines … … 39 40 40 41 TYPE(t_pack_info), ALLOCATABLE, SAVE :: pack_info(:) 41 42 !$OMP THREADPRIVATE(pack_info) 43 44 42 45 INTERFACE pack_field 43 46 MODULE PROCEDURE pack_2D … … 76 79 IMPLICIT NONE 77 80 INTEGER :: ind, offset 78 !$OMP MASTER 81 79 82 offset=0 80 83 ALLOCATE(pack_info(ndomain)) 81 84 DO ind=1,ndomain 85 IF (.NOT. assigned_domain(ind)) CYCLE 82 86 CALL swap_dimensions(ind) 83 87 CALL swap_geometry(ind) … … 87 91 END DO 88 92 physics_inout%ngrid = offset 89 !$OMP END MASTER 90 !$OMP BARRIER 93 91 94 END SUBROUTINE init_pack_before 92 95
Note: See TracChangeset
for help on using the changeset viewer.