我想知道是否有人可以告诉我在Java中运行Matlab代码的最佳方法是什么。我从未使用过Matlab,也没有在我的电脑上安装Matlab。我已经获得了一个Matlab文件,该文件具有执行某些计算并返回性能度量的函数。 Matlab中的函数使用Matlab控件工具箱的其他功能。我希望能够从我的Java代码中调用此函数。是这样的可能吗?如何?
谢谢!
答案 0 :(得分:2)
编辑:如果您自己的计算机上没有Matlab,可以尝试在Octave中运行该文件。希望Octave的Control Toolbox拥有您所需要的并且兼容。然后有javaOctave和joPAS将Octave连接到Java。或许您可以要求获得Matlab的副本。 : - )
我不知道与Octave交互,但Matlab的一种可能性是使用matlabcontrol Java API。您仍然需要使用具有Matlab许可证的计算机(以及所有必需工具箱的许可证)。
另一种可能性可能是MathWorks'MATLAB Builder JA。大多数Matlab安装都没有附带,因此需要额外费用。他们说它适用于“most toolboxes”。有免费试用。
在OS X或Linux上我想知道是否甚至可以pipe commands进出command line version of Matlab(或Octave)来自Java程序......
答案 1 :(得分:-1)
一个很棒的问题!鉴于Matlab / Simulink具有Java源代码,因此集成并不严格是荒谬的。
有没有人见过Matlab的表现......太可怕了。设计师应该意识到人们会希望从其他语言中使用它,至少已经制作了一本真正的手册而不是第三方编写的一些matlab控件。
管道很好但有一系列问题,主要是便携性。除了在Matlab中滚动自己的TCP / IP或UDP客户端/服务器之外,你不应该为IMO烦恼。这并不困难。您选择的协议可能是,但这取决于您。
我尝试了替代方案。
但老实说,如果你的初学者只是学习matlab,它并不比java更难,而且数量级会更有价值。