Width-parameterized face-y-2D halo exchange.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| real(kind=wp), | intent(inout) | :: | fld(oh_nx_local+2*ng_wide,oh_ny_local+2*ng_wide+1) |
y-face 2D field (nx_local + 2ng_wide, ny_local + 2ng_wide + 1) |
||
| integer, | intent(in) | :: | ng_wide |
Wide ghost cell width (>= oh_nghost) |
||
| logical, | intent(in), | optional | :: | device_resident |
If .false., operate on host memory. Default = .true. |
subroutine ocean_halo_face_y_2d_wide(fld, ng_wide, device_resident) !! Width-parameterized face-y-2D halo exchange. integer, intent(in) :: ng_wide !! Wide ghost cell width (>= oh_nghost) real(wp), intent(inout) :: fld(oh_nx_local + 2*ng_wide, oh_ny_local + 2*ng_wide + 1) !! y-face 2D field (nx_local + 2*ng_wide, ny_local + 2*ng_wide + 1) logical, intent(in), optional :: device_resident !! If .false., operate on host memory. Default = .true. call oh_count_face_y_2d() call wide_halo_guards(ng_wide, "ocean_halo_face_y_2d_wide") call ocean_halo_buffers_ensure_wide(ng_wide) call ocean_halo_face_y_2d_impl(fld, ng_wide, device_resident) end subroutine ocean_halo_face_y_2d_wide