comms_no_sync_scatterv Interface

public interface comms_no_sync_scatterv

Calls

interface~~comms_no_sync_scatterv~~CallsGraph interface~comms_no_sync_scatterv comms_no_sync_scatterv proc~comms_no_sync_scatterv_cmplx_3 comms_no_sync_scatterv_cmplx_3 interface~comms_no_sync_scatterv->proc~comms_no_sync_scatterv_cmplx_3 proc~comms_no_sync_scatterv_cmplx_4 comms_no_sync_scatterv_cmplx_4 interface~comms_no_sync_scatterv->proc~comms_no_sync_scatterv_cmplx_4 proc~comms_no_sync_scatterv_int_1 comms_no_sync_scatterv_int_1 interface~comms_no_sync_scatterv->proc~comms_no_sync_scatterv_int_1 proc~comms_no_sync_scatterv_int_2 comms_no_sync_scatterv_int_2 interface~comms_no_sync_scatterv->proc~comms_no_sync_scatterv_int_2 proc~comms_no_sync_scatterv_int_3 comms_no_sync_scatterv_int_3 interface~comms_no_sync_scatterv->proc~comms_no_sync_scatterv_int_3 proc~comms_no_sync_scatterv_real_1 comms_no_sync_scatterv_real_1 interface~comms_no_sync_scatterv->proc~comms_no_sync_scatterv_real_1 proc~comms_no_sync_scatterv_real_2 comms_no_sync_scatterv_real_2 interface~comms_no_sync_scatterv->proc~comms_no_sync_scatterv_real_2 proc~comms_no_sync_scatterv_real_3 comms_no_sync_scatterv_real_3 interface~comms_no_sync_scatterv->proc~comms_no_sync_scatterv_real_3

Module Procedures

private subroutine comms_no_sync_scatterv_int_1(array, localcount, rootglobalarray, counts, displs, error, comm)

Scatter integer data from root node (array of rank 1)

Arguments

Type IntentOptional Attributes Name
integer, intent(inout) :: array(:)

local array for getting data

integer, intent(in) :: localcount

localcount elements will be fetched from the root node

integer, intent(inout) :: rootglobalarray(:)

array on the root node from which data will be sent

integer, intent(in) :: counts(0:)

how data should be partitioned, see MPI documentation or function comms_array_split

integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

private subroutine comms_no_sync_scatterv_int_2(array, localcount, rootglobalarray, counts, displs, error, comm)

Scatter integer data from root node (array of rank 2)

Arguments

Type IntentOptional Attributes Name
integer, intent(inout) :: array(:,:)

local array for getting data

integer, intent(in) :: localcount

localcount elements will be fetched from the root node

integer, intent(inout) :: rootglobalarray(:,:)

array on the root node from which data will be sent

integer, intent(in) :: counts(0:)

how data should be partitioned, see MPI documentation or function comms_array_split

integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

private subroutine comms_no_sync_scatterv_int_3(array, localcount, rootglobalarray, counts, displs, error, comm)

Scatter integer data from root node (array of rank 3)

Arguments

Type IntentOptional Attributes Name
integer, intent(inout) :: array(:,:,:)

local array for getting data

integer, intent(in) :: localcount

localcount elements will be fetched from the root node

integer, intent(inout) :: rootglobalarray(:,:,:)

array on the root node from which data will be sent

integer, intent(in) :: counts(0:)

how data should be partitioned, see MPI documentation or function comms_array_split

integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

private subroutine comms_no_sync_scatterv_real_1(array, localcount, rootglobalarray, counts, displs, error, comm)

Scatter real data from root node (array of rank 1)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout) :: array(:)

local array for getting data

integer, intent(in) :: localcount

localcount elements will be fetched from the root node

real(kind=dp), intent(inout) :: rootglobalarray(:)

array on the root node from which data will be sent

integer, intent(in) :: counts(0:)

how data should be partitioned, see MPI documentation or function comms_array_split

integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

private subroutine comms_no_sync_scatterv_real_2(array, localcount, rootglobalarray, counts, displs, error, comm)

Scatter real data from root node (array of rank 2)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout) :: array(:,:)

local array for getting data

integer, intent(in) :: localcount

localcount elements will be fetched from the root node

real(kind=dp), intent(inout) :: rootglobalarray(:,:)

array on the root node from which data will be sent

integer, intent(in) :: counts(0:)

how data should be partitioned, see MPI documentation or function comms_array_split

integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

private subroutine comms_no_sync_scatterv_real_3(array, localcount, rootglobalarray, counts, displs, error, comm)

Scatter real data from root node (array of rank 3)

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout) :: array(:,:,:)

local array for getting data

integer, intent(in) :: localcount

localcount elements will be fetched from the root node

real(kind=dp), intent(inout) :: rootglobalarray(:,:,:)

array on the root node from which data will be sent

integer, intent(in) :: counts(0:)

how data should be partitioned, see MPI documentation or function comms_array_split

integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

private subroutine comms_no_sync_scatterv_cmplx_3(array, localcount, rootglobalarray, counts, displs, error, comm)

Scatter complex data from root node (array of rank 3)

Arguments

Type IntentOptional Attributes Name
complex(kind=dp), intent(inout) :: array(:,:,:)

local array for getting data

integer, intent(in) :: localcount

localcount elements will be fetched from the root node

complex(kind=dp), intent(inout) :: rootglobalarray(:,:,:)

array on the root node from which data will be sent

integer, intent(in) :: counts(0:)

how data should be partitioned, see MPI documentation or function comms_array_split

integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

private subroutine comms_no_sync_scatterv_cmplx_4(array, localcount, rootglobalarray, counts, displs, error, comm)

Scatter complex data from root node (array of rank 4)

Arguments

Type IntentOptional Attributes Name
complex(kind=dp), intent(inout) :: array(:,:,:,:)

local array for getting data

integer, intent(in) :: localcount

localcount elements will be fetched from the root node

complex(kind=dp), intent(inout) :: rootglobalarray(:,:,:,:)

array on the root node from which data will be sent

integer, intent(in) :: counts(0:)

how data should be partitioned, see MPI documentation or function comms_array_split

integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm