w90_is_mpi_build Function

public function w90_is_mpi_build()

Report whether this build of the library supports MPI.

This is a property of how libwannier90 was compiled, not of the communicator passed to w90_set_comm and not of the number of ranks in it. A caller running on more than one process must check this before anything else: a serial build accepts w90_set_comm and then performs the whole calculation on every rank, using only the data that rank holds.

No library data object is needed, so this may be called before any is set up.

Arguments

None

Return Value logical


Called by

proc~~w90_is_mpi_build~2~~CalledByGraph proc~w90_is_mpi_build~2 w90_is_mpi_build proc~w90_is_mpi_build w90_is_mpi_build proc~w90_is_mpi_build->proc~w90_is_mpi_build~2

Source Code

  logical function w90_is_mpi_build()
    !! Report whether this build of the library supports MPI.
    !!
    !! This is a property of how libwannier90 was compiled, not of the communicator passed to
    !! w90_set_comm and not of the number of ranks in it. A caller running on more than one
    !! process must check this before anything else: a serial build accepts w90_set_comm and
    !! then performs the whole calculation on every rank, using only the data that rank holds.
    !!
    !! No library data object is needed, so this may be called before any is set up.
    implicit none

#ifdef W90_MPI
    w90_is_mpi_build = .true.
#else
    w90_is_mpi_build = .false.
#endif
  end function w90_is_mpi_build