Changeset 4346 for palm/trunk/SOURCE/diffusion_s.f90
- Timestamp:
- Dec 18, 2019 11:55:56 AM (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SOURCE/diffusion_s.f90
r4329 r4346 25 25 ! ----------------- 26 26 ! $Id$ 27 ! Renamed wall_flags_0 to wall_flags_static_0 27 ! Introduction of wall_flags_total_0, which currently sets bits based on static 28 ! topography information used in wall_flags_static_0 29 ! 30 ! 4329 2019-12-10 15:46:36Z motisi 31 ! Renamed wall_flags_0 to wall_flags_total_0 28 32 ! 29 33 ! 4182 2019-08-22 15:20:23Z scharf … … 86 90 87 91 USE indices, & 88 ONLY: nxl, nxlg, nxr, nxrg, nyn, nyng, nys, nysg, nzb, nzt, wall_flags_static_0 92 ONLY: nxl, nxlg, nxr, nxrg, nyn, nyng, nys, nysg, nzb, nzt, & 93 wall_flags_total_0 89 94 90 95 USE kinds … … 135 140 !$ACC PRIVATE(surf_e, surf_s, flag, mask_top, mask_bottom) & 136 141 !$ACC PRIVATE(mask_north, mask_south, mask_west, mask_east) & 137 !$ACC PRESENT(wall_flags_ static_0, kh) &142 !$ACC PRESENT(wall_flags_total_0, kh) & 138 143 !$ACC PRESENT(s) & 139 144 !$ACC PRESENT(ddzu, ddzw, drho_air, rho_air_zw) & … … 159 164 ! 160 165 !-- Predetermine flag to mask topography and wall-bounded grid points 161 flag = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_ static_0(k,j,i), 0 ) )166 flag = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_total_0(k,j,i), 0 ) ) 162 167 ! 163 168 !-- Predetermine flag to mask wall-bounded grid points, equivalent to 164 169 !-- former s_outer array 165 mask_west = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_ static_0(k,j,i-1), 0 ) )166 mask_east = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_ static_0(k,j,i+1), 0 ) )167 mask_south = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_ static_0(k,j-1,i), 0 ) )168 mask_north = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_ static_0(k,j+1,i), 0 ) )170 mask_west = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_total_0(k,j,i-1), 0 ) ) 171 mask_east = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_total_0(k,j,i+1), 0 ) ) 172 mask_south = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_total_0(k,j-1,i), 0 ) ) 173 mask_north = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_total_0(k,j+1,i), 0 ) ) 169 174 170 175 tend(k,j,i) = tend(k,j,i) & … … 300 305 !-- flux at model top. 301 306 mask_bottom = MERGE( 1.0_wp, 0.0_wp, & 302 BTEST( wall_flags_static_0(k-1,j,i), 8 ) )307 BTEST( wall_flags_total_0(k-1,j,i), 8 ) ) 303 308 mask_top = MERGE( 1.0_wp, 0.0_wp, & 304 BTEST( wall_flags_static_0(k+1,j,i), 8 ) ) *&309 BTEST( wall_flags_total_0(k+1,j,i), 8 ) ) * & 305 310 MERGE( 1.0_wp, 0.0_wp, & 306 BTEST( wall_flags_static_0(k+1,j,i), 9 ) )311 BTEST( wall_flags_total_0(k+1,j,i), 9 ) ) 307 312 flag = MERGE( 1.0_wp, 0.0_wp, & 308 BTEST( wall_flags_static_0(k,j,i), 0 ) )313 BTEST( wall_flags_total_0(k,j,i), 0 ) ) 309 314 310 315 tend(k,j,i) = tend(k,j,i) & … … 415 420 416 421 USE indices, & 417 ONLY: nxlg, nxrg, nyng, nysg, nzb, nzt, wall_flags_ static_0422 ONLY: nxlg, nxrg, nyng, nysg, nzb, nzt, wall_flags_total_0 418 423 419 424 USE kinds … … 465 470 ! 466 471 !-- Predetermine flag to mask topography and wall-bounded grid points 467 flag = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_ static_0(k,j,i), 0 ) )472 flag = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_total_0(k,j,i), 0 ) ) 468 473 ! 469 474 !-- Predetermine flag to mask wall-bounded grid points, equivalent to 470 475 !-- former s_outer array 471 mask_west = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_ static_0(k,j,i-1), 0 ) )472 mask_east = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_ static_0(k,j,i+1), 0 ) )473 mask_south = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_ static_0(k,j-1,i), 0 ) )474 mask_north = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_ static_0(k,j+1,i), 0 ) )476 mask_west = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_total_0(k,j,i-1), 0 ) ) 477 mask_east = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_total_0(k,j,i+1), 0 ) ) 478 mask_south = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_total_0(k,j-1,i), 0 ) ) 479 mask_north = MERGE( 1.0_wp, 0.0_wp, BTEST( wall_flags_total_0(k,j+1,i), 0 ) ) 475 480 ! 476 481 !-- Finally, determine flag to mask both topography itself as well … … 610 615 !-- flux at model top. 611 616 mask_bottom = MERGE( 1.0_wp, 0.0_wp, & 612 BTEST( wall_flags_ static_0(k-1,j,i), 8 ) )617 BTEST( wall_flags_total_0(k-1,j,i), 8 ) ) 613 618 mask_top = MERGE( 1.0_wp, 0.0_wp, & 614 BTEST( wall_flags_ static_0(k+1,j,i), 8 ) ) *&619 BTEST( wall_flags_total_0(k+1,j,i), 8 ) ) * & 615 620 MERGE( 1.0_wp, 0.0_wp, & 616 BTEST( wall_flags_ static_0(k+1,j,i), 9 ) )621 BTEST( wall_flags_total_0(k+1,j,i), 9 ) ) 617 622 flag = MERGE( 1.0_wp, 0.0_wp, & 618 BTEST( wall_flags_ static_0(k,j,i), 0 ) )623 BTEST( wall_flags_total_0(k,j,i), 0 ) ) 619 624 620 625 tend(k,j,i) = tend(k,j,i) &
Note: See TracChangeset
for help on using the changeset viewer.