ocean_fold_north_centre Interface

public interface ocean_fold_north_centre

Calls

interface~~ocean_fold_north_centre~~CallsGraph interface~ocean_fold_north_centre ocean_fold_north_centre proc~fold_centre_2d fold_centre_2d interface~ocean_fold_north_centre->proc~fold_centre_2d proc~fold_centre_3d fold_centre_3d interface~ocean_fold_north_centre->proc~fold_centre_3d interface~fold_north_centre fold_north_centre proc~fold_centre_2d->interface~fold_north_centre interface~ocean_fold_pack ocean_fold_pack proc~fold_centre_2d->interface~ocean_fold_pack interface~ocean_fold_unpack ocean_fold_unpack proc~fold_centre_2d->interface~ocean_fold_unpack proc~fold_stagger_nrows fold_stagger_nrows proc~fold_centre_2d->proc~fold_stagger_nrows proc~ocean_fold_begin ocean_fold_begin proc~fold_centre_2d->proc~ocean_fold_begin proc~ocean_fold_end ocean_fold_end proc~fold_centre_2d->proc~ocean_fold_end proc~ocean_fold_exchange ocean_fold_exchange proc~fold_centre_2d->proc~ocean_fold_exchange proc~ocean_fold_is_distributed ocean_fold_is_distributed proc~fold_centre_2d->proc~ocean_fold_is_distributed proc~fold_centre_3d->interface~fold_north_centre proc~fold_centre_3d->interface~ocean_fold_pack proc~fold_centre_3d->interface~ocean_fold_unpack proc~fold_centre_3d->proc~fold_stagger_nrows proc~fold_centre_3d->proc~ocean_fold_begin proc~fold_centre_3d->proc~ocean_fold_end proc~fold_centre_3d->proc~ocean_fold_exchange proc~fold_centre_3d->proc~ocean_fold_is_distributed proc~fold_north_centre_2d fold_north_centre_2d interface~fold_north_centre->proc~fold_north_centre_2d proc~fold_north_centre_3d fold_north_centre_3d interface~fold_north_centre->proc~fold_north_centre_3d proc~ocean_fold_pack_2d ocean_fold_pack_2d interface~ocean_fold_pack->proc~ocean_fold_pack_2d proc~ocean_fold_pack_3d ocean_fold_pack_3d interface~ocean_fold_pack->proc~ocean_fold_pack_3d proc~ocean_fold_unpack_2d ocean_fold_unpack_2d interface~ocean_fold_unpack->proc~ocean_fold_unpack_2d proc~ocean_fold_unpack_3d ocean_fold_unpack_3d interface~ocean_fold_unpack->proc~ocean_fold_unpack_3d proc~grow_buffers grow_buffers proc~ocean_fold_begin->proc~grow_buffers to_string to_string proc~ocean_fold_begin->to_string warning warning proc~ocean_fold_begin->warning comm_irecv_real_sp_array_n comm_irecv_real_sp_array_n proc~ocean_fold_exchange->comm_irecv_real_sp_array_n comm_isend_real_sp_array_n comm_isend_real_sp_array_n proc~ocean_fold_exchange->comm_isend_real_sp_array_n proc~comm_env_compute_comm comm_env_compute_comm proc~ocean_fold_exchange->proc~comm_env_compute_comm waitall waitall proc~ocean_fold_exchange->waitall comm_world comm_world proc~comm_env_compute_comm->comm_world proc~ocean_fold_pack_2d->proc~ocean_fold_pack_3d proc~ocean_fold_pack_3d->proc~fold_stagger_nrows proc~fold_stagger_family fold_stagger_family proc~ocean_fold_pack_3d->proc~fold_stagger_family proc~ocean_fold_unpack_2d->proc~ocean_fold_unpack_3d proc~ocean_fold_unpack_3d->proc~fold_stagger_nrows proc~ocean_fold_unpack_3d->proc~fold_stagger_family

Module Procedures

private subroutine fold_centre_2d(fld, nxt, nyt, nx_phys, ny_phys, ng, device_resident)

Cell-centred 2D north fold (copy).

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(inout) :: fld(nxt,nyt)

Cell-centred field (nx_total, ny_total).

integer, intent(in) :: nxt
integer, intent(in) :: nyt
integer, intent(in) :: nx_phys
integer, intent(in) :: ny_phys
integer, intent(in) :: ng
logical, intent(in), optional :: device_resident

Exchange path only: .false. ⇒ host arrays.

private subroutine fold_centre_3d(fld, nxt, nyt, nz, nx_phys, ny_phys, ng, device_resident)

Cell-centred 3D north fold (copy).

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(inout) :: fld(nxt,nyt,nz)

Cell-centred field (nx_total, ny_total, nz).

integer, intent(in) :: nxt
integer, intent(in) :: nyt
integer, intent(in) :: nz
integer, intent(in) :: nx_phys
integer, intent(in) :: ny_phys
integer, intent(in) :: ng
logical, intent(in), optional :: device_resident

Exchange path only: .false. ⇒ host arrays.