转“两步解决python调用Matlab的脚本和函数文件”

abaqus前处理过程中需要调用matlab程序(主要原因自己python不是很熟,相对而言matlab有些build in的程序非常好用,例如sortrows),最后找了个这种办法。原文链接在最后

很早之前写了一篇《python调用matlab环境配置》有关通过mlab实现python调用matlab的配置,但是只在windows下成功了,在Linux下一直没成功,后来发现一个很简单的配置方法,一直想写的没写上,今天抽空就把它给补充完整好了。

本文的配置方法Windows,Mac和Linux系统均适合。

一.安装MATLAB Engine API for python
install MATLAB Engine API for Python

Windows系统

cd “matlabroot\extern\engines\python”
python setup.py install
Mac or Linux系统
cd “matlabroot/extern/engines/python”
python setup.py install
这里的”matlabroot”是你matlab所在的安装路径,注意,上面两个地址中的反斜杠是不同的。

二.用Python调用脚本或者函数
Call User Script and Function from Python

脚本
在当前目录下,MATLAB建立triarea.m脚本文件,内容如下

b = 5;
h = 3;
a = 0.5(b. h)
然后同目录下新建一个test.py,内容如下
import matlab.engine
eng = matlab.engine.start_matlab()
eng.triarea(nargout=0)

函数
MATLAB建立一个function文件,内容如下:

function a = triarea(b,h)
a = 0.5(b. h);
同样,test.py修改如下:
import matlab.engine
eng = matlab.engine.start_matlab()
ret = eng.triarea(1.0,5.0)
print(ret) # 2.5

是不是觉得特别方便?惊不惊喜,意不意外,枉费我之前用mlab时在windows下配置了那么多,后来在Linux下没成功的时候,无意间就发现了这个方法
————————————————
版权声明:本文为CSDN博主「若之辰」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sunny_xsc1994/java/article/details/79254196

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注




Enter Captcha Here :

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据