par_IBcast_array2D Subroutine

private subroutine par_IBcast_array2D(arr, fromRank, req_out)

Uses

  • proc~~par_ibcast_array2d~~UsesGraph proc~par_ibcast_array2d par_IBcast_array2D module~modgvec_globals MODgvec_Globals proc~par_ibcast_array2d->module~modgvec_globals iso_fortran_env iso_fortran_env module~modgvec_globals->iso_fortran_env

Broadcast a 2D array (assumed-shape) from MPI rank 'fromRank' to all MPI ranks (nonblocking)

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(inout) :: arr(:,:)
integer :: fromRank
real :: req_out

Calls

proc~~par_ibcast_array2d~~CallsGraph proc~par_ibcast_array2d par_IBcast_array2D mpi_ibcast mpi_ibcast proc~par_ibcast_array2d->mpi_ibcast

Called by

proc~~par_ibcast_array2d~~CalledByGraph proc~par_ibcast_array2d par_IBcast_array2D interface~par_ibcast par_IBcast interface~par_ibcast->proc~par_ibcast_array2d proc~evalforce EvalForce proc~evalforce->interface~par_ibcast proc~initsolutionmhd3d t_functional_mhd3d%InitSolutionMHD3D proc~initsolutionmhd3d->proc~evalforce proc~minimizemhd3d_descent MinimizeMHD3D_descent proc~minimizemhd3d_descent->proc~evalforce program~gvec_post GVEC_POST program~gvec_post->proc~evalforce proc~minimizemhd3d t_functional_mhd3d%MinimizeMHD3D proc~minimizemhd3d->proc~minimizemhd3d_descent

Source Code

  SUBROUTINE par_IBcast_array2D(arr,fromRank,req_out)
  ! MODULES
    USE MODgvec_Globals, ONLY : wp
    IMPLICIT NONE
  !--------------------------------------------------------------------------------------------------------------------------------
  ! INPUT VARIABLES
    REAL(wp), INTENT(INOUT)      :: arr(:,:)
    INTEGER                      :: fromRank
    MPI_request_TYPE, INTENT(OUT) :: req_out
  !--------------------------------------------------------------------------------------------------------------------------------
  ! LOCAL VARIABLES
#   if MPI
    INTEGER     :: ierr
    INTEGER     :: sz
  !================================================================================================================================
  ! BODY
    sz=SIZE(arr)
    CALL MPI_IBcast(arr, sz, dType, fromRank, worldComm, req_out, ierr)
#   endif
  END SUBROUTINE par_IBcast_array2D