有谁知道一个资源,我们可以得到免费的 C ++库MATLAB的功能呢? 例如,线性代数问题可使用LAPACK和BLAS来解决。
此外,MATLAB的.NET项目是不可能的 - 我说的是直接的C ++的流行功能的MATLAB实现(我不知道我需要用C哪些功能尚未++,但利用的功能,不会是深奥) 。
关于这些资源有什么建议?
有谁知道一个资源,我们可以得到免费的 C ++库MATLAB的功能呢? 例如,线性代数问题可使用LAPACK和BLAS来解决。
此外,MATLAB的.NET项目是不可能的 - 我说的是直接的C ++的流行功能的MATLAB实现(我不知道我需要用C哪些功能尚未++,但利用的功能,不会是深奥) 。
关于这些资源有什么建议?
我从来没有听说过的MATLAB功能,以C ++的综合性港口。 话虽这么说,几乎所有的matlab做一个C内某处/ C ++库,一些从我的头顶:
在此之后,以及弄清楚你需要什么,有一个很好的机会,有人已经实现了它在C / C ++。
我也喜欢
除此之外,你原来的问题是不是真的更好指针不够具体。
对不起,振兴一个老问题,但我目前工作的一个开源C ++库,正是回答了这个问题:
KeyCpp是一个开源C ++库,提供MATLAB /倍频程的语法来几个有用的数值方法,也有一些绘制功能。 目前对于功能eig
, ode45
, fft
, linsolve
, svd
, interp1
, plot
,以及许多其他常见MATLAB功能。
虽然有许多提供这些功能(如犰狳,征等)其他(非常好)库,大多数是不完整的数字图书馆和大部分的语法是不同的,以MATLAB的语法。 虽然KeyCpp也还没有一个完整的数字图书馆(但正在改善所有的时间!),语法是接近MATLAB的作为C ++语言允许。
在KeyCpp,绘制矢量t
和y
我们使用的语法如下:(转到这里了解更详尽的例子)
#include <iostream>
#include <keycpp/keycpp.h>
using namespace keycpp;
int main(int argc, char** argv)
{
// Lets create some data: y = sin(t)
std::vector<double> t = linspace(-pi,pi,100);
std::vector<double> y = sin(t);
Figure h;
h.plot(t,y,"-b");
h.grid_on();
h.legend({"Series 1"});
h.title("Example Plot");
h.xlabel("time");
h.ylabel("y");
return 0;
}
所述KeyCpp库的功能利用LAPACK,gnuplot的,并且odeint(从升压)。 下面的开源项目都被纳入此库:亲吻FFT,gnuplot的-CPP。
对于大多数的功能Doxygen文档位于这里
除了已经给出了很好的建议,也可能是你能解除你的源代码需要的代码八度或Scilab的 。 这些都具有GPL风格的许可证,虽然,这可能不适合你的需求。
仔细阅读您的MATLAB文档和对你的硬盘周围的DLL捅等部分组成它安装。 我想你会发现,Matlab的使用版本BLAS为BLAS做什么,也可能LAPACK等。