如何从mathematica调用matlab函数?

Joh*_*ohn 6 matlab wolfram-mathematica

我想从mathematica调用matlab函数.怎么做到最好?

在Wolfram网站上发现了一个古老的帖子,描述了这样做的方法,这仍然是连接两者的方法吗?

Ale*_*kov 6

你可以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


Sza*_*lcs 2

您可以使用mEngine。预编译的 Windows MathLink 可执行文件可与 Mathematica 8 配合使用。在 Windows 上,您可能需要将 MATLAB 添加到系统路径

与 NETLink 方法相比,这种方法的优点是在 Mathematica 和 MATLAB 之间传输变量将像mGet["x"]或 一样简单mPut["x"]。虽然这对于 NETLink 来说也是可能的,但 mEngine 的优点是您不需要自己实现它(如果像我一样您对 COM 或 .NET 一无所知,那么这很好)