pic_mpi_lib Module

Top-level MPI wrapper module with preprocessor selection

This module provides a unified interface to MPI by selecting between the modern mpi_f08 interface (pic_mpi_f08) and the legacy MPI interface (pic_mpi) at compile time using the USE_LEGACY preprocessor flag.

Usage: - Without USE_LEGACY: Uses modern mpi_f08 bindings (recommended) - With USE_LEGACY: Uses traditional integer-based MPI bindings

Both implementations provide the same object-oriented API for consistency.

Modern MPI interface (mpi_f08)


Uses

  • module~~pic_mpi_lib~~UsesGraph module~pic_mpi_lib pic_mpi_lib module~pic_mpi_f08 pic_mpi_f08 module~pic_mpi_lib->module~pic_mpi_f08 mpi_f08 mpi_f08 module~pic_mpi_f08->mpi_f08 pic_types pic_types module~pic_mpi_f08->pic_types

Used by

  • module~~pic_mpi_lib~~UsedByGraph module~pic_mpi_lib pic_mpi_lib module~darrays darrays module~darrays->module~pic_mpi_lib module~darrays_core darrays_core module~darrays->module~darrays_core module~darrays_dlb darrays_dlb module~darrays->module~darrays_dlb module~darrays_types darrays_types module~darrays->module~darrays_types module~darrays_core->module~pic_mpi_lib module~darrays_core->module~darrays_types module~darrays_dlb->module~pic_mpi_lib module~darrays_types->module~pic_mpi_lib