Joh*_*ohn 6 matlab wolfram-mathematica
我想从mathematica调用matlab函数.怎么做到最好?
我在Wolfram网站上发现了一个古老的帖子,描述了这样做的方法,这仍然是连接两者的方法吗?
你可以NETLink
至少在Windows下尝试这个:
In[1]:= Needs["NETLink`"]
matlab = CreateCOMObject["matlab.application"]
Out[2]= «NETObject[COMInterface[MLApp.DIMLApp]]»
Run Code Online (Sandbox Code Playgroud)
然后你可以调用Matlab函数:
In[4]:= matlab@Execute["version"]
Out[4]= "
ans =
7.9.0.529 (R2009b)
"
In[5]:= matlab@Execute["a=2"]
matlab@Execute["a*2"]
Out[5]= "
a =
2
"
Out[6]= "
ans =
4
"
Run Code Online (Sandbox Code Playgroud)
HTH
您可以使用mEngine。预编译的 Windows MathLink 可执行文件可与 Mathematica 8 配合使用。在 Windows 上,您可能需要将 MATLAB 添加到系统路径。
与 NETLink 方法相比,这种方法的优点是在 Mathematica 和 MATLAB 之间传输变量将像mGet["x"]
或 一样简单mPut["x"]
。虽然这对于 NETLink 来说也是可能的,但 mEngine 的优点是您不需要自己实现它(如果像我一样您对 COM 或 .NET 一无所知,那么这很好)