comms_gatherv Interface

public interface comms_gatherv

Calls

interface~~comms_gatherv~~CallsGraph interface~comms_gatherv comms_gatherv proc~comms_gatherv_cmplx_1 comms_gatherv_cmplx_1 interface~comms_gatherv->proc~comms_gatherv_cmplx_1 proc~comms_gatherv_cmplx_2 comms_gatherv_cmplx_2 interface~comms_gatherv->proc~comms_gatherv_cmplx_2 proc~comms_gatherv_cmplx_3 comms_gatherv_cmplx_3 interface~comms_gatherv->proc~comms_gatherv_cmplx_3 proc~comms_gatherv_cmplx_3_4 comms_gatherv_cmplx_3_4 interface~comms_gatherv->proc~comms_gatherv_cmplx_3_4 proc~comms_gatherv_cmplx_4 comms_gatherv_cmplx_4 interface~comms_gatherv->proc~comms_gatherv_cmplx_4 proc~comms_gatherv_logical comms_gatherv_logical interface~comms_gatherv->proc~comms_gatherv_logical proc~comms_gatherv_real_1 comms_gatherv_real_1 interface~comms_gatherv->proc~comms_gatherv_real_1 proc~comms_gatherv_real_2 comms_gatherv_real_2 interface~comms_gatherv->proc~comms_gatherv_real_2 proc~comms_gatherv_real_2_3 comms_gatherv_real_2_3 interface~comms_gatherv->proc~comms_gatherv_real_2_3 proc~comms_gatherv_real_3 comms_gatherv_real_3 interface~comms_gatherv->proc~comms_gatherv_real_3 proc~comms_no_sync_gatherv_cmplx_1 comms_no_sync_gatherv_cmplx_1 proc~comms_gatherv_cmplx_1->proc~comms_no_sync_gatherv_cmplx_1 proc~comms_sync_error comms_sync_error proc~comms_gatherv_cmplx_1->proc~comms_sync_error proc~comms_no_sync_gatherv_cmplx_2 comms_no_sync_gatherv_cmplx_2 proc~comms_gatherv_cmplx_2->proc~comms_no_sync_gatherv_cmplx_2 proc~comms_gatherv_cmplx_2->proc~comms_sync_error proc~comms_no_sync_gatherv_cmplx_3 comms_no_sync_gatherv_cmplx_3 proc~comms_gatherv_cmplx_3->proc~comms_no_sync_gatherv_cmplx_3 proc~comms_gatherv_cmplx_3->proc~comms_sync_error proc~comms_no_sync_gatherv_cmplx_3_4 comms_no_sync_gatherv_cmplx_3_4 proc~comms_gatherv_cmplx_3_4->proc~comms_no_sync_gatherv_cmplx_3_4 proc~comms_gatherv_cmplx_3_4->proc~comms_sync_error proc~comms_no_sync_gatherv_cmplx_4 comms_no_sync_gatherv_cmplx_4 proc~comms_gatherv_cmplx_4->proc~comms_no_sync_gatherv_cmplx_4 proc~comms_gatherv_cmplx_4->proc~comms_sync_error proc~comms_no_sync_gatherv_logical comms_no_sync_gatherv_logical proc~comms_gatherv_logical->proc~comms_no_sync_gatherv_logical proc~comms_gatherv_logical->proc~comms_sync_error proc~comms_no_sync_gatherv_real_1 comms_no_sync_gatherv_real_1 proc~comms_gatherv_real_1->proc~comms_no_sync_gatherv_real_1 proc~comms_gatherv_real_1->proc~comms_sync_error proc~comms_no_sync_gatherv_real_2 comms_no_sync_gatherv_real_2 proc~comms_gatherv_real_2->proc~comms_no_sync_gatherv_real_2 proc~comms_gatherv_real_2->proc~comms_sync_error proc~comms_no_sync_gatherv_real_2_3 comms_no_sync_gatherv_real_2_3 proc~comms_gatherv_real_2_3->proc~comms_no_sync_gatherv_real_2_3 proc~comms_gatherv_real_2_3->proc~comms_sync_error proc~comms_no_sync_gatherv_real_3 comms_no_sync_gatherv_real_3 proc~comms_gatherv_real_3->proc~comms_no_sync_gatherv_real_3 proc~comms_gatherv_real_3->proc~comms_sync_error zcopy zcopy proc~comms_no_sync_gatherv_cmplx_2->zcopy proc~comms_no_sync_gatherv_cmplx_3_4->zcopy dcopy dcopy proc~comms_no_sync_gatherv_real_2_3->dcopy

Called by

interface~~comms_gatherv~~CalledByGraph interface~comms_gatherv comms_gatherv proc~boltzwann_main boltzwann_main proc~boltzwann_main->interface~comms_gatherv proc~geninterp_main geninterp_main proc~geninterp_main->interface~comms_gatherv proc~k_path k_path proc~k_path->interface~comms_gatherv proc~k_slice k_slice proc~k_slice->interface~comms_gatherv program~postw90 postw90 program~postw90->proc~boltzwann_main program~postw90->proc~geninterp_main program~postw90->proc~k_path program~postw90->proc~k_slice

Module Procedures

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

Gather real data to root node

Arguments

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

local array for sending data

integer, intent(in) :: localcount

localcount elements will be sent to the root node

logical, intent(inout) :: rootglobalarray

array on the root node to 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_gatherv_real_1(array, localcount, rootglobalarray, counts, displs, error, comm)

Gather real data to root node (for arrays of rank 1)

Arguments

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

local array for sending data

integer, intent(in) :: localcount

localcount elements will be sent to the root node

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

array on the root node to 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_gatherv_real_2(array, localcount, rootglobalarray, counts, displs, error, comm)

Gather real data to root node (for arrays of rank 2)

Arguments

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

local array for sending data

integer, intent(in) :: localcount

localcount elements will be sent to the root node

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

array on the root node to 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_gatherv_real_3(array, localcount, rootglobalarray, counts, displs, error, comm)

Gather real data to root node (for arrays of rank 3)

Arguments

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

local array for sending data

integer, intent(in) :: localcount

localcount elements will be sent to the root node

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

array on the root node to 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_gatherv_real_2_3(array, localcount, rootglobalarray, counts, displs, error, comm)

Gather real data to root node (for arrays of rank 2 and 3, respectively)

Arguments

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

local array for sending data

integer, intent(in) :: localcount

localcount elements will be sent to the root node

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

array on the root node to 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_gatherv_cmplx_1(array, localcount, rootglobalarray, counts, displs, error, comm)

Gather complex data to root node (for arrays of rank 1)

Arguments

Type IntentOptional Attributes Name
complex(kind=dp), intent(inout) :: array(:)
integer, intent(in) :: localcount
complex(kind=dp), intent(inout) :: rootglobalarray(:)
integer, intent(in) :: counts(0:)
integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

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

Gather complex data to root node (for arrays of rank 2)

Arguments

Type IntentOptional Attributes Name
complex(kind=dp), intent(inout) :: array(:,:)
integer, intent(in) :: localcount
complex(kind=dp), intent(inout) :: rootglobalarray(:,:)
integer, intent(in) :: counts(0:)
integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

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

Gather complex data to root node (for arrays of rank 3)

Arguments

Type IntentOptional Attributes Name
complex(kind=dp), intent(inout) :: array(:,:,:)
integer, intent(in) :: localcount
complex(kind=dp), intent(inout) :: rootglobalarray(:,:,:)
integer, intent(in) :: counts(0:)
integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

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

Gather complex data to root node (for arrays of rank 3 and 4, respectively)

Arguments

Type IntentOptional Attributes Name
complex(kind=dp), intent(inout) :: array(:,:,:)
integer, intent(in) :: localcount
complex(kind=dp), intent(inout) :: rootglobalarray(:,:,:,:)
integer, intent(in) :: counts(0:)
integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

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

Gather complex data to root node (for arrays of rank 4)

Arguments

Type IntentOptional Attributes Name
complex(kind=dp), intent(inout) :: array(:,:,:,:)
integer, intent(in) :: localcount
complex(kind=dp), intent(inout) :: rootglobalarray(:,:,:,:)
integer, intent(in) :: counts(0:)
integer, intent(in) :: displs(0:)
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm