【发布时间】:2012-05-19 13:48:24
【问题描述】:
我知道并且已经使用f2py2e 来包装一些旧的 Fortran 77 代码,但我的理解是它不适用于较新的 Fortran 95 代码。我研究了我应该使用什么,并且遇到了fwrap 和G3 f2py,它们似乎都没有对它们的当前状态或如何使用它们给出任何解释。我看到f2py的版本有使用第三代f2py的选项,但被评论为没有功能。鉴于此,我不知道我应该使用哪个项目。我应该使用哪一个?
这个问题现在已经交叉发布到(并在)计算科学堆栈交换站点作为 Which package should I use to wrap Modern Fortran Code with Python?
【问题讨论】:
-
也许可以选择通过
ctypes调用fortran 库? -
f2py(包含在 scipy 中)似乎 claim 支持 Fortan95。你试过了吗?
-
您也可以尝试在 scicomp.stackexchange 上询问,因为那里有很多人使用 Python 和 Fortran。
-
您可能会通过使用现代 Fortran 的“与 C 的互操作性”功能并让您编译的 Fortran 向外界呈现类似 C 的界面来取得进步。
-
f2py2e(numpy/scipy 中的那个)对 Fortran 95 的支持有限(它的设计理念是包装旧的 Fortran 77 代码),因此编写了 fwrap 和 G3 f2py。但是,两者似乎都部分处于非活动状态,并且文档,特别是 G3 f2py 的文档不清楚。
标签: python numpy fortran fortran95 fortran2003