最近实验室老师让干点小活,主要是写一个程序来调用一下matlab脚本以及一个Fortran程序,然后就去网上搜了一些资料,搞了一下,趁着自己还记得,就记录一下,两个法子。
首先介绍一下程序运行的环境,脱离环境谈运行就是耍流氓。
[1] MATLAB R2018a
[2] python3.5.6 (Anaconda)
在matlab的安装路径下找到steup.py文件,其位置如下所示。
然后在python里安装matlab,执行如下语句。
python setup.py install
执行结果如下
E:\matlab\extern\engines\python>python setup.py install
running install
running build
running build_py
running install_lib
copying build\lib\matlab\engine\_arch.txt -> E:\Anaconda3\envs\python35\Lib\site-packages\matlab\engine
running install_egg_info
Removing E:\Anaconda3\envs\python35\Lib\site-packages\matlabengineforpython-R2018a-py3.5.egg-info
Writing E:\Anaconda3\envs\python35\Lib\site-packages\matlabengineforpython-R2018a-py3.5.egg-info
如此便可以在python里调用matlab脚本了。
python脚本如下
import matlab
import matlab.engine
engine = matlab.engine.start_matlab() # 启动matlab engine
engine.hellomatlab(nargout = 0)
matlab脚本。
function hellomatlab()
clear
sum = 0;
for i = 1:100
sum = sum +i;
disp(['sum=',num2str(sum)]);
end
执行结果如下:
略慢…
此外还有一种利用mlab的方法,但是由于我用的python3,mlab应该是只支持到python2,我就没有进行尝试。
主要思路也记录一下
[1] 首先是下载malb
[2] 找到其setup.py,并在python里安装,安装语句依旧是
python setup.py install
[3]在python里面使用。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删
武汉格发信息技术有限公司,格发许可优化管理系统可以帮你评估贵公司软件许可的真实需求,再低成本合规性管理软件许可,帮助贵司提高软件投资回报率,为软件采购、使用提供科学决策依据。支持的软件有: CAD,CAE,PDM,PLM,Catia,Ugnx, AutoCAD, Pro/E, Solidworks ,Hyperworks, Protel,CAXA,OpenWorks LandMark,MATLAB,Enovia,Winchill,TeamCenter,MathCAD,Ansys, Abaqus,ls-dyna, Fluent, MSC,Bentley,License,UG,ug,catia,Dassault Systèmes,AutoDesk,Altair,autocad,PTC,SolidWorks,Ansys,Siemens PLM Software,Paradigm,Mathworks,Borland,AVEVA,ESRI,hP,Solibri,Progman,Leica,Cadence,IBM,SIMULIA,Citrix,Sybase,Schlumberger,MSC Products...