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.
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