在C / C ++中调用MATLAB API

我刚从某个地方听说,对于数值计算,“MATLAB确实提供了一些用户友好的API。如果你在C / C ++代码中调用这些API,你可以大大加快计算速度。”

但我没有在MATLAB文档中找到这样的信息,如http://www.mathworks.com/support/tech-notes/1600/1622.html和http://www.mathworks.com/access/helpdesk/help/techdoc /matlab_external/bp_kqh7.html 。 我从这些网站上学到的是,MATLAB可以通过Matlab引擎在C和C ++中调用,或者通过mcc将M文件编译到库中。 他们没有提到任何可以在C / C ++中调用的内置数值MATLAB API。

有人可以澄清一下吗?

感谢致敬!

你想要“引擎”例程。 这允许您从C启动后台MATLAB过程并对其执行计算: 相关的MATLAB文档 。

它工作得很好,看看这些例子。 我想说最令人讨厌的事情就是在C和MATLAB之间编组数据。 但是在做这种事情时,这总是一个问题。

听起来你正在寻找嵌入式matlab工具箱或实时工作室中的代码生成工具。

doc eml并寻找LMS(最小均方)均衡器演示。

代码生成器非常好,它将为您提供一个构建静态库的make文件。 它可以很容易地与您的独立C / C ++代码一起使用。

可能有一些引用引用的东西,我认为它指的是MATLAB编译器 。 因此,从MATLAB – > C ++开始,您可以使用编译器构建独立的“更快”应用程序。 然而,当速度测试改进时,我注意到它可以忽略不计。 老实说,从一开始就用C编码你的工作可能要好得多,编译器生成的代码是意大利面和非面向对象。 我还要提一下,这是Matlab的一个昂贵的扩展。

您可以在自己的c ++项目中使用MCR作为独立库( 详细信息 )……但是使用Numerical Recipes可能会得到类似的结果。

免责声明:我在2 – 3年前使用过此产品,现在可能会有所不同。