我想知道哪个高级语言允许以最简单的方式调用Fortran子例程?我目前使用MATLAB,与其他语言相比,调用MEX文件似乎相对复杂。
我特别感兴趣的是如何在获得"启动和运行方面进行比较"很快:
* Python通过f2py * R通过? *通过MEX文件的MATLAB
另一种问这个问题的方法是"如果你要重新学习一门新语言,如果你的目标是调用Fortran子程序,你会选择哪一种语言?"
我试图让两个世界中最好的"即具有良好的数据处理和图形以及调用快速Fortran子程序的能力。
提前感谢您提供任何帮助。唉,如果有人知道Fortran的一个好的MEX教程,那也是值得赞赏的。
答案 0 :(得分:6)
我想知道哪个高级语言允许以最简单的方式调用Fortran子例程?
明显的答案是Fortran本身。所谓的现代Fortran(2003& 2008)有很多高级功能。很明显,现代的FORTRAN代码很容易调用(我的猜测是你有旧的FORTRAN代码库)。
答案 1 :(得分:4)
Python通过f2py是非常好的。我在使用IVF的Windows上遇到了一些麻烦,但是没过多久就弄明白了,邮件列表给出了快速响应。在Linux上,它没有任何问题。
我没有使用过R,但据我所知,只有你用大量数据进行大量统计才有用。至于MATLAB,它是一种可怕的语言,如果你只是调用FORTRAN,你最好用Python。
答案 2 :(得分:1)
我通常在你的情况下做的是创建Fortran程序,我可以将命令行参数作为输入传递。使用内部get_command_argument子例程,Fortran 2003标准可以很容易地获得这一点。然后,您可以使用您用作包装器的任何语言来解析Fortran程序输出(假设语言可以访问系统shell)。在过去,我使用shell脚本,MATLAB(避免),Python。