MFC: Simulation
High-fidelity multiphase flow simulation
Loading...
Searching...
No Matches
m_mpi_proxy Module Reference

The module serves as a proxy to the parameters and subroutines available in the MPI implementation's MPI module. Specifically, the purpose of the proxy is to harness basic MPI commands into more complicated procedures as to accomplish the communication goals for the simulation. More...

Functions/Subroutines

subroutine s_initialize_mpi_proxy_module ()
 
impure subroutine s_mpi_bcast_user_inputs ()
 Since only the processor with rank 0 reads and verifies the consistency of user inputs, these are initially not available to the other processors. Then, the purpose of this subroutine is to distribute the user inputs to the remaining processors in the communicator.
 
subroutine s_mpi_sendrecv_ib_buffers (ib_markers, mpi_dir, pbc_loc)
 
impure subroutine s_mpi_send_random_number (phi_rn, num_freq)
 
subroutine s_finalize_mpi_proxy_module ()
 

Variables

integer, dimension(:), allocatable, private ib_buff_send
 This variable is utilized to pack and send the buffer of the immersed boundary markers, for a single computational domain boundary at the time, to the relevant neighboring processor.
 
integer, dimension(:), allocatable, private ib_buff_recv
 q_cons_buff_recv is utilized to receive and unpack the buffer of the immersed boundary markers, for a single computational domain boundary at the time, from the relevant neighboring processor.
 
integer i_halo_size
 

Detailed Description

The module serves as a proxy to the parameters and subroutines available in the MPI implementation's MPI module. Specifically, the purpose of the proxy is to harness basic MPI commands into more complicated procedures as to accomplish the communication goals for the simulation.

Function/Subroutine Documentation

◆ s_finalize_mpi_proxy_module()

subroutine m_mpi_proxy::s_finalize_mpi_proxy_module
Here is the caller graph for this function:

◆ s_initialize_mpi_proxy_module()

subroutine m_mpi_proxy::s_initialize_mpi_proxy_module
Here is the caller graph for this function:

◆ s_mpi_bcast_user_inputs()

impure subroutine m_mpi_proxy::s_mpi_bcast_user_inputs

Since only the processor with rank 0 reads and verifies the consistency of user inputs, these are initially not available to the other processors. Then, the purpose of this subroutine is to distribute the user inputs to the remaining processors in the communicator.

Here is the caller graph for this function:

◆ s_mpi_send_random_number()

impure subroutine m_mpi_proxy::s_mpi_send_random_number ( real(wp), dimension(1:num_freq), intent(inout) phi_rn,
integer, intent(in) num_freq )

◆ s_mpi_sendrecv_ib_buffers()

subroutine m_mpi_proxy::s_mpi_sendrecv_ib_buffers ( type(integer_field), intent(inout) ib_markers,
integer, intent(in) mpi_dir,
integer, intent(in) pbc_loc )

Variable Documentation

◆ i_halo_size

integer m_mpi_proxy::i_halo_size

◆ ib_buff_recv

integer, dimension(:), allocatable, private m_mpi_proxy::ib_buff_recv
private

q_cons_buff_recv is utilized to receive and unpack the buffer of the immersed boundary markers, for a single computational domain boundary at the time, from the relevant neighboring processor.

◆ ib_buff_send

integer, dimension(:), allocatable, private m_mpi_proxy::ib_buff_send
private

This variable is utilized to pack and send the buffer of the immersed boundary markers, for a single computational domain boundary at the time, to the relevant neighboring processor.