我正在尝试将 Matlab 代码移植到 Java 和 C++。 它非常简单,但我发现一个函数不仅仅是简单的操作,它在数值上计算积分:
lungh=quad('normpp',0,1,[],[],x1,x2,x3,x4,x5,x6,x7,y1,y2,y3,y4,y5,y6,y7);
这里 x1,...,x8
和 y1,...,y7
是简单的数字。
首先,如何解释这个参数?这个功能是如何工作的?
我认为 0 和 1 是积分的边界...但是其他的呢?特别是 'normpp'
和 []
?
我阅读了quad 帮助
,但我不明白它如何处理如此多的参数。
第二个问题是:是否存在提供这些功能的 java 和 C++ 库? 我宁愿直接在 Java 和 C++ 中完成,而无需调用 Matlab。
谢谢!
最佳答案
在 C 中有一个非常好的库:Gnu 科学库 (GSL)。 这是 GSL 的数值积分页面的链接: GSL
在 C++ 项目中使用此库非常简单。 我认为函数 gsl_integration_qag 是替代 matlab quad 函数的不错选择。
关于java - Matlab 函数 'quad' 在 Java 和 C++ 中可用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9173910/