Changeset 2955 for palm/trunk/SOURCE/init_grid.f90
- Timestamp:
- Apr 9, 2018 3:14:01 PM (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/init_grid.f90
r2927 r2955 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Improve topography filter routine and add ghost-point exchange for building 28 ! ID and building type. 29 ! 30 ! 2927 2018-03-23 15:13:00Z suehring 27 31 ! Bugfix, setting boundary conditions for topography index array. 28 32 ! … … 1186 1190 INTEGER(iwp) :: num_wall !< number of surrounding vertical walls for a single grid point 1187 1191 1188 INTEGER(iwp), DIMENSION(:,:,:), ALLOCATABLE :: topo_tmp !< temporary 3D-topography used to fill holes 1189 INTEGER(iwp), DIMENSION(nzb:nzt+1,nysg:nyng,nxlg:nxrg) :: topo_3d !< 3D-topography array merging buildings and orography 1192 INTEGER(iwp), DIMENSION(nysg:nyng,nxlg:nxrg) :: var_exchange_int !< dummy array for exchanging ghost-points 1193 INTEGER(iwp), DIMENSION(:,:,:), ALLOCATABLE :: topo_tmp !< temporary 3D-topography used to fill holes 1194 INTEGER(iwp), DIMENSION(nzb:nzt+1,nysg:nyng,nxlg:nxrg) :: topo_3d !< 3D-topography array merging buildings and orography 1190 1195 ! 1191 1196 !-- Before checking for holes, set lateral boundary conditions for … … 1201 1206 num_hole = 0 1202 1207 CALL exchange_horiz_int( topo_3d, nys, nyn, nxl, nxr, nzt, nbgp ) 1208 ! 1209 !-- Exchange also building ID and type. Note, building_type is an one-byte 1210 !-- variable. 1211 IF ( building_id_f%from_file ) & 1212 CALL exchange_horiz_2d_int( building_id_f%var, nys, nyn, nxl, nxr, nbgp ) 1213 IF ( building_type_f%from_file ) THEN 1214 var_exchange_int = INT( building_type_f%var, KIND = 4 ) 1215 CALL exchange_horiz_2d_int( var_exchange_int, nys, nyn, nxl, nxr, nbgp ) 1216 building_type_f%var = INT( var_exchange_int, KIND = 1 ) 1217 ENDIF 1203 1218 1204 1219 topo_tmp = topo_3d … … 1343 1358 IF ( nxl == 0 ) topo_3d(:,:,-1) = topo_3d(:,:,0) 1344 1359 IF ( nxr == nx ) topo_3d(:,:,nx+1) = topo_3d(:,:,nx) 1360 ENDIF 1361 ! 1362 !-- Exchange building ID and type. Note, building_type is an one-byte variable. 1363 IF ( building_id_f%from_file ) & 1364 CALL exchange_horiz_2d_int( building_id_f%var, nys, nyn, nxl, nxr, nbgp ) 1365 IF ( building_type_f%from_file ) THEN 1366 var_exchange_int = INT( building_type_f%var, KIND = 4 ) 1367 CALL exchange_horiz_2d_int( var_exchange_int, nys, nyn, nxl, nxr, nbgp ) 1368 building_type_f%var = INT( var_exchange_int, KIND = 1 ) 1345 1369 ENDIF 1346 1370
Note: See TracChangeset
for help on using the changeset viewer.