Импорт фортрановой подпрограммы в python MPI - PullRequest
0 голосов
/ 21 января 2020

У меня есть подпрограмма на фортране, и я хочу импортировать ее в программу python MPI? Когда я импортирую библиотеку в последовательную программу python, я просто использую «import primes», где primes - это библиотека, скомпилированная с помощью «f2py - c primes.f90 -m primes», но когда я импортирую ту же библиотеку внутри python MPI показывает ошибку "модуль не найден". Я хочу указать, что моя подпрограмма fortran не содержит вызовов MPI.

Мой код:

    %%file sample.py
    from mpi4py import MPI
    import order
    comm = MPI.COMM_WORLD
    my_rank = comm.Get_rank()
    p = comm.Get_size()
    EM = order.calcenergy(config,coordinates,matrix,j1,j2,j3,j4)
    MPI.Finalize()

Так что в приведенном выше коде используется подпрограмма fortran, скомпилированная через f2py, которая создает библиотеку как " заказ "и могут быть импортированы в python. Но когда я компилирую этот python MPI через "mpirun -n 2 python sample.py", он показывает мне ошибку "Порядок имен модулей не указан".

Мой вопрос: как импортировать рутинную программу в программе python, которая использует MPI?

...