comms_bcast_real Subroutine

private subroutine comms_bcast_real(array, size, error, comm)

Send real array from root node to all nodes

Arguments

Type IntentOptional Attributes Name
real(kind=dp), intent(inout) :: array
integer, intent(in) :: size
type(w90_error_type), intent(out), allocatable :: error
type(w90_comm_type), intent(in) :: comm

Calls

proc~~comms_bcast_real~~CallsGraph proc~comms_bcast_real comms_bcast_real proc~comms_no_sync_bcast_real comms_no_sync_bcast_real proc~comms_bcast_real->proc~comms_no_sync_bcast_real proc~comms_sync_error comms_sync_error proc~comms_bcast_real->proc~comms_sync_error

Called by

proc~~comms_bcast_real~~CalledByGraph proc~comms_bcast_real comms_bcast_real interface~comms_bcast comms_bcast interface~comms_bcast->proc~comms_bcast_real proc~dis_extract dis_extract proc~dis_extract->interface~comms_bcast proc~geninterp_main geninterp_main proc~geninterp_main->interface~comms_bcast proc~get_hh_r get_HH_R proc~geninterp_main->proc~get_hh_r proc~wham_get_eig_deleig wham_get_eig_deleig proc~geninterp_main->proc~wham_get_eig_deleig proc~get_aa_r get_AA_R proc~get_aa_r->interface~comms_bcast proc~get_aa_r_effective get_AA_R_effective proc~get_aa_r_effective->interface~comms_bcast proc~get_bb_r get_BB_R proc~get_bb_r->interface~comms_bcast proc~get_cc_r get_CC_R proc~get_cc_r->interface~comms_bcast proc~get_ff_r get_FF_R proc~get_ff_r->interface~comms_bcast proc~get_hh_r->interface~comms_bcast proc~get_saa_r get_SAA_R proc~get_saa_r->interface~comms_bcast proc~get_sbb_r get_SBB_R proc~get_sbb_r->interface~comms_bcast proc~get_sh_r get_SH_R proc~get_sh_r->interface~comms_bcast proc~get_shc_r get_SHC_R proc~get_shc_r->interface~comms_bcast proc~get_ss_r get_SS_R proc~get_ss_r->interface~comms_bcast proc~internal_find_u internal_find_u proc~internal_find_u->interface~comms_bcast proc~k_path k_path proc~k_path->interface~comms_bcast proc~k_path->proc~get_aa_r proc~k_path->proc~get_aa_r_effective proc~k_path->proc~get_bb_r proc~k_path->proc~get_cc_r proc~k_path->proc~get_hh_r proc~k_path->proc~get_shc_r proc~k_path->proc~get_ss_r proc~berry_get_imfgh_klist berry_get_imfgh_klist proc~k_path->proc~berry_get_imfgh_klist proc~berry_get_shc_klist berry_get_shc_klist proc~k_path->proc~berry_get_shc_klist proc~berry_get_imf_klist berry_get_imf_klist proc~k_path->proc~berry_get_imf_klist proc~pw90common_wanint_data_dist pw90common_wanint_data_dist proc~pw90common_wanint_data_dist->interface~comms_bcast proc~pw90common_wanint_get_kpoint_file pw90common_wanint_get_kpoint_file proc~pw90common_wanint_get_kpoint_file->interface~comms_bcast proc~pw90common_wanint_setup pw90common_wanint_setup proc~pw90common_wanint_setup->interface~comms_bcast proc~pw90common_wanint_w90_wannier90_readwrite_dist pw90common_wanint_w90_wannier90_readwrite_dist proc~pw90common_wanint_w90_wannier90_readwrite_dist->interface~comms_bcast proc~w90_readwrite_chkpt_dist w90_readwrite_chkpt_dist proc~w90_readwrite_chkpt_dist->interface~comms_bcast program~postw90 postw90 program~postw90->interface~comms_bcast program~postw90->proc~geninterp_main program~postw90->proc~k_path program~postw90->proc~pw90common_wanint_data_dist program~postw90->proc~pw90common_wanint_get_kpoint_file program~postw90->proc~pw90common_wanint_setup proc~berry_main berry_main program~postw90->proc~berry_main proc~dos_main dos_main program~postw90->proc~dos_main proc~gyrotropic_main gyrotropic_main program~postw90->proc~gyrotropic_main proc~k_slice k_slice program~postw90->proc~k_slice proc~spin_get_moment spin_get_moment program~postw90->proc~spin_get_moment proc~boltzwann_main boltzwann_main program~postw90->proc~boltzwann_main proc~berry_main->proc~get_aa_r proc~berry_main->proc~get_aa_r_effective proc~berry_main->proc~get_bb_r proc~berry_main->proc~get_cc_r proc~berry_main->proc~get_hh_r proc~berry_main->proc~get_saa_r proc~berry_main->proc~get_sbb_r proc~berry_main->proc~get_sh_r proc~berry_main->proc~get_shc_r proc~berry_main->proc~get_ss_r proc~berry_main->proc~berry_get_imfgh_klist proc~berry_get_kdotp berry_get_kdotp proc~berry_main->proc~berry_get_kdotp proc~berry_get_kubo_k berry_get_kubo_k proc~berry_main->proc~berry_get_kubo_k proc~berry_get_sc_klist berry_get_sc_klist proc~berry_main->proc~berry_get_sc_klist proc~berry_main->proc~berry_get_shc_klist proc~berry_main->proc~berry_get_imf_klist proc~calctdfanddos calcTDFandDOS proc~calctdfanddos->proc~get_hh_r proc~calctdfanddos->proc~get_ss_r proc~calctdfanddos->proc~wham_get_eig_deleig proc~dis_main dis_main proc~dis_main->proc~dis_extract proc~dis_main->proc~internal_find_u proc~dos_main->proc~get_hh_r proc~dos_main->proc~get_ss_r proc~dos_main->proc~wham_get_eig_deleig proc~gyrotropic_main->proc~get_aa_r proc~gyrotropic_main->proc~get_aa_r_effective proc~gyrotropic_main->proc~get_bb_r proc~gyrotropic_main->proc~get_cc_r proc~gyrotropic_main->proc~get_hh_r proc~gyrotropic_main->proc~get_ss_r proc~gyrotropic_get_k_list gyrotropic_get_k_list proc~gyrotropic_main->proc~gyrotropic_get_k_list proc~k_slice->proc~get_aa_r proc~k_slice->proc~get_aa_r_effective proc~k_slice->proc~get_bb_r proc~k_slice->proc~get_cc_r proc~k_slice->proc~get_hh_r proc~k_slice->proc~get_shc_r proc~k_slice->proc~get_ss_r proc~k_slice->proc~wham_get_eig_deleig proc~k_slice->proc~berry_get_imfgh_klist proc~k_slice->proc~berry_get_shc_klist proc~k_slice->proc~berry_get_imf_klist proc~read_chkpt read_chkpt proc~read_chkpt->proc~w90_readwrite_chkpt_dist proc~spin_get_moment->proc~get_hh_r proc~spin_get_moment->proc~get_ss_r proc~wham_get_eig_deleig->proc~get_hh_r proc~wham_get_eig_uu_hh_aa_sc wham_get_eig_UU_HH_AA_sc proc~wham_get_eig_uu_hh_aa_sc->proc~get_hh_r proc~wham_get_eig_uu_hh_aa_sc_tb_conv wham_get_eig_UU_HH_AA_sc_TB_conv proc~wham_get_eig_uu_hh_aa_sc_tb_conv->proc~get_aa_r proc~wham_get_eig_uu_hh_aa_sc_tb_conv->proc~get_aa_r_effective proc~wham_get_eig_uu_hh_aa_sc_tb_conv->proc~get_hh_r proc~wham_get_eig_uu_hh_jjlist wham_get_eig_UU_HH_JJlist proc~wham_get_eig_uu_hh_jjlist->proc~get_hh_r proc~berry_get_imfgh_klist->proc~wham_get_eig_uu_hh_jjlist proc~berry_get_kdotp->proc~wham_get_eig_deleig proc~berry_get_kdotp->proc~wham_get_eig_uu_hh_aa_sc proc~berry_get_kubo_k->proc~wham_get_eig_deleig proc~berry_get_sc_klist->proc~wham_get_eig_deleig proc~berry_get_sc_klist->proc~wham_get_eig_uu_hh_aa_sc proc~berry_get_sc_klist->proc~wham_get_eig_uu_hh_aa_sc_tb_conv proc~berry_get_shc_klist->proc~wham_get_eig_deleig proc~boltzwann_main->proc~calctdfanddos proc~gyrotropic_get_k_list->proc~wham_get_eig_deleig proc~gyrotropic_get_k_list->proc~berry_get_imfgh_klist proc~gyrotropic_get_k_list->proc~berry_get_imf_klist proc~w90_disentangle~2 w90_disentangle proc~w90_disentangle~2->proc~dis_main program~wannier wannier program~wannier->proc~read_chkpt program~wannier->proc~w90_disentangle~2 proc~berry_get_imf_klist->proc~berry_get_imfgh_klist proc~w90_disentangle w90_disentangle proc~w90_disentangle->proc~w90_disentangle~2

Source Code

  subroutine comms_bcast_real(array, size, error, comm)
    !! Send real array from root node to all nodes
    implicit none

    real(kind=dp), intent(inout) :: array
    integer, intent(in) :: size
    type(w90_comm_type), intent(in) :: comm
    type(w90_error_type), allocatable, intent(out) :: error

    call comms_sync_error(comm, error, 0) ! sync error state across comm
    if (allocated(error)) return

    call comms_no_sync_bcast_real(array, size, error, comm)
  end subroutine comms_bcast_real