Python調用MatLab引擎

MALTAB無比強大,python簡潔高效,使用python調用MATLAB裏的函數,更是使其在數值計算的開發效率有了巨大的提升。
http://www.lw23.com/pdf_bda9bef9-e2d1-4297-8882-a9d7f045f723/lunwen.pdf 這篇論文中介紹了幾種python調用MATLAB的幾種方法。我試了一下其中的一個例子:
首先在建一個m文件,名爲test.m,爲一個MATLAB函數,其內容如下:
function test(M,N)
x = M:N;
y = [sin(x)];
plot(x,y)
在使用python調用此函數之前,需要爲python安裝pywin32模塊,此模塊可從以下地址下載:
http://sourceforge.net/projects/pywin32/files/
下載時注意你的python版本。
接下來在調用test函數
from win32com.client import Dispatch
h = Dispatch(“Matlab.application”)#啓動MATLAB自動化服務器
h.execute(“test(0.0,512.0)”)
此時MALTAB會打開MATLAB Command Window,而且python的結果很可能爲如下錯誤提示
“??? Undefined function or method ‘test’ for input arguments of type ‘double’.”
這是因爲路徑的原因造成的。把你的.m文件和.py放在同一路徑下,在MATLAB Command Window中cd到此路徑,再執行,就會成功調用test函數,繪出正確的圖形。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章